aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/build.py
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.com>2020-07-21 23:05:17 -0400
committerJussi Pakkanen <jpakkane@gmail.com>2020-07-30 18:59:10 +0300
commit40c197d524181713968ac5a1f052671744915c62 (patch)
tree4c2ce61788da9051f7ebc6b45a26c11cd3e4466e /mesonbuild/build.py
parentbbf8533a97481685d6e840de3d44372bae5d620e (diff)
downloadmeson-40c197d524181713968ac5a1f052671744915c62.zip
meson-40c197d524181713968ac5a1f052671744915c62.tar.gz
meson-40c197d524181713968ac5a1f052671744915c62.tar.bz2
pkgconfig: Fix various corner cases
See unit tests for the exact scenarios this PR fixes.
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r--mesonbuild/build.py13
1 files changed, 3 insertions, 10 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index a06979c..5e6db73 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -1011,23 +1011,16 @@ This will become a hard error in a future Meson release.''')
def get_extra_args(self, language):
return self.extra_args.get(language, [])
- def get_dependencies(self, exclude=None, for_pkgconfig=False):
+ def get_dependencies(self, exclude=None):
transitive_deps = []
if exclude is None:
exclude = []
for t in itertools.chain(self.link_targets, self.link_whole_targets):
if t in transitive_deps or t in exclude:
continue
- # When generating `Libs:` and `Libs.private:` lists in pkg-config
- # files we don't want to include static libraries that we link_whole
- # or are uninstalled (they're implicitly promoted to link_whole).
- # But we still need to include their transitive dependencies,
- # a static library we link_whole would itself link to a shared
- # library or an installed static library.
- if not for_pkgconfig or (not t.is_internal() and t not in self.link_whole_targets):
- transitive_deps.append(t)
+ transitive_deps.append(t)
if isinstance(t, StaticLibrary):
- transitive_deps += t.get_dependencies(transitive_deps + exclude, for_pkgconfig)
+ transitive_deps += t.get_dependencies(transitive_deps + exclude)
return transitive_deps
def get_source_subdir(self):