diff options
Diffstat (limited to 'po/module.mk')
-rw-r--r-- | po/module.mk | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/po/module.mk b/po/module.mk new file mode 100644 index 0000000000..eb9a85e4e3 --- /dev/null +++ b/po/module.mk @@ -0,0 +1,43 @@ +POTFILE := $(srcdir)/po/scummvm.pot +POFILES := $(wildcard $(srcdir)/po/*.po) + +updatepot: + xgettext -f $(srcdir)/po/POTFILES -D $(srcdir) -d scummvm --c++ -k_ -k_s -o $(POTFILE) \ + "--copyright-holder=ScummVM Team" --package-name=ScummVM \ + --package-version=$(VERSION) --msgid-bugs-address=scummvm-devel@lists.sf.net -o $(POTFILE)_ + + sed -e 's/SOME DESCRIPTIVE TITLE/LANGUAGE translation for ScummVM/' \ + -e 's/UTF-8/CHARSET/' -e 's/PACKAGE/ScummVM/' $(POTFILE)_ > $(POTFILE).new + + rm $(POTFILE)_ + if test -f $(POTFILE); then \ + sed -f $(srcdir)/po/remove-potcdate.sed < $(POTFILE) > $(POTFILE).1 && \ + sed -f $(srcdir)/po/remove-potcdate.sed < $(POTFILE).new > $(POTFILE).2 && \ + if cmp $(POTFILE).1 $(POTFILE).2 >/dev/null 2>&1; then \ + rm -f $(POTFILE).new; \ + else \ + rm -f $(POTFILE) && \ + mv -f $(POTFILE).new $(POTFILE); \ + fi; \ + rm -f $(POTFILE).1 $(POTFILE).2; \ + else \ + mv -f $(POTFILE).new $(POTFILE); \ + fi; + +%.po: $(POTFILE) + msgmerge $@ $(POTFILE) -o $@.new + if cmp $@ $@.new >/dev/null 2>&1; then \ + rm -f $@.new; \ + else \ + mv -f $@.new $@; \ + fi; + +#$(srcdir)/common/messages.cpp: $(POFILES) +# perl $(srcdir)/tools/po2c $^ > $(srcdir)/common/messages.cpp + +update-translations: updatepot $(POFILES) + @$(foreach file, $(POFILES), echo -n $(notdir $(basename $(file)))": ";msgfmt --statistic $(file);) + @rm -f messages.mo + perl $(srcdir)/tools/po2c $(POFILES) > $(srcdir)/common/messages.cpp + +.PHONY: updatepot update-translations |