diff options
author | jpakkane <jpakkane@gmail.com> | 2015-06-07 23:58:19 +0300 |
---|---|---|
committer | jpakkane <jpakkane@gmail.com> | 2015-06-07 23:58:19 +0300 |
commit | 414c5f8c497bacaf2d70ec1b992c7e828b775eaf (patch) | |
tree | babcafc1d3c4a6fc3613ca7a2c826b941dd59e69 /dependencies.py | |
parent | 379a0bed137e6ac1b25d64033116f83817842aca (diff) | |
parent | fb401ed8d0fd9b4b6b09515ea815be7bd10b34e4 (diff) | |
download | meson-414c5f8c497bacaf2d70ec1b992c7e828b775eaf.zip meson-414c5f8c497bacaf2d70ec1b992c7e828b775eaf.tar.gz meson-414c5f8c497bacaf2d70ec1b992c7e828b775eaf.tar.bz2 |
Merge pull request #140 from MathieuDuponchelle/fix_library_introspection
Fix library introspection
Diffstat (limited to 'dependencies.py')
-rw-r--r-- | dependencies.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/dependencies.py b/dependencies.py index c4c046a..3767d63 100644 --- a/dependencies.py +++ b/dependencies.py @@ -90,6 +90,8 @@ class PkgConfigDependency(Dependency): else: pkgbin = 'pkg-config' type_string = 'Native' + + self.pkgbin = pkgbin p = subprocess.Popen([pkgbin, '--modversion', name], stdout=subprocess.PIPE, stderr=subprocess.PIPE) out = p.communicate()[0] @@ -142,6 +144,20 @@ class PkgConfigDependency(Dependency): self.libs.append(lib) + def get_variable(self, variable_name): + p = subprocess.Popen([self.pkgbin, '--variable=%s' % + variable_name, self.name], stdout=subprocess.PIPE, stderr=subprocess.PIPE) + out = p.communicate()[0] + if p.returncode != 0: + if required: + raise DependencyException('%s dependency %s not found.' % + (type_string, self.name)) + else: + variable = out.decode().strip() + mlog.debug ("return of subprocess : ", variable) + + return variable + def get_modversion(self): return self.modversion |