mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 05:40:54 -06:00
Allow to force moc/rcc/uic compiler used for AUTO(MOC|RCC|UIC). Setting these properties is only necessary if you are going to do strange things like build these tools as part of your own build system. Setting these properties will also prevent cmake from testing the binary: It is user-provided and assumed to be valid.
48 lines
2.1 KiB
ReStructuredText
48 lines
2.1 KiB
ReStructuredText
AUTOUIC
|
|
-------
|
|
|
|
Should the target be processed with autouic (for Qt projects).
|
|
|
|
:prop_tgt:`AUTOUIC` is a boolean specifying whether CMake will handle
|
|
the Qt ``uic`` code generator automatically, i.e. without having to use
|
|
the :module:`QT4_WRAP_UI() <FindQt4>` or ``QT5_WRAP_UI()`` macro. Currently
|
|
Qt4 and Qt5 are supported.
|
|
|
|
When this property is ``ON``, CMake will scan the source files at build time
|
|
and invoke ``uic`` accordingly. If an ``#include`` statement like
|
|
``#include "ui_foo.h"`` is found in ``source.cpp``, a ``foo.ui`` file is
|
|
searched for first in the vicinity of ``source.cpp`` and afterwards in the
|
|
optional :prop_tgt:`AUTOUIC_SEARCH_PATHS` of the target.
|
|
``uic`` is run on the ``foo.ui`` file to generate ``ui_foo.h`` in the directory
|
|
``<AUTOGEN_BUILD_DIR>/include``,
|
|
which is automatically added to the target's :prop_tgt:`INCLUDE_DIRECTORIES`.
|
|
|
|
* For :prop_gbl:`multi configuration generators <GENERATOR_IS_MULTI_CONFIG>`,
|
|
the include directory is ``<AUTOGEN_BUILD_DIR>/include_<CONFIG>``.
|
|
|
|
* See :prop_tgt:`AUTOGEN_BUILD_DIR`.
|
|
|
|
This property is initialized by the value of the :variable:`CMAKE_AUTOUIC`
|
|
variable if it is set when a target is created.
|
|
|
|
Additional command line options for ``uic`` can be set via the
|
|
:prop_sf:`AUTOUIC_OPTIONS` source file property on the ``foo.ui`` file.
|
|
The global property :prop_gbl:`AUTOGEN_TARGETS_FOLDER` can be used to group the
|
|
autouic targets together in an IDE, e.g. in MSVS.
|
|
|
|
The ``uic`` executable will be detected automatically, but can be forced to
|
|
a certain binary using the :prop_tgt:`AUTOUIC_EXECUTABLE` property.
|
|
|
|
Source files can be excluded from :prop_tgt:`AUTOUIC` processing by
|
|
enabling :prop_sf:`SKIP_AUTOUIC` or the broader :prop_sf:`SKIP_AUTOGEN`.
|
|
|
|
The number of parallel ``uic`` processes to start can be modified by
|
|
setting :prop_tgt:`AUTOGEN_PARALLEL`.
|
|
|
|
A global ``autogen`` target that depends on all :prop_tgt:`AUTOUIC` generated
|
|
``<ORIGIN>_autogen`` targets in the project can be generated by enabling
|
|
:variable:`CMAKE_GLOBAL_AUTOGEN_TARGET`.
|
|
|
|
See the :manual:`cmake-qt(7)` manual for more information on using CMake
|
|
with Qt.
|