Meson build system release 0.52

MIVOAKA manangana famoahana rafitra Meson 0.52, izay ampiasaina hananganana tetikasa toy ny X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME ary GTK+. Ny kaody Meson dia voasoratra amin'ny Python ary nanome nahazo alalana tamin'ny Apache 2.0.

Ny tanjona fototra amin'ny fivoaran'ny Meson dia ny manome haingana ny fizotran'ny fivoriambe miaraka amin'ny fanamorana sy ny fampiasana mora. Raha tokony ho ny make utility, ny fananganana default dia mampiasa ny fitaovana Ninja, fa azo atao koa ny mampiasa backend hafa, toy ny xcode sy VisualStudio. Ny rafitra dia manana mpandrindra miankina amin'ny sehatra marobe izay ahafahanao mampiasa Meson hanamboarana fonosana ho an'ny fizarana. Ny fitsipiky ny fivoriambe dia voatondro amin'ny fiteny voafaritra manokana amin'ny sehatra notsorina, azo vakiana sy takatry ny mpampiasa (araka ny nokasain'ny mpanoratra, ny mpamorona dia tokony handany fotoana kely indrindra hanoratana fitsipika).

Nanohana cross-compile ary manorina amin'ny Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS ary Windows mampiasa GCC, Clang, Visual Studio ary ireo compiler hafa. Azo atao ny manangana tetikasa amin'ny fiteny fandaharana isan-karazany, ao anatin'izany ny C, C++, Fortran, Java ary Rust. Ny fomba fananganana incremental dia tohanana, izay singa mifandraika mivantana amin'ny fanovana natao hatramin'ny fanamboarana farany ihany no amboarina. Ny Meson dia azo ampiasaina hamoronana fananganana azo averina, izay ny fampandehanana ny fananganana amin'ny tontolo samihafa dia miteraka rakitra azo tanterahana mitovy tanteraka.

tena fanavaozana Meson 0.52:

  • Nanampy fanohanana andrana ho an'ny Webassembly amin'ny fampiasana Emscripten ho compiler;
  • Ny fanohanana ny sehatra Illumos sy Solaris dia nohatsaraina be ary nentina tamin'ny toe-javatra miasa;
  • Miantoka fa tsy raharahaina ny script internationalization mifototra amin'ny gettext raha toa ka tsy misy ny gettext toolkit napetraka ny rafitra (teo aloha dia nisy hadisoana naseho tamin'ny fampiasana ny maody i18n amin'ny rafitra tsy misy gettext);
  • Fanohanana nohatsaraina ho an'ny tranomboky static. Betsaka ny olana rehefa mampiasa tranomboky static efa voavaha;
  • Nampiana ny fahafahana mampiasa diksionera hanendry ny fari-piainan'ny tontolo iainana. Rehefa miantso environment(), ny singa voalohany dia azo faritana ho toy ny rakibolana izay mamaritra ny fari-piainan'ny tontolo iainana amin'ny endrika key/value. Ireo variables ireo dia hafindra any amin'ny environment_object toy ny hoe napetraka tsirairay avy amin'ny fomba set(). Ny rakibolana dia azo ampitaina amin'ny fiasa isan-karazany izay manohana hevitra "env";
  • Fampiasa fanampiny "runtarget alias_target(target_name, dep1, ...)" izay mamorona tanjona fananganana ambaratonga voalohany izay azo antsoina amin'ny backend fananganana voafantina (oh: "ninja target_name"). Ity kendrena fananganana ity dia tsy mitondra baiko, fa miantoka fa ny fiankinan-doha rehetra dia namboarina;
  • Nalefa ny fandrindrana mandeha ho azy amin'ny fari-piainan'ny tontolo iainana PKG_CONFIG_SYSROOT_DIR mandritra ny fanangonana cross-compilation raha toa ka misy ny sys_root ao amin'ny fizarana "[properties]";
  • Nampiana safidy "--gdb-path" hamaritana ny lalana mankany amin'ny debugger GDB rehefa mamaritra ny safidy "--gdb testname" hampandehanana ny GDB miaraka amin'ny script fitsapana voatondro;
  • Fanampiana mandeha ho azy amin'ny kendrena fananganana clang-tidy hampandehanana ity linter ity miaraka amin'ny rakitra loharano rehetra. Ny tanjona dia noforonina raha misy clang-tidy hita ao amin'ny rafitra ary ny rakitra ".clang-tidy" (na "_clang-tidy") dia voafaritra ao amin'ny fototry ny tetikasa;
  • Nampiana fiankinan-doha('blocks') ampiasaina amin'ny fanitarana Clang Blocks;
  • Misaraka ny fomba fijerin'ny mpampitohy sy ny mpamoron-kira, ahafahan'ny fampifangaroana samy hafa amin'ny mpamoron-javatra sy ny mpampitohy ampiasaina;
  • Nampiana fomba all_dependencies() amin'ny zavatra SourceSet ankoatra ny fomba all_sources() ;
  • Ao amin'ny run_project_tests.py, ny safidy "--only" dia nampiana ho an'ny fitsapana fantenana (ohatra, "python run_project_tests.py β€”only fortran python3");
  • Ny asa find_program() dia manana fahafahana hikaroka afa-tsy dikan-teny ilaina amin'ny programa iray (ny dikan-teny dia voafaritra amin'ny alΓ lan'ny fampandehanana ny programa miaraka amin'ny safidy "-version");
  • Mba hifehezana ny fanondranana marika, ny safidy vs_module_defs dia nampidirina amin'ny fiasa shared_module (), mitovy amin'ny shared_library ();
  • Ny kconfig module dia nitarina hanohanana ny configure_file() amin'ny famaritana ny rakitra fampidirana;
  • Nampiana ny fahafahana mamaritra rakitra fampidirana marobe ho an'ny "command:" mpitantana ny configure_file ();
  • Ny baiko "dist" amin'ny famoronana arisiva dia nafindra ho any amin'ny sokajin'ny baiko ambaratonga voalohany (mifamatotra amin'ny ninja ny baiko taloha). Nampiana safidy "--formats" hamaritana ireo karazana arisiva hoforonina (ohatra,
    "meson dist -formats=xztar,zip").

Source: opennet.ru

Add a comment