handle case where a register class is specified
[oota-llvm.git] / CMakeLists.txt
index 63751d6007e8b90d31ab86e3b836f369d0a4290f..a6099d17c56a6d9f83ff43fd4f3f1477b74ef932 100644 (file)
@@ -63,7 +63,6 @@ set(LLVM_ALL_TARGETS
   CppBackend
   Mips
   MBlaze
-  MSIL
   MSP430
   PIC16
   PowerPC
@@ -217,17 +216,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 +227,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 )
@@ -379,6 +360,8 @@ add_subdirectory(tools)
 option(LLVM_BUILD_EXAMPLES "Build LLVM example programs." OFF)
 add_subdirectory(examples)
 
+add_subdirectory(cmake/modules)
+
 install(DIRECTORY include/
   DESTINATION include
   FILES_MATCHING