Merge branch 'msvc' into maint
[platform/upstream/automake.git] / tests / parallel-tests5.test
1 #! /bin/sh
2 # Copyright (C) 2009, 2010  Free Software Foundation, Inc.
3 #
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.
8 #
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.
13 #
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/>.
16
17 # Check parallel-tests features:
18 # - concurrent program compilation and testing (with EXTRA_PROGRAMS)
19 #
20 # Actually, this test doesn't ensure that things happen concurrently.
21 # It merely serves as demonstration.  :-)
22
23 parallel_tests=yes
24 required=GNUmake
25 . ./defs || Exit 1
26
27 set -e
28
29 cat >> configure.in << 'END'
30 AC_PROG_CC
31 AC_OUTPUT
32 END
33
34 cat > Makefile.am << 'END'
35 TESTS = $(programs) $(scripts)
36 EXTRA_PROGRAMS = $(programs)
37 CLEANFILES = $(EXTRA_PROGRAMS)
38 dist_noinst_SCRIPTS = $(scripts)
39 programs =
40 scripts =
41 END
42
43 for i in 1 2 3 4 5 6 7 8; do
44   echo "scripts += foo$i.test" >> Makefile.am
45   echo "programs += foo$i.prog" >> Makefile.am
46   cat >foo$i.test <<'END'
47 #! /bin/sh
48 echo "this is $0"
49 exit 0
50 END
51   cat >foo$i.c <<'END'
52 int main()
53 {
54   return 0;
55 }
56 END
57   chmod a+x foo$i.test
58 done
59
60 $ACLOCAL
61 $AUTOCONF
62 $AUTOMAKE -a
63
64 ./configure
65 $MAKE -j4 check
66 $MAKE distcheck
67 :