From ce1cadd35a26bd44879675581d8e70b00ff8e0fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= Date: Thu, 1 Apr 2021 20:14:06 +0700 Subject: [PATCH] Tests/ConfigSources: fix for non main stream CMAKE_BUILD_TYPE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - None is a valid CMAKE_BUILD_TYPE - Most of distros uses None as CMAKE_BUILD_TYPE - When CMAKE_BUILD_TYPE=None, main_other.cpp will be compiled and linked into final executable, this program requires some symbols only exist when CUSTOM_CFG_OTHER is defined. - And CMake also allows other CMAKE_BUILD_TYPE, too, CMake documentation specificaly mentions funny CMAKE_BUILD_TYPE like ReLeAsE [1] Let's define them when non main stream like None is specified as CMAKE_BUILD_TYPE. [1]: https://cmake.org/cmake/help/v3.20/variable/CMAKE_BUILD_TYPE.html --- Tests/ConfigSources/CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git Tests/ConfigSources/CMakeLists.txt Tests/ConfigSources/CMakeLists.txt index a3d98f685f..f83759ca10 100644 --- a/Tests/ConfigSources/CMakeLists.txt +++ b/Tests/ConfigSources/CMakeLists.txt @@ -74,10 +74,10 @@ add_custom_command(APPEND VERBATIM ) foreach(n RANGE 1 5) - set_property(SOURCE custom${n}_Debug.cpp PROPERTY COMPILE_DEFINITIONS CUSTOM_CFG_DEBUG) - foreach(other Release RelWithDebInfo MinSizeRel) + foreach(other ${CMAKE_BUILD_TYPE} Release RelWithDebInfo MinSizeRel) set_property(SOURCE custom${n}_${other}.cpp PROPERTY COMPILE_DEFINITIONS CUSTOM_CFG_OTHER) endforeach() + set_property(SOURCE custom${n}_Debug.cpp PROPERTY COMPILE_DEFINITIONS CUSTOM_CFG_DEBUG) endforeach() add_library(Custom STATIC custom1_$.cpp