CMake 3.18 निर्माण प्रणालीको रिलीज

परिचय गराए क्रस-प्लेटफर्म खुला बिल्ड स्क्रिप्ट जनरेटरको रिलीज CMake 3.18..१।, जसले Autotools को विकल्पको रूपमा कार्य गर्दछ र KDE, LLVM/Clang, MySQL, MariaDB, ReactOS र ब्लेंडर जस्ता परियोजनाहरूमा प्रयोग गरिन्छ। CMake कोड C++ मा लेखिएको छ र BSD लाइसेन्स अन्तर्गत वितरण गरिएको छ।

CMake सरल स्क्रिप्टिङ भाषा, मोड्युलहरू मार्फत कार्यक्षमता विस्तार गर्ने माध्यम, न्यूनतम संख्यामा निर्भरताहरू (M4, Perl वा Python लाई कुनै बाध्यकारी छैन), क्यासिङ समर्थन, क्रस-कम्पाइलेशनका लागि उपकरणहरूको उपस्थिति, निर्माण निर्माणको लागि समर्थन प्रदान गर्नको लागि उल्लेखनीय छ। निर्माण प्रणाली र कम्पाइलरहरूको विस्तृत दायराका लागि फाइलहरू, परीक्षण स्क्रिप्टहरू र निर्माण प्याकेजहरू परिभाषित गर्नको लागि उपस्थिति ctest र cpack उपयोगिताहरू, अन्तरक्रियात्मक रूपमा निर्माण प्यारामिटरहरू सेट गर्नका लागि cmake-gui उपयोगिता।

मुख्य सुधारहरू:

  • Для языка CUDA обеспечена возможность сборки при помощи Clang на платформах, отличных от Windows. Раздельная компиляция CUDA пока не поддерживается ни на одной платформе.
  • Добавлена поддержка профилирования сценариев CMake, используя опции «—profiling-output» и «—profiling-format».
  • В команды add_library() и add_executable() добавлена поддержка создания целей-псевдонимов (Alias Targets), ссылающихся на неглобальные импортированные цели.
  • Добавлена команда cmake_language() для мета-операций над скриптованными или встроенными командами.
  • Добавлена подкоманда file(CONFIGURE), аналогичная по функциональности команде configure_file(), но с передачей содержимого в форме строки, а не ссылки на файл.
  • В команды find_program(), find_library(), find_path() и find_file() добавлена опция REQUIRED, предписывающая остановить обработку с ошибкой, если ничего не было найдено.
  • Добавлена переменная «CMAKE_CUDA_ARCHITECTURES» для указания архитектуры CUDA (устанавливается автоматически, если переменная «CMAKE_CUDA_COMPILER_ID» принимает значение «NVIDIA»).
  • Добавлено свойство «UNITY_BUILD_MODE» для выбора в генераторах алгоритма группировки включаемых исходных файлов (BATCH, GROUP).
  • Добавлен модуль CheckLinkerFlag для проверки корректности флагов компоновки.
  • Добавлены выражения генератора $<DEVICE_LINK:…>, $<HOST_LINK:…>, $<LINK_LANGUAGE:…> и $<LINK_LANG_AND_ID:…>.
  • В утилиту ctest добавлена переменная CTEST_RESOURCE_SPEC_FILE для указания файла со спецификацией ресурсов.

स्रोत: opennet.ru

एक टिप्पणी थप्न