aboutsummaryrefslogtreecommitdiffstats
path: root/target/utils/src/trx.c
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2006-02-26 15:50:31 +0000
committerFlorian Fainelli <florian@openwrt.org>2006-02-26 15:50:31 +0000
commit802fb155b11cf7beeffe2f02231dcc3fc7c820f0 (patch)
treea16c5d8b11a3ad3c4556a9b9b84f87965b7cb2c6 /target/utils/src/trx.c
parent5574932be9d4cf7dadbbe49c7fcbd2e2ee93231d (diff)
downloadupstream-802fb155b11cf7beeffe2f02231dcc3fc7c820f0.tar.gz
upstream-802fb155b11cf7beeffe2f02231dcc3fc7c820f0.tar.bz2
upstream-802fb155b11cf7beeffe2f02231dcc3fc7c820f0.zip
Endianess and os-specific fixes
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@3276 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/utils/src/trx.c')
-rw-r--r--target/utils/src/trx.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/target/utils/src/trx.c b/target/utils/src/trx.c
index 6f9fa41687..a7a2a54540 100644
--- a/target/utils/src/trx.c
+++ b/target/utils/src/trx.c
@@ -44,8 +44,18 @@
#include <string.h>
#include <errno.h>
#include <unistd.h>
+#if defined(__APPLE__)
+#include <machine/endian.h>
+#include <machine/byte_order.h>
+#define __BYTE_ORDER BYTE_ORDER
+#define __BIG_ENDIAN BIG_ENDIAN
+#define bswap_16(x) NXSwapShort(x)
+#define bswap_32(x) NXSwapInt(x)
+#define bswap_64(x) NXSwapLongLong(x)
+#else
#include <endian.h>
#include <byteswap.h>
+#endif
#if __BYTE_ORDER == __BIG_ENDIAN
#define STORE32_LE(X) bswap_32(X)