]> git.ipfire.org Git - thirdparty/automake.git/commitdiff
2003-03-14 Richard Dawe <rich@phekda.freeserve.co.uk>
authorAlexandre Duret-Lutz <adl@gnu.org>
Mon, 14 Apr 2003 19:59:30 +0000 (19:59 +0000)
committerAlexandre Duret-Lutz <adl@gnu.org>
Mon, 14 Apr 2003 19:59:30 +0000 (19:59 +0000)
            Alexandre Duret-Lutz  <adl@gnu.org>

        * automake.in (output_texinfo_build_rules, handle_texinfo_helper,
        initialize_per_input):  Add infrastructure for generating HTML
        documentation from texinfo source.
        * lib/am/texinfos.am: Add rules for building HTML documentation
        from texinfo source.
        * lib/am/texibuild.am: Likewise.
        * automake.texi (Texinfo): Document rules for building
        HTML documentation from texinfo source.
        * tests/txinfo21.test: New file.
        * tests/Makefile.am (TESTS): Add txinfo21.test.
* tests/defs.in: Handle required=makeinfo-html.

16 files changed:
ChangeLog
Makefile.in
NEWS
automake.in
automake.texi
lib/Automake/Makefile.in
lib/Automake/tests/Makefile.in
lib/Makefile.in
lib/am/Makefile.in
lib/am/texibuild.am
lib/am/texinfos.am
m4/Makefile.in
tests/Makefile.am
tests/Makefile.in
tests/defs.in
tests/txinfo21.test [new file with mode: 0755]

index 0ed1cecd7aeb4209b45f7579da3d32bdd112deee..ca9ca86a7c8bd5bc6bc342aa9d4e0acee2d28b76 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2003-03-14  Richard Dawe  <rich@phekda.freeserve.co.uk>
+           Alexandre Duret-Lutz  <adl@gnu.org>
+
+       * automake.in (output_texinfo_build_rules, handle_texinfo_helper,
+       initialize_per_input):  Add infrastructure for generating HTML
+       documentation from texinfo source.
+       * lib/am/texinfos.am: Add rules for building HTML documentation
+       from texinfo source.
+       * lib/am/texibuild.am: Likewise.
+       * automake.texi (Texinfo): Document rules for building
+       HTML documentation from texinfo source.
+       * tests/txinfo21.test: New file.
+       * tests/Makefile.am (TESTS): Add txinfo21.test.
+       * tests/defs.in: Handle required=makeinfo-html.
+
 2003-04-14  Alexandre Duret-Lutz  <adl@gnu.org>
 
        * automake.in (%silent_variable_override): New variable.
index 588a5c9d1e7141691b1f37508cb921dc1b6f86fe..439f2914f9c9a5590fe6f37b12acd99d449b2ee0 100644 (file)
@@ -55,15 +55,16 @@ INFO_DEPS = automake.info
 DVIS = automake.dvi
 PDFS = automake.pdf
 PSS = automake.ps
+HTMLS = automake.html
 TEXINFOS = automake.texi
 TEXI2DVI = texi2dvi
 TEXI2PDF = $(TEXI2DVI) --pdf --batch
 DVIPS = dvips
 RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
-       ps-recursive install-info-recursive uninstall-info-recursive \
-       all-recursive install-data-recursive install-exec-recursive \
-       installdirs-recursive install-recursive uninstall-recursive \
-       check-recursive installcheck-recursive
+       ps-recursive html-recursive install-info-recursive \
+       uninstall-info-recursive all-recursive install-data-recursive \
+       install-exec-recursive installdirs-recursive install-recursive \
+       uninstall-recursive check-recursive installcheck-recursive
 ETAGS = etags
 ETAGSFLAGS = 
 CTAGS = ctags
@@ -176,7 +177,7 @@ texinfo.tex
 all: all-recursive
 
 .SUFFIXES:
-.SUFFIXES: .dvi .info .pdf .ps .texi
+.SUFFIXES: .dvi .html .info .pdf .ps .texi
 
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno
@@ -242,9 +243,14 @@ uninstall-binSCRIPTS:
        TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
        MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
        $(TEXI2PDF) $<
