diff options
Diffstat (limited to 'src/libmowgli/platform/machine.h')
-rw-r--r-- | src/libmowgli/platform/machine.h | 474 |
1 files changed, 240 insertions, 234 deletions
diff --git a/src/libmowgli/platform/machine.h b/src/libmowgli/platform/machine.h index b2a2e50..6b23514 100644 --- a/src/libmowgli/platform/machine.h +++ b/src/libmowgli/platform/machine.h @@ -2,7 +2,7 @@ * libmowgli: A collection of useful routines for programming. * machine.h: Defines to discover what machine we're on easily * - * Copyright (c) 2012 Patrick McFarland <pmcfarland@adterrasperaspera.com> + * Copyright (c) 2012, 2013 Patrick McFarland <pmcfarland@adterrasperaspera.com> * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -21,8 +21,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include "mowgli.h" - /* Machine environment specific macros, mostly sourced from this URL: * http://sourceforge.net/apps/mediawiki/predef/ * @@ -37,298 +35,306 @@ #define __MOWGLI_MACHINE_H__ #if defined __clang__ -#define MOWGLI_COMPILER_CLANG -#define MOWGLI_COMPILER clang +# define MOWGLI_COMPILER_CLANG +# define MOWGLI_COMPILER clang #elif defined __INTEL_COMPILER || defined __ICC || defined __ICL -#define MOWGLI_COMPILER_ICC -#define MOWGLI_COMPILER icc +# define MOWGLI_COMPILER_ICC +# define MOWGLI_COMPILER icc #elif defined __CC_ARM -#define MOWGLI_COMPILER_ARM -#define MOWGLI_COMPILER arm +# define MOWGLI_COMPILER_ARM +# define MOWGLI_COMPILER arm #elif defined __xlc__ || defined __xlC__ -#define MOWGLI_COMPILER_IBM -#define MOWGLI_COMPILER ibm +# define MOWGLI_COMPILER_IBM +# define MOWGLI_COMPILER ibm #elif defined __SUNPRO_C || defined __SUNPRO_CC -#define MOWGLI_COMPILER_SUN -#define MOWGLI_COMPILER sun +# define MOWGLI_COMPILER_SUN +# define MOWGLI_COMPILER sun #elif defined __GNUC__ -#define MOWGLI_COMPILER_GCC -#define MOWGLI_COMPILER gcc +# define MOWGLI_COMPILER_GCC +# define MOWGLI_COMPILER gcc #elif defined _MSC_VER -#define MOWGLI_COMPILER_MSVC -#define MOWGLI_COMPILER msvc +# define MOWGLI_COMPILER_MSVC +# define MOWGLI_COMPILER msvc #else -#define MOWGLI_COMPILER_UNKNOWN -#define MOWGLI_COMPILER unknown +# define MOWGLI_COMPILER_UNKNOWN +# define MOWGLI_COMPILER unknown #endif #if defined __GNUC__ -#define MOWGLI_COMPILER_GCC_COMPAT +# define MOWGLI_COMPILER_GCC_COMPAT +# define MOWGLI_COMPILER_GCC_VERSION (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) +#else +# define MOWGLI_COMPILER_GCC_VERSION (0) #endif #if defined __amd64__ || defined __amd64 || defined __x86_64__ || defined __x86_64 || defined _M_X64 || defined _M_AMD64 -#define MOWGLI_CPU_X86_64 -#define MOWGLI_CPU x86_64 -#define MOWGLI_CPU_BITS_64 -#define MOWGLI_CPU_BITS 64 -#define MOWGLI_CPU_ENDIAN_LITTLE -#define MOWGLI_CPU_ENDIAN little +# define MOWGLI_CPU_X86_64 +# define MOWGLI_CPU x86_64 +# define MOWGLI_CPU_BITS_64 +# define MOWGLI_CPU_BITS 64 +# define MOWGLI_CPU_ENDIAN_LITTLE +# define MOWGLI_CPU_ENDIAN little #elif defined __i386__ || defined __i386 || defined __IA32__ || defined _M_IX86 || defined __X86__ || defined _X86__ || defined __I86__ -#define MOWGLI_CPU_X86 -#define MOWGLI_CPU x86 -#define MOWGLI_CPU_BITS_32 -#define MOWGLI_CPU_BITS 32 -#define MOWGLI_CPU_ENDIAN_LITTLE -#define MOWGLI_CPU_ENDIAN little +# define MOWGLI_CPU_X86 +# define MOWGLI_CPU x86 +# define MOWGLI_CPU_BITS_32 +# define MOWGLI_CPU_BITS 32 +# define MOWGLI_CPU_ENDIAN_LITTLE +# define MOWGLI_CPU_ENDIAN little #elif defined __arm__ || defined __TARGET_ARCH_ARM || defined _ARM -#if defined __thumb__ || defined __TARGET_ARCH_THUMB -#define MOWGLI_CPU_ARM_THUMB -#endif -#define MOWGLI_CPU_ARM -#define MOWGLI_CPU arm -#define MOWGLI_CPU_BITS_32 -#define MOWGLI_CPU_BITS 32 +# if defined __thumb__ || defined __TARGET_ARCH_THUMB +# define MOWGLI_CPU_ARM_THUMB +# endif +# define MOWGLI_CPU_ARM +# define MOWGLI_CPU arm +# define MOWGLI_CPU_BITS_32 +# define MOWGLI_CPU_BITS 32 + // ARM can be either endian #elif defined __hppa__ || defined __HPPA__ || defined __hppa -#if defined _PA_RISC2_0 || defined __HPPA20__ || defined __RISC2_0__ -#define MOWGLI_CPU_HPPA20 -#define MOWGLI_CPU hppa20 -#define MOWGLI_CPU_BITS_64 -#define MOWGLI_CPU_BITS 64 -#else -#define MOWGLI_CPU_HPPA10 -#define MOWGLI_CPU hppa10 -#define MOWGLI_CPU_BITS_32 -#define MOWGLI_CPU_BITS 32 -#endif -#define MOWGLI_CPU_ENDIAN_BIG -#define MOWGLI_CPU_ENDIAN big +# if defined _PA_RISC2_0 || defined __HPPA20__ || defined __RISC2_0__ +# define MOWGLI_CPU_HPPA20 +# define MOWGLI_CPU hppa20 +# define MOWGLI_CPU_BITS_64 +# define MOWGLI_CPU_BITS 64 +# else +# define MOWGLI_CPU_HPPA10 +# define MOWGLI_CPU hppa10 +# define MOWGLI_CPU_BITS_32 +# define MOWGLI_CPU_BITS 32 +# endif +# define MOWGLI_CPU_ENDIAN_BIG +# define MOWGLI_CPU_ENDIAN big #elif defined __ia64__ || defined __IA64__ || defined _M_IA64 || defined __ia64 || defined __itanium__ -#define MOWGLI_CPU_ITANIUM -#define MOWGLI_CPU itanium -#define MOWGLI_CPU_BITS_64 -#define MOWGLI_CPU_BITS 64 +# define MOWGLI_CPU_ITANIUM +# define MOWGLI_CPU itanium +# define MOWGLI_CPU_BITS_64 +# define MOWGLI_CPU_BITS 64 + // Itanium can be either endian #elif defined __mips__ || defined mips || defined __mips || defined __MIPS__ -#if defined __mips64 || defined __mips64__ -#define MOWGLI_CPU_MIPS64 -#define MOWGLI_CPU mips64 -#define MOWGLI_CPU_BITS_64 -#define MOWGLI_CPU_BITS 64 -#else -#define MOWGLI_CPU_MIPS -#define MOWGLI_CPU mips -#define MOWGLI_CPU_BITS_32 -#define MOWGLI_CPU_BITS 32 -#endif +# if defined __mips64 || defined __mips64__ +# define MOWGLI_CPU_MIPS64 +# define MOWGLI_CPU mips64 +# define MOWGLI_CPU_BITS_64 +# define MOWGLI_CPU_BITS 64 +# else +# define MOWGLI_CPU_MIPS +# define MOWGLI_CPU mips +# define MOWGLI_CPU_BITS_32 +# define MOWGLI_CPU_BITS 32 +# endif + // MIPS can be either endian #elif defined __powerpc || defined __powerpc__ || defined __POWERPC__ || defined __ppc__ || defined _M_PPC -#if defined __ppc64__ || defined __PPC64__ -#define MOWGLI_CPU_POWERPC64 -#define MOWGLI_CPU powerpc64 -#define MOWGLI_CPU_BITS_64 -#define MOWGLI_CPU_BITS 64 -#else -#define MOWGLI_CPU powerpc -#define MOWGLI_CPU_BITS_32 -#define MOWGLI_CPU_BITS 32 -#endif -#define MOWGLI_CPU_POWERPC +# if defined __ppc64__ || defined __PPC64__ +# define MOWGLI_CPU_POWERPC64 +# define MOWGLI_CPU powerpc64 +# define MOWGLI_CPU_BITS_64 +# define MOWGLI_CPU_BITS 64 +# else +# define MOWGLI_CPU powerpc +# define MOWGLI_CPU_BITS_32 +# define MOWGLI_CPU_BITS 32 +# endif +# define MOWGLI_CPU_POWERPC + // PowerPC can be either endian #elif defined __sparc__ || defined __sparc -#if defined __sparcv9 || defined __sparc64 || defined __sparc64__ -#define MOWGLI_CPU_SPARC64 -#define MOWGLI_CPU sparc64 -#define MOWGLI_CPU_BITS_64 -#define MOWGLI_CPU_BITS 64 -#else -#define MOWGLI_CPU_SPARC -#define MOWGLI_CPU sparc -#define MOWGLI_CPU_BITS_32 -#define MOWGLI_CPU_BITS 32 -#endif -#define MOWGLI_CPU_ENDIAN_BIG -#define MOWGLI_CPU_ENDIAN big +# if defined __sparcv9 || defined __sparc64 || defined __sparc64__ +# define MOWGLI_CPU_SPARC64 +# define MOWGLI_CPU sparc64 +# define MOWGLI_CPU_BITS_64 +# define MOWGLI_CPU_BITS 64 +# else +# define MOWGLI_CPU_SPARC +# define MOWGLI_CPU sparc +# define MOWGLI_CPU_BITS_32 +# define MOWGLI_CPU_BITS 32 +# endif +# define MOWGLI_CPU_ENDIAN_BIG +# define MOWGLI_CPU_ENDIAN big #elif defined __alpha || defined __alpha__ || defined _M_ALPHA -#define MOWGLI_CPU_ALPHA -#define MOWGLI_CPU alpha -#define MOWGLI_CPU_BITS_64 -#define MOWGLI_CPU_BITS 64 -#define MOWGLI_CPU_ENDIAN_LITTLE -#define MOWGLI_CPU_ENDIAN little +# define MOWGLI_CPU_ALPHA +# define MOWGLI_CPU alpha +# define MOWGLI_CPU_BITS_64 +# define MOWGLI_CPU_BITS 64 +# define MOWGLI_CPU_ENDIAN_LITTLE +# define MOWGLI_CPU_ENDIAN little #elif defined __avr32__ || defined __AVR32__ -#define MOWGLI_CPU_AVR32 -#define MOWGLI_CPU avr -#define MOWGLI_CPU_BITS_32 -#define MOWGLI_CPU_BITS 32 -#define MOWGLI_CPU_ENDIAN_LITTLE -#define MOWGLI_CPU_ENDIAN little +# define MOWGLI_CPU_AVR32 +# define MOWGLI_CPU avr +# define MOWGLI_CPU_BITS_32 +# define MOWGLI_CPU_BITS 32 +# define MOWGLI_CPU_ENDIAN_LITTLE +# define MOWGLI_CPU_ENDIAN little #elif defined __sh__ || defined __SH__ -#define MOWGLI_CPU_SuperH -#define MOWGLI_CPU superh -#define MOWGLI_CPU_BITS_32 -#define MOWGLI_CPU_BITS 32 +# define MOWGLI_CPU_SuperH +# define MOWGLI_CPU superh +# define MOWGLI_CPU_BITS_32 +# define MOWGLI_CPU_BITS 32 + // SyoerH can be either endian #endif #ifndef MOWGLI_CPU -#define MOWGLI_CPU_UNKNOWN -#define MOWGLI_CPU unknown +# define MOWGLI_CPU_UNKNOWN +# define MOWGLI_CPU unknown #endif #ifndef MOWGLI_CPU_BITS -#if defined _LP64 || defined __LP64 -#define MOWGLI_CPU_BITS 64 -#define MOWGLI_CPU_BITS_64 -#elif -#define MOWGLI_CPU_BITS 32 -#define MOWGLI_CPU_BITS_32 -#endif +# if defined _LP64 || defined __LP64 +# define MOWGLI_CPU_BITS 64 +# define MOWGLI_CPU_BITS_64 +# elif +# define MOWGLI_CPU_BITS 32 +# define MOWGLI_CPU_BITS_32 +# endif #endif #if defined __linux || defined __linux__ -#define MOWGLI_OS_LINUX -#define MOWGLI_OS linux -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_LINUX +# define MOWGLI_OS linux +# define MOWGLI_OS_THREADS_POSIX +# define MOWGLI_OS_THREADS posix +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix #elif defined __APPLE__ -#define MOWGLI_OS_OSX -#define MOWGLI_OS osx -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix -#define MOWGLI_OS_BSD_TYPE +# define MOWGLI_OS_OSX +# define MOWGLI_OS osx +# define MOWGLI_OS_THREADS_POSIX +# define MOWGLI_OS_THREADS posix +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_BSD_TYPE -#ifdef MOWGLI_CPU_POWERPC -#define MOWGLI_CPU_ENDIAN_BIG -#define MOWGLI_CPU_ENDIAN big -#endif +# ifdef MOWGLI_CPU_POWERPC +# define MOWGLI_CPU_ENDIAN_BIG +# define MOWGLI_CPU_ENDIAN big +# endif #elif defined __WINDOWS__ || defined _WIN32 || defined __WIN32__ || defined __TOS_WIN__ -#if defined _WIN64 -#define MOWGLI_OS_WIN64 -#define MOWGLI_OS win64 -#else -#define MOWGLI_OS_WIN32 -#define MOWGLI_OS win32 -#endif -#define MOWGLI_OS_WIN -#define MOWGLI_OS_THREADS_WIN -#define MOWGLI_OS_THREADS win -#define MOWGLI_OS_MUTEX_WIN -#define MOWGLI_OS_MUTEX win +# if defined _WIN64 +# define MOWGLI_OS_WIN64 +# define MOWGLI_OS win64 +# else +# define MOWGLI_OS_WIN32 +# define MOWGLI_OS win32 +# endif +# define MOWGLI_OS_WIN +# define MOWGLI_OS_THREADS_WIN +# define MOWGLI_OS_THREADS win +# define MOWGLI_OS_MUTEX_WIN +# define MOWGLI_OS_MUTEX win -#if defined __CYGWIN__ -#define MOWGLI_OS_WIN_CYGWIN -#elif defined __MINGW32__ -#define MOWGLI_OS_WIN_MINGW -#endif +# if defined __CYGWIN__ +# define MOWGLI_OS_WIN_CYGWIN +# elif defined __MINGW32__ +# define MOWGLI_OS_WIN_MINGW +# endif -#if defined MOWGLI_CPU_POWERPC || defined MOWGLI_CPU_MIPS || defined MOWGLI_CPU_ITANIUM -#define MOWGLI_ENDIAN_CPU_LITTLE -#endif +# if defined MOWGLI_CPU_POWERPC || defined MOWGLI_CPU_MIPS || defined MOWGLI_CPU_ITANIUM +# define MOWGLI_ENDIAN_CPU_LITTLE +# endif #elif defined __NetBSD__ || defined __OpenBSD__ || defined __FreeBSD__ || defined __bsdi__ || defined __DragonFly__ || defined BSD || defined _SYSTYPE_BSD -#define MOWGLI_OS_BSD -#define MOWGLI_OS bsd -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix -#define MOWGLI_OS_BSD_TYPE +# define MOWGLI_OS_BSD +# define MOWGLI_OS bsd +# define MOWGLI_OS_THREADS_POSIX +# define MOWGLI_OS_THREADS posix +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_BSD_TYPE #elif defined __GNU__ -#define MOWGLI_OS_HURD -#define MOWGLI_OS hurd -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_HURD +# define MOWGLI_OS hurd +# define MOWGLI_OS_THREADS_POSIX +# define MOWGLI_OS_THREADS posix +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix #elif defined sco || defined __sco -#define MOWGLI_OS_SCO -#define MOWGLI_OS sco -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix -#define MOWGLI_OS_UNIX_TYPE +# define MOWGLI_OS_SCO +# define MOWGLI_OS sco +# define MOWGLI_OS_THREADS_POSIX +# define MOWGLI_OS_THREADS posix +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_UNIX_TYPE #elif defined sun || defined __sun -#define MOWGLI_OS_SOLARIS -#define MOWGLI_OS solaris -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix -#define MOWGLI_OS_UNIX_TYPE -#if defined MOWGLI_CPU_POWERPC -#define MOWGLI_CPU_ENDIAN_LITTLE -#define MOWGLI_CPU_ENDIAN little -#endif +# define MOWGLI_OS_SOLARIS +# define MOWGLI_OS solaris +# define MOWGLI_OS_THREADS_SOLARIS +# define MOWGLI_OS_THREADS solaris +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_UNIX_TYPE +# if defined MOWGLI_CPU_POWERPC +# define MOWGLI_CPU_ENDIAN_LITTLE +# define MOWGLI_CPU_ENDIAN little +# endif #elif defined _hpux || defined hpux || defined __hpux -#define MOWGLI_OS_HPUX -#define MOWGLI_OS hpux -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix -#define MOWGLI_OS_UNIX_TYPE -#if defined MOWGLI_CPU_ITANIUM -#define MOWGLI_CPU_ENDIAN_BIG -#define MOWGLI_CPU_ENDIAN big -#endif +# define MOWGLI_OS_HPUX +# define MOWGLI_OS hpux +# define MOWGLI_OS_THREADS_POSIX +# define MOWGLI_OS_THREADS posix +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_UNIX_TYPE +# if defined MOWGLI_CPU_ITANIUM +# define MOWGLI_CPU_ENDIAN_BIG +# define MOWGLI_CPU_ENDIAN big +# endif #elif defined __QNX__ || defined __QNXNTO__ -#define MOWGLI_OS_QNX -#define MOWGLI_OS qnx -#define MOWGLI_OS_THREADS_QNX -#define MOWGLI_OS_THREADS qnx -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_QNX +# define MOWGLI_OS qnx +# define MOWGLI_OS_THREADS_QNX +# define MOWGLI_OS_THREADS qnx +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix #elif defined __vms || defined __VMS -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix -#if defined MOWGLI_CPU_ITANIUM -#define MOWGLI_CPU_ENDIAN_LITTLE -#define MOWGLI_CPU_ENDIAN little -#endif +# define MOWGLI_OS_THREADS_POSIX +# define MOWGLI_OS_THREADS posix +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix +# if defined MOWGLI_CPU_ITANIUM +# define MOWGLI_CPU_ENDIAN_LITTLE +# define MOWGLI_CPU_ENDIAN little +# endif #endif #ifndef MOWGLI_OS -#if defined __unix__ || __unix || unix -#define MOWGLI_OS_UNIX -#define MOWGLI_OS unix -#define MOWGLI_OS_THREADS_POSIX -#define MOWGLI_OS_THREADS posix -#define MOWGLI_OS_MUTEX_POSIX -#define MOWGLI_OS_MUTEX posix -#define MOWGLI_OS_UNIX_TYPE -#endif -#define MOWGLI_OS_UNKNOWN -#define MOWGLI_OS unknown -#warning OS unsupported/unknown +# if defined __unix__ || __unix || unix +# define MOWGLI_OS_UNIX +# define MOWGLI_OS unix +# define MOWGLI_OS_THREADS_POSIX +# define MOWGLI_OS_THREADS posix +# define MOWGLI_OS_MUTEX_POSIX +# define MOWGLI_OS_MUTEX posix +# define MOWGLI_OS_UNIX_TYPE +# endif +# define MOWGLI_OS_UNKNOWN +# define MOWGLI_OS unknown +# warning OS unsupported/unknown #endif #ifndef MOWGLI_OS_THREADS -#define MOWGLI_OS_THREADS_NULL -#define MOWGLI_OS_THREADS null +# define MOWGLI_OS_THREADS_NULL +# define MOWGLI_OS_THREADS null #endif #ifndef MOWGLI_OS_MUTEX -#define MOWGLI_OS_MUTEX_NULL -#define MOWGLI_OS_MUTEX null +# define MOWGLI_OS_MUTEX_NULL +# define MOWGLI_OS_MUTEX null #endif #ifndef MOWGLI_CPU_ENDIAN -#if defined __BIG_ENDIAN__ || defined __ARMEB__ || defined __THUMBEB__ || defined _MIPSEB || defined __MIPSEB || defined __MIPSEB__ || __BYTE_ORDER == __BIG_ENDIAN -#define MOWGLI_CPU_ENDIAN_BIG -#define MOWGLI_CPU_ENDIAN big -#elif defined __LITTLE_ENDIAN__ || defined __ARMEL__ || defined __THUMBEL__ || defined _MIPSEL || defined __MIPSEL || defined __MIPSEL__ || __BYTE_ORDER == __LITTLE_ENDIAN -#define MOWGLI_CPU_ENDIAN_LITTLE -#define MOWGLI_CPU_ENDIAN little -#else -#warning CPU endianness unknown, some functions of libmowgli will not work -#endif +# if defined __BIG_ENDIAN__ || defined __ARMEB__ || defined __THUMBEB__ || defined _MIPSEB || defined __MIPSEB || defined __MIPSEB__ || __BYTE_ORDER == __BIG_ENDIAN +# define MOWGLI_CPU_ENDIAN_BIG +# define MOWGLI_CPU_ENDIAN big +# elif defined __LITTLE_ENDIAN__ || defined __ARMEL__ || defined __THUMBEL__ || defined _MIPSEL || defined __MIPSEL || defined __MIPSEL__ || __BYTE_ORDER == __LITTLE_ENDIAN +# define MOWGLI_CPU_ENDIAN_LITTLE +# define MOWGLI_CPU_ENDIAN little +# else +# warning CPU endianness unknown, some functions of libmowgli will not work +# endif #endif #endif |