Commit 67cc4f3e authored by "Steven J. Hill"'s avatar "Steven J. Hill"
Browse files

Add in support for downloading and building the latest snapshot of GDB. If you...

Add in support for downloading and building the latest snapshot of GDB. If you want to debug NPTL binaries, you'll need the latest and greatest. Patches for 6.3 will be forward ported where applicable later this week.
parent 6b632ad6
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -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

+19 −3
Original line number Diff line number Diff line
@@ -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 \
+12 −0
Original line number Diff line number Diff line
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	},