summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/meson
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2018-12-18 17:29:54 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-01-03 12:35:53 +0000
commit980f3d6bdf8db8bde389cd65e446969acee73202 (patch)
tree7e37a70afe40f0e34a9fcc53e31a45f0af23e775 /meta/recipes-devtools/meson
parent86dabd1e3392a43ab24169bb6ff6f4948fb5947e (diff)
downloadpoky-980f3d6bdf8db8bde389cd65e446969acee73202.tar.gz
meson: update to 0.49.0
Drop upstreamed gi-flags.patch and gtkdoc-flags.patch, rebase the rest. (From OE-Core rev: 6cc5c57c38d2da37b4f15dea6e1fb97e3a0bae73) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/meson')
-rw-r--r--meta/recipes-devtools/meson/meson.inc10
-rw-r--r--meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch (renamed from meta/recipes-devtools/meson/meson/0002-Make-CPU-family-warnings-fatal.patch)27
-rw-r--r--meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch61
-rw-r--r--meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch52
-rw-r--r--meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch (renamed from meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch)20
-rw-r--r--meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch37
-rw-r--r--meta/recipes-devtools/meson/meson/gi-flags.patch35
-rw-r--r--meta/recipes-devtools/meson/meson/gtkdoc-flags.patch44
-rw-r--r--meta/recipes-devtools/meson/meson_0.49.0.bb (renamed from meta/recipes-devtools/meson/meson_0.47.2.bb)1
-rw-r--r--meta/recipes-devtools/meson/nativesdk-meson_0.49.0.bb (renamed from meta/recipes-devtools/meson/nativesdk-meson_0.47.2.bb)0
10 files changed, 83 insertions, 204 deletions
diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc
index 61b2391484..ef8c5aefa5 100644
--- a/meta/recipes-devtools/meson/meson.inc
+++ b/meta/recipes-devtools/meson/meson.inc
@@ -9,17 +9,15 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P
9 file://0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch \ 9 file://0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch \
10 file://0001-Linker-rules-move-cross_args-in-front-of-output_args.patch \ 10 file://0001-Linker-rules-move-cross_args-in-front-of-output_args.patch \
11 file://0003-native_bindir.patch \ 11 file://0003-native_bindir.patch \
12 file://gi-flags.patch \
13 file://gtkdoc-flags.patch \
14 file://0001-python-module-do-not-manipulate-the-environment-when.patch \ 12 file://0001-python-module-do-not-manipulate-the-environment-when.patch \
15 file://disable-rpath-handling.patch \ 13 file://disable-rpath-handling.patch \
16 " 14 "
17SRC_URI[sha256sum] = "92d8afd921751261e36151643464efd3394162f69efbe8cd53e0a66b1cf395eb" 15SRC_URI[sha256sum] = "fb0395c4ac208eab381cd1a20571584bdbba176eb562a7efa9cb17cace0e1551"
18SRC_URI[md5sum] = "31bda3519d8c0eb3438267268a78085e" 16SRC_URI[md5sum] = "3c35b91e8040901034809576d54007c6"
19 17
20SRC_URI_append_class-native = " \ 18SRC_URI_append_class-native = " \
21 file://0002-Make-CPU-family-warnings-fatal.patch \ 19 file://0001-Make-CPU-family-warnings-fatal.patch \
22 file://0001-Support-building-allarch-recipes-again.patch \ 20 file://0002-Support-building-allarch-recipes-again.patch \
23" 21"
24 22
25UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases" 23UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases"
diff --git a/meta/recipes-devtools/meson/meson/0002-Make-CPU-family-warnings-fatal.patch b/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch
index ca56a6a8bf..785c0f027b 100644
--- a/meta/recipes-devtools/meson/meson/0002-Make-CPU-family-warnings-fatal.patch
+++ b/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch
@@ -1,7 +1,7 @@
1From 2e8553fc01e62ebc4faa240bf20984a8a0ac7387 Mon Sep 17 00:00:00 2001 1From d058d0f1d8833d99e8a3d3b9bcc383db23b52671 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@intel.com> 2From: Ross Burton <ross.burton@intel.com>
3Date: Tue, 3 Jul 2018 13:59:09 +0100 3Date: Tue, 3 Jul 2018 13:59:09 +0100
4Subject: [PATCH] Make CPU family warnings fatal 4Subject: [PATCH 1/2] Make CPU family warnings fatal
5 5
6Upstream-Status: Inappropriate [OE specific] 6Upstream-Status: Inappropriate [OE specific]
7Signed-off-by: Ross Burton <ross.burton@intel.com> 7Signed-off-by: Ross Burton <ross.burton@intel.com>
@@ -11,11 +11,11 @@ Signed-off-by: Ross Burton <ross.burton@intel.com>
11 1 file changed, 2 insertions(+), 4 deletions(-) 11 1 file changed, 2 insertions(+), 4 deletions(-)
12 12
13diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py 13diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
14index d29a77f..267acf9 100644 14index 2ccd31e..5fcf9df 100644
15--- a/mesonbuild/environment.py 15--- a/mesonbuild/environment.py
16+++ b/mesonbuild/environment.py 16+++ b/mesonbuild/environment.py
17@@ -239,9 +239,7 @@ def detect_cpu_family(compilers): 17@@ -265,9 +265,7 @@ def detect_cpu_family(compilers):
18 return 'x86_64' 18 # below.
19 19
20 if trial not in known_cpu_families: 20 if trial not in known_cpu_families:
21- mlog.warning('Unknown CPU family {!r}, please report this at ' 21- mlog.warning('Unknown CPU family {!r}, please report this at '
@@ -25,12 +25,15 @@ index d29a77f..267acf9 100644
25 25
26 return trial 26 return trial
27 27
28@@ -1014,7 +1012,7 @@ class CrossBuildInfo: 28@@ -1232,7 +1230,7 @@ class MachineInfo:
29 raise EnvironmentException('Malformed value in cross file variable %s.' % entry)
30 29
31 if entry == 'cpu_family' and res not in known_cpu_families: 30 cpu_family = literal['cpu_family']
32- mlog.warning('Unknown CPU family %s, please report this at https://github.com/mesonbuild/meson/issues/new' % value) 31 if cpu_family not in known_cpu_families:
33+ raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % value) 32- mlog.warning('Unknown CPU family %s, please report this at https://github.com/mesonbuild/meson/issues/new' % cpu_family)
33+ raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % cpu_family)
34 34
35 if self.ok_type(res): 35 endian = literal['endian']
36 self.config[s][entry] = res 36 if endian not in ('little', 'big'):
37--
382.17.1
39
diff --git a/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch b/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
index 7ffd6c54cb..11fd9ed3ac 100644
--- a/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
+++ b/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
@@ -1,4 +1,4 @@
1From 3ac4e58c5494bd7e603a325b5b5c2b8075849fee Mon Sep 17 00:00:00 2001 1From 1afbf5ccff56e582229c8f673f50aedf2b24117e Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Fri, 4 Aug 2017 16:16:41 +0300 3Date: Fri, 4 Aug 2017 16:16:41 +0300
4Subject: [PATCH] gtkdoc: fix issues that arise when cross-compiling 4Subject: [PATCH] gtkdoc: fix issues that arise when cross-compiling
@@ -16,70 +16,21 @@ Upstream-Status: Pending
16Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 16Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
17 17
18--- 18---
19 mesonbuild/modules/gnome.py | 18 +++++++++++++++--- 19 mesonbuild/modules/gnome.py | 4 ++++
20 mesonbuild/scripts/gtkdochelper.py | 9 +++++++-- 20 1 file changed, 4 insertions(+)
21 2 files changed, 22 insertions(+), 5 deletions(-)
22 21
23diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py 22diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
24index cb69641..727eb6a 100644 23index bf49770..7c5a363 100644
25--- a/mesonbuild/modules/gnome.py 24--- a/mesonbuild/modules/gnome.py
26+++ b/mesonbuild/modules/gnome.py 25+++ b/mesonbuild/modules/gnome.py
27@@ -792,6 +792,10 @@ This will become a hard error in the future.''') 26@@ -972,6 +972,10 @@ This will become a hard error in the future.''')
28 '--mode=' + mode] 27 '--mode=' + mode]
29 if namespace: 28 if namespace:
30 args.append('--namespace=' + namespace) 29 args.append('--namespace=' + namespace)
31+ gtkdoc_exe_wrapper = state.environment.cross_info.config["properties"].get('gtkdoc_exe_wrapper', None) 30+ gtkdoc_exe_wrapper = state.environment.cross_info.config["properties"].get('gtkdoc_exe_wrapper', None)
32+ if gtkdoc_exe_wrapper is not None: 31+ if gtkdoc_exe_wrapper is not None:
33+ args.append('--gtkdoc-exe-wrapper=' + gtkdoc_exe_wrapper) 32+ args.append('--run=' + gtkdoc_exe_wrapper)
34+ 33+
35 args += self._unpack_args('--htmlargs=', 'html_args', kwargs) 34 args += self._unpack_args('--htmlargs=', 'html_args', kwargs)
36 args += self._unpack_args('--scanargs=', 'scan_args', kwargs) 35 args += self._unpack_args('--scanargs=', 'scan_args', kwargs)
37 args += self._unpack_args('--scanobjsargs=', 'scanobjs_args', kwargs) 36 args += self._unpack_args('--scanobjsargs=', 'scanobjs_args', kwargs)
38diff --git a/mesonbuild/scripts/gtkdochelper.py b/mesonbuild/scripts/gtkdochelper.py
39index 948dc5a..9c5bd19 100644
40--- a/mesonbuild/scripts/gtkdochelper.py
41+++ b/mesonbuild/scripts/gtkdochelper.py
42@@ -45,6 +45,7 @@ parser.add_argument('--ignore-headers', dest='ignore_headers', default='')
43 parser.add_argument('--namespace', dest='namespace', default='')
44 parser.add_argument('--mode', dest='mode', default='')
45 parser.add_argument('--installdir', dest='install_dir')
46+parser.add_argument('--gtkdoc-exe-wrapper', dest='gtkdoc_exe_wrapper')
47
48 def gtkdoc_run_check(cmd, cwd, library_paths=None):
49 if library_paths is None:
50@@ -64,7 +65,7 @@ def gtkdoc_run_check(cmd, cwd, library_paths=None):
51 # This preserves the order of messages.
52 p, out = Popen_safe(cmd, cwd=cwd, env=env, stderr=subprocess.STDOUT)[0:2]
53 if p.returncode != 0:
54- err_msg = ["{!r} failed with status {:d}".format(cmd[0], p.returncode)]
55+ err_msg = ["{!r} failed with status {:d}".format(cmd, p.returncode)]
56 if out:
57 err_msg.append(out)
58 raise MesonException('\n'.join(err_msg))
59@@ -74,7 +75,7 @@ def gtkdoc_run_check(cmd, cwd, library_paths=None):
60 def build_gtkdoc(source_root, build_root, doc_subdir, src_subdirs,
61 main_file, module,
62 html_args, scan_args, fixxref_args, mkdb_args,
63- gobject_typesfile, scanobjs_args, ld, cc, ldflags, cflags,
64+ gobject_typesfile, scanobjs_args, gtkdoc_exe_wrapper, ld, cc, ldflags, cflags,
65 html_assets, content_files, ignore_headers, namespace,
66 expand_content_files, mode):
67 print("Building documentation for %s" % module)
68@@ -135,6 +136,9 @@ def build_gtkdoc(source_root, build_root, doc_subdir, src_subdirs,
69 if gobject_typesfile:
70 scanobjs_cmd = ['gtkdoc-scangobj'] + scanobjs_args + ['--types=' + gobject_typesfile,
71 '--module=' + module,
72+ '--run=' + gtkdoc_exe_wrapper,
73+ '--cc=' + cc,
74+ '--ld=' + ld,
75 '--cflags=' + cflags,
76 '--ldflags=' + ldflags,
77 '--cc=' + cc,
78@@ -238,6 +242,7 @@ def run(args):
79 mkdbargs,
80 options.gobject_typesfile,
81 scanobjsargs,
82+ options.gtkdoc_exe_wrapper,
83 options.ld,
84 options.cc,
85 options.ldflags,
diff --git a/meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch b/meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch
index 6072985404..bf715d1e9f 100644
--- a/meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch
+++ b/meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch
@@ -1,4 +1,4 @@
1From 45426f06689a520fc47f81ee29b49d509f11ba58 Mon Sep 17 00:00:00 2001 1From 3cb2c811dc6d4890342afa5b709cd30cf7b8f3ca Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Mon, 19 Nov 2018 14:24:26 +0100 3Date: Mon, 19 Nov 2018 14:24:26 +0100
4Subject: [PATCH] python module: do not manipulate the environment when calling 4Subject: [PATCH] python module: do not manipulate the environment when calling
@@ -6,38 +6,38 @@ Subject: [PATCH] python module: do not manipulate the environment when calling
6 6
7Upstream-Status: Inappropriate [oe-core specific] 7Upstream-Status: Inappropriate [oe-core specific]
8Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 8Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
9
9--- 10---
10 mesonbuild/modules/python.py | 14 -------------- 11 mesonbuild/modules/python.py | 12 ------------
11 1 file changed, 14 deletions(-) 12 1 file changed, 12 deletions(-)
12 13
13diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py 14diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py
14index 1195d8a..df81da4 100644 15index 9cfbd6f..3ff687a 100644
15--- a/mesonbuild/modules/python.py 16--- a/mesonbuild/modules/python.py
16+++ b/mesonbuild/modules/python.py 17+++ b/mesonbuild/modules/python.py
17@@ -67,26 +67,12 @@ class PythonDependency(ExternalDependency): 18@@ -75,11 +75,6 @@ class PythonDependency(ExternalDependency):
18 if DependencyMethods.PKGCONFIG in self.methods and not python_holder.is_pypy: 19 old_pkg_libdir = os.environ.get('PKG_CONFIG_LIBDIR')
19 pkg_version = self.variables.get('LDVERSION') or self.version 20 old_pkg_path = os.environ.get('PKG_CONFIG_PATH')
20 pkg_libdir = self.variables.get('LIBPC') 21
21- old_pkg_libdir = os.environ.get('PKG_CONFIG_LIBDIR') 22- os.environ.pop('PKG_CONFIG_PATH', None)
22- old_pkg_path = os.environ.get('PKG_CONFIG_PATH')
23- 23-
24- os.environ.pop('PKG_CONFIG_PATH', None) 24- if pkg_libdir:
25- os.environ['PKG_CONFIG_LIBDIR'] = pkg_libdir
25- 26-
26- if pkg_libdir: 27 try:
27- os.environ['PKG_CONFIG_LIBDIR'] = pkg_libdir 28 self.pkgdep = PkgConfigDependency('python-{}'.format(pkg_version), environment, kwargs)
28 29 mlog.debug('Found "python-{}" via pkgconfig lookup in LIBPC ({})'.format(pkg_version, pkg_libdir))
29 try: 30@@ -88,13 +83,6 @@ class PythonDependency(ExternalDependency):
30 self.pkgdep = PkgConfigDependency('python-{}'.format(pkg_version), environment, kwargs) 31 mlog.debug('"python-{}" could not be found in LIBPC ({})'.format(pkg_version, pkg_libdir))
31 except Exception: 32 mlog.debug(e)
32 pass
33 33
34- if old_pkg_path is not None: 34- if old_pkg_path is not None:
35- os.environ['PKG_CONFIG_PATH'] = old_pkg_path 35- os.environ['PKG_CONFIG_PATH'] = old_pkg_path
36- 36-
37- if old_pkg_libdir is not None: 37- if old_pkg_libdir is not None:
38- os.environ['PKG_CONFIG_LIBDIR'] = old_pkg_libdir 38- os.environ['PKG_CONFIG_LIBDIR'] = old_pkg_libdir
39- else: 39- else:
40- os.environ.pop('PKG_CONFIG_LIBDIR', None) 40- os.environ.pop('PKG_CONFIG_LIBDIR', None)
41 else:
42 mlog.debug('"python-{}" could not be found in LIBPC ({}), this is likely due to a relocated python installation'.format(pkg_version, pkg_libdir))
41 43
42 if self.pkgdep and self.pkgdep.found():
43 self.compile_args = self.pkgdep.get_compile_args()
diff --git a/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch b/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch
index 96be104a52..e7ba40701f 100644
--- a/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch
+++ b/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch
@@ -1,25 +1,29 @@
1From d80d02a3ca6e21fa3d055c88c05234c2eb4db128 Mon Sep 17 00:00:00 2001 1From ffab5c5046da29fc20b074d21f6de46520cee58c Mon Sep 17 00:00:00 2001
2From: Peter Kjellerstedt <pkj@axis.com> 2From: Peter Kjellerstedt <pkj@axis.com>
3Date: Thu, 26 Jul 2018 16:32:49 +0200 3Date: Thu, 26 Jul 2018 16:32:49 +0200
4Subject: [PATCH] Support building allarch recipes again 4Subject: [PATCH 2/2] Support building allarch recipes again
5 5
6This registers "allarch" as a known CPU family. 6This registers "allarch" as a known CPU family.
7 7
8Upstream-Status: Inappropriate [OE specific] 8Upstream-Status: Inappropriate [OE specific]
9Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> 9Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
10
10--- 11---
11 mesonbuild/environment.py | 1 + 12 mesonbuild/environment.py | 1 +
12 1 file changed, 1 insertion(+) 13 1 file changed, 1 insertion(+)
13 14
14Index: meson-0.47.2/mesonbuild/environment.py 15diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
15=================================================================== 16index 5fcf9df..b4fc0dc 100644
16--- meson-0.47.2.orig/mesonbuild/environment.py 17--- a/mesonbuild/environment.py
17+++ meson-0.47.2/mesonbuild/environment.py 18+++ b/mesonbuild/environment.py
18@@ -75,6 +75,7 @@ from .compilers import ( 19@@ -72,6 +72,7 @@ from .compilers import (
19 build_filename = 'meson.build' 20 build_filename = 'meson.build'
20 21
21 known_cpu_families = ( 22 known_cpu_families = (
22+ 'allarch', 23+ 'allarch',
23 'aarch64', 24 'aarch64',
25 'arc',
24 'arm', 26 'arm',
25 'e2k', 27--
282.17.1
29
diff --git a/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch b/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
index f32267d0c4..61b26bb883 100644
--- a/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
+++ b/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
@@ -1,4 +1,4 @@
1From 0b860cb8a22ae876b6088939dbabca216bc29431 Mon Sep 17 00:00:00 2001 1From 9ccaed380780178c4dab3a681f652ac7cd27452d Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Fri, 4 Aug 2017 16:18:47 +0300 3Date: Fri, 4 Aug 2017 16:18:47 +0300
4Subject: [PATCH] gobject-introspection: determine g-ir-scanner and 4Subject: [PATCH] gobject-introspection: determine g-ir-scanner and
@@ -12,28 +12,29 @@ Upstream-Status: Pending
12Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 12Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
13 13
14--- 14---
15 mesonbuild/modules/gnome.py | 4 ++-- 15 mesonbuild/modules/gnome.py | 6 +++---
16 1 file changed, 2 insertions(+), 2 deletions(-) 16 1 file changed, 3 insertions(+), 3 deletions(-)
17 17
18diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py 18diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
19index b29bab9..dc4c401 100644 19index 7c5a363..0002498 100644
20--- a/mesonbuild/modules/gnome.py 20--- a/mesonbuild/modules/gnome.py
21+++ b/mesonbuild/modules/gnome.py 21+++ b/mesonbuild/modules/gnome.py
22@@ -393,8 +393,6 @@ class GnomeModule(ExtensionModule): 22@@ -744,15 +744,15 @@ class GnomeModule(ExtensionModule):
23 raise MesonException('Gir takes one argument')
24 if kwargs.get('install_dir'): 23 if kwargs.get('install_dir'):
25 raise MesonException('install_dir is not supported with generate_gir(), see "install_dir_gir" and "install_dir_typelib"') 24 raise MesonException('install_dir is not supported with generate_gir(), see "install_dir_gir" and "install_dir_typelib"')
25
26- giscanner = self.interpreter.find_program_impl('g-ir-scanner') 26- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
27- gicompiler = self.interpreter.find_program_impl('g-ir-compiler') 27- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
28 girtarget = args[0] 28-
29 while hasattr(girtarget, 'held_object'): 29 girtargets = [self._unwrap_gir_target(arg, state) for arg in args]
30 girtarget = girtarget.held_object 30
31@@ -405,6 +403,8 @@ class GnomeModule(ExtensionModule): 31 if len(girtargets) > 1 and any([isinstance(el, build.Executable) for el in girtargets]):
32 self.gir_dep = PkgConfigDependency('gobject-introspection-1.0', 32 raise MesonException('generate_gir only accepts a single argument when one of the arguments is an executable')
33 state.environment, 33
34 {'native': True}) 34 self.gir_dep, pkgargs = self._get_gir_dep(state)
35+ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}) 35+ giscanner = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
36+ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}) 36+ gicompiler = os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
37 pkgargs = self.gir_dep.get_compile_args() 37+
38 except Exception: 38
39 raise MesonException('gobject-introspection dependency was not found, gir cannot be generated.') 39 ns = kwargs.pop('namespace')
40 nsversion = kwargs.pop('nsversion')
diff --git a/meta/recipes-devtools/meson/meson/gi-flags.patch b/meta/recipes-devtools/meson/meson/gi-flags.patch
deleted file mode 100644
index 9a4c296191..0000000000
--- a/meta/recipes-devtools/meson/meson/gi-flags.patch
+++ /dev/null
@@ -1,35 +0,0 @@
1Pass the correct cflags/ldflags to the gobject-introspection tools.
2
3Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/4261]
4Signed-off-by: Ross Burton <ross.burton@intel.com>
5
6diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
7index cb69641e..bb4449a0 100644
8--- a/mesonbuild/modules/gnome.py
9+++ b/mesonbuild/modules/gnome.py
10@@ -579,7 +579,10 @@ class GnomeModule(ExtensionModule):
11 external_ldflags += list(dep_external_ldflags)
12 scan_command += ['--cflags-begin']
13 scan_command += cflags
14- scan_command += state.environment.coredata.get_external_args(lang)
15+ if state.environment.is_cross_build():
16+ scan_command += state.environment.cross_info.config["properties"].get(lang + '_args', "")
17+ else:
18+ scan_command += state.environment.coredata.get_external_args(lang)
19 scan_command += ['--cflags-end']
20 # need to put our output directory first as we need to use the
21 # generated libraries instead of any possibly installed system/prefix
22@@ -614,7 +614,12 @@ class GnomeModule(ExtensionModule):
23 scan_command.append('-L' + d)
24 scan_command += ['--library', libname]
25
26- for link_arg in state.environment.coredata.get_external_link_args(lang):
27+ if state.environment.is_cross_build():
28+ link_args = state.environment.cross_info.config["properties"].get(lang + '_link_args', "")
29+ else:
30+ link_args = state.environment.coredata.get_external_link_args(lang)
31+
32+ for link_arg in link_args:
33 if link_arg.startswith('-L'):
34 scan_command.append(link_arg)
35 scan_command += list(external_ldflags)
diff --git a/meta/recipes-devtools/meson/meson/gtkdoc-flags.patch b/meta/recipes-devtools/meson/meson/gtkdoc-flags.patch
deleted file mode 100644
index ecf3489bbe..0000000000
--- a/meta/recipes-devtools/meson/meson/gtkdoc-flags.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1Ensure that in a cross compile only the target flags are passed to gtk-doc, and
2not the native flags.
3
4Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/4261]
5Signed-off-by: Ross Burton <ross.burton@intel.com>
6
7diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
8index 4af33304..8751f53c 100644
9--- a/mesonbuild/modules/gnome.py
10+++ b/mesonbuild/modules/gnome.py
11@@ -851,17 +851,30 @@ This will become a hard error in the future.''')
12 if not isinstance(incd.held_object, (str, build.IncludeDirs)):
13 raise MesonException(
14 'Gir include dirs should be include_directories().')
15+
16 cflags.update(get_include_args(inc_dirs))
17- cflags.update(state.environment.coredata.get_external_args('c'))
18+ if state.environment.is_cross_build():
19+ cflags.update(state.environment.cross_info.config["properties"].get('c_args', ""))
20+ else:
21+ cflags.update(state.environment.coredata.get_external_args('c'))
22+
23 ldflags = OrderedSet()
24 ldflags.update(internal_ldflags)
25- ldflags.update(state.environment.coredata.get_external_link_args('c'))
26+ if state.environment.is_cross_build():
27+ ldflags.update(state.environment.cross_info.config["properties"].get('c_link_args', ""))
28+ else:
29+ ldflags.update(state.environment.coredata.get_external_link_args('c'))
30 ldflags.update(external_ldflags)
31+
32 if cflags:
33 args += ['--cflags=%s' % ' '.join(cflags)]
34 if ldflags:
35 args += ['--ldflags=%s' % ' '.join(ldflags)]
36- compiler = state.environment.coredata.compilers.get('c')
37+
38+ if state.environment.is_cross_build():
39+ compiler = state.environment.coredata.cross_compilers.get('c')
40+ else:
41+ compiler = state.environment.coredata.compilers.get('c')
42 if compiler:
43 args += ['--cc=%s' % ' '.join(compiler.get_exelist())]
44 args += ['--ld=%s' % ' '.join(compiler.get_linker_exelist())]
diff --git a/meta/recipes-devtools/meson/meson_0.47.2.bb b/meta/recipes-devtools/meson/meson_0.49.0.bb
index 897fa148d9..de9b905c12 100644
--- a/meta/recipes-devtools/meson/meson_0.47.2.bb
+++ b/meta/recipes-devtools/meson/meson_0.49.0.bb
@@ -1,3 +1,4 @@
1include meson.inc 1include meson.inc
2 2
3BBCLASSEXTEND = "native" 3BBCLASSEXTEND = "native"
4
diff --git a/meta/recipes-devtools/meson/nativesdk-meson_0.47.2.bb b/meta/recipes-devtools/meson/nativesdk-meson_0.49.0.bb
index 53503aa998..53503aa998 100644
--- a/meta/recipes-devtools/meson/nativesdk-meson_0.47.2.bb
+++ b/meta/recipes-devtools/meson/nativesdk-meson_0.49.0.bb