aboutsummaryrefslogtreecommitdiff
path: root/graphics/inkscape
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2020-05-21 19:34:26 +0000
committerKurt Jaeger <pi@FreeBSD.org>2020-05-21 19:34:26 +0000
commitf537aa603507ff1f70dade338e47b2142c11d946 (patch)
treedd6bc2ba0228cd7647f92a6896e138d5dc3f5150 /graphics/inkscape
parent154220702ca9fd901033114494212a1ab167ea4c (diff)
downloadports-f537aa603507ff1f70dade338e47b2142c11d946.tar.gz
ports-f537aa603507ff1f70dade338e47b2142c11d946.zip
graphics/inkscape: fix build error "default.es_MX.svg:No such file or directory"
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. PR: 246588 Submitted by: vvd@unislabs.com Obtained from: https://gitlab.com/inkscape/inkscape/-/merge_requests/2020
Notes
Notes: svn path=/head/; revision=536144
Diffstat (limited to 'graphics/inkscape')
-rw-r--r--graphics/inkscape/files/patch-share_templates_create__default__templates.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/graphics/inkscape/files/patch-share_templates_create__default__templates.py b/graphics/inkscape/files/patch-share_templates_create__default__templates.py
new file mode 100644
index 000000000000..03e6b2ca1d35
--- /dev/null
+++ b/graphics/inkscape/files/patch-share_templates_create__default__templates.py
@@ -0,0 +1,11 @@
+--- share/templates/create_default_templates.py.orig 2020-05-21 19:30:52 UTC
++++ share/templates/create_default_templates.py
+@@ -44,6 +44,8 @@ for language in languages:
+ os.makedirs(destination_dir)
+ shutil.copy(source, destination)
+
++# do another loop to ensure we've copied all the translations before using them
++for language in languages:
+ # get translation with help of gettext
+ translation = gettext.translation('inkscape', localedir=binary_dir + '/po/locale', languages=[language])
+ translated_string = translation.gettext(LAYER_STRING)