summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Lauer <mickey@vanille-media.de>2008-08-03 23:16:09 +0000
committerMichael Lauer <mickey@vanille-media.de>2008-08-03 23:16:09 +0000
commitc4ff515dc73e78f46a3e81e69458654afc9dd788 (patch)
tree97d4936a0cc7d01b27e52c79f69764e5c16e9f61
parent4e0950a0db376b2ffaedbef84866795012c3036d (diff)
strace 4.5.14 fix compiling for mips[-el]. closes bug #2221
(albeit by convoluting this recipe even more...)
-rw-r--r--packages/strace/strace/mips-sigcontext.patch46
-rw-r--r--packages/strace/strace_4.5.14.bb18
2 files changed, 61 insertions, 3 deletions
diff --git a/packages/strace/strace/mips-sigcontext.patch b/packages/strace/strace/mips-sigcontext.patch
new file mode 100644
index 0000000000..15f5cc88e4
--- /dev/null
+++ b/packages/strace/strace/mips-sigcontext.patch
@@ -0,0 +1,46 @@
+diff -urN strace-4.5.14/signal.c strace-4.5.14-mips/signal.c
+--- strace-4.5.14/signal.c 2006-01-12 22:34:50.000000000 +0000
++++ strace-4.5.14-mips/signal.c 2007-05-03 06:59:09.000000000 +0000
+@@ -66,7 +66,7 @@
+
+
+ #ifdef LINUX
+-
++#include <linux/version.h>
+ #ifdef IA64
+ # include <asm/ptrace_offsets.h>
+ #endif /* !IA64 */
+@@ -1420,7 +1420,11 @@
+ if (umove(tcp, sp, &sc) < 0)
+ return 0;
+ tcp->u_arg[0] = 1;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
+ tcp->u_arg[1] = sc.sc_sigset;
++#else
++ tcp->u_arg[1] = sc.sc_hi2;
++#endif
+ } else {
+ tcp->u_rval = tcp->u_error = 0;
+ if(tcp->u_arg[0] == 0)
+diff -urN strace-4.5.14/system.c strace-4.5.14-mips/system.c
+--- strace-4.5.14/system.c 2006-01-12 21:21:06.000000000 +0000
++++ strace-4.5.14-mips/system.c 2007-05-03 06:59:09.000000000 +0000
+@@ -78,6 +78,7 @@
+ #endif
+
+ #include <linux/sysctl.h>
++#include <linux/version.h>
+
+ static const struct xlat mount_flags[] = {
+ { MS_MGC_VAL, "MS_MGC_VAL" },
+@@ -1578,7 +1579,9 @@
+ { CTL_KERN, "CTL_KERN" },
+ { CTL_VM, "CTL_VM" },
+ { CTL_NET, "CTL_NET" },
+- { CTL_PROC, "CTL_PROC" },
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18)
++ { CTL_PROC, "CTL_PROC" },
++#endif
+ { CTL_FS, "CTL_FS" },
+ { CTL_DEBUG, "CTL_DEBUG" },
+ { CTL_DEV, "CTL_DEV" },
diff --git a/packages/strace/strace_4.5.14.bb b/packages/strace/strace_4.5.14.bb
index 0571c466d5..cb697008b8 100644
--- a/packages/strace/strace_4.5.14.bb
+++ b/packages/strace/strace_4.5.14.bb
@@ -1,7 +1,7 @@
DESCRIPTION = "strace is a system call tracing tool."
SECTION = "console/utils"
LICENSE = "GPL"
-PR = "r6"
+PR = "r7"
SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2 \
file://glibc-2.5.patch;patch=1 \
@@ -13,8 +13,6 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2 \
file://strace-undef-syscall.patch;patch=1 \
file://strace-arm-no-cachectl.patch;patch=1 \
"
-
-
# The strace-4.5.14-avr32.patch conflicts with some other patches.
# These patches are primarly for the ARM and SuperH, so we'll just
@@ -27,6 +25,20 @@ SRC_URI_avr32 = \
file://strace-4.5.14-avr32-add-syscalls-up-to-sysvipc.patch;patch=1 \
"
+# Again, a different set of patches for MIPS. See http://bugs.openembedded.net/show_bug.cgi?id=2221
+MIPS = "\
+ ${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2 \
+ file://glibc-2.5.patch;patch=1 \
+ file://arm-eabi.patch;patch=1 \
+ file://sh-arch-update.patch;patch=1 \
+ file://sh-syscall-update.patch;patch=1 \
+ file://strace-fix-arm-bad-syscall.patch;patch=1 \
+ file://strace-undef-syscall.patch;patch=1 \
+ file://strace-arm-no-cachectl.patch;patch=1 \
+ file://mips-sigcontext.patch;patch=1 \
+"
+SRC_URI_mips = "${MIPS}"
+SRC_URI_mipsel = "${MIPS}"
inherit autotools