tests: never source test-defs.sh directly, source test-lib.sh instead
[automake.git] / t / parallel-tests5.sh
blob1a88ddfcdaf27fa0e81d0770fda34084eba1a5ed
1 #! /bin/sh
2 # Copyright (C) 2009-2012 Free Software Foundation, Inc.
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2, or (at your option)
7 # any later version.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with this program. If not, see <http://www.gnu.org/licenses/>.
17 # Check parallel-tests features:
18 # - concurrent program compilation and testing (with EXTRA_PROGRAMS)
20 # Actually, this test doesn't ensure that things happen concurrently.
21 # It merely serves as demonstration. :-)
23 required='cc native GNUmake'
24 . ./defs || exit 1
26 cat >> configure.ac << 'END'
27 AC_PROG_CC
28 AC_OUTPUT
29 END
31 cat > Makefile.am << 'END'
32 TESTS = $(programs) $(scripts)
33 EXTRA_PROGRAMS = $(programs)
34 CLEANFILES = $(EXTRA_PROGRAMS)
35 dist_noinst_SCRIPTS = $(scripts)
36 programs =
37 scripts =
38 END
40 for i in 1 2 3 4 5 6 7 8; do
41 echo "scripts += foo$i.test" >> Makefile.am
42 echo "programs += foo$i.prog" >> Makefile.am
43 unindent >foo$i.test <<'END'
44 #! /bin/sh
45 echo "this is $0"
46 exit 0
47 END
48 cat >foo$i.c <<'END'
49 int main (void)
51 return 0;
53 END
54 chmod a+x foo$i.test
55 done
57 $ACLOCAL
58 $AUTOCONF
59 $AUTOMAKE -a
61 ./configure
62 $MAKE -j4 check
63 $MAKE distcheck