Utgivning av byggsystemet CMake 3.22

Den plattformsoberoende öppna bygggeneratorn CMake 3.22 har presenterats som ett alternativ till Autotools, och används i projekt som KDE, LLVM/Clang, MySQL, MariaDB, ReactOS och Blender. CMake-koden är skriven i C++ och distribueras under BSD-licensen.

CMake är känt för att erbjuda ett enkelt skriptspråk, möjligheter att utöka funktionaliteten genom moduler, ett minimalt antal beroenden (ingen bindning till M4, Perl eller Python), stöd för caching, verktyg för korskompilering, samt stöd för generering av byggfiler för ett brett spektrum av byggsystem och kompilatorer, inklusive ctest och cpack-verktyg för att definiera test- och paketbyggnads-skript, plus cmake-gui-vertyget för interaktiv konfiguration av byggparametrarna.

Huvudsakliga förbättringar:

  • I inställningar för kompilatorns parametrar (Compile Features) har möjligheten att aktivera och avaktivera kompilatorutvidgningar utan att ange stödjeruptnivåer lagts till, och onödiga flaggor för språkstandardens nivå utesluts om de valda inställningarna faller under de standardinställningar som retas.
  • I kommandot cmake_host_system_information() har möjligheten att fråga om operativsystemets ID, som lagras i filen /etc/os-release, lagts till.
  • Miljövariablerna CMAKE_BUILD_TYPE och CMAKE_CONFIGURATION_TYPES har lagts till, genom vilka standardvärdena för CMake-variablerna med samma namn kan ställas in.
  • Variabeln «CMAKE_REQUIRE_FIND_PACKAGE_» har lagts till, vilket gör anropet av funktionen find_package() för att upptäcka angivet paket obligatoriskt.
  • Miljövariabeln «CMAKE_INSTALL_MODE» har lagts till för att installera symboliska länkar istället för att kopiera filer vid anrop av «install()».
  • Flaggan «CMAKE__LINK_WHAT_YOU_USE_FLAG» och variabeln «CMAKE_LINK_WHAT_YOU_USE_CHECK» har lagts till för att ställa in och kontrollera länkflaggor.
  • I modulen FetchContent har vidarebefordran av inställda variabler «CMAKE_TLS_VERIFY», «CMAKE_TLS_CAINFO», «CMAKE_NETRC» och «CMAKE_NETRC_FILE» i byggscenarier för externa projekt säkerställts (tidigare ignorerades dessa parametrar).
  • I makrot «cmake_dependent_option()» från modulen «CMakeDependentOption» har full support för syntaktiska villkor lagts till.
  • Modulerna «FindJasper» och «FindMatlab» erbjuder nu importerbara mål.
  • I egenskapen «VS_SETTINGS» har stöd för alla typer av källfiler implementerats.
  • Generatorn «Visual Studio 10 2010» har förklarats som föråldrad och kommer att tas bort i en av de kommande utgåvorna.

Källa: opennet.ru

Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar 🔥 Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster