CMP0160

在 3.29 版本中添加。

现在尝试设置更多只读目标属性时会报错。

set_target_properties()set_property() 命令旨在对所有只读属性报错。但是,CMake 3.28 及更低版本仅对以下属性执行此操作

此策略强制执行以下目标属性的只读性质

此策略的 OLD 行为是仅对属性 MANUALLY_ADDED_DEPENDENCIES, NAME, 和 TYPE 报错。此策略的 NEW 行为是对所有文档中标记为只读的目标属性报错。

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

注意

策略的 OLD 行为 根据定义已弃用,并可能在未来的 CMake 版本中移除。