aboutsummaryrefslogtreecommitdiff
path: root/environment.py
diff options
context:
space:
mode:
Diffstat (limited to 'environment.py')
-rwxr-xr-xenvironment.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/environment.py b/environment.py
index cf7158e..733233b 100755
--- a/environment.py
+++ b/environment.py
@@ -411,17 +411,18 @@ class Dependency():
class PkgConfigDependency(Dependency):
pkgconfig_found = False
- def __init__(self, name):
+ def __init__(self, name, required):
Dependency.__init__(self)
- self.is_found = False
if not PkgConfigDependency.pkgconfig_found:
self.check_pkgconfig()
+ self.is_found = False
p = subprocess.Popen(['pkg-config', '--modversion', name], stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
out = p.communicate()[0]
if p.returncode != 0:
- print('Dependency %s not known to pkg-config.' % name)
+ if required:
+ raise EnvironmentException('Required dependency %s not found.' % name)
self.modversion = 'none'
self.cflags = []
self.libs = []
@@ -465,8 +466,8 @@ class PkgConfigDependency(Dependency):
# Fixme, move to environment.
def find_external_dependency(name, kwargs):
- # Add detectors for non-pkg-config deps (e.g. Boost) etc here.
- return PkgConfigDependency(name)
+ required = kwargs.get('required', False)
+ return PkgConfigDependency(name, required)
def test_pkg_config():
name = 'gtk+-3.0'