Help/index.rst
.. 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-configure-log.7 /manual/cmake-cxxmodules.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-instrumentation.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 ################
genindexsearch