123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164 |
- #! /bin/sh
- # Copyright (C) 2012-2017 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/>.
- # Texinfo input files using @include directives. Check both in-tree
- # and VPATH builds, and both top-level and subdir input.
- required='makeinfo tex texi2dvi'
- . test-init.sh
- echo AC_OUTPUT >> configure.ac
- cat > Makefile.am << 'END'
- info_TEXINFOS = main.texi sub/more.texi
- main_TEXINFOS = one.texi two.texi three.texi
- sub_more_TEXINFOS = sub/desc.texi sub/hist.texi
- END
- cat > main.texi << 'END'
- \input texinfo
- @setfilename main.info
- @settitle main
- @ifnottex
- @node Top
- @top GNU dummy.
- @menu
- * one:: Chapter one
- * two:: Chapter two
- * three:: Chapter three
- @end menu
- @end ifnottex
- @include one.texi
- @include two.texi
- @include three.texi
- @bye
- END
- cat > one.texi << 'END'
- @node one
- @chapter Chapter one
- Foo bar, baz.
- END
- cat > two.texi << 'END'
- @node two
- @chapter Chapter two
- Blah Blah Blah.
- END
- cat > three.texi << 'END'
- @node three
- @chapter Chapter two
- GNU's Not Unix.
- END
- mkdir sub
- cat > sub/more.texi << 'END'
- \input texinfo
- @setfilename more.info
- @settitle main
- @ifnottex
- @node Top
- @top GNU more.
- @menu
- * desc:: Description of this program
- * hist:: History of this program
- @end menu
- @end ifnottex
- @include desc.texi
- @include hist.texi
- @bye
- END
- cat > sub/desc.texi << 'END'
- @node desc
- @chapter Description of this program
- It does something, really.
- END
- cat > sub/hist.texi << 'END'
- @node hist
- @chapter History of this program
- It was written somehow.
- END
- cat > exp << 'END'
- ./main.info
- ./sub/more.info
- END
- check_info_contents ()
- {
- srcdir=${1-.}
- $FGREP "Foo bar, baz." $srcdir/main.info
- $FGREP "Blah Blah Blah." $srcdir/main.info
- $FGREP "GNU's Not Unix." $srcdir/main.info
- $FGREP 'It does something, really.' $srcdir/sub/more.info
- $FGREP 'It was written somehow.' $srcdir/sub/more.info
- }
- get_info_names ()
- {
- find ${1-.} -type f -name '*.info' | LC_ALL=C sort > got
- }
- check_expected ()
- {
- cat exp
- cat got
- diff exp got
- }
- $ACLOCAL
- $AUTOMAKE --add-missing
- $AUTOCONF
- ./configure
- $MAKE info
- get_info_names
- check_expected
- check_info_contents
- $MAKE dvi
- test -f main.dvi
- test -f sub/more.dvi
- $MAKE maintainer-clean
- test ! -f main.dvi
- test ! -f sub/more.dvi
- test ! -f main.info
- test ! -f sub/more.info
- mkdir build
- cd build
- ../configure
- $MAKE all dvi
- get_info_names ..
- sed 's|^\./|../|' ../exp > exp
- check_expected
- test -f main.dvi
- test -f sub/more.dvi
- check_info_contents ..
- $MAKE distcheck
- :
|