Skip to content

Commit 1ddf4ab

Browse files
authored
Stop using CMAKE_BUILD_TYPE in CMake scripts (#628)
CMake scripts should use `$<CONFIG>` generator expressions, instead of checking `${CMAKE_BUILD_TYPE}`. Multi-config generators like Visual Studio ignore `CMAKE_BUILD_TYPE`, so many users (and IDEs like VSCode with the CMake Tools plugin) don't bother setting `CMAKE_BUILD_TYPE`. See: https://cmake.org/cmake/help/v3.22/manual/cmake-buildsystem.7.html#build-configurations
1 parent c0f552c commit 1ddf4ab

File tree

8 files changed

+8
-25
lines changed

8 files changed

+8
-25
lines changed

devicedefender/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,7 @@ else ()
5858
target_compile_options(IotDeviceDefender-cpp PRIVATE -Wall -Wno-long-long -pedantic -Werror)
5959
endif ()
6060

61-
if (CMAKE_BUILD_TYPE STREQUAL "" OR CMAKE_BUILD_TYPE MATCHES Debug)
62-
target_compile_definitions(IotDeviceDefender-cpp PRIVATE "-DDEBUG_BUILD")
63-
endif ()
61+
target_compile_definitions(IotDeviceDefender-cpp PRIVATE $<$<CONFIG:Debug>:DEBUG_BUILD>)
6462

6563
if (BUILD_SHARED_LIBS)
6664
target_compile_definitions(IotDeviceDefender-cpp PUBLIC "-DAWS_IOTDEVICEDEFENDER_USE_IMPORT_EXPORT")

discovery/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,7 @@ else ()
5757
target_compile_options(Discovery-cpp PRIVATE -Wall -Wno-long-long -pedantic -Werror)
5858
endif ()
5959

60-
if (CMAKE_BUILD_TYPE STREQUAL "" OR CMAKE_BUILD_TYPE MATCHES Debug)
61-
target_compile_definitions(Discovery-cpp PRIVATE "-DDEBUG_BUILD")
62-
endif ()
60+
target_compile_definitions(Discovery-cpp PRIVATE $<$<CONFIG:Debug>:DEBUG_BUILD>)
6361

6462
if (BUILD_SHARED_LIBS)
6563
target_compile_definitions(Discovery-cpp PUBLIC "-DAWS_DISCOVERY_USE_IMPORT_EXPORT")

eventstream_rpc/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,7 @@ else ()
5757
target_compile_options(EventstreamRpc-cpp PRIVATE -Wall -Wno-long-long -pedantic -Werror)
5858
endif ()
5959

60-
if (CMAKE_BUILD_TYPE STREQUAL "" OR CMAKE_BUILD_TYPE MATCHES Debug)
61-
target_compile_definitions(EventstreamRpc-cpp PRIVATE "-DDEBUG_BUILD")
62-
endif ()
60+
target_compile_definitions(EventstreamRpc-cpp PRIVATE $<$<CONFIG:Debug>:DEBUG_BUILD>)
6361

6462
if (BUILD_SHARED_LIBS)
6563
target_compile_definitions(EventstreamRpc-cpp PUBLIC "-DAWS_EVENTSTREAMRPC_USE_IMPORT_EXPORT")

greengrass_ipc/CMakeLists.txt

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,7 @@ if (MSVC)
6464
target_compile_options(GreengrassIpc-cpp PRIVATE /bigobj)
6565
endif ()
6666

67-
68-
if (CMAKE_BUILD_TYPE STREQUAL "" OR CMAKE_BUILD_TYPE MATCHES Debug)
69-
target_compile_definitions(GreengrassIpc-cpp PRIVATE "-DDEBUG_BUILD")
70-
endif ()
67+
target_compile_definitions(GreengrassIpc-cpp PRIVATE $<$<CONFIG:Debug>:DEBUG_BUILD>)
7168

7269
if (BUILD_SHARED_LIBS)
7370
target_compile_definitions(GreengrassIpc-cpp PUBLIC "-DAWS_GREENGRASSIPC_USE_IMPORT_EXPORT")

identity/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,7 @@ else ()
5757
target_compile_options(IotIdentity-cpp PRIVATE -Wall -Wno-long-long -pedantic -Werror)
5858
endif ()
5959

60-
if (CMAKE_BUILD_TYPE STREQUAL "" OR CMAKE_BUILD_TYPE MATCHES Debug)
61-
target_compile_definitions(IotIdentity-cpp PRIVATE "-DDEBUG_BUILD")
62-
endif ()
60+
target_compile_definitions(IotIdentity-cpp PRIVATE $<$<CONFIG:Debug>:DEBUG_BUILD>)
6361

6462
if (BUILD_SHARED_LIBS)
6563
target_compile_definitions(IotIdentity-cpp PUBLIC "-DAWS_IOTIDENTITY_USE_IMPORT_EXPORT")

iotdevicecommon/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,7 @@ else ()
5959
target_compile_options(IotDeviceCommon-cpp PRIVATE -Wall -Wno-long-long -pedantic -Werror)
6060
endif ()
6161

62-
if (CMAKE_BUILD_TYPE STREQUAL "" OR CMAKE_BUILD_TYPE MATCHES Debug)
63-
target_compile_definitions(IotDeviceCommon-cpp PRIVATE "-DDEBUG_BUILD")
64-
endif ()
62+
target_compile_definitions(IotDeviceCommon-cpp PRIVATE $<$<CONFIG:Debug>:DEBUG_BUILD>)
6563

6664
if (BUILD_SHARED_LIBS)
6765
target_compile_definitions(IotDeviceCommon-cpp PUBLIC "-DAWS_IOTDEVICECOMMON_USE_IMPORT_EXPORT")

secure_tunneling/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,7 @@ else ()
5757
target_compile_options(IotSecureTunneling-cpp PRIVATE -Wall -Wno-long-long -pedantic -Werror)
5858
endif ()
5959

60-
if (CMAKE_BUILD_TYPE STREQUAL "" OR CMAKE_BUILD_TYPE MATCHES Debug)
61-
target_compile_definitions(IotSecureTunneling-cpp PRIVATE "-DDEBUG_BUILD")
62-
endif ()
60+
target_compile_definitions(IotSecureTunneling-cpp PRIVATE $<$<CONFIG:Debug>:DEBUG_BUILD>)
6361

6462
if (BUILD_SHARED_LIBS)
6563
target_compile_definitions(IotSecureTunneling-cpp PUBLIC "-DAWS_IOTSECURETUNNELING_USE_IMPORT_EXPORT")

shadow/CMakeLists.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,7 @@ else ()
5757
target_compile_options(IotShadow-cpp PRIVATE -Wall -Wno-long-long -pedantic -Werror)
5858
endif ()
5959

60-
if (CMAKE_BUILD_TYPE STREQUAL "" OR CMAKE_BUILD_TYPE MATCHES Debug)
61-
target_compile_definitions(IotShadow-cpp PRIVATE "-DDEBUG_BUILD")
62-
endif ()
60+
target_compile_definitions(IotShadow-cpp PRIVATE $<$<CONFIG:Debug>:DEBUG_BUILD>)
6361

6462
if (BUILD_SHARED_LIBS)
6563
target_compile_definitions(IotShadow-cpp PUBLIC "-DAWS_IOTSHADOW_USE_IMPORT_EXPORT")

0 commit comments

Comments
 (0)