build/i18n-merge-master: ignore apps deleted in master
Refine the code to ignore apps that have been deleted from master but still exist in release branches. E.g. luci-app-samba Previously the unhandled git error from non-existing master mangled the .po files in the release branch: the 18n header was removed and all non-ASCII chars were deleted from translation. Fix this by processing only those files where 'git show' succeeds. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
This commit is contained in:
parent
bcdb9fdc7f
commit
e4baee8d25
1 changed files with 8 additions and 3 deletions
|
@ -7,9 +7,14 @@ if (open F, '-|', 'find', $ARGV[0] || '.', '-type', 'f', '-name', '*.po') {
|
||||||
(my $ref = $path) =~ s/\.po$/\.master.po/;
|
(my $ref = $path) =~ s/\.po$/\.master.po/;
|
||||||
|
|
||||||
printf 'Updating %s ', $path;
|
printf 'Updating %s ', $path;
|
||||||
system("git show --format=\%B 'master:$path' > '$ref'");
|
my $returnCode = system("git show --format=\%B 'master:$path' > '$ref'");
|
||||||
|
if ( $returnCode == 0 )
|
||||||
|
{
|
||||||
system('msgmerge', '-N', '-o', $path, $ref, $path);
|
system('msgmerge', '-N', '-o', $path, $ref, $path);
|
||||||
system('msgattrib', '--no-obsolete', '-o', $path, $path);
|
system('msgattrib', '--no-obsolete', '-o', $path, $path);
|
||||||
|
} else {
|
||||||
|
print "...failed due to git error.\n";
|
||||||
|
}
|
||||||
unlink($ref);
|
unlink($ref);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue