CMP0130¶
在 3.24 版本中添加。
while()
诊断条件求值错误。
CMake 3.23 及更早版本会意外地容忍在求值传递给 while()
命令的条件时遇到的错误(但不会容忍 if()
命令)。例如,以下代码
set(paren "(")
while(${paren})
endwhile()
在条件求值时创建了不匹配的括号。
CMake 3.24 及更高版本倾向于诊断此类错误。此策略为尚未更新以修复其条件错误的项目的提供了兼容性。
此策略的 OLD
行为是忽略 while()
条件中的错误。此策略的 NEW
行为是诊断 while()
条件中的错误。
此策略是在 CMake 版本 3.24 中引入的。它可以由 cmake_policy()
或 cmake_minimum_required()
设置。如果未设置,CMake 会发出警告并使用 OLD
行为。
注意
OLD
行为的策略是 按定义弃用
,并且可能会在未来的 CMake 版本中移除。