Meson build system release 1.0

O le Meson 1.0.0 build system ua tuʻuina atu, lea e faʻaaogaina e fausia ai galuega e pei o le X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME ma GTK. O le code a Meson e tusia i le Python ma ua laiseneina i lalo ole laisene Apache 2.0.

O le sini autu o le atinaʻeina o Meson o le tuʻuina atu lea o le saoasaoa maualuga o le faʻapotopotoga faʻatasi ma le faʻaogaina ma le faigofie o le faʻaogaina. Nai lo le faʻaaogaina, o le Ninja toolkit e faʻaaogaina e ala i le le mafai ona fausia, ae o isi pito i tua e pei o le xcode ma VisualStudio e mafai foi ona faʻaaogaina. O le faiga o lo'o i ai se fa'apipi'i fa'alagolago i le tele-platform e mafai ai ona e fa'aogaina Meson e fau ai afifi mo tufatufaga. O tulafono fa'apotopotoga o lo'o fa'amaoti mai i se gagana fa'apitoa fa'apitoa, e matua'i faitau ma malamalama i ai le tagata fa'aoga (e pei ona fa'amoemoeina e le au tusitala, e tatau i le tagata atia'e ona fa'aalu sina taimi itiiti e tusitusi ai tulafono).

Lagolago le faʻapipiʻi faʻasolosolo ma le fausiaina i luga o Linux, Illumos / Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS ma Windows e faʻaaoga ai le GCC, Clang, Visual Studio ma isi tagata faʻapipiʻi. E mafai ona fausia galuega i gagana eseese polokalame, e aofia ai C, C ++, Fortran, Java ma Rust. O lo'o lagolagoina le faiga fa'aopoopo, lea e na'o vaega e feso'ota'i sa'o ma suiga na faia talu mai le fale mulimuli e toe fau. E mafai ona fa'aogaina Meson e fa'atupu ai le toe fa'afo'iina o fale, lea o lo'o fa'atinoina ai le fausiaina i totonu o si'osi'omaga eseese e maua ai le fa'atupuina o faila fa'atino tutusa.

Faiga fou a Meson 1.0:

  • O se module mo galuega faufale i le gagana Rust ua fa'ailoaina mautu. O lo'o fa'aogaina lenei module i le poloketi Mesa e fausia ai vaega o lo'o tusia i le Rust.
  • O le filifiliga prefix, e lagolagoina i le tele o galuega su'esu'e tu'ufa'atasi, e maua ai le tomai e fa'atautaia ai fa'asologa fa'aopoopo i manoa. Mo se fa'ata'ita'iga, e mafai nei ona e fa'ama'oti: cc.check_header('GL/wglew.h', prefix : ['#include ', '#fa'aofia '])
  • Fa'aopoopoina le finauga fou "--workdir" e fa'ataga ai le fa'aogaina o le lisi galue. Mo se faʻataʻitaʻiga, e faʻaaoga le lisi o loʻo i ai nei nai lo le tusi faigaluega, e mafai ona e tamoe: meson devenv -C builddir --workdir .
  • O tagata fa'aoga fou "i" ma le "leai i totonu" ua fa'atulagaina e fuafua ai le tupu mai o se substring i totonu o se manoa, e tutusa ma le siaki na maua muamua mo le tupu mai o se elemene i se laina po'o se lomifefiloi. Mo se fa'ata'ita'iga: fs = fa'aulufale mai('fs') pe afai 'se mea' ile fs.read('somefile') # Moni endif
  • Faʻaopoopo le filifiliga "lapataiga-tulaga = mea uma", lea e faʻaalia ai le gaioiga o lapataiga faʻapipiʻi avanoa uma (i le clang ma le MSVC o loʻo faʻaaogaina -Weverything ma / Wall, ma i le GCC lapataiga e aofia eseese, e tusa ma le -Weverything. ala i le tagitagi).
  • O le auala rust.bindgen e faʻaaogaina ai le mafai ona taulimaina le "dependencies" finauga e pasi ai auala i faʻalagolago e tatau ona faʻatautaia e le tagata faʻapipiʻi.
  • O le galuega java.generate_native_headers ua le toe fa'aaogaina ma toe fa'aigoa i le java.native_headers e fa'atatau i le faiga masani a Meson.

puna: opennet.ru

Faaopoopo i ai se faamatalaga