summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-04-07 13:00:17 (GMT)
committerKitware Robot <kwrobot@kitware.com>2017-04-07 13:00:21 (GMT)
commitb8fc447c1df34eeca1d66acd0e17ca743256d6c2 (patch)
tree480135bbfe1410e3d0849e2062364b95112c52c0
parent0ae79e4c9548c25fdfb7184c361875ae6f4c214e (diff)
parent8187b884717db85a4c413f8a32f72dceff8f9b8a (diff)
downloadCMake-b8fc447c1df34eeca1d66acd0e17ca743256d6c2.zip
CMake-b8fc447c1df34eeca1d66acd0e17ca743256d6c2.tar.gz
CMake-b8fc447c1df34eeca1d66acd0e17ca743256d6c2.tar.bz2
Merge topic 'multi-config-no-build-type'
8187b884 Do not initialize CMAKE_BUILD_TYPE on multi-config generators Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !666
-rw-r--r--Modules/CMakeASMInformation.cmake6
-rw-r--r--Modules/CMakeCInformation.cmake6
-rw-r--r--Modules/CMakeCommonLanguageInclude.cmake6
3 files changed, 12 insertions, 6 deletions
diff --git a/Modules/CMakeASMInformation.cmake b/Modules/CMakeASMInformation.cmake
index 01355ff..f7cf900 100644
--- a/Modules/CMakeASMInformation.cmake
+++ b/Modules/CMakeASMInformation.cmake
@@ -75,11 +75,13 @@ set (CMAKE_ASM${ASM_DIALECT}_FLAGS "${CMAKE_ASM${ASM_DIALECT}_FLAGS_INIT}" CACHE
"Flags used by the assembler during all build types.")
if(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
-# default build type is none
- if(NOT CMAKE_NO_BUILD_TYPE)
+ get_property(_GENERATOR_IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
+ # default build type is none
+ if(NOT _GENERATOR_IS_MULTI_CONFIG AND NOT CMAKE_NO_BUILD_TYPE)
set (CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE_INIT} CACHE STRING
"Choose the type of build, options are: None, Debug Release RelWithDebInfo MinSizeRel.")
endif()
+ unset(_GENERATOR_IS_MULTI_CONFIG)
set (CMAKE_ASM${ASM_DIALECT}_FLAGS_DEBUG "${CMAKE_ASM${ASM_DIALECT}_FLAGS_DEBUG_INIT}" CACHE STRING
"Flags used by the assembler during debug builds.")
set (CMAKE_ASM${ASM_DIALECT}_FLAGS_MINSIZEREL "${CMAKE_ASM${ASM_DIALECT}_FLAGS_MINSIZEREL_INIT}" CACHE STRING
diff --git a/Modules/CMakeCInformation.cmake b/Modules/CMakeCInformation.cmake
index 709e316..71aadb4 100644
--- a/Modules/CMakeCInformation.cmake
+++ b/Modules/CMakeCInformation.cmake
@@ -110,11 +110,13 @@ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS_INIT}" CACHE STRING
"Flags used by the compiler during all build types.")
if(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
-# default build type is none
- if(NOT CMAKE_NO_BUILD_TYPE)
+ get_property(_GENERATOR_IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
+ # default build type is none
+ if(NOT _GENERATOR_IS_MULTI_CONFIG AND NOT CMAKE_NO_BUILD_TYPE)
set (CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE_INIT} CACHE STRING
"Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.")
endif()
+ unset(_GENERATOR_IS_MULTI_CONFIG)
set (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG_INIT}" CACHE STRING
"Flags used by the compiler during debug builds.")
set (CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_C_FLAGS_MINSIZEREL_INIT}" CACHE STRING
diff --git a/Modules/CMakeCommonLanguageInclude.cmake b/Modules/CMakeCommonLanguageInclude.cmake
index 418860e..43b5da0 100644
--- a/Modules/CMakeCommonLanguageInclude.cmake
+++ b/Modules/CMakeCommonLanguageInclude.cmake
@@ -17,11 +17,13 @@ foreach(t EXE SHARED MODULE STATIC)
endforeach()
if(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
-# default build type is none
- if(NOT CMAKE_NO_BUILD_TYPE)
+ get_property(_GENERATOR_IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
+ # default build type is none
+ if(NOT _GENERATOR_IS_MULTI_CONFIG AND NOT CMAKE_NO_BUILD_TYPE)
set (CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE_INIT} CACHE STRING
"Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.")
endif()
+ unset(_GENERATOR_IS_MULTI_CONFIG)
set (CMAKE_EXE_LINKER_FLAGS_DEBUG ${CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT} CACHE STRING
"Flags used by the linker during debug builds.")