diff options
author | Steffen Nurpmeso <sdaoden@yandex.com> | 2014-03-30 07:54:44 +0200 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2014-03-30 21:12:49 +0200 |
commit | 531c426949e71a270e3af89cb38ba398c1de0c94 (patch) | |
tree | 98a6dfaafc15106e40f7984c1392257d41be650f /doc | |
parent | 8f5fdfe7e1953ad22b3a7cd9a3186cc95502a1e5 (diff) | |
download | groff-git-531c426949e71a270e3af89cb38ba398c1de0c94.tar.gz |
Add fine-tuning of doc generation to `configure'.
* m4/groff.m4 (GROFF_DOC_CHECK): New macro, handling option
`--with-doc' and its new arguments. It sets
`docadd_{html,info,other,pdf,examples}' and exports
`make{_,_install_,_uninstall_}{otherdoc,examples}'.
(GROFF_MAKEINFO): Extended to export
`make{_,_install_,_uninstall_}infodoc'.
(GROFF_HTML_PROGRAMS): Extended to export
`make{_,_install_,_uninstall_}{htmldoc,htmlexamples}'.
(GROFF_PDFDOC_PROGRAMS): Extended to export
`make{_,_install_,_uninstall_}{pdfdoc,pdfexamples}'.
(GROFF_INSTALL_INFO): Guard test with `docadd_info'.
* configure.ac: Use GROFF_DOC_CHECK.
* Makefile.in: Updated.
* doc/Makefile.sub: Handle examples separately, controlled by
$(make{_,_install_,_uninstall_}examples).
* contrib/chem/Makefile.sub: Handle examples separately, controlled by
$(make{_,_install_,_uninstall_}examples).
* contrib/httbl/Makefile.sub: Handle examples separately, controlled by
$(make{_,_install_,_uninstall_}examples).
* contrib/mom/Makefile.sub: Handle examples separately, controlled by
$(make{_,_install_,_uninstall_}examples).
* contrib/pdfmark/Makefile.sub: Handle examples separately, controlled by
$(make{_,_install_,_uninstall_}examples).
Diffstat (limited to 'doc')
-rw-r--r-- | doc/Makefile.sub | 113 |
1 files changed, 73 insertions, 40 deletions
diff --git a/doc/Makefile.sub b/doc/Makefile.sub index 913b26200..f068e5cdc 100644 --- a/doc/Makefile.sub +++ b/doc/Makefile.sub @@ -122,12 +122,16 @@ MOSTLYCLEANNOTSRCDIRADD=\ $(GROFF) -Tps -ms -mwww >$@ -all: groff.info $(PROCESSEDDOCFILES) prepare_examples \ - $(PROCESSEDEXAMPLEFILES) $(make_html) +all: $(make_otherdoc) $(make_infodoc) $(make_htmldoc) \ + $(make_examples) $(make_htmlexamples) -html: $(HTMLDOCFILES) $(HTMLEXAMPLEFILES) +otherdoc: $(PROCESSEDDOCFILES) +infodoc: groff.info +htmldoc: $(HTMLDOCFILES) -prepare_examples: examples.stamp +examples: examples.stamp $(PROCESSEDEXAMPLEFILES) + +html_examples: $(HTMLEXAMPLEFILES) examples.stamp: grnexmpl.g groff.css gnu.eps test -f grnexmpl.g || cp $(srcdir)/grnexmpl.g . @@ -164,13 +168,28 @@ grnexmpl.ps: grnexmpl.me grnexmpl.g distfiles: groff.info gnu.eps -install_data: groff.info gnu.eps $(DOCFILES) $(PROCESSEDDOCFILES) \ - $(make_install_html) $(EXAMPLEFILES) $(PROCESSEDEXAMPLEFILES) +install_data: install_always $(make_install_otherdoc) \ + $(make_install_infodoc) $(make_install_htmldoc) \ + $(make_install_examples) + +install_always: + -test -d $(DESTDIR)$(docdir) || $(mkinstalldirs) $(DESTDIR)$(docdir) + +install_otherdoc: install_always $(DOCFILES) $(PROCESSEDDOCFILES) + for f in $(DOCFILES); do \ + rm -f $(DESTDIR)$(docdir)/$$f; \ + $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(docdir)/$$f; \ + done + for f in $(PROCESSEDDOCFILES); do \ + rm -f $(DESTDIR)$(docdir)/$$f; \ + $(INSTALL_DATA) $$f $(DESTDIR)$(docdir)/$$f; \ + done + +install_infodoc: install_always groff.info # Prefer info files in builddir over srcdir; we test for # the existence of `groff.info'. -test -d $(DESTDIR)$(infodir) || $(mkinstalldirs) $(DESTDIR)$(infodir) - d=.; \ - test -f "groff.info" || d=$(srcdir); \ + d=.; test -f "groff.info" || d=$(srcdir); \ for p in $$d/groff.info `ls $$d/groff.info*`; do \ f=`basename $$p`; \ rm -f $(DESTDIR)$(infodir)/$$f; \ @@ -178,15 +197,24 @@ install_data: groff.info gnu.eps $(DOCFILES) $(PROCESSEDDOCFILES) \ done $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) \ $(DESTDIR)$(infodir)/groff.info - -test -d $(DESTDIR)$(docdir) || $(mkinstalldirs) $(DESTDIR)$(docdir) - for f in $(DOCFILES); do \ - rm -f $(DESTDIR)$(docdir)/$$f; \ - $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(docdir)/$$f; \ - done - for f in $(PROCESSEDDOCFILES); do \ - rm -f $(DESTDIR)$(docdir)/$$f; \ - $(INSTALL_DATA) $$f $(DESTDIR)$(docdir)/$$f; \ + +install_htmldoc: install_always $(HTMLDOCFILES) + -test -d $(DESTDIR)$(htmldocdir) \ + || $(mkinstalldirs) $(DESTDIR)$(htmldocdir) + for f in `ls $(HTMLDOCFILESALL)`; do \ + rm -f $(DESTDIR)$(htmldocdir)/$$f; \ + $(INSTALL_DATA) $$f $(DESTDIR)$(htmldocdir)/$$f; \ done + -test -d $(DESTDIR)$(htmldocimagedir) \ + || $(mkinstalldirs) $(DESTDIR)$(htmldocimagedir) + rm -f $(DESTDIR)$(htmldocimagedir)/$(HTMLDOCIMAGEFILES) + $(INSTALL_DATA) $(imagedir)/$(HTMLDOCIMAGEFILES) \ + $(DESTDIR)$(htmldocimagedir) + +install_examples: install_always install_examples_always \ + $(make_install_htmlexamples) + +install_examples_always: gnu.eps $(EXAMPLEFILES) $(PROCESSEDEXAMPLEFILES) # Prefer gnu.eps in builddir over srcdir. -test -d $(DESTDIR)$(exampledir) \ || $(mkinstalldirs) $(DESTDIR)$(exampledir) @@ -203,20 +231,7 @@ install_data: groff.info gnu.eps $(DOCFILES) $(PROCESSEDDOCFILES) \ $(INSTALL_DATA) $$f $(DESTDIR)$(exampledir)/$$f; \ done -install_html: $(HTMLDOCFILES) $(HTMLEXAMPLEFILES) - -test -d $(DESTDIR)$(htmldocdir) \ - || $(mkinstalldirs) $(DESTDIR)$(htmldocdir) - for f in `ls $(HTMLDOCFILESALL)`; do \ - rm -f $(DESTDIR)$(htmldocdir)/$$f; \ - $(INSTALL_DATA) $$f $(DESTDIR)$(htmldocdir)/$$f; \ - done - -test -d $(DESTDIR)$(htmldocimagedir) \ - || $(mkinstalldirs) $(DESTDIR)$(htmldocimagedir) - rm -f $(DESTDIR)$(htmldocimagedir)/$(HTMLDOCIMAGEFILES) - $(INSTALL_DATA) $(imagedir)/$(HTMLDOCIMAGEFILES) \ - $(DESTDIR)$(htmldocimagedir) - -test -d $(DESTDIR)$(exampledir) \ - || $(mkinstalldirs) $(DESTDIR)$(exampledir) +install_htmlexamples: install_examples_always $(HTMLEXAMPLEFILES) for f in `ls $(HTMLEXAMPLEFILESALL)`; do \ rm -f $(DESTDIR)$(exampledir)/$$f; \ $(INSTALL_DATA) $$f $(DESTDIR)$(exampledir)/$$f; \ @@ -227,24 +242,42 @@ install_html: $(HTMLDOCFILES) $(HTMLEXAMPLEFILES) $(INSTALL_DATA) $(imagedir)/$(HTMLEXAMPLEIMAGEFILES) \ $(DESTDIR)$(exampleimagedir) -uninstall_sub: - $(INSTALL_INFO) --remove --info-dir=$(DESTDIR)$(infodir) \ +uninstall_sub: uninstall_always \ + $(make_uninstall_infodoc) $(make_uninstall_htmldoc) \ + $(make_uninstall_examples) + +uninstall_always: + -for f in $(DOCFILES) $(PROCESSEDDOCFILES); do \ + rm -f $(DESTDIR)$(docdir)/$$f; \ + done + +uninstall_infodoc: uninstall_always + -$(INSTALL_INFO) --remove --info-dir=$(DESTDIR)$(infodir) \ $(DESTDIR)$(infodir)/groff.info -for f in groff `ls groff.info*`; do \ rm -f $(DESTDIR)$(infodir)/$$f; \ done - -for f in $(DOCFILES) $(PROCESSEDDOCFILES); do \ - rm -f $(DESTDIR)$(docdir)/$$f; \ - done + +uninstall_htmldoc: uninstall_always -for f in `ls $(HTMLDOCFILESALL)`; do \ rm -f $(DESTDIR)$(htmldocdir)/$$f; \ done - -rm -f $(DESTDIR)$(htmldocimagedir)/$(HTMLDOCIMAGEFILES) + rm -f $(DESTDIR)$(htmldocimagedir)/$(HTMLDOCIMAGEFILES) -rmdir $(DESTDIR)$(htmldocimagedir) - -for f in $(EXAMPLEFILES) $(PROCESSEDEXAMPLEFILES) \ - `ls $(HTMLEXAMPLEFILESALL)`; do \ + +uninstall_examples: uninstall_always uninstall_examples_always \ + $(make_uninstall_htmlexamples) + -rmdir $(DESTDIR)$(exampledir) + +uninstall_examples_always: + -for f in $(EXAMPLEFILES) $(PROCESSEDEXAMPLEFILES); do \ rm -f $(DESTDIR)$(exampledir)/$$f; \ done - -rm -f $(DESTDIR)$(exampledir)/gnu.eps - -rm -f $(DESTDIR)$(exampleimagedir)/$(HTMLEXAMPLEIMAGEFILES) + rm -f $(DESTDIR)$(exampledir)/gnu.eps + +uninstall_htmlexamples: uninstall_examples_always + -for f in `ls $(HTMLEXAMPLEFILESALL)`; do \ + rm -f $(DESTDIR)$(exampledir)/$$f; \ + done + rm -f $(DESTDIR)$(exampleimagedir)/$(HTMLEXAMPLEIMAGEFILES) -rmdir $(DESTDIR)$(exampleimagedir) |