ba5d0526e003ba72d4df6920948f769bf402b9c7
[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 3, 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 test: distdir
38         test -f $(distdir)/src
39         test -f $(distdir)/sdir/src2
40 EOF
41
42 cat >>configure.in << 'EOF'
43 AC_CONFIG_FILES(sdir/Makefile)
44 AC_CONFIG_LINKS(src:src)
45 AC_CONFIG_LINKS(sdir/src2:sdir/src2)
46 AC_CONFIG_LINKS(nonmk-subdir/src3:nonmk-subdir/src3)
47 AC_CONFIG_LINKS(sdir/mk-subdir/src4:sdir/mk-subdir/src4)
48 AC_OUTPUT
49 EOF
50
51 $ACLOCAL
52 $AUTOMAKE
53 $AUTOCONF
54
55 mkdir build
56 cd build
57 ../configure
58
59 # TODO: Make sure links are distributed
60 $MAKE test
61
62 # Make sure nothing is deleted by `make clean'
63 $MAKE clean
64
65 test -f ../src
66 test -f ../sdir/src2
67 test -f ../nonmk-subdir/src3
68 test -f ../sdir/mk-subdir/src4
69
70 # Make sure the links are deleted by `make distclean' and the original files
71 # are not.
72 $MAKE distclean
73
74 test -f ../src
75 test -f ../sdir/src2
76 test -f ../nonmk-subdir/src3
77 test -f ../sdir/mk-subdir/src4
78
79 test -r src && Exit 1
80 test -r sdir/src2 && Exit 1
81 test -r nonmk-subdir/src3 && Exit 1
82 test -r sdir/mk-subdir/src4 && Exit 1
83
84 cd ..
85 ./configure
86
87 # TODO: Make sure links are distributed
88 $MAKE test
89
90 # Make sure nothing is deleted by `make distclean'
91 $MAKE distclean
92
93 test -f src
94 test -f sdir/src2
95 test -f nonmk-subdir/src3
96 test -f sdir/mk-subdir/src4