The OpenNET Project / Index page

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



"Выпуск сборочной системы Meson 0.49.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от opennews (ok), 13-Дек-18, 13:06 
Представлен (https://groups.google.com/forum/#!topic/mesonbuild/kgQLqciq8nY) релиз сборочной системы Meson 0.49 (http://mesonbuild.com/), которая используется для сборки таких проектов, как X.Org Server, Mesa, Lighttpd, systemd, GStreamer, GNOME и GTK+. Вчера о поддержке  Meson объявили (https://lists.freedesktop.org/archives/wayland-devel/2018-De...) разработчики Wayland и композитного сервера Weston (поддержку autotools планируют прекратить в течение следующего года). Код Meson написан на языке Python и поставляется (https://github.com/mesonbuild/meson) под лицензией Apache 2.0.


Ключевыми целями развития Meson  является обеспечение высокой скорости сборочного процесса в сочетании с  удобством и простотой использования. Вместо утилиты make при сборке применяется инструментарий Ninja (https://www.opennet.ru/opennews/art.shtml?num=29525). В систему встроен многоплатформенный обработчик зависимостей, позволяющий использовать Meson для сборки пакетов для дистрибутивов. Правила сборки задаются на упрощённом предметно-ориентированном языке,  отличаются хорошей читаемостью и понятны пользователю (по задумке авторов разработчик должен тратить минимум времени на написание правил).


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


Основные новшества (https://mesonbuild.com/Release-notes-for-0-49-0.html), появившиеся в выпуске Meson 0.49:

-  Реализованы новые команды: "meson subprojects download" (загрузка субпроекта), "meson subprojects update" (обновление всех субпроектов) и "meson subprojects checkout" для выполнения операции checkout или создания ветки во всех Git-субпроектах.


-  Добавлено новое ключевое слово "section", применимое к сборочным опциям, которое позволяет интегрированным средам разработки группировать опции по аналогии с командой "meson configure". В "section" допустимо указания следующих значений: core, backend,  base, compiler,   directory, user,  test;


-  В объект "compiler" добавлен метод get_argument_syntax для проверки поддержки компилятором  расширенных опций gcc и msvc;


-  Добавлена возможность передачи аргументов в функции и методы в форме словарей (ассоциативных массивов);

-  В циклы foreach добавлена поддержка ключевых слов break и continue;

-  Добавлен оператор "/" для соединения путей (вместо join_paths('foo', 'bar') теперь можно указывать 'foo' / 'bar');

-  Добавлена поддержка кросс-компиляции для чипов Renesas RX, используя компилятор CC-RX;

-  Добавлена опция "b_pie"  и ключевое слово "pie" для формирования исполняемых файлов в режиме PIE (position-independent executables);
-  Обеспечена возможность выполнения команды "meson introspect --projectinfo " без наличия настроенного сборочного каталога;

-  При определении зависимости dependency('libgcrypt') в случае отсутствия pkg-config теперь выполняется поиск файлов libgcrypt-config.

URL: https://groups.google.com/forum/#!topic/mesonbuild/kgQLqciq8nY
Новость: https://www.opennet.ru/opennews/art.shtml?num=49774

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от mikhailnov (ok), 13-Дек-18, 13:06 
Как там с Meson на e2k?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

48. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от X4asd (ok), 14-Дек-18, 13:00 
пробовал на Астре Линукс Эльбрусе

в целом использовать вышло.. :-)

нюансы следущие:

python требуется современный (а не из репозитория говнолинуксов)

-> современный python собирается недоконца (проблемы с ffi) на Эльбрусе, но в достаточном количестве для использования Meson

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

81. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от Michael Shigorinemail (ok), 14-Апр-19, 18:10 
Засунули с 0.46.0: https://github.com/mesonbuild/meson/pull/3115

PS: но как же всё-таки эту кривулину ногами пишут...

TypeError: get_library_dirs() takes 2 positional arguments but 3 were given

(это функция и её вызов в одном и том же mesonbuild/compilers/c.py из одного и того же коммита, если что)

PPS re #48: в альте на эльбрусе сейчас питон 3.7.3, если что.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

84. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от mikhailnov (ok), 08-Май-19, 02:12 
> Засунули с 0.46.0: https://github.com/mesonbuild/meson/pull/3115
> PS: но как же всё-таки эту кривулину ногами пишут...
> TypeError: get_library_dirs() takes 2 positional arguments but 3 were given
> (это функция и её вызов в одном и том же mesonbuild/compilers/c.py из
> одного и того же коммита, если что)

Спасибо. А с месоном бывает весело не только на e2k.

Ответить | Правка | ^ к родителю #81 | Наверх | Cообщить модератору

4. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (4), 13-Дек-18, 13:25 
Примеры с кроскомпиляцией есть?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

49. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от X4asd (ok), 14-Дек-18, 13:04 
примеры чего?

1. примеры проектов? (которые были скомпилированы через кроскомпиляцию)

2. или примеры того как какой порядок действий делали пользователи чтобы скоспилировать кроскомпиляционно?

для случая {1} потенциально любой проект может оказаться ГОДНЫМ для кроскомпиляции. но есть вероятность присутствия ошибок в "meson.build" файле проекта, которые не позволят собрать через кроскомиляцмю.

для случая {2} -- примеры на страницах докментации

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

5. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от nonimus (?), 13-Дек-18, 13:54 
Что-то мало комментов. А такая тема многообещающая.
Священную корову C/C++ или яву - да богомерзким питоном собирать?
Таб не там поставил - весь продакшн рухнет, это же, как-никак, не скобочки!
ну и дальше по теме.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Выпуск сборочной системы Meson 0.49.0"  +3 +/
Сообщение от Anonim (??), 13-Дек-18, 14:13 
Меня, в основном, останавливает вот это:

https://mesonbuild.com/Syntax.html#userdefined-functions-and...

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

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

36. "Выпуск сборочной системы Meson 0.49.0"  +4 +/
Сообщение от Аноним (36), 13-Дек-18, 22:32 
ай-ай-ай... это как же так. Это же блокирующая причина не использовать meson.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

12. "Выпуск сборочной системы Meson 0.49.0"  +5 +/
Сообщение от Аноним (-), 13-Дек-18, 14:42 
> Священную корову C/C++ или яву - да богомерзким питоном собирать?

Это еще лайтово, один из погромистов гугля допер яву требовать для сборки _ОДНОГО_ си++ файлика.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

72. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от neit95 (ok), 17-Дек-18, 10:01 
Честно говоря, довольно старая фишка. Ныне питон у плюсов в комплекте не редкость. То разнопёстрые вспомогательные скрипты, то тесты (cxxtest, cxxmock), то сборщики (scons, waf). А вот на кой для java - не понятно. Там вроде с этим вообще своя атмосфера.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

6. "Выпуск сборочной системы Meson 0.49.0"  –4 +/
Сообщение от coder (?), 13-Дек-18, 14:06 
meson не нужен, есть cmake.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от Аноним (8), 13-Дек-18, 14:26 
cmake не нужен, есть meson
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

10. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (-), 13-Дек-18, 14:41 
cmake в отличие от этой дряни умеет генерить make-файлы.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

22. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от Аноним (22), 13-Дек-18, 17:32 
эта дрянь умеет генерить хромоподобный асинхронный мейк-файл ninja-build
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

30. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от Аноним (30), 13-Дек-18, 20:20 
Вобще-то, у CMake есть генераторы и для ninja и даже для проектов sublime text. И в отличии от Meson, CMake может в CUDA (да, да проприетарщина, пок-пок-пок) и кучу других интересных вещей
Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

51. "Выпуск сборочной системы Meson 0.49.0"  +4 +/
Сообщение от X4asd (ok), 14-Дек-18, 13:08 
> ... и даже для проектов sublime text. И в отличии от Meson, CMake может в CUDA (да, да проприетарщина, пок-пок-пок) и кучу других интересных вещей

а нормальные (экономные и при этом linux-style) агрументы командной строки -- CMake планирует научится?

или это является якобы совсем необязательным?

ато, понимаете, компилировать под проприетарную CUDA (на компьютере с проприетарным драйвером Nvidia) -- это что-то такое что наверняка не понадобиться НИ РАЗУ в жизни нормального человека.

а вот запускать компиляцию через использование различных аргументов командной строки -- это именно то что делается довольно часто в независимости от "кучу других интересных вещей" :-) ..

улавливаете в приоритеты?

ды и сам синтаксис проектов CMake тоже не вызывает радости

Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

57. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от пох (?), 14-Дек-18, 15:35 
> а нормальные (экономные и при этом linux-style) агрументы командной строки -- CMake планирует
> научится?

уже. Это и есть linux-style.

От неосиляторов шеллов и мэйкфайлов, ага.

> ды и сам синтаксис проектов CMake тоже не вызывает радости

чо такое? Они пробелонезависимые (в отличие, кстати, от clean make), разбираться и понимать не надо - stackoverflow, ctrl-c, ctrl-v.


Ответить | Правка | ^ к родителю #51 | Наверх | Cообщить модератору

74. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от neit95 (ok), 17-Дек-18, 10:06 
> разбираться и понимать не надо

Для сборки hello world'ов м.б. и не надо. А в остальном синтаксис cmake не на много лучше make.

Ответить | Правка | ^ к родителю #57 | Наверх | Cообщить модератору

32. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от Аноним (-), 13-Дек-18, 22:06 
> эта дрянь умеет генерить хромоподобный асинхронный мейк-файл ninja-build

А это надо еще какую-то отдельную нинзя-дрянь ставить. Особенно угарно для прожектов на 5 файлов. Они так круто несколько микросекунд сэкономили, путем требования понаставить какой-то гадости, что я им тоже желаю гуглопрогера, который яву потребовал вкатить и прочие грэдлы для того чтобы 1 си++ файл скомпилить.

А нормальные люди смотрели на это дело, крутили пальцем у виска и жали gcc -O3 file.cpp -o program :D

Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

47. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от llolik (ok), 14-Дек-18, 11:09 
> А это надо еще какую-то отдельную нинзя-дрянь ставить

Можно wget-нуть официально собранный бинарник (отсюда https://github.com/ninja-build/ninja/releases) аж 76Кб в zip. Внутри "гигантский" 183,3Кб блоб ninja. Собственно, вся установка.

Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

85. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Michael Shigorinemail (ok), 08-Май-19, 13:57 
>> А это надо еще какую-то отдельную нинзя-дрянь ставить
> Можно wget-нуть официально собранный бинарник

А где взять для e2k или вон для riscv64 через стенку? :)

Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

86. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от llolik (ok), 08-Май-19, 14:39 
>>> А это надо еще какую-то отдельную нинзя-дрянь ставить
>> Можно wget-нуть официально собранный бинарник
> А где взять для e2k или вон для riscv64 через стенку? :)

