void-packages/srcpkgs/gdb/patches/gdb-76-linux-low-threaddb.p...

33 lines
986 B
Diff

this patch fixes compilation of gdbserver on systems that don't have
thread_db.h. in that case we fall back to gdb's own copy
"gdb_thread_db.h", so the typedef of the td_thrhandle_t member is
available, which is accessed in other parts of the code without
checking whether thread_db.h is available.
this is by far the cleaner solution, removing the accesses to the
th member in other parts of the source would either litter it with
ifdefs or cripple the functionality.
--- gdb-7.6.2.org/gdb/gdbserver/linux-low.h
+++ gdb-7.6.2/gdb/gdbserver/linux-low.h
@@ -18,6 +18,8 @@
#ifdef HAVE_THREAD_DB_H
#include <thread_db.h>
+#else
+#include "gdb_thread_db.h"
#endif
#include <signal.h>
@@ -270,11 +272,9 @@
int need_step_over;
int thread_known;
-#ifdef HAVE_THREAD_DB_H
/* The thread handle, used for e.g. TLS access. Only valid if
THREAD_KNOWN is set. */
td_thrhandle_t th;
-#endif
/* Arch-specific additions. */
struct arch_lwp_info *arch_private;