소스 검색

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

Guillem Jover 20 년 전
부모
커밋
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>
 	     Guillem Jover  <guillem@debian.org>
 
 
 	* src/main.c (execbackend): Pass '--admindir' over to dpkg-query
 	* 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
   * Pass '--admindir' option over to dpkg-query when passing '--admindir' or
     '--root' to dpkg (initial patch by Branden Robinson).
     '--root' to dpkg (initial patch by Branden Robinson).
     Closes: #153305, #271041, #282853, #307715, #355915
     Closes: #153305, #271041, #282853, #307715, #355915
+  * Support system library directories in dpkg-shlibdeps symlinked from
+    '/lib/ldconfig'. Closes: #356452
 
 
   [ Christian Perrier ]
   [ 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
 open CONF, '</etc/ld.so.conf' or
     warn( "couldn't open /etc/ld.so.conf: $!" );
     warn( "couldn't open /etc/ld.so.conf: $!" );
 while( <CONF> ) {
 while( <CONF> ) {