August 31, 2000

CMake released

Kitware introduced CMake on August 31, 2000 — a cross-platform build system generator for C and C++ projects.

What it was for

CMakeCMake reads `CMakeLists.txt` files and emits Makefiles, Ninja files, or IDEIntegrated development environment — an editor with debugging, build tools, and project management built in. projects — one build description for Linux, macOSApple's desktop operating system — runs on Mac hardware with Unix foundations and the Cocoa UI framework., and Windows. It powers LLVMLow Level Virtual Machine — a compiler infrastructure reused by Clang, Rust, Swift, and many language toolchains., KDE, OpenCV, and countless native libraries. Example: `cmake -B build && cmake --build build` configures and compiles without hand-writing platform-specific make rules.

Why it's here

CMake solved cross-platform native builds when autotools and Visual StudioMicrosoft's IDE — editing, debugging, and profiling for .NET, C++, and web projects. projects diverged.

Why it mattered

It became the de facto build meta-system for open-source C/C++ and influenced Conan and vcpkg workflows.

What it solved

Maintaining separate build files per OSOperating system — software that manages hardware and provides services to applications. was unmaintainable for large C++ codebases like medical imaging toolkits.

Media

  • CMake
    ImageCMake

    Software: LLVM Developer Group and cmake.org Screenshot: VulcanSphere, Apache License 2.0, via Wikimedia Commons

Related