| /*============================================================================ |
| Kitware Information Macro Library |
| Copyright 2010-2011 Kitware, Inc. |
| |
| Distributed under the OSI-approved BSD License (the "License"); |
| see accompanying file Copyright.txt for details. |
| |
| This software is distributed WITHOUT ANY WARRANTY; without even the |
| implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| See the License for more information. |
| ============================================================================*/ |
| #include <stdio.h> |
| |
| #ifdef __cplusplus |
| # define LANG "C++ " |
| #else |
| # define LANG "C " |
| #endif |
| |
| static int test_ABI_endian(void) |
| { |
| int result = 1; |
| { |
| #if defined(@KWIML@_ABI_ENDIAN_ID) |
| int expect; |
| union { short s; unsigned char c[sizeof(short)]; } x; |
| x.s = 1; |
| expect = (x.c[0] == 1 ? |
| @KWIML@_ABI_ENDIAN_ID_LITTLE : @KWIML@_ABI_ENDIAN_ID_BIG); |
| printf(LANG "@KWIML@_ABI_ENDIAN_ID: expected [%d], got [%d]", |
| expect, @KWIML@_ABI_ENDIAN_ID); |
| if(@KWIML@_ABI_ENDIAN_ID == expect) |
| { |
| printf(", PASSED\n"); |
| } |
| else |
| { |
| printf(", FAILED\n"); |
| result = 0; |
| } |
| #else |
| printf(LANG "@KWIML@_ABI_ENDIAN_ID: unknown, FAILED\n"); |
| result = 0; |
| #endif |
| } |
| return result; |
| } |