diff options
| author | Alexander Kanavin <alex.kanavin@gmail.com> | 2019-12-19 14:22:49 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-12-30 08:47:12 +0000 |
| commit | 20728c706967d8ae6f184557e7bda96378a1396c (patch) | |
| tree | 12f7a7432e6693d207d1727930a92021cef3aa52 | |
| parent | 442aff1beacd6a7d068427e0691fb2141274c2bc (diff) | |
| download | poky-20728c706967d8ae6f184557e7bda96378a1396c.tar.gz | |
meson: update 0.52.0 -> 0.52.1
(From OE-Core rev: e589fc6d758689f7889b3ae50e800e51204a02c1)
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 | 5 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch | 10 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch | 4 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson/0003-native_bindir.patch | 26 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson/dbc9e971bd320f3df15c1ee74f54858e6792b183.patch | 95 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/meson_0.52.1.bb (renamed from meta/recipes-devtools/meson/meson_0.52.0.bb) | 1 | ||||
| -rw-r--r-- | meta/recipes-devtools/meson/nativesdk-meson_0.52.1.bb (renamed from meta/recipes-devtools/meson/nativesdk-meson_0.52.0.bb) | 0 |
7 files changed, 23 insertions, 118 deletions
diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc index 84bcc8409d..881a14c7f0 100644 --- a/meta/recipes-devtools/meson/meson.inc +++ b/meta/recipes-devtools/meson/meson.inc | |||
| @@ -16,10 +16,9 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P | |||
| 16 | file://cross-prop-default.patch \ | 16 | file://cross-prop-default.patch \ |
| 17 | file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \ | 17 | file://0001-mesonbuild-environment.py-check-environment-for-vari.patch \ |
| 18 | file://0001-modules-python.py-do-not-substitute-python-s-install.patch \ | 18 | file://0001-modules-python.py-do-not-substitute-python-s-install.patch \ |
| 19 | file://dbc9e971bd320f3df15c1ee74f54858e6792b183.patch \ | ||
| 20 | " | 19 | " |
| 21 | SRC_URI[sha256sum] = "d60f75f0dedcc4fd249dbc7519d6f3ce6df490033d276ef1cf27453ef4938d32" | 20 | SRC_URI[sha256sum] = "0c277472e49950a5537e3de3e60c57b80dbf425788470a1a8ed27446128fc035" |
| 22 | SRC_URI[md5sum] = "7ea7772414dda8ae11072244bf7ba991" | 21 | SRC_URI[md5sum] = "a5f0c99567d772508f649a28ded7f8ad" |
| 23 | 22 | ||
| 24 | SRC_URI_append_class-native = " \ | 23 | SRC_URI_append_class-native = " \ |
| 25 | file://0001-Make-CPU-family-warnings-fatal.patch \ | 24 | file://0001-Make-CPU-family-warnings-fatal.patch \ |
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 fc55dcacf6..d4264cee52 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,4 +1,4 @@ | |||
| 1 | From c07d29b715209cd5d75b142a00a540d45b00c36d Mon Sep 17 00:00:00 2001 | 1 | From cd980c763f11cfd928255346cc7e86f24add985e 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] Make CPU family warnings fatal | 4 | Subject: [PATCH] Make CPU family warnings fatal |
| @@ -12,10 +12,10 @@ Signed-off-by: Ross Burton <ross.burton@intel.com> | |||
| 12 | 2 files changed, 2 insertions(+), 4 deletions(-) | 12 | 2 files changed, 2 insertions(+), 4 deletions(-) |
| 13 | 13 | ||
| 14 | diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py | 14 | diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py |
| 15 | index a59cd89..17de654 100644 | 15 | index 29d7422..5fb00a4 100644 |
| 16 | --- a/mesonbuild/envconfig.py | 16 | --- a/mesonbuild/envconfig.py |
| 17 | +++ b/mesonbuild/envconfig.py | 17 | +++ b/mesonbuild/envconfig.py |
| 18 | @@ -186,7 +186,7 @@ class MachineInfo: | 18 | @@ -190,7 +190,7 @@ class MachineInfo: |
| 19 | 19 | ||
| 20 | cpu_family = literal['cpu_family'] | 20 | cpu_family = literal['cpu_family'] |
| 21 | if cpu_family not in known_cpu_families: | 21 | if cpu_family not in known_cpu_families: |
| @@ -25,10 +25,10 @@ index a59cd89..17de654 100644 | |||
| 25 | endian = literal['endian'] | 25 | endian = literal['endian'] |
| 26 | if endian not in ('little', 'big'): | 26 | if endian not in ('little', 'big'): |
| 27 | diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py | 27 | diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py |
| 28 | index 3704921..f1988f2 100644 | 28 | index a9bc2b8..b91c8da 100644 |
| 29 | --- a/mesonbuild/environment.py | 29 | --- a/mesonbuild/environment.py |
| 30 | +++ b/mesonbuild/environment.py | 30 | +++ b/mesonbuild/environment.py |
| 31 | @@ -251,9 +251,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: | 31 | @@ -348,9 +348,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: |
| 32 | trial = 'parisc' | 32 | trial = 'parisc' |
| 33 | 33 | ||
| 34 | if trial not in known_cpu_families: | 34 | if trial not in known_cpu_families: |
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 index b8837d77b6..c8c7b298de 100644 --- 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 | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 263fc0e26e1fd92e25fa3ef93f4a549dcebc5887 Mon Sep 17 00:00:00 2001 | 1 | From 4d223562c3e510e0dd62b608d184604e2cab6198 Mon Sep 17 00:00:00 2001 |
| 2 | From: Peter Kjellerstedt <pkj@axis.com> | 2 | From: Peter Kjellerstedt <pkj@axis.com> |
| 3 | Date: Thu, 26 Jul 2018 16:32:49 +0200 | 3 | Date: Thu, 26 Jul 2018 16:32:49 +0200 |
| 4 | Subject: [PATCH] Support building allarch recipes again | 4 | Subject: [PATCH] Support building allarch recipes again |
| @@ -13,7 +13,7 @@ Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> | |||
| 13 | 1 file changed, 1 insertion(+) | 13 | 1 file changed, 1 insertion(+) |
| 14 | 14 | ||
| 15 | diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py | 15 | diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py |
| 16 | index 17de654..2d2deef 100644 | 16 | index 5fb00a4..f5702ba 100644 |
| 17 | --- a/mesonbuild/envconfig.py | 17 | --- a/mesonbuild/envconfig.py |
| 18 | +++ b/mesonbuild/envconfig.py | 18 | +++ b/mesonbuild/envconfig.py |
| 19 | @@ -36,6 +36,7 @@ _T = typing.TypeVar('_T') | 19 | @@ -36,6 +36,7 @@ _T = typing.TypeVar('_T') |
diff --git a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/meta/recipes-devtools/meson/meson/0003-native_bindir.patch index 76cc4931d6..14a9a13666 100644 --- a/meta/recipes-devtools/meson/meson/0003-native_bindir.patch +++ b/meta/recipes-devtools/meson/meson/0003-native_bindir.patch | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | From 4a1d676522d6b56cbe9a45c3b040afaa27d37f78 Mon Sep 17 00:00:00 2001 | 1 | From baf7b94fec5a31b2d0cb162e43dbd28cc019f38e Mon Sep 17 00:00:00 2001 |
| 2 | From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> | 2 | From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> |
| 3 | Date: Wed, 15 Nov 2017 15:05:01 +0100 | 3 | Date: Wed, 15 Nov 2017 15:05:01 +0100 |
| 4 | Subject: [PATCH] native_bindir | 4 | Subject: [PATCH] native_bindir |
| @@ -22,10 +22,10 @@ Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> | |||
| 22 | 2 files changed, 14 insertions(+), 11 deletions(-) | 22 | 2 files changed, 14 insertions(+), 11 deletions(-) |
| 23 | 23 | ||
| 24 | diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py | 24 | diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py |
| 25 | index 3c55a56..eb52fd1 100644 | 25 | index 35f0175..b39cba6 100644 |
| 26 | --- a/mesonbuild/dependencies/base.py | 26 | --- a/mesonbuild/dependencies/base.py |
| 27 | +++ b/mesonbuild/dependencies/base.py | 27 | +++ b/mesonbuild/dependencies/base.py |
| 28 | @@ -185,7 +185,7 @@ class Dependency: | 28 | @@ -184,7 +184,7 @@ class Dependency: |
| 29 | def get_exe_args(self, compiler): | 29 | def get_exe_args(self, compiler): |
| 30 | return [] | 30 | return [] |
| 31 | 31 | ||
| @@ -34,7 +34,7 @@ index 3c55a56..eb52fd1 100644 | |||
| 34 | raise DependencyException('{!r} is not a pkgconfig dependency'.format(self.name)) | 34 | raise DependencyException('{!r} is not a pkgconfig dependency'.format(self.name)) |
| 35 | 35 | ||
| 36 | def get_configtool_variable(self, variable_name): | 36 | def get_configtool_variable(self, variable_name): |
| 37 | @@ -248,7 +248,7 @@ class InternalDependency(Dependency): | 37 | @@ -247,7 +247,7 @@ class InternalDependency(Dependency): |
| 38 | self.sources = sources | 38 | self.sources = sources |
| 39 | self.ext_deps = ext_deps | 39 | self.ext_deps = ext_deps |
| 40 | 40 | ||
| @@ -54,11 +54,11 @@ index 3c55a56..eb52fd1 100644 | |||
| 54 | + cmd = [self.pkgbin.get_command()[0] + "-native"] + args | 54 | + cmd = [self.pkgbin.get_command()[0] + "-native"] + args |
| 55 | + else: | 55 | + else: |
| 56 | + cmd = self.pkgbin.get_command() + args | 56 | + cmd = self.pkgbin.get_command() + args |
| 57 | p, out = Popen_safe(cmd, env=env)[0:2] | 57 | p, out, err = Popen_safe(cmd, env=env) |
| 58 | rc, out = p.returncode, out.strip() | 58 | rc, out, err = p.returncode, out.strip(), err.strip() |
| 59 | call = ' '.join(cmd) | 59 | call = ' '.join(cmd) |
| 60 | mlog.debug("Called `{}` -> {}\n{}".format(call, rc, out)) | 60 | mlog.debug("Called `{}` -> {}\n{}".format(call, rc, out)) |
| 61 | return rc, out | 61 | return rc, out, err |
| 62 | 62 | ||
| 63 | - def _call_pkgbin(self, args, env=None): | 63 | - def _call_pkgbin(self, args, env=None): |
| 64 | + def _call_pkgbin(self, args, env=None, use_native=False): | 64 | + def _call_pkgbin(self, args, env=None, use_native=False): |
| @@ -74,21 +74,21 @@ index 3c55a56..eb52fd1 100644 | |||
| 74 | return cache[(self.pkgbin, targs, fenv)] | 74 | return cache[(self.pkgbin, targs, fenv)] |
| 75 | 75 | ||
| 76 | def _convert_mingw_paths(self, args): | 76 | def _convert_mingw_paths(self, args): |
| 77 | @@ -926,7 +929,7 @@ class PkgConfigDependency(ExternalDependency): | 77 | @@ -885,7 +888,7 @@ class PkgConfigDependency(ExternalDependency): |
| 78 | mlog.warning('Could not determine complete list of dependencies for %s' % self.name) | 78 | (self.name, out_raw)) |
| 79 | self.link_args, self.raw_link_args = self._search_libs(out, out_raw, out_all) | 79 | self.link_args, self.raw_link_args = self._search_libs(out, out_raw) |
| 80 | 80 | ||
| 81 | - def get_pkgconfig_variable(self, variable_name, kwargs): | 81 | - def get_pkgconfig_variable(self, variable_name, kwargs): |
| 82 | + def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False): | 82 | + def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False): |
| 83 | options = ['--variable=' + variable_name, self.name] | 83 | options = ['--variable=' + variable_name, self.name] |
| 84 | 84 | ||
| 85 | if 'define_variable' in kwargs: | 85 | if 'define_variable' in kwargs: |
| 86 | @@ -939,7 +942,7 @@ class PkgConfigDependency(ExternalDependency): | 86 | @@ -898,7 +901,7 @@ class PkgConfigDependency(ExternalDependency): |
| 87 | 87 | ||
| 88 | options = ['--define-variable=' + '='.join(definition)] + options | 88 | options = ['--define-variable=' + '='.join(definition)] + options |
| 89 | 89 | ||
| 90 | - ret, out = self._call_pkgbin(options) | 90 | - ret, out, err = self._call_pkgbin(options) |
| 91 | + ret, out = self._call_pkgbin(options, use_native=use_native) | 91 | + ret, out, err = self._call_pkgbin(options, use_native=use_native) |
| 92 | variable = '' | 92 | variable = '' |
| 93 | if ret != 0: | 93 | if ret != 0: |
| 94 | if self.required: | 94 | if self.required: |
diff --git a/meta/recipes-devtools/meson/meson/dbc9e971bd320f3df15c1ee74f54858e6792b183.patch b/meta/recipes-devtools/meson/meson/dbc9e971bd320f3df15c1ee74f54858e6792b183.patch deleted file mode 100644 index 7ea8a133e6..0000000000 --- a/meta/recipes-devtools/meson/meson/dbc9e971bd320f3df15c1ee74f54858e6792b183.patch +++ /dev/null | |||
| @@ -1,95 +0,0 @@ | |||
| 1 | From dbc9e971bd320f3df15c1ee74f54858e6792b183 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Xavier Claessens <xavier.claessens@collabora.com> | ||
| 3 | Date: Fri, 11 Oct 2019 11:01:22 -0400 | ||
| 4 | Subject: [PATCH] Remove duplicated object files in static libraries | ||
| 5 | |||
| 6 | When a static library link_whole to a bunch of other static libraries, | ||
| 7 | we have to extract all their objects recursively. But that could | ||
| 8 | introduce duplicated objects. ar is dumb enough to allow this without | ||
| 9 | error, but once the resulting static library is linked into an | ||
| 10 | executable or shared library, the linker will complain about duplicated | ||
| 11 | symbols. | ||
| 12 | |||
| 13 | Upstream-Status: Backport | ||
| 14 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | ||
| 15 | |||
| 16 | --- | ||
| 17 | mesonbuild/backend/backends.py | 3 ++- | ||
| 18 | test cases/unit/69 static link/lib/func17.c | 4 ++++ | ||
| 19 | test cases/unit/69 static link/lib/func18.c | 6 ++++++ | ||
| 20 | test cases/unit/69 static link/lib/func19.c | 7 +++++++ | ||
| 21 | test cases/unit/69 static link/lib/meson.build | 12 ++++++++++++ | ||
| 22 | 5 files changed, 31 insertions(+), 1 deletion(-) | ||
| 23 | create mode 100644 test cases/unit/69 static link/lib/func17.c | ||
| 24 | create mode 100644 test cases/unit/69 static link/lib/func18.c | ||
| 25 | create mode 100644 test cases/unit/69 static link/lib/func19.c | ||
| 26 | |||
| 27 | diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py | ||
| 28 | index 947be1cbef..e54809657f 100644 | ||
| 29 | --- a/mesonbuild/backend/backends.py | ||
| 30 | +++ b/mesonbuild/backend/backends.py | ||
| 31 | @@ -281,7 +281,8 @@ def relpath(self, todir, fromdir): | ||
| 32 | os.path.join('dummyprefixdir', fromdir)) | ||
| 33 | |||
| 34 | def flatten_object_list(self, target, proj_dir_to_build_root=''): | ||
| 35 | - return self._flatten_object_list(target, target.get_objects(), proj_dir_to_build_root) | ||
| 36 | + obj_list = self._flatten_object_list(target, target.get_objects(), proj_dir_to_build_root) | ||
| 37 | + return list(dict.fromkeys(obj_list)) | ||
| 38 | |||
| 39 | def _flatten_object_list(self, target, objects, proj_dir_to_build_root): | ||
| 40 | obj_list = [] | ||
| 41 | diff --git a/test cases/unit/69 static link/lib/func17.c b/test cases/unit/69 static link/lib/func17.c | ||
| 42 | new file mode 100644 | ||
| 43 | index 0000000000..d1d8ec498c | ||
| 44 | --- /dev/null | ||
| 45 | +++ b/test cases/unit/69 static link/lib/func17.c | ||
| 46 | @@ -0,0 +1,4 @@ | ||
| 47 | +int func17() | ||
| 48 | +{ | ||
| 49 | + return 1; | ||
| 50 | +} | ||
| 51 | diff --git a/test cases/unit/69 static link/lib/func18.c b/test cases/unit/69 static link/lib/func18.c | ||
| 52 | new file mode 100644 | ||
| 53 | index 0000000000..c149085ba4 | ||
| 54 | --- /dev/null | ||
| 55 | +++ b/test cases/unit/69 static link/lib/func18.c | ||
| 56 | @@ -0,0 +1,6 @@ | ||
| 57 | +int func17(); | ||
| 58 | + | ||
| 59 | +int func18() | ||
| 60 | +{ | ||
| 61 | + return func17() + 1; | ||
| 62 | +} | ||
| 63 | diff --git a/test cases/unit/69 static link/lib/func19.c b/test cases/unit/69 static link/lib/func19.c | ||
| 64 | new file mode 100644 | ||
| 65 | index 0000000000..69120e4bf8 | ||
| 66 | --- /dev/null | ||
| 67 | +++ b/test cases/unit/69 static link/lib/func19.c | ||
| 68 | @@ -0,0 +1,7 @@ | ||
| 69 | +int func17(); | ||
| 70 | +int func18(); | ||
| 71 | + | ||
| 72 | +int func19() | ||
| 73 | +{ | ||
| 74 | + return func17() + func18(); | ||
| 75 | +} | ||
| 76 | diff --git a/test cases/unit/69 static link/lib/meson.build b/test cases/unit/69 static link/lib/meson.build | ||
| 77 | index 5f04aab6a1..8f95fc4546 100644 | ||
| 78 | --- a/test cases/unit/69 static link/lib/meson.build | ||
| 79 | +++ b/test cases/unit/69 static link/lib/meson.build | ||
| 80 | @@ -66,3 +66,15 @@ libfunc15 = static_library('func15', 'func15.c', | ||
| 81 | libfunc16 = static_library('func16', 'func16.c', | ||
| 82 | link_with : libfunc15, | ||
| 83 | install : true) | ||
| 84 | + | ||
| 85 | +# Verify func17.c.o gets included only once into libfunc19, otherwise | ||
| 86 | +# func19-shared would failed with duplicated symbol. | ||
| 87 | +libfunc17 = static_library('func17', 'func17.c', | ||
| 88 | + install : false) | ||
| 89 | +libfunc18 = static_library('func18', 'func18.c', | ||
| 90 | + link_with : libfunc17, | ||
| 91 | + install : false) | ||
| 92 | +libfunc19 = static_library('func19', 'func19.c', | ||
| 93 | + link_whole : [libfunc17, libfunc18], | ||
| 94 | + install : false) | ||
| 95 | +shared_library('func19-shared', link_whole : [libfunc19]) | ||
diff --git a/meta/recipes-devtools/meson/meson_0.52.0.bb b/meta/recipes-devtools/meson/meson_0.52.1.bb index 897fa148d9..de9b905c12 100644 --- a/meta/recipes-devtools/meson/meson_0.52.0.bb +++ b/meta/recipes-devtools/meson/meson_0.52.1.bb | |||
| @@ -1,3 +1,4 @@ | |||
| 1 | include meson.inc | 1 | include meson.inc |
| 2 | 2 | ||
| 3 | BBCLASSEXTEND = "native" | 3 | BBCLASSEXTEND = "native" |
| 4 | |||
diff --git a/meta/recipes-devtools/meson/nativesdk-meson_0.52.0.bb b/meta/recipes-devtools/meson/nativesdk-meson_0.52.1.bb index 1756f342ce..1756f342ce 100644 --- a/meta/recipes-devtools/meson/nativesdk-meson_0.52.0.bb +++ b/meta/recipes-devtools/meson/nativesdk-meson_0.52.1.bb | |||
