ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Arseny Maslennikov <arseny@altlinux.org>
To: devel@lists.altlinux.org
Subject: Re: [devel] [#263468] EPERM (try 14) llvm-common.git=11.0.0-alt2 srpm=llvm11.0-11.0.0-alt2.src.rpm
Date: Tue, 12 Jan 2021 15:09:01 +0300
Message-ID: <X/2RXREOtwVzUfBf@cello> (raw)
In-Reply-To: <20210111214100.GA1776208@lks.home>

[-- Attachment #1: Type: text/plain, Size: 10746 bytes --]

On Mon, Jan 11, 2021 at 10:41:00PM +0100, Konstantin Lepikhov wrote:
> Hi Arseny!
> 
> On 01/11/2021, at 07:38:51 PM you wrote:
> 
> <skip>
> > > а так ли нужны все эти приседания с версиями и rc? У нас же не daily
> > > builds собираются.
> > 
> > До поры до времени.
> > Начинать готовить адаптацию спека лучше с каких-то достаточно поздних
> > rc, особенно в случае, когда после выхода времени у мейнтейнера мало, а
> > чуть раньше — много.
> а мы куда то спешим?

Самая важная причина, по которой я начал миграцию llvm в собственный
префикс — в том, что разным пакетам, в т. ч. пакетам-тулчейнам, требуются
llvm разной мажорной версии в одном репозитории, потому что они написаны
с расчётом на конкретную мажорную версию, и в том, что пользователи
не-мейнтейнеры хотели бы иметь в репозитории свежий clang и иногда
старый clang. Я не планирую сборку rc в репозиторий, но вот test-only
задания — почему нет, если так будет удобно.

> 
> > 
> > > 
> > > > +%global llvm_name llvm%v_majmin
> > > > +%global clang_name clang%v_majmin
> > > > +%global clangd_name clangd%v_majmin
> > > > +%global lld_name lld%v_majmin
> > > т.е. планируется собирать раздельные версии clang/llvm/lld?

на всякий случай уточню: я понял эти слова так, что в репозитории могут
сосуществовать clang-11, clang-12 и clang-10, lld-11, lld-12 и lld-10, и
да, разные мажорные версии собираются не из одного исходного пакета.

> > 
> > не в рамках одного исходного пакета.
> Я знаю, что в Fedora/Arch так делают, поэтому и спросил. Еще у нас есть
> lav@ который собирает все что находит - 
> 
> https://bugzilla.altlinux.org/show_bug.cgi?id=33411
> https://bugzilla.altlinux.org/show_bug.cgi?id=34672
> 
> Тут все еще есть нерешенная проблема - чего мы хотим достигнуть с llvm в
> сизифе? Конкурентный toolchain или еще одну библиотеку для сборки пакета
> xyz.

И то, и другое.
И не только тулчейн, там ещё много всего интересного.

> 
> > 
> > <...>
> > 
> > > >  %def_disable tests
> > > >  %ifarch x86_64 aarch64
> > > >  %def_without clang
> > > почему? without_clang используется только если у нас bootstrap. Иначе
> > > будет сборка без LTO.
> > 
> > Внимательно посмотрите changelog и архив.
> > 
> > Одна из возможных причин:
> > http://git.altlinux.org/people/arseny/packages/?p=llvm11.0.git;a=commit;h=4b3c6c13e4d70fd201691c636d57b5b020e00709
> > Надо думать, что с этим делать.
> Наверное, уведомить апстрим?
> 
> Еще неплохо прояснить вот этот баг
> https://bugzilla.altlinux.org/show_bug.cgi?id=34672

_Лично мне_ libcxx не слишком интересна до тех пор, пока с ней не будет
иметь смысл собирать (асимптотически) всё, что ныне может быть собрано с
libstdc++, и держать такие пакеты в рамках одной инсталляции ОС.
Когда-то clang вообще не конкурировал с gcc на том, что ещё пока принято
называть гнулинуксами; сейчас, в общем, монокультуры уже нет. О
подробностях и прогнозах тут не буду.
(Вскользь припомню только недавний порыв пассионарных googlers добавить
под зонтик llvm ещё и собственную libc, от чего их отговорило сообщество
musl. А где libc, там и elfutils, и dynamic linker.)

Собирать её в рамках llvm-экосистемы в репозитории и брать
ответственность за её работоспособность _лично я_ точно не в силах и не
хочу; если только договориться с теми, кому она нужна.

> 
> > разве тут что-то неверно?
> > старый description был слишком неточным и подходил к нескольким бинарным
> > пакетам.
> по мне масло маслянное ну да ладно.
> 
> <skip>
> > > Почему нам нужны все TARGETS?
> > 
> > Я скоро буду собирать пакеты, которые этим будут пользоваться.
> > 
> > Ну, и для "clang -target aarch64-unknown-linux-gnu" какого-нибудь.
> все таргеты это время сборки, потенциально сваленные тесты и т.д. Более
> того, предлагается все эти таргеты поддерживать?

В рамках того, что умеет их апстрим.

В случае необходимости бутстрапа можно решить собирать только host, а
потом им собирать all.

> 
> > Вот тут написано, почему man1dir не лишний:
> > 
> > > > +# Symlink man pages to the man dirs.
> > > > +for mand in %buildroot%llvm_datadir/man/man*; do
> > > > +	mand_index="${mand##*/man}"
> > > > +	for m in "$mand"/*.[1-9]*; do
> > > > +		# Let's force compress the man page, then symlink it.
> > > > +		# /usr/lib/llvm-11.0/share/man/manD/utilX.D.xz -> /usr/share/man/manD/utilX-11.D.xz
> > > > +		# Otherwise, brp-alt(compress) keeps fucking us up.
> > > > +		# It remakes the symlinks first, then compresses their targets,
> > > > +		# severing the symlinks.
> > > > +		/usr/lib/rpm/compress_files "$m"
> > > > +
> > > > +		mb="$(basename "$m")" # e. g. llvm-ar.1.xz
> > > > +		new_mb="${mb%%.[1-9]*}-%v_major.$mand_index" # e. g. llvm-ar-11.1.xz
> > > > +
> > > > +		mkdir -p "%buildroot%_mandir/man$mand_index"
> > > > +		ln -srv "$m" "%buildroot%_mandir/man$mand_index/$new_mb"
> > > > +	done
> > > > +done
> Ну так костыль жеж. У нас тут есть мантейнеры rpm, почему они не помогают?
> :)

Помогут — уберём. :)

А пока — надо было достичь готового пакета с
удовлетворительным (а лучше — хорошим) результатом; это лучше, чем
полгода искать время подготовить исправление и проталкивать его ещё 9
месяцев.

Со слов автора /usr/lib/rpm/compress_files, этот старый код надо
как-нибудь познакомить с xz и zstd, а то и переосмыслить.

> 
> <skip>
> > man не смотрит в llvm_man1dir.
> > Заморочиться и научить — вариант хуже, чем текущий, потому что программе
> > man надо ещё ман от правильной версии достать.
> я понимаю ваше желание сделать все красиво, но этот пакет могут
> поддерживать другие люди и хотелось бы, чтобы эта поддержка была вот без

(Note to self: мне надо бы подробно расписать в каком-то публичном
месте, что делает пакет llvm-common, как и зачем, как раз для других людей и
приравненного к ним будущего себя.)

У себя в packages я подробно веду git-историю всего, что происходит со
спеком, с пояснением, почему. Правда, её не видно в
git.altlinux.org/srpms...
В самом спеке около каждого дредноута я кратко пишу, зачем он.

Надо бы собирать из gear, но с использованием апстримных тарболлов, без
мучительной перепаковки.
В инструментарии gear у нас есть gear-import, а вот, например, такого
нет:
    tar.xz clang name=clang-@version@.src origin=https://github.com/llvm/llvm-project/releases/download/llvmorg-@version@/clang-@version@.src.tar.xz

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

> таких объездов, особенно, если тут есть те, кто могут помочь и исправить
> rpm/gear/whatever.
> 
> PS До сих пор собираю новую версию postfix вот именно из-за таких
> прекрасных патчей и .spec которые, конечно, собирают в результате
> космический дрендноут, но уж очень неподдерживаемые.

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

> 
> PPS Огромное спасибо вам, что не бросаете работу и таки собрали пакет!
:)

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  parent reply	other threads:[~2021-01-12 12:09 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-07 14:08                   ` Arseny Maslennikov
2021-01-07 20:52                     ` Konstantin Lepikhov
2021-01-07 21:18                       ` Arseny Maslennikov
2021-01-11  9:13                         ` Konstantin Lepikhov
2021-01-11 10:25                           ` [devel] hazardous girar builder (was: Re: [#263468] EPERM (try 14) llvm-common.git=11.0.0-alt2 srpm=llvm11.0-11.0.0-alt2.src.rpm) Arseny Maslennikov
2021-01-11 10:44                             ` [devel] hazardous girar builder Dmitry V. Levin
2021-01-11 10:49                               ` Arseny Maslennikov
2021-01-11 10:56                                 ` Dmitry V. Levin
2021-01-11 11:08                                   ` Arseny Maslennikov
2021-01-11 11:22                                     ` Sergey V Turchin
2021-01-11 11:25                                       ` Anton Farygin
2021-01-11 11:32                                         ` Alexey Gladkov
2021-01-11 11:41                                           ` Yuri Sedunov
2021-01-11 12:00                                             ` Alexey Gladkov
2021-01-11 12:30                                           ` Arseny Maslennikov
2021-01-11 12:25                                         ` Sergey V Turchin
2021-01-12  7:44                                             ` Sergey V Turchin
2021-01-12 10:44                                               ` Alexey V. Vissarionov
2021-01-12 13:24                                                 ` Sergey V Turchin
2021-01-11 12:30                                   ` Michael Shigorin
2021-01-11 13:21                                     ` Sergey V Turchin
2021-01-11 13:58                                       ` Arseny Maslennikov
2021-01-11 14:17                                         ` Sergey V Turchin
2021-01-12  7:55                                     ` Anton V. Boyarshinov
2021-01-12  8:13                                       ` Anton Farygin
2021-01-12  8:26                                       ` Anton V. Boyarshinov
2021-01-12  9:10                                         ` Anton Farygin
2021-01-12 10:10                                           ` Anton V. Boyarshinov
2021-01-12 11:10                                       ` Alexey V. Vissarionov
2021-01-12 12:53                                       ` Arseny Maslennikov
2021-01-12 13:18                                         ` Alexey V. Vissarionov
2021-01-12 14:10                                           ` Arseny Maslennikov
2021-01-12 19:06                                           ` Leonid Krivoshein
2021-01-12 20:54                                             ` [devel] html email in devel@ (was: Re: hazardous girar builder) Arseny Maslennikov
2021-01-13  8:45                                                 ` Alexey V. Vissarionov
2021-01-13  8:54                                                 ` Arseny Maslennikov
2021-01-13  8:59                                                 ` Andrey Savchenko
2021-01-13  9:18                                                   ` Arseny Maslennikov
2021-01-13  9:30                                                     ` Vladimir D. Seleznev
2021-01-13  9:37                                                       ` Alexey Gladkov
2021-01-13  9:48                                                       ` Arseny Maslennikov
2021-01-13  9:21                                                   ` Alexey Gladkov
2021-01-13 10:00                                                     ` Andrey Savchenko
2021-01-13 10:10                                                       ` Alexey Gladkov
2021-01-13 10:47                                                         ` Andrey Savchenko
2021-01-13 11:48                                                           ` Alexey Gladkov
2021-01-13 12:49                                                       ` Dmitry V. Levin
2021-01-13  9:27                                                   ` Vladimir D. Seleznev
2021-01-13  9:55                                                     ` Andrey Savchenko
2021-01-13 10:14                                                       ` Vladimir D. Seleznev
2021-01-13 10:49                                                         ` Andrey Savchenko
2021-01-13 10:59                                                           ` [devel] [JT] fortunes-ALT (was: html email in devel@) Michael Shigorin
2021-01-13 12:45                                                           ` [devel] html email in devel@ (was: Re: hazardous girar builder) Dmitry V. Levin
2021-01-14  9:45                                                             ` Alexey V. Vissarionov
2021-01-13  9:03                                               ` Alexey Gladkov
2021-01-12 18:10                                         ` [devel] hazardous girar builder Anton V. Boyarshinov
2021-01-12 18:40                                           ` Dmitry V. Levin
2021-01-12 18:48                                             ` Anton V. Boyarshinov
2021-01-12 14:12                                       ` Arseny Maslennikov
2021-01-11 16:09                         ` [devel] [#263468] EPERM (try 14) llvm-common.git=11.0.0-alt2 srpm=llvm11.0-11.0.0-alt2.src.rpm Konstantin Lepikhov
2021-01-11 16:31                           ` Michael Shigorin
2021-01-11 21:43                             ` Konstantin Lepikhov
2021-01-11 16:38                           ` Arseny Maslennikov
2021-01-11 21:41                             ` Konstantin Lepikhov
2021-01-11 23:16                               ` Dmitry V. Levin
2021-01-12 12:11                                 ` Arseny Maslennikov
2021-01-12 12:09                               ` Arseny Maslennikov [this message]
2021-01-14 21:12                                 ` Konstantin Lepikhov
2021-01-15  8:50                                   ` Arseny Maslennikov
2021-01-12 21:39                               ` Vitaly Lipatov
2021-01-14 20:55                                 ` Konstantin Lepikhov
2021-01-13 12:47                           ` Alexey Sheplyakov
2021-01-14 20:46                             ` Konstantin Lepikhov
2021-01-15  7:49                               ` Ivan A. Melnikov
2021-01-15  8:50                               ` Alexey Sheplyakov
2021-01-15  9:45                                 ` Konstantin Lepikhov
2021-01-15 12:38                                   ` [devel] И еще про кросс-компиляторы (Re: [#263468] EPERM (try 14) llvm-common.git=11.0.0-alt2 srpm=llvm11.0-11.0.0-alt2.src.rpm) Alexey Sheplyakov
2021-06-17  8:46                                     ` Konstantin Lepikhov
2021-01-15 13:46                                 ` [devel] [#263468] EPERM (try 14) llvm-common.git=11.0.0-alt2 srpm=llvm11.0-11.0.0-alt2.src.rpm Alexey V. Vissarionov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=X/2RXREOtwVzUfBf@cello \
    --to=arseny@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git