From: Jo-Philipp Wich <jow@openwrt.org> Date: Thu, 8 Jan 2015 15:46:58 +0000 (+0100) Subject: build: adapt i18n-update.pl to new structure X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=fe9ef86750991cfb56ef3030b51e8fd4a02cef86;p=project%2Fluci.git build: adapt i18n-update.pl to new structure Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> --- diff --git a/build/i18n-update.pl b/build/i18n-update.pl index 4106c6da4c..c82b4fe3dd 100755 --- a/build/i18n-update.pl +++ b/build/i18n-update.pl @@ -1,6 +1,6 @@ #!/usr/bin/perl -@ARGV >= 1 || die "Usage: $0 <po directory> [<file pattern>]\n"; +@ARGV <= 2 || die "Usage: $0 [<po directory>] [<file pattern>]\n"; my $source = shift @ARGV; my $pattern = shift @ARGV || '*.po'; @@ -48,22 +48,36 @@ sub write_header close P; } -if( open F, "find $source -type f -name '$pattern' |" ) +my @dirs; + +if( ! $source ) +{ + @dirs = glob("./*/*/po/"); +} +else +{ + @dirs = ( $source ); +} + +foreach my $dir (@dirs) { - while( chomp( my $file = readline F ) ) + if( open F, "find $dir -type f -name '$pattern' |" ) { - my ( $basename ) = $file =~ m{.+/([^/]+)\.po$}; - - if( -f "$source/templates/$basename.pot" ) + while( chomp( my $file = readline F ) ) { - my $head = read_header($file); + my ( $basename ) = $file =~ m{.+/([^/]+)\.po$}; + + if( -f "$dir/templates/$basename.pot" ) + { + my $head = read_header($file); - printf "Updating %-40s", $file; - system("msgmerge", "-U", "-N", $file, "$source/templates/$basename.pot"); + printf "Updating %-40s", $file; + system("msgmerge", "-U", "-N", $file, "$dir/templates/$basename.pot"); - write_header($file, $head); + write_header($file, $head); + } } - } - close F; + close F; + } }