aboutsummaryrefslogtreecommitdiff
path: root/interpreter.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2015-11-04 23:57:26 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2015-11-04 23:57:26 +0200
commit7b45e6f5f57c577bdb31b9b7b8b9be5190eacfe3 (patch)
tree931dae7d669512e60c21669e639d9833cfc2baf2 /interpreter.py
parent8a1f2cdbbc96e15a3ec4b67133e04714e6976e22 (diff)
downloadmeson-7b45e6f5f57c577bdb31b9b7b8b9be5190eacfe3.zip
meson-7b45e6f5f57c577bdb31b9b7b8b9be5190eacfe3.tar.gz
meson-7b45e6f5f57c577bdb31b9b7b8b9be5190eacfe3.tar.bz2
Can store ext deps to internal deps. Closes #304.
Diffstat (limited to 'interpreter.py')
-rw-r--r--interpreter.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/interpreter.py b/interpreter.py
index c78e83d..999c53a 100644
--- a/interpreter.py
+++ b/interpreter.py
@@ -1111,7 +1111,19 @@ class Interpreter():
if not isinstance(sources, list):
sources = [sources]
sources = self.source_strings_to_files(self.flatten(sources))
- dep = dependencies.InternalDependency(incs, libs, sources)
+ deps = kwargs.get('dependencies', [])
+ if not isinstance(deps, list):
+ deps = [deps]
+ final_deps = []
+ for d in deps:
+ try:
+ d = d.held_object
+ except Exception:
+ pass
+ if not isinstance(d, (dependencies.Dependency, dependencies.ExternalLibrary)):
+ raise InterpreterException('Dependencies must be external deps')
+ final_deps.append(d)
+ dep = dependencies.InternalDependency(incs, libs, sources, deps)
return InternalDependencyHolder(dep)
@noKwargs