TestCXXAcceptsFlag¶
自 3.0 版本弃用: 此模块不应再使用。它已被 CheckCXXCompilerFlag
模块取代。自 CMake 3.19 起,CheckCompilerFlag
模块也可用于检查多种语言的标志。
此模块提供了一个宏,用于测试 C++ (CXX) 编译器是否支持特定标志。
宏¶
- check_cxx_accepts_flag¶
检查 CXX 编译器是否接受指定的标志
check_cxx_accepts_flag(<flags> <result-variable>)
<标志>
要测试的一个或多个编译器标志。对于多个标志,请以空格分隔字符串提供。
<结果变量>
存储结果的内部缓存变量的名称。如果编译器接受这些标志,则将其设置为布尔真,否则设置为假。
示例¶
检查 C++ 编译器是否支持特定标志
include(TestCXXAcceptsFlag)
check_cxx_accepts_flag("-fno-common -fstack-clash-protection" HAVE_FLAGS)
迁移到 CheckCompilerFlag
模块
include(CheckCompilerFlag)
check_compiler_flag(CXX "-fno-common;-fstack-clash-protection" HAVE_FLAGS)