Update generated files
[phpmyadmin-localized-docs.git] / Makefile
blobf4b18252ba747e576f6b2ae9317277dcd83fdbd9
1 #!/usr/bin/make -f
2 # Makefile to build translations
4 # Languages which we translate
5 LANGUAGES=it pl ja fr cs gl sv nl ka tr fi ca hu nb es de lt ro mn pt_BR zh_CN zh_TW hy en_GB sk sl el da
7 # directory where phpMyAdmin sources are placed
8 PMA_DIR=../phpmyadmin
10 # Option to po4a programs
11 PO4AOPTS=-M utf-8 -k 15
13 # Options for generating po files using po4a
14 PO4A_PO_OPTS=--msgid-bugs-address phpmyadmin-devel@lists.sourceforge.net \
15 --copyright-holder "the phpMyAdmin project" \
16 --package-name "phpMyAdmin documentation" \
17 -M utf-8 \
19 # Options for processing text files
20 PO4A_TEXT_OPTS=-f text -o asciidoc
22 # Options for processing html files
23 PO4A_HTML_OPTS=-f xhtml
25 # phpMyAdmin version
26 PMA_VERSION=$(shell sed -n "s/.*'PMA_VERSION', '\(.*\)'.*/\1/p" $(PMA_DIR)/libraries/Config.class.php)
28 all: $(addsuffix /Documentation.html.stamp, $(addprefix output/, ${LANGUAGES})) \
29 $(addsuffix /index.html, $(addprefix output/, ${LANGUAGES})) \
30 $(addsuffix /README.stamp, $(addprefix output/, ${LANGUAGES})) \
31 $(addsuffix /INSTALL.stamp, $(addprefix output/, ${LANGUAGES})) \
32 $(addsuffix /TODO.stamp, $(addprefix output/, ${LANGUAGES})) \
33 $(addsuffix /themes/original/img/docs_menu_bg.png, $(addprefix output/, ${LANGUAGES})) \
34 $(addsuffix /themes/original/img/logo_right.png, $(addprefix output/, ${LANGUAGES})) \
35 $(addsuffix /favicon.ico, $(addprefix output/, ${LANGUAGES})) \
36 $(addsuffix /docs.css, $(addprefix output/, ${LANGUAGES})) \
37 output/index.html
40 output/%/index.html: po/%.po output/%/index-template.html
41 @echo 'TRANSLATE $@'
42 @po4a-translate $(PO4A_HTML_OPTS) -m output/$*/index-template.html -p $< -l $@ ${PO4AOPTS} -k 0
44 output/%/Documentation.html.stamp: po/%.po addendum/html_head.% addendum/html_comment.% orig-docs/Documentation.html addendum/html_credits.%
45 @echo 'TRANSLATE $@'
46 @po4a-translate $(PO4A_HTML_OPTS) -m orig-docs/Documentation.html -p $< -l output/$*/Documentation.html ${PO4AOPTS} --addendum addendum/html_head.$* --addendum addendum/html_comment.$* --addendum addendum/html_credits.$*
47 @if [ -f output/$*/Documentation.html ] ; then sed -i 's/@@VER@@/$(PMA_VERSION)/' output/$*/Documentation.html ; fi
48 @touch $@
50 output/%/README.stamp: po/%.po orig-docs/README
51 @echo 'TRANSLATE $@'
52 @po4a-translate $(PO4A_TEXT_OPTS) -m orig-docs/README -p $< -l output/$*/README ${PO4AOPTS}
53 @if [ -f output/$*/README ] ; then sed -i 's/@@VER@@/$(PMA_VERSION)/' output/$*/README ; fi
54 @touch $@
56 output/%/TODO.stamp: po/%.po orig-docs/TODO
57 @echo 'TRANSLATE $@'
58 @po4a-translate $(PO4A_TEXT_OPTS) -m orig-docs/TODO -p $< -l output/$*/TODO ${PO4AOPTS}
59 @if [ -f output/$*/TODO ] ; then sed -i 's/@@VER@@/$(PMA_VERSION)/' output/$*/TODO ; fi
60 @touch $@
62 output/%/INSTALL.stamp: po/%.po orig-docs/INSTALL
63 @echo 'TRANSLATE $@'
64 @po4a-translate $(PO4A_TEXT_OPTS) -m orig-docs/INSTALL -p $< -l output/$*/INSTALL ${PO4AOPTS}
65 @if [ -f output/$*/INSTALL ] ; then sed -i 's/@@VER@@/$(PMA_VERSION)/' output/$*/INSTALL ; fi
66 @touch $@
68 .PRECIOUS: addendum/html_head.%
69 addendum/html_head.%: po/%.po addendum/head.html addendum/add-html_head
70 @echo 'TRANSLATE $@'
71 @po4a-translate $(PO4A_HTML_OPTS) -m addendum/head.html -p $< -l $@ ${PO4AOPTS} -k 0 --addendum addendum/add-html_head
73 .PRECIOUS: addendum/html_head-translations.%
74 addendum/html_head-translations.%: po/%.po addendum/head.html addendum/add-html_head-translations
75 @echo 'TRANSLATE $@'
76 @po4a-translate $(PO4A_HTML_OPTS) -m addendum/head.html -p $< -l $@ ${PO4AOPTS} -k 0 --addendum addendum/add-html_head-translations
78 .PRECIOUS: addendum/html_comment.%
79 addendum/html_comment.%: po/%.po addendum/comment.html addendum/add-html_comment
80 @echo 'TRANSLATE $@'
81 @po4a-translate $(PO4A_TEXT_OPTS) -m addendum/comment.html -p $< -l $@ ${PO4AOPTS} -k 0 --addendum addendum/add-html_comment
83 .PRECIOUS: addendum/html_credits.%
84 addendum/html_credits.%: po/%.po addendum/credits.html addendum/add-html_credits
85 @echo 'TRANSLATE $@'
86 @po4a-translate $(PO4A_HTML_OPTS) -m addendum/credits.html -p $< -l $@ ${PO4AOPTS} -k 0 --addendum addendum/add-html_credits
88 output/%/index-template.html: generate-lang-index get-lang-name \
89 $(wildcard $(addsuffix /Documentation.html, output/%) \
90 $(addsuffix /README, output/%) \
91 $(addsuffix /INSTALL, output/%) \
92 $(addsuffix /TODO, output/%))
93 @./generate-lang-index $* > $@
95 output/%/docs.css: $(PMA_DIR)/docs.css
96 @cp $< $@
98 output/%/favicon.ico: $(PMA_DIR)/favicon.ico
99 @cp $< $@
101 output/%/themes/original/img/docs_menu_bg.png: $(PMA_DIR)/themes/original/img/docs_menu_bg.png
102 @cp $< $@
104 output/%/themes/original/img/logo_right.png: $(PMA_DIR)/themes/original/img/logo_right.png
105 @cp $< $@
107 .PRECIOUS: output/%/index-full-template.html
108 output/%/index-full-template.html: generate-lang-index get-lang-name
109 @./generate-lang-index $* full > $@
111 output/index.html: $(wildcard output/*/index.html) generate-index get-lang-name
112 @./generate-index > $@
114 .PRECIOUS: orig-docs/%
115 orig-docs/%: $(PMA_DIR)/%
116 @echo 'SED $@'
117 @sed 's/$(PMA_VERSION)/@@VER@@/' < $< > $@
119 .PRECIOUS: pot/%-html.pot
120 pot/%-html.pot: orig-docs/Documentation.html output/%/index-full-template.html addendum/head.html addendum/credits.html
121 @echo 'GEN $@'
122 @po4a-gettextize $(PO4A_HTML_OPTS) ${PO4A_PO_OPTS} \
123 -m orig-docs/Documentation.html \
124 -m output/$*/index-full-template.html \
125 -m addendum/head.html \
126 -m addendum/credits.html \
127 -p $@
129 .PRECIOUS: pot/%-txt.pot
130 pot/%-txt.pot: orig-docs/INSTALL orig-docs/TODO orig-docs/README addendum/comment.html
131 @echo 'GEN $@'
132 @po4a-gettextize $(PO4A_TEXT_OPTS) ${PO4A_PO_OPTS} \
133 -m addendum/comment.html \
134 -m orig-docs/INSTALL \
135 -m orig-docs/TODO \
136 -m orig-docs/README \
137 -p $@
139 .PRECIOUS: pot/%-full.pot
140 pot/%-full.pot: pot/%-html.pot pot/%-txt.pot
141 @echo 'JOIN $@'
142 @msgcat -o $@ $^
144 po/%.po: pot/%-full.pot
145 @set -e; \
146 if [ ! -f $@ ] ; then msginit -i $< -l $* --no-translator -o $@ ; fi
147 @set -e; \
148 echo 'MERGE $@'; \
149 if [ -f $(PMA_DIR)/po/$*.po ] ; then \
150 msgmerge -U $@ -C $(PMA_DIR)/po/$*.po $< ; \
151 else \
152 msgmerge -U $@ $< ; \
154 @touch $@