summaryrefslogtreecommitdiffstats
path: root/Help/variable/CMAKE_GLOBAL_AUTOGEN_TARGET.rst
blob: 96e99073836b588b65d70d2d601d9e0f6c16ca43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
CMAKE_GLOBAL_AUTOGEN_TARGET
---------------------------

.. versionadded:: 3.14

Switch to enable generation of a global ``autogen`` target.

When :variable:`CMAKE_GLOBAL_AUTOGEN_TARGET` is enabled, a custom target
``autogen`` is generated.  This target depends on all :prop_tgt:`AUTOMOC` and
:prop_tgt:`AUTOUIC` generated ``<ORIGIN>_autogen`` targets in the project.
By building the global ``autogen`` target, all :prop_tgt:`AUTOMOC` and
:prop_tgt:`AUTOUIC` files in the project will be generated.

The name of the global ``autogen`` target can be changed by setting
:variable:`CMAKE_GLOBAL_AUTOGEN_TARGET_NAME`.

By default :variable:`CMAKE_GLOBAL_AUTOGEN_TARGET` is unset.

See the :manual:`cmake-qt(7)` manual for more information on using CMake
with Qt.

Note
^^^^

``<ORIGIN>_autogen`` targets by default inherit their origin target's
dependencies.  This might result in unintended dependency target
builds when only ``<ORIGIN>_autogen`` targets are built.  A solution is to
disable :prop_tgt:`AUTOGEN_ORIGIN_DEPENDS` on the respective origin targets.