Release des Build-Systems CMake 3.18

Präsentiert Release des plattformübergreifenden, offenen Build-Skript-Generators CMake 3.18, das 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 steht unter der BSD-Lizenz.

CMake zeichnet sich durch die Bereitstellung einer einfachen Skriptsprache, die Möglichkeit zur Erweiterung durch Module, einer minimalen Anzahl an Abhängigkeiten (keine Bindung an M4, Perl oder Python), Unterstützung für Caching, Tools zum Cross-Compiling, die Generierung von Build-Dateien für eine Vielzahl von Build-Systemen und Compilern sowie die Verfügbarkeit von Tools wie ctest und cpack zur Definition von Testskripten und Paket-Builds aus, einschließlich des Tools cmake-gui für die interaktive Anpassung von Build-Parametern.

Haupt Verbesserungen:

  • Für die CUDA-Sprache wurde die Möglichkeit der Kompilierung mit Clang auf Plattformen außer Windows bereitgestellt. Getrennte CUDA-Kompilierung wird derzeit auf keiner Plattform unterstützt.
  • Die Unterstützung für das Profiling von CMake-Skripten wurde hinzugefügt, mit den Optionen „—profiling-output“ und „—profiling-format“.
  • Die Befehle add_library() und add_executable() unterstützen jetzt die Erstellung von Alias-Targets, die auf nicht globale importierte Ziele verweisen.
  • Der Befehl cmake_language() wurde hinzugefügt, um Meta-Operationen auf skriptgesteuerten oder eingebetteten Befehlen durchzuführen.
  • Der Unterbefehl file(CONFIGURE) wurde hinzugefügt, der in der Funktionalität dem Befehl configure_file() ähnelt, jedoch den Inhalt als Zeichenfolge und nicht als Dateireferenz übergibt.
  • Den Befehlen find_program(), find_library(), find_path() und find_file() wurde die Option REQUIRED hinzugefügt, die vorschreibt, dass die Verarbeitung mit einem Fehler abgebrochen werden soll, wenn nichts gefunden wurde.
  • Eine Variable „CMAKE_CUDA_ARCHITECTURES“ wurde hinzugefügt, um die CUDA-Architektur anzugeben (wird automatisch festgelegt, wenn die Variable „CMAKE_CUDA_COMPILER_ID“ den Wert „NVIDIA“ hat).
  • Eine Eigenschaft „UNITY_BUILD_MODE“ wurde hinzugefügt, um in den Generatoren den Algorithmus zur Gruppierung der zu importierenden Quellcodedateien (BATCH, GROUP) auszuwählen.
  • Das CheckLinkerFlag-Modul wurde hinzugefügt, um die Korrektheit der Linker-Flags zu überprüfen.
  • Generator-Ausdrücke $, $, $ und $ wurden hinzugefügt.
  • In das ctest-Tool wurde die Variable CTEST_RESOURCE_SPEC_FILE integriert, um die Datei mit den Ressourcenspezifikationen anzugeben.

Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster