diff options
Diffstat (limited to 'poky/meta/recipes-devtools/meson')
11 files changed, 88 insertions, 109 deletions
diff --git a/poky/meta/recipes-devtools/meson/meson.inc b/poky/meta/recipes-devtools/meson/meson.inc index 0a58c971a..004189e36 100644 --- a/poky/meta/recipes-devtools/meson/meson.inc +++ b/poky/meta/recipes-devtools/meson/meson.inc @@ -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] = "3b5741f884e04928bdfa1947467ff06afa6c98e623c25cef75adf71ca39ce080" SRC_URI_append_class-native = " \ file://0001-Make-CPU-family-warnings-fatal.patch \ diff --git a/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch b/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch index e64488be4..199d4254d 100644 --- a/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch +++ b/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch @@ -1,4 +1,4 @@ -From ee638fd4a299bfc53a2238e9f71ae310c8d97460 Mon Sep 17 00:00:00 2001 +From 9311844b6c422479556e83b89a8e675ebcb2056c 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,23 +12,23 @@ 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 219b62e..d1be65b 100644 --- a/mesonbuild/envconfig.py +++ b/mesonbuild/envconfig.py -@@ -192,7 +192,7 @@ class MachineInfo: +@@ -199,7 +199,7 @@ class MachineInfo: cpu_family = literal['cpu_family'] if cpu_family not in known_cpu_families: -- mlog.warning('Unknown CPU family %s, please report this at https://github.com/mesonbuild/meson/issues/new' % cpu_family) -+ raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % cpu_family) +- mlog.warning('Unknown CPU family {}, please report this at https://github.com/mesonbuild/meson/issues/new'.format(cpu_family)) ++ raise EnvironmentException('Unknown CPU family {}, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.'.format(cpu_family)) endian = literal['endian'] if endian not in ('little', 'big'): diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py -index dc8b14f..3aab71e 100644 +index bf09a88..8eabe78 100644 --- a/mesonbuild/environment.py +++ b/mesonbuild/environment.py -@@ -354,9 +354,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: +@@ -375,9 +375,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: trial = 'parisc' if trial not in known_cpu_families: diff --git a/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch b/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch new file mode 100644 index 000000000..a1f8422d4 --- /dev/null +++ b/poky/meta/recipes-devtools/meson/meson/0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch @@ -0,0 +1,37 @@ +From 64aa6718c290e150dafd8da83f31cb08af00af0e 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 | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py +index 52016f4..2b72ee4 100644 +--- a/mesonbuild/modules/gnome.py ++++ b/mesonbuild/modules/gnome.py +@@ -410,14 +410,14 @@ class GnomeModule(ExtensionModule): + if giscanner is not None: + self.giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner) + elif self.gir_dep.type_name == 'pkgconfig': +- self.giscanner = ExternalProgram('g_ir_scanner', self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})) ++ self.giscanner = ExternalProgram('g_ir_scanner', os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})) + else: + self.giscanner = self.interpreter.find_program_impl('g-ir-scanner') + gicompiler = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler') + if gicompiler is not None: + self.gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler) + elif self.gir_dep.type_name == 'pkgconfig': +- self.gicompiler = ExternalProgram('g_ir_compiler', self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})) ++ self.gicompiler = ExternalProgram('g_ir_compiler', os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})) + else: + self.gicompiler = self.interpreter.find_program_impl('g-ir-compiler') + return self.gir_dep, self.giscanner, self.gicompiler diff --git a/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch b/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch deleted file mode 100644 index f4456235f..000000000 --- a/poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch +++ /dev/null @@ -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: diff --git a/poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch b/poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch index a25c39227..c0ad01e9d 100644 --- a/poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch +++ b/poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch @@ -1,4 +1,4 @@ -From 1d178fb2928d325e339b15972890ceced863d3ec Mon Sep 17 00:00:00 2001 +From 214e559d394491b1376e4cc370f75151117a3f83 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Thu, 18 Apr 2019 17:36:11 +0200 Subject: [PATCH] modules/python.py: do not substitute python's install prefix @@ -10,15 +10,16 @@ b) shouldn't be necessary as Python's prefix ought to be correct in the first pl Upstream-Status: Pending Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> + --- mesonbuild/modules/python.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py -index 6e2c63b..f5a37ac 100644 +index 2f0c644..d2aa565 100644 --- a/mesonbuild/modules/python.py +++ b/mesonbuild/modules/python.py -@@ -254,7 +254,7 @@ import sysconfig +@@ -251,7 +251,7 @@ INTROSPECT_COMMAND = '''import sysconfig import json import sys @@ -27,8 +28,8 @@ index 6e2c63b..f5a37ac 100644 def links_against_libpython(): from distutils.core import Distribution, Extension -@@ -279,12 +279,11 @@ class PythonInstallation(ExternalProgramHolder): - ExternalProgramHolder.__init__(self, python) +@@ -276,12 +276,11 @@ class PythonInstallation(ExternalProgramHolder): + ExternalProgramHolder.__init__(self, python, interpreter.subproject) self.interpreter = interpreter self.subproject = self.interpreter.subproject - prefix = self.interpreter.environment.coredata.get_builtin_option('prefix') diff --git a/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch b/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch index d2c3f8cdf..5c16cf501 100644 --- a/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch +++ b/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch @@ -1,4 +1,4 @@ -From 9c221c74bd306dfa6fec22c8f156eb9d4e4f7fcb Mon Sep 17 00:00:00 2001 +From 38f59e256f760aa959c13f4c5713f87ff7addee5 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 d1be65b..90f3573 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 = ( diff --git a/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch b/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch deleted file mode 100644 index 61b26bb88..000000000 --- a/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch +++ /dev/null @@ -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') diff --git a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch index a5baca093..81e9acd36 100644 --- a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch +++ b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch @@ -1,4 +1,4 @@ -From e76726321067748362b39937bd1e663a1a948ad5 Mon Sep 17 00:00:00 2001 +From f06c89939d0d006090a8a8728b2a13d532b83047 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 368a4bc..9fc398e 100644 --- a/mesonbuild/dependencies/base.py +++ b/mesonbuild/dependencies/base.py -@@ -184,7 +184,7 @@ class Dependency: +@@ -183,7 +183,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 - self.ext_deps = ext_deps +@@ -261,7 +261,7 @@ class InternalDependency(Dependency): + setattr(result, k, copy.deepcopy(v, memo)) + return result - 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): +@@ -634,15 +634,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): +@@ -668,7 +671,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): +@@ -877,7 +880,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): +@@ -890,7 +893,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 95dfe2b..5f82890 100644 --- a/mesonbuild/dependencies/ui.py +++ b/mesonbuild/dependencies/ui.py -@@ -330,7 +330,7 @@ class QtBaseDependency(ExternalDependency): +@@ -325,7 +325,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): +@@ -528,7 +528,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): +@@ -538,7 +538,7 @@ class Qt5Dependency(QtBaseDependency): QtBaseDependency.__init__(self, 'qt5', env, kwargs) def get_pkgconfig_host_bins(self, core): diff --git a/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch b/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch index 4b1fb57dd..4653a72a2 100644 --- a/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch +++ b/poky/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch @@ -1,4 +1,9 @@ -We need to allow our rpaths generated through the compiler flags to make it into +From 9e3fcf192c1ca068d310c648c311f9d850214421 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,18 +11,22 @@ 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 0be01fe..5406cab 100644 +--- a/mesonbuild/minstall.py ++++ b/mesonbuild/minstall.py +@@ -512,8 +512,11 @@ class Installer: + if file_copied: + self.did_install_something = True try: -- depfixer.fix_rpath(outname, install_rpath, final_path, +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path, - install_name_mappings, verbose=False) + if install_rpath: -+ depfixer.fix_rpath(outname, install_rpath, final_path, ++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path, + install_name_mappings, verbose=False) + else: + print("RPATH changes at install time disabled") diff --git a/poky/meta/recipes-devtools/meson/meson_0.53.2.bb b/poky/meta/recipes-devtools/meson/meson_0.55.1.bb index de9b905c1..de9b905c1 100644 --- a/poky/meta/recipes-devtools/meson/meson_0.53.2.bb +++ b/poky/meta/recipes-devtools/meson/meson_0.55.1.bb diff --git a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.53.2.bb b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.55.1.bb index 67add2c25..67add2c25 100644 --- a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.53.2.bb +++ b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.55.1.bb |