Merge branch 'minor'
[automake.git] / t / built-sources-cond.sh
blob57b6abea41b85e7c50a8a181331167b7300e2b17
1 #! /bin/sh
2 # Copyright (C) 2003-2017 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 <https://www.gnu.org/licenses/>.
17 # Interaction of BUILT_SOURCES with conditionals.
19 . test-init.sh
21 cat >> configure.ac <<'END'
22 AM_CONDITIONAL([COND1], [test $cond1 = yes])
23 AM_CONDITIONAL([COND2], [test $cond2 = yes])
24 AC_OUTPUT
25 END
27 cat > Makefile.am << 'END'
28 if COND1
29 BUILT_SOURCES = a
30 else
31 BUILT_SOURCES = b
32 endif
33 if COND2
34 BUILT_SOURCES += c
35 endif
37 a b c:
38 echo who cares > $@
39 END
41 $ACLOCAL
42 $AUTOMAKE
43 $AUTOCONF
45 cleanup ()
47 # Files in $(BUILT_SOURCES) should be automatically removed
48 # upon maintainer-clean.
49 $MAKE maintainer-clean
50 test ! -f a
51 test ! -f b
52 test ! -f c
55 ./configure cond1=yes cond2=yes
57 $MAKE
58 test -f a
59 test ! -f b
60 test -f c
62 cleanup
64 ./configure cond1=no cond2=yes
66 $MAKE
67 test ! -f a
68 test -f b
69 test -f c
71 cleanup
73 ./configure cond1=yes cond2=no
75 $MAKE
76 test -f a
77 test ! -f b
78 test ! -f c
80 cleanup
82 ./configure cond1=no cond2=no
84 $MAKE
85 test ! -f a
86 test -f b
87 test ! -f c
89 cleanup