summaryrefslogtreecommitdiff
path: root/dh_auto_test
diff options
context:
space:
mode:
authorJoey Hess <joey@kodama.kitenet.net>2008-04-23 15:57:17 -0400
committerJoey Hess <joey@kodama.kitenet.net>2008-04-23 15:57:17 -0400
commitbf2778d7ca2f11d3584ff1d49c15df1238062107 (patch)
treee7495182da6882740820259eff884adf098766af /dh_auto_test
parente55c32e8b1292342b443e204807460dc597bf939 (diff)
new method to tell if a makefile contains a target
Diffstat (limited to 'dh_auto_test')
-rwxr-xr-xdh_auto_test10
1 files changed, 4 insertions, 6 deletions
diff --git a/dh_auto_test b/dh_auto_test
index cf6e58a..ddc223e 100755
--- a/dh_auto_test
+++ b/dh_auto_test
@@ -44,13 +44,11 @@ init();
if (-e "Makefile" || -e "makefile" || -e "GNUmakefile") {
$ENV{MAKE}="make" unless exists $ENV{MAKE};
foreach my $target (qw{test check}) {
- # Make --question returns false if the target is
- # up-to-date. But we still want to run the target in this
- # case. So ceck if a target exists by seeing if make outputs
- # "Making target".
- my $ret=`LANG=C $ENV{MAKE} --question $target 2>/dev/null`;
+ # Use make -n to check to see if the target would do
+ # anything. There's no good way to test if a target exists.
+ my $ret=`$ENV{MAKE} -s -n $target 2>/dev/null`;
chomp $ret;
- if ($ret =~ /^Making \Q$target\E/m) {
+ if (length $ret) {
doit($ENV{MAKE}, $target, @{$dh{U_PARAMS}});
last;
}