CMake 3.15 உருவாக்க அமைப்பின் வெளியீடு

நடைபெற்றது குறுக்கு-தளம் திறந்த உருவாக்க ஸ்கிரிப்ட் ஜெனரேட்டரின் வெளியீடு சிமேக் 3.15, இது Autotools க்கு மாற்றாக செயல்படுகிறது மற்றும் KDE, LLVM/Clang, MySQL, MariaDB, ReactOS மற்றும் Blender போன்ற திட்டங்களில் பயன்படுத்தப்படுகிறது. CMake குறியீடு C++ இல் எழுதப்பட்டு BSD உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது.

CMake ஒரு எளிய ஸ்கிரிப்டிங் மொழி, தொகுதிகள் மூலம் செயல்பாட்டை நீட்டிக்கும் வழிமுறை, குறைந்த எண்ணிக்கையிலான சார்புநிலைகள் (M4, Perl அல்லது Python உடன் பிணைப்பு இல்லை), கேச்சிங் ஆதரவு, குறுக்கு-தொகுப்புக்கான கருவிகளின் இருப்பு, உருவாக்கத்தை உருவாக்குவதற்கான ஆதரவு ஆகியவற்றில் குறிப்பிடத்தக்கது. பரந்த அளவிலான உருவாக்க அமைப்புகள் மற்றும் கம்பைலர்களுக்கான கோப்புகள், சோதனை ஸ்கிரிப்ட்கள் மற்றும் கட்டிட தொகுப்புகளை வரையறுப்பதற்கான இருப்பு ctest மற்றும் cpack பயன்பாடுகள், உருவாக்க அளவுருக்களை ஊடாடும் வகையில் அமைப்பதற்கான cmake-gui பயன்பாடு.

முக்கிய மேம்பாடுகள்:

  • நிஞ்ஜா அடிப்படையிலான உருவாக்க ஸ்கிரிப்ட் ஜெனரேட்டருக்கு ஆரம்ப மொழி ஆதரவு சேர்க்கப்பட்டுள்ளது ஸ்விஃப்ட், ஆப்பிள் உருவாக்கியது;
  • MSVC ABI உடன் உருவாக்கப்படும் விண்டோஸிற்கான Clang கம்பைலரின் மாறுபாட்டிற்கான ஆதரவு சேர்க்கப்பட்டது, ஆனால் GNU பாணி கட்டளை வரி விருப்பங்களைப் பயன்படுத்துகிறது;
  • 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 மற்றும் புதிய பதிப்புகளைப் பயன்படுத்தி தொகுக்கும்போது விஷுவல் ஸ்டுடியோ பிழைத்திருத்தத்தில் "Just My Code" பயன்முறையை இயக்க, CMAKE_VS_JUST_MY_CODE_DEBUGGING மாறி மற்றும் இலக்கு சொத்து VS_JUST_MY_CODE_DEBUGGING சேர்க்கப்பட்டது;
  • FindBoost தொகுதி மறுவடிவமைப்பு செய்யப்பட்டுள்ளது, இது இப்போது மற்ற தேடல் தொகுதிகள் முன்னிலையில் கட்டமைப்பு மற்றும் தொகுதி முறைகளில் இன்னும் முழுமையாக வேலை செய்கிறது;
  • செய்தி() கட்டளை இப்போது NOTICE, VERBOSE, வகைகளை ஆதரிக்கிறது.
    டீபக் மற்றும் டிரேஸ்;

  • "export(PACKAGE)" கட்டளையானது CMAKE_EXPORT_PACKAGE_REGISTRY மாறி மூலம் வெளிப்படையாக இயக்கப்பட்டாலன்றி இப்போது எதுவும் செய்யாது.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்