1
# Convenient makefile for managing translations.
7
# Adding new translations
8
# -----------------------
10
# To start working on a new translation edit the POS=... line
11
# below. If you want to add for example a french translation, add
14
# Then run "make po" to generate a fresh .po file from translatable
15
# strings in t_options.h. Now you can edit the new .po file (fr.po in
16
# the example above) to translate the strings. Please make sure that
17
# your editor encodes the file in UTF-8.
19
# Updating existing translations
20
# ------------------------------
22
# Run "make po" to update .po files with new translatable strings from
23
# t_options.h. Now you can edit the .po files you're interested
24
# in. Please make sure that your editor encodes the file in UTF-8.
29
# Finally run "make" to generate options.h from t_options.h with all
30
# translations. Now you can rebuild the drivers. Any common options
31
# used by the drivers will have option descriptions with the latest
34
# Publishing translations
35
# -----------------------
37
# To get your translation(s) into Mesa CVS, please send me your
43
# The set of supported languages. Add languages as needed.
44
POS=de.po es.po nl.po fr.po sv.po
47
# Don't change anything below, unless you know what you're doing.
50
MOS=$(POS:%.po=%/LC_MESSAGES/options.mo)
53
.PHONY: all clean pot po mo
55
BUILT_SOURCES = options.h
57
# All generated files are cleaned up.
59
-rm -f $(POT) options.h *~
62
# Default target options.h
63
options.h: LOCALEDIR := .
64
options.h: t_options.h $(MOS)
65
$(AM_V_GEN) $(PYTHON2) $(PYTHON_FLAGS) $(srcdir)/gen_xmlpool.py $(srcdir)/t_options.h $(LOCALEDIR) $(LANGS) > options.h
67
# Update .mo files from the corresponding .po files.
68
%/LC_MESSAGES/options.mo: %.po
71
echo "Updating ($$lang) $@ from $?."; \
72
mkdir -p $$lang/LC_MESSAGES; \
75
# Use this target to create or update .po files with new messages in
78
@for po in $(POS); do \
79
if [ -f $$po ]; then \
80
echo "Merging new strings from $(POT) into $@."; \
82
msgmerge -o $$po $$po~ $(POT); \
84
echo "Initializing $$po from $(POT)."; \
85
msginit -i $(POT) -o $$po~ --locale=$*; \
86
sed -e 's/charset=.*\\n/charset=UTF-8\\n/' $$po~ > $$po; \
92
# Extract message catalog from driconf.py.
94
xgettext -L C --from-code utf-8 -o $(POT) t_options.h