A fost publicată lansarea generatorului de scripturi de construire multiplatformă și deschis CMake 3.28, care servește ca o alternativă la Autotools și este utilizat în proiecte precum KDE, LLVM/Clang, MySQL, MariaDB, ReactOS și Blender. CMake se remarcă prin furnizarea unei limbi simple de scripturi, instrumente de extindere a funcționalității prin module, suport pentru caching, instrumente pentru cross-compilation, generarea fișierelor de construcție pentru o gamă largă de sisteme de construire și compilatoare, utilitare ctest și cpack pentru definirea scripturilor de testare și construcție a pachetelor, precum și utilitarul cmake-gui pentru configurarea interactivă a parametrilor de construcție. Codul CMake este scris în C++ și este distribuit sub o licență BSD.
Îmbunătățiri principale:
- Generatorii de scripturi de construcție pentru Visual Studio și Ninja au adăugat suport pentru modulele definite în specificația C++ 20. Suportul pentru module este disponibil în prezența LLVM/Clang 16, GCC 14-dev sau MSVC 14.34.
- Au fost implementate capacități de compilare pentru GPU NVIDIA a codului scris în HIP, folosind compilatorul NVCC (NVIDIA CUDA Compiler). A fost adăugată variabila CMAKE_HIP_PLATFORM pentru a selecta platforma GPU pentru HIP ("amd" sau "nvidia").
- Pe platformele Apple a fost asigurat suportul pentru directoarele ".xcframework".
- Comanda "exec_program()" a fost eliminată, fiind declarată învechită în versiunea 3.0. Pentru a lansa procese, ar trebui folosită comanda "execute_process()".
- Fișierele generate folosind modul "FILE_SET" sunt acum tratate implicit ca fiind private, ceea ce permite crearea unui grafic de construire mai eficient în generatorii Ninja.
- În comenzile find_library(), find_path() și find_file() pe platforma Windows a fost dezactivată căutarea în directoarele de instalare obținute din variabila de mediu PATH (pentru a uniformiza comportamentul în Windows cu alte platforme).
Sursa: opennet.ro
