рдореЗрд╕рди рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдгрд╛рд▓реА рд░рд┐рд▓реАрдЬ 1.1

Meson 1.1.0 рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдгрд╛рд▓реАрдХреЛ рд░рд┐рд▓реАрдЬ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬреБрди X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME рд░ GTK рдЬрд╕реНрддрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред Meson рдХреЛрдб Python рдорд╛ рд▓реЗрдЦрд┐рдПрдХреЛ рдЫ рд░ Apache 2.0 рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрдд рдЗрдЬрд╛рдЬрддрдкрддреНрд░ рджрд┐рдЗрдПрдХреЛ рдЫред

Meson рдХреЛ рдореБрдЦреНрдп рд╡рд┐рдХрд╛рд╕ рд▓рдХреНрд╖реНрдп рд╕реБрд╡рд┐рдзрд╛ рд░ рдкреНрд░рдпреЛрдЧ рдХреЛ рд╕рдЬрд┐рд▓реЛ рд╕рдВрдЧ рд╕рдВрдпреБрдХреНрдд рдПрдХ рдЙрдЪреНрдЪ рдЧрддрд┐ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрдиреБ рд╣реЛред рдмрдирд╛рдЙрдирдХреЛ рд╕рдЯреНрдЯрд╛, рдирд┐рд░реНрдорд╛рдгрд▓реЗ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рдирд┐рдиреНрдЬрд╛ рдЯреБрд▓рдХрд┐рдЯ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ, рддрд░ рдЕрдиреНрдп рдмреНрдпрд╛рдХрдПрдиреНрдбрд╣рд░реВ рдЬрд╕реНрддреИ xcode рд░ VisualStudio рдкрдирд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдкреНрд░рдгрд╛рд▓реАрдорд╛ рдирд┐рд░реНрдорд┐рдд рдмрд╣реБ-рдкреНрд▓реЗрдЯрдлрд░реНрдо рдирд┐рд░реНрднрд░рддрд╛ рд╣реНрдпрд╛рдиреНрдбрд▓рд░ рдЫ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╡рд┐рддрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рдореЗрд╕рди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЕрд╕реЗрдВрдмрд▓реА рдирд┐рдпрдорд╣рд░реВ рд╕рд░рд▓реАрдХреГрдд рдбреЛрдореЗрди-рд╡рд┐рд╢рд┐рд╖реНрдЯ рднрд╛рд╖рд╛рдорд╛ рд╕реЗрдЯ рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН, рддрд┐рдиреАрд╣рд░реВ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓рд╛рдИ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдкрдвреНрди рд░ рдмреБрдЭреНрди рдпреЛрдЧреНрдп рдЫрдиреН (рд▓реЗрдЦрдХрд╣рд░реВрдХреЛ рд╡рд┐рдЪрд╛рд░ рдЕрдиреБрд╕рд╛рд░, рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд▓реЗ рдирд┐рдпрдорд╣рд░реВ рд▓реЗрдЦреНрди рдиреНрдпреВрдирддрдо рд╕рдордп рдЦрд░реНрдЪ рдЧрд░реНрдиреБрдкрд░реНрдЫ)ред

Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS рд░ Windows рдорд╛ GCC, Clang, Visual Studio рд░ рдЕрдиреНрдп рдХрдореНрдкрд╛рдЗрд▓рд░рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдХреНрд░рд╕-рдХрдореНрдкрд╛рдЗрд▓рд┐рдЩ рд░ рдирд┐рд░реНрдорд╛рдг рд╕рдорд░реНрдерд┐рдд рдЫред C, C++, Fortran, Java рд░ Rust рд╕рд╣рд┐рдд рд╡рд┐рднрд┐рдиреНрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩ рднрд╛рд╖рд╛рд╣рд░реВрдорд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рд╕рдореНрднрд╡ рдЫред рдПрдХ рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдирд┐рд░реНрдорд╛рдг рдореЛрдб рд╕рдорд░реНрдерд┐рдд рдЫ, рдЬрд╕рдорд╛ рдЕрдиреНрддрд┐рдо рдирд┐рд░реНрдорд╛рдг рдкрдЫрд┐ рдЧрд░рд┐рдПрдХрд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрд╕рдБрдЧ рдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдкрдорд╛ рд╕рдореНрдмрдиреНрдзрд┐рдд рдШрдЯрдХрд╣рд░реВ рдорд╛рддреНрд░ рдкреБрди: рдирд┐рд░реНрдорд╛рдг рдЧрд░рд┐рдиреНрдЫред рдореЗрд╕рдирд▓рд╛рдИ рджреЛрд╣реЛрд░реНрдпрд╛рдЙрди рдорд┐рд▓реНрдиреЗ рдмрд┐рд▓реНрдбрд╣рд░реВ рдЙрддреНрдкрдиреНрди рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рдЬрд╣рд╛рдБ рдмрд┐рд▓реНрдбрд▓рд╛рдИ рд╡рд┐рднрд┐рдиреНрди рд╡рд╛рддрд╛рд╡рд░рдгрдорд╛ рдЪрд▓рд╛рдЙрдБрджрд╛ рдкреВрд░реНрдг рд░реВрдкрдорд╛ рд╕рдорд╛рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдпрд╣рд░реВ рдЙрддреНрдкрдиреНрди рд╣реБрдиреНрдЫред

