Fix strace compilation with ARM EABI (#2951)
authorFlorian Fainelli <florian@openwrt.org>
Fri, 4 Jan 2008 05:51:33 +0000 (05:51 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Fri, 4 Jan 2008 05:51:33 +0000 (05:51 +0000)
SVN-Revision: 10111

utils/strace/Makefile
utils/strace/patches/001-arm_eabi_syscalls.patch [new file with mode: 0644]

index 828a121..df6ddb8 100644 (file)
@@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=strace
 PKG_VERSION:=4.5.16
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=@SF/$(PKG_NAME)
diff --git a/utils/strace/patches/001-arm_eabi_syscalls.patch b/utils/strace/patches/001-arm_eabi_syscalls.patch
new file mode 100644 (file)
index 0000000..ffb8acf
--- /dev/null
@@ -0,0 +1,62 @@
+--- strace-4.5.12/linux/syscallent.h.orig      2005-08-09 01:48:54.000000000 -0600
++++ strace-4.5.12/linux/syscallent.h   2005-08-09 01:50:23.000000000 -0600
+@@ -298,7 +298,11 @@
+       { 3,    0,      sys_io_cancel,          "io_cancel"     }, /* 249 */
+       { 5,    TF,     sys_fadvise64,          "fadvise64"     }, /* 250 */
+       { 5,    0,      printargs,              "SYS_251"       }, /* 251 */
+-      { 1,    TP,     sys_exit,               "exit_group", __NR_exit_group }, /* 252 */
++      { 1,    TP,     sys_exit,               "exit_group"
++#ifdef __NR_exit_group
++          , __NR_exit_group
++#endif
++                                                              }, /* 252 */
+       { 4,    0,      printargs,              "lookup_dcookie"}, /* 253 */
+       { 1,    0,      sys_epoll_create,       "epoll_create"  }, /* 254 */
+       { 4,    0,      sys_epoll_ctl,          "epoll_ctl"     }, /* 255 */
+--- strace-4.5.15.orig/linux/syscallent.h      2007-02-04 19:03:48.000000000 +0100
++++ strace-4.5.15/linux/syscallent.h   2007-02-04 19:11:04.000000000 +0100
+@@ -130,7 +130,10 @@
+       { 2,    TF,     sys_statfs,             "statfs"        }, /* 99 */
+       { 2,    TD,     sys_fstatfs,            "fstatfs"       }, /* 100 */
+       { 3,    0,      sys_ioperm,             "ioperm"        }, /* 101 */
+-      { 2,    TD,     sys_socketcall,         "socketcall", SYS_socketcall }, /* 102 */
++      { 2,    TD,     sys_socketcall,         "socketcall",
++#ifdef __NR_socketcall
++      SYS_socketcall }, /* 102 */
++#endif
+       { 3,    0,      sys_syslog,             "syslog"        }, /* 103 */
+       { 3,    0,      sys_setitimer,          "setitimer"     }, /* 104 */
+       { 2,    0,      sys_getitimer,          "getitimer"     }, /* 105 */
+@@ -145,7 +148,10 @@
+       { 4,    TP,     sys_wait4,              "wait4", SYS_wait4 }, /* 114 */
+       { 1,    0,      sys_swapoff,            "swapoff"       }, /* 115 */
+       { 1,    0,      sys_sysinfo,            "sysinfo"       }, /* 116 */
+-      { 6,    0,      sys_ipc,                "ipc", SYS_ipc }, /* 117 */
++      { 6,    0,      sys_ipc,                "ipc",
++#ifdef __NR_ipc
++      SYS_ipc }, /* 117 */
++#endif
+       { 1,    TD,     sys_fsync,              "fsync"         }, /* 118 */
+       { 1,    TS,     sys_sigreturn,          "sigreturn"     }, /* 119 */
+       { 5,    TP,     sys_clone,              "clone", SYS_clone }, /* 120 */
+--- strace-4.5.15.orig/syscall.c       2007-02-04 19:03:48.000000000 +0100
++++ strace-4.5.15/syscall.c    2007-02-04 19:07:26.000000000 +0100
+@@ -2404,14 +2404,18 @@
+       switch (known_scno(tcp)) {
+ #ifdef LINUX
+ #if !defined (ALPHA) && !defined(SPARC) && !defined(SPARC64) && !defined(MIPS) && !defined(HPPA)
++#ifdef __NR_socketcall
+       case SYS_socketcall:
+               decode_subcall(tcp, SYS_socket_subcall,
+                       SYS_socket_nsubcalls, deref_style);
+               break;
++#endif
++#ifdef __NR_ipc
+       case SYS_ipc:
+               decode_subcall(tcp, SYS_ipc_subcall,
+                       SYS_ipc_nsubcalls, shift_style);
+               break;
++#endif
+ #endif /* !ALPHA && !MIPS && !SPARC && !SPARC64 && !HPPA */
+ #if defined (SPARC) || defined (SPARC64)
+       case SYS_socketcall: