URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 118680
[ Назад ]

Исходное сообщение
"Выпуск сборочной системы Meson 0.52"

Отправлено opennews , 09-Окт-19 10:31 
Опубликован релиз сборочной системы Meson 0.52, которая используется для сборки таких проектов, как X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME и GTK+. Код Meson написан на языке Python и поставляется под лицензией Apache 2.0...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=51630


Содержание

Сообщения в этом обсуждении
"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 10:31 
Когда уже можно будет сделать Deb пакет и загрузить на сервер прямо из Meson?

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 10:37 
Сегодня можно, вроде бы никто не против.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 10:55 
Вот уж нет я не разрешал делать такого. Такое можно будет делать только после выхода systemd-mesond, а до этого я буду считать это нарушением лицензионного соглашения.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 21:49 
Ты опшшять выпшшшодишшшь на пшшшвязь?

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 12:29 
Мейнтейнеры Debian против.

"Выпуск сборочной системы Meson 0.52"
Отправлено anonymous , 09-Окт-19 14:07 
Никто не мешает иметь сопровождать свой репозиторий.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 22:30 
шли бы они со своим NIH-синдромом. их дебхелпер неюзабебен чуть более, чем полностью.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 18:55 
Так не реализовано же? Смотрим по ссылке https://mesonbuild.com/Creating-Linux-binaries.html и видим только .tar.gz можно сделать с исходниками или установить в систему и то не ясно в DIST_DIR?

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 22:31 
У меня есть имплементация. Но я её ещё не релизнул.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 10:57 
Только CMake только хардкор.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 12:26 
Ну если хардкор, то Automake

"Выпуск сборочной системы Meson 0.52"
Отправлено заминированный тапок , 09-Окт-19 12:34 
руками, самописными shell-скриптами
готовую систему автосборки им видете ли подавайте

"Выпуск сборочной системы Meson 0.52"
Отправлено Корец , 10-Окт-19 08:21 
Если хардкор, то ручками команды, как в LFS :)

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 11-Окт-19 09:07 
LFS на 99% состоит из команд запуска готовых сборочных систем в пакетах, вы о чём вообще?

"Выпуск сборочной системы Meson 0.52"
Отправлено user90 , 09-Окт-19 11:02 
На мезон уже достаточно говна вылили, повторяться не стану. Но вот это:

> позволяющий использовать Meson для сборки пакетов для дистрибутивов
> Правила сборки задаются на упрощённом предметно-ориентированном языке

- вот точно упоротые. Та же rpmbuild собирает пакет по банальному спеку.  Для фигак фигак и в продакшн все уже давно есть! :) И без всяких нетрадиционно-ориентированных йазыков.


"Выпуск сборочной системы Meson 0.52"
Отправлено Ан , 09-Окт-19 15:10 
Если они сами делают спек и/или debhelper, то это много упрошает, много стандартизирует.

Самому всю эту скуку расписывать скушно.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 15:23 
> Та же rpmbuild собирает пакет по банальному спеку.

А та же dpkg-buildpackage — по банальному rules. Вот только когда надо собирать и deb, и rpm, приходится писать и то, и другое. А ещё бывают слаковские, фряшные, соляровские и прочие пакеты. Поэтому и существуют всякие обёртки, чтобы собирать пакеты разных форматов по одному определению (epm, cpack, fpm…). Да, они либо не позволяют использовать все фичи пакета, либо не дают полной абстракции от конкретного формата, но всё же иногда упрощают жизнь. Нет, не майнтейнерам дистрибутивов.


"Выпуск сборочной системы Meson 0.52"
Отправлено user90 , 09-Окт-19 17:33 
> Вот только когда надо собирать и deb, и rpm

checkinstall например.
Конечно, годилось не в 100% случаев, но зато процесс шел автоматически.

> А ещё бывают слаковские, фряшные, соляровские и прочие пакеты.

И даже те, о которых ты скорее всего никогда не слышал ;) Но охватить все в рамках одной тулзы все равно не выйдет.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 19:55 
> checkinstall например

Он умеет примерно ничего, к тому же его ломают частенько. И автоматизации поддаётся с трудом.

> охватить все в рамках одной тулзы все равно не выйдет

Моя очередь быть К. О.
*Все* никому и не нужны. Нужно какое-то подмножество.


"Выпуск сборочной системы Meson 0.52"
Отправлено llolik , 09-Окт-19 15:33 
Вот эту фразу в новости я как-то не совсем понял.
Там есть работа с pkg-config, возможность сделать разнообразные install-targets, возможность запускать скрипты перед/после install-targets. И есть аналог make dist, только оно берёт не всё содержимое каталога, а git HEAD. Собственно, всё.

Если предполагают там аналог CPack, то его там нет. Скрипты сборки пакетов всё равно надо писать ручками.

Официальная дока
https://mesonbuild.com/Creating-releases.html
https://mesonbuild.com/Creating-Linux-binaries.html
https://mesonbuild.com/Creating-OSX-packages.html


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 21:50 
>rpmbuild собирает пакет по банальному спеку.

