summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorjoerg <joerg@pkgsrc.org>2015-02-19 14:18:23 +0000
committerjoerg <joerg@pkgsrc.org>2015-02-19 14:18:23 +0000
commit285c3660a2f5f76a309ded4f2cbb3d330a1bb5c3 (patch)
tree6804ab4188255a9eaaa998c98fcf5f2d407f2a0d /emulators
parent23e3518cfac3e5dbdd24f2b98164107ed1d48696 (diff)
downloadpkgsrc-285c3660a2f5f76a309ded4f2cbb3d330a1bb5c3.tar.gz
Fix byte endian handling for ARM.
Diffstat (limited to 'emulators')
-rw-r--r--emulators/dynamips/distinfo3
-rw-r--r--emulators/dynamips/patches/patch-utils.h31
2 files changed, 33 insertions, 1 deletions
diff --git a/emulators/dynamips/distinfo b/emulators/dynamips/distinfo
index 32b48a999ef..9a4e97efac4 100644
--- a/emulators/dynamips/distinfo
+++ b/emulators/dynamips/distinfo
@@ -1,6 +1,7 @@
-$NetBSD: distinfo,v 1.6 2014/02/24 12:30:59 wiedi Exp $
+$NetBSD: distinfo,v 1.7 2015/02/19 14:18:23 joerg Exp $
SHA1 (dynamips-0.2.8-RC2.tar.gz) = 349270690996a1e260b3eceb51ea90f94c25a59e
RMD160 (dynamips-0.2.8-RC2.tar.gz) = 0447a4c0cf516bd2b63259881c7625e26d0d838f
Size (dynamips-0.2.8-RC2.tar.gz) = 578935 bytes
SHA1 (patch-aa) = 9dce75ed9d39e6faaf3b8af7a52fa094073d6f56
+SHA1 (patch-utils.h) = 10662fe161ba9d87615abfc6a8e1cb5bf19df3e5
diff --git a/emulators/dynamips/patches/patch-utils.h b/emulators/dynamips/patches/patch-utils.h
new file mode 100644
index 00000000000..d3ccc6edc26
--- /dev/null
+++ b/emulators/dynamips/patches/patch-utils.h
@@ -0,0 +1,31 @@
+$NetBSD: patch-utils.h,v 1.1 2015/02/19 14:18:23 joerg Exp $
+
+--- utils.h.orig 2015-02-10 10:34:29.000000000 +0000
++++ utils.h
+@@ -54,6 +54,12 @@
+ #define ARCH_BYTE_ORDER ARCH_LITTLE_ENDIAN
+ #elif defined(__ia64__)
+ #define ARCH_BYTE_ORDER ARCH_LITTLE_ENDIAN
++#elif defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__) && defined(__ORDER_BIG_ENDIAN__)
++# if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
++# define ARCH_BYTE_ORDER ARCH_LITTLE_ENDIAN
++# else
++# define ARCH_BYTE_ORDER ARCH_BIG_ENDIAN
++# endif
+ #endif
+
+ #ifndef ARCH_BYTE_ORDER
+@@ -80,8 +86,13 @@
+ #endif
+
+ /* Useful attributes for functions */
++#ifdef __arm__
++#define asmlinkage
++#define fastcall
++#else
+ #define asmlinkage __attribute__((regparm(0)))
+ #define fastcall __attribute__((regparm(3)))
++#endif
+
+ #if __GNUC__ > 2
+ #define forced_inline inline __attribute__((always_inline))