aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt9
-rw-r--r--cmake/modules/HandleLLVMOptions.cmake11
2 files changed, 8 insertions, 12 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 17ef03a..f85b6cc 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,15 +22,6 @@ if ( LLVM_USE_FOLDERS )
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
endif()
-if(MSVC AND NOT (${CMAKE_VERSION} VERSION_LESS 2.8.11))
- # set stack reserved size to ~10MB
- # CMake previously automatically set this value for MSVC builds, but the
- # behavior was changed in CMake 2.8.11 (Issue 12437) to use the MSVC default
- # value (1 MB) which is not enough for us in tasks such as parsing recursive
- # C++ templates in Clang.
- set(CMAKE_CXX_STACK_SIZE "10000000")
-endif()
-
include(VersionFromVCS)
option(LLVM_APPEND_VC_REV
diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake
index 4063429..7a45559 100644
--- a/cmake/modules/HandleLLVMOptions.cmake
+++ b/cmake/modules/HandleLLVMOptions.cmake
@@ -153,9 +153,14 @@ endif()
if( MSVC )
include(ChooseMSVCCRT)
- # Visual C++ default stack size is 1MB. This is not enough for clang to
- # instantiate templates up to the default maximum depth allowed, 256.
- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -STACK:2097152")
+ if( NOT (${CMAKE_VERSION} VERSION_LESS 2.8.11) )
+ # set stack reserved size to ~10MB
+ # CMake previously automatically set this value for MSVC builds, but the
+ # behavior was changed in CMake 2.8.11 (Issue 12437) to use the MSVC default
+ # value (1 MB) which is not enough for us in tasks such as parsing recursive
+ # C++ templates in Clang.
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /STACK:10000000")
+ endif()
if( MSVC10 )
# MSVC 10 will complain about headers in the STL not being exported, but