ALT Linux Team development discussions
 help / color / mirror / Atom feed
* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
  @ 2021-08-30 13:46 ` Alexey Gladkov
  2021-08-30 14:05   ` Sergey V Turchin
  2021-08-30 14:24 ` Arseny Maslennikov
  1 sibling, 1 reply; 12+ messages in thread
From: Alexey Gladkov @ 2021-08-30 13:46 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Mon, Aug 30, 2021 at 04:11:32PM +0300, Andrey Cherepanov wrote:
> $ rpm -e --test clang11.0 clang11.0-devel clang11.0-tools
> error: Failed dependencies:
>         clang11.0 is needed by (installed)
> llvm-common-clang-11.0.1-alt3.noarch
>         clang11.0-devel is needed by (installed)
> llvm-common-clang-devel-11.0.1-alt3.x86_64
>         clang11.0-tools is needed by (installed)
> llvm-common-clang-tools-11.0.1-alt3.noarch
> 
> Что за странные глупости, когда llvm-common-* вытягивает и другую версию
> llvm вдобавок к заданной версии?
> 
> А если в Sisyphus мне потребуется версия 11, приплывёт 12?

Совсем недавно сталкивался с этим. После обсуждения суть такая: тебе мало
поставить llvm-12 тебе нужно его выбрать.

%global llvm_version 12.0
export ALTWRAP_LLVM_VERSION="%llvm_version"

-- 
Rgrds, legion



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
  2021-08-30 13:46 ` [devel] llvm12.0 в p10, который вытягивает llvm11.0 Alexey Gladkov
@ 2021-08-30 14:05   ` Sergey V Turchin
  2021-08-30 14:57     ` Arseny Maslennikov
  0 siblings, 1 reply; 12+ messages in thread
From: Sergey V Turchin @ 2021-08-30 14:05 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Monday, 30 August 2021 16:46:29 MSK Alexey Gladkov wrote:

[...]
> Совсем недавно сталкивался с этим. После обсуждения суть такая: тебе мало
> поставить llvm-12 тебе нужно его выбрать.
> 
> %global llvm_version 12.0
> export ALTWRAP_LLVM_VERSION="%llvm_version"
Так, может и запихать всё в макрос %set_llvm_version, который всё сделает и 
BuildRequires нужные выставит?
Возможно, ещё %set_clang_version. Один второго вызывать сам сможет наверняка.

-- 
Regards, Sergey.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
    2021-08-30 13:46 ` [devel] llvm12.0 в p10, который вытягивает llvm11.0 Alexey Gladkov
@ 2021-08-30 14:24 ` Arseny Maslennikov
  2021-08-30 14:49   ` Sergey V Turchin
                     ` (3 more replies)
  1 sibling, 4 replies; 12+ messages in thread
From: Arseny Maslennikov @ 2021-08-30 14:24 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Mon, Aug 30, 2021 at 04:11:32PM +0300, Andrey Cherepanov wrote:
> $ rpm -e --test clang11.0 clang11.0-devel clang11.0-tools
> error: Failed dependencies:
>         clang11.0 is needed by (installed)
> llvm-common-clang-11.0.1-alt3.noarch
>         clang11.0-devel is needed by (installed)
> llvm-common-clang-devel-11.0.1-alt3.x86_64
>         clang11.0-tools is needed by (installed)
> llvm-common-clang-tools-11.0.1-alt3.noarch
> 
> Что за странные глупости, когда llvm-common-* вытягивает и другую версию
> llvm вдобавок к заданной версии?

Когда пользователь ставит, например, пакет clang, он ожидает, что ему
должна прилететь не только обёртка /usr/bin/clang, но и сам clang некоторой
(значит, дефолтной) версии.
Когда же пользователь ставит, например, пакет clang12.0, он ожидает,
что этот clang будет доступен в PATH, поэтому там зависимость на пакет
clang, он же llvm-common-clang.

Поэтому у нас все пакеты llvmX, где X — не версия по умолчанию, зависят
от llvmY, где Y — версия по умолчанию.

> А если в Sisyphus мне потребуется версия 11, приплывёт 12?

Да.
Неприятно, конечно (но мешать в быту не должно). А как ещё?

> Нецелесообразно иметь прокладку, которая приводит к side effect в 284183
> FAILED #1 p10 qt-creator.git=5.0.0-alt1.

В пакете qt-creator не выставлена переменная окружения
ALTWRAP_LLVM_VERSION. Напрямую это делать не стоит; я готовлю обновление
для llvm-common с макросом %set_llvm_version, который предлагаю для этого
использовать.

Раз уж зашла речь: у нас в p10 llvm по умолчанию — 11. Вопрос к
релиз-менеджменту p10: может, пока не поздно (дистрибутивы не
выпустили), лучше сделать дефолтным 12? Или это уже плохая идея?

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
  2021-08-30 14:24 ` Arseny Maslennikov
@ 2021-08-30 14:49   ` Sergey V Turchin
  2021-08-30 15:57   ` Andrey Cherepanov
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 12+ messages in thread
From: Sergey V Turchin @ 2021-08-30 14:49 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Monday, 30 August 2021 17:24:38 MSK Arseny Maslennikov wrote:

[...]
> Раз уж зашла речь: у нас в p10 llvm по умолчанию — 11. Вопрос к
> релиз-менеджменту p10: может, пока не поздно (дистрибутивы не
> выпустили), лучше сделать дефолтным 12? Или это уже плохая идея?
Хорошая. Лишь отдел тестирования не пропустит без починки в этом сборочном 
задании всего, у чего сборка сломается.

-- 
Regards, Sergey.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
  2021-08-30 14:05   ` Sergey V Turchin
@ 2021-08-30 14:57     ` Arseny Maslennikov
  2021-08-30 15:49       ` [devel] %set_clang_version Arseny Maslennikov
  2021-08-31 12:00       ` [devel] llvm12.0 в p10, который вытягивает llvm11.0 Sergey V Turchin
  0 siblings, 2 replies; 12+ messages in thread
From: Arseny Maslennikov @ 2021-08-30 14:57 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Mon, Aug 30, 2021 at 05:05:28PM +0300, Sergey V Turchin wrote:
> On Monday, 30 August 2021 16:46:29 MSK Alexey Gladkov wrote:
> 
> [...]
> > Совсем недавно сталкивался с этим. После обсуждения суть такая: тебе мало
> > поставить llvm-12 тебе нужно его выбрать.
> > 
> > %global llvm_version 12.0
> > export ALTWRAP_LLVM_VERSION="%llvm_version"
> Так, может и запихать всё в макрос %set_llvm_version, который всё сделает

http://git.altlinux.org/tasks/284202/

> и BuildRequires нужные выставит?

Непонятно, что в BR дописывать этим макросом. Не всем нужны -tools, не
всем нужна libclang.
Если написать только llvmX-devel, то многим пакетам этого будет
недостаточно; мейнтейнерам придётся дописывать те же
llvm%_llvm_version-tools в спек явно.

> Возможно, ещё %set_clang_version. Один второго вызывать сам сможет наверняка.

Да, сможет. И тогда BR: clangX-devel именно туда.


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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [devel] %set_clang_version
  2021-08-30 14:57     ` Arseny Maslennikov
@ 2021-08-30 15:49       ` Arseny Maslennikov
  2021-08-30 17:26         ` Dmitry V. Levin
  2021-08-30 21:24         ` Konstantin Lepikhov
  2021-08-31 12:00       ` [devel] llvm12.0 в p10, который вытягивает llvm11.0 Sergey V Turchin
  1 sibling, 2 replies; 12+ messages in thread
From: Arseny Maslennikov @ 2021-08-30 15:49 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Mon, Aug 30, 2021 at 05:57:24PM +0300, Arseny Maslennikov wrote:
> On Mon, Aug 30, 2021 at 05:05:28PM +0300, Sergey V Turchin wrote:
> > Возможно, ещё %set_clang_version. Один второго вызывать сам сможет наверняка.
> 
> Да, сможет. И тогда BR: clangX-devel именно туда.
Точнее, clangX. -devel не всем нужен.

И обращение к %set_clang_optflags_lto тоже туда.

%set_clang_optflags_lto %global optflags_lto -flto=thin


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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
  2021-08-30 14:24 ` Arseny Maslennikov
  2021-08-30 14:49   ` Sergey V Turchin
@ 2021-08-30 15:57   ` Andrey Cherepanov
  2021-08-30 19:11   ` Alexey V. Vissarionov
    3 siblings, 0 replies; 12+ messages in thread
From: Andrey Cherepanov @ 2021-08-30 15:57 UTC (permalink / raw)
  To: devel

