Kutolewa kwa mfumo wa ujenzi wa CMake 3.15

ilifanyika kutolewa kwa jenereta ya hati ya ujenzi ya jukwaa-mbali CMake 3.15, ambayo hufanya kama njia mbadala ya Autotools na inatumika katika miradi kama vile KDE, LLVM/Clang, MySQL, MariaDB, ReactOS na Blender. Msimbo wa CMake umeandikwa katika C++ na kusambazwa chini ya leseni ya BSD.

CMake inajulikana kwa kutoa lugha rahisi ya uandishi, njia ya kupanua utendaji kupitia moduli, idadi ndogo ya utegemezi (hakuna kufungwa kwa M4, Perl au Python), usaidizi wa kache, uwepo wa zana za ujumuishaji, usaidizi wa kuunda muundo. faili za anuwai ya mifumo ya ujenzi na vikusanyaji, huduma za uwepo wa ctest na cpack za kufafanua hati za majaribio na vifurushi vya ujenzi, matumizi ya cmake-gui kwa kuweka vigezo vya ujenzi kwa mwingiliano.

kuu maboresho:

  • Usaidizi wa lugha ya awali umeongezwa kwa jenereta ya hati ya kujenga inayotokana na Ninja Swift, iliyotengenezwa na Apple;
  • Usaidizi ulioongezwa kwa lahaja ya kikusanyaji cha Clang cha Windows ambacho hujengwa na MSVC ABI, lakini hutumia chaguo za mstari wa amri za mtindo wa GNU;
  • Imeongeza vigeu vya CMAKE_MSVC_RUNTIME_LIBRARY na MSVC_RUNTIME_LIBRARY ili kuchagua maktaba za wakati wa utekelezaji zinazotumiwa na wakusanyaji kulingana na MSVC ABI (MS Visual Studio);
  • Kwa wakusanyaji kama vile MSVC, CMAKE__FLAGS kwa chaguomsingi huacha kuorodhesha bendera za udhibiti wa onyo kama vile "/W3";
  • Imeongeza usemi wa jenereta "COMPILE_LANG_AND_ID:" ili kufafanua chaguo za mkusanyaji wa faili lengwa, kwa kutumia CMAKE__COMPILER_ID na vigeu vya LANGUAGE kwa kila faili ya msimbo;
  • Katika maneno ya jenereta C_COMPILER_ID, CXX_COMPILER_ID,
    CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE,
    COMPILE_LANG_AND_ID na PLATFORM_ID waliongeza usaidizi wa kulinganisha thamani moja kwenye orodha ambayo vipengele vyake vimetenganishwa kwa koma;

  • Tofauti iliyoongezwa CMAKE_FIND_PACKAGE_PREFER_CONFIG ili kupiga simu find_package() kutafute faili ya usanidi ya kifurushi kwanza, hata kama kitafutaji kinapatikana;
  • Kwa maktaba ya kiolesura, usaidizi umeongezwa kwa ajili ya kuweka sifa za PUBLIC_HEADER na PRIVATE_HEADER, ambazo vichwa vinaweza kuwekwa kwa kutumia amri ya kusakinisha(TARGETS) kwa kupitisha hoja za PUBLIC_HEADER na PRIVATE_HEADER;
  • Imeongezwa CMAKE_VS_JUST_MY_CODE_DEBUGGING kigezo na sifa lengwa VS_JUST_MY_CODE_DEBUGGING ili kuwezesha hali ya "Msimbo Wangu Tu" katika Kitatuzi cha Visual Studio wakati wa kuandaa kwa kutumia MSVC cl 19.05 na matoleo mapya zaidi;
  • Moduli ya FindBoost imeundwa upya, ambayo sasa inafanya kazi kwa ukamilifu zaidi katika modi za Config na Moduli mbele ya moduli nyingine za utafutaji;
  • Ujumbe () amri sasa inasaidia aina NOTICE, VERBOSE,
    DEBUG na TRACE;

  • Amri ya "hamisha (PACKAGE)" sasa haifanyi chochote isipokuwa ikiwa imewashwa wazi kupitia kigezo cha CMAKE_EXPORT_PACKAGE_REGISTRY.

Chanzo: opennet.ru

Kuongeza maoni