From d69251ac733d1c80650bd5954daf1e92408dbd1d Mon Sep 17 00:00:00 2001 From: David Leverton Date: Mon, 5 Dec 2011 20:00:04 +0000 Subject: Handle binaries that link to libraries by full path Example: # ldd /usr/bin/wimenu [...] /usr/lib64/libixp.so (0x0000028b1db65000) --- paludis/elf_linkage_checker.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/paludis/elf_linkage_checker.cc b/paludis/elf_linkage_checker.cc index e8318884b..734daece3 100644 --- a/paludis/elf_linkage_checker.cc +++ b/paludis/elf_linkage_checker.cc @@ -220,6 +220,7 @@ Imp::handle_library(const FSPath & file, const ElfArchitectur seen.insert(std::make_pair(file, arch)); std::pair range(symlinks.equal_range(file)); libraries[arch].push_back(file.basename()); + libraries[arch].push_back(stringify(file.strip_leading(root))); if (range.first != range.second) { @@ -244,6 +245,7 @@ ElfLinkageChecker::note_symlink(const FSPath & link, const FSPath & target) Log::get_instance()->message("broken_linkage_finder.note_symlink", ll_debug, lc_context) << "'" << link << "' is a symlink to known library '" << target << "'"; _imp->libraries[it->second].push_back(link.basename()); + _imp->libraries[it->second].push_back(stringify(link.strip_leading(_imp->root))); } else _imp->symlinks.insert(std::make_pair(target, link)); -- cgit v1.2.1