aboutsummaryrefslogtreecommitdiff
path: root/interpreter.py
diff options
context:
space:
mode:
Diffstat (limited to 'interpreter.py')
-rw-r--r--interpreter.py17
1 files changed, 9 insertions, 8 deletions
diff --git a/interpreter.py b/interpreter.py
index 6fe0212..cacfe05 100644
--- a/interpreter.py
+++ b/interpreter.py
@@ -290,18 +290,17 @@ class GeneratorHolder(InterpreterObject):
self.methods.update({'process' : self.process_method})
def process_method(self, args, kwargs):
- if len(kwargs) > 0:
- raise InvalidArguments('Process does not take keyword arguments.')
check_stringlist(args)
- gl = GeneratedListHolder(self)
+ extras = mesonlib.stringlistify(kwargs.get('extra_args', []))
+ gl = GeneratedListHolder(self, extras)
[gl.add_file(os.path.join(self.interpreter.subdir, a)) for a in args]
return gl
class GeneratedListHolder(InterpreterObject):
- def __init__(self, arg1):
+ def __init__(self, arg1, extra_args=[]):
super().__init__()
if isinstance(arg1, GeneratorHolder):
- self.held_object = build.GeneratedList(arg1.held_object)
+ self.held_object = build.GeneratedList(arg1.held_object, extra_args)
else:
self.held_object = arg1
@@ -872,7 +871,7 @@ class MesonMain(InterpreterObject):
self.build.dep_manifest_name = args[0]
def project_version_method(self, args, kwargs):
- return self.build.dep_manifest[self.interpreter.active_projectname]
+ return self.build.dep_manifest[self.interpreter.active_projectname]['version']
class Interpreter():
@@ -1378,7 +1377,9 @@ class Interpreter():
self.parse_default_options(kwargs['default_options'])
self.active_projectname = args[0]
self.project_version = kwargs.get('version', 'undefined')
- self.build.dep_manifest[args[0]] = self.project_version
+ license = mesonlib.stringlistify(kwargs.get('license', 'unknown'))
+ self.build.dep_manifest[args[0]] = {'version': self.project_version,
+ 'license': license}
if self.subproject in self.build.projects:
raise InvalidCode('Second call to project().')
if not self.is_subproject() and 'subproject_dir' in kwargs:
@@ -1395,7 +1396,7 @@ class Interpreter():
langs = self.coredata.compilers.keys()
if 'vala' in langs:
if not 'c' in langs:
- raise InterpreterException('Compiling Vala requires a C compiler')
+ raise InterpreterException('Compiling Vala requires C. Add C to your project languages and rerun Meson.')
@noKwargs
@stringArgs