From 6c80d913e37857ae525d6ff7464cedcb01a67658 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Tue, 17 Feb 2009 00:53:22 -0500 Subject: [PATCH] misc minor cleanups of patch (cherry picked from commit ae4994f07656deb47ffc55b8ebd4668c158b9333) --- debian/changelog | 1 + dh | 17 ++++++++++------- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/debian/changelog b/debian/changelog index 9950c21..19e372a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,7 @@ debhelper (7.2.0) UNRELEASED; urgency=low * dh: debian/rules override targets can change what is run for a specific debhelper command in a sequence. + (Thanks Modestas Vainius for the improved makefile parser.) * dh: Redid all the examples to use override targets, since these eliminate all annoying boilerplate and are much easier to understand than the old method. diff --git a/dh b/dh index e3a5943..88dc9c4 100755 --- a/dh +++ b/dh @@ -495,24 +495,27 @@ sub rules_explicit_target { # Checks if a specified target exists as an explicit target # in debian/rules. my $target=shift; - my $processing_targets = 0; - my $not_a_target = 0; if (! $rules_parsed) { + my $processing_targets = 0; + my $not_a_target = 0; open(MAKE, "make -Rrnpsf debian/rules debhelper-fail-me 2>/dev/null |"); while () { if ($processing_targets) { if (/^# Not a target:/) { $not_a_target = 1; - } else { - if (!$not_a_target && /^([^#:]+)::?/ && !exists $targets{$1}) { + } + else { + if (!$not_a_target && /^([^#:]+)::?/) { # Target is defined. - # NOTE: if it is a depenency of .PHONY it will be + # NOTE: if it is a depenency + # of .PHONY it will be # defined too but that's ok. $targets{$1} = 1; } - # "Not a target:" is always followed by a target name, - # so resetting this one here is safe. + # "Not a target:" is always followed by + # a target name, so resetting this one + # here is safe. $not_a_target = 0; } } elsif (/^# Files$/) { -- 2.39.2