.. title:: CMake Reference Documentation | |
Introduction | |
############ | |
CMake is a tool to manage building of source code. Originally, CMake was | |
designed as a generator for various dialects of ``Makefile``, today | |
CMake generates modern buildsystems such as ``Ninja`` as well as project | |
files for IDEs such as Visual Studio and Xcode. | |
CMake is widely used for the C and C++ languages, but it may be used to | |
build source code of other languages too. | |
People encountering CMake for the first time may have different initial | |
goals. To learn how to build a source code package downloaded from the | |
internet, start with the :guide:`User Interaction Guide`. | |
This will detail the steps needed to run the :manual:`cmake(1)` or | |
:manual:`cmake-gui(1)` executable and how to choose a generator, and | |
how to complete the build. | |
The :guide:`Using Dependencies Guide` is aimed at developers | |
wishing to get started using a third-party library. | |
For developers starting a project using CMake, the :guide:`CMake Tutorial` | |
is a suitable starting point. The :manual:`cmake-buildsystem(7)` | |
manual is aimed at developers expanding their knowledge of maintaining | |
a buildsystem and becoming familiar with the build targets that | |
can be represented in CMake. The :manual:`cmake-packages(7)` manual | |
explains how to create packages which can easily be consumed by | |
third-party CMake-based buildsystems. | |
Command-Line Tools | |
################## | |
.. toctree:: | |
:maxdepth: 1 | |
/manual/cmake.1 | |
/manual/ctest.1 | |
/manual/cpack.1 | |
Interactive Dialogs | |
################### | |
.. toctree:: | |
:maxdepth: 1 | |
/manual/cmake-gui.1 | |
/manual/ccmake.1 | |
Reference Manuals | |
################# | |
.. toctree:: | |
:maxdepth: 1 | |
/manual/cmake-buildsystem.7 | |
/manual/cmake-commands.7 | |
/manual/cmake-compile-features.7 | |
/manual/cmake-developer.7 | |
/manual/cmake-env-variables.7 | |
/manual/cmake-file-api.7 | |
/manual/cmake-generator-expressions.7 | |
/manual/cmake-generators.7 | |
/manual/cmake-language.7 | |
/manual/cmake-modules.7 | |
/manual/cmake-packages.7 | |
/manual/cmake-policies.7 | |
/manual/cmake-presets.7 | |
/manual/cmake-properties.7 | |
/manual/cmake-qt.7 | |
/manual/cmake-server.7 | |
/manual/cmake-toolchains.7 | |
/manual/cmake-variables.7 | |
/manual/cpack-generators.7 | |
.. only:: not man | |
Guides | |
###### | |
.. toctree:: | |
:maxdepth: 1 | |
/guide/tutorial/index | |
/guide/user-interaction/index | |
/guide/using-dependencies/index | |
/guide/importing-exporting/index | |
/guide/ide-integration/index | |
.. only:: html or text | |
Release Notes | |
############# | |
.. toctree:: | |
:maxdepth: 1 | |
/release/index | |
.. only:: html | |
Index and Search | |
################ | |
* :ref:`genindex` | |
* :ref:`search` |