Gepresenteerd wordt de release van de platformonafhankelijke open build scriptgenerator CMake 3.23, die fungeert als een alternatief voor Autotools en wordt gebruikt in projecten zoals KDE, LLVM/Clang, MySQL, MariaDB, ReactOS en Blender. De CMake-code is geschreven in C++ en gedistribueerd onder de BSD-licentie.
CMake valt op door het bieden van een eenvoudige scripttaal, tools voor het uitbreiden van functionaliteit via modules, caching-ondersteuning, de aanwezigheid van tools voor cross-compilatie, ondersteuning voor het genereren van build-bestanden voor een breed scala aan build-systemen en compilers, de aanwezigheid van ctest en cpack hulpprogramma's voor het definiëren van testscripts en het bouwen van pakketten, en het cmake-hulpprogramma -gui voor interactieve configuratie van bouwparameters.
Belangrijkste verbeteringen:
- Er is een optioneel “include”-veld toegevoegd aan de “cmake-presets”-bestanden, waarmee u de inhoud van andere aanwezige bestanden kunt vervangen.
- Bouw scriptgenerators voor Visual Studio 2019 en nieuwere versies ondersteunen nu .NET SDK csproj-bestanden voor C#-projecten.
- Ondersteuning toegevoegd voor de IBM Open XL C/C++ compiler, gebaseerd op LLVM. De compiler is beschikbaar onder de identificatie IBMClang.
- Ondersteuning toegevoegd voor de MCST LCC-compiler (ontwikkeld voor Elbrus- en SPARC (MCST-R)-processors). De compiler is beschikbaar onder de LCC-identificatie.
- Er is een nieuw argument toegevoegd aan de opdracht "install(TARGETS)", "FILE_SET", die kan worden gebruikt om een set headerbestanden te installeren die zijn gekoppeld aan het geselecteerde doelplatform.
- Aan het commando “target_sources()” is de modus “FILE_SET” toegevoegd, waarmee je een set van een bepaald type bestanden met code kunt toevoegen, bijvoorbeeld headerbestanden.
- Ondersteuning toegevoegd voor "all" en "all-major" waarden voor CUDA toolkit 7.0+ aan de "CMAKE_CUDA_ARCHITECTURES" variabele en de doelplatformeigenschap "CUDA_ARCHITECTURES".
Bron: opennet.ru