* tests/check12.test: Trust exit status of "make -k".
* tests/check4.test: Likewise.
* tests/gnits2.test: Likewise.
* tests/gnits3.test: Likewise.
* tests/make-dryrun.tap: Likewise.
* tests/distlinksbrk.test: Trust that "make -k" really doesn't exit
at the first error, and prints error messages to stderr. Related
simplifications and reorganization.
CHECKLOCAL_EXIT_STATUS=1 $MAKE check && Exit 1
grep 'check-local failed :-(' local.log
- # Do not trust the exit status of `make -k'.
- NAIL=screw B_EXIT_STATUS=23 CHECKLOCAL_EXIT_STATUS=1 $MAKE -k check || :
+ env NAIL=screw B_EXIT_STATUS=23 CHECKLOCAL_EXIT_STATUS=1 \
+ $MAKE -k check && Exit 1
test -f hammer.log
test -f hammer.sum
test -f spanner.log
grep '^FAIL: fail\.sh *$' stdout
grep '^PASS: ok\.sh *$' stdout && Exit 1
-# The exit status of `make -k' can be anything
-# (depending on the Make implementation)
-$MAKE -k check >stdout || :
+$MAKE -k check >stdout && { cat stdout; Exit 1; }
cat stdout
grep '^FAIL: fail\.sh *$' stdout
grep '^PASS: ok\.sh *$' stdout
# Should also works when -k is not in first position.
-$MAKE -s -k check >stdout || :
+$MAKE -s -k check >stdout && { cat stdout; Exit 1; }
cat stdout
grep '^FAIL: fail\.sh *' stdout
grep '^PASS: ok\.sh *' stdout
# Try with a long-option that do not have a short option equivalent
# (here, --no-print-directory). That should cause all options to
# appear verbatim in MAKEFLAGS.
-$MAKE --no-print-directory -k check >stdout || :
+$MAKE --no-print-directory -k check >stdout && { cat stdout; Exit 1; }
cat stdout
grep '^FAIL: fail\.sh *$' stdout
grep '^PASS: ok\.sh *$' stdout
AC_OUTPUT
END
+cat > Makefile.am <<END
+EXTRA_DIST = $lnk1 $lnk2 $lnka $lnkb
+END
+
$ACLOCAL
$AUTOCONF
+$AUTOMAKE
+./configure
ls -l # For debugging.
-# Don't try to use "make -k", because some botched make implementations
-# (HP-UX, IRIX) might still exit on the first error in this situations.
-for lnk in $lnk1 $lnk2 $lnka $lnkb; do
- echo "EXTRA_DIST = $lnk" > Makefile.am
- $AUTOMAKE
- ./configure
- # Distribution must fail, with a decent error message.
- $MAKE distdir >out 2>&1 && { cat out; Exit 1; }
- cat out
- $FGREP $lnk out
-done
+# Distribution must fail.
+$MAKE distdir && Exit 1
+
+# Names of distributed broken symlinks should be reported in make output.
+$MAKE -k distdir 2>stderr && { cat stderr >&2; Exit 1; }
+cat stderr >&2
+$FGREP $lnk1 stderr
+$FGREP $lnk2 stderr
+$FGREP $lnka stderr
+$FGREP $lnkb stderr
:
../configure "--prefix=`pwd`/../inst-dir" --program-prefix=p
$MAKE all
$MAKE test-install
-$MAKE -k installcheck 2>stderr || : # Never trust the exit status of make -k.
+$MAKE -k installcheck 2>stderr && { cat stderr >&2; Exit 1; }
cat stderr >&2
$MAKE grep-stderr
$MAKE
$MAKE install
$MAKE installcheck && Exit 1
-$MAKE -k installcheck 2>stderr || : # Never trust the exit status of make -k.
+$MAKE -k installcheck 2>stderr && { cat stderr >&2; Exit 1; }
cat stderr >&2
$MAKE grep-stderr