CMake 3.17.0 постачається з новим генератором сценаріїв Ninja, вдосконаленнями та іншим

Запуск нова версія міжплатформеного генератора скриптів з відкритим кодом CMake 3.17, в якій розробники працювали додати новий генератор сценаріїв під назвою "Ninja Multi-Config", вдосконалення генератора сценаріїв Visual Studio, загальні оптимізації та багато іншого.

Для тих, хто не знає CMake, вони повинні це знати - це інструмент генерації або автоматизації багатоплатформних кодів який діє як альтернатива Autotools і використовується в таких проектах, як KDE, LLVM / Clang, MySQL, MariaDB, ReactOS та Blender.

CMake відрізняється тим, що надає просту мову сценаріїв, означає розширити функціональність модулів, мінімальну кількість залежностей (відсутність прив'язки до M4, Perl або Python), підтримка кешування, наявність інструментів для перехресної компіляції, підтримка генерації файлів збірки для широкого спектра систем збірки та компіляторів, наявність утиліт ctest та cpack для визначення сценаріїв тестування та побудови, утиліта cmake-gui для інтерактивної настройки параметрів збірки.

Ця утиліта використовується для управління процесом компіляції програмного забезпечення використання простих і незалежних від платформи файлів конфігурації. Генерує власні макети файлів та робочі області, які можна використовувати в бажаному середовищі розробки.

Це порівнянно із системою побудови GNU Unix, в якому процес контролюється файлами конфігурації, у випадку CMake, який називається CMakeLists.txt.

Що нового в CMake 3.17.0

Як вже згадувалося на початку, однією з головних новинок, яка виділяється в цій новій версії CMake 3.17.0, є додавання нового генератора сценаріїв збірки на основі інструментів Ninja, що має назву «Мультиконфігурація Ninja«, Що відрізняється від попереднього генератора тим, що цей новий генератор надає можливість одночасно обробляти кілька конфігурацій збірки.

Тим часом, у генераторі сценаріїв збірки Для Visual Studio тепер ви можете визначити вихідні файли, що додаються до кожного параметра.

Можливість встановлення метапараметрів для CUDA ("Cuda_std_03", "cuda_std_14" тощо) було додано до інструментів налаштувати функції компілятора (функції компіляції).

На додаток до цього, в рекламі згадується це змінні були додані «CMAKE_CUDA_RUNTIME_LIBRARY"Y"CUDA_RUNTIME_LIBRARY»Вибір типу бібліотек виконання під час використання CUDA, а також модуль« FindCUDAToolkit »для визначення інструментів CUDA, доступних у системі, без включення мови CUDA.

У CMake 3.17.0 команда «–Налагодження-пошук»Додано для відображення додаткової читабельної діагностики під час пошуку. Для подібних цілей змінна CMAKE_FIND_DEBUG_MODE.

Додано підтримка пошуку інструментів CURL в модулі «FindCURL» за допомогою файлів конфігурації "CURLConfig.cmake", створених cmake. Щоб вимкнути цю поведінку, надається змінна CURL_NO_CURL_CMAKE.

Модуль FindPython додає можливість пошуку компонентів Python у віртуальному середовищі, керованому «Конда".

Додано варіант «–Не-тести = [помилка | ігнорувати]»До утиліти ctest до визначати поведінку за відсутності доказів та "–repeat", щоб вказати умови для перезапуску тестів (до тих пір, поки вони не пройдуть, після тайм-ауту).

З інших змін, про які йдеться в оголошенні:

  • Побудуйте цільові властивості INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES e INTERFACE_LINK_DEPENDS їх передавали між внутрішніми залежностями статично зібраних бібліотек.
  • Під час використання набору інструментів MinGW здійснюйте пошук файлів DLL за допомогою команди Знайти_бібліотеку він за замовчуванням відключений (замість цього робиться спроба імпортувати бібліотеки ".dll.a").
  • Логіка вибору утиліти ninja в генераторі Ninja тепер не залежить від імені виконуваного файлу - використовується перша утиліта ніндзя-побудувати, ніндзя o саму знайдений, який знаходиться у шляхах, визначених через змінну середовища PATH.
  • Команда "-Ем»Додано до утиліти cmake, яку можна використовувати для видалення файлів та каталогів замість окремих команд«-E видалити"Y"-E каталог remove_directory".

В кінці кінців якщо ви хочете дізнатися більше про це, Ви можете перевірити анонс цієї нової версії в наступне посилання.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.