Install LLVMgold in usr/lib/bfd-plugins to help various tools to understand the format (Closes: #919020)

This commit is contained in:
Sylvestre Ledru 2021-12-24 18:20:39 +01:00
parent 317f8ce703
commit a6a1aae2e8
4 changed files with 17 additions and 2 deletions

2
debian/changelog vendored
View File

@ -275,6 +275,8 @@ llvm-toolchain-13 (1:13.0.1~+rc1-1~exp2) experimental; urgency=medium
* Fix run-clang-tidy symlink. it moved from /usr/lib/llvm-13/share/clang/run-clang-tidy * Fix run-clang-tidy symlink. it moved from /usr/lib/llvm-13/share/clang/run-clang-tidy
to /usr/lib/llvm-13/bin/run-clang-tidy to /usr/lib/llvm-13/bin/run-clang-tidy
(Closes: #1001748) (Closes: #1001748)
* Install LLVMgold in usr/lib/bfd-plugins to help various tools to understand the
format (Closes: #919020)
-- Sylvestre Ledru <sylvestre@debian.org> Thu, 16 Dec 2021 14:28:09 +0100 -- Sylvestre Ledru <sylvestre@debian.org> Thu, 16 Dec 2021 14:28:09 +0100

3
debian/llvm-X.Y-linker-tools.links.in vendored Normal file
View File

@ -0,0 +1,3 @@
#!/usr/bin/dh-exec
[!powerpc !powerpcspe] usr/lib/llvm-@LLVM_VERSION@/lib/LLVMgold.so usr/lib/bfd-plugins

View File

@ -522,6 +522,15 @@ clang-$VERSION -flto=thin -O2 foo.c main.c -o foo
./foo > /dev/null ./foo > /dev/null
clang-$VERSION -flto=thin -O2 foo.c main.c -c clang-$VERSION -flto=thin -O2 foo.c main.c -c
# understand LTO files
# see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=919020
clang-$VERSION foo.c -flto -c
file foo.o|grep -q "LLVM IR bitcode"
if ! nm foo.o|grep -q "00000000 T foo"; then
echo "gold linker isn't understood"
exit 1
fi
echo "Testing lld-$VERSION ..." echo "Testing lld-$VERSION ..."
if test ! -f /usr/bin/lld-$VERSION; then if test ! -f /usr/bin/lld-$VERSION; then
@ -531,7 +540,7 @@ fi
clang-$VERSION -fuse-ld=lld -O2 foo.c main.c -o foo clang-$VERSION -fuse-ld=lld -O2 foo.c main.c -o foo
./foo > /dev/null ./foo > /dev/null
if ls -al1 /usr/bin/ld.lld|grep ld.lld-$VERSION; then if ls -al1 /usr/bin/ld.lld|grep -q ld.lld-$VERSION; then
# https://bugs.llvm.org/show_bug.cgi?id=40659 # https://bugs.llvm.org/show_bug.cgi?id=40659
# -fuse-ld=lld will call lld # -fuse-ld=lld will call lld
# Mismatch of version can fail the check # Mismatch of version can fail the check

3
debian/rules vendored
View File

@ -427,7 +427,8 @@ preconfigure:
debian/libclang-common-$(LLVM_VERSION)-dev.install \ debian/libclang-common-$(LLVM_VERSION)-dev.install \
debian/libomp-$(LLVM_VERSION)-dev.install \ debian/libomp-$(LLVM_VERSION)-dev.install \
debian/llvm-$(LLVM_VERSION)-dev.install \ debian/llvm-$(LLVM_VERSION)-dev.install \
debian/llvm-$(LLVM_VERSION)-linker-tools.install debian/llvm-$(LLVM_VERSION)-linker-tools.install \
debian/llvm-$(LLVM_VERSION)-linker-tools.links
# workaround the breaks/replaces/conflicts introduced with the omp-device-info move # workaround the breaks/replaces/conflicts introduced with the omp-device-info move
# we update the version to make it work with apt.llvm.org # we update the version to make it work with apt.llvm.org