เบเบฒเบ™เบ›เปˆเบญเบเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ›เบฐเบเบญเบš Meson 1.3

เบฅเบฐเบšเบปเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡ Meson 1.3.0 เป„เบ”เป‰เบ–เบทเบเบ›เปˆเบญเบเบญเบญเบเบกเบฒ, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เป‚เบ„เบ‡เบเบฒเบ™เป€เบŠเบฑเปˆเบ™ X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME เปเบฅเบฐ GTK. เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡ Meson เปเบกเปˆเบ™เบ‚เบฝเบ™เปƒเบ™ Python เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบญเบฐเบ™เบธเบเบฒเบ”เบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” Apache 2.0.

เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ Meson เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเป„เบงเบชเบนเบ‡เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ›เบฐเบเบญเบšเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบเบฑเบšเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเปเบฅเบฐเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”, เบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบท Ninja เบ–เบทเบเปƒเบŠเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡, เปเบ•เปˆ backends เบญเบทเปˆเบ™เป†เป€เบŠเบฑเปˆเบ™ xcode เปเบฅเบฐ VisualStudio เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰. เบฅเบฐเบšเบปเบšเบกเบตเบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบเบฒเบ™เป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบชเบซเบผเบฒเบเป€เบงเบ—เบตเบ—เบตเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เปƒเบŠเป‰ Meson เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เปเบžเบฑเบเป€เบเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบˆเบเบขเบฒเบ. เบเบปเบ”เบฅเบฐเบšเบฝเบšเบ‚เบญเบ‡เบชเบฐเบžเบฒเปเบซเปˆเบ‡เปเบกเปˆเบ™เป„เบ”เป‰เบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™เบžเบฒเบชเบฒเบชเบฐเป€เบžเบฒเบฐเป‚เบ”เป€เบกเบ™เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบ, เบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™เป„เบ”เป‰เบชเบนเบ‡เปเบฅเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰ (เบ•เบฒเบกเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ‚เบญเบ‡เบœเบนเป‰เบ‚เบฝเบ™, เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ„เบงเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเปƒเบ™เบเบฒเบ™เบ‚เบฝเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบš).

เบฎเบญเบ‡เบฎเบฑเบšเบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบ‚เป‰เบฒเบก เปเบฅเบฐเบชเป‰เบฒเบ‡เปƒเบ™ Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS เปเบฅเบฐ Windows เป‚เบ”เบเปƒเบŠเป‰ GCC, Clang, Visual Studio เปเบฅเบฐ compilers เบญเบทเปˆเบ™เป†. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡เป‚เบ„เบ‡เบเบฒเบ™เปƒเบ™เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ•เปˆเบฒเบ‡เป†, เบฅเบงเบกเบ—เบฑเบ‡ C, C++, Fortran, Java เปเบฅเบฐ Rust. เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™, เป€เบŠเบดเปˆเบ‡เบžเบฝเบ‡เปเบ•เปˆเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เป‚เบ”เบเบเบปเบ‡เบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ„เบฑเป‰เบ‡เบชเบธเบ”เบ—เป‰เบฒเบเบ–เบทเบเบชเป‰เบฒเบ‡เปƒเบซเบกเปˆ. Meson เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบเบฒเบ™เบชเป‰เบฒเบ‡เบŠเป‰เปเบฒเบŠเป‰เบญเบ™, เป€เบŠเบดเปˆเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบชเบปเปˆเบ‡เบœเบปเบ™เปƒเบซเป‰เบเบฒเบ™เบœเบฐเบฅเบดเบ”เป„เบŸเบฅเปŒเบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เบ„เบทเบเบฑเบ™เบซเบกเบปเบ”.

