AUTOMOC_MOC_OPTIONS¶
在使用 AUTOMOC 时,为 moc 指定的附加选项
此属性仅在目标上设置了 AUTOMOC 属性为 ON 时使用。在这种情况下,它包含在构建过程中执行 moc 时使用的附加命令行选项,即它等同于 qt4_wrap_cpp() 宏的可选 OPTIONS 参数。
此属性通过 CMAKE_AUTOMOC_MOC_OPTIONS 变量的值进行初始化,如果该变量在创建目标时已设置,否则为字符串为空。
有关将 CMake 与 Qt 结合使用的更多信息,请参阅 cmake-qt(7) 手册。
示例¶
在此示例中,在为 object.cpp 生成 moc 文件时,moc 工具将使用 -D_EXTRA_DEFINE 选项进行调用。
CMakeLists.txtadd_executable(mocOptions object.cpp main.cpp) set_property(TARGET mocOptions PROPERTY AUTOMOC ON) target_compile_options(mocOptions PRIVATE "-D_EXTRA_DEFINE") set_property(TARGET mocOptions PROPERTY AUTOMOC_MOC_OPTIONS "-D_EXTRA_DEFINE") target_link_libraries(mocOptions Qt6::Core)
object.hpp#ifndef Object_HPP #define Object_HPP #include <QObject> #ifdef _EXTRA_DEFINE class Object : public QObject { Q_OBJECT public: Object(); }; #endif #endif