diff options
author | Brad King <brad.king@kitware.com> | 2016-05-19 14:41:27 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2016-05-19 14:41:27 (GMT) |
commit | e0da6c3b562f7fd25b83b00c432f016439c24c22 (patch) | |
tree | 43e44454dbdf69f2caffe587a270e1446a2c7d2b /Help | |
parent | 43a456e1351fc6c2aca088a55855b7f7c501c100 (diff) | |
parent | eb076692459a8d4cc214156af3553c36309bdce3 (diff) | |
download | CMake-e0da6c3b562f7fd25b83b00c432f016439c24c22.zip CMake-e0da6c3b562f7fd25b83b00c432f016439c24c22.tar.gz CMake-e0da6c3b562f7fd25b83b00c432f016439c24c22.tar.bz2 |
Merge topic 'ninja-output-path-prefix'
eb076692 Tests: Select RunCMake.Ninja test cases based on ninja version
8a862a4d Ninja: Support embedding of CMake as subninja project
038e7716 Ninja: Pass all build paths through a central method
7c26a6a2 Ninja: Fix path to soname-d target file
ac3cdd9a Ninja: Convert object file names to ninja paths earlier
d4381cb1 Ninja: Convert link library file names like all other output paths
0397c92a Ninja: Pre-compute "CMakeCache.txt" build target name
3b3ecdfa Ninja: Pre-compute "all" build target name
5ca72750 Ninja: Simplify generation of custom target logical path
Diffstat (limited to 'Help')
-rw-r--r-- | Help/manual/cmake-variables.7.rst | 1 | ||||
-rw-r--r-- | Help/release/dev/ninja-output-path-prefix.rst | 6 | ||||
-rw-r--r-- | Help/variable/CMAKE_NINJA_OUTPUT_PATH_PREFIX.rst | 27 |
3 files changed, 34 insertions, 0 deletions
diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst index 181fbbc..ec741ae 100644 --- a/Help/manual/cmake-variables.7.rst +++ b/Help/manual/cmake-variables.7.rst @@ -281,6 +281,7 @@ Variables that Control the Build /variable/CMAKE_MAP_IMPORTED_CONFIG_CONFIG /variable/CMAKE_MODULE_LINKER_FLAGS_CONFIG /variable/CMAKE_MODULE_LINKER_FLAGS + /variable/CMAKE_NINJA_OUTPUT_PATH_PREFIX /variable/CMAKE_NO_BUILTIN_CHRPATH /variable/CMAKE_NO_SYSTEM_FROM_IMPORTED /variable/CMAKE_OSX_ARCHITECTURES diff --git a/Help/release/dev/ninja-output-path-prefix.rst b/Help/release/dev/ninja-output-path-prefix.rst new file mode 100644 index 0000000..47a9660 --- /dev/null +++ b/Help/release/dev/ninja-output-path-prefix.rst @@ -0,0 +1,6 @@ +ninja-output-path-prefix +------------------------ + +* The :generator:`Ninja` generator learned to read a new + :variable:`CMAKE_NINJA_OUTPUT_PATH_PREFIX` variable to configure + the generated ``build.ninja`` file for use as a ``subninja``. diff --git a/Help/variable/CMAKE_NINJA_OUTPUT_PATH_PREFIX.rst b/Help/variable/CMAKE_NINJA_OUTPUT_PATH_PREFIX.rst new file mode 100644 index 0000000..64091aa --- /dev/null +++ b/Help/variable/CMAKE_NINJA_OUTPUT_PATH_PREFIX.rst @@ -0,0 +1,27 @@ +CMAKE_NINJA_OUTPUT_PATH_PREFIX +------------------------------ + +Set output files path prefix for the :generator:`Ninja` generator. + +Every output files listed in the generated ``build.ninja`` will be +prefixed by the contents of this variable (a trailing slash is +appended if missing). This is useful when the generated ninja file is +meant to be embedded as a ``subninja`` file into a *super* ninja +project. For example, a ninja build file generated with a command +like:: + + cd top-build-dir/sub && + cmake -G Ninja -DCMAKE_NINJA_OUTPUT_PATH_PREFIX=sub/ path/to/source + +can be embedded in ``top-build-dir/build.ninja`` with a directive like +this:: + + subninja sub/build.ninja + +The ``auto-regeneration`` rule in ``top-build-dir/build.ninja`` must have an +order-only dependency on ``sub/build.ninja``. + +.. note:: + When ``CMAKE_NINJA_OUTPUT_PATH_PREFIX`` is set, the project generated + by CMake cannot be used as a standalone project. No default targets + are specified. |