diff options
author | deansher <deansherthompson@gmail.com> | 2019-01-28 08:12:24 -0500 |
---|---|---|
committer | deansher <deansherthompson@gmail.com> | 2019-01-28 08:12:24 -0500 |
commit | d60f8ab99181ea18cc534728ba4d0470c0ca1bce (patch) | |
tree | 64cef5bc336a6d0038dcb47a4e3b1cd30ed434d7 /tools/vccexe/vccexe.nim | |
parent | a6de0274ee768d135bab280d2b2700a0bb475300 (diff) | |
parent | 9402c82e803d133e0b845a7c5c79c261781e7d8d (diff) | |
download | Nim-d60f8ab99181ea18cc534728ba4d0470c0ca1bce.tar.gz |
Merge remote-tracking branch 'upstream/devel' into devel
Diffstat (limited to 'tools/vccexe/vccexe.nim')
-rw-r--r-- | tools/vccexe/vccexe.nim | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/tools/vccexe/vccexe.nim b/tools/vccexe/vccexe.nim index f794885f2..28d9e4173 100644 --- a/tools/vccexe/vccexe.nim +++ b/tools/vccexe/vccexe.nim @@ -46,6 +46,8 @@ const sdktypeSepIdx = sdktypePrefix.len sdkversionSepIdx = sdkversionPrefix.len + vcvarsallDefaultPath = "vcvarsall.bat" + helpText = """ +-----------------------------------------------------------------+ | Microsoft C/C++ compiler wrapper for Nim | @@ -158,6 +160,10 @@ when isMainModule: vccversionValue = vccUndefined vcvarsallArg = discoverVccVcVarsAllPath() + if vcvarsallArg == "": + # Assume that default executable is in current directory or in PATH + vcvarsallArg = findExe(vcvarsallDefaultPath) + if printPathArg: var head = $vccversionValue if head.len < 1: @@ -180,9 +186,16 @@ when isMainModule: if not noCommandArg: # Run VCC command with the VCC process environment - let vccProcess = startProcess( - commandArg, - args = clArgs, - options = vccOptions - ) - quit vccProcess.waitForExit() + try: + let vccProcess = startProcess( + commandArg, + args = clArgs, + options = vccOptions + ) + quit vccProcess.waitForExit() + except: + if vcvarsallArg.len != 0: + echo "Hint: using " & vcvarsallArg + else: + echo "Hint: vcvarsall.bat was not found" + raise |