X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=Makefile;h=26224444ee01581d32c4ec5acaccfca18230d52a;hb=8fa81bb133f7691a22441d307af46c9f04fe1a86;hp=cb6924cb1ef49cc0b0b95c68658932117c6a444e;hpb=068d63823f4f1552c1ed3b1ec540096a0ee2893f;p=developers-reference.git diff --git a/Makefile b/Makefile index cb6924c..2622444 100644 --- a/Makefile +++ b/Makefile @@ -10,6 +10,8 @@ TARGETS := $(foreach fmt,$(FORMATS),developers-reference.$(fmt)) \ $(foreach lng,$(LANGS), \ $(foreach fmt,$(FORMATS), \ $(lng)/developers-reference.$(fmt))) +# list of targets, that currently cannot build +BLACKLIST := ja/developers-reference.pdf # hopefully overwritten by caller, e.g. debian/rules VERSION=unknown @@ -18,32 +20,26 @@ PUBDATE=unknown # programs for creating output XP=xsltproc --nonet --novalid --xinclude XL=xmllint --nonet --noout --postvalid --xinclude -# fop is currently in contrib, but can go to main, see #366783 +# dblatex 0.2.8 has some problems (e.g. #465221 and Japanese does +# not build) # Alternatives: -# - dblatex (0.2.6 has some problems, next release will be OK; -# Japanese PDF needs non-free cyberbit font) # - docbook2pdf (seems to die on UTF-8, #431085); and +# - fop is currently in contrib, but can go to main, see #366783 # - xmlroff (not mature enough, #182445) -FOP=fop +DBLATEX=dblatex --style=db2latex # The "--keep 0" should be removed as soon as the translations are ready TRANSLATE=po4a-translate --format docbook --keep 0 # XSL files and parameters # note: the URL is used as identifier, no HTTP is used! DOCBOOK_XSL=http://docbook.sourceforge.net/release/xsl/current -# one file per chapter -DBK2HTML=--stringparam chunk.section.depth 0 \ - --stringparam section.autolabel 1 \ - --stringparam use.id.as.filename 1 \ - $(DOCBOOK_XSL)/xhtml/chunk.xsl -# all in one file -DBK2HTML1=--stringparam section.autolabel 1 \ - $(DOCBOOK_XSL)/xhtml/docbook.xsl -DBK2FO=$$TOP/fop.xsl -# $(DOCBOOK_XSL)/fo/docbook.xsl +# for HTML output +DBK2HTML=$(CURDIR)/html.xsl +# all in one file for text output +DBK2HTML1=$(CURDIR)/txt.xsl .PHONY: all -all: $(TARGETS) +all: $(filter-out $(BLACKLIST), $(TARGETS)) .PHONY: validate validate: $(SOURCES) @@ -53,12 +49,12 @@ validate: $(SOURCES) cd $(@D) && $(XL) index.dbk .PHONY: developers-reference.html %/developers-reference.html -developers-reference.html: $(PWD)/index.html +developers-reference.html: $(CURDIR)/index.html %/developers-reference.html: $(addprefix %/,index.html) @true .PRECIOUS: %/index.html -index.html: $(PWD)/developers-reference.html +index.html: $(CURDIR)/developers-reference.html %/index.html: $(addprefix %/,$(SOURCES)) cd $(@D) && $(XP) $(DBK2HTML) index.dbk @@ -66,31 +62,26 @@ index.html: $(PWD)/developers-reference.html .PRECIOUS: %.dbk %.ent ifndef LINGUA %.dbk %.ent: FORCE - $(MAKE) $@ LINGUA=$(@D) + $(MAKE) $@ LINGUA=`basename $(@D)` FORCE: else $(LINGUA)/%.dbk: %.dbk $(patsubst %.dbk,po4a/$(LINGUA)/%.po,%.dbk) $(TRANSLATE) -m $< -p po4a/$(@:.dbk=.po) -l $@ -$(LINGUA)/%.ent: %.ent +$(LINGUA)/common.ent: common.ent cd $(@D) && ln -sf ../$(@F) . endif -developers-reference.txt: $(PWD)/developers-reference.txt +developers-reference.txt: $(CURDIR)/developers-reference.txt %/developers-reference.txt: $(addprefix %/,$(SOURCES)) $(XP) $(DBK2HTML1) $(@D)/index.dbk \ | w3m -cols 65 -dump -T text/html > $@ -developers-reference.fo: $(PWD)/developers-reference.fo - @true - -%/developers-reference.fo: $(addprefix %/,$(SOURCES)) fop.xsl - TOP=`pwd` && cd $(@D) && $(XP) $(DBK2FO) index.dbk > $(@F) - -developers-reference.pdf: $(PWD)/developers-reference.pdf -%/developers-reference.pdf: %/developers-reference.fo - $(FOP) -fo $< -pdf $@ +developers-reference.pdf: $(CURDIR)/developers-reference.pdf +%/developers-reference.pdf: $(addprefix %/,$(SOURCES)) + TOP=`pwd` && cd $(@D) && $(DBLATEX) index.dbk \ + && mv index.dbk.pdf $(@F) .PHONY: pot pot: $(patsubst %.dbk,po4a/po/%.pot,$(SOURCES)) @@ -104,14 +95,14 @@ po4a/$(LINGUA)/%.po: %.dbk po4a-updatepo --format docbook --master $< --po $@ endif -version.ent: +%/version.ent: echo '' > $@ echo '' >> $@ .PHONY: clean clean: rm -f *.fo *.html *.pdf *.txt - rm -rf $(LANGS) + for L in $(LANGS); do rm -rf `basename ./"$$L"/`; done rm -f version.ent rm -f `find . -name "*~" -o -name "*.bak"` rm -f *~ *.bak .#* core