[Cmake-commits] CMake branch, next, updated. v3.3.0-rc2-519-g85615c0
Brad King
brad.king at kitware.com
Thu Jun 18 16:34:34 EDT 2015
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via 85615c055a275edbab3c8dfb53f563003ea21841 (commit)
via 078b60f05c9750b79e0efb322fafeddd8450f6c0 (commit)
from 95423594649a7df0fe254c44379b48c32e0183f6 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=85615c055a275edbab3c8dfb53f563003ea21841
commit 85615c055a275edbab3c8dfb53f563003ea21841
Merge: 9542359 078b60f
Author: Brad King <brad.king at kitware.com>
AuthorDate: Thu Jun 18 16:34:34 2015 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Jun 18 16:34:34 2015 -0400
Merge topic 'Embarcadero-ninja-link-pool' into next
078b60f0 Embarcadero: Run at most one linker invocation at a time (#15620)
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=078b60f05c9750b79e0efb322fafeddd8450f6c0
commit 078b60f05c9750b79e0efb322fafeddd8450f6c0
Author: James Johnston <JamesJ at motionview3d.com>
AuthorDate: Thu Jun 18 17:17:38 2015 +0000
Commit: Brad King <brad.king at kitware.com>
CommitDate: Thu Jun 18 16:29:43 2015 -0400
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.
diff --git a/Modules/Platform/Windows-Embarcadero.cmake b/Modules/Platform/Windows-Embarcadero.cmake
index 26b3c0c..58ef3ca 100644
--- a/Modules/Platform/Windows-Embarcadero.cmake
+++ b/Modules/Platform/Windows-Embarcadero.cmake
@@ -74,6 +74,12 @@ set (CMAKE_MODULE_LINKER_FLAGS_INIT ${CMAKE_SHARED_LINKER_FLAGS_INIT})
set (CMAKE_MODULE_LINKER_FLAGS_DEBUG_INIT ${CMAKE_SHARED_LINKER_FLAGS_DEBUG_INIT})
set (CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO_INIT ${CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO_INIT})
+# The Borland link tool does not support multiple concurrent
+# invocations within a single working directory.
+if(NOT DEFINED CMAKE_JOB_POOL_LINK)
+ set(CMAKE_JOB_POOL_LINK BCC32LinkPool)
+ set_property(GLOBAL APPEND PROPERTY JOB_POOLS BCC32LinkPool=1)
+endif()
macro(__embarcadero_language lang)
set(CMAKE_${lang}_COMPILE_OPTIONS_DLL "${_tD}") # Note: This variable is a ';' separated list
-----------------------------------------------------------------------
Summary of changes:
Modules/Platform/Windows-Embarcadero.cmake | 6 ++++++
1 file changed, 6 insertions(+)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list