Byl vydán multiplatformní open-source generátor build scriptů CMake 3.28, který slouží jako alternativa k Autotools a je používán v projektech jako KDE, LLVM/Clang, MySQL, MariaDB, ReactOS a Blender. CMake se vyznačuje jednoduchým skriptovacím jazykem, možnostmi rozšíření prostřednictvím modulů, podporou caching, nástroji pro křížovou kompilaci, generováním build souborů pro širokou škálu build systémů a kompilátorů, a obsahuje utility ctest a cpack pro definování testovacích skriptů a balíčkování, a utility cmake-gui pro interaktivní nastavení možností buildu. Kód CMake je napsán v C++ a je distribuován pod licencí BSD.
Hlavní vylepšení:
- Byla přidána podpora modulů definovaných ve specifikaci C++ 20 do generátorů build scriptů pro Visual Studio a Ninja. Podpora modulů je dostupná při použití LLVM/Clang 16, GCC 14-dev nebo MSVC 14.34.
- Byla implementována podpora pro kompilaci kódu na GPU NVIDIA v jazyce HIP s použitím kompilátoru NVCC (NVIDIA CUDA Compiler). Byla přidána proměnná CMAKE_HIP_PLATFORM pro výběr GPU platformy pro HIP ("amd" nebo "nvidia").
- Na Apple platformách byla zajištěna podpora pro adresáře "*.xcframework".
- Byl odstraněn příkaz "exec_program()" vyhlášený za zastaralý ve verzi 3.0. Pro spouštění procesů je třeba použít příkaz "execute_process()".
- Souborům generovaným pomocí módu "FILE_SET" se nyní standardně přistupuje jako k soukromým, což umožňuje vytváření efektivnějšího build grafu v generátorech Ninja.
- Ve slotech find_library(), find_path() a find_file() na platformě Windows byla deaktivována podpora pro hledání v instalačních adresářích, získaných z proměnné prostředí PATH (pro sjednocení chování v systému Windows s ostatními platformami).
Zdroj: opennet.ru