рдореЗрд╕рди рез.рез рдХрд╛ рдореБрдЦреНрдп рдЖрд╡рд┐рд╖реНрдХрд╛рд░рд╣рд░реВ:

  • рдПрдЙрдЯрд╛ рдирдпрд╛рдБ "рд╡рд╕реНрддреБрд╣рд░реВ:" рддрд░реНрдХ рдердкрд┐рдПрдХреЛ рдЫ declare_dependency() рд╡рд╕реНрддреБрд╣рд░реВрд▓рд╛рдИ рдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдкрдорд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдпрд╣рд░реВрдорд╛ рд╕рдВрд▓рдЧреНрди рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЖрдиреНрддрд░рд┐рдХ рдирд┐рд░реНрднрд░рддрд╛рд╣рд░реВ рдЬрд╕рд▓рд╛рдИ link_who рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрдиред
  • "meson devenv --dump" рдХрдорд╛рдгреНрдбрд╕рдБрдЧ рдорд╛рдирдХ рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯреНрд░рд┐рдордорд╛ рдЖрдЙрдЯрдкреБрдЯ рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛ рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░рд╣рд░реВ рд▓реЗрдЦреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдлрд╛рдЗрд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХреНрд╖рдорддрд╛ рдЫред
  • FeatureOption.enable_if рд░ FeatureOption.disable_if рд╡рд┐рдзрд┐рд╣рд░реВ рдирд┐рд░реНрднрд░рддрд╛() рдкреНрд░рдХрд╛рд░реНрдпрдорд╛ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВ рдкрд╛рд╕ рдЧрд░реНрдиреЗ рддрдпрд╛рд░реАрдорд╛ рд╕рд░реНрддрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрди рдердкрд┐рдПрдХрд╛ рдЫрдиреНред opt = get_option('feature').disable_if(foo рд╣реЛрдЗрди, error_message : 'foo рд╕рдХреНрд╖рдо рдирднрдПрдХреЛ рдмреЗрд▓рд╛ рд╕реБрд╡рд┐рдзрд╛ рд╕рдХреНрд╖рдо рдЧрд░реНрди рд╕рдХрд┐рдБрджреИрди') dep = рдирд┐рд░реНрднрд░рддрд╛ ('foo', рдЖрд╡рд╢реНрдпрдХ : opt)
  • рдпрд╕рд▓рд╛рдИ "рд╡рд╕реНрддреБрд╣рд░реВ:" рддрд░реНрдХрд╣рд░реВ рдмреАрдЪ рдЙрддреНрдкрдиреНрди рд╡рд╕реНрддреБрд╣рд░реВ рдкрд╛рд╕ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рдЫред
  • рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреНрд░рдХрд╛рд░реНрдпрд▓реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЗрдЬрд╛рдЬрддрдкрддреНрд░рд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдЬрд╛рдирдХрд╛рд░реАрдХреЛ рд╕рд╛рде рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд╕реНрдерд╛рдкрдирд╛рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред
  • "sudo meson install" рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрдирд╛рд▓реЗ рд▓рдХреНрд╖реНрдп рдкреНрд▓реЗрдЯрдлрд░реНрдорд╣рд░реВрдХреЛ рдкреБрди: рдирд┐рд░реНрдорд╛рдгрдХреЛ рдХреНрд░рдордорд╛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд░рд┐рд╕реЗрдЯ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрджрдЫред
  • "meson install" рдЖрджреЗрд╢рд▓реЗ рд░реВрдЯ рдЕрдиреБрдорддрд┐рд╣рд░реВ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдЫреБрдЯреНрдЯреИ рд╣реНрдпрд╛рдиреНрдбрд▓рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдЗрдБ polkit, sudo, opendoas рд╡рд╛ $MESON_ROOT_CMD рдЪрдпрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ)ред рдЧреИрд░-рдЕрдиреНрддрд░реНрдХреНрд░рд┐рдпрд╛рддреНрдордХ рдореЛрдбрдорд╛ "meson install" рдЪрд▓рд╛рдЙрдиреБрд▓реЗ рдЕрдм рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рд╣рд░реВ рдмрдврд╛рдЙрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрджреИрдиред
  • meson_options.txt рдХреЛ рд╕рдЯреНрдЯрд╛ meson.options рдлрд╛рдЗрд▓рдмрд╛рдЯ рдкрдвреНрдиреЗ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛред
  • рдЖрддреНрдордирд┐рд░реАрдХреНрд╖рдг рдХреЛ рдкреНрд░рдЧрддрд┐ рдХреЛ рдмрд╛рд░реЗ рдорд╛ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ stderr рдорд╛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдкреНрд░рджрд╛рди рдЧрд░рд┐рдпреЛред
  • рдПрдЙрдЯрд╛ рдирдпрд╛рдБ "рдХреБрдиреИ рдкрдирд┐ рдЫреИрди" рдмреНрдпрд╛рдХрдЗрдиреНрдб (--backend=none) рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдердкрд┐рдПрдХреЛ рдЫ рдЬрд╕рдорд╛ рдХреЗрд╡рд▓ рдирд┐рдпрдорд╣рд░реВ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдЫ рд░ рдХреБрдиреИ рдирд┐рд░реНрдорд╛рдг рдирд┐рдпрдорд╣рд░реВ рдЫреИрдирдиреНред
  • рдирд┐рд░реНрднрд░рддрд╛ ('pybind11') рд▓рд╛рдИ pybind11-config рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реА pkg-config рд░ cmake рд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрди рдирдпрд╛рдБ рдирд┐рд░реНрднрд░рддрд╛ pybind11 рдердкрд┐рдПрдХреЛ рдЫред
  • "--рдкреБрди: рдХрдиреНрдлрд┐рдЧрд░" рд░ "--рд╡рд╛рдЗрдк" рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ (рдореЗрд╕рди рд╕реЗрдЯрдЕрдк --рдкреБрдирдГ рдХрдиреНрдлрд┐рдЧрд░ рдмрд┐рд▓реНрдбрдбрд┐рд░ рд░ рдореЗрд╕рди рд╕реЗрдЯрдЕрдк --рд╡рд╛рдЗрдк рдмрд┐рд▓реНрдбрдбрд┐рд░) рд▓рд╛рдИ рдЦрд╛рд▓реА рдмрд┐рд▓реНрдбрдбрд┐рд░рд╕рдБрдЧ рдЕрдиреБрдорддрд┐ рджрд┐рдЗрдиреНрдЫред
  • meson.add_install_script() dry_run рдХреБрдЮреНрдЬреА рд╢рдмреНрджрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛ, рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ "meson install --dry-run" рдХрд▓ рдЧрд░реНрджрд╛ рдЖрдлреНрдиреИ рд╕реНрдерд╛рдкрдирд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВ рдЪрд▓рд╛рдЙрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди