From 5646c7ba208d5d169f2e240de61e5222d47e9bd7 Mon Sep 17 00:00:00 2001 From: Alexandre Duret-Lutz Date: Sat, 30 Nov 2002 16:51:14 +0000 Subject: [PATCH] * automake.in (scan_texinfo_file): Honor only the first @setfilename. * tests/texinfo17.test: New file. * tests/Makefile.am (TESTS): Add texinfo17.test. Reported by Karl Berry. --- ChangeLog | 5 +++++ automake.in | 5 +++++ tests/Makefile.am | 1 + tests/Makefile.in | 1 + tests/texinfo17.test | 45 ++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 57 insertions(+) create mode 100755 tests/texinfo17.test diff --git a/ChangeLog b/ChangeLog index 7e724eff..b26bfe06 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2002-11-30 Alexandre Duret-Lutz + * automake.in (scan_texinfo_file): Honor only the first @setfilename. + * tests/texinfo17.test: New file. + * tests/Makefile.am (TESTS): Add texinfo17.test. + Reported by Karl Berry. + For PR automake/357: * automake.in (require_file_internal): Don't complain a file is "not found" when it is a target. Make sure "not found" files are otherwise diff --git a/automake.in b/automake.in index 6bc5038d..409943a4 100755 --- a/automake.in +++ b/automake.in @@ -3682,6 +3682,11 @@ sub scan_texinfo_file { if (/^\@setfilename +(\S+)/) { + # Honor only the first @setfilename. (It's possible to have + # more occurences later if the manual shows examples of how + # to use @setfilename...) + next if $outfile; + $outfile = $1; if ($outfile =~ /\.(.+)$/ && $1 ne 'info') { diff --git a/tests/Makefile.am b/tests/Makefile.am index cb5040c7..99d47cb7 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -411,6 +411,7 @@ texinfo9.test \ texinfo10.test \ texinfo13.test \ texinfo16.test \ +texinfo17.test \ transform.test \ unused.test \ vars.test \ diff --git a/tests/Makefile.in b/tests/Makefile.in index aa605019..f4659505 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -504,6 +504,7 @@ texinfo9.test \ texinfo10.test \ texinfo13.test \ texinfo16.test \ +texinfo17.test \ transform.test \ unused.test \ vars.test \ diff --git a/tests/texinfo17.test b/tests/texinfo17.test new file mode 100755 index 00000000..60ecdd32 --- /dev/null +++ b/tests/texinfo17.test @@ -0,0 +1,45 @@ +#! /bin/sh +# Copyright (C) 2002 Free Software Foundation, Inc. +# +# This file is part of GNU Automake. +# +# GNU Automake 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. +# +# GNU Automake 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 autoconf; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +# Make sure Automake uses the _first_ @setfilname it sees. +# Report from Karl Berry. + +. ./defs || exit 1 + +set -e + +cat > Makefile.am << 'END' +info_TEXINFOS = texinfo.texi +END + +cat > texinfo.texi << 'END' +@setfilename texinfo +... +@verbatim +@setfilename example.info +@end verbatim +... +END + +$ACLOCAL +$AUTOMAKE --add-missing + +grep 'example' Makefile.in && exit 1 +grep 'texinfo:' Makefile.in -- 2.43.5