CMake: Taming the Beast

CMake is more or less the current standard used by nearly all C++ developers to configure, build and install their software. It is one of the major tools we have to use several times a day. Thus, mastering CMake will render your workflow to be much more efficient. However, due to the backwards compatibility and the complex language it seems to be rather difficult to write robust, efficient and modern CMakeLists.txt-files. Finding simple solutions for some problems is nearly impossible. Albeit, the documentation of CMake is complete, it does not help understanding and learning new features. But the following references will give you some nice information about modern CMake and how to use it in a real world project.

Since 2018 there is now a real e-book about how to write effective modern CMake code. I am sure you will find a way how to get it.

There is also a living document about learning modern CMake.

And if you really want to see some examples for applying the new features then you should watch the following videos.

Hope I could show you something new. Have fun with it!


Last update: July 11, 2020