Rakirina pergala avakirina CMake 3.17.0

Nasandin serbestberdana çêkerek skrîptê ya avakirina vekirî ya cross-platform CMake 3.17, ku wekî alternatîfek Autotools tevdigere û di projeyên wekî KDE, LLVM/Clang, MySQL, MariaDB, ReactOS û Blender de tê bikar anîn. Koda CMake di C ++ de hatî nivîsandin û di bin lîsansa BSD de tê belav kirin.

CMake ji ber peydakirina zimanek nivîsandinê yê hêsan, navgînek dirêjkirina fonksiyonê bi modulan, hejmarek hindik ve girêdayî ye (bê girêdana M4, Perl an Python), piştgirîya cachkirinê, hebûna amûrên ji bo berhevkirina xaçê, piştgirî ji bo çêkirina çêkirinê. pelên ji bo cûrbecûr pergalên çêkirinê û berhevkeran, hebûna ctest û amûrên cpack ji bo danasîna skrîptên ceribandinê û avakirina pakêtan, amûra cmake-gui ji bo sazkirina înteraktîf parametreyên avakirinê.

sereke serrastkirinî:

  • Hilberînerek nû ya skrîptê ya meclîsê li ser bingeha amûra Ninja-yê hatî zêdekirin - "Ninja Multi-Config", ku ji jeneratorê kevin di şiyana ku meriv bi yekcarî çend mîhengên meclîsê bişopîne cihê ye.
  • Di jeneratorê skrîpta civînê de ji bo Visual Studio xuya kirin şiyana pênasekirina pelên çavkaniyê yên ku bi her veavakirinê re têkildar in (çavkaniyên per-config).
  • Kapasîteya danîna parametreyên meta ji bo CUDA ("cuda_std_03", "cuda_std_14", hwd.) li amûrên danîna parametreyên berhevkerê (Taybetmendiyên Berhevkar) zêde bûye.
  • Guherbarên "CMAKE_CUDA_RUNTIME_LIBRARY" û "CUDA_RUNTIME_LIBRARY" lê ​​zêde kirin ku dema ku CUDA bikar tînin cureyê pirtûkxaneyên dema xebitandinê hilbijêrin.
  • Modula "FindCUDAToolkit" lê zêde kir da ku amûra CUDA ya ku li ser pergalê heye bêyî ku zimanê CUDA çalak bike diyar bike.
  • Fermana "--debug-find" li cmake lê zêde kir da ku dema ku xebatên lêgerînê pêk tînin teşhîsên din ên xwendinê derxîne. Ji bo armancên wekhev, guhêrbar CMAKE_FIND_DEBUG_MODE hate zêdekirin.
  • Piştgiriyek ji bo lêgerîna amûrên CURL-ê bi karanîna pelên mîhengê yên ji hêla cmake ve hatî çêkirin "CURLConfig.cmake" li modula "FindCURL" zêde kir. Ji bo neçalakkirina vê tevgerê, guhêrbara CURL_NO_CURL_CMAKE tê peyda kirin.
  • Modula FindPython şiyana lêgerîna pêkhateyên Python li hawîrdorên virtual ku bi karanîna "conda" têne rêve kirin zêde kiriye.
  • Bikarhênera ctest vebijarkên "--no-tests=[çewtî|negerandin]" lê zêde kiriye da ku tevgerê di rewşa bê ceribandinê de destnîşan bike û "--dubare" bike da ku şertên ji nû ve meşandina ceribandinan destnîşan bike (heta ku derbas bibe, paş-demê).
  • Taybetmendiyên mebesta kombûnê INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES û INTERFACE_LINK_DEPENDS naha di nav girêdanên hundurîn ên pirtûkxaneyên statîk hatine berhev kirin de têne veguheztin.
  • Dema ku amûra MinGW bikar bînin, lêgerîna pelên DLL-ê bi fermana find_library ji hêla xwerû ve tê neçalak kirin (li şûna wê, hewildana xwerû têxistina pirtûkxaneyên ".dll.a" ye).
  • Mantiqa hilbijartina kargêriya ninja di jeneratorê Ninja de naha bi navê pelê darvekirî ve girêdayî nabe - yekem-avakirina ninja, ninja an samûyê ku di rêyên ku di nav guhêrbara jîngehê PATH de hatine destnîşankirin tê bikar anîn.
  • Fermanek "-E rm" li cmake zêde kir ku dikare were bikar anîn ji bo rakirina pel û peldankan li şûna fermanên cûda "-E jêbirin" û "-E remove_directory".

Source: opennet.ru

Add a comment