aboutsummaryrefslogtreecommitdiff
path: root/interpreter.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2013-01-01 17:21:27 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2013-01-01 17:21:27 +0200
commit650787f3d7d313f4abd63a99a673517f984bf775 (patch)
treefda2dad5d74d2606c73562073e92c6b7e44dfdc1 /interpreter.py
parente271248d075523c4558b4b9d87844510869c50c3 (diff)
downloadmeson-650787f3d7d313f4abd63a99a673517f984bf775.zip
meson-650787f3d7d313f4abd63a99a673517f984bf775.tar.gz
meson-650787f3d7d313f4abd63a99a673517f984bf775.tar.bz2
Can build an executable with several files.
Diffstat (limited to 'interpreter.py')
-rwxr-xr-xinterpreter.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/interpreter.py b/interpreter.py
index 3fafd13..1cd5ad5 100755
--- a/interpreter.py
+++ b/interpreter.py
@@ -141,14 +141,16 @@ class Interpreter():
raise InvalidCode('Tried to use unknown language "%s".' % lang)
def func_executable(self, node, args):
- self.validate_arguments(args, 2, (str, str))
+ for a in args:
+ if not isinstance(a, str):
+ raise InvalidArguments('Line %d: Argument %s is not a string.' % str(a))
name = args[0]
- sources = [args[1]]
+ sources = args[1:]
if name in self.executables:
raise InvalidCode('Line %d, tried to create executable "%s", which already exists.' % (node.lineno(), name))
exe = Executable(name, sources)
self.executables[name] = exe
- print('Creating executable %s with file %s' % (name, sources[0]))
+ print('Creating executable %s with %d files.' % (name, len(sources)))
return exe
def func_find_dep(self, node, args):
@@ -225,7 +227,7 @@ if __name__ == '__main__':
code = """project('myawesomeproject')
message('I can haz text printed out?')
language('c')
- prog = executable('prog', 'prog.c')
+ prog = executable('prog', 'prog.c', 'subfile.c')
dep = find_dep('gtk+-3.0')
prog.add_dep(dep)
"""