What problem does it solve?
CMake is the de facto build system for C/C++ projects; this skill guides users through modern, target-centric workflows, making it easier to configure out-of-source builds, choose generators, manage targets and dependencies, and integrate external packages via FetchContent or find_package.
Core Features & Use Cases
- Emphasizes modern CMake principles: define targets, use PUBLIC/PRIVATE/INTERFACE scopes, and avoid legacy include_directories or link_libraries.
- Supports common workflows: out-of-source builds, multiple generators (Ninja, Make, VS), dependency management, sanitizers, and cross-compilation toolchains.
- Provides templates and references for common patterns: FetchContent, Presets, and cross-platform configurations, enabling quick onboarding and consistency across projects.
Quick Start
Create an out-of-source build for a sample project using Ninja and verify a minimal target-based configuration compiles successfully.