#! /bin/sh # Copyright (C) 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # # This file is part of GNU Texinfo. # # GNU Texinfo 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 3 of the License, # or (at your option) any later version. # # GNU Texinfo 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 . required='tex' . ./defs || exit 1 set -e # one_run ARGS -- FILES # --------------------- # Run texi2dvi with ARGS, expect the FILES to be left. Remove them. one_run () { # Testing the local build mode. # Use @foo to check that -t works properly. echo "@foo" | create_input_texi TEXI2DVI_pass $(optionset_get 1 "$@") \ -t '@macro foo' \ -t 'Foo' \ -t '@end macro' \ input.texi # There should only be the expected FILES and the input file. assert_and_remove_files $(optionset_get 2 "$@") input.texi } one_run --batch \ -- \ input.aux input.cp input.dvi input.fn input.ky input.log \ input.pg input.tp input.vr one_run --batch -o output.dvi \ -- \ input.aux input.cp input.fn input.ky input.log \ input.pg input.tp input.vr output.dvi # Testing the clean build mode. for mode in --clean --build=clean do # There should only be the DVI and the TEXI file. one_run $mode --batch -- input.dvi # There should only be the DVI and the TEXI file. one_run $mode --batch -o output.dvi -- output.dvi done # Testing the tidy build mode. one_run --build=tidy --batch -o output.dvi \ -- \ output.dvi output.t2d # mostly-clean should remove auxiliary files, but not the expected # output. touch output.dvi one_run --build=tidy --batch -o output.dvi --mostly-clean \ -- \ output.dvi # There should only be the DVI and the TEXI file. create_input_texi