make coretest
Paul Johnson [Wed, 29 Aug 2001 00:11:38 +0000 (02:11 +0200)]
Message-Id: <20010829001138.B12169@pjcj.net>
(Applied without the change to perlhack.pod. This should
probably stay undocumented.)

p4raw-id: //depot/perl@11773

Makefile.SH
t/TEST

index 64081d7..81858b2 100644 (file)
@@ -941,7 +941,7 @@ makedepend: makedepend.SH config.sh
        utest ucheck test.utf8 check.utf8 \
        test.third check.third utest.third ucheck.third test_notty.third \
        test.deparse test_notty.deparse \
-       minitest
+       minitest coretest
 
 # Cannot delegate rebuilding of t/perl to make
 # to allow interlaced test and minitest
@@ -986,6 +986,9 @@ test_notty: test_prep
 utest ucheck test.utf8 check.utf8: test_prep
        PERL=./perl TEST_ARGS=-utf8 $(MAKE) _test
 
+coretest: test_prep
+       PERL=./perl TEST_ARGS=-core $(MAKE) _test
+
 test-prep:     test_prep
 
 test-tty:      test_tty
diff --git a/t/TEST b/t/TEST
index 0a63f0e..64da39c 100755 (executable)
--- a/t/TEST
+++ b/t/TEST
@@ -9,6 +9,7 @@ $| = 1;
 if ($#ARGV >= 0) {
     foreach my $idx (0..$#ARGV) {
        next unless $ARGV[$idx] =~ /^-(\S+)$/;
+       $core    = 1 if $1 eq 'core';
        $verbose = 1 if $1 eq 'v';
        $with_utf= 1 if $1 eq 'utf8';
        if ($1 =~ /^deparse(,.+)?$/) {
@@ -64,15 +65,20 @@ sub _find_tests {
 }
 
 unless (@ARGV) {
-    foreach my $dir (qw(base comp cmd run io op lib)) {
+    foreach my $dir (qw(base comp cmd run io op)) {
         _find_tests($dir);
     }
+    _find_tests("lib") unless $core;
     my $mani = File::Spec->catdir($updir, "MANIFEST");
     if (open(MANI, $mani)) {
         while (<MANI>) { # similar code in t/harness
            if (m!^(ext/\S+/([^/]+\.t|test\.pl)|lib/\S+?(\.t|test\.pl))\s!) {
-               push @ARGV, $1;
-               $OVER{$1} = File::Spec->catdir($updir, $1);
+               $t = $1;
+               if (!$core || $t =~ m!^lib/[a-z]!)
+               {
+                   push @ARGV, $t;
+                   $OVER{$t} = File::Spec->catdir($updir, $t);
+               }
            }
        }
     } else {