diff options
Diffstat (limited to 'toolchain/gdb')
| -rw-r--r-- | toolchain/gdb/6.5/100-uclibc-conf.patch | 78 | ||||
| -rw-r--r-- | toolchain/gdb/6.5/200-uclibc-readline-conf.patch | 15 | ||||
| -rw-r--r-- | toolchain/gdb/6.5/400-mips-coredump.patch-2.4.23-29 | 28 | ||||
| -rw-r--r-- | toolchain/gdb/6.5/500-thread-timeout.patch | 34 | ||||
| -rw-r--r-- | toolchain/gdb/Config.in | 4 | 
5 files changed, 159 insertions, 0 deletions
| diff --git a/toolchain/gdb/6.5/100-uclibc-conf.patch b/toolchain/gdb/6.5/100-uclibc-conf.patch new file mode 100644 index 000000000..9d8fd4e69 --- /dev/null +++ b/toolchain/gdb/6.5/100-uclibc-conf.patch @@ -0,0 +1,78 @@ +--- gdb-6.3/bfd/configure.orig	Fri Oct  8 16:53:56 2004 ++++ gdb-6.3/bfd/configure	Sun Feb 27 18:32:58 2005 +@@ -3583,6 +3583,11 @@ +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + netbsd* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +--- gdb-6.3/libtool.m4.orig	Wed Jul 21 21:21:41 2004 ++++ gdb-6.3/libtool.m4	Mon Feb 28 00:08:11 2005 +@@ -653,6 +653,11 @@ +   fi +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + newsos6) +   [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] +   lt_cv_file_magic_cmd=/usr/bin/file +--- gdb-6.3/ltconfig.orig	Tue Oct  5 15:34:42 2004 ++++ gdb-6.3/ltconfig	Sun Feb 27 18:14:41 2005 +@@ -602,7 +602,7 @@ +  + # Transform linux* to *-*-linux-gnu*, to support old configure scripts. + case $host_os in +-linux-gnu*) ;; ++linux-gnu*|linux-uclibc*) ;; + linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` + esac +  +@@ -1270,6 +1270,24 @@ +   dynamic_linker='GNU/Linux ld.so' +   ;; +  ++linux-uclibc*) ++  version_type=linux ++  need_lib_prefix=no ++  need_version=no ++  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' ++  soname_spec='${libname}${release}.so$major' ++  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' ++  shlibpath_var=LD_LIBRARY_PATH ++  shlibpath_overrides_runpath=no ++  # This implies no fast_install, which is unacceptable. ++  # Some rework will be needed to allow for fast_install ++  # before this can be enabled. ++  # Note: copied from linux-gnu, and may not be appropriate. ++  hardcode_into_libs=yes ++  # Assume using the uClibc dynamic linker. ++  dynamic_linker="uClibc ld.so" ++  ;; ++ + netbsd*) +   need_lib_prefix=no +   need_version=no +--- gdb-6.3/opcodes/configure.orig	Fri Sep 17 08:13:38 2004 ++++ gdb-6.3/opcodes/configure	Mon Feb 28 00:09:42 2005 +@@ -3595,6 +3595,11 @@ +   fi +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + newsos6) +   lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' +   lt_cv_file_magic_cmd=/usr/bin/file diff --git a/toolchain/gdb/6.5/200-uclibc-readline-conf.patch b/toolchain/gdb/6.5/200-uclibc-readline-conf.patch new file mode 100644 index 000000000..ffe792dd0 --- /dev/null +++ b/toolchain/gdb/6.5/200-uclibc-readline-conf.patch @@ -0,0 +1,15 @@ +--- gdb-6.1.1-dist/readline/configure	2003-05-27 18:29:47.000000000 -0500 ++++ gdb-6.1.1/readline/configure	2004-08-09 14:20:23.000000000 -0500 +@@ -6249,7 +6249,12 @@ +  +  + echo "$as_me:$LINENO: checking for mbstate_t" >&5 ++echo $ECHO_N "bash_cv_have_mbstate_t=$bash_cv_have_mbstate_t" >&6 + echo $ECHO_N "checking for mbstate_t... $ECHO_C" >&6 ++if test "${bash_cv_have_mbstate_t+set}" != set; then ++  bash_cv_have_mbstate_t=yes ++  echo $ECHO_N "WARNING!! forcing to yes!!! $ECHO_C" >&6 ++fi + if test "${bash_cv_have_mbstate_t+set}" = set; then +   echo $ECHO_N "(cached) $ECHO_C" >&6 + else diff --git a/toolchain/gdb/6.5/400-mips-coredump.patch-2.4.23-29 b/toolchain/gdb/6.5/400-mips-coredump.patch-2.4.23-29 new file mode 100644 index 000000000..4e17ba7be --- /dev/null +++ b/toolchain/gdb/6.5/400-mips-coredump.patch-2.4.23-29 @@ -0,0 +1,28 @@ +Sometime around 2.4.22-23, the mips pt_regs.h fields were reordered, breaking +coredump handling by gdb for current kernels.  Update the hardcoded constants +to reflect the change. +--- gdb-6.2.1/gdb/mips-linux-tdep.c-orig	2004-10-29 14:23:55.000000000 -0500 ++++ gdb-6.2.1/gdb/mips-linux-tdep.c	2004-10-29 14:26:44.000000000 -0500 +@@ -53,12 +53,22 @@ +  + #define EF_REG0			6 + #define EF_REG31		37 ++ ++#if 0 + #define EF_LO			38 + #define EF_HI			39 + #define EF_CP0_EPC		40 + #define EF_CP0_BADVADDR		41 + #define EF_CP0_STATUS		42 + #define EF_CP0_CAUSE		43 ++#else ++#define EF_CP0_STATUS		38 ++#define EF_LO			39 ++#define EF_HI			40 ++#define EF_CP0_BADVADDR		41 ++#define EF_CP0_CAUSE		42 ++#define EF_CP0_EPC		43 ++#endif +  + #define EF_SIZE			180 +  diff --git a/toolchain/gdb/6.5/500-thread-timeout.patch b/toolchain/gdb/6.5/500-thread-timeout.patch new file mode 100644 index 000000000..6db0a7a47 --- /dev/null +++ b/toolchain/gdb/6.5/500-thread-timeout.patch @@ -0,0 +1,34 @@ +--- gdb-6.3.org/gdb/gdbserver/thread-db.c	2004-10-17 02:42:00.000000000 +0900 ++++ gdb-6.3/gdb/gdbserver/thread-db.c	2005-01-27 12:19:29.000000000 +0900 +@@ -21,6 +21,7 @@ +    Foundation, Inc., 59 Temple Place - Suite 330, +    Boston, MA 02111-1307, USA.  */ +  ++#include <unistd.h> + #include "server.h" +  + #include "linux-low.h" +@@ -142,6 +143,7 @@ +   td_event_msg_t msg; +   td_err_e err; +   struct inferior_linux_data *tdata; ++  int timeout; +  +   if (debug_threads) +     fprintf (stderr, "Thread creation event.\n"); +@@ -152,7 +154,13 @@ +      In the LinuxThreads implementation, this is safe, +      because all events come from the manager thread +      (except for its own creation, of course).  */ +-  err = td_ta_event_getmsg (thread_agent, &msg); ++  for (timeout = 0; timeout < 50000; timeout++) ++    { ++      err = td_ta_event_getmsg (thread_agent, &msg); ++      if (err != TD_NOMSG) ++	break; ++      usleep(1000); ++    } +   if (err != TD_OK) +     fprintf (stderr, "thread getmsg err: %s\n", + 	     thread_db_err_str (err)); + diff --git a/toolchain/gdb/Config.in b/toolchain/gdb/Config.in index 9c1caf4c1..2c61a9b64 100644 --- a/toolchain/gdb/Config.in +++ b/toolchain/gdb/Config.in @@ -36,6 +36,9 @@ choice  	config BR2_GDB_VERSION_6_4  		bool "gdb 6.4" +	config BR2_GDB_VERSION_6_5 +		bool "gdb 6.5" +  	config BR2_GDB_VERSION_SNAPSHOT  		bool "gdb snapshot" @@ -46,4 +49,5 @@ config BR2_GDB_VERSION  	default "6.2.1"    if BR2_GDB_VERSION_6_2_1  	default "6.3"      if BR2_GDB_VERSION_6_3  	default "6.4"      if BR2_GDB_VERSION_6_4 +	default "6.5"      if BR2_GDB_VERSION_6_5  	default "snapshot" if BR2_GDB_VERSION_SNAPSHOT | 
