CMP0160

在版本 3.29 中添加。

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

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

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

此策略的 OLD 行为是仅对 MANUALLY_ADDED_DEPENDENCIESNAMETYPE 属性报错。此策略的 NEW 行为是对文档中说明的所有只读目标属性都报错。

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

注意

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