diff options
author | Joey Hess <joey@gnu.kitenet.net> | 2009-02-27 15:12:58 -0500 |
---|---|---|
committer | Joey Hess <joey@gnu.kitenet.net> | 2009-02-27 15:12:58 -0500 |
commit | aa2e7a24dbe8dfe62b9dcc967282858cee0f6087 (patch) | |
tree | f7dace53b5d9f6923e093f47747c427458dfd81f | |
parent | 6c80d913e37857ae525d6ff7464cedcb01a67658 (diff) | |
download | debhelper-aa2e7a24dbe8dfe62b9dcc967282858cee0f6087.tar.gz |
dh: Support debian/rules calling make with -B
That is useful to avoid issues with phony implicit rules
(see bug #509756).
Apparently make treats the name of the Makfile as an automaticall
set up target, so this causes it to try to build the Makefile
even though it's up-to-date, and the implicit target
makes it run 'dh debian/rules'.
So, make that a no-op.
(cherry picked from commit 378b377ef732119de4c2a08dcb9721500b017da1)
Conflicts:
debian/changelog
dh
-rw-r--r-- | debian/changelog | 3 | ||||
-rwxr-xr-x | debian/rules | 4 | ||||
-rwxr-xr-x | dh | 8 |
3 files changed, 12 insertions, 3 deletions
diff --git a/debian/changelog b/debian/changelog index 19e372a4..9c0abb3f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,9 @@ debhelper (7.2.0) UNRELEASED; urgency=low than the old method. * Remove rules.simple example, there's no need to use explcit targets with dh anymore. + * dh: Support debian/rules calling make with -B, + which is useful to avoid issues with phony implicit + rules (see bug #509756). -- Joey Hess <joeyh@debian.org> Thu, 25 Dec 2008 16:26:36 -0500 diff --git a/debian/rules b/debian/rules index 03db2d00..ae141867 100755 --- a/debian/rules +++ b/debian/rules @@ -1,4 +1,4 @@ -#!/usr/bin/make -f +#!/usr/bin/make -Bf # If you're looking for an example debian/rules that uses debhelper, see # the examples directory. # @@ -11,3 +11,5 @@ # Not intended for use by anyone except the author. announcedir: @echo ${HOME}/src/joeywiki/code/debhelper/news + +.PHONY: build @@ -311,8 +311,12 @@ if (! @ARGV) { error "specify a sequence to run"; } my $sequence=shift; -if (! exists $sequences{$sequence}) { - error "Unknown sequence $sequence (chose from: ". +if ($sequence eq 'debian/rules') { + # make -B causes the rules file to be run as a target + exit 0 +} +elsif (! exists $sequences{$sequence}) { + error "Unknown sequence $sequence (choose from: ". join(" ", sort keys %sequences).")"; } my @sequence=@{$sequences{$sequence}}; |