summaryrefslogtreecommitdiff
path: root/Debian/Debhelper
diff options
context:
space:
mode:
Diffstat (limited to 'Debian/Debhelper')
-rw-r--r--Debian/Debhelper/Dh_Getopt.pm9
-rw-r--r--Debian/Debhelper/Dh_Lib.pm16
2 files changed, 16 insertions, 9 deletions
diff --git a/Debian/Debhelper/Dh_Getopt.pm b/Debian/Debhelper/Dh_Getopt.pm
index 81d20618..16851a04 100644
--- a/Debian/Debhelper/Dh_Getopt.pm
+++ b/Debian/Debhelper/Dh_Getopt.pm
@@ -177,13 +177,6 @@ sub parseopts {
}
@{$options{DOPACKAGES}}=@package_list;
- # Generate EXCLUDE_FIND.
- $options{EXCLUDE_FIND}='';
- foreach (@{$options{EXCLUDE}}) {
- $options{EXCLUDE_FIND}.="-regex .*".quotemeta($_).".* -or ";
- }
- $options{EXCLUDE_FIND}=~s/ -or $//;
-
# If there are no packages to act on now, it's an error.
if (! defined $options{DOPACKAGES} || ! @{$options{DOPACKAGES}}) {
error("I have no package to build");
@@ -203,7 +196,7 @@ sub parseopts {
@ARGV=@{$options{ARGV}} if exists $options{ARGV};
return %options;
-}
+}
sub import {
# Enable bundling of short command line options.
diff --git a/Debian/Debhelper/Dh_Lib.pm b/Debian/Debhelper/Dh_Lib.pm
index 0ed7c477..0f910f1d 100644
--- a/Debian/Debhelper/Dh_Lib.pm
+++ b/Debian/Debhelper/Dh_Lib.pm
@@ -43,6 +43,20 @@ sub init {
%dh=Debian::Debhelper::Dh_Getopt::parseopts();
}
+ # Another way to set excludes.
+ if (exists $ENV{DH_ALWAYS_EXCLUDE} && length $ENV{DH_ALWAYS_EXCLUDE}) {
+ push @{$dh{EXCLUDE}}, $ENV{DH_ALWAYS_EXCLUDE};
+ }
+
+ # Generate EXCLUDE_FIND.
+ if ($dh{EXCLUDE}) {
+ $dh{EXCLUDE_FIND}='';
+ foreach (@{$dh{EXCLUDE}}) {
+ $dh{EXCLUDE_FIND}.="-regex ".escape_shell(".*$_.*")." -or ";
+ }
+ }
+ $dh{EXCLUDE_FIND}=~s/ -or $//;
+
# Check to see if DH_VERBOSE environment variable was set, if so,
# make sure verbose is on.
if (defined $ENV{DH_VERBOSE} && $ENV{DH_VERBOSE} ne "") {
@@ -92,7 +106,7 @@ sub escape_shell {
if ($word=~/\s/) {
# Escape only a few things since it will be quoted.
# Note we use double quotes because you cannot
- # escape ' in qingle quotes, while " can be escaped
+ # escape ' in single quotes, while " can be escaped
# in double.
# This does make -V"foo bar" turn into "-Vfoo bar",
# but that will be parsed identically by the shell