2 # Makefile modified by David Hilvert to generate ALE documentation.
8 # $Date: 2006-09-01 15:47:16 +0900 (Fri, 01 Sep 2006) $
12 # -----------------------------------------------------------------
13 # ** Makefile.DocBook -- generate output from DocBook sources **
14 # -----------------------------------------------------------------
16 # This file is part of the DocBook Project XSL Stylesheet
19 # See http://docbook.sourceforge.net/release/xsl/current/
20 # for copyright and other information.
22 # DOCBOOK_OUTPUT_FORMATS is the default set of targets (output
23 # formats) that get built when you type "make" without any targets
24 # explicitly specified. To generate a different set of output
25 # formats, change the value of DOCBOOK_OUTPUT_FORMATS here or set
26 # it in your environment; for example:
28 # set DOCBOOK_OUTPUT_FORMATS="html pdf"; export DOCBOOK_OUTPUT_FORMATS
30 # Of course by explicitly specifying particular targets when you
31 # invoke "make", you can always override generation of the default
32 # set of targets; for example:
36 # That would generate just HTML (unchunked) and plain-text output.
38 DOCBOOK_OUTPUT_FORMATS ?
= man chunk txt pdf
info
40 # If you want XHTML output instead of HTML, set HTML_OR_XHTML to
41 # 'xhtml' or just specify 'xhtml" in DOCBOOK_OUTPUT_FORMATS.
42 ifeq ($(findstring xhtml
,$(DOCBOOK_OUTPUT_FORMATS
)),)
45 HTML_OR_XHTML ?
= xhtml
48 # -----------------------------------------------------------------
49 # *** TOOLS and other DEPENDENCIES ***
50 # -----------------------------------------------------------------
51 # we use rmdir(1) to remove dirs we create for chunked HTML output
53 # "-p" causes empty parent dirs to be deleted as well
54 RMDIR_FLAGS
= --ignore-fail-on-non-empty
-p
56 # possible values for PDF_MAKER are:
57 # dblatex|fop|xep|xmlroff|passivetex
60 # possible values for TXT_MAKER are:
61 # links|lynx|w3m|w3mmee
63 TXT_MAKER_FLAGS
= -dump
-no-numbering
-no-references
67 XSLT_FLAGS
= --xinclude
69 # http://dblatex.sourceforge.net/
71 DBLATEX_FLAGS
= -b pdftex
-P page.margin.inner
=0.8 -P page.margin.outer
=0.5 -P double.sided
=1 -T db2latex
79 # http://xmlroff.sourceforge.net/
89 # http://docbook2x.sourceforge.net/
90 DB2X_XSLTPROC
= db2x_xsltproc
91 DB2X_XSLTPROC_FLAGS
= --xinclude
92 DB2X_TEXIXML
= db2x_texixml
--list-files
95 # we call the man(1) command to generate "foo.N.pdf" and
96 # "foo.N.txt" output (see "man-pdf" & "man-txt" targets)
100 # The "ps2pdf" command is part of GhostSript (gs) distro.
101 # It is just a wrapper script around gs that does this:
103 # gs -dCompatibilityLevel=1.2 -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite \
104 # "-sOutputFile=$outfile" -dCompatibilityLevel=1.2 -c .setpdfwrite -f "$infile"
106 # Where, for example: $outfile = foo.pdf and $infile = foo.1
110 # The "col" command is needed for stripping backspaces and
111 # underscores from man(1) output to get pure plain-text
115 # The "expand" command is needed for expanding tabs from files
116 # generated from "man foo.1 | col -b" output
117 # output to get pure plain-text
121 # value of DOCBOOK_XSL should either be the canonical
122 # (docbook.sourceforge.net) URL for the DocBook Project XSL
123 # stylesheets OR it can be a local system path
124 DOCBOOK_XSL
= http
://docbook.sourceforge.net
/release
/xsl
/current
126 # -----------------------------------------------------------------
127 # names of some DIRECTORIES and FILES we need
128 # -----------------------------------------------------------------
129 # We create a tmp directory once per make invocation; it's needed
130 # for holding a temporary copy of the custom DBLaTeX stylesheet
131 # (because dblatex currently can't read a stylesheet from stdin)
133 TMPNUM
:= $(shell echo
$$$$)
134 DOCBOOK_TMP
:= $(TMP
)/docbook-make-
$(TMPNUM
)
136 # MAN_MANIFEST_EXT is file extension added to individual manifest
138 MAN_MANIFEST_EXT
= manifest_man
140 # HTML_MANIFEST_EXT is file extension added to HTML manifest files
141 HTML_MANIFEST_EXT
= manifest_html
143 # BASEDIR_SUFFIX is a what you need to set if you want a suffix
144 # added to the end of each "base.dir" we create while generating
145 # chunked HTML output
146 #BASEDIR_SUFFIX = -html
147 #BASEDIR_SUFFIX = _html
151 # Workaround the fact that we don't calculate dependencies.
154 BROKEN_DEPENDENCIES
= $(shell find .
-name
"*.xml") package
/changelog
/index.in make-changelog
157 # -----------------------------------------------------------------
159 # -----------------------------------------------------------------
160 # HTML_STYLESHEET -> $html.stylesheet stylesheet param
161 # http://docbook.sourceforge.net/snapshots/xsl/doc/html/html.stylesheet.html
162 HTML_STYLESHEET
= style.css
163 # HTML_IMAGES -> $admon.graphics.path
164 # http://docbook.sourceforge.net/snapshots/xsl/doc/html/admon.graphics.path.html
165 HTML_IMAGES
= images
/
166 # HTML_IMAGES_EXT -> $admon.graphics.extension
167 # http://docbook.sourceforge.net/snapshots/xsl/doc/html/admon.graphics.extension.html
168 HTML_IMAGES_EXT
= .png
170 # use these to set params on the command-line
171 # format is, e.g., HTML_PARAMS="--stringparam variablelist.as.table 1..."
176 # DBX_PARAMS is for dblatex(1); format uses "-p":
177 # DBX_PARAMS="-p doc.publisher.show 1 -p term.breakline 1...
180 # What file extension do you use for DocBook source files?
181 DOCBOOK_FILE_EXTENSION
= .docbook
182 SOURCE_FILE_EXTENSION
= .xml
184 # -----------------------------------------------------------------
185 # make(1) functions for building file lists
186 # -----------------------------------------------------------------
188 # the values of the following are used for determing what needs
189 # to be built and/or cleaned up
191 SOURCE_FILES_DBK
= $(wildcard *$(SOURCE_FILE_EXTENSION
))
193 FILES_FO
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).fo
)
194 FILES_TXT
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).txt
)
195 FILES_PDF
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).pdf
)
196 FILES_LOG
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).log
)
197 FILES_OUT
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).out
)
198 FILES_AUX
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).aux
)
199 FILES_HTML
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).html
)
200 FILES_INFO
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).
info)
201 DIRS_CHUNK
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
)$(BASEDIR_SUFFIX
))
202 LISTS_HTML
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).
$(HTML_MANIFEST_EXT
))
203 LISTS_MAN
= $(foreach base
,$(basename $(SOURCE_FILES_DBK
)),$(base
).
$(MAN_MANIFEST_EXT
))
204 FILES_CHNK
= $(shell for manifest in
$(LISTS_HTML
); do if
[ -f
"$$manifest" ]; then cat
$$manifest; fi done
)
205 FILES_MAN
= $(shell for manifest in
$(LISTS_MAN
); do if
[ -f
"$$manifest" ]; then cat
$$manifest; fi done
)
206 FILES_MANP
= $(foreach base
,$(FILES_MAN
),$(base
).pdf
)
207 FILES_MANT
= $(foreach base
,$(FILES_MAN
),$(base
).txt
)
208 DIRS_MAN
= $(shell for file in
$(FILES_MAN
); do dirname
$$file; done | uniq
)
210 # -----------------------------------------------------------------
211 # ** stylesheet for testing whether a file has a refentry
212 # -----------------------------------------------------------------
213 REFENTRY_CHECK
:= <xsl
:stylesheet xmlns
:xsl
="http://www.w3.org/1999/XSL/Transform" \
215 xmlns
:db
="http://docbook.org/ns/docbook" \
217 <xsl
:output method
="text"/> \
218 <xsl
:template match
="/"> \
219 <xsl
:if
test="//refentry|//db:refentry"> \
220 <xsl
:text
>true
</xsl
:text
> \
225 # -----------------------------------------------------------------
226 # ** Stylesheet Customization Layers **
227 # -----------------------------------------------------------------
230 DBX_CUSTOM
:= <xsl
:stylesheet xmlns
:xsl
="http://www.w3.org/1999/XSL/Transform" \
232 <xsl
:param name
="co.linkends.show">0</xsl
:param
> \
233 <xsl
:param name
="callout.markup.circled">1</xsl
:param
> \
234 <xsl
:param name
="callout.linkends.hot">0</xsl
:param
> \
235 <xsl
:param name
="doc.publisher.show">1</xsl
:param
> \
236 <xsl
:param name
="term.breakline">1</xsl
:param
> \
237 <xsl
:param name
="doc.alignment">left
</xsl
:param
> \
238 <xsl
:param name
="newtbl.use">1</xsl
:param
> \
239 <xsl
:param name
="latex.hyperparam"/> \
240 <xsl
:param name
="latex.style">docbook
</xsl
:param
> \
241 <xsl
:param name
="latex.biblio.output">all</xsl
:param
> \
242 <xsl
:param name
="latex.bibfiles">""</xsl
:param
> \
243 <xsl
:param name
="latex.bibwidelabel">WIDELABEL
</xsl
:param
> \
244 <xsl
:param name
="latex.output.revhistory">0</xsl
:param
> \
245 <xsl
:param name
="latex.figure.position">[htbp
]</xsl
:param
> \
246 <xsl
:param name
="latex.figure.boxed">0</xsl
:param
> \
247 <xsl
:param name
="latex.babel.use">1</xsl
:param
> \
248 <xsl
:param name
="latex.babel.language"></xsl
:param
> \
249 <xsl
:param name
="latex.class.options">twoside
</xsl
:param
> \
250 <xsl
:param name
="biblioentry.item.separator">, </xsl
:param
> \
251 <xsl
:param name
="refentry.xref.manvolnum">1</xsl
:param
> \
252 <xsl
:param name
="refsynopsis.title">Synopsis
</xsl
:param
> \
253 <xsl
:param name
="refnamediv.title"></xsl
:param
> \
254 <xsl
:param name
="funcsynopsis.style">ansi
</xsl
:param
> \
255 <xsl
:param name
="funcsynopsis.decoration">1</xsl
:param
> \
256 <xsl
:param name
="function.parens">0</xsl
:param
> \
257 <xsl
:param name
="classsynopsis.default.language">java
</xsl
:param
> \
258 <xsl
:param name
="show.comments">0</xsl
:param
> \
262 FO_CUSTOM
:= <xsl
:stylesheet xmlns
:xsl
="http://www.w3.org/1999/XSL/Transform" \
263 xmlns
:fo
="http://www.w3.org/1999/XSL/Format" \
265 <xsl
:import href
="$(DOCBOOK_XSL)/fo/docbook.xsl"/> \
266 <xsl
:param name
="$(PDF_MAKER).extensions">1</xsl
:param
> \
267 <xsl
:param name
="paper.type">Custom
</xsl
:param
> \
268 <xsl
:param name
="page.height">9.25in
</xsl
:param
> \
269 <xsl
:param name
="page.width">7.5in
</xsl
:param
> \
270 <xsl
:param name
="commented.page.margin.inner">3in
</xsl
:param
> \
271 <xsl
:param name
="commented.page.margin.outer">3in
</xsl
:param
> \
272 <xsl
:param name
="double.sided">1</xsl
:param
> \
273 <xsl
:param name
="draft.watermark.image"></xsl
:param
> \
274 <xsl
:param name
="hyphenation">false
</xsl
:param
> \
275 <xsl
:param name
="hyphenate.verbatim">1</xsl
:param
> \
276 <xsl
:param name
="alignment">left
</xsl
:param
> \
277 <xsl
:param name
="refentry.generate.name">1</xsl
:param
> \
278 <xsl
:param name
="refentry.generate.title">0</xsl
:param
> \
279 <xsl
:param name
="refentry.pagebreak">1</xsl
:param
> \
280 <xsl
:param name
="shade.verbatim">1</xsl
:param
> \
281 <xsl
:param name
="variablelist.as.blocks">1</xsl
:param
> \
282 <xsl
:param name
="ulink.show">1</xsl
:param
> \
283 <xsl
:param name
="ulink.footnotes">1</xsl
:param
> \
284 <xsl
:param name
="index.on.type">1</xsl
:param
> \
285 <xsl
:attribute-set name
="xref.properties"> \
286 <xsl
:attribute name
="color">blue
</xsl
:attribute
> \
287 </xsl
:attribute-set
> \
288 <xsl
:attribute-set name
="shade.verbatim.style"> \
289 <xsl
:attribute name
="background-color">\
#E0E0E0</xsl:attribute> \
290 <xsl
:attribute name
="padding-left">4pt
</xsl
:attribute
> \
291 <xsl
:attribute name
="padding-right">4pt
</xsl
:attribute
> \
292 <xsl
:attribute name
="padding-top">4pt
</xsl
:attribute
> \
293 <xsl
:attribute name
="padding-bottom">4pt
</xsl
:attribute
> \
294 </xsl
:attribute-set
> \
295 <xsl
:attribute-set name
="section.title.level1.properties"> \
296 <xsl
:attribute name
="font-size"> \
297 <xsl
:value-of select
="$$body.font.master * 1.5"></xsl
:value-of
> \
298 <xsl
:text
>pt
</xsl
:text
> \
300 </xsl
:attribute-set
> \
301 <xsl
:attribute-set name
="section.title.level2.properties"> \
302 <xsl
:attribute name
="font-size"> \
303 <xsl
:value-of select
="$$body.font.master * 1.3"></xsl
:value-of
> \
304 <xsl
:text
>pt
</xsl
:text
> \
306 </xsl
:attribute-set
> \
307 <xsl
:attribute-set name
="section.title.level3.properties"> \
308 <xsl
:attribute name
="font-size"> \
309 <xsl
:value-of select
="$$body.font.master * 1.1"></xsl
:value-of
> \
310 <xsl
:text
>pt
</xsl
:text
> \
312 </xsl
:attribute-set
> \
313 <xsl
:attribute-set name
="section.title.level4.properties"> \
314 <xsl
:attribute name
="font-size"> \
315 <xsl
:value-of select
="$$body.font.master"></xsl
:value-of
> \
316 <xsl
:text
>pt
</xsl
:text
> \
318 </xsl
:attribute-set
> \
319 <xsl
:attribute-set name
="component.title.properties"> \
320 <xsl
:attribute name
="font-size"> \
321 <xsl
:value-of select
="$$body.font.master * 1.5"></xsl
:value-of
> \
322 <xsl
:text
>pt
</xsl
:text
> \
324 </xsl
:attribute-set
> \
325 <xsl
:attribute-set name
="monospace.verbatim.properties"> \
326 <xsl
:attribute name
="wrap-option">wrap
</xsl
:attribute
> \
327 <xsl
:attribute name
="hyphenation-character">\
</xsl
:attribute
> \
328 <xsl
:attribute name
="font-size"> \
329 <xsl
:value-of select
="$$body.font.master * 0.8"></xsl
:value-of
> \
330 <xsl
:text
>pt
</xsl
:text
> \
332 </xsl
:attribute-set
> \
335 # for single-file (X)HTML outpout
336 HTML_CUSTOM
:= <xsl
:stylesheet xmlns
:xsl
="http://www.w3.org/1999/XSL/Transform" \
338 <xsl
:import href
="$(DOCBOOK_XSL)/$(HTML_OR_XHTML)/docbook.xsl"/> \
339 <xsl
:param name
="gentext.custom">local.l10n.xml
</xsl
:param
> \
340 <xsl
:param name
="local.l10n.xml" select
="document($$gentext.custom)"/> \
341 <xsl
:param name
="refentry.generate.name">1</xsl
:param
> \
342 <xsl
:param name
="refentry.generate.title">0</xsl
:param
> \
343 <xsl
:param name
="root.filename"></xsl
:param
> \
344 <xsl
:param name
="variablelist.as.table">0</xsl
:param
> \
345 <xsl
:param name
="html.stylesheet">$(HTML_STYLESHEET
)</xsl
:param
> \
346 <xsl
:param name
="admon.graphics">0</xsl
:param
> \
347 <xsl
:param name
="index.on.type">1</xsl
:param
> \
350 # for chunked (X)HTML output
351 CHNK_CUSTOM
:= <xsl
:stylesheet xmlns
:xsl
="http://www.w3.org/1999/XSL/Transform" \
353 <xsl
:import href
="$(DOCBOOK_XSL)/$(HTML_OR_XHTML)/chunk.xsl"/> \
354 <xsl
:param name
="refentry.generate.name">0</xsl
:param
> \
355 <xsl
:param name
="refentry.generate.title">1</xsl
:param
> \
356 <xsl
:param name
="variablelist.as.table">0</xsl
:param
> \
357 <xsl
:param name
="html.stylesheet">$(HTML_STYLESHEET
)</xsl
:param
> \
358 <xsl
:param name
="admon.graphics">1</xsl
:param
> \
359 <xsl
:param name
="admon.graphics.path">$(HTML_IMAGES
)</xsl
:param
> \
360 <xsl
:param name
="admon.graphics.extension">$(HTML_IMAGES_EXT
)</xsl
:param
> \
361 <xsl
:param name
="root.filename"></xsl
:param
> \
362 <xsl
:param name
="generate.manifest">1</xsl
:param
> \
363 <xsl
:param name
="use.id.as.filename">1</xsl
:param
> \
364 <xsl
:param name
="chunker.output.indent">yes
</xsl
:param
> \
365 <xsl
:param name
="index.on.type">1</xsl
:param
> \
368 # for man-page output
369 MAN_CUSTOM
:= <xsl
:stylesheet xmlns
:xsl
="http://www.w3.org/1999/XSL/Transform" \
371 <xsl
:import href
="$(DOCBOOK_XSL)/manpages/docbook.xsl"/> \
372 <xsl
:param name
="man.output.manifest.enabled" select
="1"/> \
373 <xsl
:param name
="man.output.in.separate.dir" select
="1"/> \
374 <xsl
:param name
="man.output.base.dir">man
/</xsl
:param
> \
375 <xsl
:param name
="man.output.subdirs.enabled" select
="1"/> \
378 # -----------------------------------------------------------------
379 # ** TARGETS START HERE **
380 # -----------------------------------------------------------------
381 # prevents make from deleting, e.g. foo.1, after making foo.1.pdf
382 # and foo.1.txt from it.
383 .PRECIOUS
: %.1 %.2 %.3 %.4 %.5 %.6 %.7 %.8 %.9
385 docbook
: index.docbook
$(DOCBOOK_OUTPUT_FORMATS
) ..
/TODO ..
/ChangeLog
387 ..
/TODO
: package
/todo
/index.txt
388 mv package
/todo
/index.txt ..
/TODO
390 ..
/ChangeLog
: package
/changelog
/index.txt
391 mv package
/changelog
/index.txt ..
/ChangeLog
396 # we can generate PDFs from man pages
398 $(MAKE
) $(FILES_MANP
)
400 # we can generate plain text from man pages
402 $(MAKE
) $(FILES_MANT
)
414 # use the "debug" target to echo variables, etc., to
415 # test/troubleshoot changes you make to this makefile
419 # -----------------------------------------------------------------
420 # preprocess xml to docbook.
421 # -----------------------------------------------------------------
422 %$(DOCBOOK_FILE_EXTENSION
): %.xml ale-doc.xsl
$(BROKEN_DEPENDENCIES
)
423 .
/make-changelog
< package
/changelog
/index.in
> package
/changelog
/index.xml
424 $(XSLT
) $(XSLT_FLAGS
) ale-doc.xsl
$< > $@
426 # -----------------------------------------------------------------
427 # pattern rule for making (X)HTML and plain-text output
428 # -----------------------------------------------------------------
429 %.html
: %$(DOCBOOK_FILE_EXTENSION
)
430 @echo
'$(HTML_CUSTOM)' |
$(XSLT
) $(XSLT_FLAGS
) $(HTML_PARAMS
) - $< > $@
433 $(TXT_MAKER
) $(TXT_MAKER_FLAGS
) .
/$< \
434 | sed
"s/^\(\s\+[0-9]\+\. \)file:\/\/.\+$$/\\1(local)/g" \
435 | egrep
-v
'^ file:///.+$$' \
437 # if DOCBOOK_OUTPUT_FORMATS does not contain "html", then we need
438 # to remove the "intermediate" HTML files we used for generating
440 ifeq ($(findstring html
,$(DOCBOOK_OUTPUT_FORMATS
)),)
444 # -----------------------------------------------------------------
445 # pattern rule for making chunked (X)HTML pages
446 # -----------------------------------------------------------------
447 %.
$(HTML_MANIFEST_EXT
): %$(DOCBOOK_FILE_EXTENSION
)
448 @echo
'$(CHNK_CUSTOM)' |
$(XSLT
) $(XSLT_FLAGS
) $(HTML_PARAMS
) \
449 --stringparam manifest
$@ \
450 --stringparam base.
dir $(basename $@
)$(BASEDIR_SUFFIX
)/ \
453 # -----------------------------------------------------------------
454 # pattern rules for making FO and PDF stuff
455 # -----------------------------------------------------------------
456 %.fo
: %$(DOCBOOK_FILE_EXTENSION
)
457 @echo
'$(FO_CUSTOM)' \
458 |
$(XSLT
) $(XSLT_FLAGS
) $(FO_PARAMS
) - $< > $@
460 ifeq ($(PDF_MAKER
),dblatex
)
461 %.pdf
: %$(DOCBOOK_FILE_EXTENSION
)
462 mkdir
-p
$(DOCBOOK_TMP
)
463 echo
'$(DBX_CUSTOM)' > $(DOCBOOK_TMP
)/dblatex.xsl
464 -$(DBLATEX
) $(DBLATEX_FLAGS
)\
465 -p
$(DOCBOOK_TMP
)/dblatex.xsl \
468 $(RM
) -r
$(DOCBOOK_TMP
)
473 $(error No PDF_MAKER specified. Cannot make pdf
)
475 ifeq ($(PDF_MAKER
),xep
)
476 $(XEP
) $(XEP_FLAGS
) $< $@
478 ifeq ($(PDF_MAKER
),fop
)
479 $(FOP
) $(FOP_FLAGS
) $< $@
481 ifeq ($(PDF_MAKER
),xmlroff
)
482 $(XMLROFF
) $(XMLROFF_FLAGS
) $< -o
$@
484 ifeq ($(PDF_MAKER
),passivetex
)
485 $(PDFTEX
) $(PDFTEX_FLAGS
) &$(PDFXMLTEX
) $<
486 @if
[ `egrep Rerun $(basename $@).log | wc -l` -gt
0 ]; then \
487 $(PDFTEX
) $(PDFTEX_FLAGS
) &$(PDFXMLTEX
) $< ; \
489 @if
[ `egrep Rerun $(basename $@).log | wc -l` -gt
0 ]; then \
490 $(PDFTEX
) $(PDFTEX_FLAGS
) &$(PDFXMLTEX
) $< ; \
492 $(RM
) $(basename $@
).log
493 $(RM
) $(basename $@
).aux
494 $(RM
) $(basename $@
).out
496 $(error I do not know how to make a PDF using
"$(PDF_MAKER)")
503 # -----------------------------------------------------------------
504 # pattern rules for making TeXinfo stuff
505 # -----------------------------------------------------------------
506 %.txml
: %$(DOCBOOK_FILE_EXTENSION
)
507 $(DB2X_XSLTPROC
) $(DB2X_XSLTPROC_FLAGS
) -s texi
-o
$@
$<
510 $(DB2X_TEXIXML
) $(DB2X_TEXIXML_FLAGS
) $< > $@
512 # the following is actually a built-in rule, but it's redefined
513 # here just for the sake of clarity
515 /usr
/bin
/perl
-w make-infos
$(MAKEINFO
) < $<
516 -@
# This doesn't work in general.
517 -@
# $(MAKEINFO) $(MAKEINFO_FLAGS) $< -o $@
519 # -----------------------------------------------------------------
520 # pattern rule for making man pages
521 # -----------------------------------------------------------------
522 %.
$(MAN_MANIFEST_EXT
): %$(DOCBOOK_FILE_EXTENSION
)
523 @if
[ "$(strip $(shell echo '$(REFENTRY_CHECK)' | $(XSLT) $(XSLT_FLAGS) - $<))" != "true" ]; then \
526 echo
'$(MAN_CUSTOM)' \
527 |
$(XSLT
) $(XSLT_FLAGS
) $(MAN_PARAMS
) \
528 --stringparam man.output.manifest.filename
$@ \
532 # -----------------------------------------------------------------
533 # pattern rule for enabling direct "make foo.1" to work
534 # -----------------------------------------------------------------
536 %.1 %.2 %.3 %.4 %.5 %.6 %.7: %.xml
537 $(MAKE
) $(basename $<).
$(MAN_MANIFEST_EXT
)
539 # -----------------------------------------------------------------
540 # pattern rules for making Postscript/PDF output from man pages
541 # -----------------------------------------------------------------
543 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
546 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
549 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
552 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
555 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
558 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
561 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
564 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
567 $(MAN
) -l
$(MAN_FLAGS
) -Tps
$< > $@
569 # -----------------------------------------------------------------
570 # pattern rule for converting Postscript to PDF
571 # -----------------------------------------------------------------
573 $(PS2PDF
) $(PS2PDF_FLAGS
) $<
575 # -----------------------------------------------------------------
576 # pattern rules for making plain-text output from man pages
577 # -----------------------------------------------------------------
579 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
582 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
585 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
588 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
591 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
594 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
597 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
600 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
603 $(MAN
) -l
$(MAN_FLAGS
) -Tascii
$< |
$(COL
) -b
$(COL_FLAGS
) |
$(EXPAND
) $(EXPAND_FLAGS
) > $@
605 # -----------------------------------------------------------------
606 # target(s) for cleaning up the mess
607 # -----------------------------------------------------------------
612 ifneq ($(FILES_TXT
),)
615 ifneq ($(FILES_PDF
),)
621 ifneq ($(FILES_LOG
),)
624 ifneq ($(FILES_OUT
),)
627 ifneq ($(FILES_AUX
),)
630 ifneq ($(FILES_HTML
),)
633 ifneq ($(FILES_CHNK
),)
636 ifneq ($(FILES_MAN
),)
639 ifneq ($(FILES_MANT
),)
642 ifneq ($(FILES_MANP
),)
645 ifneq ($(FILES_INFO
),)
648 ifneq ($(DIRS_CHUNK
),)
649 for
dir in
$(DIRS_CHUNK
); do \
650 if
[ -d
"$$dir" ]; then \
651 $(RMDIR
) $(RMDIR_FLAGS
) $$dir; \
656 ifneq ($(DIRS_MAN
),.
)
657 for
dir in
$(DIRS_MAN
); do \
658 if
[ -d
"$$dir" ]; then \
659 $(RMDIR
) $(RMDIR_FLAGS
) $$dir; \
664 ifneq ($(LISTS_MAN
),)
667 ifneq ($(LISTS_HTML
),)