+
+.texi.html:
+       $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) --html -I $(srcdir) \
+        -o $@ $<
 automake.info: automake.texi version.texi
 automake.dvi: automake.texi version.texi
 automake.pdf: automake.texi version.texi
+automake.html: automake.texi version.texi
 version.texi:  stamp-vti
 stamp-vti: automake.texi $(top_srcdir)/configure
        @(dir=.; test -f ./automake.texi || dir=$(srcdir); \
@@ -306,11 +312,12 @@ dist-info: $(INFO_DEPS)
        done
 
 mostlyclean-aminfo:
-       -rm -f automake.aux automake.cm automake.cp automake.cps automake.cv \
+       -rm -rf automake.aux automake.cm automake.cp automake.cps automake.cv \
          automake.fn automake.ky automake.kys automake.log automake.op \
          automake.ov automake.pg automake.pgs automake.tmp \
          automake.toc automake.tp automake.tps automake.tr automake.vr \
-         automake.vrs automake.dvi automake.pdf automake.ps
+         automake.vrs automake.dvi automake.pdf automake.ps \
+         automake.html
 
 maintainer-clean-aminfo:
        @list='$(INFO_DEPS)'; for i in $$list; do \
@@ -620,6 +627,10 @@ dvi: dvi-recursive
 
 dvi-am: $(DVIS)
 
+html: html-recursive
+
+html-am: $(HTMLS)
+
 info: info-recursive
 
 info-am: $(INFO_DEPS)
@@ -691,19 +702,20 @@ uninstall-info: uninstall-info-recursive
        dist-all dist-bzip2 dist-gzip dist-info distcheck distclean \
        distclean-generic distclean-recursive distclean-tags \
        distcleancheck distdir distuninstallcheck dvi dvi-am \
-       dvi-recursive info info-am info-recursive install install-am \
-       install-binSCRIPTS install-data install-data-am \
-       install-data-recursive install-exec install-exec-am \
-       install-exec-recursive install-info install-info-am \
-       install-info-recursive install-man install-recursive \
-       install-strip installcheck installcheck-am installdirs \
-       installdirs-am installdirs-recursive maintainer-clean \
-       maintainer-clean-aminfo maintainer-clean-generic \
-       maintainer-clean-recursive maintainer-clean-vti mostlyclean \
-       mostlyclean-aminfo mostlyclean-generic mostlyclean-recursive \
-       mostlyclean-vti pdf pdf-am pdf-recursive ps ps-am ps-recursive \
-       tags tags-recursive uninstall uninstall-am uninstall-binSCRIPTS \
-       uninstall-info-am uninstall-info-recursive uninstall-recursive
+       dvi-recursive html html-am html-recursive info info-am \
+       info-recursive install install-am install-binSCRIPTS \
+       install-data install-data-am install-data-recursive \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+       installdirs installdirs-am installdirs-recursive \
+       maintainer-clean maintainer-clean-aminfo \
+       maintainer-clean-generic maintainer-clean-recursive \
+       maintainer-clean-vti mostlyclean mostlyclean-aminfo \
+       mostlyclean-generic mostlyclean-recursive mostlyclean-vti pdf \
+       pdf-am pdf-recursive ps ps-am ps-recursive tags tags-recursive \
+       uninstall uninstall-am uninstall-binSCRIPTS uninstall-info-am \
+       uninstall-info-recursive uninstall-recursive
 
 
 install-exec-hook:
diff --git a/NEWS b/NEWS
index 044a36e21c22f8ccbb90f6c96e24c5b7cb4c9e27..77a989d175afeece8a5758231f8ec79bbe2aa474 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -57,8 +57,6 @@ New in 1.7a:
   versions of Automake, because AC_PROG_CC defines this variable since
   Autoconf 2.54.)
 
-* Texinfo rules back up and restore info files when makeinfo fails.
-
 * AR's `cru' flags are now set in a global ARFLAGS variable instead
   of being hard-coded in each $(AR) invocation, so they can be
   substituted from configure.ac.  This has been requested by people
