From 097a64746d783ea7c1b669c908b478438f1e61e3 Mon Sep 17 00:00:00 2001 From: Raphael Hertzog Date: Thu, 27 Sep 2007 00:06:21 +0200 Subject: [PATCH] dpkg-shlibdeps: don't try to add dependency information for private libraries Private libraries are defined as libraries without SONAME. They are not listed in shlibs files and thus there's no point in trying to add a dependency for them. It also reduce the number of false-positive failures/warnings generated by dpkg-shlibdeps. --- scripts/dpkg-shlibdeps.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/dpkg-shlibdeps.pl b/scripts/dpkg-shlibdeps.pl index a6378113..15df7d7f 100755 --- a/scripts/dpkg-shlibdeps.pl +++ b/scripts/dpkg-shlibdeps.pl @@ -137,9 +137,11 @@ foreach my $file (keys %exec) { } } else { # No symbol file found, fall back to standard shlibs - $dumplibs_wo_symfile->parse($lib); + my $id = $dumplibs_wo_symfile->parse($lib); push @soname_wo_symfile, $soname; - if (not add_shlibs_dep($soname, $pkg)) { + my $libobj = $dumplibs_wo_symfile->get_object($id); + # Only try to generate a dependency for libraries with a SONAME + if ($libobj->is_public_library() and not add_shlibs_dep($soname, $pkg)) { failure(sprintf( _g("No dependency information found for %s (used by %s)."), $soname, $file)) unless $ignore_missing_info; -- 2.39.5