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
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
-#!/usr/bin/make -f
+#!/usr/bin/make -Bf
# If you're looking for an example debian/rules that uses debhelper, see
# the examples directory.
#
# Not intended for use by anyone except the author.
announcedir:
@echo ${HOME}/src/joeywiki/code/debhelper/news
+
+.PHONY: build
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}};