ืžืขืœื“ื•ื ื’ ืคื•ืŸ ื“ื™ ืžืขืกืึธืŸ 0.58 ืคึฟืึทืจื–ืึทืžืœื•ื ื’ ืกื™ืกื˜ืขื. ืคึผืจืึธื™ืขืงื˜ ืฆื• ืฉืึทืคึฟืŸ ืึทืŸ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ Meson ืื™ืŸ C ืฉืคึผืจืึทืš

ื“ื™ ืžืขืกืึธืŸ 0.58 ื‘ื•ื™ืขืŸ ืกื™ืกื˜ืขื ืื™ื– ื‘ืืคืจื™ื™ื˜, ื•ื•ืึธืก ืื™ื– ื’ืขื ื•ืฆื˜ ืฆื• ื‘ื•ื™ืขืŸ ืคึผืจืึทื“ื–ืฉืขืงืก ืึทื–ืึท ื•ื•ื™ X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME ืื•ืŸ GTK. Meson ืก ืงืึธื“ ืื™ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ ืื•ืŸ ืื™ื– ืœื™ื™ืกืึทื ืกื˜ ืื•ื ื˜ืขืจ ื“ื™ Apache 2.0 ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ.

ื“ืขืจ ืฉืœื™ืกืœ ืฆื™ืœ ืคื•ืŸ Meson ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืื™ื– ืฆื• ืฆื•ืฉื˜ืขืœืŸ ื”ื•ื™ืš ื’ื™ื›ืงื™ื™ึทื˜ ืคื•ืŸ ื“ื™ ืคึฟืึทืจื–ืึทืžืœื•ื ื’ ืคึผืจืึธืฆืขืก ืงืึทืžื‘ื™ื™ื ื“ ืžื™ื˜ ืงืึทื ื•ื•ื™ื ื™ืึทื ืก ืื•ืŸ ื™ื– ืคื•ืŸ ื ื•ืฆืŸ. ืึทื ืฉื˜ืึธื˜ ื“ื™ ืžืึทื›ืŸ ื ื•ืฆืŸ, ื“ื™ Ninja Toolkit ืื™ื– ื’ืขื ื™ืฆื˜ ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜ ื•ื•ืขืŸ ื‘ื ื™ืŸ, ืึธื‘ืขืจ ืื ื“ืขืจืข ื‘ืึทืงืขื ื“ื– ืึทื–ืึท ื•ื•ื™ xcode ืื•ืŸ VisualStudio ืงืขื ืขืŸ ืื•ื™ืš ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜. ื“ื™ ืกื™ืกื˜ืขื ื”ืื˜ ืึท ื’ืขื‘ื•ื™ื˜-ืื™ืŸ ืžื•ืœื˜ื™-ืคึผืœืึทื˜ืคืึธืจืžืข ื“ืขืคึผืขื ื“ืขื ืกื™ ื”ืึทื ื“ืœืขืจ ื•ื•ืึธืก ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื ื•ืฆืŸ Meson ืฆื• ื‘ื•ื™ืขืŸ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืคึฟืึทืจ ื“ื™ืกื˜ืจื™ื‘ื™ื•ืฉืึทื ื–. ืคึฟืึทืจื–ืึทืžืœื•ื ื’ ื›ึผืœืœื™ื ื–ืขื ืขืŸ ืกืคึผืขืกื™ืคื™ืขื“ ืื™ืŸ ืึท ืกื™ืžืคึผืœืึทืคื™ื™ื“ ืคืขืœื“-ืกืคึผืขืฆื™ืคื™ืฉ ืฉืคึผืจืึทืš, ื–ืขื ืขืŸ ื”ืขื›ืกื˜ ืœื™ื™ื ืขื•ื•ื“ื™ืง ืื•ืŸ ืคืึทืจืฉื˜ื™ื™ื™ืง ืคึฟืึทืจ ื“ืขืจ ื‘ืึทื ื™ืฆืขืจ (ื•ื•ื™ ื‘ื“ืขื” ื“ื•ืจืš ื“ื™ ืžื—ื‘ืจื™ื, ื“ืขืจ ื“ืขื•ื•ืขืœืึธืคึผืขืจ ื–ืึธืœ ืคืึทืจื‘ืจืขื ื’ืขืŸ ืึท ืžื™ื ื™ืžื•ื ืคื•ืŸ ืฆื™ื™ื˜ ืฆื• ืฉืจื™ื™ื‘ืŸ ื›ึผืœืœื™ื).

