The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск сборочной системы Meson 1.11.0

14.04.2026 09:07 (MSK)

Опубликован релиз сборочной системы Meson 1.11.0, которая используется для сборки таких проектов, как X.Org Server, Mesa, QEMU, Lighttpd, systemd, GStreamer, Wayland, GNOME и GTK. Код Meson написан на языке Python и поставляется под лицензией Apache 2.0.

Ключевой целью развития Meson является обеспечение высокой скорости сборочного процесса в сочетании с удобством и простотой использования. Вместо утилиты make при сборке по умолчанию применяется инструментарий Ninja, но возможно применение и других бэкендов, таких как Xcode и Visual Studio. В систему встроен многоплатформенный обработчик зависимостей, позволяющий использовать Meson для сборки пакетов для дистрибутивов. Правила сборки задаются на упрощённом предметно-ориентированном языке, отличаются хорошей читаемостью и понятны пользователю (по задумке авторов разработчик должен тратить минимум времени на написание правил).

Поддерживается кросс-компиляция и сборка в Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS и Windows с использованием GCC, Clang, Visual Studio и других компиляторов. Возможна сборка проектов на различных языках программирования, включая C, C++, Fortran, Java, D и Rust. Поддерживается инкрементальный режим сборки, при котором пересобираются только компоненты, напрямую связанные с изменениями, внесёнными с момента прошлой сборки. Meson можно использовать для формирования повторяемых сборок, при которых запуск сборки в разных окружениях приводит к генерации полностью идентичных исполняемых файлов.

Основные новшества Meson 1.11:

  • При вызове в скриптах Meson метода rust.workspace() реализован разбор корневого файла Cargo.toml внутри проекта, для корректной активации при сборке feature-флагов, определённых в общем для всех рабочих пространств файле Cargo.toml. Кроме того, метод rust.workspace() теперь возвращает объект, через который можно получить список feature-флагов и зависимостей для подпроектов, а также запустить сборку целей, объявленных в файлах Cargo.toml.
  • В команду "meson dist" добавлены опция "-j" (--num-processes) и переменная окружения MESON_NUM_PROCESSES для задания числа процессов, параллельно выполняемых при сборке и тестировании пакетов.
  • Параметр should_fail, допускающий прохождении теста при возвращении ошибки, объявлен устаревшим и переименован в expected_fail. Добавлен параметр expected_exitcode для выставления кода успешного завершения теста, отличного от 0.
  • В модуле external_project на платформе Windows задействована команда cygpath для преобразования специфичных для Windows файловых путей и Unix-подобные пути (например, из C:/path/to/configure в /path/to/configure).
  • В команды install_man и install_headers добавлена поддержка аргумента install_tag для выбора устанавливаемых файлов по произвольным тегам, а не только по тегам man и devel.
  • Добавлен параметр link_early_args, через который в командную строку при запуске компоновщика можно подставить опции (например, "-u" или "--defsym") до перечисления объектов и библиотек.
  • Добавлена константа "~", заменяемая на домашний каталог в файлах описания среды (machine files).
  • В команде "meson format" по умолчанию отключена сортировка файлов, указанных в числе аргументов функции files(). Для включения сортировки следует использовать опцию sort_files.
  • Анонсировано прекращение поддержки версий Python до выпуска 3.10. Meson 1.11.0 является последним выпуском с поддержкой веток Python 3.7, 3.8 и 3.9.
  • Добавлена поддержка новых возможностей C/C++ компилятора MPLAB XC32, появившихся в версии 5.0, таких как автоматическое включение LTO-оптимизаций и поддержка стандартов C2x и CPP23.


  1. Главная ссылка к новости (https://github.com/mesonbuild/...)
  2. OpenNews: Выпуск сборочной системы Meson 1.0
  3. OpenNews: Facebook опубликовал систему сборки Buck2
  4. OpenNews: Проект Сicada развивает систему автоматизации сборок, похожую на GitHub Actions
  5. OpenNews: Компания Apple открыла код сборочной системы Swift Build
  6. OpenNews: Релиз сборочной системы CMake 4.0.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65199-meson
Ключевые слова: meson, build
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (17) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Сладкая булочка (?), 10:31, 14/04/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Анонсировано прекращение поддержки версий Python до выпуска 3.10. Meson 1.11.0 является последним выпуском с поддержкой веток Python 3.7, 3.8 и 3.9.

    Ну сейчас в питон добавят хруст как сборочную зависимость и надо будет для сборки месона собрать раст.

     
     
  • 2.3, Аноним (3), 10:36, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    А для сборки раста - мезон.
     
     
  • 3.4, Аноним (4), 10:41, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это как с HarfBuzz, который требует FreeType, который хочет HarfBuzz?
     
     
  • 4.5, Аноним (4), 10:42, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    https://github.com/harfbuzz/harfbuzz/issues/2524
     
  • 4.10, Аноним (10), 12:15, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    USE="-hardbass" emerge -av freetype
    emerge av hardbass
    emerge -av freetype
     
     
  • 5.12, мимо проходил (?), 12:20, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А ведь прикольно будет когда длина этого кольца составит 10-15 элементов с systemd посередине ;)
     

  • 1.2, Аноним (3), 10:35, 14/04/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Оно уже научилось не путать питон, на котором крутится само, с питоном, для которого собирается софтина (в случаях, когда в системе сосуществуют две версии питона)?
     
     
  • 2.11, мимо проходил (?), 12:17, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Там половина разработчиков считает что такая ситуация равноценна встрече с динозавром, а другая половина не понимает о чём это.
     

  • 1.6, Аноним (6), 11:10, 14/04/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Поддерживается кросс-компиляция ... с использованием GCC, Clang, Visual Studio

    В них есть кросс-компиляция?

     
     
  • 2.13, мимо проходил (?), 12:32, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Даже MSVC умеет собирать для ARM64 на x86, если установить и выбрать соответствующий тулчейн.
    Оно даже падать при сборке почти перестало ;)
     
     
  • 3.14, Аноним (14), 12:52, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > MSVC умеет собирать

    Если система под Windows на x86 собирает приложение для Windows на ARM - это не кросс-компиляция. Разрабатывая на Windows, можно на нем собрать приложение для Linux? Вот разрабатывая на Linux, с помощью x86_64-w64-mingw32-g++ можно совершенно легко собрать приложение для Windows, и оно будут работать как родное.

     
     
  • 4.20, ptr (ok), 15:58, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Если система хоть под Windows, хоть под Linux, может собирать прошивку для микроконтроллеров - то это кросс-компиляция. По определению.
    А поддержка WinAPI или POSIX к кросс-компиляции имеет весьма отдалённое отношение.
     
  • 2.15, Аноним (14), 12:54, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В GCC нет кросс-компиляции
     
     
  • 3.19, ptr (ok), 15:15, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    И как же я тогда GCC компилирую для STM32, RP2040, ESP32-C3 или ESP32-S3? )))
     

  • 1.7, Аноним (6), 11:12, 14/04/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > FreeBSD, NetBSD, DragonFly BSD

    Для них разные форматы исполняемых файлов?

     
     
  • 2.17, openssh_user (ok), 13:01, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    ABI у перечисленных систем разный
     
  • 2.18, Аноним (18), 13:02, 14/04/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Разные операционные системы, разные ядра: одно семейство, но разные ABI.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру