diff options
Diffstat (limited to 't/txinfo25.sh')
-rwxr-xr-x | t/txinfo25.sh | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/t/txinfo25.sh b/t/txinfo25.sh new file mode 100755 index 000000000..7aa66ae9d --- /dev/null +++ b/t/txinfo25.sh @@ -0,0 +1,111 @@ +#! /bin/sh +# Copyright (C) 2003-2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Check that info files are built in builddir and in srcdir can safely +# co-exist. This setup is obtained by having two info files, only one +# of which being cleaned. +# (Similar to txinfo16.test, plus CLEANFILES). +# (See also txinfo23.test and txinfo24.test). + +required='makeinfo tex texi2dvi-o' +. ./defs || Exit 1 + +cat >> configure.ac << 'END' +AC_OUTPUT +END + +cat > Makefile.am << 'END' +CLEANFILES = [a-m]*.info +info_TEXINFOS = main.texi other.texi +END + +cat > main.texi << 'END' +\input texinfo +@setfilename main.info +@settitle main +@node Top +Hello walls. +@include version.texi +@bye +END + +cat > other.texi << 'END' +\input texinfo +@setfilename other.info +@settitle other +@node Top +Hello walls. +@include version2.texi +@bye +END + +$ACLOCAL +$AUTOMAKE --add-missing +$AUTOCONF + +mkdir build +cd build +../configure +$MAKE +test -f main.info +test ! -f ../main.info +test ! -f other.info +test -f ../other.info + +cd .. +rm -rf build +./configure +$MAKE +test -f main.info +test -f other.info + +# Make sure stamp-vti is older that version.texi. +# (A common situation in a real tree). +# This is needed to test the "subtle" issue described below. +test -f stamp-vti +test -f version.texi +test -f stamp-1 +test -f version2.texi +$sleep +touch stamp-vti +touch stamp-1 + +$MAKE distclean +test -f stamp-vti +test -f stamp-1 +test -f version.texi +test -f version2.texi + +mkdir build +cd build +../configure +$MAKE +# other.info should not be rebuilt in the current directory, since +# it's up-to-date in $(srcdir). +# This can be caused by a subtle issue related to VPATH handling +# of version.texi (see also the comment in texi-vers.am): because +# stamp-vti is newer than version.texi, the 'version.texi: stamp-vti' +# rule is always triggered. Still that's not a reason for 'make' +# to think 'version.texi' has been created... +test -f main.info +test ! -f other.info +$MAKE dvi +test -f main.dvi +test -f other.dvi + +$MAKE distcheck + +: |