summaryrefslogtreecommitdiffhomepage
path: root/build/i18n-update.pl
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2012-07-01 22:46:49 +0000
committerJo-Philipp Wich <jow@openwrt.org>2012-07-01 22:46:49 +0000
commit0b0df324bfdcf4bb9870a8edd82567f4091d6ff1 (patch)
tree782f09ac74bf9c25444b99328902fd78859dc9c1 /build/i18n-update.pl
parent4f5638af1d8dfbfba0d2fc1b5919a20f7835a26d (diff)
build: fixup header order in i18n-update.pl to minimize diffs to pootle
Diffstat (limited to 'build/i18n-update.pl')
-rwxr-xr-xbuild/i18n-update.pl17
1 files changed, 17 insertions, 0 deletions
diff --git a/build/i18n-update.pl b/build/i18n-update.pl
index 0dd213a53..16b82e8dd 100755
--- a/build/i18n-update.pl
+++ b/build/i18n-update.pl
@@ -5,6 +5,22 @@
my $source = shift @ARGV;
my $pattern = shift @ARGV || '*.po';
+sub fixup_header_order
+{
+ my $file = shift || return;
+ local $/;
+
+ open P, "< $file" || die "open(): $!";
+ my $data = readline P;
+ close P;
+
+ $data =~ s/("Language-Team: .*?\\n"\n)(.+?)("Language: .*?\\n"\n)/$1$3$2/s;
+
+ open P, "> $file" || die "open(): $!";
+ print P $data;
+ close P;
+}
+
if( open F, "find $source -type f -name '$pattern' |" )
{
while( chomp( my $file = readline F ) )
@@ -15,6 +31,7 @@ if( open F, "find $source -type f -name '$pattern' |" )
{
printf "Updating %-40s", $file;
system("msgmerge", "-U", "-N", $file, "$source/templates/$basename.pot");
+ fixup_header_order($file);
}
}