ืืืืจื ืืขืืงืจืืช ืฉื ืคืืชืื Meson ืืื ืืกืคืง ืืืืจืืช ืืืืื ืฉื ืชืืืื ืืืจืืื ืืฉืืืื ืขื ื ืืืืช ืืงืืืช ืฉืืืืฉ. ืืืงืื ืืื ืืฉืืจืืช make, ืื ืืืช ืืจืืจืช ืืืืื ืืฉืชืืฉืช ืืขืจืืช ืืืืื
ืืืืืจ ืฆืืื ืืื ืืื ืขื ืืื ืืงืก, macOS ื-Windows ืืืืฆืขืืช GCC, Clang, Visual Studio ืืืืืจืื ืืืจืื ื ืชืื. ื ืืชื ืืื ืืช ืคืจืืืงืืื ืืฉืคืืช ืชืื ืืช ืฉืื ืืช, ืืืื C, C++, Fortran, Java ื- Rust. ื ืชืื ืืืฆื ืื ืืื ืืฆืืืจ, ืฉืื ืจืง ืจืืืืื ืืงืฉืืจืื ืืฉืืจืืช ืืฉืื ืืืื ืฉืืืฆืขื ืืื ืืื ืืื ืืืืจืื ื ื ืื ืื ืืืืฉ. ื ืืชื ืืืฉืชืืฉ ื-Meson ืืืฆืืจืช ืจืืืื ืื ืืื ืฉื ืืชื ืื ืืืืจื, ืฉืืื ืืคืขืืช ื-build ืืกืืืืืช ืฉืื ืืช ืืืืื ืืืฆืืจืช ืงืืฆื ืืคืขืื ืืืื ืืืืืืื.
ืืขืืงืจื
- ื ืืกืคื ืชืืืื ืืื ืืื ืฉืงืืคื ืฉื ืคืจืืืงืืื ืงืืืืื ืืืฉืชืืฉืื ืืกืงืจืืคืืื ืืื ืืืช CMake. Meson ืืืืื ืืขืช ืืื ืืช ืืฉืืจืืช ืชืช-ืคืจืืืงืืื ืคืฉืืืื (ืืืื ืกืคืจืืืช ืืืืืืช) ืืืืฆืขืืช ืืืืื CMake, ืืืืื ืืชืช-ืคืจืืืงืืื ืกืื ืืจืืืื (ืืืื ืชืช-ืคืจืืืงืืื ืฉื CMake ื ืืชื ืืืงื ืืกืคืจืืืช subprojects);
- ืขืืืจ ืื ืืืืืจืื ืืืฉืืืฉืื, ืืืืงื ืืงืืืื ืืืืื ืืืืฆืขืืช ืืจืืื ืืืืฆืืข ืฉื ืงืืืฆื ืืืืงื ืคืฉืืืื (ืืืืงืช ืฉืคืืืช), ืื ืืืืืืช ืืืืืงืช ืืืืื ืฉืฆืืื ื ืขื ืืื ืืืฉืชืืฉ ืขืืืจ ืืืืจืื ืฆืืืืื (ืืขืชื ืืืืื, ื ืืืงืื ืื ืืืืจืื ืืงืืจืืื ืืคืืืคืืจืื ืื ืืืืืช) .
- ื ืืกืคื ืืช ืืืืืืช ืืืืืืจ ืืคืฉืจืืืืช ืฉืืจืช ืคืงืืื ืืืฉืืฉืืช ืืืืื ืืืืืจ ืฆืืื, ืขื ืืจืืื ืขื ืืื ืฆืืื ืงืืืืืช ืคืืืคืืจืื ืืคื ื ืืืคืฉืจืืช. ืืขืืจ, ืืคืฉืจืืืืช ืฉืืจืช ืืคืงืืื ืืืกื ืจืง ืื ืืื ืืงืืจืืช ืืื ื ืืชื ืืื ืืฆืืื ืืืชื ืขืืืจ ืงืืืคืืืฆืื ืฆืืืืช. ืืคืฉืจืืืืช ืฉืืจืช ืืคืงืืื ืืืืช ืืขืช ืืื ืงืฉืจ ืืื ืื ืืชื ืืื ื ืืงืืจื ืื ืงืืืคืืืฆืื ืฆืืืืช, ืื ืฉืืืืื ืฉ-Native ื-cross-builds ืืืืฆืจืื ืชืืฆืืืช ืืืืช;
- ื ืืกืคื ืืช ืืืืืืช ืืฆืืื ืืช ืืืื "--cross-file" ืืืชืจ ืืคืขื ืืืช ืืฉืืจืช ืืคืงืืื ืืื ืืจืฉืื ืืกืคืจ ืงืืฆืื ืฆืืืืื;
- ื ืืกืคื ืชืืืื ืืืืืจ ICL (Intel C/C++ Compiler) ืขืืืจ ืคืืืคืืจืืช Windows (ICL.EXE ื-ifort);
- ื ืืกืคื ืชืืืื ืืขืจืืช ืืืื ืจืืฉืื ืืช ืขืืืจ CPU Xtensa (xt-xcc, xt-xc++, xt-nm);
- ืฉืืืช "get_variable" ื ืืกืคื ืืืืืืืงื "dependency", ืืืืคืฉืจืช ืืงืื ืืช ืืขืจื ืฉื ืืฉืชื ื ืืืื ืืงืืช ืืืฉืืื ืืช ืกืื ืืชืืืช ืื ืืืืืช (ืืืืืื, dep.get_variable(pkg-config : 'var- name', cmake : 'COP_VAR_NAME));
- ื ืืกืฃ ืืจืืืื ื ืืืฉ ืฉื ืืคืฉืจืืืืช ืืจืืื ืฉื ืืขื, "link_language", ืืื ืืฆืืื ืืืคืืจืฉ ืืช ืืฉืคื ืฉืื ื ืขืฉื ืฉืืืืฉ ืืขืช ืงืจืืื ืืืงืฉืจ. ืืืืืื, ืชืืื ืืช Fortran ืืจืืฉืืช ืืืืื ืืงืจืื ืืงืื C/C++, ืืฉืจ ืืืืจ ืืืืืืืืช ื-C/C++ ืืืฉืจ ืืฉ ืืืฉืชืืฉ ืืืงืฉืจ Fortran;
- ืืืืคืื ืืืืื ืงืื-ืืขืื ืฉื CPPFLAGS ืืฉืชื ื. ืืขืื Meson ืืืกื ืืขืืจ CPPFLAGS ืืืืื ืืืกืฃ ืกืคืฆืืคืืื ืืฉืคื (CFLAGS, CXXFLAGS) ืื ืคืจื, ืืขืช ืื ืืขืืืืื ืืืืคื ืืืชื ื ืคืจื ืืืืืืื ืืจืฉืืืื ื-CPPFLAGS ืืฉืืฉืื ืืืงืืจ ื ืืกืฃ ืืืืื ืืืืืจ ืขืืืจ ืฉืคืืช ืืชืืืืืช ืืื;
- ืืคืื ืฉื custom_target ื-custom_target[i] ืืืื ืืฉืืฉ ืืขืช ืืืจืืืื ืืื ืืคืขืืืืช link_with ื-link_whole;
- ืืืืืืืื ืืฉ ืืขืช ืืช ืืืืืืช ืืฆืืื ืชืืืช ื ืืกืคืืช ืืืืฆืขืืช ืืืคืฉืจืืช "ืชืืื" (ืืืืืื, generator(program_runner, ืคืื: ['@[ืืืื ืืืื"ื]'], ืชืืื: exe));
- ื ืืกืคื ืืคืฉืจืืช ืกืืืืช ื-find_library ืืื ืืืคืฉืจ ืืืืคืืฉ ืืืืื ืจืง ืกืคืจืืืช ืืงืืฉืจืืช ืกืืืืช;
- ืขืืืจ python.find_installation, ื ืืกืคื ืืืืืืช ืืงืืืข ืืช ื ืืืืืชื ืฉื ืืืืื Python ื ืชืื ืขืืืจ ืืจืกื ืกืคืฆืืคืืช ืฉื Python;
- ื ืืกืฃ ืืืืื ืืืฉ unstable-kconfig ืื ืืชืื ืงืืฆื kconfig;
- ื ืืกืคื ืคืงืืื ืืืฉื "subprojects foreach", ืฉืืืงืืช ืคืงืืื ืขื ืืจืืืื ืืื ืืืจืืฆื ืืืชื ืืื ืกืคืจืืืช ืืืฉื ื;
ืืงืืจ: OpenNet.ru