Ну, это к тому, что если он не хочет ставить, то вся ninja - это один >200Кб бинарник, который можно стащить с github для большинства случаев. Так-то оно и в репах есть (ну в Ubuntu и CentOS точно есть).  Можно и собрать https://github.com/ninja-build/ninja . Смотрел бегло, но вроде на поверхностный взгляд выглядит не сильно страшно, чтобы lcc там обломался со сборкой. Впрочем, я не большой специалист по lcc, Эльбрус в руках был, пока что, от силы два рабочих дня.

Ответить | Правка | ^ к родителю #85 | Наверх | Cообщить модератору

87. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Michael Shigorinemail (ok), 08-Май-19, 17:30 
> Смотрел бегло, но вроде на поверхностный взгляд выглядит не сильно страшно,
> чтобы lcc там обломался со сборкой.

На всякий: packages.altlinux.org/ninja 1.9.0-alt1 собралось без пинков.

Ответить | Правка | ^ к родителю #86 | Наверх | Cообщить модератору

52. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от X4asd (ok), 14-Дек-18, 13:19 
>> эта дрянь умеет генерить хромоподобный асинхронный мейк-файл ninja-build
> А это надо еще какую-то отдельную нинзя-дрянь ставить. Особенно угарно для прожектов
> на 5 файлов. Они так круто несколько микросекунд сэкономили, путем требования
> понаставить какой-то гадости, что я им тоже желаю гуглопрогера, который яву
> потребовал вкатить и прочие грэдлы для того чтобы 1 си++ файл
> скомпилить.
> А нормальные люди смотрели на это дело, крутили пальцем у виска и
> жали gcc -O3 file.cpp -o program :D

