Scaling beman.exemplar
summary
beman.exemplar provides a ready CMake project template plus the infra to propagate it: a modern CMake layout, VC Package registry support with stamped portfiles, a fetchcontent-backed find_package provider, and GitHub Actions CI that expands to ~82 jobs but runs exemplar’s matrix in ~5 minutes using custom Gen2-based Docker images. It adds C++ modules wiring (with import std workarounds), a beam_submmodule tool to vend infra, a local runner beam_local_CI, and an AI-assisted workflow to stamp out template updates and fix template drift across many repos.
AI-written summary · about
chapters (7)
- 0:00Beman Exemplar intro
- 4:17Project background and goals
- 16:58Dependencies and packaging
- 36:33Modules support and compiler issues
- 50:41GitHub Actions CI workflows
- 1:16:00Template drift handling
- 1:26:41Q&A
related talks
01h 01mGit, CMake, Conan - How to ship and reuse our C++ projects
01h 04mBetter CMake: A World Tour of Build Systems - Better C++ Builds
01h 02mModern CMake Modules
34mBuilding Real-time Systems with Bazel
25mBuilding Universal CI/CD Pipelines
46mBuilding and Packaging Modern C++
54mCMake for the Impatient
45mLess is More - a Build Pipeline for the Modern Age
