lëshimi i gjeneratorit të skenarëve të ndërtimit të platformave të hapura , vepruar si një alternativë për Autotools dhe i përdorur në projekte 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 të thjeshtë skenarësh, mjeteve për zgjerimin e funksionalitetit përmes moduleve, numrit minimal të varësive (nuk ka lidhje me M4, Perl ose Python), mbështetje për keq-kërkim, mjete për ndërtim të shumë-platformave, mbështetje për gjenerimin e skedarëve të ndërtimit për një gamë të gjerë sistemesh ndërtimi dhe kompilorë, si dhe mjeteve ctest dhe cpack për definimin e skenarëve të testimit dhe ndërtimit të paketave, mjeteve cmake-gui për konfigurimin interaktiv të parametrave të ndërtimit.
Ndryshimet kryesore :
- Shtimi i njĂ« gjeneratori tĂ« ri pĂ«r skenare ndĂ«rtimi me bazĂ« nĂ« mjetin Ninja â «Ninja Multi-Config», i cili diferencohet nga gjeneratori i vjetĂ«r me mundĂ«sinĂ« pĂ«r tĂ« menaxhuar disa konfigurime ndĂ«rtimi njĂ«kohĂ«sisht.
- Në gjeneratorin e skenarëve të ndërtimit për Visual Studio mundësia për të identifikuar skedarët me tekste burimi, të lidhur me secilën konfigurim (per-config sources).
- Në mjetet për konfigurimin e parametrave të kompilimit (Compile Features) është shtuar mundësia për të dhënë meta-parametra për CUDA («cuda_std_03», «cuda_std_14» etj.).
- Shtuar variablët «CMAKE_CUDA_RUNTIME_LIBRARY» dhe «CUDA_RUNTIME_LIBRARY» për të zgjedhur llojin e bibliotekave runtime kur përdorim CUDA.
- Shtuar moduli «FindCUDAToolkit» për të identifikuar mjetin CUDA të disponueshëm në sistem pa aktivizuar gjuhën CUDA.
- NĂ« utilitarin cmake Ă«shtĂ« shtuar komandĂ« «âdebug-find» pĂ«r tĂ« dhĂ«nĂ« diagnostifikim tĂ« lexueshĂ«m shtesĂ« gjatĂ« operacioneve tĂ« kĂ«rkimit. PĂ«r qĂ«llime tĂ« ngjashme Ă«shtĂ« shtuar variabla CMAKE_FIND_DEBUG_MODE.
- Në modulin «FindCURL» është shtuar mbështetje për kërkimin e mjeteve CURL përmes skedave të konfigurimit të gjeneruara nga cmake «CURLConfig.cmake». Për të çaktivizuar këtë sjellje është parashikuar variabla CURL_NO_CURL_CMAKE.
- Në modulin FindPython është shtuar mundësia për të kërkuar komponentë Python në ambientet virtuale të menaxhuara me «conda».
- NĂ« utilitarin ctest janĂ« shtuar opsionet «âno-tests=[error|ignore]» pĂ«r tĂ« pĂ«rcaktuar sjelljen nĂ« rastin e mungesĂ«s sĂ« testeve dhe «ârepeat» pĂ«r tĂ« vendosur kushtet pĂ«r rihapjen e testeve (until-pass, after-timeout).
- Siguruar transferimin e pronave të qëllimit të ndërtimit INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES dhe INTERFACE_LINK_DEPENDS në mesin e varësive të brendshme të biblioteka statike të ndërtuara.
- Kur përdoret mjeti MinGW, kërkimi i skedarëve DLL është çaktivizuar si parazgjedhje nga komanda find_library (në vend të kësaj, si parazgjedhje ëshë bërë një përpjekje për të importuar bibliotekat «.dll.a»).
- Logjika e zgjedhjes sĂ« utilitarit ninja nĂ« gjeneratorin Ninja tani nuk varet nga emri i skedarit ekzekutiv â pĂ«rdoret utilitari i parĂ« i gjetur ninja-build, ninja ose samu, i gjetur nĂ« rrugĂ«t e pĂ«rcaktuara pĂ«rmes variablĂ«s sĂ« mjedisit PATH.
- Në utilitarin cmake është shtuar komanda «-E rm», e cila mund të përdoret për të fshirë skedarë dhe katalogë në vend të komandave të veçuara «-E remove» dhe «-E remove_directory».
Burimi: opennet.ru
