Release fan CMake 3.15 build systeem

barde frijlitting fan in cross-platform iepen build skriptgenerator CMake 3.15, dat fungearret as alternatyf foar Autotools en wurdt brûkt yn projekten lykas KDE, LLVM/Clang, MySQL, MariaDB, ReactOS en Blender. De CMake-koade is skreaun yn C++ en ferspraat ûnder de BSD-lisinsje.

CMake is opmerklik foar it leverjen fan in ienfâldige skripttaal, in middel om funksjonaliteit út te wreidzjen fia modules, in minimaal oantal ôfhinklikens (gjin bining oan M4, Perl of Python), caching-stipe, de oanwêzigens fan ark foar cross-kompilaasje, stipe foar it generearjen fan build triemmen foar in breed skala oan build systemen en gearstallers, de oanwêzigens ctest en cpack nutsfoarsjennings foar it definiearjen fan test skripts en gebou pakketten, cmake-gui nut foar ynteraktyf ynstellen build parameters.

haad ferbetterings:

  • Inisjele taalstipe is tafoege oan de Ninja-basearre build script generator Swift, ûntwikkele troch Apple;
  • Stipe tafoege foar in fariant fan 'e Clang-kompiler foar Windows dy't bouwt mei de MSVC ABI, mar brûkt GNU-styl kommandorigelopsjes;
  • Added CMAKE_MSVC_RUNTIME_LIBRARY en MSVC_RUNTIME_LIBRARY fariabelen foar in selektearje runtime bibleteken brûkt troch gearstallers basearre op de MSVC ABI (MS Visual Studio);
  • Foar gearstallers lykas MSVC, stopt CMAKE__FLAGS standert op mei in list fan warskôgingskontrôleflaggen lykas "/ W3";
  • In generator-útdrukking tafoege "COMPILE_LANG_AND_ID:" om kompilatoropsjes foar doeltriemmen te definiearjen, mei de CMAKE__COMPILER_ID en LANGUAGE fariabelen foar elke koadetriem;
  • Yn de generator útdrukkingen C_COMPILER_ID, CXX_COMPILER_ID,
    CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE,
    COMPILE_LANG_AND_ID en PLATFORM_ID tafoege stipe foar it oerienkomme mei in inkele wearde oan in list wêrfan de eleminten wurde skieden troch in komma;

  • Added fariabele CMAKE_FIND_PACKAGE_PREFER_CONFIG sadat it oproppen fan find_package () sil sykje nei it pakket syn konfiguraasje triem earst, sels as in finder is beskikber;
  • Foar ynterfacebiblioteken is stipe tafoege foar it ynstellen fan de PUBLIC_HEADER- en PRIVATE_HEADER-eigenskippen, wêrmei kopteksten kinne wurde ynsteld mei it install(TARGETS) kommando troch de PUBLIC_HEADER- en PRIVATE_HEADER-arguminten troch te jaan;
  • Added CMAKE_VS_JUST_MY_CODE_DEBUGGING fariabele en doel eigenskip VS_JUST_MY_CODE_DEBUGGING foar in ynskeakelje "Just My Code" modus yn de Visual Studio debugger by it kompilearjen mei MSVC cl 19.05 en nijere ferzjes;
  • De FindBoost-module is opnij ûntwurpen, dy't no mear holistysk wurket yn Config- en Module-modi yn 'e oanwêzigens fan oare sykmodules;
  • It kommando message() stipet no de typen NOTICE, VERBOSE,
    DEBUG en TRACE;

  • It kommando "eksportearje (PACKAGE)" docht no neat útsein as it eksplisyt ynskeakele is fia de CMAKE_EXPORT_PACKAGE_REGISTRY fariabele.

Boarne: opennet.ru

Add a comment