AUTOUIC.rst 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. AUTOUIC
  2. -------
  3. Should the target be processed with autouic (for Qt projects).
  4. ``AUTOUIC`` is a boolean specifying whether CMake will handle
  5. the Qt ``uic`` code generator automatically, i.e. without having to use
  6. the :module:`QT4_WRAP_UI() <FindQt4>` or ``QT5_WRAP_UI()`` macro. Currently
  7. Qt4 and Qt5 are supported.
  8. When this property is ``ON``, CMake will scan the source files at build time
  9. and invoke ``uic`` accordingly. If an ``#include`` statement like
  10. ``#include "ui_foo.h"`` is found in ``source.cpp``, a ``foo.ui`` file is
  11. searched for first in the vicinity of ``source.cpp`` and afterwards in the
  12. optional :prop_tgt:`AUTOUIC_SEARCH_PATHS` of the target.
  13. ``uic`` is run on the ``foo.ui`` file to generate ``ui_foo.h`` in the directory
  14. ``<AUTOGEN_BUILD_DIR>/include``,
  15. which is automatically added to the target's :prop_tgt:`INCLUDE_DIRECTORIES`.
  16. * For :prop_gbl:`multi configuration generators <GENERATOR_IS_MULTI_CONFIG>`,
  17. the include directory is ``<AUTOGEN_BUILD_DIR>/include_<CONFIG>``.
  18. * See :prop_tgt:`AUTOGEN_BUILD_DIR`.
  19. This property is initialized by the value of the :variable:`CMAKE_AUTOUIC`
  20. variable if it is set when a target is created.
  21. Additional command line options for ``uic`` can be set via the
  22. :prop_sf:`AUTOUIC_OPTIONS` source file property on the ``foo.ui`` file.
  23. The global property :prop_gbl:`AUTOGEN_TARGETS_FOLDER` can be used to group the
  24. autouic targets together in an IDE, e.g. in MSVS.
  25. Source files can be excluded from :prop_tgt:`AUTOUIC` processing by
  26. enabling :prop_sf:`SKIP_AUTOUIC` or the broader :prop_sf:`SKIP_AUTOGEN`.
  27. The number of parallel ``uic`` processes to start can be modified by
  28. setting :prop_tgt:`AUTOGEN_PARALLEL`.
  29. See the :manual:`cmake-qt(7)` manual for more information on using CMake
  30. with Qt.