для только лишь одного файла (file.cpp, без зависимостей) -- нет смысла использовать ни ninja ни вообще meson ни cmake..

даже bash-скрипта делать не требуется.

просто в шапке файла напиши эту строчку:


// gcc -O3 file.cpp -o program

этого должно хватить..

так что обсуждать этого НЕТ смысла в теме про meson/cmake :-)

Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

73. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от neit95 (ok), 17-Дек-18, 10:03 
> умеет генерить make-файлы.

Не известно, для каких великих целей.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

11. "Выпуск сборочной системы Meson 0.49.0"  –2 +/
Сообщение от Константавр (ok), 13-Дек-18, 14:41 
cmake был раньше. Такшта, удваиваю - Мезон не нужен.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

16. "Выпуск сборочной системы Meson 0.49.0"  +7 +/
Сообщение от Аноним (16), 13-Дек-18, 14:47 
> cmake был раньше

А Makefile был еще раньше. Следовательно, cmake не нужен. А до Makefile жили в пещерах и все было неплохо. Так что и Makefile не нужен.

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

14. "Выпуск сборочной системы Meson 0.49.0"  –4 +/
Сообщение от FedeXemail (ok), 13-Дек-18, 14:46 
оба не нужны - есть bash скрипты
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

23. "Выпуск сборочной системы Meson 0.49.0"  –1 +/
Сообщение от Аноним (23), 13-Дек-18, 19:30 
Эволюция детка это когда раньше было огнива, а теперь зажигалка,
так и тут раньше был cmake, но натр@хавшись с ним придумали meson
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

33. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от Аноним (33), 13-Дек-18, 22:09 
И какие у него плюсы, собственно? Что он поддерживает полторы платформы, нифига не детектит, и вообще обкоцаный и единственным достоинством какие-то левые блабла про скорость?

Так обрастет поддержкой разного добра и фичами - скорость просядет, траха прибавится и после этого найдите 10 отличий. Cmake просто уже на более поздней фазе эволюции - умеет генерить файлы для кучи билдсистем, детектит кучу всего, даже уже не сильно глюкая в этом процессе как раньше. Так что даже в нечто относительно юзабельное превратился, по сравнению с старыми версиями.

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

53. "Выпуск сборочной системы Meson 0.49.0"  –2 +/
Сообщение от X4asd (ok), 14-Дек-18, 13:22 
> умеет генерить файлы для кучи билдсистем

а зачем это было делать? :-)

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

58. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от пох (?), 14-Дек-18, 15:37 
действительно, нужно wget'нуть официально собранный бинарник под единственно-верный линукс, и  ничего вообще не собирать, тем более что и все равно не соберется ни под чем кроме единственно-верного линукса.

ваш новый стандарт, манки-кодеры.

Ответить | Правка | ^ к родителю #53 | Наверх | Cообщить модератору

59. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от llolik (ok), 14-Дек-18, 15:52 
> действительно, нужно wget'нуть официально собранный бинарник под единственно-верный линукс

