CMake – wieloplatformowe narzędzie do automatycznego zarządzania procesem kompilacji programu. Jego główna cecha to niezależność od używanego kompilatora oraz platformy sprzętowej. CMake nie kompiluje programu samodzielnie, lecz tworzy pliki z regułami kompilacji dla konkretnego środowiska; przykładowo w systemie GNU/Linux będą to pliki Makefile, natomiast pod Windowsem – pliki projektu dla Microsoft Visual Studio.

Rozwój projektu jest sponsorowany przez United States National Library of Medicine. Nazwa „CMake” to skrót od .

Historia W 1999 roku amerykańska biblioteka medyczna National Library of Medicine zdobyła kontrakt na zaprojektowanie i stworzenie otwartej biblioteki do segmentacji i rejestracji obrazu, nazwanej później Insight Segmentation and Registration Toolkit. Projekt miał pracować na różnych platformach sprzętowych i środowiskach, lecz okazało się, że nie istnieje uniwersalny system budowania i kompilacji, który działałby na każdej z nich, co zmuszałoby twórców do utrzymywania kilku niezależnych skryptów dostosowanych do konkretnej platformy.