I-CMake iphawuleka ngokubonelela ngolwimi olulula lokubhala, indlela yokwandisa ukusebenza ngeemodyuli, inani elincinci lokuxhomekeka (akukho nto ibophelelayo kwi-M4, i-Perl okanye i-Python), inkxaso ye-caching, ubukho bezixhobo zokudibanisa, inkxaso yokuvelisa ukwakha. iifayile kuluhlu olubanzi lweenkqubo zokwakha kunye nabaqulunqi, ubukho be-ctest kunye ne-cpack eziluncedo zokuchaza izikripthi zovavanyo kunye neepakethi zokwakha, i-cmake-gui utility yokuseta ngokudibeneyo iparameters zokwakha.
Siseko
- Inkxaso yolwimi lokuqala yongezwe kwi-Ninja-based build script generator
Swift , iphuhliswe nguApple; - Inkxaso eyongeziweyo yomahluko we Clang compiler ye Windows eyakha nge MSVC ABI, kodwa isebenzisa iinketho zelayini yomyalelo yesimbo seGNU;
- Kongezwe i-CMAKE_MSVC_RUNTIME_LIBRARY kunye ne-MSVC_RUNTIME_LIBRARY eguquguqukayo ukukhetha iilayibrari zexesha lokusebenza ezisetyenziswa ngabaqulunqi ngokusekelwe kwi-MSVC ABI (MS Visual Studio);
- Kubaqulunqi abafana noMSVC, CMAKE__FLAGS ngokungagqibekanga iyeke ukudwelisa iiflegi zolawulo lwesilumkiso ezifana ne "/W3";
- Yongeza intetho yomvelisi "COMPILE_LANG_AND_ID:" ukuchaza iinketho zomqokeleli kwiifayile ekujoliswe kuzo, kusetyenziswa iCMAKE__COMPILER_ID kunye LANGUAGE ezahlukeneyo kwifayile yekhowudi nganye;
- Kwintetho yomvelisi C_COMPILER_ID, CXX_COMPILER_ID,
CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE,
COMPILE_LANG_AND_ID kunye ne-PLATFORM_ID yongeze inkxaso yokuthelekisa ixabiso elinye kuluhlu olunezici zalo ezahlulwe ngesiphumlisi; - Uguqulo olongeziweyo CMAKE_FIND_PACKAGE_PREFER_CONFIG ukuze ukufowuna find_package() ikhangele ifayile yoqwalaselo yempahla kuqala, nokuba umfumani ukhona;
- Kujongano lwamathala eencwadi, inkxaso yongeziwe yokucwangcisa i PUBLIC_HEADER kunye ne PRIVATE_HEADER iipropati, apho iiheader zingasetwa kusetyenziswa i-install(TARGETS) umyalelo ngokudlula iPUBLIC_HEADER kunye PRIVATE_HEADER iingxoxo;
- Yongezwe i-CMAKE_VS_JUST_MY_CODE_DEBUGGING eguquguqukayo kunye nepropati ekujoliswe kuyo VS_JUST_MY_CODE_DEBUGGING ukwenza ukuba imo ye-"Just My Code" kwi-Visual Studio debugger xa uqulunqa usebenzisa i-MSVC cl 19.05 kunye neenguqulelo ezintsha;
- Imodyuli yeFindBoost yenziwe ngokutsha, esebenza ngokugqibeleleyo ngakumbi kwiimodyuli zeConfig kunye neModyuli kubukho bezinye iimodyuli zokukhangela;
- Umyalezo () umyalelo ngoku uxhasa iintlobo ISAZISO, VERBOSE,
DEBUG kunye ne-TRACE; - Umyalelo "wokurhweba ngaphandle(PACKAGE)" ngoku awenzi nto ngaphandle kokuba yenziwe ngokucacileyo ngokutshintsha kweCMAKE_EXPORT_PACKAGE_REGISTRY.
umthombo: opennet.ru