@@ -66,6 +64,25 @@ New in 1.7a:
 
 * New warning option: -Woverride.  This will warn about any user
   target or variable definitions which override Automake definitions.
+
+* Texinfo rules back up and restore info files when makeinfo fails.
+
+* Texinfo rules now support the `html' target.
+  Running this requires Texinfo 4.0 or greater.
+
+  `html' is a new recursive target, so if your package mixes
+  hand-crafted `Makefile.in's with Automake-generated `Makefile.in's,
+  you should adjust the former to support (or ignore) this target so
+  that `make html' recurses successfully.  If you had a custom `html'
+  rule in your `Makefile.am', it's better to rename it as `html-local',
+  otherwise your rule will override Automake's new rule (you can check
+  that by running `automake -Woverride') and that will stop the recursion
+  to subdirectories.
+
+  Last but not least, this `html' rule is declared PHONY, even when
+  overridden.  Fortunately, it appears that few packages use a
+  non-PHONY `html' rule.
+
 \f
 New in 1.7:
 * Autoconf 2.54 is required.
index c8fe09fed71b33ed38de04bd35ecea9574d9a7bb..32d798cc6d2611e78b20acb3fccc599ca8c6acb0 100755 (executable)
@@ -780,6 +780,8 @@ sub initialize_per_input ()
        'ps-am'    => [],
        'info'     => [],
        'info-am'  => [],
+       'html'     => [],
+       'html-am'  => [],
 
        # Installing/uninstalling.
        'install-data-am'      => [],
@@ -3696,7 +3698,7 @@ sub output_texinfo_build_rules ($$@)
                                    MAKEINFOFLAGS => $makeinfoflags,
                                    DEPS          => "@deps",
                                   DIRSTAMP      => $dirstamp);
-  return ($dirstamp, "$dpfx.dvi", "$dpfx.pdf", "$dpfx.ps");
+  return ($dirstamp, "$dpfx.dvi", "$dpfx.pdf", "$dpfx.ps", "$dpfx.html");
 }
 
 
@@ -3713,7 +3715,8 @@ sub handle_texinfo_helper
 
     my @texis = &variable_value_as_list_recursive ('info_TEXINFOS', 'all');
 
-    my (@info_deps_list, @dvis_list, @pdfs_list, @pss_list, @texi_deps);
+    my (@info_deps_list, @texi_deps);
+    my (@dvis_list, @pdfs_list, @pss_list, @htmls_list);
     my %versions;
     my $done = 0;
     my @texi_cleans;
@@ -3766,6 +3769,7 @@ sub handle_texinfo_helper
        push (@dvis_list, $infobase . '.dvi');
        push (@pdfs_list, $infobase . '.pdf');
        push (@pss_list, $infobase . '.ps');
+       push (@htmls_list, $infobase . '.html');
 
        # If a vers*.texi file is needed, emit the rule.
        if ($vtexi)
@@ -3859,6 +3863,7 @@ sub handle_texinfo_helper
     &define_variable ("DVIS", "@dvis_list", INTERNAL);
     &define_variable ("PDFS", "@pdfs_list", INTERNAL);
     &define_variable ("PSS", "@pss_list", INTERNAL);
+    &define_variable ("HTMLS", "@htmls_list", INTERNAL);
     # This next isn't strictly needed now -- the places that look here
     # could easily be changed to look in info_TEXINFOS.  But this is
     # probably better, in case noinst_TEXINFOS is ever supported.
index afc24e4a63345a3589f09458d855d0572cc0168f..2d8c7963dcbae04d64ada72b07ea1d7f17c5d0ae 100644 (file)
@@ -4020,11 +4020,11 @@ for new manuals.
 @vindex info_TEXINFOS
 
 Automake generates rules to build @file{.info}, @file{.dvi}, @file{.ps},
-and @file{.pdf} files from your Texinfo sources.  The @file{.info} files
-are built by @code{make all} and installed by @code{make install}
-(unless you use @code{no-installinfo}, see below).  The other files can
-be built on request by @code{make dvi}, @code{make ps}, and @code{make
-pdf}.
+@file{.pdf} and @file{.html} files from your Texinfo sources.
+The @file{.info} files are built by @code{make all} and installed
+by @code{make install} (unless you use @code{no-installinfo}, see below).
+The other files can be built on request by @code{make dvi}, @code{make ps},
+@code{make pdf} and @code{make html}.
 
 @cindex Texinfo flag, VERSION
 @cindex Texinfo flag, UPDATED
@@ -5291,6 +5291,8 @@ with these user-supplied targets.
 @trindex  ps-local
 @trindex  pdf
 @trindex  pdf-local
+@trindex  html
+@trindex  html-local
 @trindex  check
 @trindex  check-local
 @trindex  install
@@ -5311,9 +5313,9 @@ with these user-supplied targets.
 @trindex  installcheck-local
 
 The targets that support a local version are @code{all}, @code{info},
-@code{dvi}, @code{ps}, @code{pdf}, @code{check}, @code{install-data},
-@code{install-exec}, @code{uninstall}, @code{installdirs},
-@code{installcheck} and the various @code{clean} targets
+@code{dvi}, @code{ps}, @code{pdf}, @code{html}, @code{check},
+@code{install-data}, @code{install-exec}, @code{uninstall},
+@code{installdirs}, @code{installcheck} and the various @code{clean} targets
 (@code{mostlyclean}, @code{clean}, @code{distclean}, and
 @code{maintainer-clean}).  Note that there are no
 @code{uninstall-exec-local} or @code{uninstall-data-local} targets; just
index d6d04e4daa918b8a611dcca77b630e479bf57424..0a3700bf2bceb33845bf11fbc12166ce95b3d682 100644 (file)
@@ -42,10 +42,10 @@ CONFIG_CLEAN_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
-       ps-recursive install-info-recursive uninstall-info-recursive \
-       all-recursive install-data-recursive install-exec-recursive \
-       installdirs-recursive install-recursive uninstall-recursive \
-       check-recursive installcheck-recursive
+       ps-recursive html-recursive install-info-recursive \
+       uninstall-info-recursive all-recursive install-data-recursive \
+       install-exec-recursive installdirs-recursive install-recursive \
+       uninstall-recursive check-recursive installcheck-recursive
 am__installdirs = $(DESTDIR)$(perllibdir)
 dist_perllibDATA_INSTALL = $(INSTALL_DATA)
 DATA = $(dist_perllib_DATA)
@@ -367,6 +367,8 @@ dvi: dvi-recursive
 
 dvi-am:
 
+html: html-recursive
+
 info: info-recursive
 
 info-am:
@@ -404,18 +406,19 @@ uninstall-info: uninstall-info-recursive
 .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
        clean-generic clean-recursive ctags ctags-recursive distclean \
        distclean-generic distclean-recursive distclean-tags distdir \
-       dvi dvi-am dvi-recursive info info-am info-recursive install \
-       install-am install-data install-data-am install-data-recursive \
-       install-dist_perllibDATA install-exec install-exec-am \
-       install-exec-recursive install-info install-info-am \
-       install-info-recursive install-man install-recursive \
-       install-strip installcheck installcheck-am installdirs \
-       installdirs-am installdirs-recursive maintainer-clean \
-       maintainer-clean-generic maintainer-clean-recursive mostlyclean \
-       mostlyclean-generic mostlyclean-recursive pdf pdf-am \
-       pdf-recursive ps ps-am ps-recursive tags tags-recursive \
-       uninstall uninstall-am uninstall-dist_perllibDATA \
-       uninstall-info-am uninstall-info-recursive uninstall-recursive
+       dvi dvi-am dvi-recursive html html-am html-recursive info \
+       info-am info-recursive install install-am install-data \
+       install-data-am install-data-recursive install-dist_perllibDATA \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+       installdirs installdirs-am installdirs-recursive \
+       maintainer-clean maintainer-clean-generic \
+       maintainer-clean-recursive mostlyclean mostlyclean-generic \
+       mostlyclean-recursive pdf pdf-am pdf-recursive ps ps-am \
+       ps-recursive tags tags-recursive uninstall uninstall-am \
+       uninstall-dist_perllibDATA uninstall-info-am \
+       uninstall-info-recursive uninstall-recursive
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 822c081709386ce2c9506f0a191226a26ffa7fa5..9aa67222e80d3fab6e6e0939309ae5d9eaeb1cff 100644 (file)
@@ -271,6 +271,8 @@ dvi: dvi-am
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -304,13 +306,13 @@ ps-am:
 uninstall-am: uninstall-info-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-info install-info-am install-man \
-       install-strip installcheck installcheck-am installdirs \
-       maintainer-clean maintainer-clean-generic mostlyclean \
-       mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
-       uninstall-info-am
+       distclean distclean-generic distdir dvi dvi-am html html-am \
+       info info-am install install-am install-data install-data-am \
+       install-exec install-exec-am install-info install-info-am \
+       install-man install-strip installcheck installcheck-am \
+       installdirs maintainer-clean maintainer-clean-generic \
+       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+       uninstall-am uninstall-info-am
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 0eaa3915e5436ebd4415e646518b57c496c54438..784a337a0098a617ed888498f00614cebff61227 100644 (file)
@@ -46,10 +46,10 @@ CONFIG_CLEAN_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
-       ps-recursive install-info-recursive uninstall-info-recursive \
-       all-recursive install-data-recursive install-exec-recursive \
-       installdirs-recursive install-recursive uninstall-recursive \
-       check-recursive installcheck-recursive
+       ps-recursive html-recursive install-info-recursive \
+       uninstall-info-recursive all-recursive install-data-recursive \
+       install-exec-recursive installdirs-recursive install-recursive \
+       uninstall-recursive check-recursive installcheck-recursive
 am__installdirs = $(DESTDIR)$(pkgvdatadir) $(DESTDIR)$(scriptdir)
 dist_pkgvdataDATA_INSTALL = $(INSTALL_DATA)
 dist_scriptDATA_INSTALL = $(INSTALL_DATA)
@@ -383,6 +383,8 @@ dvi: dvi-recursive
 
 dvi-am:
 
+html: html-recursive
+
 info: info-recursive
 
 info-am:
@@ -423,8 +425,9 @@ uninstall-info: uninstall-info-recursive
 .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
        clean-generic clean-recursive ctags ctags-recursive distclean \
        distclean-generic distclean-recursive distclean-tags distdir \
-       dvi dvi-am dvi-recursive info info-am info-recursive install \
-       install-am install-data install-data-am install-data-recursive \
+       dvi dvi-am dvi-recursive html html-am html-recursive info \
+       info-am info-recursive install install-am install-data \
+       install-data-am install-data-recursive \
        install-dist_pkgvdataDATA install-dist_scriptDATA install-exec \
        install-exec-am install-exec-recursive install-info \
        install-info-am install-info-recursive install-man \
index 888b4d14d9b5728eb72e745f2200e2f4c85d5245..e1c26674e1dd17a2e0a1a970629df59a04ee7182 100644 (file)
@@ -222,6 +222,8 @@ dvi: dvi-am
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -255,13 +257,14 @@ ps-am:
 uninstall-am: uninstall-dist_amDATA uninstall-info-am
 
 .PHONY: all all-am check check-am clean clean-generic distclean \
-       distclean-generic distdir dvi dvi-am info info-am install \
-       install-am install-data install-data-am install-dist_amDATA \
-       install-exec install-exec-am install-info install-info-am \
-       install-man install-strip installcheck installcheck-am \
-       installdirs maintainer-clean maintainer-clean-generic \
-       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
-       uninstall-am uninstall-dist_amDATA uninstall-info-am
+       distclean-generic distdir dvi dvi-am html html-am info info-am \
+       install install-am install-data install-data-am \
+       install-dist_amDATA install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am uninstall uninstall-am uninstall-dist_amDATA \
+       uninstall-info-am
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
index 02d9878aee23a36f7a0b0401593d44219b9467c6..c2ee9a9b5e3af55f96154cde58c8c5121f0b4d0a 100644 (file)
 ?GENERIC?      $(TEXI2PDF) %SOURCE%
 ?!GENERIC?     $(TEXI2PDF) -o $@ `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
 
