From: Joey Hess Date: Sun, 20 Jan 2008 20:27:55 +0000 (-0500) Subject: * dh_shlibdeps: Rather than skipping everything in /usr/lib/debug, X-Git-Tag: 6.0.3~1 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=3b3753e15a4961078aab74f1a74aacfa0de97dee;p=debhelper.git * dh_shlibdeps: Rather than skipping everything in /usr/lib/debug, which can include debug libraries that dpkg-shlibdeps should look at, only skip the subdirectories of it that contain separate debugging symbols. (Hardcoding the names of those directories is not the best implementation, but it will do for now.) Closes: #461339 --- diff --git a/debian/changelog b/debian/changelog index 29419c3..38d1068 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,11 @@ debhelper (6.0.3) UNRELEASED; urgency=low * dh_link: -X can be used to avoid it modifying symlinks to be compliant with policy. Closes: #461392 + * dh_shlibdeps: Rather than skipping everything in /usr/lib/debug, + which can include debug libraries that dpkg-shlibdeps should look at, + only skip the subdirectories of it that contain separate debugging + symbols. (Hardcoding the names of those directories is not the best + implementation, but it will do for now.) Closes: #461339 -- Joey Hess Fri, 18 Jan 2008 12:29:15 -0500 diff --git a/dh_shlibdeps b/dh_shlibdeps index a076537..e705d73 100755 --- a/dh_shlibdeps +++ b/dh_shlibdeps @@ -117,7 +117,9 @@ foreach my $package (@{$dh{DOPACKAGES}}) { if (defined($dh{EXCLUDE_FIND}) && $dh{EXCLUDE_FIND} ne '') { $find_options="! \\( $dh{EXCLUDE_FIND} \\)"; } - foreach my $file (split(/\n/,`find $tmp -path $tmp/usr/lib/debug -prune -or -type f \\( -perm +111 -or -name "*.so*" \\) $find_options -print`)) { + foreach my $file (split(/\n/,`find $tmp -type f \\( -perm +111 -or -name "*.so*" \\) $find_options -print`)) { + # Prune directories that contain separated debug symbols. + next if $file=~m!^\Q$tmp\E/usr/lib/debug/(lib|lib64|usr|bin|sbin|opt|dev)/!; # TODO this is slow, optimize. Ie, file can run once on # multiple files.. $ff=`file "$file"`;