From b3a6127c13c1226aa5b6c36b6c71dd3d74193c6d Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 23 Apr 2008 14:37:34 -0400 Subject: dh_auto_clean: New program, automates running make clean (or distclean, or realclean), or using setup.py to clean up. --- dh_auto_test | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'dh_auto_test') diff --git a/dh_auto_test b/dh_auto_test index 74a80e8c..cf6e58a2 100755 --- a/dh_auto_test +++ b/dh_auto_test @@ -42,11 +42,16 @@ or override the any standard parameters that dh_auto_test passes. init(); if (-e "Makefile" || -e "makefile" || -e "GNUmakefile") { + $ENV{MAKE}="make" unless exists $ENV{MAKE}; foreach my $target (qw{test check}) { - my $ret=system("make --question $target >/dev/null 2>&1"); - if ($ret == 0) { - doit(exists $ENV{MAKE} ? $ENV{MAKE} : "make", - $target, @{$dh{U_PARAMS}}); + # 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`; + chomp $ret; + if ($ret =~ /^Making \Q$target\E/m) { + doit($ENV{MAKE}, $target, @{$dh{U_PARAMS}}); last; } } -- cgit v1.2.3