X.Org Serverá Mesaá Lighttpdá systemdá GStreamerá Waylandá GNOME ááŸáá·áº GTK á ááá·áº ááá±á¬áá»ááºáá»á¬ážááᯠáááºáá±á¬ááºáááºá¡ááœáẠá¡áá¯á¶ážááŒá¯ááá·áº Meson 0.58 áááºáá±á¬ááºááŸá¯á áá áºá¡á¬áž áá¯ááºáá±ááá¯ááºáá«áááºá Meson áá¯ááºááᯠPython ááŒáá·áºáá±ážáá¬ážáá¬ážááŒá®áž Apache 2.0 ááá¯ááºá ááºá¡á±á¬ááºááœáẠááá¯ááºá ááºááá¬ážáááºá
Meson á á¡ááá ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯áááºážááá¯ááºááẠá¡áááºááŒá±ááœááºáá°ááŸá¯ááŸáá·áº á¡áá¯á¶ážááŒá¯áááœááºáá°ááŸá¯ááá¯á·ááŸáá·áºá¡áá° áá±á«ááºážá ááºáá¬ážáá±á¬ ááŒááºááŸá¯ááºážááŒáá·áº áááºáááºááŸá¯áá¯ááºáááºážá ááºááᯠáá¶á·ááá¯ážáá±ážáááºááŒá áºáááºá áááºáá®ážááá·áºá¡á á¬ážá áááºáá±á¬ááºááŸá¯ááẠáá°áááºážá¡ááá¯ááºáž Ninja toolkit ááᯠá¡áá¯á¶ážááŒá¯áá±á¬áºáááºáž xcode ááŸáá·áº VisualStudio áá²á·ááá¯á·áá±á¬ á¡ááŒá¬ážáá±á¬ backend áá»á¬ážááá¯áááºáž á¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá á áá áºááœáẠááŒáá·áºáá±ááŸá¯áá»á¬ážá¡ááœáẠáááºáá±á·áá»áºáá»á¬ážáááºáá±á¬ááºáááºá¡ááœáẠMeson ááá¯á¡áá¯á¶ážááŒá¯ááẠááá·áºá¡á¬áž ááœáá·áºááŒá¯ááá·áº áááºáááºáá¬ážááá·áº multi-platform ááŸá®ááá¯ááŸá¯ááá¯ááºááœááºáááááá¬áá áºáá¯ááŸááááºá á ááºážáá±ážááœá²á ááºážáá»ááºážáá»á¬ážááᯠááá¯ážááŸááºážáá±á¬ ááá¯ááááºáž-áá®ážááá·áºáá¬áá¬á áá¬ážááŒáá·áº áááºááŸááºáá¬ážááŒá®áž áááºážááá¯á·ááᯠá¡áá¯á¶ážááŒá¯áá°á០áá±á¬ááºážá áœá¬áááºááŸá¯ááá¯ááºáᬠáá¬ážáááºááá¯ááºááẠ(á á¬áá±ážááá¬áá»á¬ážá á¡áá°á¡áá¡áá áá±á¬á·ááºáá²áá±ážáá¬ážáá°ááẠá¡áááºážáá¯á¶áž á¡áá»áááºá¡ááá¯ááºážá¡áá¬áá áºáá¯á¡áá á ááºážáá»ááºážáá»á¬ážááᯠáá¯á¶ážá áœá²ááá·áºáááº)á
GCCá Clangá Visual Studio ááŸáá·áº á¡ááŒá¬ážáá±á¬ compilers áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á Linuxá Illumos/Solarisá FreeBSDá NetBSDá DragonFly BSDá Haikuá macOS ááŸáá·áº Windows ááá¯á·ááœáẠá¡ááŒááºá¡ááŸááºá á¯á ááºážááŒááºážááŸáá·áº áááºáá±á¬ááºááŒááºážááᯠáá¶á·ááá¯ážáá¬ážáá«áááºá Cá C++á Fortraná Java ááŸáá·áº Rust á¡áá«á¡ááẠá¡áá»áá¯ážáá»áá¯ážáá±á¬ áááá¯ááááºážáááºážáá¬áá¬á áá¬ážáá»á¬ážááŒáá·áº ááá±á¬áá»ááºáá»á¬ážááᯠáááºáá±á¬ááºááá¯ááºáááºá áá±á¬ááºáá¯á¶ážáááºáá±á¬ááºááŸá¯áá±á¬ááºááá¯ááºážááœáẠááŒá¯áá¯ááºáá¬ážáá±á¬ á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááŸáá·áº ááá¯ááºááá¯ááºáááºááá¯ááºááá·áº á¡á áááºá¡ááá¯ááºážáá»á¬ážááá¯áᬠááá¯ážááŒáŸáá·áºáááºáá±á¬ááºáá¯ááºááᯠáá¶á·ááá¯ážáá¬ážáááºá ááá°áá®áá±á¬áááºáááºážáá»ááºáá»á¬ážááœáẠáááºáá±á¬ááºááŸá¯ááᯠáá¯ááºáá±á¬ááºááŒááºážááŒáá·áº áá¯á¶ážááááºáá°áááºáá»áŸáá±á¬ áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠááŒá áºáá±á«áºá á±ááá·áº áááºááá²áá²áá¯ááºáá±á¬ááºááá¯ááºáá±á¬ áááºáá±á¬ááºááŸá¯áá»á¬ážááᯠáááºáá®ážáááºá¡ááœáẠMeson ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá
Meson 0.58 á á¡ááá áá®ááœááºáááºážáá áºááŸá¯áá»á¬áž
- Meson ááœáẠbuilt-in string formatting áá¯ááºáá±á¬ááºáá»ááºáá»á¬áž ááŸááááºá áá±á¬áºáááºáááºážáááºážááᯠáá±á«áºááá¯ááá·áºá¡á á¬ážá á¥ááá¬á¡á¬ážááŒáá·áºá "'A string @0@ ááᯠáá±á¬áºáááºáá¯ááºááá·áº @1@'.format(n,m)" á¡á á¬áž áááºááá¯ážáá»á¬ážááᯠááá¯ááºááá¯áẠá¡á á¬ážááá¯ážááá¯ááºáá«ááŒá®á áá±á¬áºáááºáá¯ááºááẠ@n@ á á¬ááŒá±á¬ááºážáá áºáᯠ@ m@'"á
- á¥ááá¬á "s = s.replace('aaa', 'bbb')" áá¯ááºáá±á¬ááºáá»ááºááᯠáá¯ááºáá±á¬ááºáááºá¡ááœáẠ"á¡á á¬ážááá¯áž" áááºážáááºážááᯠstring object áá»á¬ážáá²ááá¯á· áá±á«ááºážááá·áºáá¬ážáá«áááºá
- "foreach i : range(15)" áá²á·ááá¯á·áá±á¬ foreach i : range(XNUMX)" áá²á·ááá¯á·áá±á¬ á¡áá¬ááá¹áá¯áá áºáá¯ááᯠááŒááºáá±ážáááºá¡ááœáẠ"á¡ááœá¬á¡áá±áž(á áááºá áááºááá·áº[á á¡ááá·áº])" áá¯ááºáá±á¬ááºáá»ááºááᯠááá·áºááœááºážáá¬ážáááºá
- meson.add_devenv() áááºážáááºážááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºáá²á·ááŒá®ážá á¥ááá¬á¡á¬ážááŒáá·áºá "meson devenv" ááœáŸááºááŒá¬ážáá»ááºááᯠá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«ááœááºá ááááºá¡ááºáá»á¬ážáááºážááœáŸááºááá¯á· áááºážááŒá±á¬ááºážááŸáá·áº áááºáá»á¬áááºáá±á¬ áááºááºá»ááá·áºáá áºáá¯á¡á¬áž áááºááŸááºááẠáááºáááºážáá»ááºááŒá±á¬ááºážááœá²áá»ááºáá»á¬ážááᯠáááºááŸááºááẠáááºáááºážáá»ááºááŒá±á¬ááºážáá²ááá¯ááºáá±á¬ á¡áá¬áá áºáá¯ááᯠááá·áºááœááºážááœáá·áºááŒá¯áá¬ážáááºá
- ááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážáááºáááºážáá»ááºáá»á¬ážá¡ááœááºá á¡áááá·áºá¡áá áºáá áºáᯠá¡ááá¯ááŒá¯áá²á·áááº- âmeson devenv -C builddir [<command>]á áááºážááẠáááºáá±á¬ááºááŸá¯áááºážááœáŸáẠ(áááºáááºááŒááºážáááŸááá²) ááá±á¬áá»ááºáá»á¬ážááᯠá áááºááẠá á®á ááºáá¬ážááá·áº áááºáááºážáá»ááºááœáẠá¡áááá·áºááᯠrun ááẠááŒá áºááá¯ááºá á±áááºá
- áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá áá¶á·ááá¯ážáá±ážáá¬ážáá±á¬ compilers á¡á¬ážáá¯á¶ážááᯠáá¯ááºáá±á¬ááºáá±á¬á¡áá« "-pipe" option ááᯠááŒááºááœá¬ážááŒááºážááᯠáááºááœá¬ážáá«áááºá
- ááá±á¬áá»ááºááœá²áá»á¬ážá០meson.add_dist_script() áá±á«áºááá¯ááŒááºážááᯠááœáá·áºááŒá¯áá¬ážáááºá
- append() ááŸáá·áº prepend() áááºážáááºážáá»á¬ážááᯠáá°áá®áá±á¬áááºáááºážáá»ááº() á¡áá¬ááá¹áá¯ááœáẠá¡ááŒáááºáá±á«ááºážáá»á¬ážá áœá¬ áá¯ááºáá±á¬ááºááá¯ááºá á±áá«áááºá
- error() áá¯ááºáá±á¬ááºáá»ááºááẠá¡ááŒááºážá¡áá¯á¶áá áºáá¯áááºááá¯á (ááááá±ážáá»ááº() ááŸáá·áº áááºáá±á·áá»áº() ááŸáá·áº áááºáá°áááº) ááᯠáá±áá¬ááœááºáá áºáá¯ááŒáá·áº ááœá²áá¬ážáááºá
- ááá±á¬áá»ááºááœá²áá»á¬áž áááºáááºááŒááºážááᯠááœá±ážáá»ááºááŒááºážá០áá»á±á¬áºááẠ"--skip-subprojects" option ááᯠáááºááá·áºáá¬ážáááºá
áá®ážááŒá¬ážá¡á¬ážááŒáá·áºá Python á¡á
á¬áž C ááŒáá·áºáá±ážáá¬ážáá¬ážáá±á¬ Meson assembly script language ááᯠáááºáá±á¬ááºáááœááºáá°ááŒá®áž ááá¯ážááŸááºážáá±á¬á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ááá¯áááºáá®ážááẠáááºááœááºááá·áº Boson ááá±á¬áá»ááºááᯠáá»áœááºá¯ááºááá¯á· ááŸááºáá¬ážááá¯ááºáá«áááºá ááá±á¬áá»ááºááẠááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á áááŠážá¡ááá·áºááœáẠááŸááá±áá²ááŒá
áºááŒá®áž áá¯ááºáááºážááœááºááá±á¬áá»ááºáá»á¬áž á¡ááŒáá·áºá¡á
á¯á¶á¡ááœáẠá¡áááºááá·áºáááŒá
áºáá±ážáá«á áá¯ááºááᯠGPLv3 á¡á±á¬ááºááœáẠááá¯ááºá
ááºááá¬ážááẠ(áá°áááºáž Python Meson ááᯠApache 2.0 ááá¯ááºá
ááºá¡á±á¬ááºááœáẠááá¯ááºá
ááºááá¬ážáááº)á
source: opennet.ru