summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/meson
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2021-12-04 08:13:00 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-12-06 11:09:47 +0000
commit17fb047282a413aae5af991ecf5bbb225e19581e (patch)
treeb125c3dcbe3eeedc18f369fc08b0bd48d8545542 /meta/recipes-devtools/meson
parentb9bc216c8d25ad3696c858bf12ebe893b8fe0edd (diff)
downloadopenembedded-core-17fb047282a413aae5af991ecf5bbb225e19581e.tar.gz
meson: configure and use generic exe_wrapper
This replaces the specific gtkdoc wrapper setting (which was rejected by upstream in https://github.com/mesonbuild/meson/pull/9627) with a generic, officially supported and documented exe_wrapper, which is enabled subject to qemu usermode support (just as is done for g-i and gtk-doc with autotools). gtk-doc support is adjusted so that this wrapper is passed to meson's gtk-doc module, which passes it to gtk-doc. The adjusted patch is re-submitted upstream. The side effect of this is that meson is now able to run target binaries in a generic way when it wants to, so this may affect cross-builds - hopefully in a positive way. Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/meson')
-rw-r--r--meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch27
1 files changed, 18 insertions, 9 deletions
diff --git a/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch b/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
index ab4d5969d9..b098c4a123 100644
--- a/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
+++ b/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
@@ -1,29 +1,38 @@
-From 2f9c59e0489e569c5382404667c10f5c200a72ad Mon Sep 17 00:00:00 2001
+From bbdd6679e49bcba5ec022b240ac234a87b451e41 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 4 Aug 2017 16:16:41 +0300
-Subject: [PATCH] gtkdoc: fix issues that arise when cross-compiling
+Subject: [PATCH] gtkdoc: add support for a binary wrapper
Make it possible to specify a wrapper for executing binaries
+in cross-compiling scenarios.
(usually, some kind of target hardware emulator, such as qemu)
Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/9627]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
- mesonbuild/modules/gnome.py | 4 ++++
- 1 file changed, 4 insertions(+)
+ mesonbuild/modules/gnome.py | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
-index dc2979e..c9ff9bd 100644
+index 1c6952d..5a6ff94 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
-@@ -1053,6 +1053,10 @@ class GnomeModule(ExtensionModule):
+@@ -35,7 +35,7 @@ from ..mesonlib import (
+ from ..dependencies import Dependency, PkgConfigDependency, InternalDependency
+ from ..interpreterbase import noPosargs, noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs, FeatureDeprecatedKwargs, FeatureDeprecated
+ from ..interpreterbase import typed_kwargs, KwargInfo, ContainerTypeInfo
+-from ..programs import ExternalProgram, OverrideProgram
++from ..programs import ExternalProgram, OverrideProgram, EmptyExternalProgram
+ from ..build import CustomTarget, CustomTargetIndex, GeneratedList
+
+ if T.TYPE_CHECKING:
+@@ -1103,6 +1103,9 @@ class GnomeModule(ExtensionModule):
args.append(f'--{program_name}={path}')
if namespace:
args.append('--namespace=' + namespace)
-+ gtkdoc_exe_wrapper = state.environment.properties.host.get('gtkdoc_exe_wrapper', None)
-+ if gtkdoc_exe_wrapper is not None:
-+ args.append('--run=' + gtkdoc_exe_wrapper)
++ if state.environment.need_exe_wrapper() and not isinstance(state.environment.get_exe_wrapper(), EmptyExternalProgram):
++ args.append('--run=' + ' '.join(state.environment.get_exe_wrapper().get_command()))
+
args += self._unpack_args('--htmlargs=', 'html_args', kwargs)
args += self._unpack_args('--scanargs=', 'scan_args', kwargs)