Cmake

Cmake est un mot de 5 lettres formé à partir du mot Cmak auquel on ajoute la lettre E.

Cmake
Cmake

CMake est un système de construction logicielle multiplateforme. Il permet de vérifier les prérequis nécessaires à la construction, de déterminer les dépendances entre les différents composants d'un projet, afin de planifier une construction ordonnée et adaptée à la plateforme. La construction du projet est ensuite déléguée à un logiciel spécialisé dans l’ordonnancement de taches et spécifique à la plateforme, Make, Ninja ou Microsoft Visual Studio.

CMake reprend le concept de configuration initié par autoconf, mais s'en distingue par son caractère multiplateforme, le rendant particulièrement adapté à la construction des logiciels destinés à fonctionner sous Linux et Windows.

Le nom « CMake » est l'abréviation de « cross platform make ». Malgré l'utilisation de « make » dans son nom, CMake est une application séparée et de plus haut niveau que l'outil make.

Histoire

CMake a été créé pour répondre au besoin d'un système de compilation multiplateforme de la bibliothèque Insight ToolKit (ITK), développée dans le cadre du projet Visible Human Project de l'United States National Library of Medicine.

Il est influencé par pcmaker, système de construction antérieur créé par Ken Martin pour la bibliothèque Visualization Toolkit (VTK), bibliothèque open-source de visualisation 3D.

Bill Hoffman, travaillant alors pour Kitware, a ainsi créé CMake en reprenant des concepts de pcmaker, tout en intégrant de nouvelles idées ainsi que le principe de configuration de la construction initié par autoconf. La première version de CMake a été réalisée en 2000.

Le développement s'est ensuite poursuivi, notamment par les apports d'autres développeurs qui ont adapté CMake à leurs propres projets.

La dernière version majeure est la version 4.0, publiée en mars 2025.

Exemples de logiciels utilisant CMake

Armadillo

Avidemux

Awesome WM

Bullet

Chicken (Scheme implementation) (en)

FlightGear

Geant4

KDE

KiCad

LLVM / Clang

LMMS

MuseScore

MySQL

Netflix

OGRE

OpenCV

Polycode

QGIS

ReactOS

Scribus

Second Life

SFML

Stellarium

Supertux

Swift

VTK

Wormux

Notes et références

Voir aussi

Meson (logiciel)

Autoconf

Automake

premake

SCons

Liens externes

(en) Site officiel

(en) Pourquoi le projet KDE est passé à CMake — et comment

(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « CMake » (voir la liste des auteurs).

Portail des logiciels libres Portail de la programmation informatique