From 854f6cec48a550299aa0b7a1d3b7f199b4d3ec9a Mon Sep 17 00:00:00 2001 From: joey Date: Mon, 29 Nov 1999 05:56:08 +0000 Subject: [PATCH] r317: * Added -X option, which makes it not examine some files. This is useful in rare cases. Closes: #51100 * Always pass "-dDepends" before the list of files, which makes it easier to specify other -d parameters in the uparams, and doesn't otherwise change the result at all. --- dh_shlibdeps | 13 ++++++++++--- dh_shlibdeps.1 | 10 ++++++++-- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/dh_shlibdeps b/dh_shlibdeps index 3fec714..f6ae235 100755 --- a/dh_shlibdeps +++ b/dh_shlibdeps @@ -13,8 +13,15 @@ foreach $PACKAGE (@{$dh{DOPACKAGES}}) { my @filelist; my $ff; - # Generate a list of all ELF binaries in the package. - foreach $file (split(/\n/,`find $TMP -type f \\( -perm +111 -or -name "*.so*" \\)`)) { + # Generate a list of ELF binaries in the package, ignoring any + # we were told to exclude. + if (! defined($dh{EXCLUDE_FIND}) || $dh{EXCLUDE_FIND} eq '') { + $find_options=""; + } + else { + $find_options="! \\( $dh{EXCLUDE_FIND} \\)"; + } + foreach $file (split(/\n/,`find $TMP -type f \\( -perm +111 -or -name "*.so*" \\) $find_options`)) { # TODO: this is slow, optimize. Ie, file can run once on multiple files.. $ff=`file "$file"`; if ($ff=~m/ELF/ && $ff!~/statically linked/) { @@ -27,6 +34,6 @@ foreach $PACKAGE (@{$dh{DOPACKAGES}}) { } if (@filelist) { - doit("dpkg-shlibdeps","-Tdebian/$EXT\substvars",@{$dh{U_PARAMS}},@filelist); + doit("dpkg-shlibdeps","-Tdebian/$EXT\substvars",@{$dh{U_PARAMS}},'-dDepends',@filelist); } } diff --git a/dh_shlibdeps.1 b/dh_shlibdeps.1 index 366ceef..75f31a8 100644 --- a/dh_shlibdeps.1 +++ b/dh_shlibdeps.1 @@ -3,7 +3,7 @@ dh_shlibdeps \- calculate shared library dependancies .SH SYNOPSIS .B dh_shlibdeps -.I "[debhelper options] [-ldirectory] [-uparams] [-- params]" +.I "[debhelper options] [-ldirectory] [-uparams] [-Xitem] [-- params]" .SH "DESCRIPTION" dh_shlibdeps is a debhelper program that is responsible for calculating shared library dependancies for all executables found in the package build @@ -11,7 +11,8 @@ directory. .P This program is merely a wrapper around .BR dpkg-shlibdeps (1) -that calls it once for each package listed in the control file. +that calls it once for each package listed in the control file, passing it +a list of ELF executables it has found. .SH OPTIONS .TP .B debhelper options @@ -25,6 +26,11 @@ for a list of options common to all debhelper commands. Pass "params" to .BR dpkg-shlibdeps (1) .TP +.B \-Xitem, \--exclude=item +Exclude files that contain "item" anywhere in their filename from being +passed to dpkg-shlibdeps. This will make their dependancies be ignored. +This may be useful in some situations, but use it with caution. +.TP .B \-ldirectory Before .BR dpkg-shlibdeps (1) -- 2.39.2