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 版本中移除。