aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2016-04-03 16:44:18 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2016-04-03 16:44:18 +0300
commit6291fb4056de513a64ad52b65e9f4166323d35f3 (patch)
tree3e1328a1eb3045e1097db2818a6701c85ddcd4ae
parent3415c3a693d663de40a76b8ee962ab145d60498a (diff)
downloadmeson-6291fb4056de513a64ad52b65e9f4166323d35f3.zip
meson-6291fb4056de513a64ad52b65e9f4166323d35f3.tar.gz
meson-6291fb4056de513a64ad52b65e9f4166323d35f3.tar.bz2
Put buildtype flags to vala compiles.
-rw-r--r--mesonbuild/backend/ninjabackend.py5
-rw-r--r--mesonbuild/compilers.py7
-rw-r--r--mesonbuild/environment.py8
3 files changed, 14 insertions, 6 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index dfd792b..ef40c4e 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -184,7 +184,9 @@ int dummy;
self.generate_tests(outfile)
outfile.write('# Install rules\n\n')
self.generate_install(outfile)
- if self.environment.coredata.base_options.get('b_coverage', False):
+ if 'b_coverage' in self.environment.coredata.base_options and\
+ self.environment.coredata.base_options['b_coverage'].value:
+ print(bool(self.environment.coredata.base_options.get('b_coverage', False)))
outfile.write('# Coverage rules\n\n')
self.generate_coverage_rules(outfile)
outfile.write('# Suffix\n\n')
@@ -813,6 +815,7 @@ int dummy;
outputs = [vapiname]
args = []
args += self.build.get_global_args(compiler)
+ args += compiler.get_buildtype_args(self.environment.coredata.get_builtin_option('buildtype'))
args += ['-d', self.get_target_private_dir(target)]
args += ['-C']#, '-o', cname]
if not isinstance(target, build.Executable):
diff --git a/mesonbuild/compilers.py b/mesonbuild/compilers.py
index fc4498c..ac5cdf5 100644
--- a/mesonbuild/compilers.py
+++ b/mesonbuild/compilers.py
@@ -126,7 +126,7 @@ base_options = {
'off'),
'b_coverage': coredata.UserBooleanOption('b_coverage',
'Enable coverage tracking.',
- True),
+ False),
}
def sanitizer_compile_args(value):
@@ -1044,6 +1044,11 @@ class ValaCompiler(Compiler):
suffix = filename.split('.')[-1]
return suffix in ('vala', 'vapi')
+ def get_buildtype_args(self, buildtype):
+ if buildtype == 'debug' or buildtype == 'debugoptimized':
+ return ['--debug']
+ return []
+
class RustCompiler(Compiler):
def __init__(self, exelist, version):
super().__init__(exelist, version)
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index e8fabc3..6d217f2 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -251,11 +251,11 @@ class Environment():
for compiler in compilers:
for arg in ['--version', '-V']:
try:
- p = subprocess.Popen([compiler] + [arg],
- stdout=subprocess.PIPE,
- stderr=subprocess.PIPE)
+ p = subprocess.Popen([compiler] + [arg],
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE)
except OSError:
- continue
+ continue
(out, err) = p.communicate()
out = out.decode(errors='ignore')
err = err.decode(errors='ignore')