From c7cb4560751f9c9bb90ecc679e611271fb225711 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 12 May 2022 12:28:54 -0700 Subject: gdb: Upgrade to 12.1 Release Announcement [1] and Notes [2] [1] https://lists.gnu.org/archive/html/info-gnu/2022-05/msg00000.html [2] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gdb/NEWS;hb=gdb-12.1-release (From OE-Core rev: 8d42315c074a9746df0586136b063ea0e58739db) Signed-off-by: Khem Raj Signed-off-by: Luca Ceresoli Signed-off-by: Richard Purdie --- .../gdb/gdb-cross-canadian_11.2.bb | 3 -- .../gdb/gdb-cross-canadian_12.1.bb | 3 ++ meta/recipes-devtools/gdb/gdb-cross_11.2.bb | 2 - meta/recipes-devtools/gdb/gdb-cross_12.1.bb | 2 + meta/recipes-devtools/gdb/gdb.inc | 14 +++--- ...0001-make-man-install-relative-to-DESTDIR.patch | 10 ++--- ...s-linux-nat-Define-_ABIO32-if-not-defined.patch | 8 ++-- ...Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch | 11 +++-- ...e-libreadline.a-when-using-disable-static.patch | 50 ++++++++++++++++++++++ ...e-libreadline.a-when-using-disable-static.patch | 50 ---------------------- .../gdb/gdb/0005-use-asm-sgidefs.h.patch | 36 ++++++++++++++++ .../gdb/gdb/0006-Change-order-of-CFLAGS.patch | 30 +++++++++++++ .../gdb/gdb/0006-use-asm-sgidefs.h.patch | 36 ---------------- .../gdb/gdb/0007-Change-order-of-CFLAGS.patch | 30 ------------- .../0007-resolve-restrict-keyword-conflict.patch | 48 +++++++++++++++++++++ .../gdb/0008-Fix-invalid-sigprocmask-call.patch | 49 +++++++++++++++++++++ .../0008-resolve-restrict-keyword-conflict.patch | 48 --------------------- .../gdb/0009-Fix-invalid-sigprocmask-call.patch | 49 --------------------- .../gdb/gdb/0009-gdbserver-ctrl-c-handling.patch | 40 +++++++++++++++++ .../gdb/gdb/0010-gdbserver-ctrl-c-handling.patch | 40 ----------------- meta/recipes-devtools/gdb/gdb_11.2.bb | 39 ----------------- meta/recipes-devtools/gdb/gdb_12.1.bb | 39 +++++++++++++++++ 22 files changed, 318 insertions(+), 319 deletions(-) delete mode 100644 meta/recipes-devtools/gdb/gdb-cross-canadian_11.2.bb create mode 100644 meta/recipes-devtools/gdb/gdb-cross-canadian_12.1.bb delete mode 100644 meta/recipes-devtools/gdb/gdb-cross_11.2.bb create mode 100644 meta/recipes-devtools/gdb/gdb-cross_12.1.bb create mode 100644 meta/recipes-devtools/gdb/gdb/0004-Dont-disable-libreadline.a-when-using-disable-static.patch delete mode 100644 meta/recipes-devtools/gdb/gdb/0005-Dont-disable-libreadline.a-when-using-disable-static.patch create mode 100644 meta/recipes-devtools/gdb/gdb/0005-use-asm-sgidefs.h.patch create mode 100644 meta/recipes-devtools/gdb/gdb/0006-Change-order-of-CFLAGS.patch delete mode 100644 meta/recipes-devtools/gdb/gdb/0006-use-asm-sgidefs.h.patch delete mode 100644 meta/recipes-devtools/gdb/gdb/0007-Change-order-of-CFLAGS.patch create mode 100644 meta/recipes-devtools/gdb/gdb/0007-resolve-restrict-keyword-conflict.patch create mode 100644 meta/recipes-devtools/gdb/gdb/0008-Fix-invalid-sigprocmask-call.patch delete mode 100644 meta/recipes-devtools/gdb/gdb/0008-resolve-restrict-keyword-conflict.patch delete mode 100644 meta/recipes-devtools/gdb/gdb/0009-Fix-invalid-sigprocmask-call.patch create mode 100644 meta/recipes-devtools/gdb/gdb/0009-gdbserver-ctrl-c-handling.patch delete mode 100644 meta/recipes-devtools/gdb/gdb/0010-gdbserver-ctrl-c-handling.patch delete mode 100644 meta/recipes-devtools/gdb/gdb_11.2.bb create mode 100644 meta/recipes-devtools/gdb/gdb_12.1.bb (limited to 'meta/recipes-devtools') diff --git a/meta/recipes-devtools/gdb/gdb-cross-canadian_11.2.bb b/meta/recipes-devtools/gdb/gdb-cross-canadian_11.2.bb deleted file mode 100644 index 4ab2b7156d..0000000000 --- a/meta/recipes-devtools/gdb/gdb-cross-canadian_11.2.bb +++ /dev/null @@ -1,3 +0,0 @@ -require gdb-common.inc -require gdb-cross-canadian.inc -require gdb.inc diff --git a/meta/recipes-devtools/gdb/gdb-cross-canadian_12.1.bb b/meta/recipes-devtools/gdb/gdb-cross-canadian_12.1.bb new file mode 100644 index 0000000000..4ab2b7156d --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb-cross-canadian_12.1.bb @@ -0,0 +1,3 @@ +require gdb-common.inc +require gdb-cross-canadian.inc +require gdb.inc diff --git a/meta/recipes-devtools/gdb/gdb-cross_11.2.bb b/meta/recipes-devtools/gdb/gdb-cross_11.2.bb deleted file mode 100644 index 3b654a2f0d..0000000000 --- a/meta/recipes-devtools/gdb/gdb-cross_11.2.bb +++ /dev/null @@ -1,2 +0,0 @@ -require gdb-cross.inc -require gdb.inc diff --git a/meta/recipes-devtools/gdb/gdb-cross_12.1.bb b/meta/recipes-devtools/gdb/gdb-cross_12.1.bb new file mode 100644 index 0000000000..3b654a2f0d --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb-cross_12.1.bb @@ -0,0 +1,2 @@ +require gdb-cross.inc +require gdb.inc diff --git a/meta/recipes-devtools/gdb/gdb.inc b/meta/recipes-devtools/gdb/gdb.inc index 649ee28727..3b569fd40e 100644 --- a/meta/recipes-devtools/gdb/gdb.inc +++ b/meta/recipes-devtools/gdb/gdb.inc @@ -8,11 +8,11 @@ SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.xz \ file://0001-make-man-install-relative-to-DESTDIR.patch \ file://0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch \ file://0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch \ - file://0005-Dont-disable-libreadline.a-when-using-disable-static.patch \ - file://0006-use-asm-sgidefs.h.patch \ - file://0007-Change-order-of-CFLAGS.patch \ - file://0008-resolve-restrict-keyword-conflict.patch \ - file://0009-Fix-invalid-sigprocmask-call.patch \ - file://0010-gdbserver-ctrl-c-handling.patch \ + file://0004-Dont-disable-libreadline.a-when-using-disable-static.patch \ + file://0005-use-asm-sgidefs.h.patch \ + file://0006-Change-order-of-CFLAGS.patch \ + file://0007-resolve-restrict-keyword-conflict.patch \ + file://0008-Fix-invalid-sigprocmask-call.patch \ + file://0009-gdbserver-ctrl-c-handling.patch \ " -SRC_URI[sha256sum] = "1497c36a71881b8671a9a84a0ee40faab788ca30d7ba19d8463c3cc787152e32" +SRC_URI[sha256sum] = "0e1793bf8f2b54d53f46dea84ccfd446f48f81b297b28c4f7fc017b818d69fed" diff --git a/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch b/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch index 824b96f6af..16d6cf196f 100644 --- a/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch +++ b/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch @@ -1,7 +1,7 @@ -From a6d3df9d84463ec500d9d01558ab8a17e824e9e5 Mon Sep 17 00:00:00 2001 +From 8eca28eddcda4ce8a345ca031f43ff1ed6f37089 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Mon, 2 Mar 2015 02:27:55 +0000 -Subject: [PATCH 01/10] make man install relative to DESTDIR +Subject: [PATCH 1/9] make man install relative to DESTDIR Upstream-Status: Pending @@ -11,10 +11,10 @@ Signed-off-by: Khem Raj 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in -index 8c2cacea1e5..4a52eef2203 100644 +index 74e5dad3049..9e95c224ba4 100644 --- a/sim/common/Make-common.in +++ b/sim/common/Make-common.in -@@ -63,7 +63,7 @@ tooldir = $(libdir)/$(target_alias) +@@ -70,7 +70,7 @@ tooldir = $(libdir)/$(target_alias) datadir = @datadir@ datarootdir = @datarootdir@ mandir = @mandir@ @@ -24,5 +24,5 @@ index 8c2cacea1e5..4a52eef2203 100644 includedir = @includedir@ -- -2.33.1 +2.36.1 diff --git a/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch b/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch index 591c9bfa3f..8d263de896 100644 --- a/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch +++ b/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch @@ -1,7 +1,7 @@ -From 7f1f25eaaace289bc33c5aaa1c5fe9e04e719651 Mon Sep 17 00:00:00 2001 +From 37d3afd2eaa95c89ad7cb5d0079b017752e4d0ea Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 23 Mar 2016 06:30:09 +0000 -Subject: [PATCH 02/10] mips-linux-nat: Define _ABIO32 if not defined +Subject: [PATCH 2/9] mips-linux-nat: Define _ABIO32 if not defined This helps building gdb on mips64 on musl, since musl does not provide sgidefs.h this define is @@ -16,7 +16,7 @@ Signed-off-by: Khem Raj 1 file changed, 4 insertions(+) diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c -index b21c7cb2ea6..6614b4de31e 100644 +index 20e12b6889e..6adc61235aa 100644 --- a/gdb/mips-linux-nat.c +++ b/gdb/mips-linux-nat.c @@ -41,6 +41,10 @@ @@ -31,5 +31,5 @@ index b21c7cb2ea6..6614b4de31e 100644 class mips_linux_nat_target final : public linux_nat_trad_target { -- -2.33.1 +2.36.1 diff --git a/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch b/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch index 09ea533b00..7e09404bb0 100644 --- a/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch +++ b/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch @@ -1,8 +1,7 @@ -From 0cb233ec3951582fa1a051a16bfd644ef4969df5 Mon Sep 17 00:00:00 2001 +From e689eec672ee8c53b3adb2ade2b5deb9b7cd99d4 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 30 Apr 2016 18:32:14 -0700 -Subject: [PATCH 03/10] ppc/ptrace: Define pt_regs uapi_pt_regs on !GLIBC - systems +Subject: [PATCH 3/9] ppc/ptrace: Define pt_regs uapi_pt_regs on !GLIBC systems Upstream-Status: Pending @@ -13,7 +12,7 @@ Signed-off-by: Khem Raj 2 files changed, 12 insertions(+) diff --git a/gdb/nat/ppc-linux.h b/gdb/nat/ppc-linux.h -index e712a9a5713..76bbcca0928 100644 +index 1094f6b0be3..d8588a646c2 100644 --- a/gdb/nat/ppc-linux.h +++ b/gdb/nat/ppc-linux.h @@ -18,7 +18,13 @@ @@ -31,7 +30,7 @@ index e712a9a5713..76bbcca0928 100644 /* This sometimes isn't defined. */ diff --git a/gdbserver/linux-ppc-low.cc b/gdbserver/linux-ppc-low.cc -index db9a88219ea..151e4183bb1 100644 +index 08824887003..69afbae5359 100644 --- a/gdbserver/linux-ppc-low.cc +++ b/gdbserver/linux-ppc-low.cc @@ -23,7 +23,13 @@ @@ -49,5 +48,5 @@ index db9a88219ea..151e4183bb1 100644 #include "arch/ppc-linux-common.h" #include "arch/ppc-linux-tdesc.h" -- -2.33.1 +2.36.1 diff --git a/meta/recipes-devtools/gdb/gdb/0004-Dont-disable-libreadline.a-when-using-disable-static.patch b/meta/recipes-devtools/gdb/gdb/0004-Dont-disable-libreadline.a-when-using-disable-static.patch new file mode 100644 index 0000000000..a1e85e91b3 --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb/0004-Dont-disable-libreadline.a-when-using-disable-static.patch @@ -0,0 +1,50 @@ +From 15ee6a626242efb8f367be49c13e00d0b72317f0 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 30 Apr 2016 15:25:03 -0700 +Subject: [PATCH 4/9] Dont disable libreadline.a when using --disable-static + +If gdb is configured with --disable-static then this is dutifully passed to +readline which then disables libreadline.a, which causes a problem when gdb +tries to link against that. + +To ensure that readline always builds static libraries, pass --enable-static to +the sub-configure. + +Upstream-Status: Pending +Signed-off-by: Ross Burton +Signed-off-by: Khem Raj +--- + Makefile.def | 3 ++- + Makefile.in | 2 +- + 2 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/Makefile.def b/Makefile.def +index acdcd625ed6..78fc31e1199 100644 +--- a/Makefile.def ++++ b/Makefile.def +@@ -120,7 +120,8 @@ host_modules= { module= libiconv; + missing= install-html; + missing= install-info; }; + host_modules= { module= m4; }; +-host_modules= { module= readline; }; ++host_modules= { module= readline; ++ extra_configure_flags='--enable-static';}; + host_modules= { module= sid; }; + host_modules= { module= sim; }; + host_modules= { module= texinfo; no_install= true; }; +diff --git a/Makefile.in b/Makefile.in +index 3aacd2daac9..aa58adada4a 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -32791,7 +32791,7 @@ configure-readline: + $$s/$$module_srcdir/configure \ + --srcdir=$${topdir}/$$module_srcdir \ + $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ +- --target=${target_alias} \ ++ --target=${target_alias} --enable-static \ + || exit 1 + @endif readline + +-- +2.36.1 + diff --git a/meta/recipes-devtools/gdb/gdb/0005-Dont-disable-libreadline.a-when-using-disable-static.patch b/meta/recipes-devtools/gdb/gdb/0005-Dont-disable-libreadline.a-when-using-disable-static.patch deleted file mode 100644 index 02ea30f9bf..0000000000 --- a/meta/recipes-devtools/gdb/gdb/0005-Dont-disable-libreadline.a-when-using-disable-static.patch +++ /dev/null @@ -1,50 +0,0 @@ -From e2efd044c479895767f1b929f5a54fa0c689f318 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sat, 30 Apr 2016 15:25:03 -0700 -Subject: [PATCH 05/10] Dont disable libreadline.a when using --disable-static - -If gdb is configured with --disable-static then this is dutifully passed to -readline which then disables libreadline.a, which causes a problem when gdb -tries to link against that. - -To ensure that readline always builds static libraries, pass --enable-static to -the sub-configure. - -Upstream-Status: Pending -Signed-off-by: Ross Burton -Signed-off-by: Khem Raj ---- - Makefile.def | 3 ++- - Makefile.in | 2 +- - 2 files changed, 3 insertions(+), 2 deletions(-) - -diff --git a/Makefile.def b/Makefile.def -index 5a460f1dbbc..77a702ac6d6 100644 ---- a/Makefile.def -+++ b/Makefile.def -@@ -105,7 +105,8 @@ host_modules= { module= libiconv; - missing= install-html; - missing= install-info; }; - host_modules= { module= m4; }; --host_modules= { module= readline; }; -+host_modules= { module= readline; -+ extra_configure_flags='--enable-static';}; - host_modules= { module= sid; }; - host_modules= { module= sim; }; - host_modules= { module= texinfo; no_install= true; }; -diff --git a/Makefile.in b/Makefile.in -index 9b3a5d75735..98cbe844fca 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -25607,7 +25607,7 @@ configure-readline: - $$s/$$module_srcdir/configure \ - --srcdir=$${topdir}/$$module_srcdir \ - $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ -- --target=${target_alias} \ -+ --target=${target_alias} --enable-static \ - || exit 1 - @endif readline - --- -2.33.1 - diff --git a/meta/recipes-devtools/gdb/gdb/0005-use-asm-sgidefs.h.patch b/meta/recipes-devtools/gdb/gdb/0005-use-asm-sgidefs.h.patch new file mode 100644 index 0000000000..242099b9b1 --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb/0005-use-asm-sgidefs.h.patch @@ -0,0 +1,36 @@ +From 25a75aaf29791f4302f0e4452f7ebaf735d4f083 Mon Sep 17 00:00:00 2001 +From: Andre McCurdy +Date: Sat, 30 Apr 2016 15:29:06 -0700 +Subject: [PATCH 5/9] use + +Build fix for MIPS with musl libc + +The MIPS specific header is provided by glibc and uclibc +but not by musl. Regardless of the libc, the kernel headers provide + which provides the same definitions, so use that +instead. + +Upstream-Status: Pending + +Signed-off-by: Andre McCurdy +Signed-off-by: Khem Raj +--- + gdb/mips-linux-nat.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c +index 6adc61235aa..afb40066744 100644 +--- a/gdb/mips-linux-nat.c ++++ b/gdb/mips-linux-nat.c +@@ -31,7 +31,7 @@ + #include "gdb_proc_service.h" + #include "gregset.h" + +-#include ++#include + #include "nat/gdb_ptrace.h" + #include + #include "inf-ptrace.h" +-- +2.36.1 + diff --git a/meta/recipes-devtools/gdb/gdb/0006-Change-order-of-CFLAGS.patch b/meta/recipes-devtools/gdb/gdb/0006-Change-order-of-CFLAGS.patch new file mode 100644 index 0000000000..58c9b1d0a7 --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb/0006-Change-order-of-CFLAGS.patch @@ -0,0 +1,30 @@ +From c0e7c34134aa1f9644075c596a2338a50d3d923e Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 30 Apr 2016 15:35:39 -0700 +Subject: [PATCH 6/9] Change order of CFLAGS + +Lets us override Werror if need be + +Upstream-Status: Inappropriate + +Signed-off-by: Khem Raj +--- + gdbserver/Makefile.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gdbserver/Makefile.in b/gdbserver/Makefile.in +index 47648b8d962..5599779de57 100644 +--- a/gdbserver/Makefile.in ++++ b/gdbserver/Makefile.in +@@ -156,7 +156,7 @@ WIN32APILIBS = @WIN32APILIBS@ + INTERNAL_CFLAGS_BASE = ${GLOBAL_CFLAGS} \ + ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${CPPFLAGS} $(PTHREAD_CFLAGS) + INTERNAL_WARN_CFLAGS = ${INTERNAL_CFLAGS_BASE} $(WARN_CFLAGS) +-INTERNAL_CFLAGS = ${INTERNAL_WARN_CFLAGS} $(WERROR_CFLAGS) -DGDBSERVER ++INTERNAL_CFLAGS = ${INTERNAL_WARN_CFLAGS} $(WERROR_CFLAGS) ${COMPILER_CFLAGS} -DGDBSERVER + + # LDFLAGS is specifically reserved for setting from the command line + # when running make. +-- +2.36.1 + diff --git a/meta/recipes-devtools/gdb/gdb/0006-use-asm-sgidefs.h.patch b/meta/recipes-devtools/gdb/gdb/0006-use-asm-sgidefs.h.patch deleted file mode 100644 index ef271c45e2..0000000000 --- a/meta/recipes-devtools/gdb/gdb/0006-use-asm-sgidefs.h.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 5077518c11e8d75e9bf65cdf9ca21c59564e1037 Mon Sep 17 00:00:00 2001 -From: Andre McCurdy -Date: Sat, 30 Apr 2016 15:29:06 -0700 -Subject: [PATCH 06/10] use - -Build fix for MIPS with musl libc - -The MIPS specific header is provided by glibc and uclibc -but not by musl. Regardless of the libc, the kernel headers provide - which provides the same definitions, so use that -instead. - -Upstream-Status: Pending - -Signed-off-by: Andre McCurdy -Signed-off-by: Khem Raj ---- - gdb/mips-linux-nat.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c -index 6614b4de31e..237eb6eb975 100644 ---- a/gdb/mips-linux-nat.c -+++ b/gdb/mips-linux-nat.c -@@ -31,7 +31,7 @@ - #include "gdb_proc_service.h" - #include "gregset.h" - --#include -+#include - #include "nat/gdb_ptrace.h" - #include - #include "inf-ptrace.h" --- -2.33.1 - diff --git a/meta/recipes-devtools/gdb/gdb/0007-Change-order-of-CFLAGS.patch b/meta/recipes-devtools/gdb/gdb/0007-Change-order-of-CFLAGS.patch deleted file mode 100644 index 40d12579c0..0000000000 --- a/meta/recipes-devtools/gdb/gdb/0007-Change-order-of-CFLAGS.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 80080e6c8425ac51498f49c2063b960a08f9a27d Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sat, 30 Apr 2016 15:35:39 -0700 -Subject: [PATCH 07/10] Change order of CFLAGS - -Lets us override Werror if need be - -Upstream-Status: Inappropriate - -Signed-off-by: Khem Raj ---- - gdbserver/Makefile.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gdbserver/Makefile.in b/gdbserver/Makefile.in -index 12e9b2777ae..ad44fbc3309 100644 ---- a/gdbserver/Makefile.in -+++ b/gdbserver/Makefile.in -@@ -172,7 +172,7 @@ WIN32APILIBS = @WIN32APILIBS@ - INTERNAL_CFLAGS_BASE = ${GLOBAL_CFLAGS} \ - ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${CPPFLAGS} $(PTHREAD_CFLAGS) - INTERNAL_WARN_CFLAGS = ${INTERNAL_CFLAGS_BASE} $(WARN_CFLAGS) --INTERNAL_CFLAGS = ${INTERNAL_WARN_CFLAGS} $(WERROR_CFLAGS) -DGDBSERVER -+INTERNAL_CFLAGS = ${INTERNAL_WARN_CFLAGS} $(WERROR_CFLAGS) ${COMPILER_CFLAGS} -DGDBSERVER - - # LDFLAGS is specifically reserved for setting from the command line - # when running make. --- -2.33.1 - diff --git a/meta/recipes-devtools/gdb/gdb/0007-resolve-restrict-keyword-conflict.patch b/meta/recipes-devtools/gdb/gdb/0007-resolve-restrict-keyword-conflict.patch new file mode 100644 index 0000000000..bbd1f0b27f --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb/0007-resolve-restrict-keyword-conflict.patch @@ -0,0 +1,48 @@ +From 44fa1ecfbd8a5fe0cfea12a175fa041686842a0c Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 10 May 2016 08:47:05 -0700 +Subject: [PATCH 7/9] resolve restrict keyword conflict + +GCC detects that we call 'restrict' as param name in function +signatures and complains since both params are called 'restrict' +therefore we use __restrict to denote the C99 keywork + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + gnulib/import/sys_time.in.h | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/gnulib/import/sys_time.in.h b/gnulib/import/sys_time.in.h +index 90a67d18426..664641a1fe8 100644 +--- a/gnulib/import/sys_time.in.h ++++ b/gnulib/import/sys_time.in.h +@@ -93,20 +93,20 @@ struct timeval + # define gettimeofday rpl_gettimeofday + # endif + _GL_FUNCDECL_RPL (gettimeofday, int, +- (struct timeval *restrict, void *restrict) ++ (struct timeval *__restrict, void *__restrict) + _GL_ARG_NONNULL ((1))); + _GL_CXXALIAS_RPL (gettimeofday, int, +- (struct timeval *restrict, void *restrict)); ++ (struct timeval *__restrict, void *__restrict)); + # else + # if !@HAVE_GETTIMEOFDAY@ + _GL_FUNCDECL_SYS (gettimeofday, int, +- (struct timeval *restrict, void *restrict) ++ (struct timeval *__restrict, void *__restrict) + _GL_ARG_NONNULL ((1))); + # endif + /* Need to cast, because on glibc systems, by default, the second argument is + struct timezone *. */ + _GL_CXXALIAS_SYS_CAST (gettimeofday, int, +- (struct timeval *restrict, void *restrict)); ++ (struct timeval *__restrict, void *__restrict)); + # endif + _GL_CXXALIASWARN (gettimeofday); + # if defined __cplusplus && defined GNULIB_NAMESPACE +-- +2.36.1 + diff --git a/meta/recipes-devtools/gdb/gdb/0008-Fix-invalid-sigprocmask-call.patch b/meta/recipes-devtools/gdb/gdb/0008-Fix-invalid-sigprocmask-call.patch new file mode 100644 index 0000000000..ed1310ced2 --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb/0008-Fix-invalid-sigprocmask-call.patch @@ -0,0 +1,49 @@ +From 5bdd15553daef7370ca3c1f12d8f14247fdd4907 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Fri, 24 Mar 2017 10:36:03 +0800 +Subject: [PATCH 8/9] Fix invalid sigprocmask call +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The POSIX document says + + The pthread_sigmask() and sigprocmask() functions shall fail if: + + [EINVAL] + The value of the how argument is not equal to one of the defined values. + +and this is how musl-libc is currently doing. Fix the call to be safe +and correct + + [1] http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_sigmask.html + +gdb/ChangeLog: +2017-03-24 Yousong Zhou + + * common/signals-state-save-restore.c (save_original_signals_state): + Fix invalid sigprocmask call. + +Upstream-Status: Pending [not author, cherry-picked from LEDE https://bugs.lede-project.org/index.php?do=details&task_id=637&openedfrom=-1%2Bweek] +Signed-off-by: André Draszik +Signed-off-by: Khem Raj +--- + gdbsupport/signals-state-save-restore.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gdbsupport/signals-state-save-restore.cc b/gdbsupport/signals-state-save-restore.cc +index 92e799d3551..a4a0234272a 100644 +--- a/gdbsupport/signals-state-save-restore.cc ++++ b/gdbsupport/signals-state-save-restore.cc +@@ -38,7 +38,7 @@ save_original_signals_state (bool quiet) + int i; + int res; + +- res = gdb_sigmask (0, NULL, &original_signal_mask); ++ res = gdb_sigmask (SIG_BLOCK, NULL, &original_signal_mask); + if (res == -1) + perror_with_name (("sigprocmask")); + +-- +2.36.1 + diff --git a/meta/recipes-devtools/gdb/gdb/0008-resolve-restrict-keyword-conflict.patch b/meta/recipes-devtools/gdb/gdb/0008-resolve-restrict-keyword-conflict.patch deleted file mode 100644 index 9095f90582..0000000000 --- a/meta/recipes-devtools/gdb/gdb/0008-resolve-restrict-keyword-conflict.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 4ee7e8afb9ff259e889ac938c673fda9ddc5e15a Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 10 May 2016 08:47:05 -0700 -Subject: [PATCH 08/10] resolve restrict keyword conflict - -GCC detects that we call 'restrict' as param name in function -signatures and complains since both params are called 'restrict' -therefore we use __restrict to denote the C99 keywork - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - gnulib/import/sys_time.in.h | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/gnulib/import/sys_time.in.h b/gnulib/import/sys_time.in.h -index 90a67d18426..664641a1fe8 100644 ---- a/gnulib/import/sys_time.in.h -+++ b/gnulib/import/sys_time.in.h -@@ -93,20 +93,20 @@ struct timeval - # define gettimeofday rpl_gettimeofday - # endif - _GL_FUNCDECL_RPL (gettimeofday, int, -- (struct timeval *restrict, void *restrict) -+ (struct timeval *__restrict, void *__restrict) - _GL_ARG_NONNULL ((1))); - _GL_CXXALIAS_RPL (gettimeofday, int, -- (struct timeval *restrict, void *restrict)); -+ (struct timeval *__restrict, void *__restrict)); - # else - # if !@HAVE_GETTIMEOFDAY@ - _GL_FUNCDECL_SYS (gettimeofday, int, -- (struct timeval *restrict, void *restrict) -+ (struct timeval *__restrict, void *__restrict) - _GL_ARG_NONNULL ((1))); - # endif - /* Need to cast, because on glibc systems, by default, the second argument is - struct timezone *. */ - _GL_CXXALIAS_SYS_CAST (gettimeofday, int, -- (struct timeval *restrict, void *restrict)); -+ (struct timeval *__restrict, void *__restrict)); - # endif - _GL_CXXALIASWARN (gettimeofday); - # if defined __cplusplus && defined GNULIB_NAMESPACE --- -2.33.1 - diff --git a/meta/recipes-devtools/gdb/gdb/0009-Fix-invalid-sigprocmask-call.patch b/meta/recipes-devtools/gdb/gdb/0009-Fix-invalid-sigprocmask-call.patch deleted file mode 100644 index 5b9d1cfaf9..0000000000 --- a/meta/recipes-devtools/gdb/gdb/0009-Fix-invalid-sigprocmask-call.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 5740876d92ddb67b039d5fbcd1b71e6c58823c08 Mon Sep 17 00:00:00 2001 -From: Yousong Zhou -Date: Fri, 24 Mar 2017 10:36:03 +0800 -Subject: [PATCH 09/10] Fix invalid sigprocmask call -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The POSIX document says - - The pthread_sigmask() and sigprocmask() functions shall fail if: - - [EINVAL] - The value of the how argument is not equal to one of the defined values. - -and this is how musl-libc is currently doing. Fix the call to be safe -and correct - - [1] http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_sigmask.html - -gdb/ChangeLog: -2017-03-24 Yousong Zhou - - * common/signals-state-save-restore.c (save_original_signals_state): - Fix invalid sigprocmask call. - -Upstream-Status: Pending [not author, cherry-picked from LEDE https://bugs.lede-project.org/index.php?do=details&task_id=637&openedfrom=-1%2Bweek] -Signed-off-by: André Draszik -Signed-off-by: Khem Raj ---- - gdbsupport/signals-state-save-restore.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gdbsupport/signals-state-save-restore.cc b/gdbsupport/signals-state-save-restore.cc -index 95c156e5036..f4aa512d105 100644 ---- a/gdbsupport/signals-state-save-restore.cc -+++ b/gdbsupport/signals-state-save-restore.cc -@@ -38,7 +38,7 @@ save_original_signals_state (bool quiet) - int i; - int res; - -- res = gdb_sigmask (0, NULL, &original_signal_mask); -+ res = gdb_sigmask (SIG_BLOCK, NULL, &original_signal_mask); - if (res == -1) - perror_with_name (("sigprocmask")); - --- -2.33.1 - diff --git a/meta/recipes-devtools/gdb/gdb/0009-gdbserver-ctrl-c-handling.patch b/meta/recipes-devtools/gdb/gdb/0009-gdbserver-ctrl-c-handling.patch new file mode 100644 index 0000000000..f53d3bd1e5 --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb/0009-gdbserver-ctrl-c-handling.patch @@ -0,0 +1,40 @@ +From bc3b1f6aacf2d8fe66b022fbfcf28cd82c76e52f Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Thu, 29 Nov 2018 18:00:23 -0800 +Subject: [PATCH 9/9] gdbserver ctrl-c handling + +This problem was created by the upstream commit 78708b7c8c +After applying the commit, it will send SIGINT to the process +group(-signal_pid). +But if we use gdbserver send SIGINT, and the attached process is not a +process +group leader, then the "kill (-signal_pid, SIGINT)" returns error and +fails to +interrupt the attached process. + +Upstream-Status: Submitted +[https://sourceware.org/bugzilla/show_bug.cgi?id=18945] + +Author: Josh Gao +Signed-off-by: Zhixiong Chi +Signed-off-by: Khem Raj +--- + gdbserver/linux-low.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gdbserver/linux-low.cc b/gdbserver/linux-low.cc +index 7726a4a0c36..f750e074a03 100644 +--- a/gdbserver/linux-low.cc ++++ b/gdbserver/linux-low.cc +@@ -5496,7 +5496,7 @@ linux_process_target::request_interrupt () + { + /* Send a SIGINT to the process group. This acts just like the user + typed a ^C on the controlling terminal. */ +- ::kill (-signal_pid, SIGINT); ++ ::kill (signal_pid, SIGINT); + } + + bool +-- +2.36.1 + diff --git a/meta/recipes-devtools/gdb/gdb/0010-gdbserver-ctrl-c-handling.patch b/meta/recipes-devtools/gdb/gdb/0010-gdbserver-ctrl-c-handling.patch deleted file mode 100644 index cb4744e5dd..0000000000 --- a/meta/recipes-devtools/gdb/gdb/0010-gdbserver-ctrl-c-handling.patch +++ /dev/null @@ -1,40 +0,0 @@ -From d611a68f05c0c86af27bf6beae189a90a946e2e3 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Thu, 29 Nov 2018 18:00:23 -0800 -Subject: [PATCH 10/10] gdbserver ctrl-c handling - -This problem was created by the upstream commit 78708b7c8c -After applying the commit, it will send SIGINT to the process -group(-signal_pid). -But if we use gdbserver send SIGINT, and the attached process is not a -process -group leader, then the "kill (-signal_pid, SIGINT)" returns error and -fails to -interrupt the attached process. - -Upstream-Status: Submitted -[https://sourceware.org/bugzilla/show_bug.cgi?id=18945] - -Author: Josh Gao -Signed-off-by: Zhixiong Chi -Signed-off-by: Khem Raj ---- - gdbserver/linux-low.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gdbserver/linux-low.cc b/gdbserver/linux-low.cc -index 5c6191d941c..7f7acf6700d 100644 ---- a/gdbserver/linux-low.cc -+++ b/gdbserver/linux-low.cc -@@ -5733,7 +5733,7 @@ linux_process_target::request_interrupt () - { - /* Send a SIGINT to the process group. This acts just like the user - typed a ^C on the controlling terminal. */ -- ::kill (-signal_pid, SIGINT); -+ ::kill (signal_pid, SIGINT); - } - - bool --- -2.33.1 - diff --git a/meta/recipes-devtools/gdb/gdb_11.2.bb b/meta/recipes-devtools/gdb/gdb_11.2.bb deleted file mode 100644 index 9c6db4ca2c..0000000000 --- a/meta/recipes-devtools/gdb/gdb_11.2.bb +++ /dev/null @@ -1,39 +0,0 @@ -require gdb-common.inc - -inherit gettext pkgconfig - -#LDFLAGS:append = " -s" -#export CFLAGS:append=" -L${STAGING_LIBDIR}" - -# cross-canadian must not see this -PACKAGES =+ "gdbserver" -FILES:gdbserver = "${bindir}/gdbserver" - -require gdb.inc - -inherit python3-dir - -EXTRA_OEMAKE:append:libc-musl = "\ - gt_cv_func_gnugettext1_libc=yes \ - gt_cv_func_gnugettext2_libc=yes \ - gl_cv_func_working_strerror=yes \ - gl_cv_func_strerror_0_works=yes \ - gl_cv_func_gettimeofday_clobber=no \ - " - -do_configure:prepend() { - if [ "${@bb.utils.filter('PACKAGECONFIG', 'python', d)}" ]; then - cat > ${WORKDIR}/python << EOF -#!/bin/sh -case "\$2" in - --includes) echo "-I${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}/" ;; - --ldflags) echo "-Wl,-rpath-link,${STAGING_LIBDIR}/.. -Wl,-rpath,${libdir}/.. -lpthread -ldl -lutil -lm -lpython${PYTHON_BASEVERSION}${PYTHON_ABI}" ;; - --exec-prefix) echo "${exec_prefix}" ;; - *) exit 1 ;; -esac -exit 0 -EOF - chmod +x ${WORKDIR}/python - fi -} - diff --git a/meta/recipes-devtools/gdb/gdb_12.1.bb b/meta/recipes-devtools/gdb/gdb_12.1.bb new file mode 100644 index 0000000000..9c6db4ca2c --- /dev/null +++ b/meta/recipes-devtools/gdb/gdb_12.1.bb @@ -0,0 +1,39 @@ +require gdb-common.inc + +inherit gettext pkgconfig + +#LDFLAGS:append = " -s" +#export CFLAGS:append=" -L${STAGING_LIBDIR}" + +# cross-canadian must not see this +PACKAGES =+ "gdbserver" +FILES:gdbserver = "${bindir}/gdbserver" + +require gdb.inc + +inherit python3-dir + +EXTRA_OEMAKE:append:libc-musl = "\ + gt_cv_func_gnugettext1_libc=yes \ + gt_cv_func_gnugettext2_libc=yes \ + gl_cv_func_working_strerror=yes \ + gl_cv_func_strerror_0_works=yes \ + gl_cv_func_gettimeofday_clobber=no \ + " + +do_configure:prepend() { + if [ "${@bb.utils.filter('PACKAGECONFIG', 'python', d)}" ]; then + cat > ${WORKDIR}/python << EOF +#!/bin/sh +case "\$2" in + --includes) echo "-I${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}/" ;; + --ldflags) echo "-Wl,-rpath-link,${STAGING_LIBDIR}/.. -Wl,-rpath,${libdir}/.. -lpthread -ldl -lutil -lm -lpython${PYTHON_BASEVERSION}${PYTHON_ABI}" ;; + --exec-prefix) echo "${exec_prefix}" ;; + *) exit 1 ;; +esac +exit 0 +EOF + chmod +x ${WORKDIR}/python + fi +} + -- cgit v1.2.3-54-g00ecf