summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2015-05-06 07:52:08 (GMT)
committerKevin Smith <kevin.smith@isode.com>2015-05-26 16:40:07 (GMT)
commit4e0bc5d233613732b550146fb11570945f12890c (patch)
tree54d6de2893de229be55038e1ec611ac0451a7b34 /BuildTools
parent0c5d33fdc77226ea1a447211ea4b2198197ec715 (diff)
downloadswift-4e0bc5d233613732b550146fb11570945f12890c.zip
swift-4e0bc5d233613732b550146fb11570945f12890c.tar.bz2
Have cl.exe write debug info to independent files for reliable parallel builds
By default cl.exe writes debug info to a static file name resulting in all cl.exe trying to write to the same file when using parallel builds. This leads to race conditions and can have parallel builds fail. This only takes effect if parallel builds are made by scons. Test-Information: Tested with VS 2013. Change-Id: I8ea7e9370f5b149ded608e4c6f5e66a3fc6301c4
Diffstat (limited to 'BuildTools')
-rw-r--r--BuildTools/SCons/SConscript.boot3
1 files changed, 3 insertions, 0 deletions
diff --git a/BuildTools/SCons/SConscript.boot b/BuildTools/SCons/SConscript.boot
index dd462de..ff24eeb 100644
--- a/BuildTools/SCons/SConscript.boot
+++ b/BuildTools/SCons/SConscript.boot
@@ -221,6 +221,9 @@ if env["debug"] :
if env["PLATFORM"] == "win32" :
env.Append(CCFLAGS = ["/Zi"])
env.Append(LINKFLAGS = ["/DEBUG"])
+ if GetOption("num_jobs") > 1 :
+ env["CCPDBFLAGS"] = '/Fd${TARGET}.pdb'
+ env["PDB"] = '${TARGET.base}.pdb'
if env["set_iterator_debug_level"] :
env.Append(CPPDEFINES = ["_ITERATOR_DEBUG_LEVEL=0"])
if env["optimize"] :