CMP0071

3.10 版本新增。

AUTOMOCAUTOUIC 处理 GENERATED 文件。

从 3.10 版本开始,CMake 在 AUTOMOCAUTOUIC 中处理 **常规** 和 GENERATED 源文件。在早期 CMake 版本中,只处理 **常规** 源文件。GENERATED 源文件会被静默忽略。

此策略会影响 AUTOMOCAUTOUIC 中被 GENERATED 的源文件如何被处理。

此策略的 OLD 行为是 GENERATED 源文件在 AUTOMOCAUTOUIC 中被忽略。

此策略的 NEW 行为是 GENERATED 源文件在 AUTOMOCAUTOUIC 中被像常规源文件一样处理。

注意

为了消除 `CMP0071` 警告,可以通过设置源文件属性 SKIP_AUTOMOCSKIP_AUTOUICSKIP_AUTOGEN 来将源文件从 AUTOMOCAUTOUIC 处理中排除。

源文件跳过示例

# ...
set_property(SOURCE /path/to/file1.h PROPERTY SKIP_AUTOMOC ON)
set_property(SOURCE /path/to/file2.h PROPERTY SKIP_AUTOUIC ON)
set_property(SOURCE /path/to/file3.h PROPERTY SKIP_AUTOGEN ON)
# ...

此策略在 CMake 版本 3.10 中引入。可以通过 cmake_policy()cmake_minimum_required() 设置。如果未设置,CMake 会发出警告并使用 OLD 行为。

注意

根据定义,策略的 OLD 行为是 已弃用,并可能在未来的 CMake 版本中被移除。