CMake 3.17.0 wordt geleverd met een nieuwe Ninja-scriptgenerator, verbeteringen en meer

De lancering van de nieuwe versie van de platformonafhankelijke open source scriptgenerator CMaak 3.17, waarin ontwikkelaars hebben gewerkt om een ​​nieuw script generator genaamd "Ninja Multi-Config", verbeteringen aan de Visual Studio-scriptgenerator, algemene optimalisaties en meer.

Voor degenen die het niet weten CMaak, dat zouden ze moeten weten is een tool voor het genereren of automatiseren van meerdere platforms die fungeert als een alternatief voor Autotools en wordt gebruikt in projecten zoals KDE, LLVM / Clang, MySQL, MariaDB, ReactOS en Blender.

CMaak is opmerkelijk omdat het een eenvoudige scripttaal biedt, middelen om functionaliteit uit te breiden over modules heen, minimaal aantal afhankelijkheden (geen binding met M4, Perl of Python), ondersteuning voor caching, aanwezigheid van tools voor cross-compilatie, ondersteuning voor het genereren van build-bestanden voor een breed scala aan build-systemen en compilers, de aanwezigheid van ctest en cpack Utilities om test- en build-scripts te definiëren, cmake-gui utility om interactief build-parameters te configureren.

Dit hulpprogramma gebruikt om het compilatieproces van de software te besturen met behulp van eenvoudige en platformonafhankelijke configuratiebestanden. Genereert native makefiles en werkruimten die kunnen worden gebruikt in de gewenste ontwikkelomgeving.

Het is vergelijkbaar met het GNU-buildsysteem van Unix waarin het proces wordt bestuurd door configuratiebestanden, in het geval van CMake genaamd CMakeLists.txt.

Wat is er nieuw in CMake 3.17.0

Zoals aan het begin vermeld, is een van de belangrijkste nieuwigheden die opvallen in deze nieuwe versie van CMake 3.17.0 de het toevoegen van een nieuwe build-scriptgenerator gebaseerd op Ninja-tools, die de naam heeft van «Ninja Multi-configuratie«, Die verschilt van de vorige generator omdat deze nieuwe generator biedt de mogelijkheid om meerdere buildconfiguraties tegelijkertijd te verwerken.

Ondertussen, in de build-scriptgenerator Voor Visual Studio kunt u nu bronbestanden definiëren die aan elke instelling zijn gekoppeld.

De mogelijkheid om metaparameters in te stellen voor CUDA ("Cuda_std_03", "cuda_std_14", enz.) is toegevoegd aan tools om compilerfuncties te configureren (compilatiefuncties).

Bovendien vermeldt de advertentie dat variabelen zijn toegevoegd «CMAKE_CUDA_RUNTIME_LIBRARY"En"CUDA_RUNTIME_LIBRARY»Om het type runtime-bibliotheken te selecteren bij gebruik van CUDA en ook de module« FindCUDAToolkit »om de beschikbare CUDA-tools op het systeem te bepalen zonder de CUDA-taal op te nemen.

In CMake 3.17.0 het commando «–Debug-find»Is toegevoegd om extra leesbare diagnostiek weer te geven tijdens het zoeken. Voor vergelijkbare doeleinden is de variabele CMAKE_FIND_DEBUG_MODE.

Toegevoegd ondersteuning voor het vinden van CURL-tools in de module «FindCURL» met behulp van de "CURLConfig.cmake" -configuratiebestanden gegenereerd door cmake. Om dit gedrag uit te schakelen, wordt de variabele CURL_NO_CURL_CMAKE verstrekt.

De module FindPython voegt de mogelijkheid toe om naar Python-componenten te zoeken in virtuele omgevingen gecontroleerd door «Conda".

Toegevoegd optie «–No-tests = [fout | negeren]»Naar het ctest-hulpprogramma naar bepaal gedrag zonder bewijs en "–repeat" om de voorwaarden te specificeren om de tests opnieuw te starten (totdat deze slaagt, na de time-out).

Van de andere wijzigingen die in de aankondiging worden genoemd:

  • Bouw doeleigenschappen INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES e INTERFACE_LINK_DEPENDS ze werden overgedragen tussen de interne afhankelijkheden van de statisch samengestelde bibliotheken.
  • Wanneer u de MinGW-toolkit gebruikt, zoekt u naar DLL-bestanden met de opdracht zoek_bibliotheek het is standaard uitgeschakeld (in plaats daarvan wordt geprobeerd de ".dll.a" -bibliotheken te importeren).
  • De logica van het kiezen van het ninja-hulpprogramma in de Ninja-generator is nu niet afhankelijk van de naam van het uitvoerbare bestand - het eerste hulpprogramma wordt gebruikt ninja-bouw, ninja o Samu gevonden, die wordt gevonden in de paden die zijn gedefinieerd via de PATH-omgevingsvariabele.
  • Het bevel "-Ehm»Is toegevoegd aan het cmake-hulpprogramma, dat kan worden gebruikt om bestanden en mappen te verwijderen in plaats van de afzonderlijke opdrachten«-E verwijderen"En"-E verwijder_directory".

Eindelijk als je er meer over wilt weten, kunt u de aankondiging van deze nieuwe versie bekijken in het volgende link.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.