CMake is een multiplatformsysteem voor build automation geschreven in C++. Het is vergelijkbaar met het Unix-programma make, maar genereert enkel standaard bouwbestanden. Die worden dan vervolgens gebruikt door de op het systeem aanwezige ontwikkelomgeving om een applicatie te bouwen. CMake kan bouwbestanden genereren voor onder andere Unix make (bijv. voor gcc), Microsoft Visual Studio en nmake. CMake wordt vrijgegeven onder een BSD-licentie.