SOURCES := $(wildcard *.dbk) common.ent version.ent
FORMATS := html txt pdf
-LANGS := fr ja
+LANGS := de fr ja
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
+#BLACKLIST := ja/developers-reference.pdf
# hopefully overwritten by caller, e.g. debian/rules
VERSION=unknown
install -d -m 755 $(PUBLISHDIR)/developers-reference
rm -f $(PUBLISHDIR)/developers-reference/*.html
rm -f en && ln -sf . en
- $(foreach format,$(FORMATS),$(foreach lang,en $(LANGS),for file in $(lang)/*.$(format); do if [ -e "$$file" ]; then cp $$file $(PUBLISHDIR)/developers-reference/$$(basename $$file .$(format)).$(lang).$(format); fi; done;))
+ $(foreach format,$(FORMATS),$(foreach lang,en $(LANGS),for file in $(lang)/*.$(format); do if [ -e "$$file" ]; then cp --preserve=timestamps $$file $(PUBLISHDIR)/developers-reference/$$(basename $$file .$(format)).$(lang).$(format); fi; done;))
ln -sf index.en.html $(PUBLISHDIR)/developers-reference/index.html
ln -sf developers-reference.en.pdf $(PUBLISHDIR)/developers-reference/developers-reference.pdf
ln -sf developers-reference.en.txt $(PUBLISHDIR)/developers-reference/developers-reference.txt
FORCE:
else
$(LINGUA)/%.dbk: %.dbk $(patsubst %.dbk,po4a/$(LINGUA)/%.po,%.dbk)
- $(TRANSLATE) -m $< -p po4a/$(@:.dbk=.po) -l $@
+ $(TRANSLATE) -m $< -p po4a/$(@:.dbk=.po) -l $@ -a ?po4a/$(@:.dbk=.add)
$(LINGUA)/common.ent: common.ent
cd $(@D) && ln -sf ../$(@F) .
developers-reference.txt: $(CURDIR)/developers-reference.txt
%/developers-reference.txt: $(addprefix %/,$(SOURCES))
$(XP) $(DBK2HTML1) $(@D)/index.dbk \
- | w3m -cols 70 -dump -no-graph -T text/html > $@
+ | w3m -o display_charset=UTF-8 -cols 70 -dump -no-graph -T text/html > $@
+
+XSLT := xslt
developers-reference.pdf: $(CURDIR)/developers-reference.pdf
%/developers-reference.pdf: $(addprefix %/,$(SOURCES))
- TOP=`pwd` && cd $(@D) && $(DBLATEX) index.dbk \
- && mv index.dbk.pdf $(@F)
+ $(DBLATEX) $(@D)/index.dbk \
+ --backend=xetex \
+ --xsl-user=$(XSLT)/user_param.xsl \
+ --xsl-user=$(XSLT)/xetex_param.xsl \
+ --param=lingua=$(@D) \
+ && mv $(@D)/index.dbk.pdf $@
.PHONY: pot
pot: $(patsubst %.dbk,po4a/po/%.pot,$(SOURCES))
.PHONY: updatepo
updatepo: $(patsubst %.dbk,po4a/$(LINGUA)/%.po,$(SOURCES))
po4a/$(LINGUA)/%.po: %.dbk
- po4a-updatepo --format docbook --master $< --po $@
+ po4a-updatepo --previous --format docbook --master $< --po $@
endif
+tidypo:
+ for po in $(wildcard po4a/*/*.po po4a/*/*.pot); do \
+ msgcat $$po > $$po.tmp && mv $$po.tmp $$po; \
+ done
+
+checkpo:
+ @for po in $(wildcard po4a/*/*.po po4a/*/*.pot); do \
+ echo $$po; \
+ msgfmt --check --verbose $$po; \
+ done
+
%/version.ent:
echo '<!ENTITY version "$(VERSION)">' > $@
echo '<!ENTITY pubdate "$(PUBDATE)">' >> $@