CMake 3.17.0 build sistema rilaxx

Introdott rilaxx ta' ġeneratur ta' script ta' bini miftuħ fuq pjattaforma CMake 3.17, li taġixxi bħala alternattiva għall-Autotools u tintuża fi proġetti bħal KDE, LLVM/Clang, MySQL, MariaDB, ReactOS u Blender. Il-kodiċi CMake huwa miktub f'C++ u mqassam taħt il-liċenzja BSD.

CMake huwa notevoli li jipprovdi lingwa ta' skriptjar sempliċi, mezz biex testendi l-funzjonalità permezz ta' moduli, numru minimu ta' dipendenzi (l-ebda rabta ma' M4, Perl jew Python), appoġġ għall-caching, il-preżenza ta' għodod għall-kumpilazzjoni inkroċjata, appoġġ għall-ġenerazzjoni tal-bini fajls għal firxa wiesgħa ta 'sistemi ta' bini u kompilaturi, il-preżenza ctest u utilitajiet cpack għad-definizzjoni ta 'skripts tat-test u pakketti ta' bini, utilità cmake-gui għall-issettjar interattiv ta 'parametri ta' bini.

Il-prinċipali titjib:

  • Ġeneratur ġdid ta 'script ta' assemblaġġ ibbażat fuq il-kit ta 'għodda Ninja ġie miżjud - "Ninja Multi-Config", li huwa differenti mill-ġeneratur antik fil-kapaċità li jipproċessa diversi konfigurazzjonijiet ta' assemblaġġ f'daqqa.
  • Fil-ġeneratur tal-iskrittura tal-assemblaġġ għal Visual Studio deher l-abbiltà li tiddefinixxi fajls tas-sors assoċjati ma 'kull konfigurazzjoni (sorsi għal kull konfigurazzjoni).
  • Il-kapaċità li jiġu stabbiliti meta parametri għal CUDA (“cuda_std_03”, “cuda_std_14”, eċċ.) Ġiet miżjuda mal-għodod għall-issettjar tal-parametri tal-kompilatur (Kompila Karatteristiċi).
  • Miżjuda varjabbli "CMAKE_CUDA_RUNTIME_LIBRARY" u "CUDA_RUNTIME_LIBRARY" biex tagħżel it-tip ta 'libreriji ta' runtime meta tuża CUDA.
  • Żid il-modulu "FindCUDAToolkit" biex jiddetermina l-għodda CUDA disponibbli fis-sistema mingħajr ma tippermetti l-lingwa CUDA.
  • Miżjud "--debug-find" kmand biex cmake biex joħroġ dijanjostiċi addizzjonali li jistgħu jinqraw meta jwettqu operazzjonijiet ta 'tfittxija. Għal skopijiet simili, il-varjabbli CMAKE_FIND_DEBUG_MODE ġiet miżjuda.
  • Appoġġ miżjud għat-tiftix ta 'għodod CURL bl-użu ta' fajls ta 'konfigurazzjoni ġenerati minn cmake "CURLConfig.cmake" għall-modulu "FindCURL". Biex tiddiżattiva din l-imġiba, hija pprovduta l-varjabbli CURL_NO_CURL_CMAKE.
  • Il-modulu FindPython żied il-kapaċità li jfittex komponenti Python f'ambjenti virtwali ġestiti bl-użu ta '"conda".
  • L-utilità ctest żiedet l-għażliet “--no-tests=[żball|injora]” biex tiddefinixxi l-imġieba fil-każ ta’ ebda testijiet u “--repeat” biex tistabbilixxi l-kundizzjonijiet għat-testijiet mill-ġdid (sakemm jgħaddu, wara l-ħin).
  • Il-proprjetajiet tal-mira tal-assemblaġġ INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES u INTERFACE_LINK_DEPENDS issa huma trasferiti fost id-dipendenzi interni ta' libreriji assemblati b'mod statiku.
  • Meta tuża l-għodda tal-MinGW, it-tfittxija għal fajls DLL bil-kmand find_library hija diżattivata awtomatikament (minflok, it-tentattiv default huwa li timporta libreriji ".dll.a").
  • Il-loġika għall-għażla tal-utilità ninja fil-ġeneratur Ninja issa ma tiddependix fuq l-isem tal-fajl eżekutibbli - tintuża l-ewwel utilità ninja-build, ninja jew samu li tinsab fil-mogħdijiet definiti permezz tal-varjabbli tal-ambjent PATH.
  • Miżjud kmand "-E rm" għal cmake li jista 'jintuża biex jitneħħew fajls u direttorji minflok il-kmandi separati "-E remove" u "-E remove_directory".

Sors: opennet.ru

Żid kumment