diff --git a/debian/changelog b/debian/changelog index 033ec1a5..6b6c438b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -330,6 +330,74 @@ llvm-toolchain-snapshot (1:17~++20230128060150+75153adeda1a-1~exp1) experimental -- Sylvestre Ledru Sat, 28 Jan 2023 18:07:40 +0100 +llvm-toolchain-16 (1:16.0.6-26) unstable; urgency=medium + + * Disable --as-needed on armel + + -- Sylvestre Ledru Sat, 27 Apr 2024 01:12:00 +0200 + +llvm-toolchain-16 (1:16.0.6-25) unstable; urgency=medium + + * Fix libomp symbols file for t64. + + -- Matthias Klose Sun, 14 Apr 2024 11:55:50 +0200 + +llvm-toolchain-16 (1:16.0.6-24) unstable; urgency=medium + + [ Matthias Klose ] + * Add a stage1 profile to disable curl, grpc and spirv. + * Build with --as-needed. + * ASan: move allocator base to avoid conflict with high-entropy ASLR + for x86-64 Linux. Patch taken from LLVM 17. + + -- Matthias Klose Sat, 16 Mar 2024 22:12:22 +0100 + +llvm-toolchain-16 (1:16.0.6-23) unstable; urgency=medium + + [ Matthias Klose ] + * Fix sanitizer build on 32bit time_t64 architectures. + + -- Gianfranco Costamagna Mon, 11 Mar 2024 22:48:48 +0100 + +llvm-toolchain-16 (1:16.0.6-22) unstable; urgency=medium + + [ Gianfranco Costamagna ] + * Disable tests on mips64el + + [ Matthias Klose ] + * Fix sanitizer build on 32bit time_t64 architectures. + + -- Gianfranco Costamagna Wed, 06 Mar 2024 08:38:53 +0100 + +llvm-toolchain-16 (1:16.0.6-21) unstable; urgency=medium + + [ Steve Langasek ] + * Rename libraries for 64-bit time_t transition. + + [ Gianfranco Costamagna ] + * Fix 32bit builds + + -- Gianfranco Costamagna Sun, 03 Mar 2024 12:02:57 +0100 + +llvm-toolchain-16 (1:16.0.6-20) unstable; urgency=medium + + [ John Paul Adrian Glaubitz ] + * Don't install *clang_rt* on sparc and sparc64 + + [ Matthias Klose ] + * Remove unused import of imp module in scan-view, removed in Python 3.12. + + -- John Paul Adrian Glaubitz Sat, 24 Feb 2024 08:54:59 +0100 + +llvm-toolchain-16 (1:16.0.6-19) unstable; urgency=medium + + * Revert my ugly fix for 1052002. + + [ Faidon Liambotis ] + * Improve the fix for the bug 1052002. + + -- Sylvestre Ledru Thu, 23 Nov 2023 16:27:52 +0100 + llvm-toolchain-16 (1:16.0.6-18) unstable; urgency=medium [ Gianfranco Costamagna ] diff --git a/debian/libomp5-X.Yt64.symbols.in b/debian/libomp5-X.Yt64.symbols.in index b5b9986a..1ae47f0d 100644 --- a/debian/libomp5-X.Yt64.symbols.in +++ b/debian/libomp5-X.Yt64.symbols.in @@ -1523,3 +1523,4 @@ libomptarget.so.@LLVM_VERSION@ libomp5-@LLVM_VERSION@t64 #MINVER# omp_target_memcpy_rect@VERS1.0 17 omp_target_memcpy_rect_async@VERS1.0 17 ompt_libomptarget_connect@VERS1.0 17 + diff --git a/debian/patches/asan-allocator.diff b/debian/patches/asan-allocator.diff new file mode 100644 index 00000000..ff9a4ec1 --- /dev/null +++ b/debian/patches/asan-allocator.diff @@ -0,0 +1,22 @@ +diff --git a/compiler-rt/lib/asan/asan_allocator.h b/compiler-rt/lib/asan/asan_allocator.h +index 0b4dbf03bb9d53..6a12a6c6025283 100644 +--- a/compiler-rt/lib/asan/asan_allocator.h ++++ b/compiler-rt/lib/asan/asan_allocator.h +@@ -143,11 +143,15 @@ typedef DefaultSizeClassMap SizeClassMap; + const uptr kAllocatorSpace = ~(uptr)0; + const uptr kAllocatorSize = 0x8000000000ULL; // 500G + typedef DefaultSizeClassMap SizeClassMap; +-# else ++# elif SANITIZER_APPLE + const uptr kAllocatorSpace = 0x600000000000ULL; + const uptr kAllocatorSize = 0x40000000000ULL; // 4T. + typedef DefaultSizeClassMap SizeClassMap; +-# endif ++# else ++const uptr kAllocatorSpace = 0x500000000000ULL; ++const uptr kAllocatorSize = 0x40000000000ULL; // 4T. ++typedef DefaultSizeClassMap SizeClassMap; ++# endif + template + struct AP64 { // Allocator64 parameters. Deliberately using a short name. + static const uptr kSpaceBeg = kAllocatorSpace; diff --git a/debian/patches/remove-unused-imp-module.diff b/debian/patches/remove-unused-imp-module.diff new file mode 100644 index 00000000..1553232f --- /dev/null +++ b/debian/patches/remove-unused-imp-module.diff @@ -0,0 +1,10 @@ +--- a/clang/tools/scan-view/bin/scan-view ++++ b/clang/tools/scan-view/bin/scan-view +@@ -6,7 +6,6 @@ + """ + + import sys +-import imp + import os + import posixpath + import threading diff --git a/debian/rules b/debian/rules index b7aefbc4..ebf99fd4 100755 --- a/debian/rules +++ b/debian/rules @@ -26,6 +26,11 @@ LLVM_VERSION_NEXT := $(shell echo $(LLVM_VERSION_FULL) | awk -F. '{ OFS="."; $$N export DEB_BUILD_MAINT_OPTIONS = reproducible=-fixfilepath,-fixdebugpath optimize=-lto RUNTIMES = compiler-rt;libcxx;libcxxabi +# dpkg-buildflags support +# disable fixfilepath in favor of the llvm-project supplied flavor, disable lto +export DEB_BUILD_MAINT_OPTIONS = reproducible=-fixfilepath,-fixdebugpath optimize=-lto +RUNTIMES = compiler-rt;libcxx;libcxxabi + SOURCE_NAME := $(shell dpkg-parsechangelog -S Source) ifneq (,$(findstring snapshot,$(SOURCE_NAME))) BRANCH_NAME=snapshot @@ -85,7 +90,13 @@ include /usr/share/dpkg/buildflags.mk # collect additional flags for all stages all builds CFLAGS_EXTRA = -Wno-unused-command-line-argument CXXFLAGS_EXTRA = -Wno-unused-command-line-argument + +ifeq (,$(filter $(DEB_HOST_ARCH), armel)) LDFLAGS_EXTRA = -Wl,--build-id,--as-needed +else +# fails on armel. we are getting some missing latomic +LDFLAGS_EXTRA = -Wl,--build-id +endif # collect all flags for stage 1 toolchain build only STAGE_1_CFLAGS = $(CFLAGS) $(CFLAGS_EXTRA) $(CPPFLAGS) @@ -592,6 +603,7 @@ stamps/preconfigure: @echo "RUNTIMES_CXXFLAGS=$(RUNTIMES_CXXFLAGS)" @echo "STAGE_1_CXXFLAGS=$(STAGE_1_CXXFLAGS)" @echo "STAGE_2_CFLAGS=$(STAGE_2_CFLAGS)" + @echo "LDFLAGS_EXTRA=$(LDFLAGS_EXTRA)" @echo "LIBFUZZER_ENABLE=$(LIBFUZZER_ENABLE)" @echo "LTO_ENABLE=$(LTO_ENABLE)" @echo "COMPILER_RT_WASM_ENABLE=$(COMPILER_RT_WASM_ENABLE)"