30.08.2021 17:24, Arseny Maslennikov пишет:
> On Mon, Aug 30, 2021 at 04:11:32PM +0300, Andrey Cherepanov wrote:
>> $ rpm -e --test clang11.0 clang11.0-devel clang11.0-tools
>> error: Failed dependencies:
>>          clang11.0 is needed by (installed)
>> llvm-common-clang-11.0.1-alt3.noarch
>>          clang11.0-devel is needed by (installed)
>> llvm-common-clang-devel-11.0.1-alt3.x86_64
>>          clang11.0-tools is needed by (installed)
>> llvm-common-clang-tools-11.0.1-alt3.noarch
>>
>> Что за странные глупости, когда llvm-common-* вытягивает и другую версию
>> llvm вдобавок к заданной версии?
> Когда пользователь ставит, например, пакет clang, он ожидает, что ему
> должна прилететь не только обёртка /usr/bin/clang, но и сам clang некоторой
> (значит, дефолтной) версии.
> Когда же пользователь ставит, например, пакет clang12.0, он ожидает,
> что этот clang будет доступен в PATH, поэтому там зависимость на пакет
> clang, он же llvm-common-clang.

Для этого придумали альтернативы.

-- 
Andrey Cherepanov
cas@altlinux.org



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] %set_clang_version
  2021-08-30 15:49       ` [devel] %set_clang_version Arseny Maslennikov
@ 2021-08-30 17:26         ` Dmitry V. Levin
  2021-08-30 21:24         ` Konstantin Lepikhov
  1 sibling, 0 replies; 12+ messages in thread
From: Dmitry V. Levin @ 2021-08-30 17:26 UTC (permalink / raw)
  To: devel

On Mon, Aug 30, 2021 at 06:49:41PM +0300, Arseny Maslennikov wrote:
> On Mon, Aug 30, 2021 at 05:57:24PM +0300, Arseny Maslennikov wrote:
> > On Mon, Aug 30, 2021 at 05:05:28PM +0300, Sergey V Turchin wrote:
> > > Возможно, ещё %set_clang_version. Один второго вызывать сам сможет наверняка.
> > 
> > Да, сможет. И тогда BR: clangX-devel именно туда.
> Точнее, clangX. -devel не всем нужен.
> 
> И обращение к %set_clang_optflags_lto тоже туда.
> 
> %set_clang_optflags_lto %global optflags_lto -flto=thin

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

К слову, мы рассматривали вариант добавления макроса, который бы делал
%{?optflags_lto:%global optflags_lto %optflags_lto -ffat-lto-objects}
и решили не добавлять, потому что для того, чтобы им стали пользоваться,
его придётся сперва добавить во все поддерживаемые бранчи, а это такая
морока, что этим пока что никто не захотел заниматься.


-- 
ldv


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
  2021-08-30 14:24 ` Arseny Maslennikov
  2021-08-30 14:49   ` Sergey V Turchin
  2021-08-30 15:57   ` Andrey Cherepanov
@ 2021-08-30 19:11   ` Alexey V. Vissarionov
    3 siblings, 0 replies; 12+ messages in thread
From: Alexey V. Vissarionov @ 2021-08-30 19:11 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On 2021-08-30 17:24:38 +0300, Arseny Maslennikov wrote:

 >> Что за странные глупости, когда llvm-common-* вытягивает и
 >> другую версию llvm вдобавок к заданной версии?
 > Когда пользователь ставит, например, пакет clang, он ожидает,
 > что ему должна прилететь не только обёртка /usr/bin/clang, но
 > и сам clang некоторой (значит, дефолтной) версии.

Причем в подавляющем большинстве случаев - самой свежей.

 > Когда же пользователь ставит, например, пакет clang12.0, он
 > ожидает, что этот clang будет доступен в PATH, поэтому там
 > зависимость на пакет clang, он же llvm-common-clang.
 > Поэтому у нас все пакеты llvmX, где X — не версия по умолчанию,
 > зависят от llvmY, где Y — версия по умолчанию.

Коряква. Для clang11 должен приезжать отдельный llvm-common-clang11,
у которого внутри будет указано Provides: llvm-common-clang для тех
пакетов, которым годится любая его версия.

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

 >> А если в Sisyphus мне потребуется версия 11, приплывёт 12?
 > Да. Неприятно, конечно (но мешать в быту не должно).

- А не бахнет?
- Не должно...

 > А как ещё?

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


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] %set_clang_version
  2021-08-30 15:49       ` [devel] %set_clang_version Arseny Maslennikov
  2021-08-30 17:26         ` Dmitry V. Levin
@ 2021-08-30 21:24         ` Konstantin Lepikhov
  1 sibling, 0 replies; 12+ messages in thread
