am-ft: make the environment available earlier
[platform/upstream/automake.git] / t / distcom2.sh
1 #! /bin/sh
2 # Copyright (C) 2001-2013 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 # Test to make sure that depcomp and compile are added to DIST_COMMON.
18 # Report from Pavel Roskin.  Report of problems with '--no-force' from
19 # Scott James Remnant (Debian #206299)
20
21 . test-init.sh
22
23 cat >> configure.ac << 'END'
24 AC_PROG_CC
25 AC_CONFIG_FILES([subdir/Makefile])
26 AC_OUTPUT
27 END
28
29 cat > Makefile.am << 'END'
30 SUBDIRS = subdir
31 END
32
33 mkdir subdir
34 : > subdir/foo.c
35
36 cat > subdir/Makefile.am << 'END'
37 noinst_PROGRAMS = foo
38 foo_SOURCES = foo.c
39 foo_CFLAGS = -DBAR
40 END
41
42 $ACLOCAL
43
44 for opt in '' --no-force; do
45
46   rm -f compile depcomp
47
48   $AUTOMAKE $opt --add-missing
49
50   test -f compile
51   test -f depcomp
52
53   for dir in . subdir; do
54     # FIXME: the logic of this check and other similar ones in other
55     # FIXME: 'distcom*.sh' files should be factored out in a common
56     # FIXME: subroutine in 'am-test-lib.sh'...
57     sed -n -e "
58       /^DIST_COMMON =.*\\\\$/ {
59         :loop
60         p
61         n
62         t clear
63         :clear
64         s/\\\\$/\\\\/
65         t loop
66         s/$/ /
67         s/[$tab ][$tab ]*/ /g
68         p
69         n
70       }" $dir/Makefile.in > $dir/dc.txt
71   done
72
73   cat dc.txt # For debugging.
74   cat subdir/dc.txt # Likewise.
75
76   $FGREP ' $(top_srcdir)/depcomp ' subdir/dc.txt
77   # The 'compile' script will be listed in the DIST_COMMON of the top-level
78   # Makefile because it's required in configure.ac (by AC_PROG_CC).
79   $FGREP ' $(top_srcdir)/compile ' dc.txt || $FGREP ' compile ' dc.txt
80
81 done
82
83 :