qt_extract_metatypes

Extracts metatypes from a Qt target and generates an associated metatypes.json file.

该命令在 Qt 6.0 引入。

注意: This command is in technology preview and may change in future releases.

概要

qt_extract_metatypes(target
    [MANUAL_MOC_JSON_FILES json_files...]
    [OUTPUT_FILES variable_name]
)
					

无版本命令 被禁用,使用 qt6_extract_metatypes() 代替。它支持如此命令的一组相同自变量。

描述

Certain operations rely on metatype information being generated and collected on targets. This is typically handled internally by Qt commands, but for scenarios where this is not the case, qt_extract_metatypes() can be called to force the collection of this information for a specific target .

Metatype information is generated for a target's source files in one of the following ways:

  • Automatically by AUTOMOC. The qt_extract_metatypes() command detects when AUTOMOC is enabled on the target and will automatically extract the information it needs.
  • Manually by invoking moc 采用 --output-json option. The project is responsible for keeping track of all the JSON files generated using this method and passing them to qt_extract_metatypes() 采用 MANUAL_MOC_JSON_FILES 选项。

qt_extract_metatypes() produces a target-specific metatypes JSON file which collects all the metatype details from the AUTOMOC and manual moc inputs. It does this by calling moc 采用 --collect-json option. If you need to know where to find the resultant metatypes JSON file (for example, to pass it to another command or to install it), use the OUTPUT_FILES option to provide the name of a variable in which to store its absolute path.