CMP0161

在 3.29 版本中新增。

CPACK_PRODUCTBUILD_DOMAINS 變數預設為 true。

在 CMake 3.29 之前,CPACK_PRODUCTBUILD_DOMAINS 變數預設為未設定。當使用 CPack productbuild 產生器時,這會停用在 productbuild Distribution XML 中使用 domains 屬性,並改為使用 auth 屬性。這些屬性控制 productbuild 套件允許安裝的位置。但是,auth 屬性已被 Apple 棄用,因此專案應遷移到改用 domains

CMake 3.29 及更高版本傾向於為 CPACK_PRODUCTBUILD_DOMAINS 使用預設值 true,這表示除非專案明確將 CPACK_PRODUCTBUILD_DOMAINS 設定為 false,否則預設會使用 domains。此原則提供與啟用 CPack productbuild 產生器,但未明確設定 CPACK_PRODUCTBUILD_DOMAINS 的專案的相容性。

此原則的 OLD 行為是如果未設定,則保持 CPACK_PRODUCTBUILD_DOMAINS 未設定。此原則的 NEW 行為是為 CPACK_PRODUCTBUILD_DOMAINS 使用預設值 true。

此原則在 CMake 3.29 版本中引入。可以使用 cmake_policy()cmake_minimum_required() 進行設定。如果未設定,CMake 會發出警告,並使用 OLD 行為。

請注意,只有在 CPACK_BINARY_PRODUCTBUILD 變數設定為 true 且專案正在為 Apple 平台建置時,才會發出警告。

注意

原則的 OLD 行為 依定義已棄用,並可能在未來版本的 CMake 中移除。