ืฉื˜ื™ืฆื˜ ืงืจื™ื™ึทื– ื–ืึทืžืœื•ื ื’ ืื•ืŸ ื‘ื ื™ืŸ ืื•ื™ืฃ ืœื™ื ื•ืงืก, Illumos / Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS ืื•ืŸ Windows ื ื™ืฆืŸ GCC, Clang, Visual Studio ืื•ืŸ ืื ื“ืขืจืข ืงืึธืžืคึผื™ืœืขืจืก. ืขืก ืื™ื– ืžืขื’ืœืขืš ืฆื• ื‘ื•ื™ืขืŸ ืคึผืจืึทื“ื–ืฉืขืงืก ืื™ืŸ ืคืึทืจืฉื™ื“ืŸ ืคึผืจืึธื’ืจืึทืžืžื™ื ื’ ืฉืคึผืจืึทื›ืŸ, ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ C, C ++, Fortran, Java ืื•ืŸ Rust. ื™ื ืงืจืขืžืขื ื˜ืึทืœ ื‘ื•ื™ืขืŸ ืžืึธื“ืข ืื™ื– ื’ืขืฉื˜ื™ืฆื˜, ืื™ืŸ ื•ื•ืึธืก ื‘ืœื•ื™ื– ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ื’ืœื™ื™ึทืš ืฉื™ื™ึทื›ื•ืช ืฆื• ืขื ื“ืขืจื•ื ื’ืขืŸ ื’ืขืžืื›ื˜ ื–ื™ื ื˜ ื“ื™ ืœืขืฆื˜ืข ื‘ื•ื™ืขืŸ ื–ืขื ืขืŸ ืจื™ื‘ื™ืœื˜. ืžืขืกืึธืŸ ืงืขื ืขืŸ ื•ื•ืขืจืŸ ื’ืขื ื•ืฆื˜ ืฆื• ื“ื–ืฉืขื ืขืจื™ื™ื˜ ืจื™ืคึผื™ื˜ืึทื‘ืึทืœ ื‘ื•ื™ืขืŸ, ืื™ืŸ ื•ื•ืึธืก ืคืœื™ืกื ื“ื™ืง ื“ื™ ื‘ื•ื™ืขืŸ ืื™ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ ืจื™ื–ืึทืœื˜ื™ื“ ืื™ืŸ ื“ื™ ื“ื•ืจ ืคื•ืŸ ื’ืึธืจ ื™ื™ื“ืขื ื™ืงืึทืœ ืขืงืกืขืงื•ื˜ืึทื‘ืœืข ื˜ืขืงืขืก.

