chiark / gitweb /
Update POT and PO files (after fixing #655153)
[developers-reference.git] / Makefile
index 8393f2159d1e1591a87bf52300db47db309aa18c..860e219beef476f25b8028d75ab2710ffe55695a 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,7 @@
 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), \
@@ -48,6 +48,19 @@ validate:                    $(SOURCES)
 %/validate:                    $(addprefix %/,$(SOURCES))
        cd $(@D) && $(XL) index.dbk
 
+# This rule controls the build and installation on the website
+# Logs are here: http://www-master.debian.org/build-logs/ddp/
+.PHONY: publish
+publish:       all
+       [ -d $(PUBLISHDIR) ] || exit 1
+       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 --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
+
 .PHONY: developers-reference.html %/developers-reference.html
 developers-reference.html:     $(CURDIR)/index.html
 %/developers-reference.html:   $(addprefix %/,index.html)
@@ -67,7 +80,11 @@ ifndef LINGUA
 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)
+# workaround to "-a ?" only possible with po4a version in Squeeze, otherwise build is broken in Lenny
+       if [ -f po4a/$(@:.dbk=.add) ]; then \
+               $(TRANSLATE) -m $< -p po4a/$(@:.dbk=.po) -l $@ -a po4a/$(@:.dbk=.add); else \
+               $(TRANSLATE) -m $< -p po4a/$(@:.dbk=.po) -l $@; fi
 
 $(LINGUA)/common.ent:  common.ent
        cd $(@D) && ln -sf ../$(@F) .
@@ -76,7 +93,7 @@ endif
 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 > $@
 
 developers-reference.pdf:       $(CURDIR)/developers-reference.pdf
 %/developers-reference.pdf:     $(addprefix %/,$(SOURCES))
@@ -92,9 +109,20 @@ ifdef LINGUA
 .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)">' >> $@