CMake é uma família de ferramentas projetadas para construir, testar e empacotar software. CMake é usado para controlar o processo de compilação de software usando arquivos de configuração simples, independentes de plataforma e compilador. CMake gera makefiles nativos e espaços de trabalho que podem ser usados no ambiente de compilador de sua escolha.