Un archivo CMake es un script de texto plano utilizado por el sistema de compilación CMake, una herramienta multiplataforma diseñada para controlar el proceso de compilación de software mediante archivos de configuración sencillos e independientes del compilador y la plataforma. Estos archivos, denominados habitualmente 'CMakeLists.txt' o que terminan con la extensión '.cmake', contienen una serie de comandos que definen cómo debe compilarse un proyecto, incluyendo la ubicación de los archivos fuente, dependencias, flags del compilador y reglas de instalación. Al utilizar estos scripts, los desarrolladores pueden generar archivos de compilación nativos como Makefiles, archivos de compilación de Ninja o archivos de proyecto para entornos de desarrollo integrados (IDE) como Visual Studio y Xcode. Esta abstracción permite que una misma base de código sea compilada en diversos sistemas operativos y entornos sin requerir una configuración manual para cada plataforma. El lenguaje utilizado dentro de estos archivos es un lenguaje específico de dominio (DSL) que admite variables, bucles, condicionales y funciones modulares, lo que lo hace altamente flexible para gestionar proyectos de software complejos, desde pequeñas bibliotecas hasta aplicaciones empresariales masivas.