говнецо что rpmbuild, что debhelper.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 23:28 
Судя по твоему комментарию, ты даже не знаешь, что такое debhelper. (Подсказка: это даже близко не аналог rpmbuild.)

"Выпуск сборочной системы Meson 0.52"
Отправлено Michael Shigorin , 11-Окт-19 00:17 
> Судя по твоему комментарию, ты даже не знаешь, что такое debhelper.
> (Подсказка: это даже близко не аналог rpmbuild.)

Возможно, Вы тоже не в курсе, что такое rpmbuild -- загляните когда-нибудь в ближайший /usr/lib/rpm/ (особенно в технически развитых дистрибутивах).


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 11-Окт-19 09:55 
Заглянул. Макроса %do_zaebis не нашёл, то есть аналога dh нет.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 11-Окт-19 10:02 
Да и вообще речь не об этом, а о том, что dh — всего лишь необязательная вспомогательная тулза.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 12:22 
>Код Meson написан на языке Python

Чем он тогда лучше/хуже Scons?


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 12:53 
Meson более строгий и узконаправленный. Файлы scons ничем не отличаются от питона, поэтому достаточно сложно выработать общий code style чтобы не было бардака. Если что нетак поправьте.

"Выпуск сборочной системы Meson 0.52"
Отправлено Michael Shigorin , 09-Окт-19 13:20 
Scons писали ещё более неграмотные...

https://lists.altlinux.org/pipermail/smoke-room/2019-Septemb...


"Выпуск сборочной системы Meson 0.52"
Отправлено alex , 09-Окт-19 15:27 
Я как разработчик ПО, в гробу видал такие системы сборки которые откуда то там берут опции компиляции.
И не царское(системы сборки) это дело думать о каких то там CFLAGS/CXXFLAGS .

Так вот, если писатель скрипта сборки игнорит чего то там из инвайрмента, то это не проблема системы сборки.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 17:16 
Сразу видно человек-сборка на страже систем сборки.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 20:01 
> не царское(кодера) это дело думать о каких то там CFLAGS/CXXFLAGS .

Вот так будет правильно. Флаги какой-то там конкретной реализации компилятора должны быть проблемой системы сборки.


"Выпуск сборочной системы Meson 0.52"
Отправлено Андрей , 09-Окт-19 14:27 
А waf?

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 15:25 
Прежде чем вообще употреблять такие слова, собери хотя бы разок свежую самбу кроссом.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 14:44 
Скунс не может в --help

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 17:46 
Scons вообще за систему сборки нельзя считать - на самом деле это недофреймворк для написания оных, поэтому если вы его используете то то, что должно быть сборочным скриптом, становится исходником системы сборки. Поэтому во-первых они огромные и нечитаемые, во-вторых никакой стандартизации, нельзя просто взять и запустить scons - нужно сначала разобраться в каком виде он принимает флаши сборки, как находит зависимости, прокидывает ли окружение (по умолчанию не прокидывает, поэтому ccache, например сразу ломается) и т.д. и т.п. А потом всё это переписать чтобы работало так как надо.

meson хоть и ненужная маргинальщина по сравнению с cmake, всё-таки претендует на то чтобы быть системой сборки, где можно декларативно указать что тебе нужно, и оно будет работать на разных системах так как должно.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 21:52 
>meson хоть и ненужная маргинальщина

redhat некоторые пакеты для dnf собирает мезоном

mesa тоже собирается мезоном.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 13:10 
Что такое Wayland и зачем его собирать?

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 15:23 
А что такое systemd и зачем его собирать?

"Выпуск сборочной системы Meson 0.52"
Отправлено Корец , 10-Окт-19 08:23 
ненужноД не надо собирать - мейнтейнеры твоего дистра уже всё сделали за тебя :D

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 18:15 
Wayland - протокол

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 13:29 
Python - слишком жырная зависимость для сборочной системы.

"Выпуск сборочной системы Meson 0.52"
Отправлено Андрей , 09-Окт-19 15:19 
Вот бы на Go написали. Был бы нативный статический бинарник. На любой ОС.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 15:26 
На Go написали qo. Но забросили, к сожалению. А выглядело весьма перспективно.

"Выпуск сборочной системы Meson 0.52"
Отправлено user , 09-Окт-19 21:23 
Я ему не доверяю, потому что он сам что-то скачивает.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 01:11 
Ничего он сам не скачивает. Только если попросишь.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 23:08 
Скомпилируй нативный статический бинарник на джава. Хотя можешь и питон нативно статически скомпилировать на любой ОС, разве что выкинуть либпитон отовсюду всё же не выйдет не избавившить от, собственно, питона. Джава правда только на линуксе (я не про gcj), там субсет джавы в 1000 раз более эффективный, но компилируется обычная жаба вроде бы, без хотспотов.

"Выпуск сборочной системы Meson 0.52"
Отправлено Michael Shigorin , 11-Окт-19 00:19 
> Вот бы на Go написали. Был бы нативный статический бинарник. На любой  ОС.

Кодогенератор принесёте?


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 19:01 
Нормальная зависимость. Собираю в одном проекте как зависимый проект ;)

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 21:55 
Двачую. bazel покомпактнее будет.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 01:12 
> bazel покомпактнее будет.

