1 # Makefile, used for the developers-reference in DocBook XML
3 SOURCES := $(wildcard *.dbk)
6 TARGETS := $(foreach fmt,html txt pdf,developers-reference.$(fmt)) \
7 $(foreach langext,$(LANGS), \
8 $(foreach fmt,html txt pdf,developers-reference.$(langext).$(fmt)))
10 # programs for creating output
11 DEBIANDOC2HTML := debiandoc2html -c
12 DEBIANDOC2TEXT := debiandoc2text
13 DEBIANDOC2LATEX := debiandoc2latex
14 DEBIANDOC2PS := debiandoc2latexps
15 DEBIANDOC2PDF := debiandoc2latexpdf
17 htmllink := echo "<!entity % htmltext \"INCLUDE\">" > dynamic.ent
18 nohtmllink := echo "<!entity % htmltext \"IGNORE\">" > dynamic.ent
20 make_directory := install -d -m 755
21 install_file := install -m 644 -p
23 XP=xsltproc --nonet --novalid --xinclude
25 XL=xmllint --nonet --noout --postvalid --xinclude
27 # note: the URL is used as identifier, no HTTP is used!
28 DOCBOOK_XSL=http://docbook.sourceforge.net/release/xsl/current
30 # one file per chapter
31 DBK2HTML=--stringparam chunk.section.depth 0 \
32 --stringparam section.autolabel 1 \
33 --stringparam use.id.as.filename 1 \
34 $(DOCBOOK_XSL)/xhtml/chunk.xsl
37 DBK2HTML1=--stringparam section.autolabel 1 \
38 $(DOCBOOK_XSL)/xhtml/docbook.xsl
40 DBK2FO=--stringparam double.sided 1 \
41 --stringparam draft.mode no \
42 --stringparam paper.type A4 \
43 $(DOCBOOK_XSL)/fo/docbook.xsl
44 # fop is currently in contrib, but can go to main now, AFAIK
45 # alternatives: docbook2pdf (seems to die on UTF-8), dblatex (0.2.4
46 # just hangs here) and xmllint (not mature enough, waits in NEW)
50 all: $(TARGETS) dropold
53 -rm -rf developers-reference.ja.html
59 .PHONY: developers-reference.html
60 developers-reference.html: $(SOURCES)
61 $(XP) $(DBK2HTML) index.dbk
63 developers-reference.%.html: developers-reference.%.sgml
65 $(DEBIANDOC2HTML) -l $* $<
67 developers-reference.txt: $(SOURCES)
68 $(XP) $(DBK2HTML1) index.dbk \
69 | w3m -cols 65 -dump -T text/html > $@
71 developers-reference.%.txt: developers-reference.%.sgml
73 $(DEBIANDOC2TEXT) -l $* -O $< > $@
75 developers-reference.fo: $(SOURCES)
76 $(XP) $(DBK2FO) index.dbk > $@
78 developers-reference.pdf: developers-reference.fo
81 developers-reference.%.pdf: developers-reference.%.sgml
83 $(DEBIANDOC2PDF) -l $* $<
85 version.ent: debian/changelog
88 %.validate : % version.ent
94 rm -f *.fo *.html *.pdf *.txt
96 rm -f `find . -name "*~" -o -name "*.bak"`
98 rm -f *~ *.bak .#* core
104 # if rule bomb out, delete the target