qt_import_plugins

Synopsis

qt_import_plugins(target
                  [INCLUDE plugin ...]
                  [EXCLUDE plugin ...]
                  [INCLUDE_BY_TYPE plugin_type plugin ...]
                  [EXCLUDE_BY_TYPE plugin_type])

Description

Specifies a custom set of plugins to import. The optional arguments: INCLUDE, EXCLUDE, INCLUDE_BY_TYPE, and EXCLUDE_BY_TYPE, can be used more than once.

This CMake command was introduced in Qt 5.14.

  • INCLUDE -- can be used to specify a list of plugins to import.
  • EXCLUDE -- can be used to specify a list of plugins to exclude.
  • INCLUDE_BY_TYPE -- can be used to override the list of plugins to import for a certain plugin type.
  • EXCLUDE_BY_TYPE -- can be used to specify a plugin type to exclude; then no plugins of that type are imported.

Qt provides plugin types such as imageformats, platforms, and sqldrivers.

If the command isn't used the target automatically links against a sane set of default plugins, for each Qt module that the target is linked against. For more information, see target_link_libraries.

Each plugin comes with a C++ stub file that automatically initializes the plugin. Consequently, any target that links against a plugin has this C++ file added to its SOURCES.

Note: This command imports plugins from static Qt builds only. On shared builds, it does nothing.

This command was introduced in Qt 5.15. You can use qt5_import_plugins in older versions of Qt.

Examples

add_executable(myapp main.cpp)
target_link_libraries(myapp Qt5::Gui Qt5::Sql)
qt_import_plugins(myapp
    INCLUDE Qt5::QCocoaIntegrationPlugin
    EXCLUDE Qt5::QMinimalIntegrationPlugin
    INCLUDE_BY_TYPE imageformats Qt5::QGifPlugin Qt5::QJpegPlugin
    EXCLUDE_BY_TYPE sqldrivers
)

In the snippet above, the following occurs with the executable myapp:

  • The Qt5::QCocoaIntegrationPlugin is imported into myapp.
  • The Qt5::QMinimalIntegrationPlugin plugin is excluded from being automatically imported into myapp.
  • The default list of plugins for imageformats is overridden to only include Qt5::QGifPlugin and Qt5::QJpegPlugin.
  • All sqldrivers plugins are excluded from automatic importing.

© 2021 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.