CMake 3.16 build system release.

Bemutatva a cross-platform open script generator for builds CMake 3.16, serving as an alternative to Autotools and used in projects like KDE, LLVM/Clang, MySQL, MariaDB, ReactOS, and Blender. The CMake code is written in C++ and is distributed under the BSD license.

A CMake kiemelkedő a könnyen használható scripting nyelvével, a funkcionalitás kiterjesztésének lehetőségével modulokon keresztül, minimális függőségekkel (nincsenek M4, Perl vagy Python függőségek), cache támogatással, cross-compiling eszközökkel, széles spektrumú build rendszerek és fordítók számára készült build fájlok generálásával, valamint a ctest és cpack eszközök biztosításával, amelyek a tesztelő és csomagoló script meghatározására szolgálnak, továbbá a cmake-gui eszközzel, amely interaktív módon teszi lehetővé a build paraméterek beállítását.

Fő fejlesztések:

  • Hozzáadva az Objective C („OBJC”) és az Objective C++ („OBJCXX”) nyelvek támogatása, amelyek aktiválhatók a project() és enable_language() parancsokkal, ezután a „.m” és „.mm” fájlokban lévő kód Objective C és Objective C++ kódként lesz fordítva, nem pedig C++ kódként, ahogyan korábban;
    Hozzáadva a Clang fordító támogatása a Solaris platformon;
  • Új parancssori opciók lettek hozzáadva: „cmake -E true|false” a 0 és 1 visszatérési kódok kiadásához; „cmake —trace-redirect=” a nyomkövetési információk fájlba való átirányításához, ahelyett, hogy a
  • „stderr”-ben jelenjen meg; a „cmake —loglevel” parancs elnevezése megváltozott „—log-level”-re, hogy összhangban legyen a többi parancs elnevezésével;
    Hozzáadva a „target_precompile_headers()” parancs a prekompilálásra használt fejlécek listájának felsorolásához (csökkenti az építési időt);
  • Hozzáadva a „UNITY_BUILD” tulajdonság, amely aktiválja az alapforrásfájlok batch feldolgozási módját a generátorokban az építési idő növelése érdekében;
  • Hozzáadva a „find_file()”, „find_library()”, „find_path()”,
  • „find_package()” és „find_program()” parancsok a fájlok, könyvtárak, utak, csomagok és végrehajtható fájlok keresésére a különböző fájltípusok keresési útvonalainak meghatározása érdekében.
    A keresési alaputak kezelésére a „CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH”, „CMAKE_FIND_USE_CMAKE_PATH”, „CMAKE_FIND_USE_CMAKE_SYSTEM_PATH”, „CMAKE_FIND_USE_PACKAGE_ROOT_PATH”, „CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH” és „CMAKE_FIND_USE_PACKAGE_REGISTRY” változókat használják;
    A „file()” parancshoz hozzáadva a „file(GET_RUNTIME_DEPENDENCIES)” mód, amely lehetővé teszi, hogy rekurzívan kinyerjük a végrehajtható fájlhoz vagy könyvtárhoz dinamikusan kapcsolódó könyvtárak listáját. Ez a mód felváltja a GetPrerequisites() parancsot, amely most elavult;
  • A „ctest(1)” parancsban a tesztek erőforrásigényei alapján történő sorosításának lehetősége valósult meg;
  • Az „CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY” változó elavultnak nyilvánítva, helyette a „CMAKE_FIND_USE_PACKAGE_REGISTRY” használatát javasolják;
  • Hozzáadva a Clang fordító támogatása a Solaris platformon;
  • Javították az AIX platform támogatását. Az «ENABLE_EXPORTS» tulajdonság használatakor a futtatható fájl mellett immár egy importáló fájl is létrejön a linker számára, amely «.imp» kiterjesztéssel kerül mentésre. Az «add_library()» hívásával, «MODULE» opcióval létrehozott pluginek esetében ez a fájl felhasználható a «target_link_libraries()» parancs használatával történő linkeléskor. Az AIX runtime linkelés alapértelmezés szerint le van tiltva, mivel a CMake mostantól minden szükséges információt biztosít a szimbólumok betöltéshez történő összekapcsolásához. A dinamikus könyvtárak vagy betölthető modulok runtime linkelésének alkalmazásához egyértelműen meg kell adni a «-Wl,-G» opciót a linkerindító flaglistákban, amelyeket a «CMAKE_SHARED_LINKER_FLAGS» és «CMAKE_MODULE_LINKER_FLAGS» változók határoznak meg.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster