ĂshtĂ« publikuar versioni i gjeneratorit tĂ« skenarĂ«ve tĂ« ndĂ«rtimit CMake 3.21, i cili Ă«shtĂ« njĂ« alternativĂ« pĂ«r Autotools dhe pĂ«rdoret nĂ« projekte tĂ« tilla si KDE, LLVM/Clang, MySQL, MariaDB, ReactOS dhe Blender. Kodi CMake Ă«shtĂ« shkruar nĂ« gjuhĂ«n C++ dhe shpĂ«rndahet nĂ«n licencĂ«n BSD.
CMake është i njohur për ofrimin e një gjuhe të thjeshtë skenarësh, mjeteve për zgjerimin e funksionalitetit përmes moduleve, numrit minimal të varësive (nuk ka lidhje me M4, Perl ose Python), mbështetje për keq-kërkim, mjete për ndërtim të shumë-platformave, mbështetje për gjenerimin e skedarëve të ndërtimit për një gamë të gjerë sistemesh ndërtimi dhe kompilorë, si dhe mjeteve ctest dhe cpack për definimin e skenarëve të testimit dhe ndërtimit të paketave, mjeteve cmake-gui për konfigurimin interaktiv të parametrave të ndërtimit.
Përmirësimet kryesore:
- ĂshtĂ« shtuar mbĂ«shtetje e plotĂ« pĂ«r gjuhĂ«n e programimit HIP (Heterogeneous-Computing Interface for Portability), njĂ« dialekt i gjuhĂ«s C++, pĂ«r ta bĂ«rĂ« mĂ« tĂ« lehtĂ« transformimin e aplikacioneve CUDA nĂ« kod tĂ« portueshĂ«m C++.
- ĂshtĂ« shtuar njĂ« gjenerator i skenarĂ«ve tĂ« ndĂ«rtimit pĂ«r Visual Studio 17 2022, i bazuar nĂ« versionin paraprak tĂ« Visual Studio 2022 Preview 1.1.
- Në gjeneratorët e skenarëve të ndërtimit Makefile dhe Ninja janë shtuar veçoritë C_LINKER_LAUNCHER dhe CXX_LINKER_LAUNCHER, me të cilat mund të organizohet ekzekutimi i mjeteve ndihmëse që realizojnë ekzekutimin e lidësit, si analizatorët statikë. Gjeneratori do të ekzekutojë mjetet e specifikuara, duke u dorëzuar emrin e lidësit dhe argumentet e tij.
- Në veçoritë 'C_STANDARD' dhe 'OBJC_STANDARD', si dhe në mjetet për konfigurimin e parametrave të kompilatorit (Compile Features), është shtuar mbështetje për specifikimet C17 dhe C23.
- Në mjete është shtuar opsioni '--toolchain ' për të përcaktuar rrugën drejt instrumenteve.
- Janë siguruar ngjyrat e tilla të mesazheve që shfaqen në terminal.
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r kompilatorin Fujitsu.
- Në komandën 'foreach()', është siguruar izolimi i variablave të ciklit brenda ciklit.
Gjithashtu, mund tĂ« pĂ«rmendim publikimin e sistemit tĂ« ndĂ«rtimit Meson 0.59, i cili pĂ«rdoret pĂ«r ndĂ«rtimin e projekteve tĂ« tilla si X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME dhe GTK. Kodi Meson Ă«shtĂ« shkruar nĂ« gjuhĂ«n Python dhe shpĂ«rndahet nĂ«n licencĂ«n Apache 2.0. MbĂ«shtetet ndĂ«rtimi i ndĂ«rprerĂ«ve dhe ndĂ«rtimi nĂ« Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS dhe Windows duke pĂ«rdorur GCC, Clang, Visual Studio dhe kompilatorĂ« tĂ« tjerĂ«. ĂshtĂ« e mundur ndĂ«rtimi i projekteve nĂ« gjuhĂ« tĂ« ndryshme programimi, duke pĂ«rfshirĂ« C, C++, Fortran, Java dhe Rust. NĂ« vend tĂ« mjeteve bĂ«, nĂ« ndĂ«rtimin e parazgjedhur pĂ«rdoret mjeti Ninja, por Ă«shtĂ« e mundur tĂ« pĂ«rdoren edhe backend tĂ« tjerĂ« si xcode dhe VisualStudio.
Sistemi përmban një përpunues të shumë-platformave për varësitë, që lejon përdorimin e Meson për ndërtimin e paketave për shpërndarjet. Rregullat e ndërtimit janë të përcaktuara në një gjuhë të thjeshtë të orientuar drejt subjekteve, duke u dalluar për lexueshmëri të lartë dhe duke qenë të kuptueshme për përdoruesin (sipaskan autorët, zhvilluesi duhet të harxhojë sa më pak kohë në shkrimin e rregullave). Mbështetet mënyra inkrementale e ndërtimit, ku riciklohen vetëm komponentët që janë lidhur drejtpërdrejt me ndryshimet e bëra që nga ndërtimi i kaluar. Meson mund të përdoret për formimin e ndërtimeve të përsëritshme, ku ekzekutimi i ndërtimit në ambientet e ndryshme çon në krijimin e skedarëve ekzekutues të identikë.
Risi kryesore të Meson 0.59:
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r gjuhĂ«n Cython (njĂ« variant i zgjeruar i Python, qĂ« synon tĂ« lehtĂ«sojĂ« integrimin me kodin nĂ« gjuhĂ«n C).
- Janë shtuar fjalë kyçe 'unescaped_variables' dhe 'unescaped_uninstalled_variables' për të përcaktuar variablat në pkgconfig pa e shpëtuar hapësirën me simbolin '\'.
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r wrc (Wine Resource Compiler).
- ĂshtĂ« realizuar mundĂ«sia e gjenerimit tĂ« projekteve pĂ«r Visual Studio 2012 dhe Visual Studio 2013.
- Të gjitha komandat që lidhen me përpunimin e nënprojekteve tani padrãozhen secilën nënprojekt paralelisht. Numri i proceseve që punojnë paralelisht përcaktohet nga parametri '--num-processes'.
Burimi: opennet.ru
