summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArjen Verweij <VerweijA@tass-safe.com>2010-08-10 13:30:03 (GMT)
committerBrad King <brad.king@kitware.com>2010-08-10 13:34:12 (GMT)
commit4b1e5f0152ed681309f831202abd84705d9487e9 (patch)
treed86281412482203ea2f0dec9939f6f4161fa8451
parent43083365526c394fb869d469cda4974b0a562100 (diff)
downloadCMake-4b1e5f0152ed681309f831202abd84705d9487e9.zip
CMake-4b1e5f0152ed681309f831202abd84705d9487e9.tar.gz
CMake-4b1e5f0152ed681309f831202abd84705d9487e9.tar.bz2
Pass objects to Intel linker using a response file
Use response files for C and CXX languages with the Intel compiler on Windows. We already used them for Fortran. This enables creation of libraries and executables with a very large number of object files.
-rw-r--r--Modules/Platform/Windows-icl.cmake4
1 files changed, 4 insertions, 0 deletions
diff --git a/Modules/Platform/Windows-icl.cmake b/Modules/Platform/Windows-icl.cmake
index c717c7c..9088cc7 100644
--- a/Modules/Platform/Windows-icl.cmake
+++ b/Modules/Platform/Windows-icl.cmake
@@ -6,6 +6,10 @@ IF(CMAKE_VERBOSE_MAKEFILE)
ELSE(CMAKE_VERBOSE_MAKEFILE)
SET(CMAKE_CL_NOLOGO "/nologo")
ENDIF(CMAKE_VERBOSE_MAKEFILE)
+
+SET(CMAKE_C_USE_RESPONSE_FILE_FOR_OBJECTS 1)
+SET(CMAKE_CXX_USE_RESPONSE_FILE_FOR_OBJECTS 1)
+
# create a shared C++ library
SET(CMAKE_CXX_CREATE_SHARED_LIBRARY
"xilink ${CMAKE_CL_NOLOGO} ${CMAKE_START_TEMP_FILE} /out:<TARGET> /implib:<TARGET_IMPLIB> /pdb:<TARGET_PDB> /dll <LINK_FLAGS> <OBJECTS> <LINK_LIBRARIES> ${CMAKE_END_TEMP_FILE}")