Release of build systems CMake 3.21 and Meson 0.59.

Bemutatásra került a CMake 3.21 verzió, egy multiplatform nyílt építési szkript generátor, amely alternatívaként funkcionál az Autotools mellett, és olyan projektekben használatos, mint a KDE, LLVM/Clang, MySQL, MariaDB, ReactOS és Blender. A CMake kód C++ nyelven íródott és BSD licenc alatt terjesztik.

A CMake kiemelkedő a könnyen használható scripting nyelvével, a funkcionalitás kiterjesztésének lehetőségével modulokon keresztül, minimális függőségekkel (nincsenek M4, Perl vagy Python függőségek), cache támogatással, cross-compiling eszközökkel, széles spektrumú build rendszerek és fordítók számára készült build fájlok generálásával, valamint a ctest és cpack eszközök biztosításával, amelyek a tesztelő és csomagoló script meghatározására szolgálnak, továbbá a cmake-gui eszközzel, amely interaktív módon teszi lehetővé a build paraméterek beállítását.

Fő fejlesztések:

  • Teljes körű támogatást kapott a HIP (Heterogeneous-Computing Interface for Portability) programozási nyelv, a C++ nyelv egy dialektusa, amely a CUDA alkalmazások hordozható C++ kódra való átkonvertálását hivatott egyszerűsíteni.
  • Hozzáadva a Visual Studio 17 2022-hez készült építési szkript generátor, amely a Visual Studio 2022 Preview 1.1 előzetes kiadásán alapul.
  • A Makefile és Ninja építési szkript generátorokhoz hozzáadták a C_LINKER_LAUNCHER és CXX_LINKER_LAUNCHER tulajdonságokat, amelyek lehetővé teszik segédprogramok futtatását, amelyek a linker indítását végzik, például statikus elemzők. A generátor az adott segédprogramokat úgy indítja, hogy átadja nekik a linker nevét és argumentumait.
  • A "C_STANDARD" és "OBJC_STANDARD" tulajdonságokban, valamint a fordító beállító eszközökben (Compile Features) hozzáadták a C17 és C23 specifikációk támogatását.
  • A cmake eszközhöz hozzáadva egy "—toolchain " opció a szerszámpálya megadásához.
  • Megvalósítva a terminálra kiírt üzenetek típusainak kiemelését.
  • Hozzáadva a Fujitsu fordító támogatása.
  • A "foreach()" parancsban biztosítva van a ciklusváltozók elszigetelése a ciklus során.

Továbbá említést érdemel a Meson 0.59 építési rendszer kiadása, amelyet olyan projektek építésére használnak, mint a X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME és GTK. A Meson kód Python nyelven íródott és Apache 2.0 licenc alatt áll rendelkezésre. Támogatott a keresztfordítás és az építés Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS és Windows rendszerek alatt GCC, Clang, Visual Studio és más fordítók használatával. Lehetséges projektek építése különböző programozási nyelveken, beleértve a C, C++, Fortran, Java és Rust nyelveket. A make eszköz helyett alapértelmezés szerint a Ninja szerszám használatos, de más backendek, mint az xcode és VisualStudio is alkalmazhatók.

A rendszerbe beépített, többplatformos függőségkezelő lehetővé teszi a Meson használatát csomagok összeállításához. Az összeállítási szabályok egy leegyszerűsített, szakterület-specifikus nyelven vannak megfogalmazva, amelyek jól olvashatók és érthetőek a felhasználó számára (a szerzők elképzelése szerint a fejlesztőnek a lehető legkevesebb időt kellene eltöltenie a szabályok megírásával). Támogatott az inkrementális összeállítási mód, amelyben csak az átdolgozásokkal közvetlenül összefüggő komponensek kerülnek újraépítésre. A Meson használható ismételhető összeállítások létrehozására, amelyeknél az összeállítás különböző környezetekben történő futtatása teljesen azonos végrehajtható fájlokat generál.

A Meson 0.59 fő újdonságai:

  • Hozzáadva a Cython nyelv támogatása (a Python kiterjesztett változata, amely a C nyelvvel való integráció megkönnyítésére összpontosít).
  • Két új kulcsszó került bevezetésre: „unescaped_variables” és „unescaped_uninstalled_variables” a pkgconfig-ban a szóközök „\” karakterrel való elkerülése nélküli definiálásához.
  • A wrc (Wine Resource Compiler) támogatása hozzáadva.
  • Lehetőség létrejött a Visual Studio 2012 és 2013 projektek generálására.
  • Minden, az alprojektek feldolgozásával kapcsolatos parancs mostantól alapértelmezetten párhuzamosan futtatja az összes alprojektet. A párhuzamosan futó folyamatok száma a „—num-processes” paraméter határozza meg.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster