Rhyddhau system adeiladu CMake 3.15

cymryd lle rhyddhau generadur sgript adeiladu agored traws-lwyfan CMake 3.15, sy'n gweithredu fel dewis arall yn lle Autotools ac a ddefnyddir mewn prosiectau fel KDE, LLVM / Clang, MySQL, MariaDB, ReactOS a Blender. Mae'r cod CMake wedi'i ysgrifennu yn C++ a'i ddosbarthu o dan y drwydded BSD.

Mae CMake yn nodedig am ddarparu iaith sgriptio syml, ffordd o ymestyn ymarferoldeb trwy fodiwlau, nifer fach iawn o ddibyniaethau (dim rhwymo i M4, Perl na Python), cefnogaeth caching, presenoldeb offer ar gyfer traws-grynhoi, cefnogaeth ar gyfer cynhyrchu adeiladu ffeiliau ar gyfer ystod eang o systemau adeiladu a chasglwyr, y ctest presenoldeb a chyfleustodau cpack ar gyfer diffinio sgriptiau prawf a phecynnau adeiladu, cyfleustodau cmake-gui ar gyfer gosod paramedrau adeiladu yn rhyngweithiol.

Y prif gwelliannau:

  • Mae cymorth iaith cychwynnol wedi'i ychwanegu at y generadur sgript adeiladu yn seiliedig ar Ninja Cyflym, a ddatblygwyd gan Apple;
  • Cefnogaeth ychwanegol ar gyfer amrywiad o'r casglwr Clang ar gyfer Windows sy'n adeiladu gyda'r MSVC ABI, ond sy'n defnyddio opsiynau llinell orchymyn arddull GNU;
  • Ychwanegwyd newidynnau CMAKE_MSVC_RUNTIME_LIBRARY ac MSVC_RUNTIME_LIBRARY i ddewis llyfrgelloedd amser rhedeg a ddefnyddir gan gasglwyr yn seiliedig ar yr MSVC ABI (MS Visual Studio);
  • Ar gyfer casglwyr fel MSVC, mae CMAKE__FLAGS yn ddiofyn yn stopio rhestru baneri rheoli rhybuddio fel "/W3";
  • Wedi ychwanegu ymadrodd generadur "COMPILE_LANG_AND_ID:" i ddiffinio opsiynau casglwr ar gyfer ffeiliau targed, gan ddefnyddio'r newidynnau CMAKE__COMPILER_ID a LANGUAGE ar gyfer pob ffeil cod;
  • Yn yr ymadroddion generadur C_COMPILER_ID, CXX_COMPILER_ID,
    CUDA_COMPILER_ID , Fortran_COMPILER_ID , COMPILE_LANGUAGE ,
    Ychwanegodd COMPILE_LANG_AND_ID a PLATFORM_ID gefnogaeth ar gyfer paru gwerth sengl i restr y mae ei elfennau wedi'u gwahanu gan atalnod;

  • Ychwanegwyd newidyn CMAKE_FIND_PACKAGE_PREFER_CONFIG fel y bydd ffonio find_package() yn chwilio am ffeil ffurfweddu'r pecyn yn gyntaf, hyd yn oed os oes darganfyddwr ar gael;
  • Ar gyfer llyfrgelloedd rhyngwyneb, mae cefnogaeth wedi'i hychwanegu ar gyfer gosod priodweddau PUBLIC_HEADER a PRIVATE_HEADER, y gellir gosod penawdau gan ddefnyddio'r gorchymyn gosod (TARGETS) trwy basio'r dadleuon PUBLIC_HEADER a PRIVATE_HEADER;
  • Ychwanegwyd CMAKE_VS_JUST_MY_CODE_DEBUGGING newidyn ac eiddo targed VS_JUST_MY_CODE_DEBUGGING i alluogi modd "Just My Code" yn y dadfygiwr Visual Studio wrth lunio gan ddefnyddio MSVC cl 19.05 a fersiynau mwy newydd;
  • Mae'r modiwl FindBoost wedi'i ailgynllunio, sydd bellach yn gweithio'n fwy cyfannol mewn dulliau Ffurfweddu a Modiwl ym mhresenoldeb modiwlau chwilio eraill;
  • Mae'r gorchymyn neges () bellach yn cefnogi'r mathau NOTICE, VERBOSE,
    DEBUG a TRACE;

  • Nid yw'r gorchymyn "allforio (PACKAGE)" bellach yn gwneud dim oni bai ei fod wedi'i alluogi'n benodol trwy'r newidyn CMAKE_EXPORT_PACKAGE_REGISTRY.

Ffynhonnell: opennet.ru

Ychwanegu sylw