lëshimi i gjeneruesit të skenareve ndërtim kryq-platformë dhe të hapur , i cili shërben si një alternativë ndaj Autotools dhe përdoret në projekte të tilla si KDE, LLVM/Clang, MySQL, MariaDB, ReactOS dhe Blender. Kodi i CMake është shkruar në gjuhën C++ dhe shpërndahet nën licencën BSD.
CMake është i njohur për ofrimin e një gjuhe skenari të thjeshtë, mjeteve për zgjerimin e funksionalitetit përmes moduleve, një numri minimal të varësive (nuk ka varësi nga M4, Perl ose Python), mbështetje për pamjen e cache-it, disponimin e mjeteve për ndërkompilim, mbështetje për gjenerimin e skedave të ndërtimit për një gamë të gjerë sistemesh ndërtimi dhe kompilatorësh, mjeteve ctest dhe cpack për përcaktimin e skenarëve të testeve dhe ndërtimit të pakove, si dhe mjeteve cmake-gui për konfigurimin interaktiv të parametrave të ndërtimit.
Main :
- Shtoi i ri pĂ«r gjenerimin e skenareve tĂ« ndĂ«rtimit nĂ« bazĂ« tĂ« mjetit Ninja â "Ninja Multi-Config", i cili dallon nga gjeneratori i vjetĂ«r pĂ«r mundĂ«sinĂ« e trajtimit njĂ«kohĂ«sisht tĂ« disa konfiguracioneve tĂ« ndĂ«rtimit.
- Në gjeneratorin e skenareve të ndërtimit për Visual Studio mundësia e identifikimit të skedarëve me kod burimor të lidhur me çdo konfigurim (per-config sources).
- Në mjetet për konfigurimin e parametave të përpunimit (Compile Features) është shtuar mundësia e caktimit të meta-parametrave për CUDA ("cuda_std_03", "cuda_std_14" etj.).
- Janë shtuar variablat "CMAKE_CUDA_RUNTIME_LIBRARY" dhe "CUDA_RUNTIME_LIBRARY" për zgjedhjen e llojit të biblioteka runtime kur përdoret CUDA.
- ĂshtĂ« shtuar moduli "FindCUDAToolkit" pĂ«r identifikimin e mjetit tĂ« disponueshĂ«m CUDA nĂ« sistem pa pĂ«rfshirjen e gjuhĂ«s CUDA.
- NĂ« utilitarin cmake Ă«shtĂ« shtuar komandĂ«n "âdebug-find" pĂ«r tĂ« dalĂ« me diagnostikimin e lexueshĂ«m shtesĂ« gjatĂ« operacioneve tĂ« kĂ«rkimit. PĂ«r qĂ«llime tĂ« ngjashme Ă«shtĂ« shtuar variabla CMAKE_FIND_DEBUG_MODE.
- Në modulim "FindCURL" është shtuar mbështetje për kërkimin e mjetit CURL përmes skedarëve të konfiguratës së gjeneruar cmake "CURLConfig.cmake". Për të çaktivizuar këtë sjellje është parashikuar variabla CURL_NO_CURL_CMAKE.
- Në modulën FindPython është shtuar mundësia e kërkimit të komponenteve Python në ambientet virtuale, të menaxhuara përmes "conda".
- NĂ« utilitarin ctest janĂ« shtuar opsionet "âno-tests=[error|ignore]" pĂ«r pĂ«rcaktimin e sjelljes nĂ« rast mungese tĂ« testeve dhe "ârepeat" pĂ«r caktimin e kushteve tĂ« rinisjes sĂ« testeve (until-pass, after-timeout).
- ĂshtĂ« siguruar kalimi i pronave tĂ« objektit tĂ« ndĂ«rtimit INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES dhe INTERFACE_LINK_DEPENDS nĂ« numrin e varĂ«sive tĂ« brendshme tĂ« biblioteka statike tĂ« ndĂ«rtuara.
- Kur përdoret mjeti MinGW, është çaktivizuar kërkimi i skedarëve DLL nga komanda find_library (në vend të kësaj, tentativa e parë është importimi i bibliotekave ".dll.a").
- Logjika e zgjedhjes sĂ« utilitarit ninja nĂ« gjeneratorin Ninja tani nuk varet nga emri i skedarit ekzekutiv â pĂ«rdoret utilitari i parĂ« qĂ« gjendet ninja-build, ninja ose samu, i gjetur nĂ« rrugĂ«t e pĂ«rcaktuara pĂ«rmes variablĂ«s mjedisore PATH.
- Në utilitarin cmake është shtuar komandën "-E rm", e cila mund të përdoret për të fshirë skedarë dhe drejtime në vend të komanda të ndara "-E remove" dhe "-E remove_directory".
Burimi: opennet.ru
