ΡΠ΅Π»ΠΈΠ· ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ , ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΡΠ°ΠΊΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΊΠ°ΠΊ X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME ΠΈ GTK+. ΠΠΎΠ΄ Meson Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Python ΠΈ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0.
ΠΠ»ΡΡΠ΅Π²ΠΎΠΉ ΡΠ΅Π»ΡΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ Meson ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π² ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎΠΌ ΠΈ ΠΏΡΠΎΡΡΠΎΡΠΎΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΈΠ»ΠΈΡΡ make ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ , Π½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈΡ Π±ΡΠΊΠ΅Π½Π΄ΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ xcode ΠΈ VisualStudio. Π ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΡΡΠΎΠ΅Π½ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Meson Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π΄Π»Ρ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ². ΠΡΠ°Π²ΠΈΠ»Π° ΡΠ±ΠΎΡΠΊΠΈ Π·Π°Π΄Π°ΡΡΡΡ Π½Π° ΡΠΏΡΠΎΡΡΠ½Π½ΠΎΠΌ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅, ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ Ρ ΠΎΡΠΎΡΠ΅ΠΉ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΡΡ ΠΈ ΠΏΠΎΠ½ΡΡΠ½Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (ΠΏΠΎ Π·Π°Π΄ΡΠΌΠΊΠ΅ Π°Π²ΡΠΎΡΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡΠ°ΡΠΈΡΡ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»).
ΠΊΡΠΎΡΡ-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈ ΡΠ±ΠΎΡΠΊΠ° Π² Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS ΠΈ Windows Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ GCC, Clang, Visual Studio ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ². ΠΠΎΠ·ΠΌΠΎΠΆΠ½Π° ΡΠ±ΠΎΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Ρ C, C++, Fortran, Java ΠΈ Rust. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ ΡΠ±ΠΎΡΠΊΠΈ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠ΅ΡΠ΅ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Π½Π°ΠΏΡΡΠΌΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ, Π²Π½Π΅ΡΡΠ½Π½ΡΠΌΠΈ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΡΠΎΡΠ»ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ. Meson ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅ΠΌΡΡ ΡΠ±ΠΎΡΠΎΠΊ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΏΡΡΠΊ ΡΠ±ΠΎΡΠΊΠΈ Π² ΡΠ°Π·Π½ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ².
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Meson 0.52:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Webassembly Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Emscripten;
- Π‘ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ»ΡΡΡΠ΅Π½Π° ΠΈ Π΄ΠΎΠ²Π΅Π΄Π΅Π½Π° Π΄ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌ Illumos ΠΈ Solaris;
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΈΠ½ΡΠ΅ΡΠ½Π°ΡΠΈΠΎΠ½Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° Π±Π°Π·Π΅ gettext Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ gettext (ΡΠ°Π½Π΅Π΅ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ i18n Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Π±Π΅Π· gettext Π²ΡΠ²ΠΎΠ΄ΠΈΠ»Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΠ°);
- Π£Π»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. Π Π΅ΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π΄Π΅ΠΈΠ½ΡΡΠ°Π»Π»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ»ΠΎΠ²Π°ΡΠ΅ΠΉ Π΄Π»Ρ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ. ΠΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ environment() Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ»ΠΎΠ²Π°ΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π² ΡΠΎΡΠΌΠ΅ ΠΊΠ»ΡΡ/Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΠ°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½Ρ Π² environment_object ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ ΠΎΠ½ΠΈ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π»ΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΠΌΠ΅ΡΠΎΠ΄ set(). Π‘Π»ΠΎΠ²Π°ΡΠΈ ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ Β«envΒ»;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Β«runtarget alias_target(target_name, dep1, β¦)Β», ΡΠΎΠ·Π΄Π°ΡΡΠ°Ρ Π½ΠΎΠ²ΡΡ ΡΠ±ΠΎΡΠΎΡΠ½ΡΡ ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ Ρ Π²ΡΠ±ΡΠ°Π½Π½ΡΠΌ ΡΠ±ΠΎΡΠΎΡΠ½ΡΠΌ Π±ΡΠΊΠ΅Π½Π΄ΠΎΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«ninja target_nameΒ»). ΠΠ°Π½Π½Π°Ρ ΡΠ±ΠΎΡΠΎΡΠ½Π°Ρ ΡΠ΅Π»Ρ Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ±ΠΎΡΠΊΡ Π²ΡΠ΅Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ;
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ PKG_CONFIG_SYSROOT_DIR ΠΏΡΠΈ ΠΊΡΠΎΡΡ-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ sys_root Π² ΡΠ΅ΠΊΡΠΈΠΈ Β«[properties]Β»;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βgdb-pathΒ» Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΡΡΠΈ ΠΊ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΡ GDB ΠΏΡΠΈ ΡΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΎΠΏΡΠΈΠΈ Β«βgdb testnameΒ» Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° GDB Ρ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΡΠ΅ΡΡΠΎΠ²ΡΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠ΅ΠΌ;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠΉ ΡΠ΅Π»ΠΈ clang-tidy Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠΎΠ³ΠΎ linter-Π° ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ. Π¦Π΅Π»Ρ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ clang-tidy ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π² ΠΊΠΎΡΠ½Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΠΉΠ»Π° Β«.clang-tidyΒ» (ΠΈΠ»ΠΈ Β«_clang-tidyΒ»);
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ dependency(βblocksβ) Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² Clang ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ;
- Π Π°Π·Π΄Π΅Π»Π΅Π½Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠ° ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ² ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΡΠΈΠΊΠΎΠ²;
- Π ΠΎΠ±ΡΠ΅ΠΊΡΡ SourceSet Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΌΠ΅ΡΠΎΠ΄ all_dependencies() Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΌΠ΅ΡΠΎΠ΄Ρ all_sources();
- Π run_project_tests.py ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΎΠΏΡΠΈΡ Β«βonlyΒ» Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΡΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«python run_project_tests.py βonly fortran python3Β»);
- Π ΡΡΠ½ΠΊΡΠΈΠΈ find_program() Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠΈΡΠΊΠ° ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π²Π΅ΡΡΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ (Π²Π΅ΡΡΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Ρ ΠΎΠΏΡΠΈΠ΅ΠΉ Β«βversionΒ»);
- ΠΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΊΡΠΏΠΎΡΡΠΎΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΡΠ½ΠΊΡΠΈΡ shared_module() ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ shared_library() Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ vs_module_defs;
- Π Π°ΡΡΠΈΡΠ΅Π½Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ kconfig, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ configure_file() Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°;
- Π configure_file() Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΊΠ°Π·Π°Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²Ρ ΠΎΠ΄Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Β«command:Β»;
- ΠΠΎΠΌΠ°Π½Π΄Π° Β«distΒ» Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°ΡΡ
ΠΈΠ²Π° ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½Π° Π² ΡΠ°Π·ΡΡΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ (ΡΠ°Π½Π΅Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡΠ»Π° ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° ΠΊ ninja). ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βformatsΒ» Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΡ
Π°ΡΡ
ΠΈΠ²ΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
Β«meson dist βformats=xztar,zipΒ»).
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
