[devel] [#263468] EPERM (try 14) llvm-common.git=11.0.0-alt2 srpm=llvm11.0-11.0.0-alt2.src.rpm

Konstantin Lepikhov lakostis на altlinux.org
Вт Янв 12 00:41:00 MSK 2021


Hi Arseny!

On 01/11/2021, at 07:38:51 PM you wrote:

<skip>
> > а так ли нужны все эти приседания с версиями и rc? У нас же не daily
> > builds собираются.
> 
> До поры до времени.
> Начинать готовить адаптацию спека лучше с каких-то достаточно поздних
> rc, особенно в случае, когда после выхода времени у мейнтейнера мало, а
> чуть раньше — много.
а мы куда то спешим?

> 
> > 
> > > +%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?
> 
> не в рамках одного исходного пакета.
Я знаю, что в 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

> разве тут что-то неверно?
> старый description был слишком неточным и подходил к нескольким бинарным
> пакетам.
по мне масло маслянное ну да ладно.

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

> Вот тут написано, почему 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, почему они не помогают?
:)

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

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

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

-- 
WBR et al.


Подробная информация о списке рассылки Devel