CMake
-
Медіафайли у Вікісховищі
|working state=
CMake — крос-платформовий відкритий генератор сценаріїв складання. CMake не займається безпосередньо складанням, a лише генерує файли управління складанням з файлів CMakeLists.txt :
- Makefile в системах Unix для складання з допомогою make
- файли projects/workspaces (.dsp/.dsw) у Windows для збірки з допомогою Visual C++
- проекти XCode у Mac OS X
З переваг CMake можна відзначити: проста мова сценаріїв, засоби розширення функціональності через модулі, мінімальне число залежностей (немає прив'язки до M4, Perl або Python), підтримка кешування, наявність засобів для крос-компіляції, підтримка генерації файлів складання для широкого спектра систем складання і компіляторів, наявність утиліт ctest і cpack для визначення сценаріїв тестування і складання пакунків, утиліта cmake-gui для інтерактивного налаштування параметрів складання.
CMake виступає як альтернатива Autotools і використовується в таких проектах, як KDE, LLVM/Clang, MySQL, MariaDB, ReactOS і Blender. Початковий код CMake написаний мовою C++ і поширюється під ліцензією BSD.
Історія
Досить давно розроблена в співтоваристві GNU система Autotools на базі Perl і M4 є широко поширеною, але вимагає певних навичок для практичного використання. Існуючі версії в ряді випадків несумісні одна з одною. Autotools реалізована для Unix/Linux платформ.
21 грудня 2008 з'явилася система SCons (версії 1.2.0), що використовує мову Python. З одного боку, це робить систему розширюваною, але з іншого — ускладнює її вивчення і використання, одночасно знижуючи швидкодію. Наприклад, для вирішення стандартних завдань доводиться використовувати «хитрий» код.
CMake ж написаний мовою C++ і використовує вкрай просту макромову. Водночас цієї мови виявляється достатньо для більшої частини завдань конфігурування. Окремі операції конфігурування реалізовані у вигляді модулів.
Також в CMake присутній варіант використання бібліотек з pkg-config[6].
Виноски
- ↑ https://cmake.org/
- ↑ https://cmake.org/cmake/help/latest/manual/cmake-gui.1.html
- ↑ https://cmake.org/runningcmake
- ↑ https://gitlab.kitware.com/cmake/cmake
- ↑ Ohloh Analysis Summary - CMake. Ohloh. Архів оригіналу за 22 січня 2014. Процитовано 25 грудня 2009.
- ↑ FindPkgConfig — CMake 3.28.1 Documentation. cmake.org. Процитовано 2 січня 2024.
Посилання
- Офіційний сайт