Merge branch 'msvc'
[platform/upstream/automake.git] / tests / pr87.test
1 #! /bin/sh
2 # Copyright (C) 2000, 2001, 2002, 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 # Test for PR automake/87.
18 # "make distcheck" fails when two source dirs exist.
19
20 required=gcc
21 . ./defs || Exit 1
22
23 set -e
24
25 subdirs="foo bar"
26
27 for i in $subdirs; do
28     mkdir $i
29     cat >$i/$i.c <<EOF
30 int main() { return 0; }
31 EOF
32     cat >$i/Makefile.am <<EOF
33 bin_PROGRAMS = $i
34 ${i}_SOURCES = $i.c
35 EOF
36 done
37
38 echo "SUBDIRS = $subdirs" > Makefile.am
39 cat >configure.in <<EOF
40 AC_INIT(`echo $subdirs | sed 's|\([a-z][a-z]*\).*|\1/\1.c|'`)
41 AC_CONFIG_AUX_DIR(.)
42 AM_INIT_AUTOMAKE($me, 1.0)
43 AC_PROG_CC
44 AC_OUTPUT(Makefile `echo $subdirs | sed 's|\([a-z][a-z]*\)|\1/Makefile|g'`)
45 EOF
46
47 # Ignore user CFLAGS.
48 CFLAGS=
49 export CFLAGS
50
51 mkdir build
52
53 $ACLOCAL
54 $AUTOCONF
55 $AUTOMAKE -a
56
57 # Regression test for bug where `.c.o:' is followed by blank line.
58 (while read line; do
59     if test "$line" = ".c.o:"; then
60        read next
61        if test -z "$next"; then
62           Exit 1
63        else
64           : # for shells with broken 'set -e'
65        fi
66        break
67     fi
68  done) < foo/Makefile.in || Exit 1
69
70 cd build
71 ../configure
72 $MAKE distcheck
73
74 :