CMP0071¶
3.10 版本新增。
让 AUTOMOC 和 AUTOUIC 处理 GENERATED 文件。
从版本 3.10 开始,CMake 处理 常规 和 GENERATED 源代码文件,用于 AUTOMOC 和 AUTOUIC。在较早的 CMake 版本中,仅处理 常规 源代码文件。 GENERATED 源代码文件会被静默忽略。
此策略影响 GENERATED 源代码文件在 AUTOMOC 和 AUTOUIC 中被处理的方式。
此策略的 OLD 行为是在 GENERATED 源代码文件在 AUTOMOC 和 AUTOUIC 中忽略它们。
此策略的 NEW 行为是像处理常规源代码文件一样,在 GENERATED 源代码文件在 AUTOMOC 和 AUTOUIC 中处理它们。
注意
为了消除 CMP0071 警告,可以通过设置源代码属性 SKIP_AUTOMOC、SKIP_AUTOUIC 或 SKIP_AUTOGEN,将源代码文件从 AUTOMOC 和 AUTOUIC 处理中排除。
跳过源代码示例
# ...
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 中被移除。