Skip to content

Copy all translation files before using them

Brett T. Warden requested to merge bwarden/inkscape:patch-1 into master

The translation file es_MX.po has a fuzzy attribute for the msgid "Label", so when evaluating this translation, gettext will fall through to language 'es' for the translation. If po/locale/es/LC_MESSAGES/inkscape.mo does not exist at the time of the call, the translation will fail, and "Label" will be returned, causing the check to fail, preventing writing es_MX.svg.

The order in which languages are processed is determined by the results of glob.glob, which may vary with filesystem type. In some build environments, 'es' is processed before 'es_MX', and no problem occurs. This is not guaranteed, however. In other build environments, 'es_MX' occurs first, and lacking 'es', the translation fails, and es_MX.svg is not generated.

To remove reliance on a particular ordering of gmofiles, and ensure build reproducibility, process the translations in two complete passes -- one to copy the gmo files, and when complete, the second to actually use the translations to generate the svg files.

Edited by Brett T. Warden

Merge request reports