ื”ื•ื™ืคึผื˜ ื™ื ืึธื•ื•ื•ื™ื™ืฉืึทื ื– ืคื•ืŸ Meson 0.58:

  • Meson ื”ืื˜ ื’ืขื‘ื•ื™ื˜-ืื™ืŸ ืฉื˜ืจื™ืงืœ ืคืึธืจืžืึทื˜ื˜ื™ื ื’ ืึทืคึผืขืจื™ื™ืฉืึทื ื–. ืึทื ืฉื˜ืึธื˜ ืฆื• ืจื•ืคืŸ ื“ืขื ืคึฟืึธืจืžืึทื˜ ืื•ืคึฟืŸ, ืื™ืจ ืงืขื ื˜ ืื™ืฆื˜ ืคืึทืจื‘ื™ื™ึทื˜ืŸ ื•ื•ืึทืœื•ืขืก ื’ืœื™ื™ึทืš, ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ "'ื ืฉื˜ืจื™ืงืœ @0@ ืฆื• ื–ื™ื™ืŸ ืคืึธืจืžืึทื˜ื˜ืขื“ @1@'.format(n, m)", ืื™ืจ ืงืขื ืขืŸ ืžื™ื“ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ "f" ื ืฉื˜ืจื™ืงืœ @n@ ืฆื• ื–ื™ื™ืŸ ืคึฟืึธืจืžืึทื˜ื™ืจื˜ @ ืž@'".
  • ื "ืคืึทืจื‘ื™ื™ึทื˜ืŸ" ืื•ืคึฟืŸ ืื™ื– ืฆื•ื’ืขืœื™ื™ื’ื˜ ืฆื• ืฉื˜ืจื™ืงืœ ืึทื‘ื“ื–ืฉืขืงืฅ ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ื“ื™ ืึธืคึผืขืจืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹ืจื™ืคึผืœื™ื™ืกื™ื ื’ ืื™ื™ืŸ ืกื•ื‘ืกื˜ืจื™ื ื’ ืžื™ื˜ ืื ื“ืขืจืŸ, ืœืžืฉืœ, "s = s.replace('aaa', 'bbb')."
  • ืฆื•ื’ืขื’ืขื‘ืŸ "ืงื™ื™ื˜ (ืึธื ื”ื™ื™ื‘, ื”ืึทืœื˜ืŸ [, ืฉืจื™ื˜])" ืคึฟื•ื ืงืฆื™ืข ืฆื• ืฆื•ืจื™ืงืงื•ืžืขืŸ ืึท ื›ื™ื™ืคืขืฅ ื•ื•ืึธืก ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜ ืื™ืŸ ืึท ืคืึธืจืขืึทื˜ืฉ ืฉืœื™ื™ืฃ, ืึทื–ืึท ื•ื•ื™ "ืคืึธืจืขืึทื˜ืฉ ืื™ืš: ืงื™ื™ื˜ (15)".
  • ื“ื™ meson.add_devenv () ืื•ืคึฟืŸ ืื™ื– ื™ืžืคึผืœืึทืžืขื ืึทื“, ืึทืœืึทื•ื™ื ื’ ืื™ืจ ืฆื• ืœื™ื™ื’ืŸ ืึทืŸ ืกื•ื•ื™ื•ื•ืข () ื›ื™ื™ืคืขืฅ ืฆื• ืฉื˜ืขืœืŸ ืกื•ื•ื™ื•ื•ืข ื•ื•ืขืจื™ืึทื‘ืึทืœื– ื•ื•ืขืŸ ืื™ืจ ื ื•ืฆืŸ ื“ื™ "meson devenv" ื‘ืึทืคึฟืขืœ, ืœืžืฉืœ, ืฆื• ืฉื˜ืขืœืŸ ืึท ืกื•ื•ื™ื•ื•ืข ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง ืžื™ื˜ ื“ืขื ื“ืจืš ืฆื• ื“ื™ ืคึผืœื•ื’ื™ื ืก ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ.
  • ืคึฟืึทืจ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ื™ื ื•ื•ื™ื™ืจืึทื ืžืึทื ืฅ, ืึท ื ื™ื™ึทืข ื‘ืึทืคึฟืขืœ ืื™ื– ืคืืจื’ืขืœื™ื™ื’ื˜: "meson devenv -C builddir [], ื•ื•ืึธืก ืžืื›ื˜ ืขืก ืžืขื’ืœืขืš ืฆื• ืœื•ื™ืคืŸ ื“ื™ ื‘ืึทืคึฟืขืœ ืื™ืŸ ืึท ืกื•ื•ื™ื•ื•ืข ืงืึทื ืคื™ื’ื™ืขืจื“ ืฆื• ืงืึทื˜ืขืจ ืคึผืจืึทื“ื–ืฉืขืงืก ืคึฟื•ืŸ ื“ื™ ื‘ื•ื™ืขืŸ ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ (ืึธืŸ ื™ื ืกื˜ืึทืœื™ืจื•ื ื’).
  • ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜, ื“ื™ "-ืจืขืจ" ืึธืคึผืฆื™ืข ืื™ื– ืคืืจืฉื˜ืืคื˜ ืฆื• ื–ื™ื™ืŸ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ื•ื•ืขืŸ ืคืœื™ืกื ื“ื™ืง ืึทืœืข ื’ืขืฉื˜ื™ืฆื˜ ืงืึธืžืคึผื™ืœืขืจืก.
  • ืจื•ืคืŸ meson.add_dist_script () ืคึฟื•ืŸ ืกื•ื‘ืคึผืจืึธื“ื–ืฉืขืงืก ืื™ื– ืขืจืœื•ื™ื‘ื˜.
  • ืฆื•ื’ืขืฉื˜ืขืœื˜ ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืœื•ื™ืคืŸ ื“ื™ ืึทืคึผืขื ื“ () ืื•ืŸ ืคึผืจืขืคึผืขื ื“ () ืžืขื˜ื”ืึธื“ืก ืขื˜ืœืขื›ืข ืžืึธืœ ืื•ื™ืฃ ื“ืขืจ ื–ืขืœื‘ื™ืงืขืจ ืกื•ื•ื™ื•ื•ืข () ื›ื™ื™ืคืขืฅ.
  • ื“ืขืจ ื˜ืขื•ืช () ืคึฟื•ื ืงืฆื™ืข ืึทืœืึทื•ื– ืžืขืจ ื•ื•ื™ ืื™ื™ืŸ ืึทืจื’ื•ืžืขื ื˜, ืืคื’ืขืฉื™ื™ื“ื˜ ื“ื•ืจืš ืึท ืคึผืœืึทืฅ (ืขื ืœืขืš ืฆื• ื•ื•ืืจืขื ื•ื ื’ () ืื•ืŸ ืึธื ื–ืึธื’ ()).
  • ืฆื•ื’ืขื’ืขื‘ืŸ "--skip-subprojects" ืึธืคึผืฆื™ืข ืฆื• ืกืึทืœืขืงื˜ื™ื•ื•ืœื™ ื”ืึธืคึผืงืขืŸ ื™ื™ึทื ืžืึธื ื˜ื™ืจื•ื ื’ ืคื•ืŸ ืกืึทื‘ืคึผืจืึทื“ื–ืฉืขืงืก.

