Overview
Request 866842 accepted
- Use a stricter llvm requirement. Only relying on the llvm
soversion is still not enough. (kde#432078)
- Created by cgiboudeaux
- In state accepted
Request History
cgiboudeaux created request
- Use a stricter llvm requirement. Only relying on the llvm
soversion is still not enough. (kde#432078)
factory-auto added opensuse-review-team as a reviewer
Please review sources
factory-auto accepted review
Check script succeeded
dimstar_suse added as a reviewer
Being evaluated by staging project "openSUSE:Factory:Staging:adi:105"
dimstar_suse accepted review
Picked "openSUSE:Factory:Staging:adi:105"
licensedigger accepted review
ok
dimstar accepted review
dimstar_suse accepted review
Staging Project openSUSE:Factory:Staging:adi:105 got accepted.
dimstar_suse approved review
Staging Project openSUSE:Factory:Staging:adi:105 got accepted.
dimstar_suse accepted request
Staging Project openSUSE:Factory:Staging:adi:105 got accepted.
Hol' up. If the SO number is not enough, then the SO number needs adjustment (or ELF symbol versions)!
@aaronpuchert ↑
Hmm, I can't find any relevant changes, although there have also been strange crashes in libbcc (boo#1181326).
There is a change in
lldb/include/lldb/Core/ModuleList.h
andlldb/include/lldb/Target/Platform.h
that shouldn't have been allowed, but it shouldn't matter here, since we're not using liblldb.You can use /usr/bin/abidiff x.so (or /usr/lib/debug/..../.so as applicable) to discover differences between two builds of the (supposedly) same file.
I think the problem is that LLVM doesn't use
-fvisibility=hidden
, so there are a lot more visible symbols than would be considered part of the stable API. That's why I think the release manager looks at the headers in<subproject>/include
only.Unfortunately in this case he missed changes in a generated header, but we discussed this and I'm probably also going to be a bit more careful in the future.
Nevermind, the ABI did change. Culprit is a commit that changed
clang/include/clang/Basic/Attr.td
, which added the lineINHERITABLE_ATTR(Builtin)
somewhere to the middle of/usr/include/clang/Basic/AttrList.inc
, which is included in/usr/include/clang/Basic/AttrKinds.h
into an enumeration.I confirmed that
libbcc
is also running into ABI issues, so I'd suggest to not accept this change and let me try to revert that commit. The bug that it fixes doesn't seem severe enough to justify releasing a new sover.In sr#867167 is a fix that work for
libbcc
, perhaps you can try it forclazy
.I already checked that a clazy rebuild with llvm 11.0.1 fixed the crash.
The isuse is that llvm is being fixed and the ABI will break again (revert to the previous ABI)
The fix to
llvm11
reached the latest snapshot, perhaps you can try ifclazy
works without rebuilding now.the clazy package in factory has already been rebuilt after the abi change. This SR is still needed