Release des Build-Systems CMake 3.22

Der Release des plattformübergreifenden Open-Source-Build-Generators CMake 3.22 wurde vorgestellt, der als Alternative zu Autotools dient und in Projekten wie KDE, LLVM/Clang, MySQL, MariaDB, ReactOS und Blender verwendet wird. Der Code von CMake ist in C++ geschrieben und wird unter der BSD-Lizenz verbreitet.

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.

Wesentliche Verbesserungen:

  • In den Compiler-Einstellungen (Compile Features) wurde die Möglichkeit hinzugefügt, Compiler-Erweiterungen ein- und auszuschalten, ohne das Unterstützungsniveau des Standards anzugeben, und es wurde ausgeschlossen, überflüssige Flags für das Sprachniveau festzulegen, wenn die gewählten Einstellungen den standardmäßig festgelegten Compiler-Parametern entsprechen.
  • Der Befehl cmake_host_system_information() wurde um die Möglichkeit erweitert, die Betriebssystem-ID abzufragen, die in der Datei /etc/os-release gespeichert ist.
  • Es wurden die Umgebungsvariablen CMAKE_BUILD_TYPE und CMAKE_CONFIGURATION_TYPES hinzugefügt, über die der Standardwert der gleichnamigen CMake-Variablen festgelegt werden kann.
  • Es wurde die Variable „CMAKE_REQUIRE_FIND_PACKAGE_“ hinzugefügt, die den Aufruf der Funktion find_package() zur Erkennung des angegebenen Pakets zwingend macht.
  • Es wurde die Umgebungsvariable „CMAKE_INSTALL_MODE“ hinzugefügt, die symbolische Links im Austausch für das Kopieren von Dateien beim Aufruf von „install()“ festlegt.
  • Es wurde das Flag „CMAKE__LINK_WHAT_YOU_USE_FLAG“ sowie die Variable „CMAKE_LINK_WHAT_YOU_USE_CHECK“ hinzugefügt, um die Linker-Flags festzulegen und zu überprüfen.
  • Im FetchContent-Modul wird die Übergabe der gesetzten Variablen „CMAKE_TLS_VERIFY“, „CMAKE_TLS_CAINFO“, „CMAKE_NETRC“ und „CMAKE_NETRC_FILE“ im Build-Skript für externe Projekte ermöglicht (früher wurden diese Parameter ignoriert).
  • Im vom Modul „CMakeDependentOption“ bereitgestellten Makro „cmake_dependent_option()“ wurde die vollständige Unterstützung der Syntax für bedingte Ausdrücke hinzugefügt.
  • Die Module „FindJasper“ und „FindMatlab“ bieten jetzt importierbare Ziele.
  • Im Attribut „VS_SETTINGS“ wird die Unterstützung aller Arten von Quelltextdateien realisiert.
  • Der Generator „Visual Studio 10 2010“ wurde als veraltet erklärt und wird in einer der nächsten Versionen entfernt.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster