CMP0051¶
於版本 3.1 加入。
在 SOURCES 目標屬性中列出 TARGET_OBJECTS
。
CMake 3.0 及更早版本在返回 SOURCES
目標屬性時,不會包含 TARGET_OBJECTS
產生器 表達式
。
設定時的 CMake 程式碼無法處理產生器表達式。如果在設定時使用 SOURCES
目標屬性,可能需要先使用 string(GENEX_STRIP)
命令移除產生器表達式。產生時的 CMake 程式碼,例如 file(GENERATE)
,則可以直接處理內容而無需剝離。
此政策的 OLD
行為是從 SOURCES
目標屬性中省略 TARGET_OBJECTS
表達式。此政策的 NEW
行為是在輸出中包含 TARGET_OBJECTS
表達式。
此政策在 CMake 版本 3.1 中引入。它可以通過 cmake_policy()
或 cmake_minimum_required()
進行設定。如果未設定,CMake 會發出警告,並使用 OLD
行為。
注意
政策的 OLD
行為依據定義 已被棄用
,並可能在未來的 CMake 版本中移除。