Rilascio del sistema di compilazione CMake 3.23

Viene presentato il rilascio del generatore di script open build multipiattaforma CMake 3.23, che funge da alternativa ad Autotools e viene utilizzato in progetti come KDE, LLVM/Clang, MySQL, MariaDB, ReactOS e Blender. Il codice CMake è scritto in C++ e distribuito sotto la licenza BSD.

CMake si distingue per fornire un linguaggio di scripting semplice, strumenti per estendere le funzionalità tramite moduli, supporto per la memorizzazione nella cache, presenza di strumenti per la compilazione incrociata, supporto per la generazione di file di build per un'ampia gamma di sistemi di build e compilatori, presenza di ctest e cpack utilità per la definizione di script di test e creazione di pacchetti e l'utilità cmake -gui per la configurazione interattiva dei parametri di creazione.

Principali miglioramenti:

  • Ai file "cmake-presets" è stato aggiunto un campo opzionale "include", con il quale è possibile sostituire il contenuto di altri file presenti.
  • I generatori di script di compilazione per Visual Studio 2019 e le versioni più recenti ora supportano i file csproj di .NET SDK per progetti C#.
  • Aggiunto il supporto per il compilatore IBM Open XL C/C++, basato su LLVM. Il compilatore è disponibile con l'identificatore IBMClang.
  • Aggiunto supporto per il compilatore MCST LCC (sviluppato per processori Elbrus e SPARC (MCST-R)). Il compilatore è disponibile con l'identificatore LCC.
  • È stato aggiunto un nuovo argomento al comando "install(TARGETS)", "FILE_SET", che può essere utilizzato per installare una serie di file di intestazione associati alla piattaforma di destinazione selezionata.
  • Al comando "target_sources()" è stata aggiunta la modalità "FILE_SET", con la quale è possibile aggiungere un insieme di un determinato tipo di file con codice, ad esempio file di intestazione.
  • Aggiunto il supporto per i valori "all" e "all-major" per CUDA toolkit 7.0+ alla variabile "CMAKE_CUDA_ARCHITECTURES" e alla proprietà della piattaforma di destinazione "CUDA_ARCHITECTURES".

Fonte: opennet.ru

Aggiungi un commento