เบ™เบฐเบงเบฑเบ”เบ•เบฐเบเปเบฒเบซเบผเบฑเบเบ‚เบญเบ‡ Meson 1.3:

  • เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ•เบปเบงเป€เบฅเบทเบญเบ โ€œwrror: trueโ€ เปƒเบซเป‰เบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบเบงเบ”เบชเบญเบš compiler compiler.compiles(), compiler.links() เปเบฅเบฐ compiler.run(), เป€เบŠเบดเปˆเบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป€เบ•เบทเบญเบ™ compiler เป€เบ›เบฑเบ™เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ” (เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบฅเบฐเบซเบฑเบ”เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบ•เบทเบญเบ™. ).
  • เป€เบžเบตเปˆเบกเบงเบดเบ—เบตเบเบฒเบ™ has_define เป€เบžเบทเปˆเบญเบเบงเบ”เบชเบญเบšเบเบฒเบ™เบเบณเบ™เบปเบ”เบชเบฑเบ™เบเบฒเบฅเบฑเบเป‚เบ”เบเบ•เบปเบงเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบเปˆเบญเบ™.
  • เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบต macro_name เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบŸเบฑเบ‡เบŠเบฑเบ™ configure_file(), เป€เบžเบตเปˆเบกเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เบกเบฐเบซเบฒเบžเบฒเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบชเบญเบ‡เป€เบ—เบปเปˆเบฒเป‚เบ”เบเบœเปˆเบฒเบ™ "#include" ("เบฅเบงเบกเบ—เบฑเบ‡ guards"), เบญเบญเบเปเบšเบšเปƒเบ™เปเบšเบšเบ‚เบญเบ‡ macros เปƒเบ™เบžเบฒเบชเบฒ C (เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบชเป‰เบฒเบ‡เป„เบŸเบฅเปŒ configure เบกเบตเบ„เบงเบฒเบกเบ‡เปˆเบฒเบเบ”เบฒเบ. เบŠเบทเปˆเบกเบฐเบซเบฒเบžเบฒเบ).
  • เบฎเบนเบšเปเบšเบšเบœเบปเบ™เบœเบฐเบฅเบดเบ”เปƒเบซเบกเปˆเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™ configure_file() - JSON ("output_format: json").
  • เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบฅเบฒเบเบเบฒเบ™เบ‚เบญเบ‡เบ„เปˆเบฒเปƒเบซเป‰เบเบฑเบšเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบต c_std เปเบฅเบฐ cpp_std (เบ•เบปเบงเบขเปˆเบฒเบ‡: โ€œdefault_options: 'c_std=gnu11,c11โ€ฒ').
  • เปƒเบ™เป‚เบกเบ”เบนเบ™เบ—เบตเปˆเปƒเบŠเป‰ CustomTarget เป€เบžเบทเปˆเบญเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป„เบŸเบฅเปŒ, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ›เบฑเบšเปเบ•เปˆเบ‡เบ‚เปเป‰เบ„เบงเบฒเบกเบญเบญเบเป‚เบ”เบเบ›เบฐเป‚เบซเบเบ”เบ‚เบญเบ‡ ninja เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก.
  • 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(); เป€เบกเบทเปˆเบญเบ•เบฑเป‰เบ‡, เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบชเบฑเบ™เบเบฒเบฅเบฑเบเปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบก.
  • เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบต "เบ•เบทเปˆเบก" เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆเบงเบดเบ—เบตเบเบฒเบ™ int.to_string() เป€เบžเบทเปˆเบญเบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆเบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบกเบตเบชเบนเบ™เบ™เปเบฒเบซเบ™เป‰เบฒ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ‚เปเป‰เบ„เบงเบฒเบกเบเบฒเบ™เป‚เบ—(n.to_string(เบ•เบทเปˆเบก: 3)) เบชเปเบฒเบฅเบฑเบš n=4 เบˆเบฐเบœเบฐเบฅเบดเบ” string "004".
  • เป€เบžเบตเปˆเบกเป€เบ›เบปเป‰เบฒเปเบฒเบเปƒเปเปˆ, clang-tidy-fix, เบ—เบตเปˆเบฅเบฐเบšเบธเบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™ clang-tidy utility เบ”เป‰เบงเบเบ—เบธเบ‡ "-fix".
  • เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบฅเบฐเบšเบธเบ„เบณเบ•เปเปˆเบ—เป‰เบฒเบ (TARGET_SUFFIX) เบ‚เบญเบ‡เป€เบ›เบปเป‰เบฒเปเบฒเบเบเบฒเบ™เบ›เบฐเบเบญเบš ([PATH_TO_TARGET/]TARGET_NAME.TARGET_SUFFIX[:TARGET_TYPE]) เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆเบ„เบณเบชเบฑเปˆเบ‡เบฅเบงเบšเบฅเบงเบกเปเบฅเป‰เบง.
  • เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ—เบตเปˆเป€เบžเบตเปˆเบก MESON_PACKAGE_CACHE_DIR เป€เบžเบทเปˆเบญ override เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป„เบ›เบซเบฒเปเบžเบฑเบเป€เบเบฑเบ”เปเบ„เบ” (เป‚เบ„เบ‡เบเบฒเบ™เบเปˆเบญเบ/packagecache), เบ•เบปเบงเบขเปˆเบฒเบ‡, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เปƒเบŠเป‰เปเบ„เบ”เบ—เบตเปˆเปƒเบŠเป‰เบฎเปˆเบงเบกเบเบฑเบ™เปƒเบ™เบซเบผเบฒเบเป‚เบ„เบ‡เบเบฒเบ™.
  • เป€เบžเบตเปˆเบกเบ„เปเบฒเบชเบฑเปˆเบ‡ "meson setup --clearcache" เป€เบžเบทเปˆเบญเบฅเบถเบšเบฅเป‰เบฒเบ‡ cache เบ—เบตเปˆเบเบฑเบ‡เบ„เบปเบ‡เบ„เป‰เบฒเบ‡.
  • เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ„เปเบฒเบชเปเบฒเบ„เบฑเบ™ "เบ•เป‰เบญเบ‡เบเบฒเบ™" เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆเบงเบดเบ—เบตเบเบฒเบ™เบเบงเบ”เบชเบญเบš "has_*" เบ—เบฑเบ‡เบซเบกเบปเบ”, เบ•เบปเบงเบขเปˆเบฒเบ‡, เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™ "ssert(cc.has_function('some_function'))" เบ•เบญเบ™เบ™เบตเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบฅเบฐเบšเบธ "cc.has_function('some_function') , เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹: เบ„เบงเบฒเบกโ€‹เบˆเบดเบ‡โ€‹)โ€.
  • เบ„เปเบฒเบชเปเบฒเบ„เบฑเบ™เปƒเบซเบกเปˆ, rust_abi, เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบซเบ™เป‰เบฒเบ—เบตเปˆ share_library(), static_library(), library(), เปเบฅเบฐ shared_module(), เป€เบŠเบดเปˆเบ‡เบ„เบงเบ™เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปเบ—เบ™ rust_crate_type เบ—เบตเปˆเบ–เบทเบเบเบปเบเป€เบฅเบตเบ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™