aboutsummaryrefslogtreecommitdiff
path: root/backends.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2014-03-20 00:24:46 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2014-03-20 00:24:46 +0200
commit94ab24cda7430d107430034b04694ea63e945a74 (patch)
tree0651f09e1bf366af76bedfe41f04dd7b8bdf9049 /backends.py
parent9acc769958a113f7e59e90ab66ee9f8f262fd43b (diff)
downloadmeson-94ab24cda7430d107430034b04694ea63e945a74.zip
meson-94ab24cda7430d107430034b04694ea63e945a74.tar.gz
meson-94ab24cda7430d107430034b04694ea63e945a74.tar.bz2
Grab and use extra flags.
Diffstat (limited to 'backends.py')
-rw-r--r--backends.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/backends.py b/backends.py
index fd00fec..7ef805f 100644
--- a/backends.py
+++ b/backends.py
@@ -1358,6 +1358,18 @@ class Vs2010Backend(Backend):
opt = ET.SubElement(clconf, 'Optimization')
opt.text = 'disabled'
inc_dirs = [proj_to_src_dir, self.get_target_private_dir(target)]
+ extra_args = []
+ # SUCKS, VS can not handle per-language type flags, so just use
+ # them all.
+ for l in self.build.global_args.values():
+ for a in l:
+ extra_args.append(a)
+ for l in target.extra_args.values():
+ for a in l:
+ extra_args.append(a)
+ if len(extra_args) > 0:
+ extra_args.append('%(AdditionalOptions)')
+ ET.SubElement(clconf, "AdditionalOptions").text = ' '.join(extra_args)
for d in target.include_dirs:
for i in d.incdirs:
curdir = os.path.join(d.curdir, i)