SHA256
1
0
forked from pool/meson

Accepting request 845992 from devel:tools:building

OBS-URL: https://build.opensuse.org/request/show/845992
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/meson?expand=0&rev=65
This commit is contained in:
Dominique Leuenberger 2020-11-09 12:56:08 +00:00 committed by Git OBS Bridge
commit 9738444229
8 changed files with 113 additions and 26 deletions

53
7930.patch Normal file
View File

@ -0,0 +1,53 @@
From 2b923f532c3e16687910fecb09cedb80a76597cf Mon Sep 17 00:00:00 2001
From: Xavier Claessens <xavier.claessens@collabora.com>
Date: Tue, 3 Nov 2020 09:39:39 -0500
Subject: [PATCH] pkgconfig: Make external deps of static library public
This fix a regression caused by
https://github.com/mesonbuild/meson/pull/7837, it wanted to make
InternalDependency's external_deps private but has side effect of making
StatisLibrary's external_deps private too.
It is technically correct to make them private, but Meson used to make
StaticLibrary deps public so they are usable without `pkg-config
--static` when we know there is only a static library available.
Fixes: #7929.
---
mesonbuild/modules/pkgconfig.py | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/mesonbuild/modules/pkgconfig.py b/mesonbuild/modules/pkgconfig.py
index a863b33c93..62e1c1595c 100644
--- a/mesonbuild/modules/pkgconfig.py
+++ b/mesonbuild/modules/pkgconfig.py
@@ -131,7 +131,7 @@ def _process_libs(self, libs, public):
if obj.found():
processed_libs += obj.get_link_args()
processed_cflags += obj.get_compile_args()
- self._add_lib_dependencies(obj.libraries, obj.whole_libraries, obj.ext_deps, public)
+ self._add_lib_dependencies(obj.libraries, obj.whole_libraries, obj.ext_deps, public, private_external_deps=True)
elif isinstance(obj, dependencies.Dependency):
if obj.found():
processed_libs += obj.get_link_args()
@@ -160,7 +160,7 @@ def _process_libs(self, libs, public):
return processed_libs, processed_reqs, processed_cflags
- def _add_lib_dependencies(self, link_targets, link_whole_targets, external_deps, public):
+ def _add_lib_dependencies(self, link_targets, link_whole_targets, external_deps, public, private_external_deps=False):
add_libs = self.add_pub_libs if public else self.add_priv_libs
# Recursively add all linked libraries
for t in link_targets:
@@ -173,7 +173,10 @@ def _add_lib_dependencies(self, link_targets, link_whole_targets, external_deps,
for t in link_whole_targets:
self._add_link_whole(t, public)
# And finally its external dependencies
- self.add_priv_libs(external_deps)
+ if private_external_deps:
+ self.add_priv_libs(external_deps)
+ else:
+ add_libs(external_deps)
def _add_link_whole(self, t, public):
# Don't include static libraries that we link_whole. But we still need to

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6bed2a25a128bbabe97cf40f63165ebe800e4fcb46db8ab7ef5c2b5789f092a5
size 1740465

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAl9bo80ACgkQO/RpO/7r
lCir+A/9ETdoEiQl0VglrSZHmZ5YEGXMWWowZSKvZ4ZJTRunjP/O0yKg5TKxJn+f
5+qVrQH/w7Igasbp84dkUUbMqwsQuzX7NJkCjO5NswRSAS7NNECFM+3otCTsXGrp
2C5V/bmyk8/E8hlVH3+2j0xo50NeCpQhzvTZLIvOoNOgd2uD85WeymnMCwlF0HpV
V2WFE5N4YQQFLMRsUS+3gOlC0A5kOlLzlv9hc8HxzBnvLc0uPSAEBakHixjQl/VS
PKsi3BZNjZABTGxp3UJ7Xo95SMOU48XHuWqw2Vec+Px3EAVLyIC+ByCAgJ3IEOwv
B2XiRbD7X6pPEESFT80KlOrIeNetdy8T2CAaVB1Q2sjY5bi6u+lDZYlapxedubon
5lQivrwwFYe9xe3Ehe+wNMhcjUhJ7u42fyBzNzfMMBn7IGZFcKZQ1APctUDdvs9N
Lwx/cfooJdRhUWE0dGf0U1sWX/RY4ZnjW21slyplHhJzB6PWffoB3H0KvJwdhqxJ
b5gjIJ45IY36VGzHcUhHPSQvtmclZ06CVMg6PX7g9dhvZX6rn0yjq+6ZmzIKdjzW
t+KLybo/ct3nsWWGUKF4TFg0nrRIkhEXkvJ0gXErN0WCxld6dD/Gt800XsOlQsJb
Z2b4mIpfmMUn1MwEXnxZFk1z/l6PdfJsYlRYhh/2CLEq95NzZUk=
=3CN/
-----END PGP SIGNATURE-----

3
meson-0.56.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:291dd38ff1cd55fcfca8fc985181dd39be0d3e5826e5f0013bf867be40117213
size 1794974

16
meson-0.56.0.tar.gz.asc Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEElRgfTu0U/fTkG1GNO/RpO/7rlCgFAl+b2MoACgkQO/RpO/7r
lChjlg/6AsKeKgw+2kC9hLp7Fz6qrPUulWfI1uqZ/wCn/nkiWfVVPiyMjvin7KBU
k4t7fFZvEA2mAbp+Itm8LB9sEFlsKL3hGHB14OmKAbTjnjW+L4bPB0IgLvazxv9O
LRoWkxQTJA0deoWCAe0siJ5H7JUabc+1vUToGURTYfrhrmMzTudm/CiRDDpnLsB+
wc6UPfYtpQ6zUB2uF/lWtUqnLU9O3tz5hNnYdzbjbxOTvOo9xo9d5LsnN+omOxIj
bqZq3hcKjlz06WmfabD/KAH13U1iS8+cn1Q15J2l64uKVr0YTgVALprpFXvoDEaW
az0snIk7CPR48D8xEpzyVHR1SGZZMX9AM+o564JMgfRWOWOk9YrQVg3+udh+XLc6
U8RubTNBVzMB7Z8z+ce9KTFLekUDxxwCHSRr+bLcJ8UHbrkSn6fWhalPJ+UZ/pf/
BfSQZ0bMoWBzDI+Ig6C604dNGg6N1rJlJP2X2W7UFjmjqV//snWhLNUvBf+T6du4
sTEeYWs1yaFvIMUuPwACKQ6IDRKgkQOA6TVA1CLQ/1wptOtDfWkcoJm8pW/jXQfZ
7xWg0DwQsCfrrVd11BF484xGUsJVbi8+fBMUug3nJVAW0Rf4i0iAVKUOj81D2BU4
6j0nSK2C3aEU7ZIqrbPtxn2M8lzj0L5tYK+dB1y6U91DrZdQLcc=
=xAl0
-----END PGP SIGNATURE-----

View File

@ -1,8 +1,8 @@
Index: meson-0.54.0/run_tests.py
Index: meson-0.56.0/run_tests.py
===================================================================
--- meson-0.54.0.orig/run_tests.py
+++ meson-0.54.0/run_tests.py
@@ -152,18 +152,10 @@ def get_meson_script():
--- meson-0.56.0.orig/run_tests.py
+++ meson-0.56.0/run_tests.py
@@ -153,18 +153,10 @@ def get_meson_script():
Also used by run_unittests.py to determine what meson to run when not
running in-process (which is the default).
'''
@ -23,10 +23,10 @@ Index: meson-0.54.0/run_tests.py
def get_backend_args_for_dir(backend, builddir):
'''
@@ -366,12 +358,12 @@ def main():
@@ -352,12 +344,12 @@ def main():
else:
env['PYTHONPATH'] = temp_dir
if not cross:
if not options.cross:
- cmd = mesonlib.python_command + ['run_meson_command_tests.py', '-v']
- if options.failfast:
- cmd += ['--failfast']

View File

@ -1,3 +1,34 @@
-------------------------------------------------------------------
Tue Nov 3 14:57:22 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>
- Add 7930.patch: pkgconfig: Make external deps of static library
public.
-------------------------------------------------------------------
Fri Oct 30 09:20:33 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 0.56.0:
+ meson test can now filter tests by subproject
+ Native (build machine) compilers not always required by
project().
+ New extra_files key in target introspection.
+ meson.build_root() and meson.source_root() are deprecated.
+ dep.as_link_whole().
+ Added NVidia HPC SDK compilers.
+ CMake subproject cross compilation support.
+ Machine file keys are stored case sensitive.
+ Consistency between declare_dependency() and
pkgconfig.generate() variables.
+ Qt5 compile_translations now supports qresource preprocessing.
+ Controlling subproject dependencies with
dependency(allow_fallback: ...).
+ Improvements for the builtin curses dependency.
+ HDF5 dependency improvements.
+ Dependencies listed in test and benchmark introspection.
+ Deprecate Dependency.get_pkgconfig_variable and
Dependency.get_configtool_variable.
- Rebase meson-test-installed-bin.patch.
-------------------------------------------------------------------
Fri Sep 11 17:26:46 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>

View File

@ -28,7 +28,7 @@
%{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim}
%bcond_with setuptools
Name: meson%{name_ext}
Version: 0.55.3
Version: 0.56.0
Release: 0
Summary: Python-based build system
License: Apache-2.0
@ -43,6 +43,8 @@ Patch0: meson-suse-ify-macros.patch
Patch1: meson-test-installed-bin.patch
# PATCH-FEATURE-OPENSUSE meson-distutils.patch tchvatal@suse.com -- build and install using distutils instead of full setuptools
Patch2: meson-distutils.patch
# PATCH-FIX-UPSTREAM 7930.patch -- pkgconfig: Make external deps of static library public
Patch3: https://patch-diff.githubusercontent.com/raw/mesonbuild/meson/pull/7930.patch
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildRequires: python3-base
@ -162,6 +164,7 @@ This package provides support for meson.build files in Vim.
%if !%{with setuptools}
%patch2 -p1
%endif
%patch3 -p1
# We do not have gmock available at this moment - can't run the test suite for it
rm -r "test cases/frameworks/3 gmock" \