[PING 2] [rfc]: Framework for looking up multiply defined global symbols in shared libraries
Markus Deuling
deuling@de.ibm.com
Tue Jul 3 04:04:00 GMT 2007
Ulrich Weigand schrieb:
> Markus Deuling wrote:
>
>> Ok, I renamed the testsuite files to solib-symbol.exp and solib-symbol-{main,lib}.c The header has been removed.
>>
>> I also changed the NEWS entry. Eli, is this ok ?
>
> Thanks, Markus.
>
>
>> @@ -2572,7 +2572,7 @@
>> $(objfiles_h) $(exceptions_h) $(gdbcore_h) $(command_h) $(target_h) \
>> $(frame_h) $(gdb_regex_h) $(inferior_h) $(environ_h) $(language_h) \
>> $(gdbcmd_h) $(completer_h) $(filenames_h) $(exec_h) $(solist_h) \
>> - $(observer_h) $(readline_h)
>> + $(observer_h) $(readline_h) $(objfiles_h)
>> solib-frv.o: solib-frv.c $(defs_h) $(gdb_string_h) $(inferior_h) \
>> $(gdbcore_h) $(solist_h) $(frv_tdep_h) $(objfiles_h) $(symtab_h) \
>> $(language_h) $(command_h) $(gdbcmd_h) $(elf_frv_h) $(solib_h)
>
> This part of the Makefile.in change does not appear to be necessary -- there is
> no corresponding source code change to the solib-svr4.c file in the patch.
>
> Please verify this, and re-send the patch with an up-to-date ChangeLog
> entry -- I'll check it in then.
>
Done. I attached a new version of the patch, rebased and without the above Makefile entry.
Thank you.
ChangeLog:
* cp-namespace.c (lookup_symbol_file): Add block to
lookup_symbol_global call.
* Makefile.in (solist_h): Add dependency on symtab header.
(symtab.o): Add dependency on solist header.
* solib.c (solib_global_lookup): New function.
* solib-svr4.c (scan_dyntag): Likewise.
(elf_locate_base): Call helper routine scan_dyntag.
(elf_lookup_lib_symbol): New function.
(_initialize_svr4_solib): Add elf_lookup_lib_symbol to svr4_so_ops.
* solist.h (symtab.h): New include.
(lookup_lib_global_symbol): New prototype.
(solib_global_lookup): Likewise.
* symtab.c: New include solist.h.
(lookup_objfile_from_block): New function.
(lookup_global_symbol_from_objfile): New function.
(basic_lookup_symbol_nonlocal): Add block to lookup_symbol_global call.
(lookup_symbol_global): Call library-specific lookup procedure.
* symtab.h (lookup_global_symbol_from_objfile): New prototype.
* gdb.base/libmd.c: New file (testcase multiple symbol lookup).
* gdb.base/libmd.h: Likewise.
* gdb.base/solib_symbol.c: Likewise.
* gdb.base/solib_symbol.exp: Likewise.
* NEWS: Document framework.
--
Markus Deuling
GNU Toolchain for Linux on Cell BE
deuling@de.ibm.com
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diff-gdb-multiple-symbols-mainline
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20070703/6b4cbd6f/attachment.ksh>
More information about the Gdb-patches
mailing list