From 0c63556286661be83d64739d0a5422cca2d1b95e Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Tue, 20 Oct 2015 20:55:10 +0300 Subject: Extra args also for compiles. Closes #292. --- compilers.py | 3 +++ interpreter.py | 12 ++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/compilers.py b/compilers.py index ee5cc10..78da486 100644 --- a/compilers.py +++ b/compilers.py @@ -156,6 +156,9 @@ class Compiler(): def compiles(self, code): raise EnvironmentException('Language %s does not support compile checks.' % self.language) + def links(self, code): + raise EnvironmentException('Language %s does not support link checks.' % self.language) + def run(self, code): raise EnvironmentException('Language %s does not support run checks.' % self.language) diff --git a/interpreter.py b/interpreter.py index 9d57136..9e8aa7c 100644 --- a/interpreter.py +++ b/interpreter.py @@ -680,11 +680,12 @@ class CompilerHolder(InterpreterObject): if len(args) != 1: raise InterpreterException('compiles method takes exactly one argument.') check_stringlist(args) - string = args[0] + code = args[0] testname = kwargs.get('name', '') if not isinstance(testname, str): raise InterpreterException('Testname argument must be a string.') - result = self.compiler.compiles(string) + args = mesonlib.stringlistify(kwargs.get('args', [])) + result = self.compiler.compiles(code, args) if len(testname) > 0: if result: h = mlog.green('YES') @@ -697,13 +698,12 @@ class CompilerHolder(InterpreterObject): if len(args) != 1: raise InterpreterException('links method takes exactly one argument.') check_stringlist(args) - string = args[0] + code = args[0] testname = kwargs.get('name', '') if not isinstance(testname, str): raise InterpreterException('Testname argument must be a string.') - args = kwargs.get('args', []) - args = mesonlib.stringlistify(args) - result = self.compiler.links(string, args) + args = mesonlib.stringlistify(kwargs.get('args', [])) + result = self.compiler.links(code, args) if len(testname) > 0: if result: h = mlog.green('YES') -- cgit v1.1