diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2015-02-21 03:52:16 +0200 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2015-02-21 03:52:16 +0200 |
commit | f5ad718f3a34f5cb96b52af5ace4d4daae51de2d (patch) | |
tree | 2ff7f12e12cb32eb1596e400c2283858851afc0f | |
parent | c7e3d84f51158aad337e72b70f72f5460c2cb640 (diff) | |
download | meson-f5ad718f3a34f5cb96b52af5ace4d4daae51de2d.zip meson-f5ad718f3a34f5cb96b52af5ace4d4daae51de2d.tar.gz meson-f5ad718f3a34f5cb96b52af5ace4d4daae51de2d.tar.bz2 |
Added found method to dependencies.
-rw-r--r-- | interpreter.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/interpreter.py b/interpreter.py index 65e1b4e..ffbee6d 100644 --- a/interpreter.py +++ b/interpreter.py @@ -169,6 +169,15 @@ class ConfigurationDataHolder(InterpreterObject): # Interpreter objects can not be pickled so we must have # these wrappers. +class DependencyHolder(InterpreterObject): + def __init__(self, dep): + InterpreterObject.__init__(self) + self.held_object = dep + self.methods.update({'found' : self.found_method}) + + def found_method(self, args, kwargs): + return self.held_object.found() + class ExternalProgramHolder(InterpreterObject): def __init__(self, ep): InterpreterObject.__init__(self) @@ -1112,7 +1121,7 @@ class Interpreter(): if not dep.found(): dep = dependencies.find_external_dependency(name, kwargs) self.coredata.deps[identifier] = dep - return dep + return DependencyHolder(dep) def func_executable(self, node, args, kwargs): return self.build_target(node, args, kwargs, ExecutableHolder) |