summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joey@gnu.kitenet.net>2009-05-11 14:53:58 -0400
committerJoey Hess <joey@gnu.kitenet.net>2009-05-11 14:53:58 -0400
commite5fbf2c660a99ab58837f1b9829f8faac7d8fc77 (patch)
tree1e22d3ecf3c5b7e5817fbdae85b15edbcfd401f5
parent01e9d76b1d45249f24e52a76fcbefa2a68db2ac1 (diff)
parent4e6b4536d7611a303b4e57de932dce5bd07ee93f (diff)
Merge branch 'master' into buildsystems
Conflicts: debian/changelog dh_auto_configure
-rw-r--r--Debian/Debhelper/Dh_Lib.pm1
-rw-r--r--debian/changelog28
-rwxr-xr-xdh35
-rwxr-xr-xdh_auto_configure7
-rwxr-xr-xdh_fixperms12
5 files changed, 72 insertions, 11 deletions
diff --git a/Debian/Debhelper/Dh_Lib.pm b/Debian/Debhelper/Dh_Lib.pm
index f0ad505b..c80389d7 100644
--- a/Debian/Debhelper/Dh_Lib.pm
+++ b/Debian/Debhelper/Dh_Lib.pm
@@ -301,6 +301,7 @@ sub dirname {
# Try the file..
open (COMPAT_IN, "debian/compat") || error "debian/compat: $!";
my $l=<COMPAT_IN>;
+ close COMPAT_IN;
if (! defined $l || ! length $l) {
warning("debian/compat is empty, assuming level $c");
}
diff --git a/debian/changelog b/debian/changelog
index 37cd1844..b345d4ba 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -15,6 +15,34 @@ debhelper (7.3.0) UNRELEASED; urgency=low
-- Joey Hess <joeyh@debian.org> Mon, 20 Apr 2009 16:26:08 -0400
+debhelper (7.2.11) UNRELEASED; urgency=low
+
+ * dh: Support --with addon,addon,...
+ Closes: #528178
+
+ -- Joey Hess <joeyh@debian.org> Mon, 11 May 2009 14:50:33 -0400
+
+debhelper (7.2.10) unstable; urgency=low
+
+ * Close COMPAT_IN filehandle. Closes: #527464
+ * dh_auto_configure: Clarify man page re adding configure
+ parameters. Closes: #527256
+ * dh_auto_configure: Pass packlist=0 when running Makefile.PL,
+ in case it is a Build.PL passthru, to avoid it creating
+ the .packlist file. Closes: #527990
+
+ -- Joey Hess <joeyh@debian.org> Sun, 10 May 2009 13:07:08 -0400
+
+debhelper (7.2.9) unstable; urgency=low
+
+ * dh_fixperms: Ensure lintian overrides are mode 644.
+ (Patch from #459548)
+ * dh_fixperms: Fix permissions of OCaml .cmxs files. Closes: #526221
+ * dh: Add --without to allow disabling sequence addons (particularly
+ useful to disable the default python-support addon).
+
+ -- Joey Hess <joeyh@debian.org> Mon, 04 May 2009 14:46:53 -0400
+
debhelper (7.2.8) unstable; urgency=low
* dh_desktop: Now a deprecated no-op, since desktop-file-utils
diff --git a/dh b/dh
index 2a91b92d..701f588e 100755
--- a/dh
+++ b/dh
@@ -11,7 +11,7 @@ use Debian::Debhelper::Dh_Lib;
=head1 SYNOPSIS
-B<dh> sequence [B<--with> I<addon>] [B<--until> I<cmd>] [B<--before> I<cmd>] [B<--after> I<cmd>] [B<--remaining>] [S<I<debhelper options>>]
+B<dh> sequence [B<--with> I<addon>[,I<addon>,...]] [B<--until> I<cmd>] [B<--before> I<cmd>] [B<--after> I<cmd>] [B<--remaining>] [S<I<debhelper options>>]
=head1 DESCRIPTION
@@ -45,14 +45,19 @@ you should Build-Depend on debhelper 7.0.50 or above.)
=over 4
-=item B<--with> I<addon>
+=item B<--with> I<addon>[,I<addon>,...]
Add the debhelper commands specified by the given addon to appropriate places
in the sequence of commands that is run. This option can be repeated more
-than once, and is used when there is a third-party package that provides
+than once, or multiple addons can be listed, separated by commas.
+This 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<addon>
+
+The inverse of --with, disables using the given addon.
+
=item B<--until> I<cmd>
Run commands in the sequence until and including I<cmd>, then stop.
@@ -167,11 +172,22 @@ default. This is how to use dh_pycentral instead.
%:
dh --with python-central $@
+To patch your package using quilt, you can tell dh to use quilt's dh
+sequence addons like this:
+
+ #!/usr/bin/make -f
+ %:
+ dh --with quilt $@
+
=cut
# 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},
@@ -179,7 +195,11 @@ init(options => {
"remaining" => \$dh{REMAINING},
"with=s" => sub {
my ($option,$value)=@_;
- push @{$dh{WITH}},$value;
+ push @{$dh{WITH}},split(",", $value);
+ },
+ "without=s" => sub {
+ my ($option,$value)=@_;
+ @{$dh{WITH}} = grep { $_ ne $value } @{$dh{WITH}};
},
});
inhibit_log();
@@ -253,9 +273,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 +356,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;
diff --git a/dh_auto_configure b/dh_auto_configure
index 416c25b3..34d6298a 100755
--- a/dh_auto_configure
+++ b/dh_auto_configure
@@ -31,8 +31,11 @@ you're encouraged to skip using dh_auto_configure at all, and just run
=item B<--> I<params>
-Pass "params" to the program that is run. These can be used to supplement
-or override the standard parameters that dh_auto_configure passes.
+Pass "params" to the program that is run, after the standard
+parameters that dh_auto_configure passes. This can be used to supplement
+or override those parameters. For example:
+
+ dh_auto_configure -- --with-foo --enable-bar
=back
diff --git a/dh_fixperms b/dh_fixperms
index d9c726ca..6fa50652 100755
--- a/dh_fixperms
+++ b/dh_fixperms
@@ -82,6 +82,11 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
# ..and desktop files ..
complex_doit("find $tmp/usr/share/applications -type f $find_options -print0",
"2>/dev/null | xargs -0r chmod 644");
+
+ # ..and OCaml native-code shared objects ..
+ complex_doit("find $tmp -perm -5 -type f",
+ "\\( -name '*.cmxs' \\) $find_options -print0",
+ "2>/dev/null | xargs -0r chmod 644");
# .. and perl modules.
complex_doit("find $tmp/usr/lib/perl5 $tmp/usr/share/perl5 -type f",
@@ -105,6 +110,13 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
"-name '*.ali' $find_options -print0",
"2>/dev/null | xargs -0r chmod uga-w");
}
+
+ # Lintian overrides should never be executable, too.
+ if (-d "$tmp/usr/share/lintian") {
+ complex_doit("find $tmp/usr/share/lintian/overrides",
+ "-type f $find_options -print0",
+ "2>/dev/null | xargs -0r chmod 644");
+ }
}
=head1 SEE ALSO