ืื ืืขืกืึธื 1.3.0 ืืืืขื ืกืืกืืขื ืืื ืืืคืจืืื, ืืืึธืก ืืื ืืขื ืืฆื ืฆื ืืืืขื ืคึผืจืึทืืืฉืขืงืก ืึทืืึท ืืื 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 1.3:
- ืฆืืืขืืืืื ืื ืึธืคึผืฆืืข "ืืืขืจror: ืืืช" ืฆื ืื ืงืึทืืคึผืืืืขืจ ืืฉืขืง ืืขืืืึธืืก compiler.compiles (), compiler.links () ืืื compiler.run (), ืืืึธืก ืืจืืฅ ืงืึทืืคึผืืืืขืจ ืืืึธืจื ืื ืื ืืื ืขืจืจืึธืจืก (ืงืขื ืขื ืืืื ืืขืืืืื ื ืฆื ืงืึธื ืืจืึธืืืจื ืึทื ืื ืงืึธื ืืื ืืขืืืื ืึธื ืืืึธืจื ืื ืื ).
- ืึทืืืขื has_define ืืืคึฟื ืฆื ืงืึธื ืืจืึธืืืจื ืกืืืืึธื ืืขืคึฟืื ืืฆืืข ืืืจื ืคึผืจืขืคึผืจืึทืกืขืกืขืจ.
- ืืขืจ ืืึทืงืจืึธื_ื ืึทืืข ืคึผืึทืจืึทืืขืืขืจ ืืื ืฆืืืขืืืืื ืฆื ืื configure_file () ืคึฟืื ืงืฆืืข, ืึทืืื ื ืืึทืงืจืึธื ืฉืืฅ ืคึฟืึทืจ ืืึธืคึผื ืงืึทื ืขืงืฉืึทื ื ืืืจื "# ืื ืงืืืืข" ("ืึทืจืืึทื ื ืขืืขื ืืึทืจืื"), ืืืืืื ื ืืื ืื ื ืืกื ืคืื ืืึทืงืจืึธืก ืืื ืื C ืฉืคึผืจืึทื (ืกืืืคึผืคึผืื ืื ืฉืึทืคืื ื ืคืื ืงืึทื ืคืืืืขืจ ืืขืงืขืก ืืื ืืื ืึทืืืฉ) ืืึทืงืจืึธื ื ืขืืขื).
- ื ื ืืึทืข ืจืขืืืืืึทื ืคึฟืึธืจืืึทื ืืื ืฆืืืขืืืืื ืฆื configure_file () - JSON ("output_format: json").
- ืฆืืืขืืืืื ืื ืคืืืืงืืื ืฆื ื ืืฆื ืจืฉืืืืช ืคืื ืืืึทืืืขืก ืฆื ืื ืคึผืึทืจืึทืืขืืขืจืก c_std ืืื cpp_std (ืืืฉื, "default_options: 'c_std=gnu11,c11โฒ').
- ืืื ืืึทืืืฉืืื ืืืึธืก ื ืืฆื CustomTarget ืฆื ืคึผืจืึธืฆืขืก ืืขืงืขืก, ืื ืคืืืืงืืื ืฆื ืงืึทืกืืึทืืืื ืึทืจืืืงืืขื ืคึผืจืึธืืืงืฆืืข ืืืจื ืื ื ืื ืืืฉืึท ื ืืฆื ืืื ืฆืืืขืืขืื.
- ืื build_target "jar" ืืื ืืืคึผืจืืฉืืืืืื ืืื ืื "jar ()" ืจืืคื ืืื ืจืขืงืึทืืขื ืืื ืึทื ืฉืืึธื.
- ืืขืจ 'env' ืคึผืึทืจืึทืืขืืขืจ ืืื ืฆืืืขืืืืื ืฆื ืื generator.process() ืืืคึฟื ืฆื ืฉืืขืื ืื ืกืืืืืืข ืืืขืจืืึทืืึทื ืืืจื ืืืึธืก ืืขืจ ืืขื ืขืจืึทืืึธืจ ืืืขื ืคึผืจืึธืฆืขืก ืึทืจืืึทื ืฉืจืืึทื.
- ืืืขื ืกืคึผืขืฆืืคืืฆืืจื ืืืืขื ืฆืื ื ืขืืขื ืคึฟืึทืจืืื ืื ืืื ืขืงืกืขืงืืืึทืืืขืก, ืกืึทืคืืงืก ืึทืืึท ืืื "ืขืงืกืขืงืืืึทืืืข ('ืคืึธืึธ', 'ืืึทืื.ืง', ื ืึธืืขื_ืกืืคืคืืงืก: 'ืืึทืจ')" ืืขื ืขื ืขืจืืืืื ืฆื ืืืฉืขื ืขืจืืื ื ืึธื ืขืงืกืขืงืืืึทืืืขืก ืืื ืืขืจ ืืขืืืืงืขืจ ืืืขืืืืืึทืืขืจ.
- ืฆืืืขืืขืื ืืขื "vs_module_defs" ืคึผืึทืจืึทืืขืืขืจ ืฆื ืื ืขืงืกืขืงืืืึทืืืข () ืคึฟืื ืงืฆืืข ืฆื ื ืืฆื ืึท ืืขืฃ ืืขืงืข ืืืึธืก ืืืคืืื ื ืื ืจืฉืืื ืคืื ืคืึทื ืืงืฉืึทื ื ืืืจืืืขืืื ืืขื ืฆื shared_module ().
- ืฆืืืขืืขืื 'default_options' ืคึผืึทืจืึทืืขืืขืจ ืฆื find_program () ืคืื ืงืฆืืข ืฆื ืฉืืขืื ืคืขืืืงืืึทื ืึธืคึผืฆืืขืก ืคึฟืึทืจ ืคืึทืืืึทืง ืกืืืคึผืจืึธืืืฉืขืงื.
- ืฆืืืขืืขืื fs.relative_to() ืืืคึฟื, ืืืึธืก ืงืขืจื ืื ืงืึธืจืขืื ืืจื ืคึฟืึทืจ ืืขืจ ืขืจืฉืืขืจ ืึทืจืืืืขื ื, ืงืึธืจืขืื ืฆื ืื ืจืืข, ืืืื ืืขืจ ืขืจืฉืืขืจ ืืืขื ืืืืืกืฅ. ืคึฟืึทืจ ืืืึทืฉืคึผืื, "fs.relative_to('/prefix/lib', '/prefix/bin') == '../lib')".
- ืืขืจ ืืืืึทืืขืจืืืง_ืกืืืืื ืงืก ืคึผืึทืจืึทืืขืืขืจ ืืื ืฆืืืขืืืืื ืฆื ืื ืคืึทื ืืงืฉืึทื ื install_data (), install_headers () ืืื install_subdir (); ืืืขื ืฉืืขืื, ืกืืืืึธืืืฉ ืคึฟืึทืจืืื ืืื ืืขื ืืขื ืขื ื ืืืืขืืื ืืขื.
- ื "ืคืืื" ืคึผืึทืจืึทืืขืืขืจ ืืื ืฆืืืขืืขืื ืฆื ืื int.to_string () ืืืคึฟื ืฆื ืื ืงืจืึทืืขื ืืึทืื ืคึผืืึธืืืืจื ืื ืฉืืจืืงื ืืื ืืืืื ื ืืขืจืึธืก. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืจืืคื ืึธื ืืึธื (n.to_string (fill: 3)) ืคึฟืึทืจ n = 4 ืืืขื ืคึผืจืึธืืืฆืืจื ืื ืฉืืจืืงื "004".
- ืฆืืืขืืขืื ืึท ื ืืึทืข ืฆืื, ืงืืึทื ื-ืฆืืืืืง-ืคืึทืจืจืืืื, ืืืึธืก ืกืคึผืขืฆืืคืืฆืืจื ืืืืคื ืื ืงืืึทื ื-ืฆืืืืืง ื ืืฆื ืืื ืื "-ืคืืงืก" ืคืึธื.
- ืื ืคืืืืงืืื ืฆื ืกืคึผืขืฆืืคืืฆืืจื ืื ืกืึทืคืืงืก (TARGET_SUFFIX) ืคืื ืื ืคึฟืึทืจืืึทืืืื ื ืฆืื ([PATH_TO_TARGET/]TARGET_NAME.TARGET_SUFFIX[:TARGET_TYPE]) ืืื ืฆืืืขืืืืื ืฆื ืื ืงืึทืืคึผืืืืื ื ืืึทืคึฟืขื.
- ืฆืืืขืืืืื ืกืืืืืืข ืืืึทืืขืืืืืง MESON_PACKAGE_CACHE_DIR ืฆื ืึธืืืืขืจืจืืื ืืขื ืืจื ืฆื ืื ืคึผืขืงื ืงืึทืฉ (ืกืืืคึผืจืึทืืืฉืขืงืก / ืคึผืึทืงืงืึทืืขืงืึทืืฉืข), ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืึทืืึทืืื ื ืืืจ ืฆื ื ืืฆื ืึท ืฉืขืจื ืงืึทืฉ ืืื ืขืืืขืืข ืคึผืจืึทืืืฉืขืงืก.
- ืฆืืืขืืขืื "ืืขืกืึธื ืกืขืืึทืคึผ --clearcache" ืืึทืคึฟืขื ืฆื ืืืกืืขืงื ืคึผืขืจืกืืกืืขื ื ืงืึทืฉ.
- ืฉืืืฆื ืคึฟืึทืจ ืื "ืคืืจืืื ืื" ืงืืืืขืจื ืืื ืฆืืืขืืขืื ืฆื ืึทืืข "has_*" ืงืึทืืคึผืืืืขืจ ืืฉืขืง ืืขืืืึธืืก, ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืึทื ืฉืืึธื ืคืื "assert(cc.has_function('some_function'))" ืืืจ ืงืขื ืขื ืืืฆื ืกืคึผืขืฆืืคืืฆืืจื "cc.has_function('some_function' , ืคืืจืืื ืื: ืืืช)".
- ื ื ืืึทืข ืงืืืืขืจื, rust_abi, ืืื ืฆืืืขืืืืื ืฆื ืื shared_library(), static_library(), library(), ืืื shared_module() ืคืึทื ืืงืฉืึทื ื, ืืืึธืก ืืึธื ืืืื ืืขืืืืื ื ืึทื ืฉืืึธื ืคืื ืื ืืืคึผืจืืฉืืืืืื rust_crate_type.
ืืงืืจ: opennet.ru