include ../../Makefile.config
PMSFILES = $(ALLPMS) ../move/move.pm ../move/tree/mdk_totem
PMSFILES_HERE = $(wildcard $(PMSFILES:%=../../%))
POFILES = $(wildcard *.po)
MOFILES = $(POFILES:%.po=%.mo)
LANGS = $(POFILES:%.po=%)
LOCALEDIR=$(DATADIR)/locale
all: help mofiles
mofiles: $(MOFILES)
help:
@if [ ! -d doc ]; then \
echo "Checking out doc stuff now ..."; \
cvs co doc/manualB/{entities,manuals,modules}; \
rm -rf doc/CVS; \
else \
echo "Updating doc stuff now ..."; \
cvs update doc/manualB/{entities,manuals,modules}; \
fi
touch doc/manualB/entities/es/{button,icon,tab,text_field}_list.ent
./help_xml2pm.pl
mv help-zh_cn.pot help-zh_CN.pot
%.mo: %.po
msgfmt -o $@ $<
merge:
for i in $(POFILES); do msgmerge -N -C $$i $$i DrakX.pot > $${i}t; mv $${i}t $$i;done
$(POFILES): DrakX.pot
perl -ne 'print unless /^# DO NOT BOTHER TO MODIFY HERE, SEE:|^#.*\Qdrakx-help.xml/ .. /^$$/' $@ > $@t
if [ -e help-$@t ]; then perl -pe 's|^#~ ||' -i $@t ; msgmerge -C $@t help-$@t $< > $@; else msgmerge $@t $< > $@; fi
rm $@t
DrakX.pot: $(PMSFILES_HERE)
cd ../.. ; perl_checker -q --generate-pot share/po/$@ $(PMSFILES)
install:
for l in $(LANGS); do \
$(SUDO) install -d $(LOCALEDIR)/$$l/LC_MESSAGES; \
$(SUDO) install -m 644 $$l.mo $(LOCALEDIR)/$$l/LC_MESSAGES/$(NAME).mo; \
done
clean:
@rm -rf drakx-help.xml .memdump doc empty.po tmp.* messages tmp.pot *.mo $(POFILES:%=%t)
verif:
perl -ne '/^\s*#/ or $$i += my @l = /\b__?\(/g; END { print "$$i\n" }' $(PMSFILES_HERE)
perl -ne '$$i += my @l = /\.c:/g; END { print "$$i\n" }' DrakX.pot
verif2:
# perl -I ../.. -Mcommon -e 'foreach (qw($(PMSFILES))) { printf "package foo%d;\n", ++$$i; print common::cat_($$_) }' | perl -ne 'print if !/use (diagnostics|vars|strict)/' | OUTFILE=tmp.pm perl -I. -I../.. -Mb_dump_strings >/dev/null 2>/dev/null
perl -pe 's|$$|\\n\\|' tmp.pm > tmp.pm_.c
xgettext --keyword=_ -o tmp.po tmp.pm_.c
msgmerge DrakX.pot tmp.po > tmp.pot
grep "^msgid" tmp.pot | sort > tmp.pot.light
grep "^msgid" DrakX.pot | sort | diff - tmp.pot.light | grep "^>" || true
# for i in *.po; do echo -n "$i "; msgfmt -v $i 2>&1; done | perl -e 'print map { $_->[0] } sort { $a->[1] <=> $b->[1] } map { [ $_, (split)[1] ] } <>'
%: %.sh
# fake built-in
pic/MDK-2006_0-update
Mageia Installer and base platform for many utilities | Thierry Vignaud [tv] |
changed the name of the russian phonetic layout