blob: a87f283e9b2211c6c7c6bd6301e592b47c95c530 [file] [log] [blame] [edit]
CMake Tutorial
**************
Introduction
============
The CMake tutorial provides a step-by-step guide that covers common build
system issues that CMake helps address. Seeing how various topics all
work together in an example project can be very helpful.
Steps
=====
The tutorial documentation and source code examples can be found in
the ``Help/guide/tutorial`` directory of the CMake source code tree.
Each step has its own subdirectory containing code that may be used as a
starting point. The tutorial examples are progressive so that each step
provides the complete solution for the previous step.
.. toctree::
:maxdepth: 2
Getting Started with CMake
CMake Language Fundamentals
Configuration and Cache Variables
In-Depth CMake Target Commands
In-Depth CMake Library Concepts
In-Depth System Introspection
Custom Commands and Generated Files
Testing and CTest
Installation Commands and Concepts
Finding Dependencies
Miscellaneous Features
..
Whenever a step above is renamed or removed, leave forwarding text in
its original document file, and list it below to preserve old links
to cmake.org/cmake/help/latest/ URLs.
.. toctree::
:maxdepth: 1
:hidden:
A Basic Starting Point
Adding a Library
Adding Usage Requirements for a Library
Adding Generator Expressions
Installing and Testing
Adding Support for a Testing Dashboard
Adding System Introspection
Adding a Custom Command and Generated File
Packaging an Installer
Selecting Static or Shared Libraries
Adding Export Configuration
Packaging Debug and Release