Te tukunga o te punaha huihuinga Meson 0.58. Kaupapa ki te hanga whakatinanatanga o Meson ki te reo C

Kua tukuna te punaha hanga Meson 0.58, ka whakamahia hei hanga kaupapa penei i te X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME me GTK. Ko te waehere a Meson kua tuhia ki te Python me te raihana i raro i te raihana Apache 2.0.

Ko te whainga matua o te whanaketanga Meson ko te whakarato i te tere tere o te tukanga huihuinga me te waatea me te ngawari o te whakamahi. Engari i te mahi hanga, ka whakamahia taunoa te kete taputapu Ninja i te wa e hanga ana, engari ka taea ano te whakamahi i etahi atu tuara penei i te xcode me VisualStudio. Kei roto i te punaha he kaikawe ti'aturi i roto i te papa-maha e taea ai e koe te whakamahi i a Meson ki te hanga kete mo nga tohatoha. Ko nga ture huihuinga kua tohua i roto i te reo-a-rohe kua ngawari, he tino panui me te maarama ki te kaiwhakamahi (kia rite ki te whakaaro o nga kaituhi, me noho te kaiwhakawhanake i te wa iti ki te tuhi ture).

Ka tautokohia te whakahiato ripeka me te hanga whare i runga i te Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS me Windows ma te whakamahi i te GCC, Clang, Visual Studio me etahi atu kaitoi. Ka taea te hanga kaupapa i roto i nga reo maha, tae atu ki te C, C++, Fortran, Java me Rust. Ka tautokohia te aratau hanga taapiri, ko nga waahanga anake e pa ana ki nga huringa i mahia mai i te hanganga o muri ka hangaia ano. Ka taea te whakamahi i a Meson ki te whakaputa i nga hanga tukurua, na te whakahaere i te hanga i roto i nga taiao rereke ka puta te whakaputanga o nga konae mahi rite tonu.

Nga mea hou o 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).

Source: opennet.ru

Tāpiri i te kōrero