summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorOscar Fuentes <ofv@wanadoo.es>2010-08-05 01:25:48 +0000
committerOscar Fuentes <ofv@wanadoo.es>2010-08-05 01:25:48 +0000
commit02a8f76d58cbc44fbcd55f29d2eccbfac49df794 (patch)
tree53ac0f1e5907a2624c0f1af47a8016d18310e0fc /CMakeLists.txt
parent34fa82f7e82a2845a42d0a2725e70412d06c917b (diff)
downloadllvm-02a8f76d58cbc44fbcd55f29d2eccbfac49df794.tar.gz
llvm-02a8f76d58cbc44fbcd55f29d2eccbfac49df794.tar.bz2
llvm-02a8f76d58cbc44fbcd55f29d2eccbfac49df794.tar.xz
New system for choosing CRT type on MSVC.
Is setted on a per build type basis. This is useful for generators that comprise several build types, i.e. VC++ solutions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110296 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt22
1 files changed, 2 insertions, 20 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 63751d6007..1035201efe 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -217,17 +217,8 @@ if( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT WIN32 )
endif( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT WIN32 )
if( MSVC )
- # List of valid CRTs for MSVC
- set(MSVC_CRT
- MD
- MDd
- MT
- MTd)
-
- set(LLVM_USE_CRT "" CACHE STRING "Specify VC++ CRT to use for debug/release configurations.")
- # Lets the GUI show a drop-down list of possible values, including
- # an empty string as the default:
- set_property(CACHE LLVM_USE_CRT PROPERTY STRINGS "";${MSVC_CRT})
+ include(ChooseMSVCCRT)
+
add_llvm_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS )
add_llvm_definitions( -D_SCL_SECURE_NO_WARNINGS -DCRT_NONSTDC_NO_WARNINGS )
add_llvm_definitions( -D_SCL_SECURE_NO_DEPRECATE )
@@ -237,15 +228,6 @@ if( MSVC )
# Suppress 'new behavior: elements of array 'array' will be default initialized'
add_llvm_definitions( -wd4351 )
- if (NOT ${LLVM_USE_CRT} STREQUAL "")
- list(FIND MSVC_CRT ${LLVM_USE_CRT} idx)
- if (idx LESS 0)
- message(FATAL_ERROR "Invalid value for LLVM_USE_CRT: ${LLVM_USE_CRT}. Valid options are one of: ${MSVC_CRT}")
- endif (idx LESS 0)
- add_llvm_definitions("/${LLVM_USE_CRT}")
- message(STATUS "Using VC++ CRT: ${LLVM_USE_CRT}")
- endif (NOT ${LLVM_USE_CRT} STREQUAL "")
-
# Enable warnings
if (LLVM_ENABLE_WARNINGS)
add_llvm_definitions( /W4 /Wall )