diff options
| -rw-r--r-- | toolchain/gdb/Config.in | 4 | ||||
| -rw-r--r-- | toolchain/gdb/gdb.mk | 22 | ||||
| -rw-r--r-- | toolchain/gdb/snapshot/400-mips32r2-rdhwr-disassemble-hack.patch | 12 | 
3 files changed, 35 insertions, 3 deletions
| diff --git a/toolchain/gdb/Config.in b/toolchain/gdb/Config.in index 1e44dbde7..3ca91e97a 100644 --- a/toolchain/gdb/Config.in +++ b/toolchain/gdb/Config.in @@ -33,11 +33,15 @@ choice  	config BR2_GDB_VERSION_6_3  		bool "gdb 6.3" +	config BR2_GDB_VERSION_SNAPSHOT +		bool "gdb snapshot" +  endchoice  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 "snapshot" if BR2_GDB_VERSION_SNAPSHOT diff --git a/toolchain/gdb/gdb.mk b/toolchain/gdb/gdb.mk index 86264b583..6ae6fab36 100644 --- a/toolchain/gdb/gdb.mk +++ b/toolchain/gdb/gdb.mk @@ -6,17 +6,33 @@  GDB_VERSION:=$(strip $(subst ",, $(BR2_GDB_VERSION)))  #" +ifeq ($(GDB_VERSION),snapshot) +# Be aware that this changes daily.... +GDB_SITE:=ftp://sources.redhat.com/pub/gdb/snapshots/current +GDB_SOURCE:=gdb.tar.bz2 +GDB_CAT:=bzcat +GDB_DIR:=$(TOOL_BUILD_DIR)/gdb-$(GDB_VERSION) +else  GDB_SITE:=http://ftp.gnu.org/gnu/gdb  GDB_SOURCE:=gdb-$(GDB_VERSION).tar.bz2  GDB_CAT:=bzcat  GDB_DIR:=$(TOOL_BUILD_DIR)/gdb-$(GDB_VERSION) +# NOTE: This option should not be used with newer gdb versions. +DISABLE_GDBMI:=--disable-gdbmi +endif +  $(DL_DIR)/$(GDB_SOURCE):  	$(WGET) -P $(DL_DIR) $(GDB_SITE)/$(GDB_SOURCE)  $(GDB_DIR)/.unpacked: $(DL_DIR)/$(GDB_SOURCE)  	$(GDB_CAT) $(DL_DIR)/$(GDB_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - +ifeq ($(GDB_VERSION),snapshot) +	GDB_REAL_DIR=$(shell \ +		tar jtf $(DL_DIR)/$(GDB_SOURCE) | head -1 | cut -d"/" -f1) +	ln -sf $(TOOL_BUILD_DIR)/$(shell tar jtf $(DL_DIR)/$(GDB_SOURCE) | head -1 | cut -d"/" -f1) $(GDB_DIR) +endif  	toolchain/patch-kernel.sh $(GDB_DIR) toolchain/gdb/$(GDB_VERSION) \*.patch  	# Copy a config.sub from gcc.  This is only necessary until  	# gdb's config.sub supports <arch>-linux-uclibc tuples. @@ -54,7 +70,7 @@ $(GDB_TARGET_DIR)/.configured: $(GDB_DIR)/.unpacked  		--target=$(REAL_GNU_TARGET_NAME) \  		--prefix=/usr \  		$(DISABLE_NLS) \ -		--without-uiout --disable-gdbmi \ +		--without-uiout $(DISABLE_GDBMI) \  		--disable-tui --disable-gdbtk --without-x \  		--disable-sim --enable-gdbserver \  		--without-included-gettext \ @@ -111,7 +127,7 @@ $(GDB_SERVER_DIR)/.configured: $(GDB_DIR)/.unpacked  		--infodir=/usr/info \  		--includedir=$(STAGING_DIR)/include \  		$(DISABLE_NLS) \ -		--without-uiout --disable-gdbmi \ +		--without-uiout $(DISABLE_GDBMI) \  		--disable-tui --disable-gdbtk --without-x \  		--without-included-gettext \  	); @@ -155,7 +171,7 @@ $(GDB_CLIENT_DIR)/.configured: $(GDB_DIR)/.unpacked  		--host=$(GNU_HOST_NAME) \  		--target=$(REAL_GNU_TARGET_NAME) \  		$(DISABLE_NLS) \ -		--without-uiout --disable-gdbmi \ +		--without-uiout $(DISABLE_GDBMI) \  		--disable-tui --disable-gdbtk --without-x \  		--without-included-gettext \  		--enable-threads \ diff --git a/toolchain/gdb/snapshot/400-mips32r2-rdhwr-disassemble-hack.patch b/toolchain/gdb/snapshot/400-mips32r2-rdhwr-disassemble-hack.patch new file mode 100644 index 000000000..1d6be1b65 --- /dev/null +++ b/toolchain/gdb/snapshot/400-mips32r2-rdhwr-disassemble-hack.patch @@ -0,0 +1,12 @@ +diff -ur gdb-6.3.50.20050827/opcodes/mips-opc.c gdb-6.3.50.20050827-patched/opcodes/mips-opc.c +--- gdb-6.3.50.20050827/opcodes/mips-opc.c	2005-08-25 13:12:43.000000000 -0500 ++++ gdb-6.3.50.20050827-patched/opcodes/mips-opc.c	2005-08-29 17:48:10.000000000 -0500 +@@ -954,7 +954,7 @@ + {"remu",    "z,s,t",    0x0000001b, 0xfc00ffff, RD_s|RD_t|WR_HILO,      0,		I1	}, + {"remu",    "d,v,t",	0,    (int) M_REMU_3,	INSN_MACRO,		0,		I1	}, + {"remu",    "d,v,I",	0,    (int) M_REMU_3I,	INSN_MACRO,		0,		I1	}, +-{"rdhwr",   "t,K",	0x7c00003b, 0xffe007ff, WR_t,			0,		I33	}, ++{"rdhwr",   "t,K",	0x7c00003b, 0xffe007ff, WR_t,			0,		I33|I1	}, + {"rdpgpr",  "d,w",	0x41400000, 0xffe007ff, WR_d,			0,		I33	}, + {"rfe",     "",		0x42000010, 0xffffffff,	0,			0,		I1|T3	}, + {"rnas.qh", "X,Q",	0x78200025, 0xfc20f83f,	WR_D|RD_T|FP_D,		RD_MACC,	MX	}, | 
