summaryrefslogtreecommitdiff
path: root/font/devpdf
diff options
context:
space:
mode:
authorG. Branden Robinson <g.branden.robinson@gmail.com>2022-05-02 01:13:48 +1000
committerG. Branden Robinson <g.branden.robinson@gmail.com>2022-05-02 08:35:12 -0500
commit3a58ef2712d1bcf123dbf925d3f371823533e71a (patch)
tree20e034d8fec8c44116777dcf8edf0865c173acd9 /font/devpdf
parent4de4ca940930ccc67c60db85eabda68d1ef873ff (diff)
downloadgroff-git-3a58ef2712d1bcf123dbf925d3f371823533e71a.tar.gz
[build]: Rationalize in-tree document deps.
[build]: Reduce and rationalize in-tree document dependencies. This eliminates spurious rebuilds of numerous documents (including the 380+-page groff-man-pages collections). It also fixes missing dependencies when using the build's groff to generate PostScript documents. * .gitignore: Drop old name of devpdf stamp file. * doc/.gitignore: Drop now-unused "example.stamp" file. * doc/doc.am (PROCESSEDDOCFILES_HTML, PROCESSEDDOCFILES_PDF, PROCESSEDDOCFILES_TXT): Add new macros grouping targets by the format/output driver used to produce them, to better organize dependencies for their generation. (PROCESSEDDOCFILES): Redefine as simply the expansions of the foregeoing. (PROCESSEDFILES_DEPS_HTML, PROCESSEDFILES_DEPS_HTML, PROCESSEDFILES_DEPS_PDF, PROCESSEDFILES_DEPS_TXT): Add new macros defining prerequisites for production of the corresponding output document formats. ($(PROCESSEDDOCFILES_HTML), $(PROCESSEDDOCFILES_PDF), $(PROCESSEDDOCFILES_PS), $(PROCESSEDDOCFILES_TXT)): Declare the dependencies using expansions of the foregoing macros. (MOSTLYCLEANFILES): Drop "doc/automake.pdf", now part of `PROCESSEDDOCFILES_PDF`. (doc/automake.pdf): Drop dependencies already supplied by `PROCESSEDFILES_DEPS_PDF`. (HTMLDOCFILES): Drop macro. "doc/pic.html" is now in the expansion of `PROCESSEDDOCFILES_HTML`. (htmlpic_DATA): Redefine as expansion of `PROCESSEDDOCFILES_HTML` instead of `HTMLDOCFILES`. (PROCESSEDEXAMPLEFILES_HTML) [BUILD_HTML]: Define as "doc/webpage.html", otherwise as empty. (PROCESSEDEXAMPLEFILES_PS): Contain "doc/webpage.ps" and "doc/grnexampl.ps". (PROCESSEDEXAMPLEFILES): Redefine as expansions of `PROCESSEDEXAMPLEFILES_HTML` and `PROCESSEDEXAMPLEFILES_PS`. ($(PROCESSEDEXAMPLEFILES_HTML), $(PROCESSEDEXAMPLEFILES_PS)): Declare dependencies using `PROCESSEDFILES_DEPS_HTML` and `PROCESSEDFILES_DEPS_PS`, respectively. (nodist_docexamples_DATA): Redefine macro as expansions of now-split macros `PROCESSEDEXAMPLEFILES_HTML` and `PROCESSEDEXAMPLEFILES_PS`. (HTMLEXAMPLEFILES): Drop macro. "doc/webpage.html" is now in the expansion of `PROCESSEDDOCFILES_HTML`. (nodist_htmlexamples_DATA): Drop macro, no longer needed. ($(PROCESSEDDOCFILES_PS)): Relocated and redefined above. ($(PROCESSEDEXAMPLEFILES) $(PROCESSEDDOCFILES)): Drop overbroad dependency declarations in favor of the above. (MOSTLYCLEANFILES, doc/examples.stamp): Drop generation and removal of unnecessary stamp file. (doc/pic.html, doc/webpage.html): Add explicit dependency on required preprocessors. Drop redundant and spurious dependencies. * font/devhtml/devhtml.am (MOSTLYCLEANFILES, font/devhtml/stamp): Generate and remove stamp file to enable reliable target dependencies for build-time generation of HTML documents by groff. * font/devpdf/devpdf.am (MOSTLYCLEANFILES, font/devpdf/stamp): Rename stamp file from "font/devpdf/build_font_files". (font/devpdf/stamp): Drop unnecessary dependency on "afmtodit". * font/devps/devps.am (MOSTLYCLEANFILES, font/devps/stamp): Generate and remove stamp file to enable reliable target dependencies for build-time generation of PostScript documents by groff. * font/devutf8/devutf8.am (MOSTLYCLEANFILES, font/devutf8/stamp): Generate and remove stamp file to enable reliable target dependencies for build-time generation of UTF-8-encoded text documents by groff. * contrib/hdtbl/hdtbl.am (HDTBLPROCESSEDEXAMPLEFILES): Add dependency on devps stamp file since the files' target rule generates PostScript with groff. * contrib/mom/mom.am ($(MOMPROCESSEDEXAMPLEFILES)): Depend on new name for devpdf stamp file. * contrib/sboxes/sboxes.am ($(sboxes_builddir)/msboxes.pdf): Depend on new name for devpdf stamp file. Fixes <https://savannah.gnu.org/bugs/?62084>; thanks to Sergei Trofimovich for the report. Also fixes <https://savannah.gnu.org/bugs/?62297>; thanks to Bjarni Ingi Gislason for the report. Tested with the following script. #!/bin/sh set -e test -d build cd build for file in \ contrib/hdtbl/examples/chess_board.ps \ contrib/hdtbl/examples/col_rowspan_colors.ps \ contrib/hdtbl/examples/color_boxes.ps \ contrib/hdtbl/examples/color_nested_tables.ps \ contrib/hdtbl/examples/color_table_cells.ps \ contrib/hdtbl/examples/color_transitions.ps \ contrib/hdtbl/examples/fonts_n.ps \ contrib/hdtbl/examples/fonts_x.ps \ contrib/hdtbl/examples/mixed_pickles.ps \ contrib/hdtbl/examples/rainbow.ps \ contrib/hdtbl/examples/short_reference.ps \ contrib/mom/examples/copyright-chapter.pdf \ contrib/mom/examples/copyright-default.pdf \ contrib/mom/examples/letter.pdf \ contrib/mom/examples/mom-pdf.pdf \ contrib/mom/examples/mon_premier_doc.pdf \ contrib/mom/examples/sample_docs.pdf \ contrib/mom/examples/slide-demo.pdf \ contrib/mom/examples/typesetting.pdf \ contrib/sboxes/msboxes.pdf \ doc/automake.pdf \ doc/grnexmpl.ps \ doc/groff-man-pages.pdf \ doc/groff-man-pages.utf8.txt \ doc/meintro.ps \ doc/meintro_fr.ps \ doc/meref.ps \ doc/ms.ps \ doc/pic.html \ doc/pic.ps \ doc/webpage.ps do make -j clean make -j "$file" done
Diffstat (limited to 'font/devpdf')
-rw-r--r--font/devpdf/devpdf.am10
1 files changed, 4 insertions, 6 deletions
diff --git a/font/devpdf/devpdf.am b/font/devpdf/devpdf.am
index e1bce488d..3813ed366 100644
--- a/font/devpdf/devpdf.am
+++ b/font/devpdf/devpdf.am
@@ -28,7 +28,6 @@ MOSTLYCLEANFILES += \
font/devpdf/download \
font/devpdf/DESC \
font/devpdf/Foundry \
- font/devpdf/build_font_files \
font/devpdf/util/BuildFoundries
devpdffontdir = $(fontdir)/devpdf
@@ -106,11 +105,10 @@ font/devpdf/Foundry:
&& sed "s|[@]urwfontsdir[@]|$(urwfontsdir)|" \
$(devpdf_srcdir)/Foundry.in >$(top_builddir)/$@
-all: font/devpdf/build_font_files
-
-# PATH: path to find afmtodit. We add $(abs_top_builddir) because
-# afmtodit is built in the top builddir.
-font/devpdf/build_font_files: afmtodit font/devpdf/DESC \
+# PDFs to be produced by troff should depend on this stamp file to
+# ensure that gropdf's device and font description files are available.
+MOSTLYCLEANFILES += font/devpdf/stamp
+font/devpdf/stamp: font/devpdf/DESC \
$(devpdffontenc_DATA) $(devpdffontmap_DATA) $(devpdffont_DATA) \
font/devpdf/util/BuildFoundries
@if $(AM_V_P); then \