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: Fri, 15 Jan 2021 11:50:10 +0300
Message-ID: <YAFXQmM3dFqT2UsX@cello> (raw)
In-Reply-To: <20210114211238.GC189650@lks.home>

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

On Thu, Jan 14, 2021 at 10:12:38PM +0100, Konstantin Lepikhov wrote:
> Hi Arseny!
> 
> On 01/12/2021, at 03:09:01 PM you wrote:
> 
> <skip>
> > > а мы куда то спешим?
> > 
> > Самая важная причина, по которой я начал миграцию llvm в собственный
> > префикс — в том, что разным пакетам, в т. ч. пакетам-тулчейнам, требуются
> > llvm разной мажорной версии в одном репозитории, потому что они написаны
> > с расчётом на конкретную мажорную версию, и в том, что пользователи
> > не-мейнтейнеры хотели бы иметь в репозитории свежий clang и иногда
> > старый clang. Я не планирую сборку rc в репозиторий, но вот test-only
> > задания — почему нет, если так будет удобно.
> пакеты-тучейны это интересно звучит, но как это применимо к дистрибутиву?
> Все эти тулчейны как правило имеют свой бранч/репо llvm, и живут своей
> жизнью, отдельной от апстрима. Т.е. например, они внезапно могут не

Все или не все — покажет практика и время.

> поддерживать ту или иную версию gcc/libc в сизифе, я уж не говорю про
> архитектуру. И толк-то какой от них? Разве ООО захочет просертифицировать

Если официально признАть, что сизиф нужен только в качеСтве базы для
дистрибутивов ООО (варианТ покруче — только сертифицированных), то
вообще полсизифа надо удалять, а сообщество за пРеделами ООО и его
клиентов — распускАть за ненадобностью.

> какой-то продукт на базе этих тулчейнов или нужно будет добиться ABI
> совместимости (хотя в этом случае достаточно пропатчить glibc в рамках
> конкретного релиза, а не пересобирать весь тулчейн целиком).
> 
> У вас есть примеры которые вот так прямо нужны в сизифе?

Взглянул вот на сегодняшний rust.
2 патча, не связанные с llvm по смыслу, и 1 патч, принятый в апстрим
Rust. %def_without bundled_llvm. Никакой личной жизни не видно, хотя
когда-то, скорее всего, была.

Впрочем, найдутся и те, кому ничего в сизифе вот так прямо не нужно,
потому что их сам сизиф по тем или иным причинам не устраивает, или
потому что от всего сизифа им нужно пакетов 50. Более того, у разных лиц
это окажутся разные множества пакетов.

> 
> <skip>
> > > > > т.е. планируется собирать раздельные версии 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.

Можно, конечно, к каждому пользователю llvm в комплект тащить свою копию
llvm (или форк) и собирать его статически, обмазав LTO. Но возникают три
недостатка:
* в репозитории отсутствуют clang и clang-tools для пользователей
  сизифа;
* пакеты будут безобразно распухать в объёме;
* (теор.) в случае необходимости навязать важное исправление патч
  придётся накладывать в N мест вместо 1.

Да, третий пункт — теоретический, но никакой процесс обеспечения
безопасности не имеет смысла, если не опирается на достаточно надёжный
toolchain.
Поэтому у нас и введено в традицию по возможности переиспользовать
компоненты, которые используем при сборке.[1]

По моему личному мнению, первого уже достаточно, чтобы не делать это
"нормой всеобщего законодательства" (c).

> > 
> > И то, и другое.
> > И не только тулчейн, там ещё много всего интересного.
> см. выше.
> 
> Как пример от меня - у нас есть пакет vulkan-amdgpu, это vulkan ICD для
> amd, который собирается на базе libllvm из master + патчи от amd + обвязка
> к железу. Пакетить это "по уму" просто трата времени, поскольку все это
> генерирует на выходе _одну_ библиотеку. Т.е. проще собрать libllvm
> статиком и воткнуть его в эту библиотеку. В этом виде ваши усилия как бы
> сбоку, поскольку все равно AMD собирает эту библиотеку gcc, и, думаю, даже не
> планирует переходить на clang.
> 
> А есть, например их toolchain https://github.com/ROCm-Developer-Tools/aomp
> 
> > AOMP is a clang/llvm compiler, it also supports GPU offloading with HIP,
> > CUDA, and OpenCL.
> 
> Some sources to support OpenMP target offload on AMD GPUs have not yet
> been merged into the upstream LLVM trunk.
> 
> Как ваш патч тут поможет?

Тут — честно, никак.

А вот с https://bugzilla.altlinux.org/show_bug.cgi?id=39087 должен
помочь.

P.S.
[1] Даже если целесообразность динамической линковки резко упадёт, есть
теоретические меры, которые можно было бы принять в репозитории —
например, введение в пакетную систему аналога дебиановского Built-Using.

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

  reply	other threads:[~2021-01-15  8:50 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
2021-01-14 21:12                                 ` Konstantin Lepikhov
2021-01-15  8:50                                   ` Arseny Maslennikov [this message]
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=YAFXQmM3dFqT2UsX@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