diff options
| author | Mike Frysinger <vapier@gentoo.org> | 2005-12-02 22:31:12 +0000 | 
|---|---|---|
| committer | Mike Frysinger <vapier@gentoo.org> | 2005-12-02 22:31:12 +0000 | 
| commit | 2ed0efef422a52d8c4f0e6be1b06ee674819e757 (patch) | |
| tree | 3949569786a6f9ab41016da7b9bf2d30994bec19 | |
| parent | d3a7ce970ee1fc56bf7bca986cc112cad444d96c (diff) | |
| download | buildroot-novena-2ed0efef422a52d8c4f0e6be1b06ee674819e757.tar.gz buildroot-novena-2ed0efef422a52d8c4f0e6be1b06ee674819e757.zip | |
import gdb-6.4
| -rw-r--r-- | toolchain/gdb/6.4/100-uclibc-conf.patch | 78 | ||||
| -rw-r--r-- | toolchain/gdb/6.4/200-uclibc-readline-conf.patch | 15 | ||||
| -rw-r--r-- | toolchain/gdb/6.4/400-mips-coredump.patch-2.4.23-29 | 28 | ||||
| -rw-r--r-- | toolchain/gdb/6.4/500-thread-timeout.patch | 34 | ||||
| -rw-r--r-- | toolchain/gdb/Config.in | 6 | ||||
| -rw-r--r-- | toolchain/gdb/gdb.mk | 4 | 
6 files changed, 163 insertions, 2 deletions
| diff --git a/toolchain/gdb/6.4/100-uclibc-conf.patch b/toolchain/gdb/6.4/100-uclibc-conf.patch new file mode 100644 index 000000000..9d8fd4e69 --- /dev/null +++ b/toolchain/gdb/6.4/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.4/200-uclibc-readline-conf.patch b/toolchain/gdb/6.4/200-uclibc-readline-conf.patch new file mode 100644 index 000000000..ffe792dd0 --- /dev/null +++ b/toolchain/gdb/6.4/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.4/400-mips-coredump.patch-2.4.23-29 b/toolchain/gdb/6.4/400-mips-coredump.patch-2.4.23-29 new file mode 100644 index 000000000..4e17ba7be --- /dev/null +++ b/toolchain/gdb/6.4/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.4/500-thread-timeout.patch b/toolchain/gdb/6.4/500-thread-timeout.patch new file mode 100644 index 000000000..6db0a7a47 --- /dev/null +++ b/toolchain/gdb/6.4/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 3ca91e97a..737eb07f6 100644 --- a/toolchain/gdb/Config.in +++ b/toolchain/gdb/Config.in @@ -33,6 +33,9 @@ choice  	config BR2_GDB_VERSION_6_3  		bool "gdb 6.3" +	config BR2_GDB_VERSION_6_4 +		bool "gdb 6.4" +  	config BR2_GDB_VERSION_SNAPSHOT  		bool "gdb snapshot" @@ -42,6 +45,5 @@ config BR2_GDB_VERSION  	string  	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 "snapshot" if BR2_GDB_VERSION_SNAPSHOT - - diff --git a/toolchain/gdb/gdb.mk b/toolchain/gdb/gdb.mk index 6ae6fab36..af67b7434 100644 --- a/toolchain/gdb/gdb.mk +++ b/toolchain/gdb/gdb.mk @@ -26,6 +26,7 @@ endif  $(DL_DIR)/$(GDB_SOURCE):  	$(WGET) -P $(DL_DIR) $(GDB_SITE)/$(GDB_SOURCE) +gdb-unpacked: $(GDB_DIR)/.unpacked  $(GDB_DIR)/.unpacked: $(DL_DIR)/$(GDB_SOURCE)  	$(GDB_CAT) $(DL_DIR)/$(GDB_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -  ifeq ($(GDB_VERSION),snapshot) @@ -39,6 +40,9 @@ endif  	# Should probably integrate this into the patch.  	touch  $(GDB_DIR)/.unpacked +gdb-dirclean: +	rm -rf $(GDB_DIR) +  ######################################################################  #  # gdb target | 
