X-Git-Url: https://git.deb.at/?p=deb%2Fpackages.git;a=blobdiff_plain;f=cron.d%2F500update_mo;h=9676466cd4c7b83d58dda167dbc70b1c54122cea;hp=073e8429d5b520ebc9e54494432150a8010d1002;hb=9207290e3da462009eba457507a924b7558b3831;hpb=3129ca0e45e5c4e9243c695a98cdae1d3e732c81 diff --git a/cron.d/500update_mo b/cron.d/500update_mo index 073e842..9676466 100755 --- a/cron.d/500update_mo +++ b/cron.d/500update_mo @@ -44,7 +44,7 @@ templates/rfc822/search.tmpl templates/rss/newpkg.tmpl templates/txt/index.tmpl " -podomains="pdo templates sections langs" +podomains="pdo templates sections langs debtags" # Update pot # @@ -53,19 +53,16 @@ xgettext_opts="--language=Perl --keyword=N_ --keyword=_g --foreign-user --add-co echo gettextfiles=$gettextfiles echo templatefiles=$templatefiles -xgettext $xgettext_opts -d pdo -o ${podir}/pdo.pot ${gettextfiles} -$topdir/bin/ttxgettext templates ${templatefiles} >${podir}/templates.pot -xgettext $xgettext_opts -d sections -o ${podir}/sections.pot ${libdir}/Packages/Sections.pm -xgettext $xgettext_opts -d langs -o ${podir}/langs.pot ${libdir}/Packages/I18N/LanguageNames.pm +xgettext $xgettext_opts -d pdo -o ${podir}/pdo.pot.new ${gettextfiles} +xgettext $xgettext_opts -d sections -o ${podir}/sections.pot.new ${libdir}/Packages/Sections.pm +xgettext $xgettext_opts -d langs -o ${podir}/langs.pot.new ${libdir}/Packages/I18N/LanguageNames.pm +$topdir/bin/ttxgettext templates ${templatefiles} >${podir}/templates.pot.new +if [ -f files/debtags/vocabulary ]; then + $topdir/bin/debtags-xgettext files/debtags/vocabulary >${podir}/debtags.pot.new +fi cd $podir -# normalize paths in .pot files -for domain in ${podomains} -do - perl -p -i -e "s,^#:\s*\Q${topdir}\E,#: .,go" ${domain}.pot -done - # Create missing po files # for lang in ${polangs} @@ -76,20 +73,31 @@ do done done -# Update po -# -for lang in ${polangs} +# normalize paths in .pot files +for domain in ${podomains} do - for domain in ${podomains} - do - cp ${domain}.${lang}.po ${domain}.${lang}.po.tmp - msgmerge --previous --quiet --sort-by-file -o ${domain}.${lang}.po ${domain}.${lang}.po.tmp ${domain}.pot - rm ${domain}.${lang}.po.tmp - # normalize paths in .po files - perl -p -i -e "s,^#:\s*\Q${topdir}\E,#: .,go" ${domain}.${lang}.po - done + perl -p -i -e "s,^#:\s*\Q${topdir}\E,#: .,go" ${domain}.pot.new + if [ ! -f ${domain}.pot.new ] || diff -I"POT-Creation-Date" -q ${domain}.pot.new ${domain}.pot >/dev/null 2>&1 + then + echo "${domain}.pot unchanged" + rm ${domain}.pot.new + else + echo "${domain}.pot changed" + mv ${domain}.pot.new ${domain}.pot + # Update po + for lang in ${polangs} + do + echo " update ${domain}.${lang}.po" + cp ${domain}.${lang}.po ${domain}.${lang}.po.tmp + msgmerge --previous --quiet --sort-by-file -o ${domain}.${lang}.po ${domain}.${lang}.po.tmp ${domain}.pot + rm ${domain}.${lang}.po.tmp + # normalize paths in .po files + perl -p -i -e "s,^#:\s*\Q${topdir}\E,#: .,go" ${domain}.${lang}.po + done + fi done +echo # Update mo # test -d ${localedir} || mkdir -p ${localedir}