Просмотр исходного кода

Support system library directories in dpkg-shlibdeps symlinked from
'/lib/ldconfig'. Closes: #356452

Guillem Jover лет назад: 20
Родитель
Сommit
c7f4a5fc8a
3 измененных файлов с 25 добавлено и 1 удалено
  1. 6 1
      ChangeLog
  2. 2 0
      debian/changelog
  3. 17 0
      scripts/dpkg-shlibdeps.pl

+ 6 - 1
ChangeLog

@@ -1,4 +1,9 @@
-2006-04-04   Branden Robinson  <branden@debian.org>,
+2006-04-09  Guillem Jover  <guillem@debian.org>
+
+	* scripts/dpkg-shlibdeps.pl: Support system library directories
+	symlinked from '/lib/ldconfig/'.
+
+2006-04-09   Branden Robinson  <branden@debian.org>,
 	     Guillem Jover  <guillem@debian.org>
 
 	* src/main.c (execbackend): Pass '--admindir' over to dpkg-query

+ 2 - 0
debian/changelog

@@ -34,6 +34,8 @@ dpkg (1.13.18~) UNRELEASED; urgency=low
   * Pass '--admindir' option over to dpkg-query when passing '--admindir' or
     '--root' to dpkg (initial patch by Branden Robinson).
     Closes: #153305, #271041, #282853, #307715, #355915
+  * Support system library directories in dpkg-shlibdeps symlinked from
+    '/lib/ldconfig'. Closes: #356452
 
   [ Christian Perrier ]
   * 

+ 17 - 0
scripts/dpkg-shlibdeps.pl

@@ -117,6 +117,23 @@ if ($ENV{LD_LIBRARY_PATH}) {
     }
 }
 
+# Support system library directories.
+my $ldconfigdir = '/lib/ldconfig';
+if (opendir(DIR, $ldconfigdir)) {
+    my @dirents = readdir(DIR);
+    closedir(DIR);
+
+    for (@dirents) {
+	next if /^\./;
+	my $d = `readlink -f $ldconfigdir/$_`;
+	chomp $d;
+	unless (exists $librarypaths{$d}) {
+	    $librarypaths{$d} = 'ldconfig';
+	    push @librarypaths, $d;
+	}
+    }
+}
+
 open CONF, '</etc/ld.so.conf' or
     warn( "couldn't open /etc/ld.so.conf: $!" );
 while( <CONF> ) {