Die Veröffentlichung des plattformübergreifenden Open-Source-Baustellen-Generators CMake 3.23 wurde vorgestellt, der als Alternative zu Autotools dient und in Projekten wie KDE, LLVM/Clang, MySQL, MariaDB, ReactOS und Blender verwendet wird. Der CMake-Code ist in C++ geschrieben und wird unter der BSD-Lizenz verbreitet.
CMake zeichnet sich durch die Bereitstellung einer einfachen Skriptsprache aus, Möglichkeiten zur Erweiterung über Module, Unterstützung von Caching, Vorhandensein von Werkzeugen für Cross-Compilation, Unterstützung der Generierung von Build-Dateien für eine Vielzahl von Build-Systemen und Compilern, sowie über die Tools ctest und cpack zur Definition von Test- und Paketbuild-Skripten, und dem cmake-gui-Tool zur interaktiven Anpassung der Build-Parameter.
Hauptverbesserungen:
- In die Dateien „cmake-presets“ wurde ein optionales Feld „include“ eingefügt, mit dem der Inhalt anderer Dateien vor Ort eingebracht werden kann.
- In die Generatoren für Build-Skripte für Visual Studio 2019 und neuere Versionen wurde die Unterstützung von csproj-Dateien des .NET SDK für C#-Projekte hinzugefügt.
- Die Unterstützung des IBM Open XL C/C++-Compilers, der auf LLVM basiert, wurde hinzugefügt. Der Compiler ist unter der Kennung IBMClang verfügbar.
- Die Unterstützung des MCST LCC-Compilers (entwickelt für Elbrus- und SPARC-Prozessoren (MCST-R)) wurde hinzugefügt. Der Compiler ist unter der Kennung LCC verfügbar.
- Dem Befehl „install(TARGETS)“ wurde ein neues Argument „FILE_SET“ hinzugefügt, das zur Installation einer Gruppe von Header-Dateien verwendet werden kann, die mit der gewählten Zielplattform verknüpft sind.
- Dem Befehl „target_sources()“ wurde der Modus „FILE_SET“ hinzugefügt, mit dem eine Gruppe von Dateien eines bestimmten Typs, beispielsweise Header-Dateien, hinzugefügt werden kann.
- In die Variable „CMAKE_CUDA_ARCHITECTURES“ und die Eigenschaft der Zielplattform „CUDA_ARCHITECTURES“ wurde die Unterstützung der Werte „all“ und „all-major“ für das CUDA Toolkit 7.0+ integriert.
Quelle: opennet.ru
