#! /bin/sh # Copyright (C) 2012-2023 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 . # 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 # We avoid apostrophes in the test document since Texinfo # turns them into UTF-8, which is not easy to grep. # 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 three Quux quux quux. 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 "Quux quux quux." $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 :