diff options
| author | James Johnston <JamesJ@motionview3d.com> | 2015-06-18 17:17:38 (GMT) |
|---|---|---|
| committer | Brad King <brad.king@kitware.com> | 2015-06-18 20:29:43 (GMT) |
| commit | 078b60f05c9750b79e0efb322fafeddd8450f6c0 (patch) | |
| tree | 9f0269d39750c59ee02f51576a1df03f5273237a /Source/cmparseMSBuildXML.py | |
| parent | e2e6cb7348dfffddb5d93f679fc8c69fffd3d1dc (diff) | |
| download | CMake-078b60f05c9750b79e0efb322fafeddd8450f6c0.zip CMake-078b60f05c9750b79e0efb322fafeddd8450f6c0.tar.gz CMake-078b60f05c9750b79e0efb322fafeddd8450f6c0.tar.bz2 | |
Embarcadero: Run at most one linker invocation at a time (#15620)
At least some versions (e.g. C++ Builder 5) of the bcc32 linker are known to
write temporary files with a constant name to the current directory (e.g.
"turboc.$ln"). (This can be verified by using Process Monitor to watch the
file writes that bcc32 / ilink32 / implib make). This causes problems with
some generators that keep a constant current directory and run concurrent
linkers.
For example, the Ninja generator, by default, always has the current directory
set to the top of the build tree - resulting in conflicts between the linkers
that are simultaneously trying to write to "turboc.$ln". Symptoms include
direct errors regarding the "turboc.$ln" file, or later build steps failing due
to corrupted output from previous links that happened to link "successfully."
This is not a problem for the Borland Makefiles generator which does not
run jobs in parallel. For the Ninja generator, work around this problem
by using a link job pool of size 1.
Diffstat (limited to 'Source/cmparseMSBuildXML.py')
0 files changed, 0 insertions, 0 deletions
