From 674d93f51c27ced9a24494c8fedbc45eebf340ae Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sun, 25 Feb 2001 04:37:51 +0000 Subject: [PATCH] * Makefile.am (amfiles): Added texibuild.am. * texibuild.am: New file. * tests/Makefile.am (TESTS): Added texinfo9.test. * tests/texinfo9.test: New file. * automake.in (handle_texinfo): Keep track of suffixes used. Give error if suffix unrecognized. Removed extraneous newline. --- ChangeLog | 11 ++++- Makefile.am | 2 +- Makefile.in | 79 ++++++++++--------------------- TODO | 3 ++ automake.in | 19 +++++++- lib/am/Makefile.am | 2 +- lib/am/texibuild.am | 54 +++++++++++++++++++++ lib/am/texinfos.am | 111 -------------------------------------------- tests/Makefile.am | 1 + tests/Makefile.in | 23 ++++----- tests/texinfo9.test | 20 ++++++++ texibuild.am | 54 +++++++++++++++++++++ texinfos.am | 111 -------------------------------------------- 13 files changed, 198 insertions(+), 292 deletions(-) create mode 100644 lib/am/texibuild.am create mode 100755 tests/texinfo9.test create mode 100644 texibuild.am diff --git a/ChangeLog b/ChangeLog index 0ce8de17..91db7f88 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,18 @@ +2001-02-24 Tom Tromey + + * Makefile.am (amfiles): Added texibuild.am. + * texibuild.am: New file. + * tests/Makefile.am (TESTS): Added texinfo9.test. + * tests/texinfo9.test: New file. + * automake.in (handle_texinfo): Keep track of suffixes used. Give + error if suffix unrecognized. Removed extraneous newline. + 2001-02-23 Akim Demaille * automake.in (&am_install_var): Don't hook on the clean targets and .PHONY. * data-clean.am, java-clean.am, libs-clean.am, lisp-clean.am, - * ltlib-clean.am, progs-clean.am, python-clean.am, tags-clean.am: + * ltlib-clean.am, progs-clean.am, python-clean.am, tags-clean.am: Do it. 2001-02-23 Akim Demaille diff --git a/Makefile.am b/Makefile.am index fd07f4c0..9d44ebae 100644 --- a/Makefile.am +++ b/Makefile.am @@ -17,7 +17,7 @@ java-clean.am java.am kr-extra.am library.am libs-clean.am libs.am \ libtool.am lisp-clean.am lisp.am ltlib-clean.am ltlib.am ltlibrary.am \ mans-vars.am mans.am multilib.am program.am progs-clean.am progs.am \ python.am python-clean.am remake-hdr.am remake.am scripts.am \ -subdirs.am tags-clean.am tags.am texi-vers.am texinfos.am +subdirs.am tags-clean.am tags.am texi-vers.am texinfos.am texibuild.am dist_pkgdata_DATA = COPYING INSTALL texinfo.tex ansi2knr.c ansi2knr.1 \ $(amfiles) diff --git a/Makefile.in b/Makefile.in index f8fcadee..5508d55e 100644 --- a/Makefile.in +++ b/Makefile.in @@ -92,7 +92,7 @@ java-clean.am java.am kr-extra.am library.am libs-clean.am libs.am \ libtool.am lisp-clean.am lisp.am ltlib-clean.am ltlib.am ltlibrary.am \ mans-vars.am mans.am multilib.am program.am progs-clean.am progs.am \ python.am python-clean.am remake-hdr.am remake.am scripts.am \ -subdirs.am tags-clean.am tags.am texi-vers.am texinfos.am +subdirs.am tags-clean.am tags.am texi-vers.am texinfos.am texibuild.am dist_pkgdata_DATA = COPYING INSTALL texinfo.tex ansi2knr.c ansi2knr.1 \ @@ -130,12 +130,12 @@ DVIS = automake.dvi TEXINFOS = automake.texi DATA = $(dist_pkgdata_DATA) $(dist_script_DATA) -DIST_COMMON = mkinstalldirs automake.in install-sh version.texi \ -aclocal.m4 README-alpha ansi2knr.c Makefile.am mdate-sh NEWS COPYING \ -stamp-vti ansi2knr.1 AUTHORS compile Makefile.in configure.in README \ -depcomp THANKS configure ylwrap elisp-comp py-compile ChangeLog missing \ -config.sub texinfo.tex INSTALL $(dist_script_DATA) aclocal.in \ -config.guess TODO $(dist_pkgdata_DATA) +DIST_COMMON = README $(dist_pkgdata_DATA) $(dist_script_DATA) AUTHORS \ +COPYING ChangeLog INSTALL Makefile.am Makefile.in NEWS README-alpha \ +THANKS TODO aclocal.in aclocal.m4 ansi2knr.1 ansi2knr.c automake.in \ +compile config.guess config.sub configure configure.in depcomp \ +elisp-comp install-sh mdate-sh missing mkinstalldirs py-compile \ +stamp-vti texinfo.tex version.texi ylwrap DIST_SUBDIRS = $(SUBDIRS) all: all-recursive @@ -206,7 +206,6 @@ maintainer-clean-vti: automake.info: automake.texi $(srcdir)/version.texi automake.dvi: automake.texi $(srcdir)/version.texi - DVIPS = dvips .texi.info: @@ -222,34 +221,6 @@ DVIPS = dvips @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] cd $(srcdir) \ && $(MAKEINFO) `echo $< | sed 's,.*/,,'` - -.texinfo.info: - @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] - cd $(srcdir) \ - && $(MAKEINFO) `echo $< | sed 's,.*/,,'` - -.texinfo: - @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] - cd $(srcdir) \ - && $(MAKEINFO) `echo $< | sed 's,.*/,,'` - -.texinfo.dvi: - TEXINPUTS=$(srcdir):$$TEXINPUTS \ - MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< - -.txi.info: - @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] - cd $(srcdir) \ - && $(MAKEINFO) `echo $< | sed 's,.*/,,'` - -.txi.dvi: - TEXINPUTS=$(srcdir):$$TEXINPUTS \ - MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< - -.txi: - @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] - cd $(srcdir) \ - && $(MAKEINFO) `echo $< | sed 's,.*/,,'` .dvi.ps: $(DVIPS) $< -o $@ @@ -572,9 +543,27 @@ maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -rm -f Makefile.in +clean: clean-recursive + +clean-am: clean-generic mostlyclean-am + +dist-all: dist + +distclean: distclean-recursive + -rm -f config.status + +distclean-am: clean-am distclean-generic distclean-tags + +maintainer-clean: maintainer-clean-recursive + -rm -f config.status + maintainer-clean-am: distclean-am maintainer-clean-aminfo \ maintainer-clean-generic maintainer-clean-vti +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-aminfo mostlyclean-generic mostlyclean-vti + .PHONY: all all-am all-recursive check check-am check-recursive clean \ clean-generic clean-recursive dist dist-all distcheck distclean \ distclean-generic distclean-recursive distclean-tags distdir \ @@ -593,24 +582,6 @@ maintainer-clean-am: distclean-am maintainer-clean-aminfo \ uninstall-dist_pkgdataDATA uninstall-dist_scriptDATA \ uninstall-info uninstall-recursive -distclean: distclean-recursive - -rm -f config.status - -clean-am: clean-generic mostlyclean-am - -distclean-am: clean-am distclean-generic distclean-tags - -dist-all: dist - -maintainer-clean: maintainer-clean-recursive - -rm -f config.status - -mostlyclean-am: mostlyclean-aminfo mostlyclean-generic mostlyclean-vti - -mostlyclean: mostlyclean-recursive - -clean: clean-recursive - install-data-hook: @$(POST_INSTALL) diff --git a/TODO b/TODO index 8750ae60..fbf67c01 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,6 @@ +add an error if the user makefile.am violates our + namespace rules + have 'make check' print tests which are skipped we need a document describing automake from the end user's point of view diff --git a/automake.in b/automake.in index d172437e..44889c15 100755 --- a/automake.in +++ b/automake.in @@ -2290,11 +2290,20 @@ sub handle_texinfo my @texi_cleans; my $canonical; + my %texi_suffixes; foreach my $info_cursor (@texis) { my $infobase = $info_cursor; $infobase =~ s/\.(txi|texinfo|texi)$//; + if ($infobase eq $info_cursor) + { + # FIXME: report line number. + &am_error ("texinfo file \`$info_cursor' has unrecognized extension"); + next; + } + $texi_suffixes{$1} = 1; + # If 'version.texi' is referenced by input file, then include # automatic versioning capability. my ($out_file, $vtexi) = &scan_texinfo_file ($relative_dir @@ -2368,7 +2377,7 @@ sub handle_texinfo . join (' ', @texi_deps) . "\n" . $infobase . ".dvi: " . join (' ', @texi_deps) - . "\n\n"); + . "\n"); push (@info_deps_list, $out_file); push (@dvis_list, $infobase . '.dvi'); @@ -2424,12 +2433,18 @@ sub handle_texinfo $texinfodir = '$(srcdir)'; $need_texi_file = 1; } + my $xform = &transform ('TEXINFODIR' => $texinfodir, 'TEXICLEAN' => &pretty_print_internal ("\t-rm -f", "\t ", @texi_cleans)); - + foreach my $txsfx (sort keys %texi_suffixes) + { + $output_rules .= &file_contents ('texibuild', + $xform + . &transform ('SUFFIX' => $txsfx)); + } $output_rules .= &file_contents ('texinfos', $xform); push (@dist_targets, 'dist-info'); diff --git a/lib/am/Makefile.am b/lib/am/Makefile.am index fd07f4c0..9d44ebae 100644 --- a/lib/am/Makefile.am +++ b/lib/am/Makefile.am @@ -17,7 +17,7 @@ java-clean.am java.am kr-extra.am library.am libs-clean.am libs.am \ libtool.am lisp-clean.am lisp.am ltlib-clean.am ltlib.am ltlibrary.am \ mans-vars.am mans.am multilib.am program.am progs-clean.am progs.am \ python.am python-clean.am remake-hdr.am remake.am scripts.am \ -subdirs.am tags-clean.am tags.am texi-vers.am texinfos.am +subdirs.am tags-clean.am tags.am texi-vers.am texinfos.am texibuild.am dist_pkgdata_DATA = COPYING INSTALL texinfo.tex ansi2knr.c ansi2knr.1 \ $(amfiles) diff --git a/lib/am/texibuild.am b/lib/am/texibuild.am new file mode 100644 index 00000000..0faf14dd --- /dev/null +++ b/lib/am/texibuild.am @@ -0,0 +1,54 @@ +## automake - create Makefile.in from Makefile.am +## Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +## 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, write to the Free Software +## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +## 02111-1307, USA. + +.@SUFFIX@.info: +## We want to force the .info file to be built in srcdir. This is +## probably the simplest way. However, at Cygnus .info files are +## always put into the build directory. So at runtime we select which +## rule to use. +## Note that we also remove the possible output files before running +## makeinfo. Otherwise, if the texinfo file shrinks (or if you start +## using --no-split), you'll be left with some dead info files lying +## around -- dead files which will end up in the distribution. +?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] +?!CYGNUS? cd $(srcdir) \ +?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` +?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] +?CYGNUS? $(MAKEINFO) -I $(srcdir) $< + +.@SUFFIX@.dvi: + TEXINPUTS=@TEXINFODIR@:$$TEXINPUTS \ +## Must set MAKEINFO like this so that version.texi will be found even +## if it is in srcdir. + MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< + +.@SUFFIX@: +## We want to force the .info file to be built in srcdir. This is +## probably the simplest way. However, at Cygnus .info files are +## always put into the build directory. So at runtime we select which +## rule to use. +## Note that we also remove the possible output files before running +## makeinfo. Otherwise, if the texinfo file shrinks (or if you start +## using --no-split), you'll be left with some dead info files lying +## around -- dead files which will end up in the distribution. +?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] +?!CYGNUS? cd $(srcdir) \ +?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` +?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] +?CYGNUS? $(MAKEINFO) -I $(srcdir) $< diff --git a/lib/am/texinfos.am b/lib/am/texinfos.am index 6db30f5f..b5236427 100644 --- a/lib/am/texinfos.am +++ b/lib/am/texinfos.am @@ -17,117 +17,6 @@ ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA ## 02111-1307, USA. -## FIXME: should repeat all the stuff in this file. Instead should -## generate the contents in a smarter way. - -.texi.info: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.texi.dvi: - TEXINPUTS=@TEXINFODIR@:$$TEXINPUTS \ -## Must set MAKEINFO like this so that version.texi will be found even -## if it is in srcdir. - MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< - -.texi: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.texinfo.info: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.texinfo: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.texinfo.dvi: - TEXINPUTS=@TEXINFODIR@:$$TEXINPUTS \ -## Must set MAKEINFO like this so that version.texi will be found even -## if it is in srcdir. - MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< - -.txi.info: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.txi.dvi: - TEXINPUTS=@TEXINFODIR@:$$TEXINPUTS \ -## Must set MAKEINFO like this so that version.texi will be found even -## if it is in srcdir. - MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< - -.txi: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - ## The way to make PostScript, for those who want it. DVIPS = dvips .dvi.ps: diff --git a/tests/Makefile.am b/tests/Makefile.am index 1c46b23d..ed84158a 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -259,6 +259,7 @@ texinfo5.test \ texinfo6.test \ texinfo7.test \ texinfo8.test \ +texinfo9.test \ unused.test \ version.test \ version2.test \ diff --git a/tests/Makefile.in b/tests/Makefile.in index 807ed84d..c9327577 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -336,6 +336,7 @@ texinfo5.test \ texinfo6.test \ texinfo7.test \ texinfo8.test \ +texinfo9.test \ unused.test \ version.test \ version2.test \ @@ -482,28 +483,28 @@ maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -rm -f Makefile.in -maintainer-clean-am: distclean-am maintainer-clean-generic +clean: clean-am -.PHONY: all all-am check check-TESTS check-am clean clean-generic \ - distclean distclean-generic distdir dvi dvi-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-strip installcheck installcheck-am \ - installdirs maintainer-clean maintainer-clean-generic \ - mostlyclean mostlyclean-generic uninstall uninstall-am +clean-am: clean-generic mostlyclean-am distclean: distclean-am -clean-am: clean-generic mostlyclean-am - distclean-am: clean-am distclean-generic distclean-local maintainer-clean: maintainer-clean-am -mostlyclean-am: mostlyclean-generic +maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am -clean: clean-am +mostlyclean-am: mostlyclean-generic + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + distclean distclean-generic distdir dvi dvi-am info info-am \ + install install-am install-data install-data-am install-exec \ + install-exec-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic uninstall uninstall-am distclean-local: diff --git a/tests/texinfo9.test b/tests/texinfo9.test new file mode 100755 index 00000000..5ae8c065 --- /dev/null +++ b/tests/texinfo9.test @@ -0,0 +1,20 @@ +#! /bin/sh + +# Make sure we only create dist-info target once. +# This is just an example -- basically for many targets in texinfos.am +# we only want them to appear once. + +. $srcdir/defs || exit 1 + +cat > Makefile.am << 'END' +info_TEXINFOS = maude.texi liver.txi heart.texinfo +END + +echo '@setfilename maude.info' > maude.texi +echo '@setfilename liver.info' > liver.txi +echo '@setfilename heart.info' > heart.texinfo +: > texinfo.tex + +$AUTOMAKE || exit 1 + +test `grep '^dist-info:' Makefile.in | wc -l` -eq 1 diff --git a/texibuild.am b/texibuild.am new file mode 100644 index 00000000..0faf14dd --- /dev/null +++ b/texibuild.am @@ -0,0 +1,54 @@ +## automake - create Makefile.in from Makefile.am +## Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 +## 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, write to the Free Software +## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +## 02111-1307, USA. + +.@SUFFIX@.info: +## We want to force the .info file to be built in srcdir. This is +## probably the simplest way. However, at Cygnus .info files are +## always put into the build directory. So at runtime we select which +## rule to use. +## Note that we also remove the possible output files before running +## makeinfo. Otherwise, if the texinfo file shrinks (or if you start +## using --no-split), you'll be left with some dead info files lying +## around -- dead files which will end up in the distribution. +?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] +?!CYGNUS? cd $(srcdir) \ +?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` +?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] +?CYGNUS? $(MAKEINFO) -I $(srcdir) $< + +.@SUFFIX@.dvi: + TEXINPUTS=@TEXINFODIR@:$$TEXINPUTS \ +## Must set MAKEINFO like this so that version.texi will be found even +## if it is in srcdir. + MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< + +.@SUFFIX@: +## We want to force the .info file to be built in srcdir. This is +## probably the simplest way. However, at Cygnus .info files are +## always put into the build directory. So at runtime we select which +## rule to use. +## Note that we also remove the possible output files before running +## makeinfo. Otherwise, if the texinfo file shrinks (or if you start +## using --no-split), you'll be left with some dead info files lying +## around -- dead files which will end up in the distribution. +?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] +?!CYGNUS? cd $(srcdir) \ +?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` +?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] +?CYGNUS? $(MAKEINFO) -I $(srcdir) $< diff --git a/texinfos.am b/texinfos.am index 6db30f5f..b5236427 100644 --- a/texinfos.am +++ b/texinfos.am @@ -17,117 +17,6 @@ ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA ## 02111-1307, USA. -## FIXME: should repeat all the stuff in this file. Instead should -## generate the contents in a smarter way. - -.texi.info: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.texi.dvi: - TEXINPUTS=@TEXINFODIR@:$$TEXINPUTS \ -## Must set MAKEINFO like this so that version.texi will be found even -## if it is in srcdir. - MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< - -.texi: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.texinfo.info: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.texinfo: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.texinfo.dvi: - TEXINPUTS=@TEXINFODIR@:$$TEXINPUTS \ -## Must set MAKEINFO like this so that version.texi will be found even -## if it is in srcdir. - MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< - -.txi.info: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - -.txi.dvi: - TEXINPUTS=@TEXINFODIR@:$$TEXINPUTS \ -## Must set MAKEINFO like this so that version.texi will be found even -## if it is in srcdir. - MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< - -.txi: -## We want to force the .info file to be built in srcdir. This is -## probably the simplest way. However, at Cygnus .info files are -## always put into the build directory. So at runtime we select which -## rule to use. -## Note that we also remove the possible output files before running -## makeinfo. Otherwise, if the texinfo file shrinks (or if you start -## using --no-split), you'll be left with some dead info files lying -## around -- dead files which will end up in the distribution. -?!CYGNUS? @cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] -?!CYGNUS? cd $(srcdir) \ -?!CYGNUS? && $(MAKEINFO) `echo $< | sed 's,.*/,,'` -?CYGNUS? @rm -f $@ $@-[0-9] $@-[0-9][0-9] -?CYGNUS? $(MAKEINFO) -I $(srcdir) $< - ## The way to make PostScript, for those who want it. DVIPS = dvips .dvi.ps: -- 2.43.5