[PATCH 6/7] Ignore the Windows system directories when searching for DLLs
Thiago Macieira
thiago at macieira.org
Fri Oct 11 11:05:42 UTC 2013
We don't want to deploy kernel32.dll or such.
Signed-off-by: Thiago Macieira <thiago at macieira.org>
---
scripts/win-ldd.pl | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/scripts/win-ldd.pl b/scripts/win-ldd.pl
index 6907016..8a25c34 100644
--- a/scripts/win-ldd.pl
+++ b/scripts/win-ldd.pl
@@ -3,6 +3,7 @@ use strict;
my %deploy;
my $objdump = $ENV{objdump} ? $ENV{objdump} : "objdump";
my @searchdirs;
+my @systemdirs = (qr|^c:/windows|i, qr|^c:/winnt|i, qr|/c/windows|i, qr|/c/winnt|);
sub addDependenciesFor($) {
open OBJDUMP, "-|", $objdump, "-p", $_[0] or die;
@@ -59,6 +60,18 @@ for (@ARGV) {
# Append PATH to @searchdirs
@searchdirs = (@searchdirs, split(/:/, $ENV{PATH}));
+# Remove system dirs from @searchdirs
+ at searchdirs = grep {
+ my $sys = 0;
+ for my $rx (@systemdirs) {
+ if ($_ =~ $rx) {
+ $sys = 1;
+ last;
+ }
+ }
+ !$sys;
+} @searchdirs;
+
while (1) {
findMissingDependencies();
--
1.7.11.7
More information about the subsurface
mailing list