diff options
author | Síle Ekaterin Liszka <sheila@vulpine.house> | 2022-12-05 04:04:32 +0000 |
---|---|---|
committer | Zach van Rijn <me@zv.io> | 2023-02-08 16:26:04 +0000 |
commit | c571393d3589becce3d64cb8c39df01a02c70af9 (patch) | |
tree | cd011cdb0f19747f3bcd047221a220cad6565742 /user/meson/meson-0.62.1-gettext-tiny.patch | |
parent | 0c117018119f6f3faac721370226816685505c97 (diff) | |
download | packages-c571393d3589becce3d64cb8c39df01a02c70af9.tar.gz packages-c571393d3589becce3d64cb8c39df01a02c70af9.tar.bz2 packages-c571393d3589becce3d64cb8c39df01a02c70af9.tar.xz packages-c571393d3589becce3d64cb8c39df01a02c70af9.zip |
user/meson: upgrade to 0.62.2
Diffstat (limited to 'user/meson/meson-0.62.1-gettext-tiny.patch')
-rw-r--r-- | user/meson/meson-0.62.1-gettext-tiny.patch | 122 |
1 files changed, 0 insertions, 122 deletions
diff --git a/user/meson/meson-0.62.1-gettext-tiny.patch b/user/meson/meson-0.62.1-gettext-tiny.patch index 67c4fac62..4413a32dc 100644 --- a/user/meson/meson-0.62.1-gettext-tiny.patch +++ b/user/meson/meson-0.62.1-gettext-tiny.patch @@ -90,125 +90,3 @@ index c3298926ef8..c31657a71d3 100644 return update_po(src_sub, options.msgmerge, options.msginit, options.pkgname, langs) else: -From 3767fd103fb61c693f7a1148dea38de0dbc156e9 Mon Sep 17 00:00:00 2001 -From: Eli Schwartz <eschwartz@archlinux.org> -Date: Sat, 7 May 2022 23:06:22 -0400 -Subject: [PATCH 2/3] i18n: fix bug where disabling gettext() broke - merge_file() - -In the former case, the presence of tools is optional, but triggers a -warning and then no-ops the target. In the latter case, the presence of -the tools is mandatory. But if it was already looked up and discovered -to be missing, we did not actually check that it is found before trying -to use it. - -In the case that it isn't found, check again, so that we explicitly -error out with a relevant error message due to setting the required -flag. - -Fixes #10320 ---- - mesonbuild/modules/i18n.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mesonbuild/modules/i18n.py b/mesonbuild/modules/i18n.py -index 4bbc69abfb1..151fd08a01d 100644 ---- a/mesonbuild/modules/i18n.py -+++ b/mesonbuild/modules/i18n.py -@@ -166,7 +166,7 @@ def _get_data_dirs(state: 'ModuleState', dirs: T.Iterable[str]) -> T.List[str]: - KwargInfo('type', str, default='xml', validator=in_set_validator({'xml', 'desktop'})), - ) - def merge_file(self, state: 'ModuleState', args: T.List['TYPE_var'], kwargs: 'MergeFile') -> ModuleReturnValue: -- if self.tools['msgfmt'] is None: -+ if self.tools['msgfmt'] is None or not self.tools['msgfmt'].found(): - self.tools['msgfmt'] = state.find_program('msgfmt', for_machine=mesonlib.MachineChoice.BUILD) - podir = path.join(state.build_to_src, state.subdir, kwargs['po_dir']) - - -From 6176ed157942fb36a2a6dd0c209e21359a1df7b3 Mon Sep 17 00:00:00 2001 -From: Eli Schwartz <eschwartz@archlinux.org> -Date: Sat, 7 May 2022 23:10:13 -0400 -Subject: [PATCH 3/3] i18n: be build-compatible (but not developer-compatible) - with gettext-tiny - -For maintainer targets, we need some more tools that gettext-tiny -doesn't implement. It's a shame to cause NLS to be completely disabled -in such environments, so instead just issue a warning and continue. - -Before 0.62.0 these were never checked for, and would simply fail at -runtime, probably. In theory, the user might install the tools in -between configuring and building, and then the maintainer targets would -begin to work. Return to that behavior -- we still create the targets, -which will *probably* fail, but might not -- and for existing -integrations, failing at `ninja foo-update-po` with "error, program -msgmerge not found" is a bit more discoverable than ninja saying "what -do you mean, there's no such target". - -We still have the 0.62.0 preferred behavior of trying to find the -programs, succeeding in all cases other than gettext-tiny, and -guaranteeing that their paths are set up in a machine-file-respecting -manner. ---- - mesonbuild/modules/i18n.py | 21 ++++++++++++--------- - 1 file changed, 12 insertions(+), 9 deletions(-) - -diff --git a/mesonbuild/modules/i18n.py b/mesonbuild/modules/i18n.py -index 151fd08a01d..d97d166f33f 100644 ---- a/mesonbuild/modules/i18n.py -+++ b/mesonbuild/modules/i18n.py -@@ -140,10 +140,6 @@ def __init__(self, interpreter: 'Interpreter'): - 'xgettext': None, - } - -- @staticmethod -- def nogettext_warning(location: BaseNode) -> None: -- mlog.warning('Gettext not found, all translation targets will be ignored.', once=True, location=location) -- - @staticmethod - def _get_data_dirs(state: 'ModuleState', dirs: T.Iterable[str]) -> T.List[str]: - """Returns source directories of relative paths""" -@@ -223,13 +219,18 @@ def merge_file(self, state: 'ModuleState', args: T.List['TYPE_var'], kwargs: 'Me - ), - ) - def gettext(self, state: 'ModuleState', args: T.Tuple[str], kwargs: 'Gettext') -> ModuleReturnValue: -- for tool in ['msgfmt', 'msginit', 'msgmerge', 'xgettext']: -+ for tool, strict in [('msgfmt', True), ('msginit', False), ('msgmerge', False), ('xgettext', False)]: - if self.tools[tool] is None: - self.tools[tool] = state.find_program(tool, required=False, for_machine=mesonlib.MachineChoice.BUILD) - # still not found? - if not self.tools[tool].found(): -- self.nogettext_warning(state.current_node) -- return ModuleReturnValue(None, []) -+ if strict: -+ mlog.warning('Gettext not found, all translation (po) targets will be ignored.', -+ once=True, location=state.current_node) -+ return ModuleReturnValue(None, []) -+ else: -+ mlog.warning(f'{tool!r} not found, maintainer targets will not work', -+ once=True, fatal=False, location=state.current_node) - packagename = args[0] - pkg_arg = f'--pkgname={packagename}' - -diff -Nurd meson-0.62.1/mesonbuild/modules/i18n.py meson-0.62.1.new/mesonbuild/modules/i18n.py ---- meson-0.62.1/mesonbuild/modules/i18n.py 2022-05-30 17:31:38.274677123 +0000 -+++ meson-0.62.1.new/mesonbuild/modules/i18n.py 2022-05-30 17:34:11.654676626 +0000 -@@ -258,7 +258,8 @@ - potargs.append(datadirs) - if extra_arg: - potargs.append(extra_arg) -- potargs.append('--xgettext=' + self.tools['xgettext'].get_path()) -+ if self.tools['xgettext'].found(): -+ potargs.append('--xgettext=' + self.tools['xgettext'].get_path()) - pottarget = build.RunTarget(packagename + '-pot', potargs, [], state.subdir, state.subproject) - targets.append(pottarget) - -@@ -302,7 +303,8 @@ - if extra_arg: - updatepoargs.append(extra_arg) - for tool in ['msginit', 'msgmerge']: -- updatepoargs.append(f'--{tool}=' + self.tools[tool].get_path()) -+ if self.tools[tool].found(): -+ updatepoargs.append(f'--{tool}=' + self.tools[tool].get_path()) - updatepotarget = build.RunTarget(packagename + '-update-po', updatepoargs, [], state.subdir, state.subproject) - targets.append(updatepotarget) - |