mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-27 03:51:15 +08:00
gdb/
* config.in: Regenerate. * configure: Regenerate. * configure.ac: Remove check for gnu/libc-version.h. * linux-thread-db.c <HAVE_GNU_LIBC_VERSION_H>: Remove include of gnu/libc-version.h. (enable_thread_event_reporting) <HAVE_GNU_LIBC_VERSION_H>: Remove variables libc_version, libc_major and libc_minor. Replace sscanf by inferior_has_bug. Extend the comment.
This commit is contained in:
parent
fcb4437118
commit
8775fd2d8d
@ -1,3 +1,14 @@
|
||||
2012-07-02 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
* config.in: Regenerate.
|
||||
* configure: Regenerate.
|
||||
* configure.ac: Remove check for gnu/libc-version.h.
|
||||
* linux-thread-db.c <HAVE_GNU_LIBC_VERSION_H>: Remove include of
|
||||
gnu/libc-version.h.
|
||||
(enable_thread_event_reporting) <HAVE_GNU_LIBC_VERSION_H>: Remove
|
||||
variables libc_version, libc_major and libc_minor. Replace sscanf by
|
||||
inferior_has_bug. Extend the comment.
|
||||
|
||||
2012-07-02 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
* linux-thread-db.c (inferior_has_bug): New function.
|
||||
|
@ -168,9 +168,6 @@
|
||||
/* Define to 1 if you have the `getuid' function. */
|
||||
#undef HAVE_GETUID
|
||||
|
||||
/* Define to 1 if you have the <gnu/libc-version.h> header file. */
|
||||
#undef HAVE_GNU_LIBC_VERSION_H
|
||||
|
||||
/* Define if <sys/procfs.h> has gregset_t. */
|
||||
#undef HAVE_GREGSET_T
|
||||
|
||||
|
2
gdb/configure
vendored
2
gdb/configure
vendored
@ -8850,7 +8850,7 @@ fi
|
||||
# FIXME: kettenis/20030102: In most cases we include these (ctype.h, time.h)
|
||||
# unconditionally, so what's the point in checking these?
|
||||
for ac_header in nlist.h machine/reg.h poll.h sys/poll.h proc_service.h \
|
||||
thread_db.h gnu/libc-version.h signal.h stddef.h \
|
||||
thread_db.h signal.h stddef.h \
|
||||
stdlib.h string.h memory.h strings.h sys/fault.h \
|
||||
sys/file.h sys/filio.h sys/ioctl.h sys/param.h \
|
||||
sys/resource.h sys/procfs.h sys/ptrace.h ptrace.h \
|
||||
|
@ -1022,7 +1022,7 @@ AC_HEADER_STDC
|
||||
# FIXME: kettenis/20030102: In most cases we include these (ctype.h, time.h)
|
||||
# unconditionally, so what's the point in checking these?
|
||||
AC_CHECK_HEADERS([nlist.h machine/reg.h poll.h sys/poll.h proc_service.h \
|
||||
thread_db.h gnu/libc-version.h signal.h stddef.h \
|
||||
thread_db.h signal.h stddef.h \
|
||||
stdlib.h string.h memory.h strings.h sys/fault.h \
|
||||
sys/file.h sys/filio.h sys/ioctl.h sys/param.h \
|
||||
sys/resource.h sys/procfs.h sys/ptrace.h ptrace.h \
|
||||
|
@ -46,10 +46,6 @@
|
||||
#include <signal.h>
|
||||
#include <ctype.h>
|
||||
|
||||
#ifdef HAVE_GNU_LIBC_VERSION_H
|
||||
#include <gnu/libc-version.h>
|
||||
#endif
|
||||
|
||||
/* GNU/Linux libthread_db support.
|
||||
|
||||
libthread_db is a library, provided along with libpthread.so, which
|
||||
@ -612,10 +608,6 @@ enable_thread_event_reporting (void)
|
||||
{
|
||||
td_thr_events_t events;
|
||||
td_err_e err;
|
||||
#ifdef HAVE_GNU_LIBC_VERSION_H
|
||||
const char *libc_version;
|
||||
int libc_major, libc_minor;
|
||||
#endif
|
||||
struct thread_db_info *info;
|
||||
|
||||
info = get_thread_db_info (GET_PID (inferior_ptid));
|
||||
@ -632,14 +624,13 @@ enable_thread_event_reporting (void)
|
||||
td_event_emptyset (&events);
|
||||
td_event_addset (&events, TD_CREATE);
|
||||
|
||||
#ifdef HAVE_GNU_LIBC_VERSION_H
|
||||
/* The event reporting facility is broken for TD_DEATH events in
|
||||
glibc 2.1.3, so don't enable it if we have glibc but a lower
|
||||
version. */
|
||||
libc_version = gnu_get_libc_version ();
|
||||
if (sscanf (libc_version, "%d.%d", &libc_major, &libc_minor) == 2
|
||||
&& (libc_major > 2 || (libc_major == 2 && libc_minor > 1)))
|
||||
#endif
|
||||
/* There is a bug fixed between linuxthreads 2.1.3 and 2.2 by
|
||||
commit 2e4581e4fba917f1779cd0a010a45698586c190a
|
||||
* manager.c (pthread_exited): Correctly report event as TD_REAP
|
||||
instead of TD_DEATH. Fix comments.
|
||||
where event reporting facility is broken for TD_DEATH events,
|
||||
so don't enable it if we have glibc but a lower version. */
|
||||
if (!inferior_has_bug ("__linuxthreads_version", 2, 2))
|
||||
td_event_addset (&events, TD_DEATH);
|
||||
|
||||
err = info->td_ta_set_event_p (info->thread_agent, &events);
|
||||
|
Loading…
Reference in New Issue
Block a user