0278989405
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).
8 lines
228 B
CMake
8 lines
228 B
CMake
include(CTest)
|
|
add_subdirectory(SubDir)
|
|
add_custom_target(TopFail ALL COMMAND does_not_exist)
|
|
add_test(NAME TopTest COMMAND ${CMAKE_COMMAND} -E echo "Running TopTest")
|
|
install(CODE [[
|
|
message(FATAL_ERROR "Installing Top")
|
|
]])
|