Liberasyon CMake 3.18 bati sistèm

Entwodwi lage yon dèlko script bati louvri kwa-platfòm CMake 3.18, ki aji kòm yon altènativ a Autotools epi ki itilize nan pwojè tankou KDE, LLVM/Clang, MySQL, MariaDB, ReactOS ak Blender. Kòd CMake ekri an C++ epi distribye anba lisans BSD.

CMake se remakab pou bay yon langaj scripting senp, yon mwayen pou pwolonje fonksyonalite atravè modil, yon kantite minimòm depandans (pa gen obligasyon pou M4, Perl oswa Python), sipò kachèt, prezans zouti pou konpilasyon kwa, sipò pou jenere bati. fichye pou yon pakèt sistèm bati ak konpilatè, prezans ctest ak sèvis piblik cpack pou defini scripts tès ak pakè bati, sèvis piblik cmake-gui pou fikse paramèt bati yon fason entèaktif.

Prensipal la amelyorasyon:

  • Lang CUDA a ka bati lè l sèvi avèk Clang sou platfòm ki pa Windows. Konpilasyon separe CUDA poko sipòte sou okenn platfòm.
  • Te ajoute sipò pou profilage scripts CMake lè l sèvi avèk opsyon "--profiling-output" ak "--profiling-format".
  • Kòmandman add_library() ak add_executable() yo kounye a sipòte kreyasyon sib Alias ​​ki refere a objektif enpòte ki pa mondyal yo.
  • Te ajoute kòmand cmake_language() pou meta-operasyon sou kòmandman script oswa entegre.
  • Te ajoute sou-kòmand fichye(CONFIGURE), menm jan an fonksyonalite a configure_file(), men pase sa yo kòm yon fisèl olye ke yon referans dosye.
  • Te ajoute yon opsyon OBLIGATWA nan find_program(), find_library(), find_path() ak find_file() kòmandman yo sispann pwosesis ak yon erè si pa jwenn anyen.
  • Te ajoute varyab "CMAKE_CUDA_ARCHITECTURES" pou endike achitekti CUDA (mete otomatikman si varyab "CMAKE_CUDA_COMPILER_ID" mete sou "NVIDIA").
  • Te ajoute pwopriyete "UNITY_BUILD_MODE" pou chwazi algorithm gwoupman pou fichye sous ki enkli (BATCH, GROUP) nan dèlko.
  • Te ajoute modil CheckLinkerFlag pou tcheke si drapo lyen yo kòrèk.
  • Te ajoute ekspresyon jeneratè $, $, $ ak $.
  • Yo te ajoute varyab CTEST_RESOURCE_SPEC_FILE a nan sèvis piblik ctest la pou presize dosye spesifikasyon resous la.

Sous: opennet.ru

Add nouvo kòmantè