@@ -15,3 +15,4 @@ tmp-doc-diff/
GIT-ASCIIDOCFLAGS
/.build/
/GIT-EXCLUDED-PROGRAMS
+/manpage.xsl
@@ -155,7 +155,6 @@ ASCIIDOC_COMMON = $(ASCIIDOC) $(ASCIIDOC_EXTRA) $(ASCIIDOC_CONF) \
ASCIIDOC_DEPS = asciidoc.conf GIT-ASCIIDOCFLAGS
TXT_TO_HTML = $(ASCIIDOC_COMMON) -b $(ASCIIDOC_HTML)
TXT_TO_XML = $(ASCIIDOC_COMMON) -b $(ASCIIDOC_DOCBOOK)
-MANPAGE_XSL = manpage-normal.xsl
XMLTO = xmlto
XMLTO_EXTRA =
INSTALL ?= install
@@ -176,10 +175,6 @@ endif
-include ../config.mak.autogen
-include ../config.mak
-ifndef NO_MAN_BOLD_LITERAL
-XMLTO_EXTRA += -m manpage-bold-literal.xsl
-endif
-
# Newer DocBook stylesheet emits warning cruft in the output when
# this is not set, and if set it shows an absolute link. Older
# stylesheets simply ignore this parameter.
@@ -338,8 +333,11 @@ $(MAN_HTML): %.html : %.txt $(ASCIIDOC_DEPS)
$(OBSOLETE_HTML): %.html : %.txto $(ASCIIDOC_DEPS)
$(QUIET_ASCIIDOC)$(TXT_TO_HTML) -o $@ $<
-manpage-prereqs := $(wildcard manpage*.xsl)
-manpage-cmd = $(QUIET_XMLTO)$(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
+manpage-prereqs := manpage.xsl $(wildcard manpage*.xsl)
+manpage-cmd = $(QUIET_XMLTO)$(XMLTO) -x manpage.xsl $(XMLTO_EXTRA) man $<
+
+manpage.xsl: gen-stylesheet
+ ./gen-stylesheet >"$@"
%.1 : %.xml $(manpage-prereqs)
$(manpage-cmd)
new file mode 100755
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+includes='manpage-normal.xsl'
+test -z "$NO_MAN_BOLD_LITERAL" && includes="$includes manpage-bold-literal.xsl"
+
+cat <<EOF
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+<xsl:import href="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"/>
+EOF
+
+for x in $includes
+do
+ printf '<xsl:include href="%s"/>\n' "$x"
+done
+
+echo "</xsl:stylesheet>"
@@ -54,10 +54,12 @@ description
Part of the \fBgit\fR(1) suite
EOF
+"$doc_dir"/gen-stylesheet >"$doc_dir"/manpage.xsl
+
xmltoman() {
base="$1"
shift
- xmlto --skip-validation -m "$doc_dir/manpage-normal.xsl" -m "$doc_dir/manpage-bold-literal.xsl" "$@" man "$base.xml"
+ xmlto --skip-validation -x "$doc_dir"/manpage.xsl man "$base.xml"
}
build_asciidoc_py() {
Move most of the logic of xmlto into a simple script that generates a single stylesheet. There should be no functional changes. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> --- Documentation/.gitignore | 1 + Documentation/Makefile | 12 +++++------- Documentation/gen-stylesheet | 17 +++++++++++++++++ t/t0600-doc-tools.sh | 4 +++- 4 files changed, 26 insertions(+), 8 deletions(-) create mode 100755 Documentation/gen-stylesheet