<div dir="ltr"><div>Thanks, I have just sent a patch that fixes the error.</div><div><br></div><div>Alex<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 1 Aug 2019 at 16:33, Khem Raj <<a href="mailto:raj.khem@gmail.com" target="_blank">raj.khem@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Alexander<br>
<br>
Either this or the next patch in this series seems to be causing<br>
<br>
<a href="https://errors.yoctoproject.org/Errors/Details/256700/" rel="noreferrer" target="_blank">https://errors.yoctoproject.org/Errors/Details/256700/</a><br>
<br>
On Tue, Jul 30, 2019 at 8:55 AM Alexander Kanavin<br>
<<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>> wrote:<br>
><br>
> Drop backports.<br>
><br>
> Rebase other patches.<br>
><br>
> Signed-off-by: Alexander Kanavin <<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>><br>
> ---<br>
> meta/recipes-devtools/meson/meson.inc | 6 +-<br>
> .../0001-Make-CPU-family-warnings-fatal.patch | 10 +-<br>
> ...etect-windows-also-if-the-system-str.patch | 14 +-<br>
> ...onment.py-check-environment-for-vari.patch | 20 +-<br>
> ...onment.py-do-not-determine-whether-a.patch | 10 +-<br>
> ...pport-building-allarch-recipes-again.patch | 6 +-<br>
> .../meson/meson/0003-native_bindir.patch | 32 +--<br>
> ...ld-allow-multiple-cross-file-options.patch | 185 ------------------<br>
> .../load-configs-generalise-search-path.patch | 53 -----<br>
> .../{<a href="http://meson_0.50.1.bb" rel="noreferrer" target="_blank">meson_0.50.1.bb</a> => <a href="http://meson_0.51.1.bb" rel="noreferrer" target="_blank">meson_0.51.1.bb</a>} | 0<br>
> ...<a href="http://on_0.50.1.bb" rel="noreferrer" target="_blank">on_0.50.1.bb</a> => <a href="http://nativesdk-meson_0.51.1.bb" rel="noreferrer" target="_blank">nativesdk-meson_0.51.1.bb</a>} | 0<br>
> 11 files changed, 49 insertions(+), 287 deletions(-)<br>
> delete mode 100644 meta/recipes-devtools/meson/meson/0007-mesonbuild-allow-multiple-cross-file-options.patch<br>
> delete mode 100644 meta/recipes-devtools/meson/meson/load-configs-generalise-search-path.patch<br>
> rename meta/recipes-devtools/meson/{<a href="http://meson_0.50.1.bb" rel="noreferrer" target="_blank">meson_0.50.1.bb</a> => <a href="http://meson_0.51.1.bb" rel="noreferrer" target="_blank">meson_0.51.1.bb</a>} (100%)<br>
> rename meta/recipes-devtools/meson/{<a href="http://nativesdk-meson_0.50.1.bb" rel="noreferrer" target="_blank">nativesdk-meson_0.50.1.bb</a> => <a href="http://nativesdk-meson_0.51.1.bb" rel="noreferrer" target="_blank">nativesdk-meson_0.51.1.bb</a>} (100%)<br>
><br>
> diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc<br>
> index 6a723683cc0..b9a05967f46 100644<br>
> --- a/meta/recipes-devtools/meson/meson.inc<br>
> +++ b/meta/recipes-devtools/meson/meson.inc<br>
> @@ -11,15 +11,13 @@ SRC_URI = "<a href="https://github.com/mesonbuild/meson/releases/download/$%7BPV%7D/meson-$%7BP" rel="noreferrer" target="_blank">https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P</a><br>
> file://0001-python-module-do-not-manipulate-the-environment-when.patch \<br>
> file://disable-rpath-handling.patch \<br>
> file://cross-prop-default.patch \<br>
> - file://load-configs-generalise-search-path.patch \<br>
> - file://0007-mesonbuild-allow-multiple-cross-file-options.patch \<br>
> file://0001-environment.py-detect-windows-also-if-the-system-str.patch \<br>
> file://0001-mesonbuild-environment.py-do-not-determine-whether-a.patch \<br>
> file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \<br>
> file://0001-modules-python.py-do-not-substitute-python-s-install.patch \<br>
> "<br>
> -SRC_URI[sha256sum] = "f68f56d60c80a77df8fc08fa1016bc5831605d4717b622c96212573271e14ecc"<br>
> -SRC_URI[md5sum] = "24a6527796115828d2ebc75880e18d62"<br>
> +SRC_URI[sha256sum] = "f27b7a60f339ba66fe4b8f81f0d1072e090a08eabbd6aa287683b2c2b9dd2d82"<br>
> +SRC_URI[md5sum] = "48787e391ec5c052799a3dd491f73909"<br>
><br>
> SRC_URI_append_class-native = " \<br>
> file://0001-Make-CPU-family-warnings-fatal.patch \<br>
> 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<br>
> index adde1e271f1..444fc081686 100644<br>
> --- a/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch<br>
> +++ b/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch<br>
> @@ -1,4 +1,4 @@<br>
> -From 4b4b3d4932d928f05dbd74d730a3c8a5ac371e1d Mon Sep 17 00:00:00 2001<br>
> +From f70fee13e4dbc757cd8153cd42d92fa9394fb542 Mon Sep 17 00:00:00 2001<br>
> From: Ross Burton <<a href="mailto:ross.burton@intel.com" target="_blank">ross.burton@intel.com</a>><br>
> Date: Tue, 3 Jul 2018 13:59:09 +0100<br>
> Subject: [PATCH] Make CPU family warnings fatal<br>
> @@ -12,10 +12,10 @@ Signed-off-by: Ross Burton <<a href="mailto:ross.burton@intel.com" target="_blank">ross.burton@intel.com</a>><br>
> 2 files changed, 2 insertions(+), 4 deletions(-)<br>
><br>
> diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py<br>
> -index 5309ef4..3f0a399 100644<br>
> +index 03c6346..86b350b 100644<br>
> --- a/mesonbuild/envconfig.py<br>
> +++ b/mesonbuild/envconfig.py<br>
> -@@ -178,7 +178,7 @@ class MachineInfo:<br>
> +@@ -186,7 +186,7 @@ class MachineInfo:<br>
><br>
> cpu_family = literal['cpu_family']<br>
> if cpu_family not in known_cpu_families:<br>
> @@ -25,10 +25,10 @@ index 5309ef4..3f0a399 100644<br>
> endian = literal['endian']<br>
> if endian not in ('little', 'big'):<br>
> diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py<br>
> -index 3031a82..ecd18d0 100644<br>
> +index 0cfdf9c..40aa189 100644<br>
> --- a/mesonbuild/environment.py<br>
> +++ b/mesonbuild/environment.py<br>
> -@@ -242,9 +242,7 @@ def detect_cpu_family(compilers):<br>
> +@@ -262,9 +262,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str:<br>
> trial = 'parisc'<br>
><br>
> if trial not in known_cpu_families:<br>
> diff --git a/meta/recipes-devtools/meson/meson/0001-environment.py-detect-windows-also-if-the-system-str.patch b/meta/recipes-devtools/meson/meson/0001-environment.py-detect-windows-also-if-the-system-str.patch<br>
> index f6043190af0..37b5356d77a 100644<br>
> --- a/meta/recipes-devtools/meson/meson/0001-environment.py-detect-windows-also-if-the-system-str.patch<br>
> +++ b/meta/recipes-devtools/meson/meson/0001-environment.py-detect-windows-also-if-the-system-str.patch<br>
> @@ -1,4 +1,4 @@<br>
> -From 63b78b7990c5d60f7bc674a26f655caa0bec3c49 Mon Sep 17 00:00:00 2001<br>
> +From b52e47c9d61dc4c930cfc7236fbeb70338c3b953 Mon Sep 17 00:00:00 2001<br>
> From: Alexander Kanavin <<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>><br>
> Date: Mon, 25 Mar 2019 17:17:06 +0100<br>
> Subject: [PATCH] environment.py: detect windows also if the system string<br>
> @@ -6,20 +6,24 @@ Subject: [PATCH] environment.py: detect windows also if the system string<br>
><br>
> Upstream-Status: Pending<br>
> Signed-off-by: Alexander Kanavin <<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>><br>
> +<br>
> ---<br>
> mesonbuild/envconfig.py | 2 +-<br>
> 1 file changed, 1 insertion(+), 1 deletion(-)<br>
><br>
> diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py<br>
> -index f2510c1..5309ef4 100644<br>
> +index 03c6346..a59cd89 100644<br>
> --- a/mesonbuild/envconfig.py<br>
> +++ b/mesonbuild/envconfig.py<br>
> -@@ -194,7 +194,7 @@ class MachineInfo:<br>
> +@@ -198,7 +198,7 @@ class MachineInfo:<br>
> """<br>
> Machine is windows?<br>
> """<br>
> -- return self.system == 'windows'<br>
> +- return self.system in {'windows', 'mingw'}<br>
> + return self.system == 'windows' or 'mingw' in self.system<br>
><br>
> - def is_cygwin(self):<br>
> + def is_cygwin(self) -> bool:<br>
> """<br>
> +--<br>
> +2.17.1<br>
> +<br>
> diff --git a/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch b/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch<br>
> index fadb2734f4b..f4456235fe7 100644<br>
> --- a/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch<br>
> +++ b/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch<br>
> @@ -1,4 +1,4 @@<br>
> -From 63e79329b5dd00882f0cea56a6d907a831b94171 Mon Sep 17 00:00:00 2001<br>
> +From a72dc2b1cddcf180ce782860896deae0b12d5000 Mon Sep 17 00:00:00 2001<br>
> From: Alexander Kanavin <<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>><br>
> Date: Mon, 25 Mar 2019 18:52:48 +0100<br>
> Subject: [PATCH] mesonbuild/environment.py: check environment for various<br>
> @@ -6,23 +6,21 @@ Subject: [PATCH] mesonbuild/environment.py: check environment for various<br>
><br>
> Upstream-Status: Inappropriate [oe-core specific]<br>
> Signed-off-by: Alexander Kanavin <<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>><br>
> +<br>
> ---<br>
> mesonbuild/environment.py | 2 +-<br>
> 1 file changed, 1 insertion(+), 1 deletion(-)<br>
><br>
> diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py<br>
> -index 6e5d689..bbfd87d 100644<br>
> +index 9a029f4..0cfdf9c 100644<br>
> --- a/mesonbuild/environment.py<br>
> +++ b/mesonbuild/environment.py<br>
> -@@ -398,7 +398,7 @@ class Environment:<br>
> +@@ -448,7 +448,7 @@ class Environment:<br>
> config = MesonConfigFile.from_config_parser(<br>
> - coredata.load_configs(self.coredata.cross_files, 'cross'))<br>
> - self.properties.host = Properties(config.get('properties', {}), False)<br>
> -- self.binaries.host = BinaryTable(config.get('binaries', {}), False)<br>
> -+ self.binaries.host = BinaryTable(config.get('binaries', {}), True)<br>
> + coredata.load_configs(self.coredata.cross_files))<br>
> + properties.host = Properties(config.get('properties', {}), False)<br>
> +- binaries.host = BinaryTable(config.get('binaries', {}), False)<br>
> ++ binaries.host = BinaryTable(config.get('binaries', {}), True)<br>
> if 'host_machine' in config:<br>
> - self.machines.host = MachineInfo.from_literal(config['host_machine'])<br>
> + machines.host = MachineInfo.from_literal(config['host_machine'])<br>
> if 'target_machine' in config:<br>
> ---<br>
> -2.17.1<br>
> -<br>
> diff --git a/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-do-not-determine-whether-a.patch b/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-do-not-determine-whether-a.patch<br>
> index 83347145417..8cb11879f4d 100644<br>
> --- a/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-do-not-determine-whether-a.patch<br>
> +++ b/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-do-not-determine-whether-a.patch<br>
> @@ -1,4 +1,4 @@<br>
> -From d9da5e7a16a9397e22a8900fac4b60b40d7f00de Mon Sep 17 00:00:00 2001<br>
> +From ec9c4a22424a5d55fcf213a55d03f096ec24bcae Mon Sep 17 00:00:00 2001<br>
> From: Alexander Kanavin <<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>><br>
> Date: Mon, 25 Mar 2019 18:18:33 +0100<br>
> Subject: [PATCH] mesonbuild/environment.py: do not determine whether a build<br>
> @@ -14,14 +14,14 @@ Signed-off-by: Alexander Kanavin <<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>><br>
> 1 file changed, 1 insertion(+), 1 deletion(-)<br>
><br>
> diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py<br>
> -index d4f0630..c584fa4 100644<br>
> +index 84a7596..9a029f4 100644<br>
> --- a/mesonbuild/environment.py<br>
> +++ b/mesonbuild/environment.py<br>
> -@@ -483,7 +483,7 @@ class Environment:<br>
> +@@ -520,7 +520,7 @@ class Environment:<br>
> self.first_invocation = True<br>
><br>
> - def is_cross_build(self):<br>
> -- return self.coredata.cross_file is not None<br>
> + def is_cross_build(self) -> bool:<br>
> +- return not self.machines.matches_build_machine(MachineChoice.HOST)<br>
> + return self.need_exe_wrapper()<br>
><br>
> def dump_coredata(self):<br>
> diff --git a/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch b/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch<br>
> index e47e555324f..8ad86a46e99 100644<br>
> --- a/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch<br>
> +++ b/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch<br>
> @@ -1,4 +1,4 @@<br>
> -From 2164655328ec4e47335fc9033813274365491ad8 Mon Sep 17 00:00:00 2001<br>
> +From 3009a1c2f1b736b836a057d84dc11f379cba99cf Mon Sep 17 00:00:00 2001<br>
> From: Peter Kjellerstedt <<a href="mailto:pkj@axis.com" target="_blank">pkj@axis.com</a>><br>
> Date: Thu, 26 Jul 2018 16:32:49 +0200<br>
> Subject: [PATCH] Support building allarch recipes again<br>
> @@ -13,10 +13,10 @@ Signed-off-by: Peter Kjellerstedt <<a href="mailto:peter.kjellerstedt@axis.com" target="_blank">peter.kjellerstedt@axis.com</a>><br>
> 1 file changed, 1 insertion(+)<br>
><br>
> diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py<br>
> -index 3f0a399..4509e09 100644<br>
> +index 86b350b..aa426ca 100644<br>
> --- a/mesonbuild/envconfig.py<br>
> +++ b/mesonbuild/envconfig.py<br>
> -@@ -34,6 +34,7 @@ from . import mlog<br>
> +@@ -36,6 +36,7 @@ _T = typing.TypeVar('_T')<br>
><br>
><br>
> known_cpu_families = (<br>
> diff --git a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/meta/recipes-devtools/meson/meson/0003-native_bindir.patch<br>
> index 2b22531dd0c..57de598d2f1 100644<br>
> --- a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch<br>
> +++ b/meta/recipes-devtools/meson/meson/0003-native_bindir.patch<br>
> @@ -1,4 +1,4 @@<br>
> -From e762d85c823adfefc27ba6128c7b997aa50166ce Mon Sep 17 00:00:00 2001<br>
> +From ac38495de38a1ea42e2bc09a2f23c2e945fbc22d Mon Sep 17 00:00:00 2001<br>
> From: Ricardo Ribalda Delgado <<a href="mailto:ricardo.ribalda@gmail.com" target="_blank">ricardo.ribalda@gmail.com</a>><br>
> Date: Wed, 15 Nov 2017 15:05:01 +0100<br>
> Subject: [PATCH] native_bindir<br>
> @@ -22,19 +22,19 @@ Signed-off-by: Ricardo Ribalda Delgado <<a href="mailto:ricardo.ribalda@gmail.com" target="_blank">ricardo.ribalda@gmail.com</a>><br>
> 2 files changed, 14 insertions(+), 11 deletions(-)<br>
><br>
> diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py<br>
> -index 6d3678f..90fdb80 100644<br>
> +index 21da8e2..7d1ef85 100644<br>
> --- a/mesonbuild/dependencies/base.py<br>
> +++ b/mesonbuild/dependencies/base.py<br>
> -@@ -146,7 +146,7 @@ class Dependency:<br>
> - def need_threads(self):<br>
> - return False<br>
> +@@ -155,7 +155,7 @@ class Dependency:<br>
> + def get_exe_args(self, compiler):<br>
> + return []<br>
><br>
> - def get_pkgconfig_variable(self, variable_name, kwargs):<br>
> + def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):<br>
> raise DependencyException('{!r} is not a pkgconfig dependency'.format(<a href="http://self.name" rel="noreferrer" target="_blank">self.name</a>))<br>
><br>
> def get_configtool_variable(self, variable_name):<br>
> -@@ -183,7 +183,7 @@ class InternalDependency(Dependency):<br>
> +@@ -214,7 +214,7 @@ class InternalDependency(Dependency):<br>
> self.sources = sources<br>
> self.ext_deps = ext_deps<br>
><br>
> @@ -43,7 +43,7 @@ index 6d3678f..90fdb80 100644<br>
> raise DependencyException('Method "get_pkgconfig_variable()" is '<br>
> 'invalid for an internal dependency')<br>
><br>
> -@@ -523,15 +523,18 @@ class PkgConfigDependency(ExternalDependency):<br>
> +@@ -639,15 +639,18 @@ class PkgConfigDependency(ExternalDependency):<br>
> return s.format(self.__class__.__name__, <a href="http://self.name" rel="noreferrer" target="_blank">self.name</a>, self.is_found,<br>
> self.version_reqs)<br>
><br>
> @@ -62,10 +62,10 @@ index 6d3678f..90fdb80 100644<br>
><br>
> - def _call_pkgbin(self, args, env=None):<br>
> + def _call_pkgbin(self, args, env=None, use_native=False):<br>
> + # Always copy the environment since we're going to modify it<br>
> + # with pkg-config variables<br>
> if env is None:<br>
> - fenv = env<br>
> - env = os.environ<br>
> -@@ -540,7 +543,7 @@ class PkgConfigDependency(ExternalDependency):<br>
> +@@ -663,7 +666,7 @@ class PkgConfigDependency(ExternalDependency):<br>
> targs = tuple(args)<br>
> cache = PkgConfigDependency.pkgbin_cache<br>
> if (self.pkgbin, targs, fenv) not in cache:<br>
> @@ -74,7 +74,7 @@ index 6d3678f..90fdb80 100644<br>
> return cache[(self.pkgbin, targs, fenv)]<br>
><br>
> def _convert_mingw_paths(self, args):<br>
> -@@ -718,7 +721,7 @@ class PkgConfigDependency(ExternalDependency):<br>
> +@@ -845,7 +848,7 @@ class PkgConfigDependency(ExternalDependency):<br>
> (<a href="http://self.name" rel="noreferrer" target="_blank">self.name</a>, out_raw))<br>
> self.link_args, self.raw_link_args = self._search_libs(out, out_raw)<br>
><br>
> @@ -83,7 +83,7 @@ index 6d3678f..90fdb80 100644<br>
> options = ['--variable=' + variable_name, <a href="http://self.name" rel="noreferrer" target="_blank">self.name</a>]<br>
><br>
> if 'define_variable' in kwargs:<br>
> -@@ -731,7 +734,7 @@ class PkgConfigDependency(ExternalDependency):<br>
> +@@ -858,7 +861,7 @@ class PkgConfigDependency(ExternalDependency):<br>
><br>
> options = ['--define-variable=' + '='.join(definition)] + options<br>
><br>
> @@ -93,10 +93,10 @@ index 6d3678f..90fdb80 100644<br>
> if ret != 0:<br>
> if self.required:<br>
> diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py<br>
> -index 197d22c..c683d21 100644<br>
> +index 6d784e6..73a9e13 100644<br>
> --- a/mesonbuild/dependencies/ui.py<br>
> +++ b/mesonbuild/dependencies/ui.py<br>
> -@@ -285,7 +285,7 @@ class QtBaseDependency(ExternalDependency):<br>
> +@@ -330,7 +330,7 @@ class QtBaseDependency(ExternalDependency):<br>
> self.bindir = self.get_pkgconfig_host_bins(core)<br>
> if not self.bindir:<br>
> # If exec_prefix is not defined, the pkg-config file is broken<br>
> @@ -105,7 +105,7 @@ index 197d22c..c683d21 100644<br>
> if prefix:<br>
> self.bindir = os.path.join(prefix, 'bin')<br>
><br>
> -@@ -427,7 +427,7 @@ class Qt4Dependency(QtBaseDependency):<br>
> +@@ -507,7 +507,7 @@ class Qt4Dependency(QtBaseDependency):<br>
> applications = ['moc', 'uic', 'rcc', 'lupdate', 'lrelease']<br>
> for application in applications:<br>
> try:<br>
> @@ -114,7 +114,7 @@ index 197d22c..c683d21 100644<br>
> except MesonException:<br>
> pass<br>
><br>
> -@@ -437,7 +437,7 @@ class Qt5Dependency(QtBaseDependency):<br>
> +@@ -517,7 +517,7 @@ class Qt5Dependency(QtBaseDependency):<br>
> QtBaseDependency.__init__(self, 'qt5', env, kwargs)<br>
><br>
> def get_pkgconfig_host_bins(self, core):<br>
> diff --git a/meta/recipes-devtools/meson/meson/0007-mesonbuild-allow-multiple-cross-file-options.patch b/meta/recipes-devtools/meson/meson/0007-mesonbuild-allow-multiple-cross-file-options.patch<br>
> deleted file mode 100644<br>
> index 6c2949c0e8b..00000000000<br>
> --- a/meta/recipes-devtools/meson/meson/0007-mesonbuild-allow-multiple-cross-file-options.patch<br>
> +++ /dev/null<br>
> @@ -1,185 +0,0 @@<br>
> -From 07ae4f949b8402cff178dd12c210d9a726ffe2da Mon Sep 17 00:00:00 2001<br>
> -From: Ross Burton <<a href="mailto:ross.burton@intel.com" target="_blank">ross.burton@intel.com</a>><br>
> -Date: Mon, 18 Mar 2019 17:27:57 +0000<br>
> -Subject: [PATCH] mesonbuild: allow multiple --cross-file options<br>
> -<br>
> -Just like --native-file, allow multiple --cross-file options. This is mostly<br>
> -unifying the logic between cross_files and config_files.<br>
> -<br>
> -Upstream-Status: Backport [will be in 0.50.1]<br>
> -Signed-off-by: Ross Burton <<a href="mailto:ross.burton@intel.com" target="_blank">ross.burton@intel.com</a>><br>
> -<br>
> ----<br>
> - .../markdown/snippets/multiple-cross-files.md | 3 ++<br>
> - mesonbuild/backend/backends.py | 3 +-<br>
> - mesonbuild/coredata.py | 52 +++----------------<br>
> - mesonbuild/environment.py | 5 +-<br>
> - mesonbuild/msetup.py | 4 +-<br>
> - mesonbuild/munstable_coredata.py | 5 +-<br>
> - 6 files changed, 20 insertions(+), 52 deletions(-)<br>
> - create mode 100644 docs/markdown/snippets/multiple-cross-files.md<br>
> -<br>
> -diff --git a/docs/markdown/snippets/multiple-cross-files.md b/docs/markdown/snippets/multiple-cross-files.md<br>
> -new file mode 100644<br>
> -index 0000000..de229be<br>
> ---- /dev/null<br>
> -+++ b/docs/markdown/snippets/multiple-cross-files.md<br>
> -@@ -0,0 +1,3 @@<br>
> -+## Multipe cross files can be specified<br>
> -+<br>
> -+`--cross-file` can be passed multiple times, with the configuration files overlaying the same way as `--native-file`.<br>
> -diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py<br>
> -index 4d35d22..5b270d3 100644<br>
> ---- a/mesonbuild/backend/backends.py<br>
> -+++ b/mesonbuild/backend/backends.py<br>
> -@@ -788,8 +788,7 @@ class Backend:<br>
> - deps = [os.path.join(self.build_to_src, df)<br>
> - for df in self.interpreter.get_build_def_files()]<br>
> - if self.environment.is_cross_build():<br>
> -- deps.append(os.path.join(self.build_to_src,<br>
> -- self.environment.coredata.cross_file))<br>
> -+ deps.extend(self.environment.coredata.cross_files)<br>
> - deps.append('meson-private/coredata.dat')<br>
> - if os.path.exists(os.path.join(self.environment.get_source_dir(), 'meson_options.txt')):<br>
> - deps.append(os.path.join(self.build_to_src, 'meson_options.txt'))<br>
> -diff --git a/mesonbuild/coredata.py b/mesonbuild/coredata.py<br>
> -index 066ad30..d80e9a0 100644<br>
> ---- a/mesonbuild/coredata.py<br>
> -+++ b/mesonbuild/coredata.py<br>
> -@@ -265,7 +265,7 @@ class CoreData:<br>
> - self.compiler_options = PerMachine({}, {}, {})<br>
> - self.base_options = {}<br>
> - self.external_preprocess_args = PerMachine({}, {}, {}) # CPPFLAGS only<br>
> -- self.cross_file = self.__load_cross_file(options.cross_file)<br>
> -+ self.cross_files = self.__load_config_files(options.cross_file)<br>
> - self.compilers = OrderedDict()<br>
> - self.cross_compilers = OrderedDict()<br>
> - self.deps = OrderedDict()<br>
> -@@ -276,57 +276,19 @@ class CoreData:<br>
> -<br>
> - @staticmethod<br>
> - def __load_config_files(filenames):<br>
> -+ # Need to try and make the passed filenames absolute because when the<br>
> -+ # files are parsed later we'll have chdir()d.<br>
> - if not filenames:<br>
> - return []<br>
> - filenames = [os.path.abspath(os.path.expanduser(os.path.expanduser(f)))<br>
> - for f in filenames]<br>
> - return filenames<br>
> -<br>
> -- @staticmethod<br>
> -- def __load_cross_file(filename):<br>
> -- """Try to load the cross file.<br>
> --<br>
> -- If the filename is None return None. If the filename is an absolute<br>
> -- (after resolving variables and ~), return that absolute path. Next,<br>
> -- check if the file is relative to the current source dir. If the path<br>
> -- still isn't resolved do the following:<br>
> -- Windows:<br>
> -- - Error<br>
> -- *:<br>
> -- - $XDG_DATA_HOME/meson/cross (or ~/.local/share/meson/cross if<br>
> -- undefined)<br>
> -- - $XDG_DATA_DIRS/meson/cross (or<br>
> -- /usr/local/share/meson/cross:/usr/share/meson/cross if undefined)<br>
> -- - Error<br>
> --<br>
> -- Non-Windows follows the Linux path and will honor XDG_* if set. This<br>
> -- simplifies the implementation somewhat.<br>
> -- """<br>
> -- if filename is None:<br>
> -- return None<br>
> -- filename = os.path.expanduser(os.path.expandvars(filename))<br>
> -- if os.path.isabs(filename):<br>
> -- return filename<br>
> -- path_to_try = os.path.abspath(filename)<br>
> -- if os.path.isfile(path_to_try):<br>
> -- return path_to_try<br>
> -- if sys.platform != 'win32':<br>
> -- paths = [<br>
> -- os.environ.get('XDG_DATA_HOME', os.path.expanduser('~/.local/share')),<br>
> -- ] + os.environ.get('XDG_DATA_DIRS', '/usr/local/share:/usr/share').split(':')<br>
> -- for path in paths:<br>
> -- path_to_try = os.path.join(path, 'meson', 'cross', filename)<br>
> -- if os.path.isfile(path_to_try):<br>
> -- return path_to_try<br>
> -- raise MesonException('Cannot find specified cross file: ' + filename)<br>
> --<br>
> -- raise MesonException('Cannot find specified cross file: ' + filename)<br>
> --<br>
> - def libdir_cross_fixup(self):<br>
> - # By default set libdir to "lib" when cross compiling since<br>
> - # getting the "system default" is always wrong on multiarch<br>
> - # platforms as it gets a value like lib/x86_64-linux-gnu.<br>
> -- if self.cross_file is not None:<br>
> -+ if self.cross_files:<br>
> - self.builtins['libdir'].value = 'lib'<br>
> -<br>
> - def sanitize_prefix(self, prefix):<br>
> -@@ -642,8 +604,8 @@ def read_cmd_line_file(build_dir, options):<br>
> - options.cmd_line_options = d<br>
> -<br>
> - properties = config['properties']<br>
> -- if options.cross_file is None:<br>
> -- options.cross_file = properties.get('cross_file', None)<br>
> -+ if not options.cross_file:<br>
> -+ options.cross_file = ast.literal_eval(properties.get('cross_file', '[]'))<br>
> - if not options.native_file:<br>
> - # This will be a string in the form: "['first', 'second', ...]", use<br>
> - # literal_eval to get it into the list of strings.<br>
> -@@ -654,7 +616,7 @@ def write_cmd_line_file(build_dir, options):<br>
> - config = CmdLineFileParser()<br>
> -<br>
> - properties = {}<br>
> -- if options.cross_file is not None:<br>
> -+ if options.cross_file:<br>
> - properties['cross_file'] = options.cross_file<br>
> - if options.native_file:<br>
> - properties['native_file'] = options.native_file<br>
> -diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py<br>
> -index c25ef33..4c1c5ac 100644<br>
> ---- a/mesonbuild/environment.py<br>
> -+++ b/mesonbuild/environment.py<br>
> -@@ -394,8 +394,9 @@ class Environment:<br>
> - self.binaries.build = BinaryTable(config.get('binaries', {}))<br>
> - self.paths.build = Directories(**config.get('paths', {}))<br>
> -<br>
> -- if self.coredata.cross_file is not None:<br>
> -- config = MesonConfigFile.parse_datafile(self.coredata.cross_file)<br>
> -+ if self.coredata.cross_files:<br>
> -+ config = MesonConfigFile.from_config_parser(<br>
> -+ coredata.load_configs(self.coredata.cross_files, 'cross'))<br>
> - self.properties.host = Properties(config.get('properties', {}), False)<br>
> - self.binaries.host = BinaryTable(config.get('binaries', {}), False)<br>
> - if 'host_machine' in config:<br>
> -diff --git a/mesonbuild/msetup.py b/mesonbuild/msetup.py<br>
> -index 023afdb..6e8ca83 100644<br>
> ---- a/mesonbuild/msetup.py<br>
> -+++ b/mesonbuild/msetup.py<br>
> -@@ -29,7 +29,9 @@ from .mesonlib import MesonException<br>
> -<br>
> - def add_arguments(parser):<br>
> - coredata.register_builtin_arguments(parser)<br>
> -- parser.add_argument('--cross-file', default=None,<br>
> -+ parser.add_argument('--cross-file',<br>
> -+ default=[],<br>
> -+ action='append',<br>
> - help='File describing cross compilation environment.')<br>
> - parser.add_argument('--native-file',<br>
> - default=[],<br>
> -diff --git a/mesonbuild/munstable_coredata.py b/mesonbuild/munstable_coredata.py<br>
> -index 78f3f34..913f942 100644<br>
> ---- a/mesonbuild/munstable_coredata.py<br>
> -+++ b/mesonbuild/munstable_coredata.py<br>
> -@@ -81,8 +81,9 @@ def run(options):<br>
> - print('Last seen PKGCONFIG enviroment variable value: ' + v)<br>
> - elif k == 'version':<br>
> - print('Meson version: ' + v)<br>
> -- elif k == 'cross_file':<br>
> -- print('Cross File: ' + (v or 'None'))<br>
> -+ elif k == 'cross_files':<br>
> -+ if v:<br>
> -+ print('Cross File: ' + ' '.join(v))<br>
> - elif k == 'config_files':<br>
> - if v:<br>
> - print('Native File: ' + ' '.join(v))<br>
> diff --git a/meta/recipes-devtools/meson/meson/load-configs-generalise-search-path.patch b/meta/recipes-devtools/meson/meson/load-configs-generalise-search-path.patch<br>
> deleted file mode 100644<br>
> index 2056763db5d..00000000000<br>
> --- a/meta/recipes-devtools/meson/meson/load-configs-generalise-search-path.patch<br>
> +++ /dev/null<br>
> @@ -1,53 +0,0 @@<br>
> -From d57dd1092e84e08ee15d7063b6c56bd6d864f2e1 Mon Sep 17 00:00:00 2001<br>
> -From: Ross Burton <<a href="mailto:ross.burton@intel.com" target="_blank">ross.burton@intel.com</a>><br>
> -Date: Mon, 18 Mar 2019 16:16:56 +0000<br>
> -Subject: [PATCH] load_configs: generalise the search path<br>
> -<br>
> -Instead of hard-coding the fact that load_configs() searches for files under<br>
> -meson/native, pass in the subdirectory allowing the cross-file code to use the<br>
> -same logic.<br>
> -<br>
> -Upstream-Status: Backport<br>
> -Signed-off-by: Alexander Kanavin <<a href="mailto:alex.kanavin@gmail.com" target="_blank">alex.kanavin@gmail.com</a>><br>
> ----<br>
> - mesonbuild/coredata.py | 6 +++---<br>
> - mesonbuild/environment.py | 2 +-<br>
> - 2 files changed, 4 insertions(+), 4 deletions(-)<br>
> -<br>
> -diff --git a/mesonbuild/coredata.py b/mesonbuild/coredata.py<br>
> -index fba90fa369..6e60917d10 100644<br>
> ---- a/mesonbuild/coredata.py<br>
> -+++ b/mesonbuild/coredata.py<br>
> -@@ -211,8 +211,8 @@ def is_auto(self):<br>
> - return self.value == 'auto'<br>
> -<br>
> -<br>
> --def load_configs(filenames):<br>
> -- """Load native files."""<br>
> -+def load_configs(filenames, subdir):<br>
> -+ """Load configuration files from a named subdirectory."""<br>
> - def gen():<br>
> - for f in filenames:<br>
> - f = os.path.expanduser(os.path.expandvars(f))<br>
> -@@ -225,7 +225,7 @@ def gen():<br>
> - os.environ.get('XDG_DATA_HOME', os.path.expanduser('~/.local/share')),<br>
> - ] + os.environ.get('XDG_DATA_DIRS', '/usr/local/share:/usr/share').split(':')<br>
> - for path in paths:<br>
> -- path_to_try = os.path.join(path, 'meson', 'native', f)<br>
> -+ path_to_try = os.path.join(path, 'meson', subdir, f)<br>
> - if os.path.isfile(path_to_try):<br>
> - yield path_to_try<br>
> - break<br>
> -diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py<br>
> -index 58adb06960..92a00dd7bf 100644<br>
> ---- a/mesonbuild/environment.py<br>
> -+++ b/mesonbuild/environment.py<br>
> -@@ -408,7 +408,7 @@ def __init__(self, source_dir, build_dir, options):<br>
> -<br>
> - if self.coredata.config_files is not None:<br>
> - config = MesonConfigFile.from_config_parser(<br>
> -- coredata.load_configs(self.coredata.config_files))<br>
> -+ coredata.load_configs(self.coredata.config_files, 'native'))<br>
> - self.binaries.build = BinaryTable(config.get('binaries', {}))<br>
> - self.paths.build = Directories(**config.get('paths', {}))<br>
> -<br>
> diff --git a/meta/recipes-devtools/meson/<a href="http://meson_0.50.1.bb" rel="noreferrer" target="_blank">meson_0.50.1.bb</a> b/meta/recipes-devtools/meson/<a href="http://meson_0.51.1.bb" rel="noreferrer" target="_blank">meson_0.51.1.bb</a><br>
> similarity index 100%<br>
> rename from meta/recipes-devtools/meson/<a href="http://meson_0.50.1.bb" rel="noreferrer" target="_blank">meson_0.50.1.bb</a><br>
> rename to meta/recipes-devtools/meson/<a href="http://meson_0.51.1.bb" rel="noreferrer" target="_blank">meson_0.51.1.bb</a><br>
> diff --git a/meta/recipes-devtools/meson/<a href="http://nativesdk-meson_0.50.1.bb" rel="noreferrer" target="_blank">nativesdk-meson_0.50.1.bb</a> b/meta/recipes-devtools/meson/<a href="http://nativesdk-meson_0.51.1.bb" rel="noreferrer" target="_blank">nativesdk-meson_0.51.1.bb</a><br>
> similarity index 100%<br>
> rename from meta/recipes-devtools/meson/<a href="http://nativesdk-meson_0.50.1.bb" rel="noreferrer" target="_blank">nativesdk-meson_0.50.1.bb</a><br>
> rename to meta/recipes-devtools/meson/<a href="http://nativesdk-meson_0.51.1.bb" rel="noreferrer" target="_blank">nativesdk-meson_0.51.1.bb</a><br>
> --<br>
> 2.17.1<br>
><br>
> --<br>
> _______________________________________________<br>
> Openembedded-core mailing list<br>
> <a href="mailto:Openembedded-core@lists.openembedded.org" target="_blank">Openembedded-core@lists.openembedded.org</a><br>
> <a href="http://lists.openembedded.org/mailman/listinfo/openembedded-core" rel="noreferrer" target="_blank">http://lists.openembedded.org/mailman/listinfo/openembedded-core</a><br>
</blockquote></div>