Meson ngawangun sistem release 0.58. Proyék pikeun nyiptakeun palaksanaan Meson dina basa C

Pelepasan sistem ngawangun Meson 0.58 parantos diterbitkeun, anu dianggo pikeun ngawangun proyék sapertos X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME sareng GTK. Kodeu Meson ditulis dina Python sareng dilisensikeun dina lisénsi Apache 2.0.

Tujuan pangwangunan konci Meson nyaéta pikeun nyayogikeun prosés assembly speed tinggi digabungkeun jeung genah tur betah pamakéan. Gantina nyieun, ngawangun ngagunakeun Ninja toolkit sacara standar, tapi backends lianna kayaning xcode na VisualStudio ogé bisa dipaké. Sistim nu boga multi-platform handler kagumantungan diwangun-di nu ngidinan Anjeun pikeun make Meson ngawangun bungkusan keur sebaran. Aturan Majelis diatur dina basa domain-spésifik disederhanakeun, aranjeunna ogé bisa dibaca tur kaharti ku pamaké (nurutkeun pamanggih pangarang ', pamekar kudu méakkeun minimum aturan nulis waktu).

Kompilasi silang sareng ngawangun dina Linux, Illumos / Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS sareng Windows nganggo GCC, Clang, Visual Studio sareng kompiler sanésna dirojong. Kasebut nyaéta dimungkinkeun pikeun ngawangun proyék dina sagala rupa basa programming, kaasup C, C ++, Fortran, Java jeung Rust. Modeu ngawangun incremental dirojong, dimana ngan ukur komponén anu aya hubunganana langsung sareng parobihan anu dilakukeun ti saprak ngawangun terakhir anu diwangun deui. Meson tiasa dianggo pikeun ngahasilkeun gedong anu tiasa diulang, dimana ngajalankeun gedong dina lingkungan anu béda-béda nyababkeun executable anu idéntik.

Inovasi utama Meson 0.58:

  • Basa Meson ngagaduhan operasi pormat string anu diwangun. Gantina nelepon metodeu format, ayeuna anjeun tiasa ngagantikeun nilai langsung, contona, tinimbang "'A string @0@ diformat @1@'.format(n,m)" anjeun bisa langsung nangtukeun "f' String @n@ bakal diformat @ m@'".
  • Metodeu "ngaganti" geus ditambahkeun kana objék string pikeun ngalakukeun operasi ngagantian hiji substring jeung sejen, contona, "s = s.replace ('aaa', 'bbb')".
  • Ditambahkeun "rentang (mimiti, eureun [, hambalan])" fungsi pikeun balik hiji obyék nu bisa dipaké dina loop "foreach", kayaning "foreach i: rentang (15)".
  • Meson.add_devenv () métode geus dilaksanakeun, ngamungkinkeun Anjeun pikeun nambahkeun hiji lingkungan () objék pikeun set variabel lingkungan bari maké paréntah "meson devenv", Contona, pikeun set hiji variabel lingkungan jeung jalur ka diréktori plugins.
  • Pikeun lingkungan pangwangunan, paréntah anyar "meson devenv -C builddir [<paréntah>]" diusulkeun, anu ngamungkinkeun pikeun ngajalankeun paréntah dina lingkungan anu dikonpigurasi pikeun ngajalankeun proyék tina diréktori ngawangun (tanpa instalasi).
  • Sacara standar, teu aya pilihan "-pipe" anu diliwatan nalika ngamimitian sadaya kompiler anu dirojong.
  • Ngidinan meson.add_dist_script () disebut ti subprojects.
  • Disadiakeun kamampuhan pikeun ngajalankeun append () sarta prepend () métode sababaraha kali dina lingkungan anu sarua () objék.
  • Leuwih ti hiji argumen spasi-dipisahkeun diwenangkeun dina kasalahan () fungsi (sarupa warning () jeung pesen ()).
  • Ditambahkeun "--skip-subprojects" pilihan pikeun selektif skip masang subprojects.

Catetan khusus nyaéta proyék Boson, anu ditujukeun pikeun nyiptakeun palaksanaan portabel sareng saderhana tina basa skrip assembly Meson, ditulis dina C tinimbang Python. Proyék ieu masih dina tahap awal pangwangunan sareng henteu acan siap pikeun majelis pinuh ku proyék kerja. Kodeu disebarkeun dina lisénsi GPLv3 (Python Meson aslina asalna dina lisénsi Apache 2.0).

sumber: opennet.ru

Tambahkeun komentar