1
0
mirror of https://git.yoctoproject.org/poky synced 2026-06-03 13:49:49 +00:00

meson: upgrade 0.53.2 -> 0.54.2

Drop 0001-mesonbuild-environment.py-check-environment-for-vari.patch
as upstream has refactored the code.

(From OE-Core rev: 1264edce86cafaa64428bb42844437ac4de7df3a)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Alexander Kanavin
2020-05-31 17:52:43 +02:00
committed by Richard Purdie
parent 3ec2330acf
commit 7b2ae9881f
10 changed files with 81 additions and 99 deletions
+2 -4
View File
@@ -9,16 +9,14 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${PV}.tar.gz \
file://0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch \
file://0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch \
file://0003-native_bindir.patch \
file://0001-python-module-do-not-manipulate-the-environment-when.patch \
file://disable-rpath-handling.patch \
file://cross-prop-default.patch \
file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \
file://0001-modules-python.py-do-not-substitute-python-s-install.patch \
file://0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch \
"
SRC_URI[sha256sum] = "3e8f830f33184397c2eb0b651ec502adb63decb28978bdc84b3558d71284c21f"
SRC_URI[md5sum] = "80303535995fcae72bdb887df102b421"
SRC_URI[sha256sum] = "a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455"
SRC_URI_append_class-native = " \
file://0001-Make-CPU-family-warnings-fatal.patch \
@@ -1,4 +1,4 @@
From ee638fd4a299bfc53a2238e9f71ae310c8d97460 Mon Sep 17 00:00:00 2001
From 830db2c7a136b2446d740c9ca025374352ffd16d Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Tue, 3 Jul 2018 13:59:09 +0100
Subject: [PATCH] Make CPU family warnings fatal
@@ -12,10 +12,10 @@ Signed-off-by: Ross Burton <ross.burton@intel.com>
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
index 0f277a7..24578ea 100644
index 17058df..18bbf86 100644
--- a/mesonbuild/envconfig.py
+++ b/mesonbuild/envconfig.py
@@ -192,7 +192,7 @@ class MachineInfo:
@@ -225,7 +225,7 @@ class MachineInfo:
cpu_family = literal['cpu_family']
if cpu_family not in known_cpu_families:
@@ -25,10 +25,10 @@ index 0f277a7..24578ea 100644
endian = literal['endian']
if endian not in ('little', 'big'):
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index dc8b14f..3aab71e 100644
index a2f78a4..59fcb07 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -354,9 +354,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str:
@@ -364,9 +364,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str:
trial = 'parisc'
if trial not in known_cpu_families:
@@ -0,0 +1,41 @@
From 7be634fa9705d0367f48a91305f9acb642ff0a11 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Wed, 27 May 2020 16:43:05 +0000
Subject: [PATCH] gnome.py: prefix g-i paths with PKG_CONFIG_SYSROOT_DIR
When using sysroots for builds, the standard target paths for the
tools need to be prefixed (pkg-config is not clever enough to
determine when a custom variable is a path)
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
mesonbuild/modules/gnome.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index 89d5d5d..d75f2e5 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -739,17 +739,17 @@ class GnomeModule(ExtensionModule):
if giscanner.found():
giscanner_path = giscanner.get_command()[0]
if not any(x in giscanner_path for x in gi_util_dirs_check):
- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
+ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
else:
- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
+ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
if gicompiler.found():
gicompiler_path = gicompiler.get_command()[0]
if not any(x in gicompiler_path for x in gi_util_dirs_check):
- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
+ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
else:
- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
+ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
ns = kwargs.pop('namespace')
nsversion = kwargs.pop('nsversion')
@@ -1,26 +0,0 @@
From a72dc2b1cddcf180ce782860896deae0b12d5000 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Mon, 25 Mar 2019 18:52:48 +0100
Subject: [PATCH] mesonbuild/environment.py: check environment for various
binaries
Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
mesonbuild/environment.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index 9a029f4..0cfdf9c 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -448,7 +448,7 @@ class Environment:
config = MesonConfigFile.from_config_parser(
coredata.load_configs(self.coredata.cross_files))
properties.host = Properties(config.get('properties', {}), False)
- binaries.host = BinaryTable(config.get('binaries', {}), False)
+ binaries.host = BinaryTable(config.get('binaries', {}), True)
if 'host_machine' in config:
machines.host = MachineInfo.from_literal(config['host_machine'])
if 'target_machine' in config:
@@ -1,4 +1,4 @@
From 9c221c74bd306dfa6fec22c8f156eb9d4e4f7fcb Mon Sep 17 00:00:00 2001
From 45df8f0a71c6b60cb98a336f8690af04965dfa9b Mon Sep 17 00:00:00 2001
From: Peter Kjellerstedt <pkj@axis.com>
Date: Thu, 26 Jul 2018 16:32:49 +0200
Subject: [PATCH] Support building allarch recipes again
@@ -13,10 +13,10 @@ Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
1 file changed, 1 insertion(+)
diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
index 24578ea..216e71f 100644
index 18bbf86..e76315e 100644
--- a/mesonbuild/envconfig.py
+++ b/mesonbuild/envconfig.py
@@ -36,6 +36,7 @@ _T = typing.TypeVar('_T')
@@ -36,6 +36,7 @@ _T = T.TypeVar('_T')
known_cpu_families = (
@@ -1,40 +0,0 @@
From 9ccaed380780178c4dab3a681f652ac7cd27452d Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 4 Aug 2017 16:18:47 +0300
Subject: [PATCH] gobject-introspection: determine g-ir-scanner and
g-ir-compiler paths from pkgconfig
Do not hardcode the name of those binaries; gobject-introspection
provides them via pkgconfig, and they can be set to something else
(for example when cross-compiling).
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
mesonbuild/modules/gnome.py | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index 7c5a363..0002498 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -744,15 +744,15 @@ class GnomeModule(ExtensionModule):
if kwargs.get('install_dir'):
raise MesonException('install_dir is not supported with generate_gir(), see "install_dir_gir" and "install_dir_typelib"')
- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
-
girtargets = [self._unwrap_gir_target(arg, state) for arg in args]
if len(girtargets) > 1 and any([isinstance(el, build.Executable) for el in girtargets]):
raise MesonException('generate_gir only accepts a single argument when one of the arguments is an executable')
self.gir_dep, pkgargs = self._get_gir_dep(state)
+ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
+ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
+
ns = kwargs.pop('namespace')
nsversion = kwargs.pop('nsversion')
@@ -1,4 +1,4 @@
From e76726321067748362b39937bd1e663a1a948ad5 Mon Sep 17 00:00:00 2001
From da2091f6dfe978fc6140fc2d01bcafbbfae8d8db Mon Sep 17 00:00:00 2001
From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Date: Wed, 15 Nov 2017 15:05:01 +0100
Subject: [PATCH] native_bindir
@@ -22,10 +22,10 @@ Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
2 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
index 40e304c..4b687df 100644
index 50f4179..e1529d8 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
@@ -184,7 +184,7 @@ class Dependency:
@@ -157,7 +157,7 @@ class Dependency:
def get_exe_args(self, compiler):
return []
@@ -34,16 +34,16 @@ index 40e304c..4b687df 100644
raise DependencyException('{!r} is not a pkgconfig dependency'.format(self.name))
def get_configtool_variable(self, variable_name):
@@ -247,7 +247,7 @@ class InternalDependency(Dependency):
self.sources = sources
@@ -225,7 +225,7 @@ class InternalDependency(Dependency):
self.ext_deps = ext_deps
self.variables = variables
- def get_pkgconfig_variable(self, variable_name, kwargs):
+ def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
raise DependencyException('Method "get_pkgconfig_variable()" is '
'invalid for an internal dependency')
@@ -673,15 +673,18 @@ class PkgConfigDependency(ExternalDependency):
@@ -633,15 +633,18 @@ class PkgConfigDependency(ExternalDependency):
return s.format(self.__class__.__name__, self.name, self.is_found,
self.version_reqs)
@@ -65,7 +65,7 @@ index 40e304c..4b687df 100644
# Always copy the environment since we're going to modify it
# with pkg-config variables
if env is None:
@@ -701,7 +704,7 @@ class PkgConfigDependency(ExternalDependency):
@@ -667,7 +670,7 @@ class PkgConfigDependency(ExternalDependency):
targs = tuple(args)
cache = PkgConfigDependency.pkgbin_cache
if (self.pkgbin, targs, fenv) not in cache:
@@ -74,7 +74,7 @@ index 40e304c..4b687df 100644
return cache[(self.pkgbin, targs, fenv)]
def _convert_mingw_paths(self, args: T.List[str]) -> T.List[str]:
@@ -907,7 +910,7 @@ class PkgConfigDependency(ExternalDependency):
@@ -876,7 +879,7 @@ class PkgConfigDependency(ExternalDependency):
(self.name, out_raw))
self.link_args, self.raw_link_args = self._search_libs(out, out_raw)
@@ -83,7 +83,7 @@ index 40e304c..4b687df 100644
options = ['--variable=' + variable_name, self.name]
if 'define_variable' in kwargs:
@@ -920,7 +923,7 @@ class PkgConfigDependency(ExternalDependency):
@@ -889,7 +892,7 @@ class PkgConfigDependency(ExternalDependency):
options = ['--define-variable=' + '='.join(definition)] + options
@@ -93,10 +93,10 @@ index 40e304c..4b687df 100644
if ret != 0:
if self.required:
diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py
index da411ef..856506a 100644
index 741f0b8..134dd54 100644
--- a/mesonbuild/dependencies/ui.py
+++ b/mesonbuild/dependencies/ui.py
@@ -330,7 +330,7 @@ class QtBaseDependency(ExternalDependency):
@@ -320,7 +320,7 @@ class QtBaseDependency(ExternalDependency):
self.bindir = self.get_pkgconfig_host_bins(core)
if not self.bindir:
# If exec_prefix is not defined, the pkg-config file is broken
@@ -105,7 +105,7 @@ index da411ef..856506a 100644
if prefix:
self.bindir = os.path.join(prefix, 'bin')
@@ -508,7 +508,7 @@ class Qt4Dependency(QtBaseDependency):
@@ -524,7 +524,7 @@ class Qt4Dependency(QtBaseDependency):
applications = ['moc', 'uic', 'rcc', 'lupdate', 'lrelease']
for application in applications:
try:
@@ -114,7 +114,7 @@ index da411ef..856506a 100644
except MesonException:
pass
@@ -518,7 +518,7 @@ class Qt5Dependency(QtBaseDependency):
@@ -534,7 +534,7 @@ class Qt5Dependency(QtBaseDependency):
QtBaseDependency.__init__(self, 'qt5', env, kwargs)
def get_pkgconfig_host_bins(self, core):
@@ -1,4 +1,9 @@
We need to allow our rpaths generated through the compiler flags to make it into
From 3af10fa8cd4e97181288d72227dea712290fd5e6 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Fri, 23 Nov 2018 15:28:28 +0000
Subject: [PATCH] meson: Disable rpath stripping at install time
We need to allow our rpaths generated through the compiler flags to make it into
our binaries. Therefore disable the meson manipulations of these unless there
is a specific directive to do something differently in the project.
@@ -6,13 +11,17 @@ RP 2018/11/23
Upstream-Status: Submitted [https://github.com/mesonbuild/meson/issues/2567]
Index: meson-0.47.2/mesonbuild/minstall.py
===================================================================
--- meson-0.47.2.orig/mesonbuild/minstall.py
+++ meson-0.47.2/mesonbuild/minstall.py
@@ -486,8 +486,11 @@ class Installer:
printed_symlink_error = True
if os.path.isfile(outname):
---
mesonbuild/minstall.py | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
index ace0569..85bd8df 100644
--- a/mesonbuild/minstall.py
+++ b/mesonbuild/minstall.py
@@ -508,8 +508,11 @@ class Installer:
if file_copied:
self.did_install_something = True
try:
- depfixer.fix_rpath(outname, install_rpath, final_path,
- install_name_mappings, verbose=False)