Rhyddhau system adeiladu CMake 3.17.0

A gyflwynwyd gan rhyddhau generadur sgript adeiladu agored traws-lwyfan CMake 3.17, sy'n gweithredu fel dewis arall yn lle Autotools ac a ddefnyddir mewn prosiectau fel KDE, LLVM / Clang, MySQL, MariaDB, ReactOS a Blender. Mae'r cod CMake wedi'i ysgrifennu yn C++ a'i ddosbarthu o dan y drwydded BSD.

Mae CMake yn nodedig am ddarparu iaith sgriptio syml, ffordd o ymestyn ymarferoldeb trwy fodiwlau, nifer fach iawn o ddibyniaethau (dim rhwymo i M4, Perl na Python), cefnogaeth caching, presenoldeb offer ar gyfer traws-grynhoi, cefnogaeth ar gyfer cynhyrchu adeiladu ffeiliau ar gyfer ystod eang o systemau adeiladu a chasglwyr, y ctest presenoldeb a chyfleustodau cpack ar gyfer diffinio sgriptiau prawf a phecynnau adeiladu, cyfleustodau cmake-gui ar gyfer gosod paramedrau adeiladu yn rhyngweithiol.

Y prif gwelliannau:

  • Mae generadur sgript cynulliad newydd yn seiliedig ar becyn cymorth Ninja wedi'i ychwanegu - "Ninja Multi-Config", sy'n wahanol i'r hen generadur o ran y gallu i brosesu sawl ffurfwedd cydosod ar unwaith.
  • Yn y generadur sgript cynulliad ar gyfer Visual Studio ymddangos y gallu i ddiffinio ffeiliau ffynhonnell sy'n gysylltiedig â phob ffurfwedd (ffynonellau fesul-config).
  • Mae'r gallu i osod paramedrau meta ar gyfer CUDA (“cuda_std_03”, “cuda_std_14”, ac ati) wedi'i ychwanegu at yr offer ar gyfer gosod paramedrau casglwr (Nodweddion Crynhoi).
  • Ychwanegwyd newidynnau "CMAKE_CUDA_RUNTIME_LIBRARY" a "CUDA_RUNTIME_LIBRARY" i ddewis y math o lyfrgelloedd amser rhedeg wrth ddefnyddio CUDA.
  • Ychwanegwyd y modiwl "FindCUDDAToolkit" i bennu'r pecyn cymorth CUDA sydd ar gael ar y system heb alluogi'r iaith CUDA.
  • Ychwanegwyd gorchymyn "--debug-find" i cmake i allbynnu diagnosteg ddarllenadwy ychwanegol wrth berfformio gweithrediadau chwilio. At ddibenion tebyg, mae'r newidyn CMAKE_FIND_DEBUG_MODE wedi'i ychwanegu.
  • Ychwanegwyd cefnogaeth ar gyfer chwilio am offer CURL gan ddefnyddio ffeiliau ffurfweddu a gynhyrchir gan cmake “CURLConfig.cmake” i'r modiwl “FindCURL”. I analluogi'r ymddygiad hwn, darperir y newidyn CURL_NO_CURL_CMAKE.
  • Mae modiwl FindPython wedi ychwanegu'r gallu i chwilio am gydrannau Python mewn amgylcheddau rhithwir a reolir gan ddefnyddio “conda”.
  • Mae'r cyfleustodau ctest wedi ychwanegu'r opsiynau "--no-tests=[error|anwybyddu]" i ddiffinio'r ymddygiad yn achos dim profion a "--ailadrodd" i osod yr amodau ar gyfer ail-redeg profion (tan basio, ôl-amser).
  • Mae priodweddau targed y cynulliad INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES ac INTERFACE_LINK_DEPENDS bellach yn cael eu trosglwyddo ymhlith dibyniaethau mewnol llyfrgelloedd sydd wedi'u cydosod yn statig.
  • Wrth ddefnyddio pecyn cymorth MinGW, mae'r chwiliad am ffeiliau DLL gyda'r gorchymyn find_library wedi'i analluogi yn ddiofyn (yn lle hynny, yr ymgais ddiofyn yw mewnforio llyfrgelloedd ".dll.a").
  • Nid yw'r rhesymeg ar gyfer dewis y cyfleustodau ninja yn y generadur Ninja nawr yn dibynnu ar enw'r ffeil gweithredadwy - defnyddir y cyfleustodau ninja-adeiladu, ninja neu samu cyntaf a geir yn y llwybrau a ddiffinnir trwy'r newidyn amgylchedd PATH.
  • Wedi ychwanegu gorchymyn "-E rm" at cmake y gellir ei ddefnyddio i dynnu ffeiliau a chyfeiriaduron yn lle'r gorchmynion "-E remove" a "-E remove_directory" ar wahân.

Ffynhonnell: opennet.ru

Ychwanegu sylw