This tutorial is a work in progress. See CHANGELOG.md
for the current version as well as more details in each version.
This tutorial is NOT intended to show you how to use specific features to write a CMake file, although showing the features is sometimes inevitable in order to explain the topics. If you want to write a CMake file to build the project at hand, refer to the official CMake Tutorial.
Instead, this tutorial means to provide a bird's-eye view of CMake so you will see all the important parts of this tool and how these parts are related to each other. Therefore, the best readers of this tutorial are those who have used CMake for a while and want to get a full grasp of this tool in order to harness its full power. When you need the details, the official documentation is always there and informative.
- Tutorial.md is the main content of the tutorial.