From 8daa5b033c4d7447a36b3f1fb1a119dd8f72b381 Mon Sep 17 00:00:00 2001 From: MorpheusDev Date: Mon, 27 Oct 2014 16:33:16 +0100 Subject: Multiple 'cmdargs' feature added to allow a per variant cmdargs, to be able to insert different parameters between Debug and Release. --- src/engine/SCons/Tool/msvs.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/engine/SCons/Tool/msvs.py b/src/engine/SCons/Tool/msvs.py index c9f1f2a..f54e552 100644 --- a/src/engine/SCons/Tool/msvs.py +++ b/src/engine/SCons/Tool/msvs.py @@ -289,9 +289,17 @@ class _DSPGenerator(object): runfile.append(s) self.sconscript = env['MSVSSCONSCRIPT'] - - cmdargs = env.get('cmdargs', '') - + + if 'cmdargs' not in env or env['cmdargs'] == None: + cmdargs = [''] * len(variants) + elif SCons.Util.is_String(env['cmdargs']): + outdir = [env['cmdargs']] * len(variants) + elif SCons.Util.is_List(env['cmdargs']): + if len(env['cmdargs']) != len(variants): + raise SCons.Errors.InternalError("Sizes of 'cmdargs' and 'variant' lists must be the same.") + else: + cmdargs = env['cmdargs'] + self.env = env if 'name' in self.env: @@ -354,7 +362,7 @@ class _DSPGenerator(object): print "Adding '" + self.name + ' - ' + config.variant + '|' + config.platform + "' to '" + str(dspfile) + "'" for i in range(len(variants)): - AddConfig(self, variants[i], buildtarget[i], outdir[i], runfile[i], cmdargs) + AddConfig(self, variants[i], buildtarget[i], outdir[i], runfile[i], cmdargs[i]) self.platforms = [] for key in self.configs.keys(): -- cgit v0.12