CMake/Help/generator/Ninja.rst
Brad King 0278989405 Ninja: Add $subdir/{test,install,package} targets
With the Makefile generator one can use `cd $subdir; make install` to build and
install targets associated with a given subdirectory.  This is not possible to
do with the Ninja generator since there is only one `build.ninja` file at the
top of the build tree.  However, we can approximate it by allowing one to run
`ninja $subdir/install` at the top of the tree to build the targets in the
corresponding subdirectory and install them.

This also makes sense for `test`, `package`, and other GLOBAL_TARGET targets.
It was already done for `all` by commit v3.6.0-rc1~240^2~2 (Ninja: Add
`$subdir/all` targets, 2016-03-11).
2016-08-09 15:15:24 -04:00

24 lines
593 B
ReStructuredText

Ninja
-----
Generates build.ninja files.
A build.ninja file is generated into the build tree. Recent versions
of the ninja program can build the project through the "all" target.
An "install" target is also provided.
For each subdirectory ``sub/dir`` of the project, additional targets
are generated:
``sub/dir/all``
Depends on all targets required by the subdirectory.
``sub/dir/install``
Runs the install step in the subdirectory, if any.
``sub/dir/test``
Runs the test step in the subdirectory, if any.
``sub/dir/package``
Runs the package step in the subdirectory, if any.