diff options
| author | Alexander Kanavin <alex.kanavin@gmail.com> | 2021-09-08 20:01:00 +0200 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-10-11 18:41:37 +0100 |
| commit | f33e81a64395666a3cbb5b9ef299606c3b8052f3 (patch) | |
| tree | 2fd42d783a818fb7da5c8a3cd94077f5595be6db | |
| parent | ba92cdc55fde5c9e1109bed3461cf6c6bd908f23 (diff) | |
| download | poky-f33e81a64395666a3cbb5b9ef299606c3b8052f3.tar.gz | |
meson: update 0.58.1 -> 0.59.1
Drop 0003-native_bindir.patch: it doesn't seem to actually define
anything where the use_native parameter is set to true.
Also, the issue should be solved without invasive, custom patching
of the code: via meson.cross, custom .pc files for the items in
question or some other configuration mechanism.
(From OE-Core rev: 191d6d1f614a78ef8496e4357d419c68d1e03170)
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/recipes-devtools/meson/meson.inc | 4 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch | 20 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson/0003-native_bindir.patch | 94 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson/gi-target-dep.patch | 41 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson_0.59.1.bb (renamed from meta/recipes-devtools/meson/meson_0.58.1.bb) | 0 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/nativesdk-meson_0.59.1.bb (renamed from meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb) | 0 |
6 files changed, 10 insertions, 149 deletions
diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc index f1746d2094..c83ea406f0 100644 --- a/meta/recipes-devtools/meson/meson.inc +++ b/meta/recipes-devtools/meson/meson.inc | |||
| @@ -9,15 +9,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57" | |||
| 9 | 9 | ||
| 10 | SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${PV}.tar.gz \ | 10 | SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${PV}.tar.gz \ |
| 11 | file://0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch \ | 11 | file://0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch \ |
| 12 | file://0003-native_bindir.patch \ | ||
| 13 | file://0001-python-module-do-not-manipulate-the-environment-when.patch \ | 12 | file://0001-python-module-do-not-manipulate-the-environment-when.patch \ |
| 14 | file://disable-rpath-handling.patch \ | 13 | file://disable-rpath-handling.patch \ |
| 15 | file://0001-modules-python.py-do-not-substitute-python-s-install.patch \ | 14 | file://0001-modules-python.py-do-not-substitute-python-s-install.patch \ |
| 16 | file://gi-target-dep.patch \ | ||
| 17 | file://0001-Make-CPU-family-warnings-fatal.patch \ | 15 | file://0001-Make-CPU-family-warnings-fatal.patch \ |
| 18 | file://0002-Support-building-allarch-recipes-again.patch \ | 16 | file://0002-Support-building-allarch-recipes-again.patch \ |
| 19 | " | 17 | " |
| 20 | SRC_URI[sha256sum] = "3144a3da662fcf79f1e5602fa929f2821cba4eba28c2c923fe0a7d3e3db04d5d" | 18 | SRC_URI[sha256sum] = "db586a451650d46bbe10984a87b79d9bcdc1caebf38d8e189f8848f8d502356d" |
| 21 | 19 | ||
| 22 | UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases" | 20 | UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases" |
| 23 | UPSTREAM_CHECK_REGEX = "meson-(?P<pver>\d+(\.\d+)+)\.tar" | 21 | UPSTREAM_CHECK_REGEX = "meson-(?P<pver>\d+(\.\d+)+)\.tar" |
diff --git a/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch b/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch index bcccfabd17..c5be526b10 100644 --- a/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch +++ b/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch | |||
| @@ -1,20 +1,21 @@ | |||
| 1 | From b64032a2eb1fb760f4ffd5b4b666e2433cf80d39 Mon Sep 17 00:00:00 2001 | 1 | From 6c4eef1d92e9e42fdbc888365cab3c95fb33c605 Mon Sep 17 00:00:00 2001 |
| 2 | From: Ross Burton <ross.burton@intel.com> | 2 | From: Ross Burton <ross.burton@intel.com> |
| 3 | Date: Tue, 3 Jul 2018 13:59:09 +0100 | 3 | Date: Tue, 3 Jul 2018 13:59:09 +0100 |
| 4 | Subject: [PATCH 1/2] Make CPU family warnings fatal | 4 | Subject: [PATCH] Make CPU family warnings fatal |
| 5 | 5 | ||
| 6 | Upstream-Status: Inappropriate [OE specific] | 6 | Upstream-Status: Inappropriate [OE specific] |
| 7 | Signed-off-by: Ross Burton <ross.burton@intel.com> | 7 | Signed-off-by: Ross Burton <ross.burton@intel.com> |
| 8 | |||
| 8 | --- | 9 | --- |
| 9 | mesonbuild/envconfig.py | 2 +- | 10 | mesonbuild/envconfig.py | 2 +- |
| 10 | mesonbuild/environment.py | 4 +--- | 11 | mesonbuild/environment.py | 4 +--- |
| 11 | 2 files changed, 2 insertions(+), 4 deletions(-) | 12 | 2 files changed, 2 insertions(+), 4 deletions(-) |
| 12 | 13 | ||
| 13 | diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py | 14 | diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py |
| 14 | index c6a4df3..4d58c91 100644 | 15 | index 307aac3..66fb7ec 100644 |
| 15 | --- a/mesonbuild/envconfig.py | 16 | --- a/mesonbuild/envconfig.py |
| 16 | +++ b/mesonbuild/envconfig.py | 17 | +++ b/mesonbuild/envconfig.py |
| 17 | @@ -266,7 +266,7 @@ class MachineInfo: | 18 | @@ -267,7 +267,7 @@ class MachineInfo(HoldableObject): |
| 18 | 19 | ||
| 19 | cpu_family = literal['cpu_family'] | 20 | cpu_family = literal['cpu_family'] |
| 20 | if cpu_family not in known_cpu_families: | 21 | if cpu_family not in known_cpu_families: |
| @@ -24,20 +25,17 @@ index c6a4df3..4d58c91 100644 | |||
| 24 | endian = literal['endian'] | 25 | endian = literal['endian'] |
| 25 | if endian not in ('little', 'big'): | 26 | if endian not in ('little', 'big'): |
| 26 | diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py | 27 | diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py |
| 27 | index fc9b703..eea8345 100644 | 28 | index 71286a5..179917e 100644 |
| 28 | --- a/mesonbuild/environment.py | 29 | --- a/mesonbuild/environment.py |
| 29 | +++ b/mesonbuild/environment.py | 30 | +++ b/mesonbuild/environment.py |
| 30 | @@ -436,9 +436,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: | 31 | @@ -352,9 +352,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: |
| 31 | trial = 'ppc64' | 32 | trial = 'ppc64' |
| 32 | 33 | ||
| 33 | if trial not in known_cpu_families: | 34 | if trial not in known_cpu_families: |
| 34 | - mlog.warning('Unknown CPU family {!r}, please report this at ' | 35 | - mlog.warning(f'Unknown CPU family {trial!r}, please report this at ' |
| 35 | - 'https://github.com/mesonbuild/meson/issues/new with the ' | 36 | - 'https://github.com/mesonbuild/meson/issues/new with the ' |
| 36 | - 'output of `uname -a` and `cat /proc/cpuinfo`'.format(trial)) | 37 | - 'output of `uname -a` and `cat /proc/cpuinfo`') |
| 37 | + raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % trial) | 38 | + raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % trial) |
| 38 | 39 | ||
| 39 | return trial | 40 | return trial |
| 40 | 41 | ||
| 41 | -- | ||
| 42 | 2.24.0 | ||
| 43 | |||
diff --git a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/meta/recipes-devtools/meson/meson/0003-native_bindir.patch deleted file mode 100644 index 89257b9e05..0000000000 --- a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch +++ /dev/null | |||
| @@ -1,94 +0,0 @@ | |||
| 1 | From 30e97d4090a3d3f5b7ddcaf27cfa17f3c8c1d462 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> | ||
| 3 | Date: Wed, 15 Nov 2017 15:05:01 +0100 | ||
| 4 | Subject: [PATCH] native_bindir | ||
| 5 | |||
| 6 | Some libraries, like QT, have pre-processors that convert their input | ||
| 7 | files into something that the cross-compiler can process. We find the | ||
| 8 | path of those pre-processors via pkg-config-native instead of | ||
| 9 | pkg-config. | ||
| 10 | |||
| 11 | This path forces the use of pkg-config-native for host_bins arguments. | ||
| 12 | |||
| 13 | There are some discussions upstream to merge this patch, but I presonaly believe | ||
| 14 | that is is OE only. https://github.com/mesonbuild/meson/issues/1849#issuecomment-303730323 | ||
| 15 | |||
| 16 | Upstream-Status: Inappropriate [OE specific] | ||
| 17 | Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> | ||
| 18 | |||
| 19 | --- | ||
| 20 | mesonbuild/dependencies/base.py | 19 +++++++++++-------- | ||
| 21 | 1 file changed, 11 insertions(+), 8 deletions(-) | ||
| 22 | |||
| 23 | diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py | ||
| 24 | index 14380d4..d0c443f 100644 | ||
| 25 | --- a/mesonbuild/dependencies/base.py | ||
| 26 | +++ b/mesonbuild/dependencies/base.py | ||
| 27 | @@ -179,7 +179,7 @@ class Dependency: | ||
| 28 | def get_exe_args(self, compiler): | ||
| 29 | return [] | ||
| 30 | |||
| 31 | - def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any]) -> str: | ||
| 32 | + def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any], use_native=False) -> str: | ||
| 33 | raise DependencyException(f'{self.name!r} is not a pkgconfig dependency') | ||
| 34 | |||
| 35 | def get_configtool_variable(self, variable_name): | ||
| 36 | @@ -267,7 +267,7 @@ class InternalDependency(Dependency): | ||
| 37 | return True | ||
| 38 | return any(d.is_built() for d in self.ext_deps) | ||
| 39 | |||
| 40 | - def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any]) -> str: | ||
| 41 | + def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any], use_native=False) -> str: | ||
| 42 | raise DependencyException('Method "get_pkgconfig_variable()" is ' | ||
| 43 | 'invalid for an internal dependency') | ||
| 44 | |||
| 45 | @@ -645,8 +645,11 @@ class PkgConfigDependency(ExternalDependency): | ||
| 46 | return s.format(self.__class__.__name__, self.name, self.is_found, | ||
| 47 | self.version_reqs) | ||
| 48 | |||
| 49 | - def _call_pkgbin_real(self, args, env): | ||
| 50 | - cmd = self.pkgbin.get_command() + args | ||
| 51 | + def _call_pkgbin_real(self, args, env, use_native=False): | ||
| 52 | + if use_native: | ||
| 53 | + cmd = [self.pkgbin.get_command()[0] + "-native"] + args | ||
| 54 | + else: | ||
| 55 | + cmd = self.pkgbin.get_command() + args | ||
| 56 | p, out, err = Popen_safe(cmd, env=env) | ||
| 57 | rc, out, err = p.returncode, out.strip(), err.strip() | ||
| 58 | call = ' '.join(cmd) | ||
| 59 | @@ -674,7 +677,7 @@ class PkgConfigDependency(ExternalDependency): | ||
| 60 | if key.startswith('PKG_'): | ||
| 61 | mlog.debug(f'env[{key}]: {value}') | ||
| 62 | |||
| 63 | - def _call_pkgbin(self, args, env=None): | ||
| 64 | + def _call_pkgbin(self, args, env=None, use_native=False): | ||
| 65 | # Always copy the environment since we're going to modify it | ||
| 66 | # with pkg-config variables | ||
| 67 | if env is None: | ||
| 68 | @@ -688,7 +691,7 @@ class PkgConfigDependency(ExternalDependency): | ||
| 69 | targs = tuple(args) | ||
| 70 | cache = PkgConfigDependency.pkgbin_cache | ||
| 71 | if (self.pkgbin, targs, fenv) not in cache: | ||
| 72 | - cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env) | ||
| 73 | + cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env, use_native) | ||
| 74 | return cache[(self.pkgbin, targs, fenv)] | ||
| 75 | |||
| 76 | def _convert_mingw_paths(self, args: T.List[str]) -> T.List[str]: | ||
| 77 | @@ -894,7 +897,7 @@ class PkgConfigDependency(ExternalDependency): | ||
| 78 | (self.name, out_raw)) | ||
| 79 | self.link_args, self.raw_link_args = self._search_libs(out, out_raw) | ||
| 80 | |||
| 81 | - def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any]) -> str: | ||
| 82 | + def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any], use_native=False) -> str: | ||
| 83 | options = ['--variable=' + variable_name, self.name] | ||
| 84 | |||
| 85 | if 'define_variable' in kwargs: | ||
| 86 | @@ -907,7 +910,7 @@ class PkgConfigDependency(ExternalDependency): | ||
| 87 | |||
| 88 | options = ['--define-variable=' + '='.join(definition)] + options | ||
| 89 | |||
| 90 | - ret, out, err = self._call_pkgbin(options) | ||
| 91 | + ret, out, err = self._call_pkgbin(options, use_native=use_native) | ||
| 92 | variable = '' | ||
| 93 | if ret != 0: | ||
| 94 | if self.required: | ||
diff --git a/meta/recipes-devtools/meson/meson/gi-target-dep.patch b/meta/recipes-devtools/meson/meson/gi-target-dep.patch deleted file mode 100644 index 29e164ccc7..0000000000 --- a/meta/recipes-devtools/meson/meson/gi-target-dep.patch +++ /dev/null | |||
| @@ -1,41 +0,0 @@ | |||
| 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: Backport [589236226856f591c9e8daf0cb7aa1aef8862388] | ||
| 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 | ||
diff --git a/meta/recipes-devtools/meson/meson_0.58.1.bb b/meta/recipes-devtools/meson/meson_0.59.1.bb index de9b905c12..de9b905c12 100644 --- a/meta/recipes-devtools/meson/meson_0.58.1.bb +++ b/meta/recipes-devtools/meson/meson_0.59.1.bb | |||
diff --git a/meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb b/meta/recipes-devtools/meson/nativesdk-meson_0.59.1.bb index 0e76cc78f8..0e76cc78f8 100644 --- a/meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb +++ b/meta/recipes-devtools/meson/nativesdk-meson_0.59.1.bb | |||
