On Fri, May 17, 2002 at 11:04:12AM +0200, Rafael Garcia-Suarez wrote:
> I downloaded the latest Test-Smoke, and noticed that
> it performs a 'make _test' instead of a 'make test'.
> Is there a reason for this ? The problem being

Yes. The smoke's just done a make, so it knows perl is built.
make test checks that all of perl is built, which takes some time
make _test skips that check, which is faster. Which means that you can
get more smoking done in given time.

> that a bare 'make _test' doesn't work for me :
> 
> $ make _test
> if (true </dev/tty) >/dev/null 2>&1; then \
>    make TEST_ARGS= TESTFILE=TEST _test_tty   ; \
> else \
>    make TEST_ARGS= TESTFILE=TEST _test_notty ; \
> fi
> make[1]: Entering directory `/opt/blead/perl'
> cd t &&    TEST  </dev/tty
> /bin/sh: TEST: command not found
> make[1]: *** [_test_tty] Error 127
> make[1]: Leaving directory `/opt/blead/perl'
> make: *** [_test] Error 2

Same here:

$ make _test
if (true </dev/tty) >/dev/null 2>&1; then \
  make TEST_ARGS= TESTFILE=TEST _test_tty   ; \
else \
  make TEST_ARGS= TESTFILE=TEST _test_notty ; \
fi
make[1]: Entering directory `/home/nick/build/16589-32'
cd t &&    TEST  </dev/tty
/bin/sh: TEST: command not found
make[1]: *** [_test_tty] Error 127
make[1]: Leaving directory `/home/nick/build/16589-32'
make: *** [_test] Error 2

But if you know the secret handshake:

$ PERL=./perl make _test
if (true </dev/tty) >/dev/null 2>&1; then \
  make TEST_ARGS= TESTFILE=TEST _test_tty   ; \
else \
  make TEST_ARGS= TESTFILE=TEST _test_notty ; \
fi
make[1]: Entering directory `/home/nick/build/16589-32'
cd t &&   ./perl TEST  </dev/tty
t/base/cond.........................ok
t/base/if...........................ok

etc. except for the tests not yet written. Schwern is still not poor.

Nicholas Clark

Reply via email to