Mwepụta nke usoro mgbakọ Meson 0.58. Project iji mepụta mmejuputa Meson n'asụsụ C

Ebipụtala ntọhapụ nke Meson 0.58 wuo usoro, nke a na-eji arụ ọrụ dịka X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME na GTK. Edere koodu Meson na Python ma nwee ikike n'okpuru ikike Apache 2.0.

Ebumnuche mmepe nke Meson bụ ịnye usoro mgbakọ dị elu jikọtara ọnụ na ịdị mma na ịdị mfe iji. Kama ime ya, ihe owuwu ahụ na-eji ngwa Ninja na ndabara, mana enwere ike ijikwa azụ azụ ndị ọzọ dị ka xcode na VisualStudio. Sistemu ahụ nwere onye na-ahụ maka ịdabere n'ọtụtụ ebe arụnyere na-enye gị ohere iji Meson wuo ngwugwu maka nkesa. A na-edobe iwu mgbakọ n'asụsụ dị mfe ngalaba-kpọmkwem, a na-agụ ha nke ọma ma nwee nghọta nye onye ọrụ (dị ka echiche nke ndị edemede si dị, onye mmepụta kwesịrị iji obere oge na-ede iwu).

A na-akwado ịchịkọta obe na iwulite na Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS na Windows site na iji GCC, Clang, Visual Studio na ndị nchịkọta ndị ọzọ. Enwere ike ịrụ ọrụ n'asụsụ mmemme dị iche iche, gụnyere C, C++, Fortran, Java na Rust. A na-akwado ụdị nrụpụta ihe nrịbawanye, nke naanị akụkụ ndị metụtara mgbanwe ndị emere kemgbe ụlọ ikpeazụ ka arụgharịrị. Enwere ike iji Meson mepụta ihe nrụpụta a na-emegharị ugboro ugboro, ebe ị na-arụ ụlọ na gburugburu ebe dị iche iche na-arụpụta ihe arụrụ arụ kpamkpam.

Isi ihe ohuru nke 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).

isi: opennet.ru

Tinye a comment