update-locales.php 712 B

12345678910111213141516171819202122232425
  1. <?php
  2. function log_and_exec($cmd) {
  3. echo "Running: $cmd\n";
  4. return shell_exec($cmd);
  5. }
  6. $dir = dirname(dirname(__FILE__));
  7. log_and_exec("xgettext *.php */*.php -D $dir -o $dir/locales/singlesignon.pot -L PHP --add-comments=TRANS --from-code=UTF-8 --force-po --keyword=__sso");
  8. log_and_exec("msginit --no-translator -i $dir/locales/singlesignon.pot -l en_GB -o $dir/locales/en_GB.po");
  9. $files = glob("$dir/locales/*.po");
  10. // Build .mo
  11. foreach ($files as $file) {
  12. $lang = basename($file, ".po");
  13. if ($lang !== "en_GB") {
  14. log_and_exec("msgmerge --update $dir/locales/$lang.po $dir/locales/singlesignon.pot");
  15. }
  16. log_and_exec("msgfmt $dir/locales/$lang.po -o $dir/locales/$lang.mo");
  17. }