แแแแแฅแแแงแแแ Meson 1.3.0 build แกแแกแขแแแแก แแแแแจแแแแ, แ แแแแแแช แแแแแแงแแแแแ แแกแแแ แแ แแแฅแขแแแแก แจแแกแแฅแแแแแแ, แ แแแแ แแชแแ X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME แแ GTK. แแแแแแแก แแแแ แแแฌแแ แแแแ แแแแแแจแ แแ แแแชแแแแแ แแแฃแแแ Apache 2.0 แแแชแแแแแแ.
Meson-แแก แแแแแแแแ แแแแก แแแแแแ แ แแแแแแแ แฃแแ แฃแแแแแงแแก แแแฆแแแ แกแแฉแฅแแ แแ แจแแแ แแแแก แแ แแชแแกแ แแแแคแแ แขแแแ แแ แแแ แขแแแแ แแแแแงแแแแแแกแแแ แแ แแแ. แแแ แแแก แแแชแแแแ, build แแแแฃแแแกแฎแแแแแ แแงแแแแแก Ninja แแแกแขแ แฃแแแแขแแ แแแแ แแแแก, แแแแ แแ แกแฎแแ backends, แ แแแแ แแชแแ xcode แแ VisualStudio แแกแแแ แจแแแซแแแแ แแแแแงแแแแแฃแ แแฅแแแก. แกแแกแขแแแแก แแฅแแก แฉแแจแแแแแฃแแ แแ แแแแแแแแขแคแแ แแแแแ แแแแแแแแแแฃแแแแแก แแแแแฃแจแแแแแแแ, แ แแแแแแช แกแแจแฃแแแแแแก แแแซแแแแ แแแแแแงแแแแ Meson แแแกแขแ แแแฃแชแแแแแกแแแแก แแแแแขแแแแก แจแแกแแฅแแแแแแ. แแกแแแแแแแก แฌแแกแแแ แแแงแแแแแฃแแแ แแแแแแแก แกแแแชแแคแแแฃแ แแแแแ แขแแแแแฃแ แแแแแ, แแกแแแ แแแ แแแ แแแแแฎแแแ แแ แแแกแแแแแแ แแแแฎแแแ แแแแแกแแแแก (แแแขแแ แแแแก แแแแแก แแแฎแแแแแ, แแแแแแแแแ แแ แแแแแแแแฃแ แ แแ แ แฃแแแ แแแฎแแ แฏแแก แฌแแกแแแแก แแแฌแแ แแแ).
แแฎแแ แแแญแแ แแแแ Linux-แแ, Illumos/Solaris-แแ, FreeBSD-แแ, NetBSD-แแ, DragonFly BSD-แแ, Haiku-แแ, macOS-แกแ แแ Windows-แแ แฏแแแ แแแแแ แจแแแแแแ แแ แแจแแแแแแแแ GCC, Clang, Visual Studio แแ แกแฎแแ แจแแแแแแแแแแแแก แแแแแงแแแแแแ. แจแแกแแซแแแแแแแ แแ แแแฅแขแแแแก แแแแแ แกแฎแแแแแกแฎแแ แแ แแแ แแแแ แแแแก แแแแแแ, แแแ แจแแ แแก C, C++, Fortran, Java แแ Rust. แแฎแแ แแแญแแ แแแแ แแแแแขแแแแแ แแจแแแแแแก แ แแแแแ, แ แแแแแจแแช แแฎแแแแ แแแแแแแแแขแแแ, แ แแแแแแแช แแแ แแแแแ แแแแจแแ แจแแ แแแแ แแจแแแแแแก แจแแแแแ แแแแฎแแ แชแแแแแแฃแ แชแแแแแแแแแแแ, แฎแแแแฎแแ แแจแแแแแแ. Meson แจแแแซแแแแ แแแแแงแแแแแฃแ แแฅแแแก แแแแแแแ แแแแแ build-แแแแก แแแแแ แแ แแแแกแแแแก, แกแแแแช build-แแก แแแจแแแแ แกแฎแแแแแกแฎแแ แแแ แแแแจแ แแฌแแแแก แกแ แฃแแแแ แแแแแขแฃแ แจแแกแ แฃแแแแแแแแก.
Meson 1.3-แแก แซแแ แแแแแ แแแแแแชแแแแ:
- แแแแแแแแ แแก แจแแแแฌแแแแแก แแแแแแแแก compiler.compiles(), compiler.links() แแ compiler.run() แแแแแแขแ แแคแชแแ โerror: trueโ (แจแแแซแแแแ แแแแแแแงแแแแ, แ แแ แแแแ แแแแแฃแแแ แแแคแ แแฎแแแแแแก แแแ แแจแ). ).
- แแแแแขแแแฃแแแ has_define แแแแแแ แฌแแแแแ แแชแแกแแ แแก แแแแ แกแแแแแแแก แแแแกแแแฆแแ แแก แจแแกแแแแฌแแแแแแ.
- macro_name แแแ แแแแขแ แ แแแแแแขแ configure_file() แคแฃแแฅแชแแแก, แแแแแแขแ แแแแ แ แแแชแแ แแ แแแแ แแแแจแแ แแแแกแแแแก "#include" ("include guards") แแแจแแแแแแ, แ แแแแแแช แจแแฅแแแแแแ แแแแ แแแแแก แกแขแแแจแ 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() แแแแแแก แแแ แแแแก แชแแแแแแก แแแกแแงแแแแแแแ, แ แแแแแก แแแจแแแแแแแแช แแแแแ แแขแแ แ แแแแแฃแจแแแแแก แจแแงแแแแแก.
- แจแแกแ แฃแแแแแก แกแแแแแแแแแแก แกแแฎแแแแแแก แแแแแแแแแกแแก, แ แแแแ แแชแแ "executable('foo', 'main.c', name_suffix: 'bar')" แแแจแแแแฃแแแ แแแแแขแแแแแ แจแแกแ แฃแแแแแแ แคแแแแแแแก แแแแแ แแ แแแ แแแแแ แแแ แแฅแขแแ แแแจแ.
- แแแแแแขแ "vs_module_defs" แแแ แแแแขแ แ exectuable() แคแฃแแฅแชแแแก, แ แแแ แแแแแแงแแแแก def แคแแแแ, แ แแแแแแช แแแแกแแแฆแแ แแแก shared_module()-แแ แแแแแชแแแฃแแ แคแฃแแฅแชแแแแแก แฉแแแแแแแแแแก.
- "default_options" แแแ แแแแขแ แ แแแแแแขแ find_program() แคแฃแแฅแชแแแก แกแแ แแแแ แแ แฅแแแแ แแแฅแขแแกแแแแก แแแแฃแแแกแฎแแแแ แแแ แแแแขแแแแก แแแกแแงแแแแแแแ.
- แแแแแขแแแฃแแแ fs.relative_to() แแแแแแ, แ แแแแแแช แแแ แฃแแแแก แคแแ แแแแแ แแแแก แแแ แแแแ แแ แแฃแแแแขแแกแแแแก แแแแ แแกแแแ แจแแแแ แแแแ, แแฃ แแแ แแแแ แแแ แแ แกแแแแแก. แแแแแแแแแ, "fs.relative_to('/prefix/lib', '/prefix/bin') == '../lib')".
- แจแแแแแแ_symlinks แแแ แแแแขแ แ แแแแแแขแ install_data(), install_headers() แแ install_subdir() แคแฃแแฅแชแแแแก; แ แแแแกแแช แแแงแแแแแฃแแแ, แกแแแแแแฃแ แ แแแฃแแแแ แแแฐแงแแแแ.
- "fill" แแแ แแแแขแ แ แแแแแแขแ int.to_string() แแแแแแก, แ แแแ แแแแแแแแ แจแแแแกแแ แกแขแ แแฅแแแ แฌแแแงแแแแ แแฃแแแแแ. แแแแแแแแแ, แจแแขแงแแแแแแแแก (n.to_string(fill: 3)) แแแแแซแแฎแแแ n=4-แแกแแแแก แฌแแ แแแฅแแแแก แกแขแ แแฅแแแก "004".
- แแแแแขแแแฃแแแ แแฎแแแ แกแแแแแแ, clang-tidy-fix, แ แแแแแแช แแแแกแแแฆแแ แแแก clang-tidy แฃแขแแแแขแแก แแแจแแแแแก "-fix" แแ แแจแแ.
- แจแแแ แแแแก แแแแแแก ([PATH_TO_TARGET/]TARGET_NAME.TARGET_SUFFIX[:TARGET_TYPE]) แกแฃแคแแฅแกแแก (TARGET_SUFFIX) แแแแแแแแแก แจแแกแแซแแแแแแแ แแแแแแขแ แแแแแแ แแ แซแแแแแแก.
- แแแแแแขแ แแแ แแแแก แชแแแแแ MESON_PACKAGE_CACHE_DIR แแแแแขแแก แฅแแจแแก (แฅแแแแ แแแฅแขแแแ/แแแแแขแแก แฅแแจแแก) แแแแก แแแแแคแแ แแแก แแแแแแ, แแแแแแแแแ, แกแแจแฃแแแแแแก แแแซแแแแ แแแแแแงแแแแ แแแแแแ แแแฃแแ แฅแแจแ แ แแแแแแแแ แแ แแแฅแขแจแ.
- แแแแแขแแแฃแแแ "meson setup --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