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
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
-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"] :