diff --git a/debian/changelog b/debian/changelog index 3a9981dc..25b8cca4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,5 +1,6 @@ llvm-toolchain-18 (1:18.1.6-2~exp1) experimental; urgency=medium +<<<<<<< [ Sylvestre Ledru ] * Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR to move the libraries into multi archi directories @@ -12,6 +13,16 @@ llvm-toolchain-18 (1:18.1.6-2~exp1) experimental; urgency=medium * Disable LLVM testsuite on x32 * Install liborc_rt-x86_64.a on x32 * Install hwasan_symbolize on x32 +======= + * Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR + to move the libraries into multi archi directories + (Closes: #1067699, #1067005) + (LP: #2063207) + * Introduce the new variable @DEB_HOST_MULTIARCH_LLVM@ in the build system + because the LLVM triple is different than Debian + x86_64-pc-linux-gnu instead of x86_64-linux-gnu + * autopkgtest: only run libllvmlibc test on supported archs +>>>>>>> -- Sylvestre Ledru Fri, 31 May 2024 23:00:43 +0200 diff --git a/debian/libc++1-X.Y.links.in b/debian/libc++1-X.Y.links.in index 4d1955c5..1e34d1d4 100644 --- a/debian/libc++1-X.Y.links.in +++ b/debian/libc++1-X.Y.links.in @@ -1,2 +1,2 @@ -usr/lib/llvm-@LLVM_VERSION@/lib/libc++.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++.so.1.0 +usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libc++.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++.so.1 diff --git a/debian/libc++abi1-X.Y.links.in b/debian/libc++abi1-X.Y.links.in index a57ef065..8d706053 100644 --- a/debian/libc++abi1-X.Y.links.in +++ b/debian/libc++abi1-X.Y.links.in @@ -1,2 +1,2 @@ -usr/lib/llvm-@LLVM_VERSION@/lib/libc++abi.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++abi.so.1.0 +usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libc++abi.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++abi.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++abi.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libc++abi.so.1 diff --git a/debian/libunwind-X.Y-dev.links.in b/debian/libunwind-X.Y-dev.links.in index d6d6103a..e00c7d14 100644 --- a/debian/libunwind-X.Y-dev.links.in +++ b/debian/libunwind-X.Y-dev.links.in @@ -1,2 +1,2 @@ -usr/lib/llvm-@LLVM_VERSION@/lib/libunwind.so /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so -usr/lib/llvm-@LLVM_VERSION@/lib/libunwind.a /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.a +usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libunwind.so /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so +usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libunwind.a /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.a diff --git a/debian/libunwind-X.Y.links.in b/debian/libunwind-X.Y.links.in index 2c8a964b..530f3966 100644 --- a/debian/libunwind-X.Y.links.in +++ b/debian/libunwind-X.Y.links.in @@ -1,2 +1,2 @@ -usr/lib/llvm-@LLVM_VERSION@/lib/libunwind.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so.1.0 +usr/lib/llvm-@LLVM_VERSION@/lib/@DEB_HOST_MULTIARCH_LLVM@/libunwind.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so.1.0 usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so.1.0 /usr/lib/@DEB_HOST_MULTIARCH@/libunwind.so.1 diff --git a/debian/qualify-clang.sh b/debian/qualify-clang.sh index ca9b1d92..007b7d56 100755 --- a/debian/qualify-clang.sh +++ b/debian/qualify-clang.sh @@ -8,7 +8,6 @@ fi VERSION=$(dpkg-parsechangelog | sed -rne "s,^Version: 1:([0-9]+).*,\1,p") DETAILED_VERSION=$(dpkg-parsechangelog | sed -rne "s,^Version: 1:([0-9.]+)(~|-)(.*),\1\2\3,p") DEB_HOST_ARCH=$(dpkg-architecture -qDEB_HOST_ARCH) -ARCH=$(clang-$VERSION -dumpmachine) LIST="libomp5-${VERSION}_${DETAILED_VERSION}_amd64.deb libomp-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb python3-lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb python3-clang-${VERSION}_${DETAILED_VERSION}_amd64.deb libllvm${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang1-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-common-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-runtime_${DETAILED_VERSION}_amd64.deb lld-${VERSION}_${DETAILED_VERSION}_amd64.deb libfuzzer-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++abi-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++1-${VERSION}_${DETAILED_VERSION}_amd64.deb libc++abi1-${VERSION}_${DETAILED_VERSION}_amd64.deb clang-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-tools_${DETAILED_VERSION}_amd64.deb clang-tools-${VERSION}_${DETAILED_VERSION}_amd64.deb clangd-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-cpp${VERSION}_${DETAILED_VERSION}_amd64.deb clang-tidy-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-cpp${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclc-${VERSION}_${DETAILED_VERSION}_all.deb libclc-${VERSION}-dev_${DETAILED_VERSION}_all.deb llvm-${VERSION}-linker-tools_${DETAILED_VERSION}_amd64.deb libunwind-${VERSION}_${DETAILED_VERSION}_amd64.deb libunwind-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libmlir-${VERSION}_${DETAILED_VERSION}_amd64.deb libmlir-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-rt-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-rt-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libclang-rt-${VERSION}-dev-wasm64_${DETAILED_VERSION}_all.deb libc++abi-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libc++-${VERSION}-dev-wasm32_${DETAILED_VERSION}_all.deb libpolly-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb bolt-${VERSION}_${DETAILED_VERSION}_amd64.deb libbolt-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb flang-${VERSION}_${DETAILED_VERSION}_amd64.deb libflang-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libllvmlibc-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb " @@ -280,6 +279,7 @@ rm -rf cmaketest echo "Testing clang-$VERSION ..." +ARCH=$(clang-$VERSION -dumpmachine) rm -f foo.log echo 'int main() {return 0;}' > foo.c diff --git a/debian/rules b/debian/rules index 572a5f38..31de2baf 100755 --- a/debian/rules +++ b/debian/rules @@ -866,6 +866,9 @@ endif exit 1; \ fi @mkdir -p stamps +# Detect the triple + TRIPLE=`grep LLVM_DEFAULT_TARGET_TRIPLE build-llvm/CMakeCache.txt|cut -d= -f2`; \ + sed -i -e "s|@DEB_HOST_MULTIARCH_LLVM@|$$TRIPLE|g" debian/*.links touch $@ VERBOSE=-v