From d80ff9edf70ee2f260a1ab940a78babc7ce20b9d Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Sun, 18 Jan 2009 09:43:22 +0000 Subject: [PATCH] Further rearrangement on what to display and what to download. --- wwwtools/pg-make-po | 38 ++++++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/wwwtools/pg-make-po b/wwwtools/pg-make-po index 6654174..cc5f0ad 100755 --- a/wwwtools/pg-make-po +++ b/wwwtools/pg-make-po @@ -57,30 +57,36 @@ foreach (@ARGV) { foreach $lang (@all_languages) { print STDERR "$lang: "; + if (-f "$dirname/po/$lang.po") { + # This is what the use to calcuate the displayed percentages. + if (system("$msgmerge $dirname/po/$lang.po $dirname/po/$catalogname.pot -o $dirname/po/$lang.po.mrg") != 0) { + system("$msgmerge $dirname/po/$lang.po $dirname/po/$catalogname.pot -o $dirname/po/$lang.po.mrg 2>$outdir/$catalogname-$lang.po.err 1>/dev/null"); + } + } + if ($version eq 'current') { + # This is what we offer for download. if (system("$gmake -C $dirname po/$lang.po.new") != 0) { system("$gmake -C $dirname po/$lang.po.new 2>$outdir/$catalogname-$lang.po.err 1>/dev/null"); } - } elsif (-f "$dirname/po/$lang.po") { - if (system("$msgmerge $dirname/po/$lang.po $dirname/po/$catalogname.pot -o $dirname/po/$lang.po.new") != 0) { - system("$msgmerge $dirname/po/$lang.po $dirname/po/$catalogname.pot -o $dirname/po/$lang.po.new 2>$outdir/$catalogname-$lang.po.err 1>/dev/null"); - } } - if (! -f "$dirname/po/$lang.po.new") { - # merge failed, proceed with old file - system("cp $dirname/po/$lang.po $outdir/$catalogname-$lang.po") if (-f "$dirname/po/$lang.po"); - system("cp $dirname/po/$lang.po $outdir/$catalogname-$lang.po.old") if (-f "$dirname/po/$lang.po"); - } elsif (-f "$dirname/po/$lang.po") { - # existing po file merged + if (-f "$dirname/po/$lang.po.mrg" && ! -f "$dirname/po/$lang.po.new") { + system("cp $dirname/po/$lang.po.mrg $outdir/$catalogname-$lang.po"); + system("cp $dirname/po/$lang.po.mrg $outdir/$catalogname-$lang.po.old"); + } + + if (-f "$dirname/po/$lang.po.mrg" && -f "$dirname/po/$lang.po.new") { system("cp $dirname/po/$lang.po.new $outdir/$catalogname-$lang.po"); - system("cp $dirname/po/$lang.po $outdir/$catalogname-$lang.po.old"); - if (system("$msgfmt -o /dev/null -v -c $outdir/$catalogname-$lang.po >/dev/null 2>&1") != 0) { - system("$msgfmt -o /dev/null -v -c $outdir/$catalogname-$lang.po 2>$outdir/$catalogname-$lang.po.err 1>/dev/null"); - } - } else { - # nonexisting po file merged + system("cp $dirname/po/$lang.po.mrg $outdir/$catalogname-$lang.po.old"); + } + + if (! -f "$dirname/po/$lang.po.mrg" && -f "$dirname/po/$lang.po.new") { system("cp $dirname/po/$lang.po.new $outdir/$catalogname-$lang.po"); } + + if (system("$msgfmt -o /dev/null -v -c $outdir/$catalogname-$lang.po >/dev/null 2>&1") != 0) { + system("$msgfmt -o /dev/null -v -c $outdir/$catalogname-$lang.po 2>$outdir/$catalogname-$lang.po.err 1>/dev/null"); + } } # foreach $lang } # foreach @ARGV -- 2.39.5