From 98a5dd1327030f71f3bd23c7c3c3d87ca1e3fac4 Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Fri, 13 May 2011 22:36:07 +0000 Subject: Support $pdir and $sdir in libthread-db-search-path. * NEWS: Mention $sdir,$pdir. * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): Add $sdir:$pdir. * linux-thread-db.c (try_thread_db_load_from_pdir): New function. (try_thread_db_load_from_sdir): New function. (try_thread_db_load_from_dir): New function. (thread_db_load_search): Handle $pdir, $sdir. Remove trying of system directories if search of libthread-db-search-path fails, that is now done via $sdir. (has_libpthread): New function. (thread_db_load): Remove search for libthread_db in directory of libpthread, that is now done via $pdir. gdbserver/ * thread-db.c (try_thread_db_load_from_sdir): New function. (try_thread_db_load_from_dir): New function. (thread_db_load_search): Handle $sdir, ignore $pdir. Remove trying of system directories if search of libthread-db-search-path fails, that is now done via $sdir. doc/ * gdb.texinfo (Threads): Document $sdir,$pdir. (Server): Document $pdir exception. --- gdb/doc/ChangeLog | 3 +++ gdb/doc/gdb.texinfo | 17 +++++++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) (limited to 'gdb/doc') diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 15d203e..f145574 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,5 +1,8 @@ 2011-05-13 Doug Evans + * gdb.texinfo (Threads): Document $sdir,$pdir. + (Server): Document $pdir exception. + * gdb.texinfo (Auto-loading): Document "info auto-load-scripts". * gdb.texinfo (Threads): Clarify default value for diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index ae87528..08ee158 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -2858,16 +2858,22 @@ watchpoints in programs with multiple threads. If this variable is set, @var{path} is a colon-separated list of directories @value{GDBN} will use to search for @code{libthread_db}. If you omit @var{path}, @samp{libthread-db-search-path} will be reset to -its default value (an empty list on @sc{gnu}/Linux and Solaris systems). +its default value (@code{$sdir:$pdir} on @sc{gnu}/Linux and Solaris systems). Internally, the default value comes from the @code{LIBTHREAD_DB_SEARCH_PATH} macro. On @sc{gnu}/Linux and Solaris systems, @value{GDBN} uses a ``helper'' @code{libthread_db} library to obtain information about threads in the inferior process. @value{GDBN} will use @samp{libthread-db-search-path} -to find @code{libthread_db}. If that fails, @value{GDBN} will continue -with default system shared library directories, and finally the directory -from which @code{libpthread} was loaded in the inferior process. +to find @code{libthread_db}. + +A special entry @samp{$sdir} for @samp{libthread-db-search-path} +refers to the default system directories that are +normally searched for loading shared libraries. + +A special entry @samp{$pdir} for @samp{libthread-db-search-path} +refers to the directory from which @code{libpthread} +was loaded in the inferior process. For any @code{libthread_db} library @value{GDBN} finds in above directories, @value{GDBN} attempts to initialize it with the current inferior process. @@ -16382,6 +16388,9 @@ directories to search for @code{libthread_db} (@pxref{Threads,,set libthread-db-search-path}). If you omit @var{path}, @samp{libthread-db-search-path} will be reset to its default value. +The special entry @samp{$pdir} for @samp{libthread-db-search-path} is +not supported in @code{gdbserver}. + @item monitor exit Tell gdbserver to exit immediately. This command should be followed by @code{disconnect} to close the debugging session. @code{gdbserver} will -- cgit v1.1