Blame docs/Makefile

Packit Service 76cb02
TABLES = $(wildcard table-eg*)
Packit Service 76cb02
CHANGES = $(wildcard changes/*.xml)
Packit Service 76cb02
VERSION = devel
Packit Service 76cb02
OPTS =
Packit Service 76cb02
XSLTPROC = xsltproc
Packit Service 76cb02
XSLDBK = /usr/share/xml/docbook/stylesheet/docbook-xsl
Packit Service 76cb02
XSLPROF = $(XSLDBK)/profiling/profile.xsl
Packit Service 76cb02
XSLMAN = $(XSLDBK)/manpages/docbook.xsl
Packit Service 76cb02
XSLHTML = $(XSLDBK)/xhtml/chunk.xsl
Packit Service 76cb02
XSLPROFH = $(XSLDBK)/xhtml/profile-chunk.xsl
Packit Service 76cb02
XSLOLINK = $(XSLDBK)/xhtml/docbook.xsl
Packit Service 76cb02
HTMLDIRUM = xhtml/manual/
Packit Service 76cb02
HTMLDIRRN = xhtml/release-notes/
Packit Service 76cb02
CP = cp
Packit Service 76cb02
HERE = $(shell pwd)
Packit Service 76cb02
Packit Service 76cb02
HTML_PARAMS = --param ignore.image.scaling "'1'" \
Packit Service 76cb02
	      --param graphic.default.extension "'png'" \
Packit Service 76cb02
	      --param use.id.as.filename "1" \
Packit Service 76cb02
	      --param refentry.generate.name "0" \
Packit Service 76cb02
	      --param refentry.generate.title "1" \
Packit Service 76cb02
	      --param profile.attribute "'output'" \
Packit Service 76cb02
              --param profile.value "'manual;html'" \
Packit Service 76cb02
	      --param othercredit.like.author.enabled "1" \
Packit Service 76cb02
	      --param generate.section.toc.level "3" \
Packit Service 76cb02
	      --param html.stylesheet "'manual.css'"
Packit Service 76cb02
Packit Service 76cb02
# Where to find the manual and the release notes
Packit Service 76cb02
vpath %.xml . changes
Packit Service 76cb02
Packit Service 76cb02
# Main targets
Packit Service 76cb02
all: olink manpagegz allpdf allhtml
Packit Service 76cb02
Packit Service 76cb02
allpdf: manual.pdf release-notes.pdf
Packit Service 76cb02
Packit Service 76cb02
allhtml: $(HTMLDIRUM)/index.html $(HTMLDIRRN)/index.html
Packit Service 76cb02
Packit Service 76cb02
allstyle: all native db2latex simple
Packit Service 76cb02
Packit Service 76cb02
olink: manual.db release-notes.db
Packit Service 76cb02
Packit Service 76cb02
# Build and zip the Manpage
Packit Service 76cb02
manpagegz: version.xml
Packit Service 76cb02
	@$(MAKE) -C manpage -f ../Makefile dblatex.1.gz
Packit Service 76cb02
Packit Service 76cb02
# Build the HTML version of the documentation
Packit Service 76cb02
$(HTMLDIRUM)/index.html: manual.xml
Packit Service 76cb02
	@$(XSLTPROC) --xinclude --param base.dir "'$(HTMLDIRUM)'" \
Packit Service 76cb02
			  $(HTML_PARAMS) \
Packit Service 76cb02
			  $(XSLPROFH) $<
Packit Service 76cb02
	convert -trim -rotate 90 processus.fig $(HTMLDIRUM)/processus.png
Packit Service 76cb02
	convert -trim pagesetup2.fig $(HTMLDIRUM)/pagesetup2.png
Packit Service 76cb02
	$(CP) *.png tables/*.png $(HTMLDIRUM)/.
Packit Service 76cb02
	$(CP) -r math/figures $(HTMLDIRUM)/.
Packit Service 76cb02
	$(CP) -r $(XSLDBK)/images $(HTMLDIRUM)/.
Packit Service 76cb02
	$(CP) manual.css $(HTMLDIRUM)/.
Packit Service 76cb02
Packit Service 76cb02
$(HTMLDIRRN)/index.html: release-notes.xml
Packit Service 76cb02
	@$(XSLTPROC) --xinclude --param base.dir "'$(HTMLDIRRN)'" \
Packit Service 76cb02
			  $(HTML_PARAMS) \
Packit Service 76cb02
			  $(XSLPROFH) $<
Packit Service 76cb02
	$(CP) manual.css $(HTMLDIRRN)/.
Packit Service 76cb02
Packit Service 76cb02
clean:
Packit Service 76cb02
	$(RM) manual.pdf release-notes.pdf *.db
Packit Service 76cb02
	$(RM) $(FIGURES) manpage/dblatex.1.gz
Packit Service 76cb02
	$(RM) -r $(HTMLDIRUM)
Packit Service 76cb02
	$(RM) -r $(HTMLDIRRN)
Packit Service 76cb02
Packit Service 76cb02
native db2latex simple: version.xml
Packit Service 76cb02
	$(XSLTPROC) --xinclude \
Packit Service 76cb02
	            --param profile.attribute "'output'" \
Packit Service 76cb02
                    --param profile.value "'manual;pdf'" \
Packit Service 76cb02
		    $(XSLPROF) manual.xml | \
Packit Service 76cb02
	../scripts/dblatex -P target.database.document=$(HERE)/olinkdb.xml \
Packit Service 76cb02
	                   -P current.docid=usermanual \
Packit Service 76cb02
                           -T $@ -o manual-$@.pdf -
Packit Service 76cb02
Packit Service 76cb02
# Use the PDF image because the PNG from .fig is ugly
Packit Service 76cb02
pagesetup2.pdf: pagesetup2.fig
Packit Service 76cb02
	fig2dev -L pdf $< $@
Packit Service 76cb02
Packit Service 76cb02
# Build the Olink database
Packit Service 76cb02
%.db: %.xml
Packit Service 76cb02
	$(XSLTPROC) --xinclude --stringparam  collect.xref.targets "only" \
Packit Service 76cb02
	            $(XSLOLINK) $<
Packit Service 76cb02
	mv target.db $@
Packit Service 76cb02
Packit Service 76cb02
# Build the PDF
Packit Service 76cb02
%.pdf: %.xml version.xml $(TABLES) $(CHANGES) pagesetup2.pdf
Packit Service 76cb02
	@$(XSLTPROC) --xinclude \
Packit Service 76cb02
	            --param profile.attribute "'output'" \
Packit Service 76cb02
                    --param profile.value "'manual;pdf'" $(XSLPROF) $< | \
Packit Service 76cb02
	../scripts/dblatex -P target.database.document=$(HERE)/olinkdb.xml \
Packit Service 76cb02
	                   -c manual.conf $(OPTS) -o $@ - 
Packit Service 76cb02
Packit Service 76cb02
# Build the manpage
Packit Service 76cb02
%.1.gz: %.1
Packit Service 76cb02
	gzip -f $<
Packit Service 76cb02
Packit Service 76cb02
%.1: %.1.xml
Packit Service 76cb02
	$(XSLTPROC) --param profile.attribute "'output'" \
Packit Service 76cb02
                    --param profile.value "'manpage'" \
Packit Service 76cb02
                    --xinclude $(XSLPROF) $< | \
Packit Service 76cb02
        $(XSLTPROC) $(XSLMAN) - 
Packit Service 76cb02
Packit Service 76cb02
# Actual version of the release
Packit Service 76cb02
version.xml: FORCE
Packit Service 76cb02
	echo "<emphasis>$(VERSION)</emphasis>" > $@
Packit Service 76cb02
Packit Service 76cb02
FORCE: