| 12345678910111213141516171819202122232425262728293031323334 |
- EXCLUDE_FROM_ALL
- ----------------
- Set this directory property to a true value on a subdirectory to exclude
- its targets from the "all" target of its ancestors. If excluded, running
- e.g. ``make`` in the parent directory will not build targets in the
- subdirectory by default. This does not affect the "all" target of the
- subdirectory itself. Running e.g. ``make`` inside the subdirectory will
- still build its targets.
- ``EXCLUDE_FROM_ALL`` is meant for when the subdirectory contains
- a separate part of the project that is useful, but not necessary,
- such as a set of examples, or e.g. an integrated 3rd party library.
- Typically the subdirectory should contain its own :command:`project`
- command invocation so that a full build system will be generated in the
- subdirectory (such as a Visual Studio IDE solution file). Note that
- inter-target dependencies supersede this exclusion. If a target built by
- the parent project depends on a target in the subdirectory, the dependee
- target will be included in the parent project build system to satisfy
- the dependency.
- If the ``EXCLUDE_FROM_ALL`` argument is provided, it has the following effects:
- * Targets defined in the subdirectory or below will not be
- included in the ``ALL`` target of the parent directory.
- Those targets must be built explicitly by the user,
- or be a dependency of another target that will be built.
- * Targets defined in the subdirectory or below will be
- excluded from IDE project files.
- * Any install rules defined in the subdirectory or below will
- be ignored when installing the parent directory.
- Note that these effects are not the same as those for the
- :prop_tgt:`EXCLUDE_FROM_ALL` target property.
|