From 30dc53b5fc56e50f12cf46682a92dcbd4a9c6294 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 4 May 2009 14:46:50 -0400 Subject: dh: Add --without to allow disabling sequence addons (particularly useful to disable the default python-support addon). --- dh | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'dh') diff --git a/dh b/dh index 2a91b92d..427a1c9d 100755 --- a/dh +++ b/dh @@ -53,6 +53,10 @@ than once, and is used when there is a third-party package that provides debhelper commands. See the PROGRAMMING file for documentation about the sequence addon interface. +=item B<--without> I + +The inverse of --with, disables using the given addon. + =item B<--until> I Run commands in the sequence until and including I, then stop. @@ -172,6 +176,10 @@ default. This is how to use dh_pycentral instead. # Stash this away before init modifies it. my @ARGV_orig=@ARGV; +# python-support is enabled by default, at least for now +# (and comes first so python-central loads later and can disable it). +unshift @ARGV, "--with=python-support"; + init(options => { "until=s" => \$dh{UNTIL}, "after=s" => \$dh{AFTER}, @@ -181,6 +189,10 @@ init(options => { my ($option,$value)=@_; push @{$dh{WITH}},$value; }, + "without=s" => sub { + my ($option,$value)=@_; + @{$dh{WITH}} = grep { $_ ne $value } @{$dh{WITH}}; + }, }); inhibit_log(); @@ -253,9 +265,6 @@ $sequences{binary} = [@{$sequences{install}}, qw{ }, @b]; $sequences{'binary-arch'} = [@{$sequences{binary}}]; -# --with python-support is enabled by default, at least for now -unshift @{$dh{WITH}}, "python-support"; - # sequence addon interface sub _insert { my $offset=shift; @@ -339,11 +348,11 @@ elsif ($sequence eq 'binary-indep') { while (@ARGV_orig) { my $opt=shift @ARGV_orig; next if $opt eq $sequence; - if ($opt =~ /^--?(after|until|before|with)$/) { + if ($opt =~ /^--?(after|until|before|with|without)$/) { shift @ARGV_orig; next; } - elsif ($opt =~ /^--?(no-act|remaining|(after|until|before|with)=)/) { + elsif ($opt =~ /^--?(no-act|remaining|(after|until|before|with|without)=)/) { next; } push @options, $opt; -- cgit v1.2.3