Bug 38159 - Переименовать пакет lld
Summary: Переименовать пакет lld
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: lld (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Valery Inozemtsev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-02-27 12:43 MSK by Aleksei Nikiforov
Modified: 2020-03-10 18:08 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Aleksei Nikiforov 2020-02-27 12:43:20 MSK
Имеется пакет castxml, который собирается с помощью clang и lld. Из-за текущих имён пакетов, при сборке вытягивается llvm и clang версии 9.0, а lld - версии 7.0, что приводит к проблемам при сборке:

[100%] Linking CXX executable ../bin/castxml
ld.lld: error: /usr/lib64/libclangFrontend.a(CompilerInstance.cpp.o): Unknown attribute kind (62) (Producer: 'LLVM9.0.1' Reader: 'LLVM 7.0.1')

Сборочные зависимости указаны следующим образом:
BuildRequires: llvm-devel lld
BuildRequires: llvm-devel-static
BuildRequires: clang-devel
BuildRequires: clang-devel-static

При этом есть ещё пакет lld9.0, в котором есть provide lld, но из-за совпадений зависимости с именем реального пакета вытягивается lld седьмой версии:

$ rpm -qp --provides ./lld-7.0.1-alt4.rel.x86_64.rpm
lld7.0 = 7.0.1-alt4.rel
lld = 7.0.1-alt4.rel:sisyphus+229878.100.2.1

$ rpm -qp --provides ./lld9.0-9.0.1-alt2.x86_64.rpm
lld = 9.0.1-alt2
lld9.0 = 9.0.1-alt2:sisyphus+246248.100.2.1

При этом у других пакетов из состава clang и llvm подобной схемы не наблюдается, вместо этого имя пакета без версии является виртуальным provide:

$ rpm -qp --provides ./llvm7.0-devel-7.0.1-alt4.rel.x86_64.rpm
llvm-devel = 7.0.1-alt4.rel
BugpointPasses.so()(64bit)
BugpointPasses.so(LLVM_7)(64bit)
BugpointPasses.so(lib64/BugpointPasses.so)(64bit)
LLVMHello.so()(64bit)
LLVMHello.so(LLVM_7)(64bit)
LLVMHello.so(lib64/LLVMHello.so)(64bit)
LLVMgold.so()(64bit) = set:dcqk
LLVMgold.so(LLVM_7)(64bit)
LLVMgold.so(lib64/LLVMgold.so)(64bit)
llvm7.0-devel = 7.0.1-alt4.rel:sisyphus+229878.100.2.1

$ rpm -qp --provides ./llvm9.0-devel-9.0.1-alt2.x86_64.rpm
llvm-devel = 9.0.1-alt2
BugpointPasses.so()(64bit)
BugpointPasses.so(LLVM_9)(64bit)
BugpointPasses.so(lib64/BugpointPasses.so)(64bit)
LLVMHello.so()(64bit)
LLVMHello.so(LLVM_9)(64bit)
LLVMHello.so(lib64/LLVMHello.so)(64bit)
LLVMgold.so()(64bit) = set:dcqk
LLVMgold.so(LLVM_9)(64bit)
LLVMgold.so(lib64/LLVMgold.so)(64bit)
llvm9.0-devel = 9.0.1-alt2:sisyphus+246248.100.2.1

Прошу привести имена пакетов и provides к консистентному состоянию, чтобы при запросе компонентов из llvm/clang без версии устанавливались все компоненты одной версии.
Comment 1 Konstantin A Lepikhov (L.A. Kostis) 2020-02-27 22:40:20 MSK
Наверное, этим должен заниматься тот, кто собрал llvm9 в Сизиф
Comment 2 Repository Robot 2020-03-10 18:08:17 MSK
llvm7.0-7.0.1-alt5.rel -> sisyphus:

 Tue Mar 03 2020 Valery Inozemtsev <shrek@altlinux.ru> 7.0.1-alt5.rel
 - renamed lld to lld7.0 (closes: #38159)