From 8ca4fd7ad1d28b31111b8bc9b9a2da88a996e0c9 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Mon, 19 Nov 2012 14:38:02 +0000 Subject: [PATCH] gdb: fix debugging of MIPS(el) applications GDB previously failed with the following: root@OpenWrt:/# gdb busybox [snip] (gdb) r Starting program: /bin/busybox GDB bug: target.c (gdb_signal_from_host): unrecognized real-time signal Signed-off-by: Florian Fainelli SVN-Revision: 34258 --- .../001-gdb-pr14523-mips-signal-number.patch | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 package/devel/gdb/patches/001-gdb-pr14523-mips-signal-number.patch diff --git a/package/devel/gdb/patches/001-gdb-pr14523-mips-signal-number.patch b/package/devel/gdb/patches/001-gdb-pr14523-mips-signal-number.patch new file mode 100644 index 0000000000..c462399bb5 --- /dev/null +++ b/package/devel/gdb/patches/001-gdb-pr14523-mips-signal-number.patch @@ -0,0 +1,16 @@ +See http://sourceware.org/bugzilla/show_bug.cgi?id=14523 +--- +--- gdb-7.5.org/gdb/common/signals.c 2012-05-24 18:51:37.000000000 +0200 ++++ gdb-7.5.org/gdb/common/signals.c 2012-08-29 22:32:07.000000000 +0200 +@@ -346,6 +346,11 @@ + else if (64 <= hostsig && hostsig <= 127) + return (enum gdb_signal) + (hostsig - 64 + (int) GDB_SIGNAL_REALTIME_64); ++ else if (hostsig == 128) ++ /* Some platforms, such as Linux MIPS, have NSIG == 128, in which case ++ signal 128 is the highest realtime signal. There is no constant for ++ that though. */ ++ return GDB_SIGNAL_UNKNOWN; + else + error (_("GDB bug: target.c (gdb_signal_from_host): " + "unrecognized real-time signal"));