aboutsummaryrefslogtreecommitdiff
path: root/interpreter.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2013-01-01 20:08:03 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2013-01-01 20:08:03 +0200
commit1892e92a93c4a261fa030118b66cd7bbb02bf62f (patch)
treecfc2297c0271f31458ca98ecbf8e0a1072fb0aef /interpreter.py
parent16aa9b16b2260ec60a0aa37c7143224f688c1155 (diff)
downloadmeson-1892e92a93c4a261fa030118b66cd7bbb02bf62f.zip
meson-1892e92a93c4a261fa030118b66cd7bbb02bf62f.tar.gz
meson-1892e92a93c4a261fa030118b66cd7bbb02bf62f.tar.bz2
Put temporary stuff in a scratch directory.
Diffstat (limited to 'interpreter.py')
-rwxr-xr-xinterpreter.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/interpreter.py b/interpreter.py
index e35c203..4d28ce6 100755
--- a/interpreter.py
+++ b/interpreter.py
@@ -66,14 +66,15 @@ class Executable(BuildTarget):
class Interpreter():
- def __init__(self, code):
+ def __init__(self, code, scratch_dir):
self.ast = parser.build_ast(code)
self.sanity_check_ast()
self.project = None
self.compilers = []
self.executables = {}
self.variables = {}
-
+ self.scratch_dir = scratch_dir
+
def get_project(self):
return self.project
@@ -136,7 +137,9 @@ class Interpreter():
raise InvalidCode('Function language() can only be called once (line %d).' % node.lineno())
lang = args[0]
if lang.lower() == 'c':
- self.compilers.append(environment.detect_c_compiler('gcc'))
+ comp = environment.detect_c_compiler('gcc')
+ comp.sanity_check(self.scratch_dir)
+ self.compilers.append(comp)
else:
raise InvalidCode('Tried to use unknown language "%s".' % lang)
@@ -231,5 +234,5 @@ if __name__ == '__main__':
dep = find_dep('gtk+-3.0')
prog.add_dep(dep)
"""
- i = Interpreter(code)
+ i = Interpreter(code, '.')
i.run()