From: Konstantin Lepikhov @ 2021-08-30 21:24 UTC (permalink / raw)
  To: devel

Hi Arseny!

On 08/30/2021, at 06:49:41 PM you wrote:

> On Mon, Aug 30, 2021 at 05:57:24PM +0300, Arseny Maslennikov wrote:
> > On Mon, Aug 30, 2021 at 05:05:28PM +0300, Sergey V Turchin wrote:
> > > Возможно, ещё %set_clang_version. Один второго вызывать сам сможет наверняка.
> > 
> > Да, сможет. И тогда BR: clangX-devel именно туда.
> Точнее, clangX. -devel не всем нужен.
> 
> И обращение к %set_clang_optflags_lto тоже туда.
> 
> %set_clang_optflags_lto %global optflags_lto -flto=thin
Я бы не стал торопиться, насколько помню, Thin LTO это не совсем тот LTO,
который в gcc, и всключать его везде и всегда не очень правильно.

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
  2021-08-30 14:57     ` Arseny Maslennikov
  2021-08-30 15:49       ` [devel] %set_clang_version Arseny Maslennikov
@ 2021-08-31 12:00       ` Sergey V Turchin
  1 sibling, 0 replies; 12+ messages in thread
From: Sergey V Turchin @ 2021-08-31 12:00 UTC (permalink / raw)
  To: ALT Linux Team development discussions

On Monday, 30 August 2021 17:57:24 MSK Arseny Maslennikov wrote:

[...]
> Непонятно, что в BR дописывать этим макросом. Не всем нужны -tools, не
> всем нужна libclang.
Не всем нужны, но и не всем мешают.
Можно подумать, как разбить на более мелкие макросы. Кому не хочется 
заморачиваться, пойдёт по простому пути типа "%buildreq_llvm 12" и всё, а кому 
надо, почитают файл с макросами и сделают более детально.

[...]

-- 
Regards, Sergey.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [devel] llvm12.0 в p10, который вытягивает llvm11.0
  @ 2021-11-23 10:15     ` Arseny Maslennikov
  0 siblings, 0 replies; 12+ messages in thread
From: Arseny Maslennikov @ 2021-11-23 10:15 UTC (permalink / raw)
  To: ALT Linux Team development discussions

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

On Tue, Nov 23, 2021 at 12:23:23PM +0600, Ildar Mulyukov wrote:
> On Mon, Aug 30, 2021 at 8:24 PM Arseny Maslennikov <arseny@altlinux.org>
> wrote:
> 
> > Поэтому у нас все пакеты llvmX, где X — не версия по умолчанию, зависят
> > от llvmY, где Y — версия по умолчанию.
> >
> Коллеги,
> я смотрю, воз и ныне там. Получается, всех всё устраивает?
> alternatives у нас отлично работают больше десяти лет. Что мешает применить
> и тут?

Как вы себе представляете alternatives-подобный механизм, переключающий
разделяемые библиотеки с несовпадающими публичным ABI и именем?

С программами-то в PATH всё понятно. :)

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2021-11-23 10:15 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-30 13:46 ` [devel] llvm12.0 в p10, который вытягивает llvm11.0 Alexey Gladkov
2021-08-30 14:05   ` Sergey V Turchin
2021-08-30 14:57     ` Arseny Maslennikov
2021-08-30 15:49       ` [devel] %set_clang_version Arseny Maslennikov
2021-08-30 17:26         ` Dmitry V. Levin
2021-08-30 21:24         ` Konstantin Lepikhov
2021-08-31 12:00       ` [devel] llvm12.0 в p10, который вытягивает llvm11.0 Sergey V Turchin
2021-08-30 14:24 ` Arseny Maslennikov
2021-08-30 14:49   ` Sergey V Turchin
2021-08-30 15:57   ` Andrey Cherepanov
2021-08-30 19:11   ` Alexey V. Vissarionov
2021-11-23 10:15     ` Arseny Maslennikov

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