2 # Copyright (C) 2005 Free Software Foundation, Inc.
4 # This file is part of GNU Automake.
6 # GNU Automake is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2, or (at your option)
11 # GNU Automake is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with Automake; see the file COPYING. If not, write to
18 # the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 # Boston, MA 02110-1301, USA.
21 # Make sure `make -k check' processes all directories.
27 cat >> configure.
in << 'END'
28 AC_CONFIG_FILES
([dir
/Makefile
])
34 cat > Makefile.am
<<'END'
39 echo TESTS
= fail.sh
>dir
/Makefile.am
46 cat >dir
/fail.sh
<<'END'
51 chmod +x ok.sh dir
/fail.sh
56 .
/configure
--prefix `pwd`/inst
57 $MAKE check
>stdout
&& exit 1
59 grep 'FAIL: fail.sh' stdout
60 grep 'PASS: ok.sh' stdout
&& exit 1
62 # The exit status of `make -k' can be anything
63 # (depending on the Make implementation)
64 $MAKE -k check
>stdout ||
:
66 grep 'FAIL: fail.sh' stdout
67 grep 'PASS: ok.sh' stdout
69 # should also works when -k is not in first position
70 $MAKE -s -k check
>stdout ||
:
72 grep 'FAIL: fail.sh' stdout
73 grep 'PASS: ok.sh' stdout
75 # The rest of the test is for GNU Make.
77 # Use --version AND -v, because SGI Make doesn't fail on --version.
78 # Also grep for GNU because newer versions of FreeBSD make do
79 # not complain about `--version' (they seem to silently ignore it).
80 ($MAKE --version -v |
grep GNU
) ||
exit 0
82 # Try with a long-option that do not have a short option equivalent
83 # (here, --no-print-directory). That should cause all options to
84 # appear verbatim in MAKEFLAGS.
85 $MAKE --no-print-directory -k check
>stdout ||
:
87 grep 'FAIL: fail.sh' stdout
88 grep 'PASS: ok.sh' stdout