CMP0067

添加于版本 3.8 中。

try_compile() 源文件签名中遵守语言标准。

try_compile() 源文件签名旨在允许调用方检查他们是否能够使用当前工具链编译给定的源文件。为了匹配编译器行为,任何语言标准模式都应该匹配。然而,CMake 3.7 及更低版本没有这么做。CMake 3.8 及更高版本更愿意使用以下变量的值来遵守 CCXX (C++) 和 CUDA 的语言标准设置:

此策略为那些不希望自动使用语言标准设置的项目提供了兼容性。

此策略的 OLD 行为是在生成 try_compile 测试项目时忽略语言标准设置变量。此策略的 NEW 行为是遵守语言标准设置变量。

此策略在 CMake 3.8 版本中引入。它可以通过 cmake_policy()cmake_minimum_required() 设置。如果未设置,CMake 默认不会发出警告,并使用 OLD 行为。

请参阅 CMAKE_POLICY_WARNING_CMP0067 变量的文档,以控制此警告消息。

注意

策略的 OLD 行为 按定义 不推荐 使用,并可能在将来的 CMake 版本中予以删除。