diff options
author | Anonymous Maarten <anonymous.maarten@gmail.com> | 2017-10-20 08:15:24 +0200 |
---|---|---|
committer | Anonymous Maarten <anonymous.maarten@gmail.com> | 2017-11-13 23:08:01 +0100 |
commit | 5cfb3784422c8f018ab1ec0b1b0dec6c73d87669 (patch) | |
tree | 134da3c97850fbeb9a995a105a8ee841eff928ad | |
parent | b715276cc75ffa4873c3bb1e6089a88df60df4f4 (diff) | |
download | meson-5cfb3784422c8f018ab1ec0b1b0dec6c73d87669.zip meson-5cfb3784422c8f018ab1ec0b1b0dec6c73d87669.tar.gz meson-5cfb3784422c8f018ab1ec0b1b0dec6c73d87669.tar.bz2 |
Enable get_pkgconfig_variable for python3 dependencies
fixes mesonbuild/meson#2508
-rw-r--r-- | mesonbuild/dependencies/misc.py | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/mesonbuild/dependencies/misc.py b/mesonbuild/dependencies/misc.py index c807926..4a023e4 100644 --- a/mesonbuild/dependencies/misc.py +++ b/mesonbuild/dependencies/misc.py @@ -602,15 +602,18 @@ class Python3Dependency(ExternalDependency): self.name = 'python3' # We can only be sure that it is Python 3 at this point self.version = '3' + self.pkgdep = None if DependencyMethods.PKGCONFIG in self.methods: try: - pkgdep = PkgConfigDependency('python3', environment, kwargs) - if pkgdep.found(): - self.compile_args = pkgdep.get_compile_args() - self.link_args = pkgdep.get_link_args() - self.version = pkgdep.get_version() + self.pkgdep = PkgConfigDependency('python3', environment, kwargs) + if self.pkgdep.found(): + self.compile_args = self.pkgdep.get_compile_args() + self.link_args = self.pkgdep.get_link_args() + self.version = self.pkgdep.get_version() self.is_found = True return + else: + self.pkgdep = None except Exception: pass if not self.is_found: @@ -674,6 +677,12 @@ class Python3Dependency(ExternalDependency): else: return [DependencyMethods.PKGCONFIG] + def get_pkgconfig_variable(self, variable_name): + if self.pkgdep: + return self.pkgdep.get_pkgconfig_variable(variable_name) + else: + return super().get_pkgconfig_variable(variable_name) + class PcapDependency(ExternalDependency): def __init__(self, environment, kwargs): |