Ну вообще-то, если внимательно посмотреть, там (https://github.com/ninja-build/ninja/releases) бинарники под linux/window/mac + тарболл.
Как минимум, на Xenial/CentOS6 (штатный gcc) и на Win7 (MSVS2015), в общем на чём я собираю и могу проверить, оно нормально работает. На Mac не пробовал (нет надобности, макбука нет, с виртуалкой извращаться лень).

Ответить | Правка | ^ к родителю #58 | Наверх | Cообщить модератору

61. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от пох (?), 14-Дек-18, 17:09 
похоже, они даже не догадываются, что линукс бывает не только на amd64...

в принципе, незачем и париться - код, использующий это чудо вместо автоконфа, все равно там тоже не соберется, а собравшись по недоразумению - не заработает.

Ответить | Правка | ^ к родителю #59 | Наверх | Cообщить модератору

63. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от X4asd (ok), 14-Дек-18, 17:43 
> похоже, они даже не догадываются, что линукс бывает не только на amd64...

ну и на какой линукс тебе не хватило бинарника ninja ? (в том числе учитывая собственный репозиторий этого линукса)

Ответить | Правка | ^ к родителю #61 | Наверх | Cообщить модератору

65. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от пох (?), 14-Дек-18, 19:16 
LSB_VERSION="core-2.0-noarch:core-3.2-noarch:core-4.0-noarch:core-2.0-ia32:core-3.2-ia32:core-4.0-ia32"
openSUSE 11.3 (i586)
VERSION = 11.3

на такой найдешь, например?
А еще ведь вообще не-интелы бывают в природе.

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

за сборочный инструментарий не-разработчики обычно берутся тогда, когда от репозитория ничего хорошего ждать не приходится, это-то уж можно было бы понять?

иначе я бы прямо из него вытащил бы "официально собранный бинарник".

правда, нафига он нужен, такой оперсорс, когда есть божественная десяточка?

Ответить | Правка | ^ к родителю #63 | Наверх | Cообщить модератору

69. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Xasd (ok), 16-Дек-18, 16:05 
The support for openSUSE 11.3 ended January 20th 2012
Ответить | Правка | ^ к родителю #65 | Наверх | Cообщить модератору

76. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от пох (?), 17-Дек-18, 15:26 
> The support for openSUSE 11.3 ended January 20th 2012

и чо? Повторяю - там где он не "ended" я "прекомпиленный бинарник" не сборочной системы сборки сборочной системы, а того, что, собственно, мне нужно, скачаю из репозитория.

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

У новых-модных-я-у-мамы-разработчиков - точно. Старые иногда умели пользоваться autoconf не для генерации интуитивно-приятного интерфейса, и не для замены своего неумения писать мэйкфайлы, а по прямому назначению - для автоматизации написания переносимого кода - в той мере, в которой это можно и нужно автоматизировать.

Ну, да, тоже не всегда - mono тому антипример.

Ответить | Правка | ^ к родителю #69 | Наверх | Cообщить модератору

78. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от X4asd (ok), 18-Дек-18, 17:34 
>> The support for openSUSE 11.3 ended January 20th 2012
>
> и чо? Повторяю - там где он не "ended" я "прекомпиленный бинарник" не сборочной системы сборки
> сборочной системы, а того, что, собственно, мне нужно, скачаю из репозитория.

это значит что врядли вообще можно надёжно ожидать что программа зауститься на таком хламе:

даже если тебе повезло со сборочной системой -- кроме неё существуют также и glibc разных версий/возможностей а также прикладные библиотеки

Ответить | Правка | ^ к родителю #76 | Наверх | Cообщить модератору

79. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от пох (?), 19-Дек-18, 16:57 
> это значит что врядли вообще можно надёжно ожидать что программа зауститься на таком хламе

программа, авторы которой ниасилили нормальные инструменты - не запустится, уверен.

Даже если это пресловутая гуглопрограмма из единственного cpp файла.

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

Оно все равно работает только в самой распоследней бывшей у автора версии и только в той позе, в которой он ее осилил собрать.

Ответить | Правка | ^ к родителю #78 | Наверх | Cообщить модератору

82. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Michael Shigorinemail (ok), 14-Апр-19, 18:15 
Ага, и теперь уродуются с мезоном об питон -- первое попавшееся: https://github.com/mesonbuild/meson/commit/de175aac0051b5625...

Нет уж, лучше make.  И если у автокрапа документация не хуже -- то, пожалуй, я бы лучше его разучил, чем эти метания об стену наблюдать.

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

13. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от Аноним (16), 13-Дек-18, 14:45 
С одной стороны

> Код Meson написан на языке Python

С другой стороны

> поставляется под лицензией Apache 2.0
> таких проектов, как systemd, GStreamer, GNOME и GTK+

Не могу определиться, мезон это хорошо или нет.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

24. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (23), 13-Дек-18, 19:32 
Это позволяет за считанные секунды описать процесс сборки в простой си подобной форме,
что конечно удобно, но вот Python как бы показывает, что проект не созрел.

С другой стороны Git тоже сначала не был на Си написан.

Ничего дорастет до взрослого состояния перепишут на Си.

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

37. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от DerRoteBaron (ok), 13-Дек-18, 22:33 
С одной стороны переписать на Си его можно (как и почти всё вообще), но так ли это нужно, если оно хорошо работает на питоне?
На встройках и железе двадцатилетней давности им вряд ли кто-нибудь будет собирать, а затянуть сборочной зависимостью питон и использовать на чем-нибудь помощнее себе нормально.
Разве что с кросс-компиляцией в чем-нибудь типа pdebuild могут быть проблемы, но там дебиановцы ССЗБ и не смогли в архитектуру зависимости "any" и тянут на host python:target, который пытается собой исполнить скрипт в postinstall и там и умирает.
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

68. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от dhamp (?), 16-Дек-18, 03:02 
>Это позволяет за считанные секунды описать процесс сборки в простой си подобной форме

в каком месте синтаксис meson с-подобный?

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

15. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (15), 13-Дек-18, 14:47 

>> В циклы foreach добавлена поддержка ключевых слов break и continue;

%%%ть! Затащить целой питон, чтобы писать правила на каком-то недоязыке.
Опять лисп изобретают.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

18. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от nm0iemail (ok), 13-Дек-18, 15:12 
DSL же.
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

20. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от llolik (ok), 13-Дек-18, 15:36 
> Опять лисп изобретают

Наоборот Python упрощают под нужды сборки.

> Затащить целой питон

Который и так везде (ну практически) есть.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

25. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (23), 13-Дек-18, 19:34 
Там от питона используют только парсилку грамматики,
так что думаю, что со временем перепишут на анси си
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

31. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от Ю.Т. (?), 13-Дек-18, 22:00 
>Опять лисп изобретают.

Кстати.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

39. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от Аноним (39), 14-Дек-18, 00:30 
А какие альтернативы?

Факт раз - тащить целый что-то придётся, современная система сборки это весьма нетривиальный продукт. CMake, autocrap, SCons, meson - всё большое само по себе, и/или тащит что-то большое зависимостями.

Факт два - язык таки нужен, и именно недоязык. Во-первых, чтобы на нём удобнее было описывать сборочную специфику, которая как минимум декларативна. Во-вторых, чтобы не дать возможность писать полноценные программы. SCons, который позволял питоновский код, показал к чему это приводит - сборка любого хелловорлда превращалась в портянку текста, который, даже не смотря на то что он был питоном, выглядел как перл.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

80. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от пох (?), 19-Дек-18, 17:08 
> Факт раз - тащить целый что-то придётся, современная система сборки это весьма
> нетривиальный продукт. CMake, autocrap, SCons, meson - всё большое само по
> себе, и/или тащит что-то большое зависимостями.

autocrap и сам по себе небольшой, и тащит только m4, который вообще крохотный.

и, самое главное - он нужен только и исключительно разработчику, желающему что-то поменять не в коде, а в механизме его сборки. Всем остальным (включая тех кто правит код) он не требуется - необходимо и достаточно запустить configure. Но это немодно, немолодежно, и мы его уже добавили в .gitignore, чтоб жизнь медом не казалась.

Ответить | Правка | ^ к родителю #39 | Наверх | Cообщить модератору

17. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от Ivan_83 (ok), 13-Дек-18, 14:50 
Непонятно только зачем это тащют для сборки си и крестовых проектов, собирали бы свои питоны этим.
Ещё какой то waf есть, тоже питоноподелие для сборки, mpv к сожалению этим собирается.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

26. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (23), 13-Дек-18, 19:35 
На сколько наблюдаю waf и scons не прижились, а вот meson вроде бы поддержало сообщество
так что есть вероятность что на определенном этапе его популярности его перепишут на си
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

67. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от SysA (?), 14-Дек-18, 20:17 
Это потому что за ним Красная Шапка стоит!
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

83. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Michael Shigorinemail (ok), 14-Апр-19, 18:17 
На waf ещё и samba с какого-то бодуна успели перетащить...
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

56. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Crazy Alex (ok), 14-Дек-18, 14:33 
Последние оода три не видел девелоперских систем без питона, даже виндовых. Всё равно что-то его притаскивает
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

19. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от КГБ СССР (?), 13-Дек-18, 15:16 

man make

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

21. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от Аноним84701 (ok), 13-Дек-18, 17:03 
>
 
> man make
>

make то он (g/b/n/p)make, но тот же бсдшный make и gnu make -- могут быть два довольно разных мейка.
Хотя, можно смотреть в сторону мейкфайлов suckless.org проектов -- там  обычно только Incs/Libs пути править нужно, чтобы оно собиралось на не-пингвине.


Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

27. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (23), 13-Дек-18, 19:37 
К сожалению, make это построитель дерева зависимостей для роаспараллеливания "выполнения" заданий.

meson это немного другого уровня инструмент, он понимает и знает какие инстурменты есть и умеет формировать в зависимости от платформы команду и ключи, а так же исследовать окружение

Хотя цель у инструментов одинаковая, но meson ближе к синструментам вроде ant и maven нежели к make

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

62. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от nobody (??), 14-Дек-18, 17:23 
ant - чистой воды make на яве и для явы со своим синтаксисом. Независимость от shell - единственное его коренное отличие от make
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

28. "Выпуск сборочной системы Meson 0.49.0"  +1 +/
Сообщение от Аноним (28), 13-Дек-18, 20:04 
meson — это замена autotools. замена make — это ninja-build
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

41. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от трололо (?), 14-Дек-18, 02:54 
совсем распоясались. vim, gcc и вам хватит. чет народ ваще оборзел)))) ахахах скоро кодить надо будет через решение спец задач по поиску нужной кнопки в сборщике сборщика, который собирает сборщика. :)
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

29. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (23), 13-Дек-18, 20:13 
Кто-нибуь разбирался со сборкой wxWidgets под Windows в meson.
Прочитал закрытые задачи на GitHUB по meson, но так и не понял
существует ли путь собрать проект с wxWidgets под Visual Studio.

Пакет wxWidgets скачан лежит в какой-то директории.

Что-то там непонтяное вроде и пакетный менеджер vcpck советуют,
но так и не понятно уже есть поддержка или нет.

Смотрел в сторону сборки clang под win32, но тоже не нашел упомнианий.

Вообще как-то глухо. Работы идут в этом направлении?

Неужеле все перебрались под .NET?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

35. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от Аноним (33), 13-Дек-18, 22:12 
Фантомас в очках на аэроплане: собрать wxWidgets в винде шлангом и прикрутить это к дотнету, во.
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

38. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (38), 14-Дек-18, 00:07 
> Смотрел в сторону сборки clang под win32, но тоже не нашел упомнианий.

Разработчики Clang-а не выпендриваются и используют CMake. Зависимостей от сторонних библиотек нет, собирается элементарно. Упоминаний чего не нашлось?

Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

54. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от X4asd (ok), 14-Дек-18, 13:38 
>> Смотрел в сторону сборки clang под win32, но тоже не нашел упомнианий.
> Разработчики Clang-а не выпендриваются и используют CMake. Зависимостей от сторонних библиотек
> нет, собирается элементарно. Упоминаний чего не нашлось?

