aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/modules/pkgconfig.py
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz@archlinux.org>2020-01-09 18:03:58 -0500
committerXavier Claessens <xclaesse@gmail.com>2020-01-09 22:08:03 -0500
commit71bbcc76696e303dfe184ad57e76387a322e8f43 (patch)
tree1feff77e3adf321ed01d1fb167c10d75556f5d4a /mesonbuild/modules/pkgconfig.py
parentff822990d1af6ff6c6f7ae3f2efa9012d4b14bf9 (diff)
downloadmeson-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.py7
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', []))