在 CMake 中将编译器选项设置为默认值

Set compiler option to default In CMake

如何在我的 CMake 文件中将 "Basic Runtime Checks" 设置为 "Default"?

在 CMake 中使用以下行,我可以在发布模式下将其设置为 RTC,但我真正需要的是将其设置为默认值。

set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /RTCs")

我找到了解决方案。

使用宏删除当前编译器选项。

macro(RemoveDebugCXXFlag flag)
    string(REPLACE "${flag}" "" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
endmacro()

macro(RemoveReleaseCXXFlag flag)
    string(REPLACE "${flag}" "" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
endmacro()

message(${CMAKE_CXX_FLAGS_DEBUG}) # Print Debug Flags Before Change
RemoveDebugCXXFlag("/RTC1")

message(${CMAKE_CXX_FLAGS_DEBUG}) # Print Debug Flags After Change

message(${CMAKE_CXX_FLAGS_RELEASE}) # Print Release Flags Before Change
RemoveReleaseCXXFlag("/RTC1")
message(${CMAKE_CXX_FLAGS_RELEASE}) # Print Release Flags After Change

此致