CMP0051¶
警告
此策略的 OLD
行为已在 CMake 4.0 版本中移除。必须通过调用 cmake_minimum_required()
或 cmake_policy()
将此策略设置为 NEW
。
版本 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 版本中引入。在 4.0 版本中移除之前,可以通过 cmake_policy()
或 cmake_minimum_required()
设置。如果未设置,CMake 会发出警告并使用 OLD
行为。