ืกืขืคึผืขืจืึทื˜ืœื™, ืžื™ืจ ืงืขื ืขืŸ ื˜ืึธืŸ ื“ื™ Boson ืคึผืจื•ื™ืขืงื˜, ืึทื™ืžืขื“ ืฆื• ืฉืึทืคึฟืŸ ืึท ืคึผืึธืจื˜ืึทื˜ื™ื•ื• ืื•ืŸ ืคึผืฉื•ื˜ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ Meson ืคึฟืึทืจื–ืึทืžืœื•ื ื’ ืฉืจื™ืคื˜ ืฉืคึผืจืึทืš, ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ C ืึทื ืฉื˜ืึธื˜ ืคื•ืŸ Python. ื“ื™ ืคึผืจื•ื™ืขืงื˜ ืื™ื– ื ืึธืš ืื™ืŸ ื“ืขืจ ืขืจืฉื˜ ื‘ื™ื ืข ืคื•ืŸ โ€‹โ€‹ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืื•ืŸ ืื™ื– ื ืึธืš ื ื™ืฉื˜ ื’ืจื™ื™ื˜ ืคึฟืึทืจ ืคื•ืœ ืคึฟืึทืจื–ืึทืžืœื•ื ื’ ืคื•ืŸ ืืจื‘ืขื˜ืŸ ืคึผืจืึทื“ื–ืฉืขืงืก. ื“ืขืจ ืงืึธื“ ืื™ื– ืœื™ื™ืกืึทื ืกื˜ ืื•ื ื˜ืขืจ GPLv3 (ื“ืขืจ ืึธืจื™ื’ื™ื ืขืœ Python Meson ืื™ื– ืœื™ื™ืกืึทื ืกื˜ ืื•ื ื˜ืขืจ ื“ื™ Apache 2.0 ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ).

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’