There Will Be Build Systems: I Configure Your Milkshake
summary
C++ build systems still force users into ad hoc setups: Make replacements like Ninja exist, meta systems like CMake and Meson are common (Meson admits only one PCH and force-includes it), package tools like Conan and Hunter are fragmented, and extern template sees almost no uptake. Pkg-config cannot handle multiple versions or incompatible compiler flags. Proposed fixes include data over directives (JSON/TOML metadata instead of DSLs), a universal compiler interface to map semantic flags across compilers, non-recursive globs, and generator-style daemons — all promising but largely unimplemented.
AI-written summary · about
chapters (10)
- 0:00Intro
- 1:44QUICK OVERVIEW
- 6:32META BUILD SYSTEMS
- 17:12PRECOMPILED HEADERS
- 28:32GETTING STARTED WITH C++
- 40:13DATA OVER DIRECTIVES
- 45:20DON'T PREVENT CORNER CASES
- 49:17DEPENDENCY MANAGEMENT
- 52:09OPTION COMPREHENSION
- 54:08UNIVERSAL COMPILER INTERFACE
related talks
49mBuild Systems: a Simple Solution to a Complicated Problem
55mStandard C++ Toolset
01h 01mLessons Learned from Packaging 10,000+ C++ Projects
55mBuilding C++: It Doesn't Have to be Painful!
05mLightning Talk: What Does a CMake Developer Want From CMake?
01h 01mCMake — From Basics to Building
01h 01mWhy managing C++ dependencies is hard
59mStandard C++ toolset
