>From 72cae0a53cde58c5f5ac1020555a675498191b85 Mon Sep 17 00:00:00 2001 Message-Id: From: Stefano Lattarini Date: Sun, 19 Feb 2012 14:53:53 +0100 Subject: [PATCH] tests: be stricter in determining whether "make -jN" works * tests/parallel-tests3.test: With at least Solaris 10 CCS make, "make -jN" does not fail, but merely prints a warning about "DistributedMake -j option" being ignored. This was causing this test case to fail spuriously. So we now use a stricter check in determining whether make works in parallel mode. Since we are at it, we try to cater also to Sun Distributed make, which understands "-j N" but *not* "-jN". --- tests/parallel-tests3.test | 26 ++++++++++++++++++++++---- 1 files changed, 22 insertions(+), 4 deletions(-) diff --git a/tests/parallel-tests3.test b/tests/parallel-tests3.test index f146d0f..b37cf0a 100755 --- a/tests/parallel-tests3.test +++ b/tests/parallel-tests3.test @@ -24,8 +24,26 @@ case $MAKE in *\ -j*) skip_ "\$MAKE contains \`-j'";; esac -using_gmake || echo "all:" | $MAKE -f - -j4 all \ - || skip_ "can't run make in parallel mode" +if using_gmake; then + j=-j +else + unindent > Makefile < \$@ +END + for j in "-j" "-j " NONE; do + if test x"$j" = xNONE; then + skip_ "can't run make in parallel mode" + fi + $MAKE ${j}2 all >output 2>&1 || continue + $EGREP -i "(warning|error):|-j[\"\'\` ]" output && continue + break + done + rm -f one output Makefile +fi cat >> configure.in << 'END' AC_OUTPUT @@ -69,13 +87,13 @@ for build in serial parallel; do done cd serial -$MAKE -j1 check & +$MAKE ${j}1 check & cd ../parallel $sleep # Use append mode here to avoid dropping output. # Yes, this actually happens. : >stdout -$MAKE -j4 check >> stdout +$MAKE ${j}4 check >> stdout cd .. # Ensure the tests are really being run in parallel mode: if this is # the case, the serial run of the dummy testsuite started above should -- 1.7.9