The eBook “A Beginner’s Guide to Modern CMake”
http://t.cn/A6r1ls4q
“People love to complain about build systems. Just look at the talks from CppCon17, where developers used the current state of build systems as a punchline. This raises a question: why? Of course, there are countless issues during the build process. But I believe we have a very good solution to address many of these problems. That is CMake. But not CMake version 2.8; that version was released even before C++11! And not those terrible CMake examples (even those in the official KitWare tutorial list). I am talking about modern CMake. CMake 3.15+, and possibly CMake 4.0+! It is concise, powerful, and elegant, allowing you to spend most of your time coding rather than adding lines to a hard-to-read, hard-to-maintain Make (or CMake 2) file.”