forked from lix-project/lix
72fb2ccfa1
Docbook XSL got updated to version 1.79.1 in NixOS/nixpkgs@fb893a8 and we're still referring to the hardcoded previous version. So instead of just updating this to 1.79.1 we're going to use "current" in the hope that this won't happen again. I have tested this by building the manual under Nix(OS) but I haven't tested this in a non-Nix environment, so I'm not sure whether this could have implications. Signed-off-by: aszlig <aszlig@redmoonstudios.org> Cc: @edolstra
79 lines
2.8 KiB
Makefile
79 lines
2.8 KiB
Makefile
XSLTPROC = $(xsltproc) --nonet $(xmlflags) \
|
|
--param section.autolabel 1 \
|
|
--param section.label.includes.component.label 1 \
|
|
--param html.stylesheet \'style.css\' \
|
|
--param xref.with.number.and.title 1 \
|
|
--param toc.section.depth 3 \
|
|
--param admon.style \'\' \
|
|
--param callout.graphics.extension \'.gif\' \
|
|
--param contrib.inline.enabled 0 \
|
|
--stringparam generate.toc "book toc" \
|
|
--param keep.relative.image.uris 0
|
|
|
|
docbookxsl = http://docbook.sourceforge.net/release/xsl-ns/current
|
|
docbookrng = http://docbook.org/xml/5.0/rng/docbook.rng
|
|
|
|
MANUAL_SRCS := $(call rwildcard, $(d), *.xml)
|
|
|
|
|
|
# Do XInclude processing / RelaxNG validation
|
|
$(d)/manual.xmli: $(d)/manual.xml $(MANUAL_SRCS) $(d)/version.txt
|
|
$(trace-gen) $(xmllint) --nonet --xinclude $< -o $@.tmp
|
|
@mv $@.tmp $@
|
|
|
|
$(d)/version.txt:
|
|
$(trace-gen) echo -n $(PACKAGE_VERSION) > $@
|
|
|
|
# Note: RelaxNG validation requires xmllint >= 2.7.4.
|
|
$(d)/manual.is-valid: $(d)/manual.xmli
|
|
$(trace-gen) $(XSLTPROC) --novalid --stringparam profile.condition manual \
|
|
$(docbookxsl)/profiling/profile.xsl $< 2> /dev/null | \
|
|
$(xmllint) --nonet --noout --relaxng $(docbookrng) -
|
|
@touch $@
|
|
|
|
clean-files += $(d)/manual.xmli $(d)/version.txt $(d)/manual.is-valid
|
|
|
|
dist-files += $(d)/manual.xmli $(d)/version.txt $(d)/manual.is-valid
|
|
|
|
|
|
# Generate man pages.
|
|
man-pages := $(foreach n, \
|
|
nix-env.1 nix-build.1 nix-shell.1 nix-store.1 nix-instantiate.1 \
|
|
nix-collect-garbage.1 nix-push.1 \
|
|
nix-prefetch-url.1 nix-channel.1 \
|
|
nix-install-package.1 nix-hash.1 nix-copy-closure.1 \
|
|
nix.conf.5 nix-daemon.8, \
|
|
$(d)/$(n))
|
|
|
|
$(firstword $(man-pages)): $(d)/manual.xmli $(d)/manual.is-valid
|
|
$(trace-gen) $(XSLTPROC) --novalid --stringparam profile.condition manpage \
|
|
$(docbookxsl)/profiling/profile.xsl $< 2> /dev/null | \
|
|
(cd doc/manual && $(XSLTPROC) $(docbookxsl)/manpages/docbook.xsl -)
|
|
|
|
$(wordlist 2, $(words $(man-pages)), $(man-pages)): $(firstword $(man-pages))
|
|
|
|
clean-files += $(d)/*.1 $(d)/*.5 $(d)/*.8
|
|
|
|
dist-files += $(man-pages)
|
|
|
|
|
|
# Generate the HTML manual.
|
|
$(d)/manual.html: $(d)/manual.xml $(MANUAL_SRCS) $(d)/manual.is-valid
|
|
$(trace-gen) $(XSLTPROC) --xinclude --stringparam profile.condition manual \
|
|
$(docbookxsl)/profiling/profile.xsl $< | \
|
|
$(XSLTPROC) --output $@ $(docbookxsl)/xhtml/docbook.xsl -
|
|
|
|
$(foreach file, $(d)/manual.html $(d)/style.css, $(eval $(call install-data-in, $(file), $(docdir)/manual)))
|
|
|
|
$(foreach file, $(wildcard $(d)/figures/*.png), $(eval $(call install-data-in, $(file), $(docdir)/manual/figures)))
|
|
|
|
$(foreach file, $(wildcard $(d)/images/callouts/*.gif), $(eval $(call install-data-in, $(file), $(docdir)/manual/images/callouts)))
|
|
|
|
$(eval $(call install-symlink, manual.html, $(docdir)/manual/index.html))
|
|
|
|
all: $(d)/manual.html
|
|
|
|
clean-files += $(d)/manual.html
|
|
|
|
dist-files += $(d)/manual.html
|