CMP0131¶
於版本 3.24 中新增。
LINK_LIBRARIES
支援 $<LINK_ONLY:...>
產生器表達式。
CMake 3.23 及更早版本的文件僅說明 $<LINK_ONLY:...>
產生器表達式僅用於 INTERFACE_LINK_LIBRARIES
中。當在 LINK_LIBRARIES
中使用時,即使在收集非連結使用需求(例如 INTERFACE_COMPILE_DEFINITIONS
)時,$<LINK_ONLY:...>
內部保護的內容始終會被使用。
CMake 3.24 及以上版本傾向於支援在 LINK_LIBRARIES
中使用 $<LINK_ONLY:...>
,僅將保護的內容用於連結依賴關係,而非其他使用需求。此政策為尚未更新以考慮此變更的專案提供相容性。
此政策的 OLD
行為是,即使對於非連結使用需求,也使用由 $<LINK_ONLY:...>
保護的 LINK_LIBRARIES
內容。此政策的 NEW
行為是,僅將保護的內容用於連結依賴關係。
此政策於 CMake 版本 3.24 中引入。 可以使用 cmake_policy()
或 cmake_minimum_required()
設定。如果未設定,CMake 將 *不* 發出警告,並使用 OLD
行為。
注意
政策的 OLD
行為 依定義為已棄用
,並可能在未來版本的 CMake 中移除。