From 24f07d9b71a5302047fa0183318d35fbc74222b4 Mon Sep 17 00:00:00 2001 From: Fredrik Høisæther Rasch Date: Tue, 21 Mar 2017 12:14:58 +0100 Subject: Exchanged debug compilation with verbose command-line argument --- tools/vccexe/vccexe.nim | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'tools/vccexe/vccexe.nim') diff --git a/tools/vccexe/vccexe.nim b/tools/vccexe/vccexe.nim index 6d0908c3b..4dec0db04 100644 --- a/tools/vccexe/vccexe.nim +++ b/tools/vccexe/vccexe.nim @@ -1,10 +1,5 @@ import strutils, strtabs, os, osproc, vcvarsall, vccdiscover -when defined(release): - let vccOptions = {poParentStreams} -else: - let vccOptions = {poEchoCmd, poParentStreams} - const vccversionPrefix = "--vccversion" vcvarsallPrefix = "--vcvarsall" @@ -12,6 +7,7 @@ const platformPrefix = "--platform" sdktypePrefix = "--sdktype" sdkversionPrefix = "--sdkversion" + verbosePrefix = "--verbose" vccversionSepIdx = vccversionPrefix.len vcvarsallSepIdx = vcvarsallPrefix.len @@ -65,6 +61,7 @@ when isMainModule: var platformArg: VccArch var sdkTypeArg: VccPlatformType var sdkVersionArg: string = nil + var verboseArg: bool = false var clArgs: seq[TaintedString] = @[] @@ -83,6 +80,8 @@ when isMainModule: sdkTypeArg = parseEnum[VccPlatformType](wargv.substr(sdktypeSepIdx + 1)) elif wargv.startsWith(sdkversionPrefix): # Check for sdkversion sdkVersionArg = wargv.substr(sdkversionSepIdx + 1) + elif wargv.startsWith(verbosePrefix): + verboseArg = true else: # Regular cl.exe argument -> store for final cl.exe invocation if (wargv.len == 2) and (wargv[1] == '?'): echo HelpText @@ -100,11 +99,15 @@ when isMainModule: if vcvarsallArg.len < 1 and vccversionArg.len < 1: vcvarsallArg = discoverVccVcVarsAllPath() - var vcvars = vccVarsAll(vcvarsallArg, platformArg, sdkTypeArg, sdkVersionArg) + var vcvars = vccVarsAll(vcvarsallArg, platformArg, sdkTypeArg, sdkVersionArg, verboseArg) if vcvars != nil: for vccEnvKey, vccEnvVal in vcvars: putEnv(vccEnvKey, vccEnvVal) + var vccOptions = {poParentStreams} + if verboseArg: + vccOptions.incl poEchoCmd + if commandArg.len < 1: commandArg = "cl.exe" let vccProcess = startProcess( -- cgit 1.4.1-2-gfad0