You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
--- a/include/platform.h
|
|
|
|
+++ b/include/platform.h
|
|
|
|
@@ -154,14 +154,14 @@
|
|
|
|
# include <sex.h>
|
|
|
|
# define __BIG_ENDIAN__ (BYTE_ORDER == BIG_ENDIAN)
|
|
|
|
# define __BYTE_ORDER BYTE_ORDER
|
|
|
|
-#elif defined __FreeBSD__
|
|
|
|
+#elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined (__NetBSD__) || defined(__APPLE__)
|
|
|
|
# include <sys/resource.h> /* rlimit */
|
|
|
|
# include <machine/endian.h>
|
|
|
|
# define bswap_64 __bswap64
|
|
|
|
# define bswap_32 __bswap32
|
|
|
|
# define bswap_16 __bswap16
|
|
|
|
# define __BIG_ENDIAN__ (_BYTE_ORDER == _BIG_ENDIAN)
|
|
|
|
-#elif !defined __APPLE__
|
|
|
|
+#else
|
|
|
|
# include <byteswap.h>
|
|
|
|
# include <endian.h>
|
|
|
|
#endif
|
|
|
|
@@ -172,9 +172,15 @@
|
|
|
|
#elif defined(__BYTE_ORDER) && __BYTE_ORDER == __BIG_ENDIAN
|
|
|
|
# define BB_BIG_ENDIAN 1
|
|
|
|
# define BB_LITTLE_ENDIAN 0
|
|
|
|
+#elif defined(_BYTE_ORDER) && _BYTE_ORDER == _BIG_ENDIAN
|
|
|
|
+# define BB_BIG_ENDIAN 1
|
|
|
|
+# define BB_LITTLE_ENDIAN 0
|
|
|
|
#elif (defined(__BYTE_ORDER) && __BYTE_ORDER == __LITTLE_ENDIAN) || defined(__386__)
|
|
|
|
# define BB_BIG_ENDIAN 0
|
|
|
|
# define BB_LITTLE_ENDIAN 1
|
|
|
|
+#elif defined(_BYTE_ORDER) && _BYTE_ORDER == _LITTLE_ENDIAN
|
|
|
|
+# define BB_BIG_ENDIAN 0
|
|
|
|
+# define BB_LITTLE_ENDIAN 1
|
|
|
|
#else
|
|
|
|
# error "Can't determine endianness"
|
|
|
|
#endif
|