+?GENERIC?%SOURCE_SUFFIX%.html:
+?!GENERIC?%DEST_PREFIX%.html: %SOURCE% %DEPS% %DIRSTAMP%
+       $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) --html %MAKEINFOFLAGS% \
+?GENERIC?       -o $@ %SOURCE%
+?!GENERIC?      -o $@ `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
+
 ## If we are using the generic rules, we need separate dependencies.
 ## (Don't wonder about %DIRSTAMP% here, this is used only by non-generic
 ## rules.)
@@ -82,4 +88,5 @@ endif %?GENERIC_INFO%
 if %?GENERIC%
 %DEST_PREFIX%.dvi: %SOURCE_REAL% %DEPS%
 %DEST_PREFIX%.pdf: %SOURCE_REAL% %DEPS%
+%DEST_PREFIX%.html: %SOURCE_REAL% %DEPS%
 endif %?GENERIC%
index de1e9fc8386f0d352a63ed56ddab5b3d82a51dd6..bf1662606ac3cb7242291ea9a81740e286a32ed4 100644 (file)
@@ -58,18 +58,21 @@ DVIPS = dvips
        $(DVIPS) -o $@ $<
 endif %?LOCAL-TEXIS%
 
-.PHONY: info info-am dvi dvi-am pdf pdf-am
+.PHONY: info info-am dvi dvi-am pdf pdf-am html html-am
 if %?SUBDIRS%
 RECURSIVE_TARGETS += info-recursive dvi-recursive pdf-recursive ps-recursive
+RECURSIVE_TARGETS += html-recursive
 .PHONY info: info-recursive
 .PHONY dvi: dvi-recursive
 .PHONY pdf: pdf-recursive
 .PHONY ps: ps-recursive
+.PHONY html: html-recursive
 else !%?SUBDIRS%
 info: info-am
 dvi: dvi-am
 pdf: pdf-am
 ps: ps-am
+html: html-am
 endif !%?SUBDIRS%
 
 if %?LOCAL-TEXIS%
@@ -77,11 +80,13 @@ info-am: $(INFO_DEPS)
 dvi-am: $(DVIS)
 pdf-am: $(PDFS)
 ps-am: $(PSS)
+html-am: $(HTMLS)
 else ! %?LOCAL-TEXIS%
 info-am:
 dvi-am:
 pdf-am:
 ps-am:
+html-am:
 endif ! %?LOCAL-TEXIS%
 
 
@@ -241,7 +246,9 @@ if %?LOCAL-TEXIS%
 .PHONY: mostlyclean-aminfo
 mostlyclean-am: mostlyclean-aminfo
 mostlyclean-aminfo:
-       -rm -f %TEXICLEAN%
+## Use `-rf', not just `-f', because %TEXICLEAN% also contains
+## any directory created by `makeinfo --html'.
+       -rm -rf %TEXICLEAN%
 
 .PHONY: maintainer-clean-aminfo
 maintainer-clean-am: maintainer-clean-aminfo
