From: Joey Hess Date: Mon, 23 Nov 2009 18:16:49 +0000 (-0500) Subject: dh_makeshlibs: Make -X also exclude libraries from the symbols file. Closes: #557603... X-Git-Tag: 7.4.8~3 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=a6d3e307da558f6bf455a0d21e1cb9ec1b4fef03;p=debhelper.git dh_makeshlibs: Make -X also exclude libraries from the symbols file. Closes: #557603 (Peter Samuelson) --- diff --git a/debian/changelog b/debian/changelog index af29f85..141920e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,8 @@ debhelper (7.4.8) UNRELEASED; urgency=low * dh: Document --no-act. Closes: #557505 + * dh_makeshlibs: Make -X also exclude libraries from the symbols file. + Closes: #557603 (Peter Samuelson) -- Joey Hess Sun, 22 Nov 2009 13:32:50 -0500 diff --git a/dh_makeshlibs b/dh_makeshlibs index 03a54f9..4e4a8e2 100755 --- a/dh_makeshlibs +++ b/dh_makeshlibs @@ -139,13 +139,14 @@ foreach my $package (@{$dh{DOPACKAGES}}) { # because only if we can get a library name and a major number from # objdump is anything actually added. my $exclude=''; - my @udeb_lines; + my (@udeb_lines, @lib_files); if (defined($dh{EXCLUDE_FIND}) && $dh{EXCLUDE_FIND} ne '') { $exclude="! \\( $dh{EXCLUDE_FIND} \\) "; } open (FIND, "find $tmp -type f \\( -name '*.so' -or -name '*.so.*' \\) $exclude |"); while () { my ($library, $major); + push @lib_files, $_; my $objdump=`objdump -p $_`; if ($objdump=~m/\s+SONAME\s+(.+)\.so\.(.+)/) { # proper soname format @@ -227,7 +228,8 @@ foreach my $package (@{$dh{DOPACKAGES}}) { # is not 100% compatible with debhelper. (For example, # this supports --ignore being used.) doit("dpkg-gensymbols", "-p$package", "-I$symbols", - "-P$tmp", @{$dh{U_PARAMS}}); + "-P$tmp", (map { "-e$_" } @lib_files), + @{$dh{U_PARAMS}}); if (-s "$tmp/DEBIAN/symbols" == 0) { doit("rm", "-f", "$tmp/DEBIAN/symbols"); }