diff options
author | Khem Raj <raj.khem@gmail.com> | 2016-05-11 10:35:34 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-05-13 13:40:53 +0100 |
commit | cc48929e916697d2103738cf12f02f47cdd43f32 (patch) | |
tree | 4216548bdba534d806b2c2255b0ec467aba1fa39 | |
parent | d7799a17d5e802db3f8d16bdc824aae81538e675 (diff) | |
download | openembedded-core-cc48929e916697d2103738cf12f02f47cdd43f32.tar.gz openembedded-core-cc48929e916697d2103738cf12f02f47cdd43f32.tar.bz2 openembedded-core-cc48929e916697d2103738cf12f02f47cdd43f32.zip |
gdb,strace: Fix builds on ppc/musl
ptrace namespace is polluted in glibc for ppc
which is highlighted with musl, these fixes
tries to undo it
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
4 files changed, 99 insertions, 8 deletions
diff --git a/meta/recipes-devtools/gdb/gdb.inc b/meta/recipes-devtools/gdb/gdb.inc index d9c864dcab..5a2067e04c 100644 --- a/meta/recipes-devtools/gdb/gdb.inc +++ b/meta/recipes-devtools/gdb/gdb.inc @@ -2,13 +2,15 @@ require gdb-common.inc inherit gettext -SRC_URI += "file://0002-Change-order-of-CFLAGS.patch \ - file://0003-Add-support-for-Renesas-SH-sh4-architecture.patch \ - file://0001-Use-exported-definitions-of-SIGRTMIN.patch \ - file://0001-include-sys-types.h-for-mode_t.patch \ - file://0001-use-asm-sgidefs.h.patch \ - file://force-readline-static.patch \ - file://0001-mips-linux-nat-Define-_ABIO32-if-not-defined.patch \ +SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.gz \ + file://0002-Change-order-of-CFLAGS.patch \ + file://0003-Add-support-for-Renesas-SH-sh4-architecture.patch \ + file://0001-Use-exported-definitions-of-SIGRTMIN.patch \ + file://0001-include-sys-types.h-for-mode_t.patch \ + file://0001-use-asm-sgidefs.h.patch \ + file://force-readline-static.patch \ + file://0001-mips-linux-nat-Define-_ABIO32-if-not-defined.patch \ + file://0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch \ " #LDFLAGS_append = " -s" #export CFLAGS_append=" -L${STAGING_LIBDIR}" diff --git a/meta/recipes-devtools/gdb/gdb/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch b/meta/recipes-devtools/gdb/gdb/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch new file mode 100644 index 0000000000..342f1ce425 --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch @@ -0,0 +1,52 @@ +From 33a2cdb731298b73277507f01b9a21cd340c5b5c Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 30 Apr 2016 16:46:03 +0000 +Subject: [PATCH] ppc/ptrace: Define pt_regs uapi_pt_regs on !GLIBC systems + +Upstream-Status: Pending + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + gdb/gdbserver/linux-ppc-low.c | 6 ++++++ + gdb/nat/ppc-linux.h | 6 ++++++ + 2 files changed, 12 insertions(+) + +diff --git a/gdb/gdbserver/linux-ppc-low.c b/gdb/gdbserver/linux-ppc-low.c +index 188fac0..f71d5ab 100644 +--- a/gdb/gdbserver/linux-ppc-low.c ++++ b/gdb/gdbserver/linux-ppc-low.c +@@ -21,7 +21,13 @@ + #include "linux-low.h" + + #include <elf.h> ++#if !defined(__GLIBC__) ++# define pt_regs uapi_pt_regs ++#endif + #include <asm/ptrace.h> ++#if !defined(__GLIBC__) ++# undef pt_regs ++#endif + + #include "nat/ppc-linux.h" + +diff --git a/gdb/nat/ppc-linux.h b/gdb/nat/ppc-linux.h +index 0ff2223..c978daa 100644 +--- a/gdb/nat/ppc-linux.h ++++ b/gdb/nat/ppc-linux.h +@@ -18,7 +18,13 @@ + #ifndef PPC_LINUX_H + #define PPC_LINUX_H 1 + ++#if !defined(__GLIBC__) ++# define pt_regs uapi_pt_regs ++#endif + #include <asm/ptrace.h> ++#if !defined(__GLIBC__) ++# undef pt_regs ++#endif + #include <asm/cputable.h> + + /* This sometimes isn't defined. */ +-- +1.8.3.1 + diff --git a/meta/recipes-devtools/strace/strace/0001-Fix-build-when-using-non-glibc-libc-implementation-o.patch b/meta/recipes-devtools/strace/strace/0001-Fix-build-when-using-non-glibc-libc-implementation-o.patch new file mode 100644 index 0000000000..7f59210ca9 --- /dev/null +++ b/meta/recipes-devtools/strace/strace/0001-Fix-build-when-using-non-glibc-libc-implementation-o.patch @@ -0,0 +1,36 @@ +From 1f0c22b79045cfcdc976643f383c1d09589d3087 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 30 Apr 2016 16:23:56 +0000 +Subject: [PATCH] Fix build when using non-glibc libc implementation on ppc + +glibc includes the kernel header into its own header for macros +musl does not + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + ptrace.h | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/ptrace.h b/ptrace.h +index d8af976..4978a69 100644 +--- a/ptrace.h ++++ b/ptrace.h +@@ -52,7 +52,13 @@ extern long ptrace(int, int, char *, long); + # define ptrace_peeksiginfo_args XXX_ptrace_peeksiginfo_args + #endif + +-#include <linux/ptrace.h> ++#if defined(POWERPC) && !defined(__GLIBC__) ++#define pt_regs uapi_pt_regs ++#endif ++# include <linux/ptrace.h> ++#if defined(POWERPC) && !defined(__GLIBC__) ++# undef pt_regs ++#endif + + #ifdef HAVE_STRUCT_IA64_FPREG + # undef ia64_fpreg +-- +1.8.3.1 + diff --git a/meta/recipes-devtools/strace/strace_4.11.bb b/meta/recipes-devtools/strace/strace_4.11.bb index 7391388020..56b64bb0c9 100644 --- a/meta/recipes-devtools/strace/strace_4.11.bb +++ b/meta/recipes-devtools/strace/strace_4.11.bb @@ -16,7 +16,8 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.xz \ file://0001-Move-gcc-compat-macros-to-gcc_compat.h.patch \ file://0001-tests-introduce-libtests.patch \ file://run-ptest \ - " + file://0001-Fix-build-when-using-non-glibc-libc-implementation-o.patch \ + " SRC_URI[md5sum] = "a15d2555a7febb56d00c6e1a51c655dc" SRC_URI[sha256sum] = "e86a5f6cd8f941f67f3e4b28f4e60f3d9185c951cf266404533210a2e5cd8152" |