]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_auto_test
dh_strip: Also strip OCaml shared libraries. (Stephane Glondu) Closes: #527272
[debhelper.git] / dh_auto_test
index cf6e58a2ee773085d883baf8184caf089d275fe6..ea2d7fdc2c70b18c92a822d0cb5112beacf2fc9e 100755 (executable)
@@ -23,7 +23,7 @@ exit nonzero. If there's no test suite, it will exit zero without doing
 anything.
 
 This is intended to work for about 90% of packages with a test suite. If it
-doesn't work, you're encoruaged to skip using dh_auto_test at all, and
+doesn't work, you're encouraged to skip using dh_auto_test at all, and
 just run the test suite manually.
 
 =head1 OPTIONS
@@ -32,30 +32,41 @@ just run the test suite manually.
 
 =item B<--> I<params>
 
-Pass "params" to the program that is run. These can be used to suppliment
+Pass "params" to the program that is run. These can be used to supplement
 or override the any standard parameters that dh_auto_test passes.
 
 =back
 
+=head1 NOTES
+
+If the DEB_BUILD_OPTIONS environment variable contains "nocheck", no
+tests will be performed.
+
 =cut
 
 init();
 
+if (defined $ENV{DEB_BUILD_OPTIONS} && $ENV{DEB_BUILD_OPTIONS} =~ /nocheck/) {
+       exit 0;
+}
+
 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;
                }
        }
 }
+elsif (-e "Build.PL" && -e "Build") {
+       $ENV{MODULEBUILDRC} = "/dev/null";
+       doit(qw/perl Build test/, @{$dh{U_PARAMS}});
+}
 
 =head1 SEE ALSO