From bbf9531ee7ca6a16c93ca394cf979874a50d6fa4 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 25 Jun 2015 11:05:50 +0000 Subject: [PATCH] strace: update to 4.10 - include upstream fixes for musl compatibility Include for S_I* macros d34e00b293942b1012ddc49ed3ab379a32337611 Include for _IOC_* macros 3460dc486d333231998de0f19918204aacee9ae3 strace 4.8 is broken with musl on some arch (arm: omap,oxnas according to buildbot) compile tested only Signed-off-by: Dirk Neukirchen SVN-Revision: 46124 --- package/devel/strace/Makefile | 4 +- .../patches/001-upstream-musl_includes.patch | 53 ++++++ .../devel/strace/patches/100-musl_fix.patch | 165 ------------------ 3 files changed, 55 insertions(+), 167 deletions(-) create mode 100644 package/devel/strace/patches/001-upstream-musl_includes.patch delete mode 100644 package/devel/strace/patches/100-musl_fix.patch diff --git a/package/devel/strace/Makefile b/package/devel/strace/Makefile index 4c29d69cda..eb80791b26 100644 --- a/package/devel/strace/Makefile +++ b/package/devel/strace/Makefile @@ -10,9 +10,9 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=strace -PKG_VERSION:=4.8 +PKG_VERSION:=4.10 PKG_RELEASE:=1 -PKG_MD5SUM:=c575ef43829586801f514fd91bfe7575 +PKG_MD5SUM:=107a5be455493861189e9b57a3a51912 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@SF/$(PKG_NAME) diff --git a/package/devel/strace/patches/001-upstream-musl_includes.patch b/package/devel/strace/patches/001-upstream-musl_includes.patch new file mode 100644 index 0000000000..a35d7fd5a7 --- /dev/null +++ b/package/devel/strace/patches/001-upstream-musl_includes.patch @@ -0,0 +1,53 @@ +--- a/evdev.c ++++ b/evdev.c +@@ -28,6 +28,8 @@ + + #include "defs.h" + ++#include ++ + #ifdef HAVE_LINUX_INPUT_H + #include + #include "xlat/evdev_abs.h" +--- a/ioctl.c ++++ b/ioctl.c +@@ -29,7 +29,7 @@ + */ + + #include "defs.h" +-#include ++#include + #include "xlat/ioctl_dirs.h" + + #ifdef HAVE_LINUX_INPUT_H +--- a/ioctlsort.c ++++ b/ioctlsort.c +@@ -33,7 +33,7 @@ + #include + #include + #include +-#include ++#include + + struct ioctlent { + const char *info; +--- a/mknod.c ++++ b/mknod.c +@@ -1,6 +1,7 @@ + #include "defs.h" + + #include ++#include + + #ifdef MAJOR_IN_SYSMACROS + # include +--- a/printmode.c ++++ b/printmode.c +@@ -1,6 +1,7 @@ + #include "defs.h" + + #include ++#include + + #include "xlat/modetypes.h" + diff --git a/package/devel/strace/patches/100-musl_fix.patch b/package/devel/strace/patches/100-musl_fix.patch deleted file mode 100644 index e4105bc548..0000000000 --- a/package/devel/strace/patches/100-musl_fix.patch +++ /dev/null @@ -1,165 +0,0 @@ ---- a/net.c -+++ b/net.c -@@ -50,11 +50,7 @@ - #include - #include - #include --#if defined(__GLIBC__) --# include --#else --# include --#endif -+#include - - #if defined(__GLIBC__) && defined(HAVE_SIN6_SCOPE_ID_LINUX) - # if defined(HAVE_LINUX_IN6_H) -@@ -94,14 +90,6 @@ - # define PF_UNSPEC AF_UNSPEC - #endif - --/* Under Linux these are enums so we can't test for them with ifdef. */ --#define IPPROTO_EGP IPPROTO_EGP --#define IPPROTO_PUP IPPROTO_PUP --#define IPPROTO_IDP IPPROTO_IDP --#define IPPROTO_IGMP IPPROTO_IGMP --#define IPPROTO_RAW IPPROTO_RAW --#define IPPROTO_MAX IPPROTO_MAX -- - static const struct xlat domains[] = { - #ifdef PF_UNSPEC - { PF_UNSPEC, "PF_UNSPEC" }, -@@ -493,24 +481,16 @@ static const struct xlat protocols[] = { - { IPPROTO_ICMP, "IPPROTO_ICMP" }, - { IPPROTO_TCP, "IPPROTO_TCP" }, - { IPPROTO_UDP, "IPPROTO_UDP" }, --#ifdef IPPROTO_IGMP - { IPPROTO_IGMP, "IPPROTO_IGMP" }, --#endif - #ifdef IPPROTO_GGP - { IPPROTO_GGP, "IPPROTO_GGP" }, - #endif - #ifdef IPPROTO_IPIP - { IPPROTO_IPIP, "IPPROTO_IPIP" }, - #endif --#ifdef IPPROTO_EGP - { IPPROTO_EGP, "IPPROTO_EGP" }, --#endif --#ifdef IPPROTO_PUP - { IPPROTO_PUP, "IPPROTO_PUP" }, --#endif --#ifdef IPPROTO_IDP - { IPPROTO_IDP, "IPPROTO_IDP" }, --#endif - #ifdef IPPROTO_TP - { IPPROTO_TP, "IPPROTO_TP" }, - #endif -@@ -571,12 +551,8 @@ static const struct xlat protocols[] = { - #ifdef IPPROTO_UDPLITE - { IPPROTO_UDPLITE, "IPPROTO_UDPLITE" }, - #endif --#ifdef IPPROTO_RAW - { IPPROTO_RAW, "IPPROTO_RAW" }, --#endif --#ifdef IPPROTO_MAX - { IPPROTO_MAX, "IPPROTO_MAX" }, --#endif - { 0, NULL }, - }; - static const struct xlat msg_flags[] = { ---- a/process.c -+++ b/process.c -@@ -55,19 +55,6 @@ - # endif - #endif - --#ifdef HAVE_LINUX_PTRACE_H --# undef PTRACE_SYSCALL --# ifdef HAVE_STRUCT_IA64_FPREG --# define ia64_fpreg XXX_ia64_fpreg --# endif --# ifdef HAVE_STRUCT_PT_ALL_USER_REGS --# define pt_all_user_regs XXX_pt_all_user_regs --# endif --# include --# undef ia64_fpreg --# undef pt_all_user_regs --#endif -- - #if defined(SPARC64) - # define r_pc r_tpc - # undef PTRACE_GETREGS -@@ -94,6 +81,7 @@ - - #include - #include -+#include - #undef GETGROUPS_T - #define GETGROUPS_T __kernel_gid_t - #undef GETGROUPS32_T -@@ -2857,7 +2845,7 @@ sys_sched_setscheduler(struct tcb *tcp) - if (umove(tcp, tcp->u_arg[2], &p) < 0) - tprintf(", %#lx", tcp->u_arg[2]); - else -- tprintf(", { %d }", p.__sched_priority); -+ tprintf(", { %d }", p.sched_priority); - } - return 0; - } -@@ -2872,7 +2860,7 @@ sys_sched_getparam(struct tcb *tcp) - if (umove(tcp, tcp->u_arg[1], &p) < 0) - tprintf("%#lx", tcp->u_arg[1]); - else -- tprintf("{ %d }", p.__sched_priority); -+ tprintf("{ %d }", p.sched_priority); - } - return 0; - } -@@ -2885,7 +2873,7 @@ sys_sched_setparam(struct tcb *tcp) - if (umove(tcp, tcp->u_arg[1], &p) < 0) - tprintf("%d, %#lx", (int) tcp->u_arg[0], tcp->u_arg[1]); - else -- tprintf("%d, { %d }", (int) tcp->u_arg[0], p.__sched_priority); -+ tprintf("%d, { %d }", (int) tcp->u_arg[0], p.sched_priority); - } - return 0; - } ---- a/signal.c -+++ b/signal.c -@@ -35,6 +35,7 @@ - #include - #include - -+#include - #ifdef HAVE_SYS_REG_H - # include - # ifndef PTRACE_PEEKUSR ---- a/time.c -+++ b/time.c -@@ -774,7 +774,7 @@ printsigevent(struct tcb *tcp, long arg) - /* _pad[0] is the _tid field which might not be - present in the userlevel definition of the - struct. */ -- tprintf("{%d}", sev._sigev_un._pad[0]); -+ tprintf("{%d}", *(int *) &sev.sigev_notify_function); - else if (sev.sigev_notify == SIGEV_THREAD) - tprintf("{%p, %p}", sev.sigev_notify_function, - sev.sigev_notify_attributes); ---- a/defs.h -+++ b/defs.h -@@ -27,6 +27,7 @@ - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -+#define _LARGEFILE64_SOURCE 1 - #ifdef HAVE_CONFIG_H - # include "config.h" - #endif -@@ -222,7 +223,7 @@ extern long ptrace(int, int, char *, lon - # define PTRACE_EVENT_EXIT 6 - #endif - --#if !defined(__GLIBC__) -+#if !defined(__GLIBC__) && !defined(PTRACE_PEEKUSER) - # define PTRACE_PEEKUSER PTRACE_PEEKUSR - # define PTRACE_POKEUSER PTRACE_POKEUSR - #endif -- 2.25.1