Meson ещё не было когда появился clang

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

64. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от Аноним (64), 14-Дек-18, 19:08 
Верно, но в списках рассылки ("llvm-dev" и "cfe-dev") за весь этот год не нашлось ничего даже отдалённо напоминающего переход с CMake на сабж.

Вопрос "Упоминаний чего не нашлось?" также остаётся открытым.

Ответить | Правка | ^ к родителю #54 | Наверх | Cообщить модератору

66. "Выпуск сборочной системы Meson 0.49.0"  +2 +/
Сообщение от пох (?), 14-Дек-18, 19:20 
> Разработчики Clang-а не выпендриваются и используют CMake. Зависимостей от сторонних
> библиотек нет, собирается элементарно. Упоминаний чего не нашлось?

эммм...

LIB_DEPENDS=    libcurl.so:ftp/curl \
                libexpat.so:textproc/expat2 \
                libjsoncpp.so:devel/jsoncpp \
                libuv.so:devel/libuv \
                librhash.so:security/rhash

(весь вот этот мусор, кроме разьве что expat, архи ведь важен для банальной генерилки мэйкфайлов, ага). Про кольцевые зависимости в нем, когда что-то от чего зависит, вроде, libuv, требует для своей сборки cmake, я уже когда-то писал.

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

70. "Выпуск сборочной системы Meson 0.49.0"  –1 +/
Сообщение от Xasd (ok), 16-Дек-18, 16:12 
а на кой вообще хрен нужена библиотека асинхронного ввода-вывода для системы сборки?

