Objavljen je izid multiplatformskog otvorenog generatora skripta za gradnju CMake 3.28, koji služi kao alternativa Autotools i koristi se u projektima poput KDE, LLVM/Clang, MySQL, MariaDB, ReactOS i Blender. CMake se izdvaja po jednostavnom jeziku skripta, mogućnosti proširenja funkcionalnosti putem modula, podršci za keširanje, prisutnosti alata za cross-kompajliranje, podršci za generiranje datoteka za gradnju za širok spektar sustava za gradnju i kompajlere, te alate ctest i cpack za definiranje skripti za testiranje i pakiranje, kao i alatu cmake-gui za interaktivnu konfiguraciju postavki gradnje. Kod CMake napisano je na jeziku C++ i distribuira se pod BSD licencom.
Glavne izboljšave:
- Generatorima skripta za gradnju za Visual Studio i Ninja dodana je podrška za module definirane u specifikaciji C++ 20. Podrška za module dostupna je uz LLVM/Clang 16, GCC 14-dev ili MSVC 14.34.
- Implementirana je mogućnost kompilacije za GPU NVIDIA koda na jeziku HIP, koristeći kompilator NVCC (NVIDIA CUDA Compiler). Dodana je varijabla CMAKE_HIP_PLATFORM za odabir GPU platforme za HIP („amd“ ili „nvidia“).
- Na Apple platformama osigurana je podrška za direktorije „.xcframework“.
- Komanda „exec_program()“ je uklonjena, budući da je proglašena zastarjelom u izdanju 3.0. Za pokretanje procesa trebate koristiti komandu „execute_process()“.
- Datoteke generirane korištenjem režima „FILE_SET“ sada se prema zadanim postavkama obrađuju kao privatne, što omogućuje formiranje učinkovitijeg grafa gradnje u generatorima Ninja.
- U komandama find_library(), find_path() i find_file() na Windows platformi isključen je pretraživanju u instalacijskim katalogima dobivenim iz varijable okruženja PATH (radi usklađivanja ponašanja na Windowsu s drugim platformama).
Izvor: opennet.ru
