summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rwxr-xr-xbuild/i18n-merge-master.pl17
1 files changed, 17 insertions, 0 deletions
diff --git a/build/i18n-merge-master.pl b/build/i18n-merge-master.pl
new file mode 100755
index 0000000000..d7479efb84
--- /dev/null
+++ b/build/i18n-merge-master.pl
@@ -0,0 +1,17 @@
+#!/usr/bin/env perl
+
+if (open F, '-|', 'find', $ARGV[0] || '.', '-type', 'f', '-name', '*.po') {
+ while (defined(my $path = readline F)) {
+ chomp $path;
+
+ (my $ref = $path) =~ s/\.po$/\.master.po/;
+
+ printf 'Updating %s ', $path;
+ system("git show --format=\%B 'master:$path' > '$ref'");
+ system('msgmerge', '-N', '-o', $path, $ref, $path);
+ system('msgattrib', '--no-obsolete', '-o', $path, $path);
+ unlink($ref);
+ }
+
+ close F;
+}