Pagpagawas sa CMake 3.15 nga sistema sa pagtukod

nahitabo pagpagawas sa usa ka cross-platform open build script generator CMmake 3.15, nga naglihok isip alternatibo sa Autotools ug gigamit sa mga proyekto sama sa KDE, LLVM/Clang, MySQL, MariaDB, ReactOS ug Blender. Ang code sa CMake gisulat sa C++ ug giapod-apod ubos sa lisensya sa BSD.

Nailhan ang CMake sa paghatag ug yano nga sinultian nga scripting, usa ka paagi sa pagpalapad sa pagpaandar pinaagi sa mga module, gamay nga gidaghanon sa mga dependency (walay pagbugkos sa M4, Perl o Python), suporta sa pag-cache, ang presensya sa mga himan alang sa cross-compilation, suporta alang sa paghimo sa pagtukod mga file alang sa usa ka halapad nga mga sistema sa pagtukod ug mga compiler, ang presensya nga ctest ug cpack nga mga gamit alang sa pagtino sa mga script sa pagsulay ug mga pakete sa pagtukod, gamit sa cmake-gui alang sa interactive nga pagpahimutang sa mga parameter sa pagtukod.

nag-unang mga kalamboan:

  • Ang inisyal nga suporta sa pinulongan gidugang sa Ninja-based build script generator Swift, gimugna sa Apple;
  • Gidugang nga suporta alang sa usa ka variant sa Clang compiler alang sa Windows nga nagtukod uban sa MSVC ABI, apan naggamit sa GNU-style command line nga mga opsyon;
  • Gidugang ang CMAKE_MSVC_RUNTIME_LIBRARY ug MSVC_RUNTIME_LIBRARY nga mga variable aron mapili ang runtime nga mga librarya nga gigamit sa mga compiler base sa MSVC ABI (MS Visual Studio);
  • Para sa mga compiler sama sa MSVC, ang CMAKE__FLAGS sa default mohunong sa paglista sa mga flag control nga pasidaan sama sa "/ W3";
  • Gidugang ang usa ka ekspresyon sa generator nga "COMPILE_LANG_AND_ID:" aron mahibal-an ang mga kapilian sa compiler alang sa mga target nga file, gamit ang CMAKE__COMPILER_ID ug LANGUAGE nga mga variable alang sa matag code file;
  • Sa mga ekspresyon sa generator C_COMPILER_ID, CXX_COMPILER_ID,
    CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE,
    Ang COMPILE_LANG_AND_ID ug PLATFORM_ID midugang og suporta alang sa pagpares sa usa ka bili sa usa ka lista kansang mga elemento gibulag sa koma;

  • Gidugang nga variable CMAKE_FIND_PACKAGE_PREFER_CONFIG aron ang pagtawag sa find_package() pangitaon una ang configuration file sa package, bisan kung adunay usa ka finder;
  • Alang sa mga librarya sa interface, gidugang ang suporta alang sa pagpahimutang sa PUBLIC_HEADER ug PRIVATE_HEADER nga mga kabtangan, diin ang mga ulohan mahimong itakda gamit ang pag-install (TARGETS) nga mando pinaagi sa pagpasa sa PUBLIC_HEADER ug PRIVATE_HEADER nga mga argumento;
  • Gidugang ang CMAKE_VS_JUST_MY_CODE_DEBUGGING variable ug target property VS_JUST_MY_CODE_DEBUGGING aron mahimo ang "Just My Code" mode sa Visual Studio debugger kung mag-compile gamit ang MSVC cl 19.05 ug mas bag-ong mga bersyon;
  • Ang module sa FindBoost gidesinyo pag-usab, nga karon nagtrabaho nga mas holistically sa Config ug Module mode sa presensya sa ubang mga search modules;
  • Ang mensahe () nga sugo karon nagsuporta sa mga tipo nga NOTICE, VERBOSE,
    DEBUG ug TRACE;

  • Ang "export(PACKAGE)" nga sugo wala nay mahimo gawas kon klaro nga gipagana pinaagi sa CMAKE_EXPORT_PACKAGE_REGISTRY variable.

Source: opennet.ru

Idugang sa usa ka comment