CMake 3.15 ගොඩනැගීමේ පද්ධති නිකුතුව

සිදු විය හරස් වේදිකා විවෘත ගොඩනැගීමේ ස්ක්‍රිප්ට් උත්පාදකයක් නිකුත් කිරීම CMake 3.15, එය Autotools සඳහා විකල්පයක් ලෙස ක්‍රියා කරන අතර KDE, LLVM/Clang, MySQL, MariaDB, ReactOS සහ Blender වැනි ව්‍යාපෘතිවල භාවිතා වේ. CMake කේතය C++ වලින් ලියා BSD බලපත්‍රය යටතේ බෙදා හරිනු ලැබේ.

CMake සරල ස්ක්‍රිප්ටින් භාෂාවක් සැපයීම, මොඩියුල හරහා ක්‍රියාකාරීත්වය පුළුල් කිරීමේ මාධ්‍යයක්, අවම පරායත්තතා සංඛ්‍යාවක් (M4, Perl හෝ Python වෙත බැඳීමක් නැත), හැඹිලි ආධාරක, හරස් සම්පාදනය සඳහා මෙවලම් තිබීම, ගොඩනැගීම ජනනය කිරීම සඳහා සහාය ලබා දීම සඳහා කැපී පෙනේ. පුළුල් පරාසයක ගොඩනැගීම් පද්ධති සහ සම්පාදක සඳහා ගොනු, පරීක්ෂණ ස්ක්‍රිප්ට් නිර්වචනය කිරීම සහ පැකේජ ගොඩනැගීම සඳහා පවතින ctest සහ cpack උපයෝගිතා, අන්තර්ක්‍රියාකාරීව ගොඩනැගීමේ පරාමිතීන් සැකසීම සඳහා cmake-gui උපයෝගීතාව.

ප්රධාන වැඩිදියුණු කිරීම්:

  • Ninja-පාදක ගොඩනැගීමේ ස්ක්‍රිප්ට් උත්පාදක යන්ත්‍රයට මූලික භාෂා සහාය එක් කර ඇත ඉක්මන්, ඇපල් විසින් සංවර්ධනය කරන ලදී;
  • MSVC ABI සමඟ ගොඩනැගෙන, නමුත් GNU-style command line විකල්ප භාවිතා කරන Windows සඳහා වන Clang සම්පාදකයේ ප්‍රභේදයක් සඳහා සහය එක් කරන ලදී;
  • MSVC ABI (MS Visual Studio) මත පදනම්ව සම්පාදකයින් විසින් භාවිතා කරන ධාවන කාල පුස්තකාල තෝරා ගැනීමට CMAKE_MSVC_RUNTIME_LIBRARY සහ MSVC_RUNTIME_LIBRARY විචල්‍යයන් එක් කරන ලදී;
  • MSVC වැනි සම්පාදකයන් සඳහා, CMAKE__FLAGS පෙරනිමියෙන් "/W3" වැනි අනතුරු ඇඟවීමේ පාලන කොඩි ලැයිස්තුගත කිරීම නතර කරයි;
  • එක් එක් කේත ගොනුව සඳහා CMAKE__COMPILER_ID සහ LANGUAGE විචල්‍යයන් භාවිතා කරමින් ඉලක්ක ගොනු සඳහා සම්පාදක විකල්ප නිර්වචනය කිරීමට "COMPILE_LANG_AND_ID:" උත්පාදක ප්‍රකාශනයක් එක් කරන ලදී;
  • උත්පාදක ප්‍රකාශනවල C_COMPILER_ID, CXX_COMPILER_ID,
    CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE,
    COMPILE_LANG_AND_ID සහ PLATFORM_ID තනි අගයක් කොමාවකින් වෙන් කර ඇති ලැයිස්තුවකට ගැලපීම සඳහා සහය එක් කළේය;

  • CMAKE_FIND_PACKAGE_PREFER_CONFIG විචල්‍යය එක් කරන ලද අතර එමඟින් find_package() ඇමතීමෙන් සෙවුමක් තිබේ නම්, පැකේජයේ වින්‍යාස ගොනුව පළමුව සොයනු ඇත;
  • අතුරුමුහුණත් පුස්තකාල සඳහා, PUBLIC_HEADER සහ PRIVATE_HEADER ගුණාංග සැකසීම සඳහා සහය එක් කර ඇති අතර, PUBLIC_HEADER සහ PRIVATE_HEADER තර්ක පසුකර ස්ථාපනය(TARGETS) විධානය භාවිතයෙන් ශීර්ෂයන් සැකසිය හැක;
  • MSVC cl 19.05 සහ නව අනුවාද භාවිතයෙන් සම්පාදනය කිරීමේදී Visual Studio නිදොස්කරණයේ "Just My Code" මාදිලිය සබල කිරීමට CMAKE_VS_JUST_MY_CODE_DEBUGGING විචල්‍ය සහ ඉලක්ක ගුණාංග VS_JUST_MY_CODE_DEBUGGING එක් කරන ලදී;
  • FindBoost මොඩියුලය ප්‍රතිනිර්මාණය කර ඇත, එය දැන් වෙනත් සෙවුම් මොඩියුල ඉදිරියේ වින්‍යාස සහ මොඩියුල මාදිලිවල වඩාත් පරිපූර්ණ ලෙස ක්‍රියා කරයි;
  • පණිවිඩය() විධානය දැන් NOTICE, VERBOSE, වර්ග සඳහා සහය දක්වයි.
    DEBUG සහ TRACE;

  • "export(PACKAGE)" විධානය දැන් CMAKE_EXPORT_PACKAGE_REGISTRY විචල්‍යය හරහා පැහැදිලිව සක්‍රීය කර ඇත්නම් මිස කිසිවක් නොකරයි.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න