aboutsummaryrefslogtreecommitdiff
path: root/environment.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2013-03-09 23:08:22 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2013-03-09 23:08:22 +0200
commit5f6c928e2b92d7bd598bba38e0494e45a7b3a686 (patch)
treee43b270b163dffd920070947f2c1471478ed1118 /environment.py
parent347c2634311f8a70f2db5251358eace9f0e0eb38 (diff)
downloadmeson-5f6c928e2b92d7bd598bba38e0494e45a7b3a686.zip
meson-5f6c928e2b92d7bd598bba38e0494e45a7b3a686.tar.gz
meson-5f6c928e2b92d7bd598bba38e0494e45a7b3a686.tar.bz2
Library and program objects can be serialised.
Diffstat (limited to 'environment.py')
-rwxr-xr-xenvironment.py32
1 files changed, 31 insertions, 1 deletions
diff --git a/environment.py b/environment.py
index e32b7e5..c0b1c03 100755
--- a/environment.py
+++ b/environment.py
@@ -509,7 +509,37 @@ class PkgConfigDependency(Dependency):
def found(self):
return self.is_found
-# Fixme, move to environment.
+class ExternalProgram():
+ def __init__(self, name, fullpath=None):
+ self.name = name
+ self.fullpath = fullpath
+
+ def found(self):
+ return self.fullpath is not None
+
+ def get_command(self):
+ return self.fullpath
+
+ def get_name(self):
+ return self.name
+
+class ExternalLibrary(Dependency):
+ def __init__(self, name, fullpath=None):
+ Dependency.__init__(self)
+ self.name = name
+ self.fullpath = fullpath
+
+ def found(self):
+ return self.fullpath is not None
+
+ def get_name(self):
+ return self.name
+
+ def get_link_flags(self):
+ if self.found():
+ return [self.fullpath]
+ return []
+
def find_external_dependency(name, kwargs):
required = kwargs.get('required', False)
return PkgConfigDependency(name, required)