в первых: можно было воспользоваться средствами которые предлагает ядро: epoll() (и select() для инвалидных операционных систем).

во вторых: CMake же вообще ничего даже НЕ собирает -- он только делает файл для ninja. ЗАЧЕМ ТУТ АСИНХРОННОСТЬ?!?!

ды и json разве там есть?

Ответить | Правка | ^ к родителю #66 | Наверх | Cообщить модератору

71. "Выпуск сборочной системы Meson 0.49.0"  –1 +/
Сообщение от dhamp (?), 16-Дек-18, 23:35 
исходники cmake доступны, изучать никто не запрещал.
изучи для чего нужна та или иная зависимость, да поделись с общественностью своими открытиями.
Ответить | Правка | ^ к родителю #70 | Наверх | Cообщить модератору

77. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от пох (?), 17-Дек-18, 15:31 
> а на кой вообще хрен нужена библиотека асинхронного ввода-вывода для системы сборки?

не знаю и знать не хочу. Я и так плохо сплю.

> в первых: можно было воспользоваться средствами которые предлагает ядро: epoll() (и select()
> для инвалидных операционных систем).

вот они и воспользовались, как умели - притащив зависимость от библиотеки, не разбираться же ж самим.

> ды и json разве там есть?

как видишь.

то есть, вероятно, без него как-то соберется, но не факт что после этого соберет то, чего ради ты собирал себе cmake.

это, заметим, базовые зависимости - там еще есть такие, которые включаются отдельно по запросу.
И отдельно еще модули.

autoconf, говоришь, плохой? (напоминаю, что по задумке, ни он сам, ни m4 вообще не должны присутствовать на машине, используемой для сборки или отладки проекта)


Ответить | Правка | ^ к родителю #70 | Наверх | Cообщить модератору

75. "Выпуск сборочной системы Meson 0.49.0"  +/
Сообщение от neit95 (ok), 17-Дек-18, 10:22 
Глянь msys2. Clang там был. М.б. и wxWidgets есть, но это не точно.
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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