diff options
author | Corentin Noël <corentin@elementary.io> | 2018-07-25 18:26:07 +0200 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek.chauhan@gmail.com> | 2018-09-03 22:34:22 -0700 |
commit | 176af2c8c33e79732680ebb1e2a25b5cd7a51bb9 (patch) | |
tree | a1e844d4a9c7d291341ee5c391602d3756086fef /mesonbuild/modules/i18n.py | |
parent | c54cd69015b68b2ee583787036cba90420b6d6d8 (diff) | |
download | meson-176af2c8c33e79732680ebb1e2a25b5cd7a51bb9.zip meson-176af2c8c33e79732680ebb1e2a25b5cd7a51bb9.tar.gz meson-176af2c8c33e79732680ebb1e2a25b5cd7a51bb9.tar.bz2 |
i18n: respect variable substitution for the target name when merging translations
Previously it wasn't possible to use twice @BASENAME@ as the targets would then be named @BASENAME@_merge
Diffstat (limited to 'mesonbuild/modules/i18n.py')
-rw-r--r-- | mesonbuild/modules/i18n.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/mesonbuild/modules/i18n.py b/mesonbuild/modules/i18n.py index b44fbea..40f73f7 100644 --- a/mesonbuild/modules/i18n.py +++ b/mesonbuild/modules/i18n.py @@ -80,7 +80,19 @@ class I18nModule(ExtensionModule): command.append(datadirs) kwargs['command'] = command - ct = build.CustomTarget(kwargs['output'] + '_merge', state.subdir, state.subproject, kwargs) + + inputfile = kwargs['input'] + if isinstance(inputfile, str): + inputfile = mesonlib.File.from_source_file(state.environment.source_dir, + state.subdir, inputfile) + output = kwargs['output'] + ifile_abs = inputfile.absolute_path(state.environment.source_dir, + state.environment.build_dir) + values = mesonlib.get_filenames_templates_dict([ifile_abs], None) + outputs = mesonlib.substitute_values([output], values) + output = outputs[0] + + ct = build.CustomTarget(output + '_merge', state.subdir, state.subproject, kwargs) return ModuleReturnValue(ct, [ct]) @FeatureNewKwargs('i18n.gettext', '0.37.0', ['preset']) |