index 08e4eb2f96163207b8e433df5369460c11f1ced6..360f8a03894acc9900f387155ff25216191ee958 100644 (file)
@@ -270,6 +270,8 @@ dvi: dvi-am
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -304,11 +306,12 @@ uninstall-am: uninstall-dist_m4dataDATA uninstall-info-am \
        uninstall-nodist_m4dataDATA
 
 .PHONY: all all-am check check-am clean clean-generic distclean \
-       distclean-generic distdir dvi dvi-am info info-am install \
-       install-am install-data install-data-am install-dist_m4dataDATA \
-       install-exec install-exec-am install-info install-info-am \
-       install-man install-nodist_m4dataDATA install-strip \
-       installcheck installcheck-am installdirs maintainer-clean \
+       distclean-generic distdir dvi dvi-am html html-am info info-am \
+       install install-am install-data install-data-am \
+       install-dist_m4dataDATA install-exec install-exec-am \
+       install-info install-info-am install-man \
+       install-nodist_m4dataDATA install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
        maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
        pdf-am ps ps-am uninstall uninstall-am \
        uninstall-dist_m4dataDATA uninstall-info-am \
index 26865e012045fa9db15097cfe4422c3a35582e62..fe99435f2d50bf5d654e71f4602252a28f0dfd16 100644 (file)
@@ -430,6 +430,7 @@ txinfo17.test \
 txinfo18.test \
 txinfo19.test \
 txinfo20.test \
