diff options
author | Eli Schwartz <eschwartz@archlinux.org> | 2020-01-09 18:03:58 -0500 |
---|---|---|
committer | Xavier Claessens <xclaesse@gmail.com> | 2020-01-09 22:08:03 -0500 |
commit | 71bbcc76696e303dfe184ad57e76387a322e8f43 (patch) | |
tree | 1feff77e3adf321ed01d1fb167c10d75556f5d4a /mesonbuild/modules/pkgconfig.py | |
parent | ff822990d1af6ff6c6f7ae3f2efa9012d4b14bf9 (diff) | |
download | meson-71bbcc76696e303dfe184ad57e76387a322e8f43.zip meson-71bbcc76696e303dfe184ad57e76387a322e8f43.tar.gz meson-71bbcc76696e303dfe184ad57e76387a322e8f43.tar.bz2 |
pkgconfig module: add FeatureNew for requires: dependency('foo')
Introduced in https://github.com/mesonbuild/meson/pull/3131
Diffstat (limited to 'mesonbuild/modules/pkgconfig.py')
-rw-r--r-- | mesonbuild/modules/pkgconfig.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/mesonbuild/modules/pkgconfig.py b/mesonbuild/modules/pkgconfig.py index a37dd4f..dc45a5b 100644 --- a/mesonbuild/modules/pkgconfig.py +++ b/mesonbuild/modules/pkgconfig.py @@ -26,7 +26,8 @@ from ..interpreterbase import permittedKwargs, FeatureNew, FeatureNewKwargs already_warned_objs = set() class DependenciesHelper: - def __init__(self, name): + def __init__(self, state, name): + self.state = state self.name = name self.pub_libs = [] self.pub_reqs = [] @@ -73,6 +74,8 @@ class DependenciesHelper: '''Returns string names of requirements''' processed_reqs = [] for obj in mesonlib.listify(reqs, unholder=True): + if not isinstance(obj, str): + FeatureNew('pkgconfig.generate requirement from non-string object', '0.46.0').use(self.state.subproject) if hasattr(obj, 'generated_pc'): self._check_generated_pc_deprecation(obj) processed_reqs.append(obj.generated_pc) @@ -395,7 +398,7 @@ class PkgConfigModule(ExtensionModule): if mainlib: libraries = [mainlib] + libraries - deps = DependenciesHelper(filebase) + deps = DependenciesHelper(state, filebase) deps.add_pub_libs(libraries) deps.add_priv_libs(kwargs.get('libraries_private', [])) deps.add_pub_reqs(kwargs.get('requires', [])) |