Meson 0.58 එකලස් කිරීමේ පද්ධතිය මුදා හැරීම. C භාෂාවෙන් Meson ක්‍රියාත්මක කිරීමේ ව්‍යාපෘතිය

X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME සහ GTK වැනි ව්‍යාපෘති තැනීමට භාවිතා කරන Meson 0.58 ගොඩනැගීමේ පද්ධතියේ නිකුතුව ප්‍රකාශයට පත් කර ඇත. Meson කේතය Python වලින් ලියා ඇති අතර Apache 2.0 බලපත්‍රය යටතේ බලපත්‍ර ලබා ඇත.

Meson හි ප්‍රධාන සංවර්ධන ඉලක්කය වන්නේ පහසුව සහ භාවිතයේ පහසුව සමඟ ඒකාබද්ධව අධිවේගී එකලස් කිරීමේ ක්‍රියාවලියක් සැපයීමයි. සෑදීම වෙනුවට, ගොඩනැගීම පෙරනිමියෙන් Ninja මෙවලම් කට්ටලය භාවිතා කරයි, නමුත් xcode සහ VisualStudio වැනි අනෙකුත් පසුබිම් ද භාවිතා කළ හැක. බෙදාහැරීම් සඳහා පැකේජ තැනීමට Meson භාවිතා කිරීමට ඔබට ඉඩ සලසන බහු-වේදිකා පරායත්ත හසුරුවන්නක් පද්ධතිය සතුව ඇත. එකලස් කිරීමේ නීති සරල කරන ලද වසම්-විශේෂිත භාෂාවකින් සකසා ඇත, ඒවා හොඳින් කියවිය හැකි සහ පරිශීලකයාට තේරුම් ගත හැකි ය (කතුවරුන්ගේ අදහසට අනුව, සංවර්ධකයා අවම වශයෙන් නීති ලිවීමට කාලය ගත කළ යුතුය).

GCC, Clang, Visual Studio සහ අනෙකුත් සම්පාදක භාවිතා කරමින් Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS සහ Windows මත හරස් සම්පාදනය සහ ගොඩනැගීම සඳහා සහය දක්වයි. C, C++, Fortran, Java සහ Rust ඇතුළු විවිධ ක්‍රමලේඛන භාෂාවලින් ව්‍යාපෘති ගොඩනගා ගත හැකිය. වර්ධක ගොඩනැගීමේ මාදිලියකට සහය දක්වයි, එහි අවසාන ගොඩනැගීමේ සිට සිදු කරන ලද වෙනස්කම් වලට සෘජුවම සම්බන්ධ වන සංරචක පමණක් නැවත ගොඩනගනු ලැබේ. පුනරාවර්තනය කළ හැකි ගොඩනැගීම් උත්පාදනය කිරීමට Meson භාවිතා කළ හැකි අතර, විවිධ පරිසරවල ගොඩනැගීම ක්‍රියාත්මක කිරීමෙන් සම්පූර්ණයෙන්ම සමාන ක්‍රියාත්මක කළ හැකි වේ.

Meson 0.58 හි ප්‍රධාන නවෝත්පාදන:

  • В языке Meson реализованы встроенные операции форматирования строк. Вместо вызова метода format теперь можно подставлять значения напрямую, например, вместо «‘A string @0@ to be formatted @1@’.format(n, m)» можно указывать сразу «f’A string @n@ to be formatted @m@'».
  • В строковые объекты добавлен метод «replace» для выполнения операции замены одной подстроки на другую, например, «s = s.replace(‘aaa’, ‘bbb’)».
  • Добавлена функция «range(start, stop[, step])» для возврата объекта, который может применяться в цикле «foreach», например «foreach i : range(15)».
  • Реализован метод meson.add_devenv(), позволяющий добавить объект environment() для установки переменных окружения во время использования команды «meson devenv», например, для задания переменной окружения с путём к каталогу с плагинами.
  • Для окружений разработки предложена новая команда «meson devenv -C builddir [<команда>], дающая возможность запустить команду в окружении, настроенном для запуска проектов из сборочного каталога (без установки).
  • По умолчанию прекращена передача параметра «-pipe» при запуске всех поддерживаемых компиляторов.
  • Разрешён вызов meson.add_dist_script() из подпроектов.
  • Предоставлена возможность многократного запуска методов append() и prepend() для одного и того же объекта environment().
  • В функции error() разрешено указание более одного аргумента с разделением пробелом (по аналогии с warning() и message()).
  • Добавлен параметр «—skip-subprojects» для выборочного пропуска установки подпроектов.

Отдельно можно отметить проект Boson, нацеленный на создание переносимой и простой реализации языка сборочных сценариев Meson, написанной на языке Си вместо Python. Проект пока находится на начальном этапе развития и пока не готов для полноценной сборки рабочих проектов. Код распространяется под лицензией GPLv3 (оригинальный Meson на Python поставляется под лицензией Apache 2.0).

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

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