Liberazione di u sistema di creazione CMake 3.15

hè accadutu liberazione di un generatore di script di creazione aperta multipiattaforma CMake 3.15, chì agisce cum'è una alternativa à Autotools è hè utilizatu in prughjetti cum'è KDE, LLVM / Clang, MySQL, MariaDB, ReactOS è Blender. U codice CMake hè scrittu in C++ è distribuitu sottu a licenza BSD.

CMake hè notu per furnisce un linguaghju di scrittura simplice, un mezzu per estenderà a funziunalità attraversu moduli, un numeru minimu di dipendenze (senza vinculazione à M4, Perl o Python), supportu di cache, presenza di strumenti per a compilazione incruciata, supportu per a generazione di custruzzione. i schedarii per una larga gamma di sistemi di compilazione è compilatori, a presenza ctest è l'utilità cpack per a definizione di script di prova è di custruzzione di pacchetti, utilità cmake-gui per stabilisce in modu interattivu i paràmetri di creazione.

menu migliurà:

  • U supportu di lingua iniziale hè statu aghjuntu à u generatore di script di custruzzione basatu in Ninja Agile, sviluppatu da Apple;
  • Aghjunghje supportu per una variante di u compilatore Clang per Windows chì custruisce cù MSVC ABI, ma usa l'opzioni di linea di cummanda GNU-style;
  • Aghjunghjite variabili CMAKE_MSVC_RUNTIME_LIBRARY è MSVC_RUNTIME_LIBRARY per selezziunà e librerie runtime usate da compilatori basati nantu à MSVC ABI (MS Visual Studio);
  • Per compilatori cum'è MSVC, CMAKE__FLAGS per difettu ferma l'elencu di bandieri di cuntrollu d'avvisu cum'è "/W3";
  • Aghjunghje una espressione generatore "COMPILE_LANG_AND_ID:" per definisce l'opzioni di compilatore per i schedarii di destinazione, utilizendu e variabili CMAKE__COMPILER_ID è LANGUAGE per ogni schedariu di codice;
  • In l'espressioni generatori C_COMPILER_ID, CXX_COMPILER_ID,
    CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE,
    COMPILE_LANG_AND_ID è PLATFORM_ID aghjunghjenu supportu per currisponde à un valore unicu à una lista chì l'elementi sò separati da una virgola;

  • A variabile aghjunta CMAKE_FIND_PACKAGE_PREFER_CONFIG per chì chjamà find_package() cercarà prima u schedariu di cunfigurazione di u pacchettu, ancu s'ellu hè dispunibule un finder;
  • Per e librerie di l'interfaccia, u supportu hè statu aghjuntu per stabilisce e proprietà PUBLIC_HEADER è PRIVATE_HEADER, da quale l'intestazione pò esse stabilitu cù u cumandimu install (TARGETS) passendu l'argumenti PUBLIC_HEADER è PRIVATE_HEADER;
  • Aggiuntu CMAKE_VS_JUST_MY_CODE_DEBUGGING a variabile è a pruprietà di destinazione VS_JUST_MY_CODE_DEBUGGING per attivà u modu "Just My Code" in u debugger di Visual Studio quandu si compila cù MSVC cl 19.05 è versioni più recenti;
  • U modulu FindBoost hè statu riprogettatu, chì avà travaglia più holisticu in i modi Config è Module in presenza di altri moduli di ricerca;
  • U cumandamentu message() supporta avà i tipi NOTICE, VERBOSE,
    DEBUG è TRACE;

  • U cumandimu "export (PACKAGE)" avà ùn face nunda, salvu chì ùn sia attivatu esplicitamente via a variabile CMAKE_EXPORT_PACKAGE_REGISTRY.

Source: opennet.ru

Add a comment