mirror of
https://git.proxmox.com/git/llvm-toolchain
synced 2025-06-10 17:43:50 +00:00
Add code to hack time64 in 32bit builds, and try to disable stack protector on mips64el
This commit is contained in:
parent
bb17074e3c
commit
26c93c9ff7
15
debian/changelog
vendored
15
debian/changelog
vendored
@ -1,3 +1,9 @@
|
||||
llvm-toolchain-snapshot (1:19~++20240302063716+a30ba2ca21b0-1~exp1) UNRELEASED; urgency=medium
|
||||
|
||||
* experimental New snapshot release
|
||||
|
||||
-- Sylvestre Ledru <sylvestre@debian.org> Sat, 02 Mar 2024 18:37:29 +0100
|
||||
|
||||
llvm-toolchain-snapshot (1:19~++20240125092523+41fe98a6e7e5-1~exp1) experimental; urgency=medium
|
||||
|
||||
[ Sylvestre Ledru ]
|
||||
@ -26,13 +32,12 @@ llvm-toolchain-snapshot (1:19~++20240125092523+41fe98a6e7e5-1~exp1) experimental
|
||||
|
||||
-- Sylvestre Ledru <sylvestre@debian.org> Thu, 25 Jan 2024 14:51:10 +0100
|
||||
|
||||
llvm-toolchain-18 (1:18.1.0~rc2-4) UNRELEASED; urgency=medium
|
||||
llvm-toolchain-18 (1:18.1.0~rc2-4) unstable; urgency=medium
|
||||
|
||||
[ John Paul Adrian Glaubitz ]
|
||||
* Install *clang_rt* on sparc and sparc64
|
||||
* Run chrpath for libclang on sparc and sparc64
|
||||
* Fix 32bit builds, exclude i386, don't build clang-rt there
|
||||
* Revert gold linker on mips64el
|
||||
|
||||
-- John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> Fri, 16 Feb 2024 09:53:15 +0100
|
||||
-- Gianfranco Costamagna <locutusofborg@debian.org> Fri, 09 Feb 2024 20:59:07 +0100
|
||||
|
||||
llvm-toolchain-18 (1:18.1.0~rc2-3) unstable; urgency=medium
|
||||
|
||||
|
14
debian/control
vendored
14
debian/control
vendored
@ -135,6 +135,7 @@ Description: C, C++ and Objective-C compiler - Documentation
|
||||
This package contains the documentation.
|
||||
|
||||
Package: libclang1-19
|
||||
Provides: ${t64:Provides}
|
||||
Section: libs
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
@ -236,6 +237,7 @@ Description: High-level loop and data-locality optimizer
|
||||
# ------------- clang libraries -------------
|
||||
|
||||
Package: libclang-cpp19
|
||||
Provides: ${t64:Provides}
|
||||
Section: libs
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm19 (= ${binary:Version})
|
||||
@ -338,6 +340,7 @@ Description: Clang examples
|
||||
# ------------- LLVM -------------
|
||||
|
||||
Package: libllvm19
|
||||
Provides: ${t64:Provides}
|
||||
Architecture: any
|
||||
Section: libs
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
@ -570,6 +573,7 @@ Description: Next generation, high-performance debugger
|
||||
Project, such as the Clang expression parser and LLVM disassembler.
|
||||
|
||||
Package: liblldb-19
|
||||
Provides: ${t64:Provides}
|
||||
Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64
|
||||
# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm19 (= ${binary:Version})
|
||||
@ -634,7 +638,7 @@ Package: libomp5-19
|
||||
Multi-Arch: same
|
||||
Architecture: amd64 arm64 armhf i386 loong64 mips64el ppc64el ppc64 riscv64
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Provides: libomp-x.y
|
||||
Provides: ${t64:Provides}, libomp-x.y
|
||||
Conflicts: libomp-x.y
|
||||
Replaces: libomp-x.y
|
||||
Description: LLVM OpenMP runtime
|
||||
@ -665,7 +669,7 @@ Multi-Arch: same
|
||||
Pre-Depends: ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Suggests: clang
|
||||
Provides: libc++-x.y
|
||||
Provides: ${t64:Provides}, libc++-x.y
|
||||
Conflicts: libc++-x.y
|
||||
Replaces: libc++-x.y
|
||||
Description: LLVM C++ Standard library
|
||||
@ -735,7 +739,7 @@ Architecture: any
|
||||
Multi-Arch: same
|
||||
Pre-Depends: ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Provides: libc++abi-x.y
|
||||
Provides: ${t64:Provides}, libc++abi-x.y
|
||||
Conflicts: libc++abi-x.y
|
||||
Replaces: libc++abi-x.y
|
||||
Description: LLVM low level support for a standard C++ library
|
||||
@ -829,7 +833,7 @@ Architecture: amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64
|
||||
Multi-Arch: same
|
||||
Depends: ${shlibs:Depends},
|
||||
${misc:Depends}
|
||||
Provides: libunwind-x.y
|
||||
Provides: ${t64:Provides}, libunwind-x.y
|
||||
Conflicts: libunwind-x.y
|
||||
Replaces: libunwind-x.y
|
||||
Description: production-quality unwinder
|
||||
@ -877,7 +881,7 @@ Architecture: any
|
||||
Multi-Arch: same
|
||||
Depends: ${shlibs:Depends},
|
||||
${misc:Depends}
|
||||
Provides: libmlir-x.y
|
||||
Provides: ${t64:Provides}, libmlir-x.y
|
||||
Conflicts: libmlir-x.y
|
||||
Replaces: libmlir-x.y
|
||||
Description: Multi-Level Intermediate Representation library
|
||||
|
14
debian/control.in
vendored
14
debian/control.in
vendored
@ -135,6 +135,7 @@ Description: C, C++ and Objective-C compiler - Documentation
|
||||
This package contains the documentation.
|
||||
|
||||
Package: libclang1-@LLVM_VERSION@
|
||||
Provides: ${t64:Provides}
|
||||
Section: libs
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
@ -236,6 +237,7 @@ Description: High-level loop and data-locality optimizer
|
||||
# ------------- clang libraries -------------
|
||||
|
||||
Package: libclang-cpp@LLVM_VERSION@
|
||||
Provides: ${t64:Provides}
|
||||
Section: libs
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm@LLVM_VERSION@ (= ${binary:Version})
|
||||
@ -338,6 +340,7 @@ Description: Clang examples
|
||||
# ------------- LLVM -------------
|
||||
|
||||
Package: libllvm@LLVM_VERSION@
|
||||
Provides: ${t64:Provides}
|
||||
Architecture: any
|
||||
Section: libs
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
@ -570,6 +573,7 @@ Description: Next generation, high-performance debugger
|
||||
Project, such as the Clang expression parser and LLVM disassembler.
|
||||
|
||||
Package: liblldb-@LLVM_VERSION@
|
||||
Provides: ${t64:Provides}
|
||||
Architecture: amd64 arm64 armel armhf i386 ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32 loong64
|
||||
# ia64 hurd powerpc powerpcspe ppc64 alpha riscv64 s390x sparc64 mipsel mips64el have been removed
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm@LLVM_VERSION@ (= ${binary:Version})
|
||||
@ -634,7 +638,7 @@ Package: libomp5-@LLVM_VERSION@
|
||||
Multi-Arch: same
|
||||
Architecture: amd64 arm64 armhf i386 loong64 mips64el ppc64el ppc64 riscv64
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Provides: libomp-x.y
|
||||
Provides: ${t64:Provides}, libomp-x.y
|
||||
Conflicts: libomp-x.y
|
||||
Replaces: libomp-x.y
|
||||
Description: LLVM OpenMP runtime
|
||||
@ -665,7 +669,7 @@ Multi-Arch: same
|
||||
Pre-Depends: ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Suggests: clang
|
||||
Provides: libc++-x.y
|
||||
Provides: ${t64:Provides}, libc++-x.y
|
||||
Conflicts: libc++-x.y
|
||||
Replaces: libc++-x.y
|
||||
Description: LLVM C++ Standard library
|
||||
@ -735,7 +739,7 @@ Architecture: any
|
||||
Multi-Arch: same
|
||||
Pre-Depends: ${misc:Pre-Depends}
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Provides: libc++abi-x.y
|
||||
Provides: ${t64:Provides}, libc++abi-x.y
|
||||
Conflicts: libc++abi-x.y
|
||||
Replaces: libc++abi-x.y
|
||||
Description: LLVM low level support for a standard C++ library
|
||||
@ -829,7 +833,7 @@ Architecture: amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64
|
||||
Multi-Arch: same
|
||||
Depends: ${shlibs:Depends},
|
||||
${misc:Depends}
|
||||
Provides: libunwind-x.y
|
||||
Provides: ${t64:Provides}, libunwind-x.y
|
||||
Conflicts: libunwind-x.y
|
||||
Replaces: libunwind-x.y
|
||||
Description: production-quality unwinder
|
||||
@ -877,7 +881,7 @@ Architecture: any
|
||||
Multi-Arch: same
|
||||
Depends: ${shlibs:Depends},
|
||||
${misc:Depends}
|
||||
Provides: libmlir-x.y
|
||||
Provides: ${t64:Provides}, libmlir-x.y
|
||||
Conflicts: libmlir-x.y
|
||||
Replaces: libmlir-x.y
|
||||
Description: Multi-Level Intermediate Representation library
|
||||
|
41
debian/rules
vendored
41
debian/rules
vendored
@ -3,7 +3,6 @@
|
||||
# polly & lldb aren't enabled for every platform
|
||||
PROJECTS = clang;clang-tools-extra;lld;cross-project-tests;mlir
|
||||
# openmp & libunwind aren't enabled for every platform
|
||||
RUNTIMES = compiler-rt;libcxx;libcxxabi
|
||||
|
||||
TARGET_BUILD := build-llvm
|
||||
TARGET_BUILD_STAGE2 := $(TARGET_BUILD)/tools/clang/stage2-bins
|
||||
@ -22,6 +21,27 @@ ifeq ($(LLVM_VERSION),$(LLVM_VERSION_FULL))
|
||||
endif
|
||||
LLVM_VERSION_NEXT := $(shell echo $(LLVM_VERSION_FULL) | awk -F. '{ OFS="."; $$NF+=1; print}')
|
||||
|
||||
# dpkg-buildflags support
|
||||
# disable fixfilepath in favor of the llvm-project supplied flavor, disable lto
|
||||
# remove +time64,+lfs once the time64_t transition starts
|
||||
ifeq ($(DEB_HOST_ARCH),i386)
|
||||
RUNTIMES = compiler-rt;libcxx;libcxxabi
|
||||
export DEB_BUILD_MAINT_OPTIONS = reproducible=-fixfilepath,-fixdebugpath optimize=-lto
|
||||
else
|
||||
ifeq ($(DEB_HOST_ARCH_BITS),32)
|
||||
RUNTIMES = libcxx;libcxxabi
|
||||
export DEB_BUILD_MAINT_OPTIONS = reproducible=-fixfilepath,-fixdebugpath optimize=-lto abi=+time64,+lfs
|
||||
skip_packages = -Nlibclang-rt-$(LLVM_VERSION)-dev
|
||||
else
|
||||
RUNTIMES = compiler-rt;libcxx;libcxxabi
|
||||
ifeq ($(DEB_HOST_ARCH),mips64el)
|
||||
export DEB_BUILD_MAINT_OPTIONS = reproducible=-fixfilepath,-fixdebugpath optimize=-lto hardening=-stackprotector,-stackprotectorstrong
|
||||
else
|
||||
export DEB_BUILD_MAINT_OPTIONS = reproducible=-fixfilepath,-fixdebugpath optimize=-lto
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
SOURCE_NAME := $(shell dpkg-parsechangelog -S Source)
|
||||
ifneq (,$(findstring snapshot,$(SOURCE_NAME)))
|
||||
BRANCH_NAME=snapshot
|
||||
@ -63,16 +83,6 @@ include /usr/share/dpkg/architecture.mk
|
||||
|
||||
CONFIGURE_EXTRA =
|
||||
|
||||
# dpkg-buildflags support
|
||||
# disable fixfilepath in favor of the llvm-project supplied flavor, disable lto
|
||||
# remove +time64,+lfs once the time64_t transition starts
|
||||
export DEB_BUILD_MAINT_OPTIONS = reproducible=-fixfilepath,-fixdebugpath optimize=-lto
|
||||
|
||||
ifeq ($(DEB_BUILD_ARCH_BITS),64)
|
||||
export DEB_BUILD_MAINT_OPTIONS += abi=+time64,+lfs
|
||||
endif
|
||||
|
||||
|
||||
# these are handled on a per stage / build basis
|
||||
ifeq ($(VENDOR)-$(DEB_HOST_ARCH),Ubuntu-ppc64el)
|
||||
export DEB_CFLAGS_MAINT_STRIP = -g -O3
|
||||
@ -1136,7 +1146,7 @@ override_dh_auto_install:
|
||||
ifeq (,$(filter $(DEB_HOST_ARCH), powerpc powerpcspe))
|
||||
ifneq (,$(filter $(DEB_HOST_ARCH_OS),linux))
|
||||
# To fix custom-library-search-path
|
||||
chrpath -d $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)*/lib/linux/*.so
|
||||
chrpath -d $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)*/lib/linux/*.so || true
|
||||
endif
|
||||
endif
|
||||
|
||||
@ -1398,7 +1408,7 @@ else
|
||||
rm -rf $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/polly/*.cmake
|
||||
endif
|
||||
endif
|
||||
dh_install --fail-missing
|
||||
dh_install --fail-missing ${skip_packages}
|
||||
# Move the libc++ abi files from libc++ to libc++-abi for the wasm32 packages
|
||||
# These packages are arch: all, so only do so when the packages are built
|
||||
ifneq (,$(filter libc++-$(LLVM_VERSION)-dev-wasm32, $(packages)))
|
||||
@ -1526,8 +1536,11 @@ override_dh_auto_test:
|
||||
endif
|
||||
|
||||
|
||||
override_dh_builddeb:
|
||||
dh_builddeb ${skip_packages}
|
||||
|
||||
override_dh_gencontrol: stamps/sccache-stats
|
||||
dh_gencontrol -- $(control_vars)
|
||||
dh_gencontrol ${skip_packages} -- $(control_vars)
|
||||
|
||||
|
||||
override_dh_auto_clean:
|
||||
|
Loading…
Reference in New Issue
Block a user