Itusilẹ eto eto Meson 0.51

atejade kọ eto Tu Meson 0.51, eyiti a lo lati kọ awọn iṣẹ akanṣe bii X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME ati GTK +. Awọn koodu Meson ti kọ ni Python ati pese iwe-aṣẹ labẹ Apache 2.0.

Ibi-afẹde bọtini ti idagbasoke Meson ni lati pese iyara giga ti ilana apejọ ni idapo pẹlu irọrun ati irọrun lilo. Dipo ṣiṣe IwUlO, ipilẹ aiyipada nlo ohun elo irinṣẹ Ninja, sugbon o tun ṣee ṣe lati lo miiran backends, gẹgẹ bi awọn xcode ati VisualStudio. Eto naa ni olutọju igbẹkẹle-pupọ ti a ṣe sinu rẹ ti o fun ọ laaye lati lo Meson lati kọ awọn idii fun awọn pinpin. Awọn ofin Apejọ ni pato ni ede ti o rọrun-pato-ašẹ, jẹ kika gaan ati oye si olumulo (gẹgẹbi a ti pinnu nipasẹ awọn onkọwe, olupilẹṣẹ yẹ ki o lo akoko ti o kere ju awọn ofin kikọ).

Akopọ-agbelebu ati ile lori Lainos, macOS ati Windows nipa lilo GCC, Clang, Studio Visual ati awọn akopọ miiran jẹ atilẹyin. O ṣee ṣe lati kọ awọn iṣẹ akanṣe ni ọpọlọpọ awọn ede siseto, pẹlu C, C ++, Fortran, Java ati Rust. Ipo kikọ afikun jẹ atilẹyin, ninu eyiti awọn paati nikan ti o ni ibatan taara si awọn ayipada ti a ṣe lati igba kikọ ti o kẹhin ti tun ṣe. Meson le ṣee lo lati ṣe ina awọn ile atunwi, ninu eyiti ṣiṣiṣẹ kọ ni awọn agbegbe oriṣiriṣi awọn abajade ni iran ti awọn faili ti o le ṣiṣẹ patapata.

akọkọ awọn imotuntun Meson 0.51:

  • Atilẹyin ti a ṣafikun fun ile sihin ti awọn iṣẹ akanṣe ti o lo awọn iwe afọwọkọ kọ CMake. Meson le ni bayi kọ awọn iṣẹ-ṣiṣe ti o rọrun taara (gẹgẹbi awọn ile-ikawe ẹyọkan) ni lilo module CMake, iru si awọn iṣẹ akanṣe boṣewa (pẹlu awọn iṣẹ abẹlẹ CMake ni a le gbe sinu itọsọna awọn iṣẹ akanṣe);
  • Fun gbogbo awọn olupilẹṣẹ ti a lo, idanwo alakoko wa nipasẹ apejọ ati ipaniyan ti awọn faili idanwo ti o rọrun (ṣayẹwo mimọ), ko ni opin si idanwo awọn asia ti olumulo pato fun awọn alakopọ-agbelebu (lati igba yii lọ, awọn olupilẹṣẹ abinibi si pẹpẹ lọwọlọwọ tun ṣayẹwo) .
  • Ṣafikun agbara lati ṣalaye awọn aṣayan laini aṣẹ ti a lo lakoko akojọpọ-agbelebu, pẹlu abuda nipa sisọ asọye pẹpẹ ṣaaju aṣayan naa. Ni iṣaaju, awọn aṣayan laini aṣẹ nikan bo awọn ile abinibi ati pe ko le ṣe pato fun akopọ-agbelebu. Awọn aṣayan laini aṣẹ ni bayi lo laibikita boya o n kọ ni abinibi tabi akopọ-agbelebu, ni idaniloju pe abinibi ati awọn ile-agbelebu gbe awọn abajade kanna jade;
  • Ṣe afikun agbara lati pato asia “--cross-faili” diẹ sii ju ẹẹkan lọ lori laini aṣẹ lati ṣe atokọ ọpọlọpọ awọn faili agbelebu;
  • Atilẹyin ti a ṣafikun fun olupilẹṣẹ ICL (Intel C / C ++ Compiler) fun Syeed Windows (ICL.EXE ati ifort);
  • Ṣe afikun atilẹyin ohun elo irinṣẹ akọkọ fun Sipiyu Xtensa (xt-xcc, xt-xc ++, xt-nm);
  • Ọna “get_variable” ti jẹ afikun si ohun “igbẹkẹle”, eyiti o fun ọ laaye lati gba iye ti oniyipada laisi akiyesi iru igbẹkẹle lọwọlọwọ (fun apẹẹrẹ, dep.get_variable(pkg-config: 'var- orukọ', cmake: 'COP_VAR_NAME));
  • Ṣafikun ariyanjiyan awọn aṣayan apejọ ibi-afẹde tuntun, “link_language”, lati sọ ni pato ede ti a lo nigbati o n pe ọna asopọ naa. Fun apẹẹrẹ, eto Fortran akọkọ le pe koodu C/C ++, eyiti yoo yan C/C ++ laifọwọyi nigbati o yẹ ki o lo ọna asopọ Fortran;
  • Mimu ti awọn asia iṣaju ilana CPPFLAGS ti yipada. Lakoko ti Meson ti fipamọ tẹlẹ CPPFLAGS ati awọn asia akojọpọ ede kan pato (CFLAGS, CXXFLAGS) lọtọ, wọn ti ni ilọsiwaju ni bayi ati pe awọn asia ti a ṣe akojọ si ni CPPFLAGS ni a lo bi orisun miiran ti awọn asia akopo fun awọn ede ti o ṣe atilẹyin wọn;
  • Ijade ti custom_target ati custom_target[i] le ṣee lo bi awọn ariyanjiyan ni link_with ati link_all mosi;
  • Awọn olupilẹṣẹ ni bayi ni agbara lati pato awọn igbẹkẹle afikun ni lilo aṣayan “igbẹkẹle” (fun apẹẹrẹ, monomono(program_runner, iṣelọpọ: ['@[imeeli ni idaabobo]'], gbarale: exe));
  • Ṣafikun aṣayan aimi kan lati wa_library lati gba wiwa laaye lati ni awọn ile-ikawe ti o sopọ mọ lainidi nikan;
  • Fun python.find_installation, agbara lati pinnu wiwa ti module Python ti a fun fun ẹya kan pato ti Python ti ni afikun;
  • Ṣafikun module tuntun riru-kconfig fun sisọ awọn faili kconfig;
  • Ṣafikun aṣẹ tuntun kan “subprojects foreach”, eyiti o gba aṣẹ pẹlu awọn ariyanjiyan ati ṣiṣe ni gbogbo awọn ilana ilana-ipin;

orisun: opennet.ru

Fi ọrọìwòye kun