From 07594d1e8b6fef0dc4dca1eea6f17ef8b23c8704 Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Wed, 25 Sep 2019 01:32:57 -0700 Subject: Add GDB 8.3.1 Signed-off-by: Alexey Neyman diff --git a/packages/gdb/8.3.1/0000-musl_fix.patch b/packages/gdb/8.3.1/0000-musl_fix.patch new file mode 100644 index 0000000..e5750ea --- /dev/null +++ b/packages/gdb/8.3.1/0000-musl_fix.patch @@ -0,0 +1,33 @@ +--- + gdb/linux-nat.c | 5 +++++ + gdb/stopcode.h | 4 ++++ + 2 files changed, 9 insertions(+) + +--- a/gdb/linux-nat.c ++++ b/gdb/linux-nat.c +@@ -17,6 +17,7 @@ + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + ++#include "stopcode.h" + #include "defs.h" + #include "inferior.h" + #include "infrun.h" +@@ -72,6 +73,10 @@ + #define SPUFS_MAGIC 0x23c9b64e + #endif + ++#ifndef __SIGRTMIN ++#define __SIGRTMIN SIGRTMIN ++#endif ++ + /* This comment documents high-level logic of this file. + + Waiting for events in sync mode +--- /dev/null ++++ b/gdb/stopcode.h +@@ -0,0 +1,4 @@ ++#ifndef W_STOPCODE ++#define W_STOPCODE(sig) ((sig) << 8 | 0x7f) ++#endif ++ diff --git a/packages/gdb/8.3.1/0001-uclibc-no-gettimeofday-clobber.patch b/packages/gdb/8.3.1/0001-uclibc-no-gettimeofday-clobber.patch new file mode 100644 index 0000000..9aade1e --- /dev/null +++ b/packages/gdb/8.3.1/0001-uclibc-no-gettimeofday-clobber.patch @@ -0,0 +1,33 @@ +Improve gnulib in gdb's guess work, gettimeofday() works in uClibcm promise. + +This patch helps building x86_64-unknown-linux-uclibc toolchains, the final +gdb-native step otherwise fails when linking the libinproctrace.so + +Signed-off-by: Joachim Nilsson +Signed-off-by: Alexey Neyman + +--- + gdb/gnulib/configure | 1 + + gdb/gnulib/import/m4/gettimeofday.m4 | 1 + + 2 files changed, 2 insertions(+) + +--- a/gdb/gnulib/configure ++++ b/gdb/gnulib/configure +@@ -18579,6 +18579,7 @@ + case "$host_os" in + # Guess all is fine on glibc systems. + *-gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;; ++ *-uclibc*) gl_cv_func_gettimeofday_clobber="guessing no" ;; + # If we don't know, assume the worst. + *) gl_cv_func_gettimeofday_clobber="guessing yes" ;; + esac +--- a/gdb/gnulib/import/m4/gettimeofday.m4 ++++ b/gdb/gnulib/import/m4/gettimeofday.m4 +@@ -111,6 +111,7 @@ + case "$host_os" in + # Guess all is fine on glibc systems. + *-gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;; ++ *-uclibc*) gl_cv_func_gettimeofday_clobber="guessing no" ;; + # If we don't know, assume the worst. + *) gl_cv_func_gettimeofday_clobber="guessing yes" ;; + esac diff --git a/packages/gdb/8.3.1/0002-xtensa-make-sure-ar_base-is-initialized.patch b/packages/gdb/8.3.1/0002-xtensa-make-sure-ar_base-is-initialized.patch new file mode 100644 index 0000000..c0f364c --- /dev/null +++ b/packages/gdb/8.3.1/0002-xtensa-make-sure-ar_base-is-initialized.patch @@ -0,0 +1,30 @@ +From 208ea73d38c9c16cf983b6419f58050dbadcb6a9 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Sun, 7 Jun 2015 22:43:49 +0300 +Subject: [PATCH 2/2] xtensa: make sure ar_base is initialized + +ar_base is uninitialized for cores w/o windowed registers as their +regmap doesn't have register 0x0100. +Check that ar_base is initialized and if not initialize it with a0_base. + +gdb/ + * xtensa-tdep.c (xtensa_derive_tdep): Make sure ar_base is + initialized. + +Signed-off-by: Max Filippov +--- + gdb/xtensa-tdep.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/gdb/xtensa-tdep.c ++++ b/gdb/xtensa-tdep.c +@@ -3137,6 +3137,9 @@ + if (tdep->num_regs == 0) + tdep->num_regs = tdep->num_nopriv_regs; + ++ if (tdep->ar_base == -1) ++ tdep->ar_base = tdep->a0_base; ++ + /* Number of pseudo registers. */ + tdep->num_pseudo_regs = n - tdep->num_regs; + diff --git a/packages/gdb/8.3.1/0003-WIP-end-of-prologue-detection-hack.patch b/packages/gdb/8.3.1/0003-WIP-end-of-prologue-detection-hack.patch new file mode 100644 index 0000000..66870ea --- /dev/null +++ b/packages/gdb/8.3.1/0003-WIP-end-of-prologue-detection-hack.patch @@ -0,0 +1,26 @@ +From 7f8eacbb468575fb67db7fd1155a3aedaa91911b Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Sun, 7 Jun 2015 23:15:39 +0300 +Subject: [PATCH] WIP: *end of prologue* detection hack + +see + http://www.esp8266.com/viewtopic.php?p=18461#p18461 + http://www.esp8266.com/viewtopic.php?p=19026#p19026 + http://www.esp8266.com/viewtopic.php?p=19683#p19683 + +Signed-off-by: Max Filippov +--- + gdb/xtensa-tdep.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/gdb/xtensa-tdep.c ++++ b/gdb/xtensa-tdep.c +@@ -2385,7 +2385,7 @@ + /* Find out, if we have an information about the prologue from DWARF. */ + prologue_sal = find_pc_line (start, 0); + if (prologue_sal.line != 0) /* Found debug info. */ +- body_pc = prologue_sal.end; ++ body_pc = prologue_sal.end + 40; + + /* If we are going to analyze the prologue in general without knowing about + the current PC, make the best assumtion for the end of the prologue. */ diff --git a/packages/gdb/8.3.1/0004-allow-android.patch b/packages/gdb/8.3.1/0004-allow-android.patch new file mode 100644 index 0000000..897ec26 --- /dev/null +++ b/packages/gdb/8.3.1/0004-allow-android.patch @@ -0,0 +1,45 @@ +--- + gdb/gdbserver/configure | 11 ----------- + gdb/gdbserver/configure.ac | 11 ----------- + 2 files changed, 22 deletions(-) + +--- a/gdb/gdbserver/configure ++++ b/gdb/gdbserver/configure +@@ -7699,17 +7699,6 @@ + + + case "${target}" in +- *-android*) +- # Starting with NDK version 9, actually includes definitions +- # of Elf32_auxv_t and Elf64_auxv_t. But sadly, includes +- # which defines some of the ELF types incorrectly, +- # leading to conflicts with the defintions from . +- # This makes it impossible for us to include both and +- # , which means that, in practice, we do not have +- # access to Elf32_auxv_t and Elf64_auxv_t on this platform. +- # Therefore, do not try to auto-detect availability, as it would +- # get it wrong on this platform. +- ;; + *) + ac_fn_c_check_type "$LINENO" "Elf32_auxv_t" "ac_cv_type_Elf32_auxv_t" "#include + +--- a/gdb/gdbserver/configure.ac ++++ b/gdb/gdbserver/configure.ac +@@ -185,17 +185,6 @@ + ]) + + case "${target}" in +- *-android*) +- # Starting with NDK version 9, actually includes definitions +- # of Elf32_auxv_t and Elf64_auxv_t. But sadly, includes +- # which defines some of the ELF types incorrectly, +- # leading to conflicts with the defintions from . +- # This makes it impossible for us to include both and +- # , which means that, in practice, we do not have +- # access to Elf32_auxv_t and Elf64_auxv_t on this platform. +- # Therefore, do not try to auto-detect availability, as it would +- # get it wrong on this platform. +- ;; + *) + AC_CHECK_TYPES([Elf32_auxv_t, Elf64_auxv_t], [], [], + #include diff --git a/packages/gdb/8.3.1/chksum b/packages/gdb/8.3.1/chksum new file mode 100644 index 0000000..4687d23 --- /dev/null +++ b/packages/gdb/8.3.1/chksum @@ -0,0 +1,8 @@ +md5 gdb-8.3.1.tar.xz 73b6a5d8141672c62bf851cd34c4aa83 +sha1 gdb-8.3.1.tar.xz d403ba208945bbf04f8130ea4853730cdf0c8fc7 +sha256 gdb-8.3.1.tar.xz 1e55b4d7cdca7b34be12f4ceae651623aa73b2fd640152313f9f66a7149757c4 +sha512 gdb-8.3.1.tar.xz 9053a2dc6b9eb921907afbc4cecc75d635aa76df5e8c4f0e5824ccf57cb206b299c19b127fff000b65c334826ff8304a54ff6098428365a8e997cca886c39e9a +md5 gdb-8.3.1.tar.gz 3c61672225a6a80875a5eea8cd25e2a0 +sha1 gdb-8.3.1.tar.gz 8e68fc5d524caeb6684a8b6ed24e75396e40c471 +sha256 gdb-8.3.1.tar.gz 26ce655216cd03f4611518a7a1c31d80ec8e884c16715e9ba8b436822e51434b +sha512 gdb-8.3.1.tar.gz e81949fa011046b07ee6886a378bcbd420e4571367005035007dc70f0d28d975d08fb7d9062b49f0a3e6d2ca8149ea60f9ab485ea98a04198d1ca49d38dbd2fe diff --git a/packages/gdb/8.3.1/version.desc b/packages/gdb/8.3.1/version.desc new file mode 100644 index 0000000..e69de29 -- cgit v0.10.2-6-g49f6