+txinfo21.test \
 transform.test \
 unused.test \
 vars.test \
index ef296f6c732c14fcc9080a3be787cb7ce5ab9280..159fb468e2259d73e8810df03accbb6e29f4ebcd 100644 (file)
@@ -533,6 +533,7 @@ txinfo17.test \
 txinfo18.test \
 txinfo19.test \
 txinfo20.test \
+txinfo21.test \
 transform.test \
 unused.test \
 vars.test \
@@ -730,6 +731,8 @@ dvi: dvi-am
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -764,12 +767,12 @@ uninstall-am: uninstall-info-am
 
 .PHONY: all all-am check check-TESTS check-am clean clean-generic \
        distclean distclean-generic distclean-local distdir dvi dvi-am \
-       info info-am install install-am install-data install-data-am \
-       install-exec install-exec-am install-info install-info-am \
-       install-man install-strip installcheck installcheck-am \
-       installdirs maintainer-clean maintainer-clean-generic \
-       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
-       uninstall-am uninstall-info-am
+       html html-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am uninstall uninstall-am uninstall-info-am
 
 
 distclean-local:
index 83b4016885db2d057c13b852155875428037cf6a..e0b7ad107d65bb34f4c716c8a3bcfdefcfda5506 100644 (file)
@@ -106,6 +106,11 @@ then
        echo "$me: running makedepend -f-"
        ( makedepend -f- ) || exit 77
        ;;
