Merge branch 'msvc' into maint
[platform/upstream/automake.git] / tests / txinfo16.test
1 #! /bin/sh
2 # Copyright (C) 2002, 2003, 2008, 2011 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 # Check that info files are normally built in $(srcdir),
18 # not in $(builddir).
19
20 required='makeinfo tex texi2dvi'
21 . ./defs || Exit 1
22
23 set -e
24
25 cat >> configure.in << 'END'
26 AC_OUTPUT
27 END
28
29 cat > Makefile.am << 'END'
30 info_TEXINFOS = main.texi
31 END
32
33 cat > main.texi << 'END'
34 \input texinfo
35 @setfilename main.info
36 @settitle main
37 @node Top
38 Hello walls.
39 @include version.texi
40 @bye
41 END
42
43 $ACLOCAL
44 $AUTOMAKE --add-missing
45 $AUTOCONF
46
47 mkdir build
48 cd build
49 ../configure
50 $MAKE
51 test -f ../main.info
52 test ! -f main.info
53 test -f ../stamp-vti
54 test ! -f stamp-vti
55 test -f ../version.texi
56 test ! -f version.texi
57
58 cd ..
59 rm -rf build make.info* stamp-vti version.texi
60 ./configure
61 $MAKE
62 test -f main.info
63
64 # Make sure stamp-vti is older that version.texi.
65 # (A common situation in a real tree.)
66 # This is needed to test the "subtle" issue described below.
67 test -f stamp-vti
68 test -f version.texi
69 $sleep
70 touch stamp-vti
71
72 $MAKE distclean
73 test -f stamp-vti
74 test -f version.texi
75
76 mkdir build
77 cd build
78 ../configure
79 $MAKE
80 # main.info should not be rebuilt in the current directory, since
81 # it's up-to-date in $(srcdir).
82 # This can be caused by a subtle issue related to VPATH handling
83 # of version.texi (see also the comment in texi-vers.am): because
84 # stamp-vti is newer than version.texi, the `version.texi: stamp-vti'
85 # rule is always triggered.  Still that's not a reason for `make'
86 # to think `version.texi' has been created...
87 test ! -f main.info
88 $MAKE dvi
89 test -f main.dvi
90
91 $MAKE distcheck
92
93 :