Этот тот, у которого жаба в зависимостях? Надеюсь, это был сарказм?


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 02:46 
анаконда - 2 гига и час установки на hdd  (а что либо другое на винду-десктоп смысла не имеет ставить, для линуксовых хостов питон несущественен - без него ни одна десктопная система не работает. CI, разумеется, другая история). jvm - 100 мегов. базель - 20 (встроенная jvm не учтена). Но базель имеет свои недостатки, даже если бы он весил 2 KiB, я бы его использовать не стал.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 10:28 
Вендопроблемки.

"Выпуск сборочной системы Meson 0.52"
Отправлено prokoudine , 09-Окт-19 13:52 
Выводить результаты конфигурирования после создания папки сборки так и не умеет?

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 15:47 
Обычно что-то такое делаю:

meson _build
meson configure _build


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 14:43 
В исходниках у них такой бардак ... Руки прямо тянутся взять и пофиксить.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 15:44 
Не сдерживайтесь, ждём ваших патчей.

"Выпуск сборочной системы Meson 0.52"
Отправлено user90 , 09-Окт-19 17:53 
'rm -rf'?

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 19:02 
Дык везде так пилют годами всякий говнокод. А потом люди страдають.
С другой стороны работает и ладно ...

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 09-Окт-19 20:03 
Не то чтобы прям везде, но autocrap — весьма наглядный пример такого подхода.

"Выпуск сборочной системы Meson 0.52"
Отправлено SOska , 09-Окт-19 19:12 
И перейти на cmake?

"Выпуск сборочной системы Meson 0.52"
Отправлено Главный Ананим , 09-Окт-19 23:09 
А чем Мезон ваш лучше Симейка? Симейк вроде не плох, пока не понадобится скрипт вида `FindXXXX.cmake` которого нет в коробках.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 01:14 
Да ничем не лучше.

> Симейк вроде не плох, пока не понадобится скрипт вида `FindXXXX.cmake` которого нет в коробках.

Ну так берёшь и пишешь. Это справедливо для всех систем сборки, с оговоркой, что у cmake «коробка» самая большая.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 02:51 
симейк очань плох. у него отвратительная документация, а работает он не интуитивно понятным образом, а для вылавливания багов в своём коде приходится модифицировать сами скрипты из поставки симейка. вкупе с отвратной системой типов "всё есть строка" это приводит к нежеланию копаться в симейковом коде. если же нужно сделать что-то нестандартное, то туши свет. в отличии от питона.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 10:35 
У CMake прекрасная документация, если ты не осилил — проблема в тебе. Со строками — да, не очень удобно, но, в принципе, для DSL это нормально. Если привык к шеллу, совершенно не напрягает.
Нестандатное делается не так уж и сложно, но для этого сначала таки надо избавиться от нежелания копаться в коде.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 20:01 
Документация может и не самая плохая, да только из версии в версии плодятся несовместимые изменения. Это ужасно, просто ужасно. Как только понадобится что-то немного отличного от стандартного, ты сразу нарываешься на проблемы. Месон может и не идеальный, но не просто так же он набирает популярность. После цмейка, он кажется таким мимимишечным. Цмейк очевидно для программистов с вендой головного мозга придумывался.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 20:11 
> из версии в версии плодятся несовместимые изменения

Интересно, как это я на них не натыкался? Все несовместимые изменения, с которыми лично мне довелось столкнуться, разруливаются policies. Может быть, ты просто не используешь cmake_minimum_required или бездумно увеличиваешь прописанное там значение, потому что так и не осилил документацию?

> Как только понадобится что-то немного отличного от стандартного, ты сразу нарываешься на проблемы.

Приведи пример. А то знаю я таких, которые вечно нарываются на проблемы исключительно из-за криворукости и пренебрежения чтением доки.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 21:08 
Ничего не менял, ничего. Выход был либо использовать версию трёхлетней давности, либо переписывать всё заново, потому что нигде в ченджлогах не было сказано, что что-то вообще должно поломаться в минорной версии. В итоге получилась миграция в трёх релизах подряд: autotools->cmake->meson (и это было очень утомительно).

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 21:25 
Ну то есть конкретики не будет ⇒ балабол.

"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 21:29 
Кыш-кыш. Это было несколько лет назад, с тех пор я не использую цмейк и не интересуюсь его проблемами.

"Выпуск сборочной системы Meson 0.52"
Отправлено Michael Shigorin , 10-Окт-19 20:13 
> Документация может и не самая плохая, да только из версии в версии
> плодятся несовместимые изменения. Это ужасно, просто ужасно.

Это детсад №1.

> Месон может и не идеальный, но не просто так же он набирает популярность.

А там напоролись недавно на детсад №2 -- когда изменяется внутреннее API, но не то что в master -- в выпуск попадает коммит, который при этом переводит лишь _часть_ внутренних же клиентов на новые функции...

> Цмейк очевидно для программистов с вендой головного мозга придумывался.


"Выпуск сборочной системы Meson 0.52"
Отправлено Аноним , 10-Окт-19 03:21 
find_package(PkgConfig) хватит всем.