1Ninja 2----- 3 4Generates ``build.ninja`` files. 5 6A ``build.ninja`` file is generated into the build tree. Use the ninja 7program to build the project through the ``all`` target and install the 8project through the ``install`` (or ``install/strip``) target. 9 10For each subdirectory ``sub/dir`` of the project, additional targets 11are generated: 12 13``sub/dir/all`` 14 15 .. versionadded:: 3.6 16 17 Depends on all targets required by the subdirectory. 18 19``sub/dir/install`` 20 21 .. versionadded:: 3.7 22 23 Runs the install step in the subdirectory, if any. 24 25``sub/dir/install/strip`` 26 27 .. versionadded:: 3.7 28 Runs the install step in the subdirectory followed by a ``CMAKE_STRIP`` command, 29 if any. 30 31 The ``CMAKE_STRIP`` variable will contain the platform's ``strip`` utility, which 32 removes symbols information from generated binaries. 33 34``sub/dir/test`` 35 36 .. versionadded:: 3.7 37 38 Runs the test step in the subdirectory, if any. 39 40``sub/dir/package`` 41 42 .. versionadded:: 3.7 43 44 Runs the package step in the subdirectory, if any. 45 46Fortran Support 47^^^^^^^^^^^^^^^ 48 49.. versionadded:: 3.7 50 51The ``Ninja`` generator conditionally supports Fortran when the ``ninja`` 52tool is at least version 1.10 (which has the required features). 53 54Swift Support 55^^^^^^^^^^^^^ 56 57.. versionadded:: 3.15 58 59The Swift support is experimental, not considered stable, and may change 60in future releases of CMake. 61 62See Also 63^^^^^^^^ 64 65.. versionadded:: 3.17 66 The :generator:`Ninja Multi-Config` generator is similar to the ``Ninja`` 67 generator, but generates multiple configurations at once. 68