Bug#977814: clazy's autopkg tests fail with llvm 11.0.1 rc2
Pino Toscano
pino at debian.org
Mon Dec 21 22:32:58 GMT 2020
retitle llvm-toolchain-11/1:11.0.1~+rc1-1 breaks behaviour with 1:11.0.0-5
reassign 977814 src:llvm-toolchain-11 llvm-toolchain-11/1:11.0.1~+rc1-1
affects 977814 src:clazy
thanks
Hi,
I did a change in clazy today, landed as 1.8-2, but we still have
failures, so I did some more research.
We currently have these versions of llvm-toolchain-11 and clazy:
- llvm-toolchain-11/testing: 1:11.0.0-5
- llvm-toolchain-11/unstable: 1:11.0.1~+rc2-1 (the same can be said for 1:11.0.1~+rc1-1 too)
- clazy/testing: 1.8-1+b1
- clazy/unstable: 1.8-2
clazy executes its own test suite both at build time (with the just
built binaries/plugin), and as autopkgtest (with what is installed by
the 'clazy' package).
We have the following situation:
a) clazy/testing
a.1) PASS: build against llvm-toolchain-11/testing
a.2) PASS: autopkgtest against llvm-toolchain-11/testing
a.3) FAIL: autopkgtest against llvm-toolchain-11/unstable
b) clazy/unstable
b.1) PASS: build against llvm-toolchain-11/unstable
b.2) FAIL: autopkgtest against llvm-toolchain-11/testing
b.3) PASS: autopkgtest against llvm-toolchain-11/unstable
So, to me it looks like we have two problems in llvm-toolchain-11:
1) something in llvm-toolchain-11/unstable breaks compatibility with
clazy/testing, and thus it breaks the CI testing for testing
migration of llvm-toolchain-11/unstable, case (a.3);
in addition, clazy/unstable is now blocked for a similar situation,
i.e. case (b.2)
2) in the dependencies of clazy I see:
Depends: libc6 (>= 2.14), libclang-cpp11, libllvm11 (>= 1:9~svn298832-1~), libstdc++6 (>= 9), clang-11
that is, libllvm11 has a version as specified by shlibs, while
libclang-cpp11 not; this sort of causes the case (b.2), as it allows
that combination (as llvm-toolchain-11/testing is enough to satisfy
the dependencies of clazy/unstable); a possible workaround is to make
sure that all the libraries in llvm-toolchain-11 without symbols
cause strict dependencies, as done by the following patch:
--- a/debian/rules
+++ b/debian/rules
@@ -724,7 +724,7 @@ override_dh_makeshlibs:
dh_makeshlibs -pliblldb-$(LLVM_VERSION) -V"liblldb-$(LLVM_VERSION) (>= 1:9~svn298832-1~)"
dh_makeshlibs -plibllvm$(LLVM_VERSION) -V"libllvm$(LLVM_VERSION) (>= 1:9~svn298832-1~)"
dh_makeshlibs -plibomp$(SONAME_OPENMP)-$(LLVM_VERSION) -V"libomp$(SONAME_OPENMP)-$(LLVM_VERSION) (>= 1:9~svn298832-1~)"
- dh_makeshlibs --remaining-packages
+ dh_makeshlibs --remaining-packages -V
override_dh_shlibdeps:
# Ignore asan libraries. They would trigger dependencies to multiarch libraries
In short: I'm reassigning this to llvm-toolchain-11, because there is a
behaviour change in the new version, and because its libraries cause too
loose dependencies. In the end, the clazy autopkgtest works properly,
and it looks like it caught actual issues in llvm-toolchain-11.
LLVM maintainers: please investigate and fix, thanks.
Thanks,
--
Pino Toscano
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <http://alioth-lists.debian.net/pipermail/pkg-llvm-team/attachments/20201221/b5abf70b/attachment.sig>
More information about the Pkg-llvm-team
mailing list