+      makeinfo-html)
+       # Make sure makeinfo understands --html.
+       echo "$me: running makeinfo --html --version"
+       ( makeinfo --html --version ) || exit 77
+       ;;
       non-root)
        # Skip this test case if the user is root.
        # We try to append to a read-only file to detect this.
diff --git a/tests/txinfo21.test b/tests/txinfo21.test
new file mode 100755 (executable)
index 0000000..9c2b957
--- /dev/null
@@ -0,0 +1,82 @@
+#! /bin/sh
+# Copyright (C) 2003  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 Automake; see the file COPYING.  If not, write to
+# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
+
+# Test support for building HTML documentation.
+
+required='makeinfo-html tex'
+. ./defs || exit 1
+
+set -e
+
+cat >>configure.in <<EOF
+AC_CONFIG_FILES([rec/Makefile])
+AC_OUTPUT
+EOF
+
+cat > Makefile.am << 'END'
+SUBDIRS = rec
+info_TEXINFOS = main.texi sub/main.texi
+END
+
+cat > main.texi << 'END'
+\input texinfo
+@setfilename main.info
+@settitle main
+@node Top
+Hello walls.
+@bye
+END
+
+mkdir sub
+mkdir rec
+cp main.texi sub/main.texi
+cp main.texi rec/main.texi
+
+cat > rec/Makefile.am << 'END'
+info_TEXINFOS = main.texi
+END
+
+$ACLOCAL
+$AUTOMAKE --add-missing
+$AUTOCONF
+
+./configure
+
+$MAKE
+
+# Test production of split-per-node HTML.
+$MAKE html
+test -d main.html
+test -d sub/main.html
+test -d rec/main.html
+$MAKE clean
+test ! -d main.html
+test ! -d sub/main.html
+test ! -d rec/main.html
+
+# Test production of a single HTML file.
+MAKEINFOFLAGS=--no-split $MAKE -e html
+test -f main.html
+test -f sub/main.html
+test -f rec/main.html
+$MAKE clean
+test ! -f main.html
+test ! -f sub/main.html
+test ! -f rec/main.html