Managing C++ Build Complexity Using Cuppa: A SCons-based Build System
summary
Cuppa is a SCons-based build layer that pip-installs and runs on top of SCons to produce out-of-source builds and per-variant cached folders for each toolchain and ABI. Example project uses C++ with Boost.Program_options and rapidjson to build a binary that parses a 1.6GB StockTwits JSON dump and emits CSV; builds for GCC and Clang (debug and release) are produced without recompile where possible, dependencies can be fetched from git and cached.
AI-written summary · about
chapters (6)
- 0:00Introduction to Copper
- 3:21Basic usage example
- 6:16Integrating Boost libraries
- 10:43Adding RapidJSON dependency
- 13:21Compilation and benchmarks
- 16:02Q&A and closing thoughts
related talks
37mCross-Building Strategies in the Age of C++ Package Managers
01h 01mGit, CMake, Conan - How to ship and reuse our C++ projects
01h 04mBetter CMake: A World Tour of Build Systems - Better C++ Builds
46mBuilding and Packaging Modern C++
01h 12mA Common Package Specification: Getting Build Tools to Talk to Each Other: Lessons Learned From Making Thousands of Binaries Consumable by Any Build System
01h 01m10 Problems Large Companies Have Managing C++ Dependencies and How to Solve Them
50mModern DevOps in C and C++
25mInteroperating Bazel and Other Build Systems
