]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_shlibdeps
Move many command-specific options to only be accepted by the command that uses them.
[debhelper.git] / dh_shlibdeps
index a076537a8790cf4d6ab5d5f6049a5dea1e23e9f9..320f2501fec587407162c81d81b06a3c78dba141 100755 (executable)
@@ -82,10 +82,15 @@ libfoo, and is installed into /usr/lib/bar/, you can make libfoo-bin depend
 on libbar1 as follows:
 
        dh_shlibdeps -Llibbar1 -l/usr/lib/bar
-
+       
 =cut
 
-init();
+init(options => {
+       "L|libpackage=s" => \$dh{LIBPACKAGE},
+       "add-udeb=s" => \$dh{SHLIBS_UDEB},
+       "dpkg-shlibdeps-params=s", => \$dh{U_PARAMS},
+       "l=s", => \$dh{L_PARAMS},
+});
 
 if ($dh{L_PARAMS}) {
        my @paths=();
@@ -117,7 +122,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|emul)/!;
                # TODO this is slow, optimize. Ie, file can run once on
                # multiple files..
                $ff=`file "$file"`;