Subproject tarballs are not provided anymore: https://discourse.llvm.org/t/llvm-22-1-0-released/89950 "Please note since the last release the subproject tarballs have been removed" https://discourse.llvm.org/t/rfc-do-something-with-the-subproject-tarballs-in-the-release-page/75024/14 Used upstream tarball llvm-project-22.1.0.src.tar.xz for all packages and linked subproject hash files to ../llvm-project.hash. Removed patches which fix build errors caused by subproject tarballs. Removed handling of third-party-21.1.8.src.tar.xz which is included in the monolithic tarball. Added _SUBDIR variable or updated _INSTALL_CMDS when needed. For compiler-rt: Removed both patches, they are not needed anymore. Added patch to fix aarch64 build. Added dependency on gcc >= 15.x because libcxx now depends on gcc >= 15.x: https://github.com/llvm/llvm-project/pull/165684 warning "Libc++ only supports GCC 15 and later" Building with gcc 14.x causes many build errors like output/build/compiler-rt-22.1.0/compiler-rt/buildroot-build/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1/__type_traits/is_array.h:43:68: error: expected primary-expression before ')' token output/build/compiler-rt-22.1.0/compiler-rt/buildroot-build/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1/__type_traits/is_array.h:43:44: error: there are no arguments to '__is_unbounded_array' that depend on a template parameter, so a declaration of '__is_unbounded_array' must be available [-fpermissive] output/build/compiler-rt-22.1.0/compiler-rt/buildroot-build/lib/fuzzer/libcxx_fuzzer_x86_64/build/include/c++/v1/__type_traits/decay.h:22:32: error: expected type-specifier before '__decay' A corresponding bug report sent upstream https://github.com/llvm/llvm-project/issues/174203 was answered: https://github.com/llvm/llvm-project/issues/174203#issuecomment-3711113919 "Our policy is rather clear: Only the latest GCC is supported." and an update to supported compiler versions was committed: https://github.com/llvm/llvm-project/commit/d1146b1ddd03aea3d67ce8f413607e8e8be67f4b Updated TestClangCompilerRT to use a gcc 15-based toolchain. Signed-off-by: Bernd Kuhls <bernd@kuhls.net> Signed-off-by: Julien Olivain <ju.o@free.fr>
32 lines
1.0 KiB
Makefile
32 lines
1.0 KiB
Makefile
################################################################################
|
|
#
|
|
# lld
|
|
#
|
|
################################################################################
|
|
|
|
LLD_VERSION = $(LLVM_PROJECT_VERSION)
|
|
LLD_SITE = $(LLVM_PROJECT_SITE)
|
|
LLD_SOURCE = $(LLVM_PROJECT_SOURCE)
|
|
LLD_DL_SUBDIR = llvm-project
|
|
LLD_LICENSE = Apache-2.0 with exceptions
|
|
LLD_LICENSE_FILES = LICENSE.TXT
|
|
LLD_SUBDIR = lld
|
|
LLD_SUPPORTS_IN_SOURCE_BUILD = NO
|
|
HOST_LLD_DEPENDENCIES = host-llvm host-llvm-libunwind
|
|
|
|
# build as static libs as is done in llvm & clang
|
|
HOST_LLD_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF
|
|
|
|
HOST_LLD_CONF_OPTS += -DLLVM_COMMON_CMAKE_UTILS=$(HOST_DIR)/lib/cmake/llvm
|
|
|
|
# GCC looks for tools in a different path from LLD's default installation path
|
|
define HOST_LLD_CREATE_SYMLINKS
|
|
mkdir -p $(HOST_DIR)/$(GNU_TARGET_NAME)/bin
|
|
ln -sfr $(HOST_DIR)/bin/lld $(HOST_DIR)/$(GNU_TARGET_NAME)/bin/lld
|
|
ln -sfr $(HOST_DIR)/bin/lld $(HOST_DIR)/$(GNU_TARGET_NAME)/bin/ld.lld
|
|
endef
|
|
|
|
HOST_LLD_POST_INSTALL_HOOKS += HOST_LLD_CREATE_SYMLINKS
|
|
|
|
$(eval $(host-cmake-package))
|