Ukukhutshwa kweenkqubo zokwakha CMake 3.21 kunye neMeson 0.59

Inikezelwe kukukhutshwa kwe-cross-platform evulekileyo yokwakhiwa kwescript generator CMake 3.21, esebenza njengenye indlela ye-Autotools kwaye isetyenziswa kwiiprojekthi ezifana ne-KDE, LLVM/Clang, MySQL, MariaDB, ReactOS kunye neBlender. Ikhowudi ye-CMake ibhalwe kwi-C ++ kwaye isasazwe phantsi kwelayisensi ye-BSD.

I-CMake iphawuleka ngokubonelela ngolwimi olulula lokubhala, indlela yokwandisa ukusebenza ngeemodyuli, inani elincinci lokuxhomekeka (akukho nto ibophelelayo kwi-M4, i-Perl okanye i-Python), inkxaso ye-caching, ubukho bezixhobo zokudibanisa, inkxaso yokuvelisa ukwakha. iifayile kuluhlu olubanzi lweenkqubo zokwakha kunye nabaqulunqi, ubukho be-ctest kunye ne-cpack eziluncedo zokuchaza izikripthi zovavanyo kunye neepakethi zokwakha, i-cmake-gui utility yokuseta ngokudibeneyo iparameters zokwakha.

Uphuculo oluphambili:

  • Ukongezwa kwenkxaso epheleleyo ye-Heterogeneous-Computing Interface yokuThuthwa (HIP) ulwimi lweprogram, ulwimi lwe-C ++ olujoliswe ekwenzeni kube lula ukuguqula izicelo ze-CUDA kwikhowudi ye-C ++ ephathekayo.
  • Kongezwe ijenereyitha yeskripthi sokwakha seVisual Studio 17 2022, esekwe kwiVisual Studio 2022 Preview 1.1.
  • I-Makefile kunye ne-Ninja i-script generator generator zongeze i-C_LINKER_LAUNCHER kunye ne-CXX_LINKER_LAUNCHER izakhiwo, ezingasetyenziselwa ukuqalisa izixhobo ezincedisayo ezisungula ikhonkco, ezifana nabahlalutyi be-static. Umenzi wejeneretha uya kusebenzisa izinto eziluncedo ezikhankanyiweyo, ezidlulisa igama lomnxibelelanisi kunye neengxoxo zayo.
  • Kwiipropati "C_STANDARD" kunye ne "OBJC_STANDARD", kunye nakwizixhobo zokumisela iiparamitha ze-compiler (Iimpawu zokuQonganisa), inkxaso ye-C17 kunye ne-C23 yenkcazo yongezwe.
  • Inketho "-toolchain" yongezwe kwi-cmmake eluncedo > ukumisela indlela eya kwikhithi yezixhobo.
  • Iindidi zemiyalezo ebonisiweyo kwi-terminal ziphawuliwe.
  • Inkxaso eyongeziweyo ye-Fujitsu compiler.
  • Umyalelo othi "foreach()" uqinisekisa ukuba iinguqu zelophu zibekwe zodwa ngaphakathi kwiluphu.

Ukongezelela, sinokuqaphela ukukhululwa kwenkqubo yokwakha ye-Meson 0.59, esetyenziselwa ukwakha iiprojekthi ezifana ne-X.Org Server, i-Mesa, i-Lighttpd, i-systemd, i-GStreamer, i-Wayland, i-GNOME kunye ne-GTK. Ikhowudi ye-Meson ibhalwe kwi-Python kwaye ilayisenisi phantsi kwelayisensi ye-Apache 2.0. Ixhasa ukuhlanganiswa komnqamlezo kunye nokwakhiwa kweLinux, Illumos / Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS kunye neWindows usebenzisa iGCC, Clang, Visual Studio kunye nabanye abaqulunqi. Kunokwenzeka ukwakha iiprojekthi kwiilwimi ezahlukeneyo zokucwangcisa, kuquka iC, C ++, Fortran, Java kunye neRust. Endaweni yokwenza into eluncedo, i-Ninja toolkit isetyenziswa ngokungagqibekanga xa kusakhiwa, kodwa ezinye izinto ezingasemva ezifana ne-xcode kunye neVisualStudio nazo zingasetyenziswa.

Inkqubo inendawo eyakhelwe-ngaphakathi yokuxhomekeka kwiplatform evumela ukuba usebenzise iMeson ukwakha iipakethe zokusasazwa. Imithetho yeNdibano ichazwe kulwimi olulula lwe-domain-specific, ifundeka kakhulu kwaye iyaqondakala kumsebenzisi (njengoko kuhloswe ngababhali, umphuhlisi kufuneka achithe ubuncinci bexesha lokubhala imithetho). Imowudi yokwakha eyongeziweyo iyaxhaswa, apho kuphela amacandelo anxulumene ngokuthe ngqo notshintsho olwenziweyo ukusukela kulwakhiwo lokugqibela lwakhiwa ngokutsha. I-Meson inokusetyenziselwa ukuvelisa ulwakhiwo oluphinda-phindayo, apho ukusebenza kolwakhiwo kwiindawo ezahlukeneyo kubangela ukuveliswa kweefayile ezifanayo ngokupheleleyo.

Iinguqulelo eziphambili zeMeson 0.59:

  • Inkxaso eyongeziweyo yolwimi lweCython (uguqulelo oluphambili lwePython olujolise ekwenzeni lula ukudibanisa kunye nekhowudi yeC).
  • Amagama angundoqo afakwe "unescaped_variables" kunye "ne-unescaped_uninstalled_variables" ukuchaza izinto eziguquguqukayo kwi-pkgconfig ngaphandle kokubaleka izithuba ezinophawu "\".
  • Inkxaso eyongeziweyo ye-wrc (iWine Resource Compiler).
  • Ikhono lokuvelisa iiprojekthi ze-Visual Studio 2012 kunye ne-Visual Studio 2013 sele iphunyeziwe.
  • Yonke imiyalelo enxulumene ne-subproject ngoku yenza i-subproject nganye ngokuhambelana ngokuzenzekelayo. Inani leenkqubo ezihambelanayo lichongwa yiparamitha "--num-processes".

umthombo: opennet.ru

Yongeza izimvo