CMake
Vývojář | Andy Cedilnik, Bill Hoffman, Brad King, Ken Martin, Alexander Neundorf |
---|---|
První vydání | 2000 |
Aktuální verze | 3.31.0-rc3 (29. října 2024) |
Operační systém | multiplatformní |
Platforma | multiplatformní software |
Vyvíjeno v | C++ |
Typ softwaru | vývoj software |
Licence | BSD licence |
Web | www.cmake.org |
Některá data mohou pocházet z datové položky. |
CMake je multiplatformní svobodný software pro automatizaci překladu programu v různých operačních systémech. Používá se pro vytvoření adresářové struktury a přípravu zdrojových souborů pro použití s konkrétními, na operační systém často vázanými, překladači. Například program make na Unixových strojích, Xcode firmy Apple, nebo Microsoft Visual Studio na systému Windows.
Historie
[editovat | editovat zdroj]CMake byl vytvořen v roce 1999 v reakci na poptávku po multiplatformním prostředí pro kompilaci softwaru v projektu Insight Segmentation and Registration Toolkit. Původně byl inspirován programem pcmaker, který byl vytvořen Kenem Martinem a dalšími vývojáři firmy Kitware. CMake vznikl spojením funkcí pcmakeru s dalšími vylepšeními, které byly inspirovány unixovými konfiguračními skripty. První verze byla hotova v roce 2000. V následující letech se rychle rozvíjel díky přispění dalších programátorů, kteří jej využívali ve vlastních vývojářských projektech.
Vlastnosti
[editovat | editovat zdroj]CMake zvládá generovat výstup jak do stejné složky, ve které se nachází zdrojové soubory (in-place build), tak do předem vybraného adresáře (out-of-place build). Schopnost generovat výstup do předem určené složky je klíčová — díky ní zůstanou původní zdrojové soubory vždy nedotčené a proces sestavování tak lze libovolně opakovat. Výstupem mohou být projekty pro Microsoft Visual Studio, Eclipse, Code::Blocks, Cygwin, MinGW, nebo také soubor Makefile pro Unixový program make a mnoho dalších.
Použití
[editovat | editovat zdroj]Proces se nastavuje konfiguračním souborem v kořenovém adresáři nebo volitelně také v podsložkách a má název
CMakeLists.txt
V systému Windows je součástí programu grafické uživatelské rozhraní, přes které lze celý proces pohodlně nakonfigurovat. Na všech systémech je především k dispozici příkaz v příkazové řádce
cmake -argumenty
Soubor CMakeLists.txt může vypadat například takto[1]:
IF(UNIX) IF(APPLE) SET(GUI "osx") ELSE(APPLE) SET(GUI "x11") ENDIF(APPLE) ELSE(UNIX) IF(WIN32) SET(GUI "win32") ELSE(WIN32) MESSAGE(FATAL_ERROR "Unknown GUI type.") ENDIF(WIN32) ENDIF(UNIX) ADD_LIBRARY(gui STATIC ${GUI}_gui/main_window.cpp ...) ADD_EXECUTABLE(foo src/main.cpp ...) TARGET_LINK_LIBRARIES(foo gui)
Ukázkový kód rozvětví pomocí podmínek IF kompilaci podle operačního systému a dle něj nastaví proměnnou GUI. Ta je použita ve volání ADD_LIBRARY a díky ní se použijí správné soubory pro grafické uživatelské rozhraní. Výstup je nastaven příkazem ADD_EXECUTABLE. V příkladu jím bude spustitelný soubor s názvem "foo".
Reference
[editovat | editovat zdroj]- ↑ Kulhan, J. CMake:Ulehčete si život, 2006, URL: http://programujte.com/clanek/2009032800-cmake-tutorial
Související články
[editovat | editovat zdroj]Externí odkazy
[editovat | editovat zdroj]- Obrázky, zvuky či videa k tématu CMake na Wikimedia Commons
(česky)
(anglicky)