Modern CMake for reusable, portable and testable embedded projects
summary
CMake setup that actually builds a Match‑Three game for desktop and STM32, with working ELF/hex/bin outputs and size reports, using BoostDI, Boost.SML, ranges v3 and a vendor GUI library TouchGFX. Concrete features: a reusable CMake/targets layout, an interface project_warnings with generator expressions to apply C++‑only flags, functions to mark third‑party headers as system, cross toolchain file for ARM GCC, object library startup to preserve interrupt vectors, desktop unit tests with Catch2 and optional sanitizers; it compiles and runs.
AI-written summary · about
chapters (4)
- 0:00Project motivation
- 3:11CMake architecture design
- 12:48Microcontroller cross-compilation
- 22:14Q&A session
related talks
54mCMake for the Impatient
01h 01mGit, CMake, Conan - How to ship and reuse our C++ projects
53mStandard C++ Toolset
01h 00mSo, you want to use C++ Modules ... cross-platform?
01h 18mIntegrating C++ Code Generation Into a Large CMake Build
01h 34mThings I Learnt While Trying to Avoid Becoming a CMake Expert
01h 03m“The MAME story: From C to Modern C++"
01h 09m“Modern C++ in Embedded Systems - The Saga Continues”
