X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=dh;h=4d4e31eb898327289647df23ae5741be1a24b779;hb=e2a6d4cec4a7ee952cf6a7f250d80f1d75a38f95;hp=4eae44484842008b71dc50dfcdd0c0a7f97a2a1b;hpb=90adcc683565ff41b7d0bbf070589a157d8a26cd;p=debhelper.git diff --git a/dh b/dh index 4eae444..4d4e31e 100755 --- a/dh +++ b/dh @@ -55,7 +55,9 @@ the sequence addon interface. =item B<--without> I -The inverse of B<--with>, disables using the given addon. +The inverse of B<--with>, disables using the given addon. This option +can be repeated more than once, or multiple addons to disable can be +listed, separated by commas. =item B<--list>, B<-l> @@ -133,7 +135,7 @@ that automate it, like this. dh $@ --with autotools_dev Python tools are not run by dh by default, due to the continual change -in that area. (Before compatability level v9, dh does run B.) +in that area. (Before compatibility level v9, dh does run B.) Here is how to use B. #!/usr/bin/make -f @@ -285,7 +287,8 @@ init(options => { }, "without=s" => sub { my ($option,$value)=@_; - @{$dh{WITH}} = grep { $_ ne $value } @{$dh{WITH}}; + my %without = map { $_ => 1 } split(",", $value); + @{$dh{WITH}} = grep { ! $without{$_} } @{$dh{WITH}}; }, "l" => \&list_addons, "list" => \&list_addons, @@ -726,6 +729,13 @@ sub run_override { return @rest if ! $has_explicit_target; # has empty override return @rest unless @todo; # has override, but no packages to act on + if (defined $override_type) { + # Ensure appropriate -a or -i option is passed when running + # an arch-specific override target. + my $opt=$override_type eq "arch" ? "-a" : "-i"; + push @options, $opt unless grep { $_ eq $opt } @options; + } + # This passes the options through to commands called # inside the target. $ENV{DH_INTERNAL_OPTIONS}=join("\x1e", @options);