diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-devtools/meson/meson.inc | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/meson/meson/gi-target-dep.patch | 41 |
2 files changed, 42 insertions, 0 deletions
diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc index fc3ca85fae..e186dede92 100644 --- a/meta/recipes-devtools/meson/meson.inc +++ b/meta/recipes-devtools/meson/meson.inc | |||
@@ -15,6 +15,7 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P | |||
15 | file://cross-prop-default.patch \ | 15 | file://cross-prop-default.patch \ |
16 | file://0001-modules-python.py-do-not-substitute-python-s-install.patch \ | 16 | file://0001-modules-python.py-do-not-substitute-python-s-install.patch \ |
17 | file://0001-minstall-Correctly-set-uid-gid-of-installed-files.patch \ | 17 | file://0001-minstall-Correctly-set-uid-gid-of-installed-files.patch \ |
18 | file://gi-target-dep.patch \ | ||
18 | " | 19 | " |
19 | SRC_URI[sha256sum] = "72e1c782ba9bda204f4a1ed57f98d027d7b6eb9414c723eebbd6ec7f1955c8a6" | 20 | SRC_URI[sha256sum] = "72e1c782ba9bda204f4a1ed57f98d027d7b6eb9414c723eebbd6ec7f1955c8a6" |
20 | 21 | ||
diff --git a/meta/recipes-devtools/meson/meson/gi-target-dep.patch b/meta/recipes-devtools/meson/meson/gi-target-dep.patch new file mode 100644 index 0000000000..25b30ca27a --- /dev/null +++ b/meta/recipes-devtools/meson/meson/gi-target-dep.patch | |||
@@ -0,0 +1,41 @@ | |||
1 | When building gobject-introspection we want the *native* binaries (as they need | ||
2 | to be executed) but *host* gobject-introspection libraries, as otherwise the | ||
3 | native pkg-config can be used and the build will try to link native and host | ||
4 | binaries together. | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
8 | |||
9 | diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py | ||
10 | index f9660838e..2eefc3fc7 100644 | ||
11 | --- a/mesonbuild/modules/gnome.py | ||
12 | +++ b/mesonbuild/modules/gnome.py | ||
13 | @@ -84,8 +84,8 @@ class GnomeModule(ExtensionModule): | ||
14 | mlog.bold('https://github.com/mesonbuild/meson/issues/1387'), | ||
15 | once=True) | ||
16 | |||
17 | - def _get_native_dep(self, state, depname, required=True): | ||
18 | - kwargs = {'native': True, 'required': required} | ||
19 | + def _get_dep(self, state, depname, native=False, required=True): | ||
20 | + kwargs = {'native': native, 'required': required} | ||
21 | holder = self.interpreter.func_dependency(state.current_node, [depname], kwargs) | ||
22 | return holder.held_object | ||
23 | |||
24 | @@ -101,7 +101,7 @@ class GnomeModule(ExtensionModule): | ||
25 | return ExternalProgram.from_entry(name, prog) | ||
26 | |||
27 | # Check if pkgconfig has a variable | ||
28 | - dep = self._get_native_dep(state, depname, required=False) | ||
29 | + dep = self._get_dep(state, depname, native=True, required=False) | ||
30 | if dep.found() and dep.type_name == 'pkgconfig': | ||
31 | value = dep.get_pkgconfig_variable(varname, {}) | ||
32 | if value: | ||
33 | @@ -481,7 +481,7 @@ class GnomeModule(ExtensionModule): | ||
34 | |||
35 | def _get_gir_dep(self, state): | ||
36 | if not self.gir_dep: | ||
37 | - self.gir_dep = self._get_native_dep(state, 'gobject-introspection-1.0') | ||
38 | + self.gir_dep = self._get_dep(state, 'gobject-introspection-1.0') | ||
39 | self.giscanner = self._get_native_binary(state, 'g-ir-scanner', 'gobject-introspection-1.0', 'g_ir_scanner') | ||
40 | self.gicompiler = self._get_native_binary(state, 'g-ir-compiler', 'gobject-introspection-1.0', 'g_ir_compiler') | ||
41 | return self.gir_dep, self.giscanner, self.gicompiler | ||