CMake 3.15 ಬಿಲ್ಡ್ ಸಿಸ್ಟಮ್ ಬಿಡುಗಡೆ

ನಡೆಯಿತು ಕ್ರಾಸ್ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್ ಓಪನ್ ಬಿಲ್ಡ್ ಸ್ಕ್ರಿಪ್ಟ್ ಜನರೇಟರ್ ಬಿಡುಗಡೆ ಸಿಎಮ್ಕೆ 3.15, ಇದು Autotools ಗೆ ಪರ್ಯಾಯವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು KDE, LLVM/Clang, MySQL, MariaDB, ReactOS ಮತ್ತು ಬ್ಲೆಂಡರ್‌ನಂತಹ ಯೋಜನೆಗಳಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ. CMake ಕೋಡ್ ಅನ್ನು C++ ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ ಮತ್ತು BSD ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ವಿತರಿಸಲಾಗಿದೆ.

CMake ಸರಳವಾದ ಸ್ಕ್ರಿಪ್ಟಿಂಗ್ ಭಾಷೆ, ಮಾಡ್ಯೂಲ್‌ಗಳ ಮೂಲಕ ಕಾರ್ಯವನ್ನು ವಿಸ್ತರಿಸುವ ಸಾಧನ, ಕನಿಷ್ಠ ಸಂಖ್ಯೆಯ ಅವಲಂಬನೆಗಳು (M4, ಪರ್ಲ್ ಅಥವಾ ಪೈಥಾನ್‌ಗೆ ಯಾವುದೇ ಬೈಂಡಿಂಗ್ ಇಲ್ಲ), ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳುವ ಬೆಂಬಲ, ಅಡ್ಡ-ಸಂಕಲನಕ್ಕಾಗಿ ಉಪಕರಣಗಳ ಉಪಸ್ಥಿತಿ, ನಿರ್ಮಾಣವನ್ನು ಉತ್ಪಾದಿಸುವ ಬೆಂಬಲವನ್ನು ಒದಗಿಸುವಲ್ಲಿ ಗಮನಾರ್ಹವಾಗಿದೆ. ವ್ಯಾಪಕ ಶ್ರೇಣಿಯ ಬಿಲ್ಡ್ ಸಿಸ್ಟಮ್‌ಗಳು ಮತ್ತು ಕಂಪೈಲರ್‌ಗಳಿಗಾಗಿ ಫೈಲ್‌ಗಳು, ಪರೀಕ್ಷಾ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳು ಮತ್ತು ಬಿಲ್ಡಿಂಗ್ ಪ್ಯಾಕೇಜುಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲು ಉಪಸ್ಥಿತಿ ctest ಮತ್ತು cpack ಉಪಯುಕ್ತತೆಗಳು, ಸಂವಾದಾತ್ಮಕವಾಗಿ ಬಿಲ್ಡ್ ಪ್ಯಾರಾಮೀಟರ್‌ಗಳನ್ನು ಹೊಂದಿಸಲು cmake-gui ಯುಟಿಲಿಟಿ.

ಮುಖ್ಯ ಅಭಿವೃದ್ಧಿಗಳು:

  • ನಿಂಜಾ-ಆಧಾರಿತ ಬಿಲ್ಡ್ ಸ್ಕ್ರಿಪ್ಟ್ ಜನರೇಟರ್‌ಗೆ ಆರಂಭಿಕ ಭಾಷಾ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ ಸ್ವಿಫ್ಟ್, ಆಪಲ್ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದೆ;
  • MSVC ABI ನೊಂದಿಗೆ ನಿರ್ಮಿಸುವ ವಿಂಡೋಸ್‌ಗಾಗಿ ಕ್ಲಾಂಗ್ ಕಂಪೈಲರ್‌ನ ರೂಪಾಂತರಕ್ಕೆ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಆದರೆ GNU-ಶೈಲಿಯ ಕಮಾಂಡ್ ಲೈನ್ ಆಯ್ಕೆಗಳನ್ನು ಬಳಸುತ್ತದೆ;
  • MSVC ABI (MS ವಿಷುಯಲ್ ಸ್ಟುಡಿಯೋ) ಆಧಾರಿತ ಕಂಪೈಲರ್‌ಗಳು ಬಳಸುವ ರನ್‌ಟೈಮ್ ಲೈಬ್ರರಿಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಲು 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 ಮತ್ತು ಹೊಸ ಆವೃತ್ತಿಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಕಂಪೈಲ್ ಮಾಡುವಾಗ ವಿಷುಯಲ್ ಸ್ಟುಡಿಯೋ ಡೀಬಗರ್‌ನಲ್ಲಿ "ಜಸ್ಟ್ ಮೈ ಕೋಡ್" ಮೋಡ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು CMAKE_VS_JUST_MY_CODE_DEBUGGING ವೇರಿಯೇಬಲ್ ಮತ್ತು ಟಾರ್ಗೆಟ್ ಪ್ರಾಪರ್ಟಿ VS_JUST_MY_CODE_DEBUGGING ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ;
  • FindBoost ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಮರುವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ, ಇದು ಈಗ ಇತರ ಹುಡುಕಾಟ ಮಾಡ್ಯೂಲ್‌ಗಳ ಉಪಸ್ಥಿತಿಯಲ್ಲಿ ಕಾನ್ಫಿಗ್ ಮತ್ತು ಮಾಡ್ಯೂಲ್ ಮೋಡ್‌ಗಳಲ್ಲಿ ಹೆಚ್ಚು ಸಮಗ್ರವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ;
  • ಸಂದೇಶ() ಆಜ್ಞೆಯು ಈಗ NOTICE, VERBOSE, ಪ್ರಕಾರಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ
    ಡೀಬಗ್ ಮತ್ತು ಟ್ರೇಸ್;

  • CMAKE_EXPORT_PACKAGE_REGISTRY ವೇರಿಯೇಬಲ್ ಮೂಲಕ ಸ್ಪಷ್ಟವಾಗಿ ಸಕ್ರಿಯಗೊಳಿಸದ ಹೊರತು "ರಫ್ತು(PACKAGE)" ಆಜ್ಞೆಯು ಈಗ ಏನನ್ನೂ ಮಾಡುವುದಿಲ್ಲ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