Merge branch 'msvc' into maint
[platform/upstream/automake.git] / tests / conflnk4.test
1 #! /bin/sh
2 # Copyright (C) 2003, 2008 Free Software Foundation, Inc.
3 #
4 # This file is part of GNU Automake.
5 #
6 # GNU Automake is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2, or (at your option)
9 # any later version.
10 #
11 # GNU Automake is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with Automake; see the file COPYING.  If not, write to
18 # the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 # Boston, MA 02110-1301, USA.
20
21 # Test to make sure links to _identical files_ created by AC_CONFIG_LINKS get
22 # removed with `make distclean' only if doing a VPATH build.
23
24 . ./defs || Exit 1
25
26 set -e
27
28 mkdir nonmk-subdir sdir sdir/mk-subdir
29 : > src
30 : > sdir/Makefile.am
31 : > sdir/src2
32 : > nonmk-subdir/src3
33 : > sdir/mk-subdir/src4
34
35 cat >> Makefile.am <<'EOF'
36 SUBDIRS = sdir
37 .PHONY: test
38 test: distdir
39         test -f $(distdir)/src
40         test -f $(distdir)/sdir/src2
41         test -f $(distdir)/nonmk-subdir/src3
42         test -f $(distdir)/sdir/mk-subdir/src4
43 EOF
44
45 cat >>configure.in << 'EOF'
46 AC_CONFIG_FILES([sdir/Makefile])
47 AC_CONFIG_LINKS([src:src])
48 AC_CONFIG_LINKS([sdir/src2:sdir/src2])
49 AC_CONFIG_LINKS([nonmk-subdir/src3:nonmk-subdir/src3])
50 AC_CONFIG_LINKS([sdir/mk-subdir/src4:sdir/mk-subdir/src4])
51 AC_OUTPUT
52 EOF
53
54 $ACLOCAL
55 $AUTOMAKE
56 $AUTOCONF
57
58 mkdir build
59 cd build
60 ../configure
61
62 $MAKE test
63
64 # Make sure nothing is deleted by `make clean'
65 $MAKE clean
66
67 test -f ../src
68 test -f ../sdir/src2
69 test -f ../nonmk-subdir/src3
70 test -f ../sdir/mk-subdir/src4
71
72 # Make sure the links are deleted by `make distclean' and the original files
73 # are not.
74 $MAKE distclean
75
76 test -f ../src
77 test -f ../sdir/src2
78 test -f ../nonmk-subdir/src3
79 test -f ../sdir/mk-subdir/src4
80
81 test -r src && Exit 1
82 test -r sdir/src2 && Exit 1
83 test -r nonmk-subdir/src3 && Exit 1
84 test -r sdir/mk-subdir/src4 && Exit 1
85
86 cd ..
87 ./configure
88
89 $MAKE test
90
91 # Make sure nothing is deleted by `make distclean'
92 $MAKE distclean
93
94 test -f src
95 test -f sdir/src2
96 test -f nonmk-subdir/src3
97 test -f sdir/mk-subdir/src4
98
99 :