CMakeは、コンパイラに依存しないビルド自動化のためのフリーソフトウェアであり、様々なオペレーティングシステムで動作させることができる。CMakeは階層化ディレクトリや複数のライブラリを利用するアプリケーションをサポートするよう設計されている。実際のビルドにおいては、make、Xcode、Visual Studioのようなネイティブのビルド環境が利用される。CMake自身は最小限の依存関係を持つよう設計されており、ビルドするにはC++コンパイラのみを必要とする[3]。 CMakeは1999年に開発が始まった。その目的はInsight Segmentation and Registration Toolkit (ITK) のクロスプラットフォームなビルド環境の要求に答えるためのものだった[4]。このプロジェクトは可視化人間プロジェクト(英語: Visible Human Project)の