Release van de build-systeem CMake 3.17.0

GeĆÆntroduceerd release van de cross-platform open source build-scripts generator CMake 3.17, dat dient als alternatief voor Autotools en wordt gebruikt in projecten zoals KDE, LLVM/Clang, MySQL, MariaDB, ReactOS en Blender. De code van CMake is geschreven in C++ en wordt verspreid onder de BSD-licentie.

CMake valt op door het bieden van een eenvoudige script-taal, extensiemogelijkheden via modules, een minimaal aantal afhankelijkheden (geen binding aan M4, Perl of Python), ondersteuning voor cachen, tools voor cross-compilatie, ondersteuning voor het genereren van build-bestanden voor een breed scala aan build-systemen en compilers, en de aanwezigheid van de tools ctest en cpack voor het definiƫren van test- en pakket build-scripts, evenals de cmake-gui-tool voor interactieve configuratie van build-instellingen.

Belangrijkste verbeteringen:

  • Een nieuwe generator voor build-scripts op basis van het Ninja-toolkit is toegevoegd - "Ninja Multi-Config", die verschilt van de oude generator door het vermogen om meerdere build-configuraties tegelijk te verwerken.
  • In de build-script-generator voor Visual Studio in de testbuild Canary, en is onlangs overgebracht naar de release. Om het te activeren, moet u naar het gedeelte flags chrome://flags gaan, het vlag 'Filesystem API in Incognito' zoeken via de zoekfunctie en deze inschakelen. Na het opnieuw opstarten van de browser zal de incognito-modus volledig functioneren. is de mogelijkheid toegevoegd om bestanden met broncode te definiĆ«ren die aan elke configuratie zijn gekoppeld (per-config sources).
  • In de tools voor het instellen van compilerparameters (Compile Features) is de mogelijkheid toegevoegd om meta-parameters voor CUDA op te geven ("cuda_std_03", "cuda_std_14", etc.).
  • De variabelen "CMAKE_CUDA_RUNTIME_LIBRARY" en "CUDA_RUNTIME_LIBRARY" zijn toegevoegd om het type runtime-bibliotheken te kiezen bij het gebruik van CUDA.
  • De module "FindCUDAToolkit" is toegevoegd om beschikbare CUDA-tools in het systeem te detecteren zonder CUDA-taal in te schakelen.
  • Er is een commando "—debug-find" toegevoegd aan de cmake-tool voor het genereren van extra leesbare diagnostiek tijdens zoekoperaties. Voor soortgelijke doeleinden is de variabele CMAKE_FIND_DEBUG_MODE toegevoegd.
  • De module "FindCURL" heeft ondersteuning gekregen voor het zoeken naar CURL-tools via gegenereerde cmake-configuratiebestanden "CURLConfig.cmake". Er is een variabele CURL_NO_CURL_CMAKE toegevoegd om dit gedrag uit te schakelen.
  • De module FindPython heeft de mogelijkheid gekregen om Python-componenten te zoeken in virtuele omgevingen die worden beheerd met "conda".
  • In de ctest-tool zijn opties "—no-tests=[error|ignore]" toegevoegd om het gedrag bij afwezigheid van tests te bepalen en "—repeat" voor het instellen van de voorwaarden voor het opnieuw uitvoeren van tests (until-pass, after-timeout).
  • Eigenschappen van de build-doelstellingen INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES en INTERFACE_LINK_DEPENDS zijn overgedragen in het aantal interne afhankelijkheden van statisch gelinkte bibliotheken.
  • Bij gebruik van het MinGW-toolkit is de standaardinstelling voor het zoeken naar DLL-bestanden met de opdracht find_library uitgeschakeld (in plaats daarvan wordt standaard geprobeerd om " .dll.a" bibliotheken te importeren).
  • De logica voor het kiezen van de ninja-tool in de Ninja-generator hangt nu niet af van de naam van het uitvoerbare bestand — de eerste beschikbare tool ninja-build, ninja of samu wordt gebruikt, gevonden in de paden die zijn gedefinieerd via de omgevingsvariabele PATH.
  • Een commando "-E rm" is toegevoegd aan de cmake-tool, dat kan worden gebruikt om bestanden en mappen te verwijderen in plaats van aparte commando's "-E remove" en "-E remove_directory".

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster