diff options
Diffstat (limited to 'mesonbuild')
-rw-r--r-- | mesonbuild/compilers.py | 6 | ||||
-rw-r--r-- | mesonbuild/interpreter.py | 7 |
2 files changed, 13 insertions, 0 deletions
diff --git a/mesonbuild/compilers.py b/mesonbuild/compilers.py index 88184cb..450e8a5 100644 --- a/mesonbuild/compilers.py +++ b/mesonbuild/compilers.py @@ -1505,6 +1505,9 @@ class DCompiler(Compiler): def get_soname_args(self, shlib_name, path, soversion): return [] + def get_unittest_flag(self): + return ['-unittest'] + def build_rpath_args(self, build_dir, rpath_paths, install_rpath): # This method is to be used by LDC and DMD. # GDC can deal with the verbatim flags. @@ -1562,6 +1565,9 @@ class GnuDCompiler(DCompiler): def build_rpath_args(self, build_dir, rpath_paths, install_rpath): return build_unix_rpath_args(build_dir, rpath_paths, install_rpath) + def get_unittest_flag(self): + return ['-funittest'] + class LLVMDCompiler(DCompiler): def __init__(self, exelist, version, is_cross): DCompiler.__init__(self, exelist, version, is_cross) diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index 5a6d702..763eb7d 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -597,6 +597,7 @@ class CompilerHolder(InterpreterObject): 'find_library': self.find_library_method, 'has_argument' : self.has_argument_method, 'first_supported_argument' : self.first_supported_argument_method, + 'get_unittest_flag' : self.get_unittest_flag_method, }) def version_method(self, args, kwargs): @@ -650,6 +651,12 @@ class CompilerHolder(InterpreterObject): def get_id_method(self, args, kwargs): return self.compiler.get_id() + def get_unittest_flag_method(self, args, kwargs): + # At time, only D compilers have this feature. + if not getattr(self.compiler, "get_unittest_flag", None): + return '' + return self.compiler.get_unittest_flag() + def has_member_method(self, args, kwargs): if len(args) != 2: raise InterpreterException('Has_member takes exactly two arguments.') |