Back To Schedule

Pragmatic CMake

How to Avoid Headaches with Simple CMake

14:30 - 16:00 Monday 28th April 2025 MT Flug Auditorium
Beginner
Intermediate
Advanced
Tooling/Utilities

CMake headaches? Modern CMake has been around for about a decade now, but in practice CMake use tends to be uneven and overcomplicated. This causes frustration among maintainers and steep learning curves among developers. It also results in overly complicated C++ projects. Even first-class open-source C++ projects often have CMake snarls and snags. Is there a basic CMake approach that just works?

In this talk, hear from a CMake veteran about how to keep it simple with CMake. We’ll cover modern CMake principles to keep in mind while maintaining projects built with CMake. We’ll talk about up-to-date CMake basics you’ll find useful – and (some of) the bells and whistles you can skip. To make it easier to keep coming back to these concepts, these recommendations will all be demonstrated with a project you can refer back to. Along the way, we’ll cover some new CMake features meant to improve our quality of life, while maintaining that “it just works” experience.

Bret Brown

Software EngineerBloomberg

Bret likes making authoring and maintaining C++ codebases simpler and more intuitive by treating projects more like cattle and less like pets. He is especially interested in the software development lifecycle, development automation, modern build systems, packaging, code transformation, software governance, and code analysis.

Bret is currently an engineer in Bloomberg's developer experience department. He has worked in embedded C++ and safety critical C++ for previous employers.