aboutsummaryrefslogtreecommitdiff
path: root/dependencies.py
diff options
context:
space:
mode:
authorjpakkane <jpakkane@gmail.com>2015-06-07 23:58:19 +0300
committerjpakkane <jpakkane@gmail.com>2015-06-07 23:58:19 +0300
commit414c5f8c497bacaf2d70ec1b992c7e828b775eaf (patch)
treebabcafc1d3c4a6fc3613ca7a2c826b941dd59e69 /dependencies.py
parent379a0bed137e6ac1b25d64033116f83817842aca (diff)
parentfb401ed8d0fd9b4b6b09515ea815be7bd10b34e4 (diff)
downloadmeson-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.py16
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