Skip to content

⚡ Pitch

sf‑cmake The build system that finally treats C++ developers and DevOps engineers like humans.

Clone your project --- on a fresh Linux or Windows machine --- and start working in minutes.\ No toolchain chaos. No dependency hell. No CI nightmares. No "it works on my machine".

One command unlocks everything:

  • cross‑platform builds (Linux amd64, aarch64, Windows x86_64)
  • Docker and Wine execution
  • semantic versioning with release notes
  • Nexus publishing
  • reproducible environments
  • instant onboarding
  • effortless maintenance

sf‑cmake turns CMake into a predictable, elegant, industrial‑grade build experience.\ Not a template. Not a hack. A complete build ecosystem.


📘 README Introduction

sf‑cmake --- A Complete Cross‑Platform Build Ecosystem for Modern C++

sf‑cmake is a unified build framework designed for teams who want to build, test, package, version, and publish C++ applications without fighting their tools.

It gives developers, maintainers, and DevOps engineers a carefree workflow:

  • Clone your project --- Linux or Windows

  • Run build.py install

  • Start building immediately

No manual toolchain setup. No dependency hunting. No CI configuration rewrites. No platform‑specific hacks.

What sf‑cmake provides

  • Cross‑platform builds: Linux amd64, Linux aarch64, Windows x86_64
  • Execution environments: Native, Docker, Wine, nested Docker→Wine
  • Semantic versioning: Conventional commits → automatic version bumps
  • Release notes: Markdown generation from commit history
  • Artifact publishing: Upload packages directly to Nexus
  • Packaging: DEB, RPM, ZIP, NSIS installers
  • Toolchain installation: MinGW, MSVC, Linux cross‑toolchains
  • Project generator: Create a new project with sf‑cmake as a submodule
  • CI/CD ready: Works seamlessly in GitLab pipelines
  • Retrofit capability: Drop sf‑cmake into existing projects and modernize them instantly

sf‑cmake is not a template. It is a full-stack build system that brings order, consistency, and automation to every stage of your development lifecycle.


🔧 Problem → Solution

The Problem

Modern C++ development is fractured.

Every developer has a different compiler. Every machine has a different toolchain. Every CI pipeline is a fragile snowflake. Cross‑compiling is a maze of undocumented flags. Packaging is an afterthought. Versioning is manual. Release notes are forgotten. Publishing artifacts is a chore. Onboarding new developers takes days. Maintainers drown in build scripts. DevOps engineers fight fires instead of building systems.

CMake is powerful --- but without structure, it becomes a burden.

The Turning Point

  • What if cloning a project --- on a fresh Linux or Windows machine --- meant you could start working immediately?
  • What if cross‑compiling for Linux amd64, Linux aarch64, and Windows x86_64 was one command?
  • What if Docker and Wine were first‑class citizens of your build system?
  • What if semantic versioning, release notes, and Nexus publishing were built in, not bolted on?
  • What if your build system was predictable, reproducible, and self‑contained?

The Solution

sf‑cmake A complete build ecosystem that unifies developers, maintainers, and DevOps under one workflow.

  • Developers get instant productivity.
  • Maintainers get consistency and clarity.
  • DevOps gets reproducibility and automation.
  • Product owners get controlled, auditable versioning.

sf‑cmake transforms CMake from a tool into a platform.

It doesn't just build your project. It builds your confidence.