
28 марта 2025 года состоялся релиз открытого проекта сборочной системы CMake 4.0.0. Решение является альтернативой Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB, ReactOS и Blender. Исходный код CMake написан на языке C++ и опубликован на GitHub под лицензией BSD. Версия CMake 3.0.0 вышла в декабре 2018 года.
Сборки CMake 4.0.0 доступны для Unix/Linux, macOS, Windows и SunOS.

По информации OpenNET, проект CMake примечателен предоставлением простого языка сценариев, средствами расширения функциональности через модули, поддержкой кеширования, наличием инструментов для кросс‑компиляции, поддержкой генерации файлов сборки для широкого спектра систем сборки и компиляторов, наличием утилит ctest и cpack для определения сценариев тестирования и сборки пакетов, утилитой cmake‑gui для интерактивной настройки параметров сборки.
Основные изменения и дополнения в CMake 4.0.0:
прекращена совместимость с версиями CMake до выпуска 3.5. При привязке к неподдерживаемым версиям в функциях cmake_minimum_required() и cmake_policy() теперь будет выводиться ошибка;
добавлена переменная окружения «CMAKE_POLICY_VERSION_MINIMUM» для переопределения минимальной версии CMake, функциональность которой необходима для сборки проекта. Добавленная переменная позволяет обойтись без изменения вызовов cmake_minimum_required(VERSION) и cmake_policy(VERSION) в самом проекте, например, для настройки политики версий в проектах, не предусматривающих такую возможность;
в выражение генератора «$<PATH>» добавлена операция «NATIVE_PATH» для преобразования файлового пути из представления CMake (для разделения каталогов всегда используется «/»), в системный путь (в Unix‑подобных системах используется «/», а в Windows — «\»);
на платформе macOS при использовании генераторов сборочных сценариев на базе инструментария Ninja и генераторов Makefile, если в каталоге «/usr/bin» присутствует компилятор, то он отныне оставляется как есть, без привязки к компилятору в Xcode. При сборке для платформы macOS по умолчанию прекращён выбор SDK и передача компилятору флага «‑isysroot» (SDK теперь выбирает сам компилятор, а не CMake);
добавлено свойство LINK_WARNING_AS_ERROR, при котором предупреждения компоновщика будут трактоваться как ошибки. Для отключения действия данного свойства добавлена опция командной строки «‑link‑no‑warning‑as‑error»;
в утилиту cmake добавлена опция «‑project‑file» для задания альтернативного имени файла CMakeLists.txt;
в генератор CPack добавлена возможность создания несжатых tar‑архивов;
добавлены новые свойства: DEBUGGER_WORKING_DIRECTORY и VS_SOLUTION_ITEMS (для прикрепления файлов к.sln для Visual Studio);
обеспечено формирование готовых сборок CMake для SunOS для архитектур sparc64 и x86_64.