Signed-off-by: Philipp Zabel <[email protected]>
---
 rules/cross-llvm.make |  7 ++++++-
 rules/host-llvm.make  | 42 +++++++++++++++++++++++++++++++++---------
 rules/llvm.make       | 25 ++++++++++++++++++++-----
 3 files changed, 59 insertions(+), 15 deletions(-)

diff --git a/rules/cross-llvm.make b/rules/cross-llvm.make
index 84224c822107..5c6d47a7578d 100644
--- a/rules/cross-llvm.make
+++ b/rules/cross-llvm.make
@@ -20,7 +20,12 @@ CROSS_LLVM_CMAKE_URL          = $(LLVM_CMAKE_URL)
 CROSS_LLVM_CMAKE_SOURCE                 = $(LLVM_CMAKE_SOURCE)
 CROSS_LLVM_CMAKE_DIR            = $(CROSS_BUILDDIR)/$(CROSS_LLVM)/cmake
 
-CROSS_LLVM_PARTS               += CROSS_LLVM_CMAKE
+CROSS_LLVM_THIRD_PARTY_MD5      = $(LLVM_THIRD_PARTY_MD5)
+CROSS_LLVM_THIRD_PARTY_URL      = $(LLVM_THIRD_PARTY_URL)
+CROSS_LLVM_THIRD_PARTY_SOURCE   = $(LLVM_THIRD_PARTY_SOURCE)
+CROSS_LLVM_THIRD_PARTY_DIR      = $(CROSS_BUILDDIR)/$(CROSS_LLVM)/third-party
+
+CROSS_LLVM_PARTS               += CROSS_LLVM_CMAKE CROSS_LLVM_THIRD_PARTY
 
 # ----------------------------------------------------------------------------
 # Prepare
diff --git a/rules/host-llvm.make b/rules/host-llvm.make
index 290d131faae7..8d0378f6bb75 100644
--- a/rules/host-llvm.make
+++ b/rules/host-llvm.make
@@ -20,7 +20,12 @@ HOST_LLVM_CMAKE_URL           = $(LLVM_CMAKE_URL)
 HOST_LLVM_CMAKE_SOURCE          = $(LLVM_CMAKE_SOURCE)
 HOST_LLVM_CMAKE_DIR             = $(HOST_BUILDDIR)/$(HOST_LLVM)/cmake
 
-HOST_LLVM_PARTS                        += HOST_LLVM_CMAKE
+HOST_LLVM_THIRD_PARTY_MD5       = $(LLVM_THIRD_PARTY_MD5)
+HOST_LLVM_THIRD_PARTY_URL       = $(LLVM_THIRD_PARTY_URL)
+HOST_LLVM_THIRD_PARTY_SOURCE    = $(LLVM_THIRD_PARTY_SOURCE)
+HOST_LLVM_THIRD_PARTY_DIR       = $(HOST_BUILDDIR)/$(HOST_LLVM)/third-party
+
+HOST_LLVM_PARTS                        += HOST_LLVM_CMAKE HOST_LLVM_THIRD_PARTY
 
 # ----------------------------------------------------------------------------
 # Prepare
@@ -35,7 +40,15 @@ HOST_LLVM_CONF_OPT   := \
        -DCMAKE_BUILD_TYPE=Release \
        -DCMAKE_INSTALL_PREFIX=/usr \
        -G Ninja \
+       -DBUILD_SHARED_LIBS=OFF \
        -DLIBC_GPU_BUILD=OFF \
+       -DLLVM_ABI_BREAKING_CHECKS=WITH_ASSERTS \
+       -DLLVM_ADDITIONAL_BUILD_TYPES=OFF \
+       -DLLVM_ALLOW_PROBLEMATIC_CONFIGURATIONS=OFF \
+       -DLLVM_APPEND_VC_REV=ON \
+       -DLLVM_AS= \
+       -DLLVM_BINUTILS_INCDIR= \
+       -DLLVM_BUILD_32_BITS=OFF \
        -DLLVM_BUILD_BENCHMARKS=OFF \
        -DLLVM_BUILD_DOCS=OFF \
        -DLLVM_BUILD_EXAMPLES=OFF \
@@ -44,7 +57,6 @@ HOST_LLVM_CONF_OPT    := \
        -DLLVM_BUILD_LLVM_DYLIB=ON \
        -DLLVM_BUILD_RUNTIME=OFF \
        -DLLVM_BUILD_RUNTIMES=OFF \
-       -DLLVM_BUILD_TELEMETRY=OFF \
        -DLLVM_BUILD_TESTS=OFF \
        -DLLVM_BUILD_TOOLS=ON \
        -DLLVM_BUILD_UTILS=OFF \
@@ -64,9 +76,13 @@ HOST_LLVM_CONF_OPT   := \
        -DLLVM_ENABLE_DUMP=OFF \
        -DLLVM_ENABLE_EH=OFF \
        -DLLVM_ENABLE_EXPENSIVE_CHECKS=OFF \
+       -DLLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES=ON \
+       -DLLVM_ENABLE_FATLTO=OFF \
        -DLLVM_ENABLE_FFI=OFF \
        -DLLVM_ENABLE_GISEL_COV=OFF \
        -DLLVM_ENABLE_HTTPLIB=OFF \
+       -DLLVM_ENABLE_ICONV=OFF \
+       -DLLVM_ENABLE_ICU=OFF \
        -DLLVM_ENABLE_IDE=OFF \
        -DLLVM_ENABLE_LIBCXX=OFF \
        -DLLVM_ENABLE_LIBEDIT=OFF \
@@ -84,11 +100,12 @@ HOST_LLVM_CONF_OPT := \
        -DLLVM_ENABLE_PIC=ON \
        -DLLVM_ENABLE_PLUGINS=ON \
        -DLLVM_ENABLE_PROJECTS=\
+       -DLLVM_ENABLE_RPMALLOC= \
        -DLLVM_ENABLE_RTTI=ON \
        -DLLVM_ENABLE_RUNTIMES= \
        -DLLVM_ENABLE_SPHINX=OFF \
        -DLLVM_ENABLE_STRICT_FIXED_SIZE_VECTORS=OFF \
-       -DLLVM_ENABLE_TERMINFO=OFF \
+       -DLLVM_ENABLE_TELEMETRY=OFF \
        -DLLVM_ENABLE_THREADS=ON \
        -DLLVM_ENABLE_UNWIND_TABLES=ON \
        -DLLVM_ENABLE_WARNINGS=ON \
@@ -96,11 +113,15 @@ HOST_LLVM_CONF_OPT := \
        -DLLVM_ENABLE_Z3_SOLVER=OFF \
        -DLLVM_ENABLE_ZLIB=ON \
        -DLLVM_ENABLE_ZSTD=OFF \
+       -DLLVM_EXPERIMENTAL_KEY_INSTRUCTIONS=ON \
        -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD= \
        -DLLVM_EXPORT_SYMBOLS_FOR_PLUGINS=OFF \
        -DLLVM_EXTERNALIZE_DEBUGINFO=OFF \
        -DLLVM_FORCE_ENABLE_STATS=OFF \
        -DLLVM_FORCE_USE_OLD_TOOLCHAIN=OFF \
+       -DLLVM_FORCE_VC_REPOSITORY= \
+       -DLLVM_FORCE_VC_REVISION= \
+       -DLLVM_HAS_LOGF128=OFF \
        -DLLVM_HAVE_TFLITE= \
        -DLLVM_INCLUDE_BENCHMARKS=OFF \
        -DLLVM_INCLUDE_DOCS=OFF \
@@ -109,6 +130,7 @@ HOST_LLVM_CONF_OPT  := \
        -DLLVM_INCLUDE_TESTS=OFF \
        -DLLVM_INCLUDE_TOOLS=ON \
        -DLLVM_INCLUDE_UTILS=OFF \
+       -DLLVM_INDIVIDUAL_TEST_COVERAGE=OFF \
        -DLLVM_INSTALL_BINUTILS_SYMLINKS=OFF \
        -DLLVM_INSTALL_CCTOOLS_SYMLINKS=OFF \
        -DLLVM_INSTALL_GTEST=OFF \
@@ -118,14 +140,19 @@ HOST_LLVM_CONF_OPT        := \
        -DLLVM_INTEGRATED_CRT_ALLOC= \
        -DLLVM_LIBDIR_SUFFIX= \
        -DLLVM_LIB_FUZZING_ENGINE= \
+       -DLLVM_LINK= \
        -DLLVM_LINK_LLVM_DYLIB=ON \
+       -DLLVM_LIT_ARGS=-sv \
        -DLLVM_LOCAL_RPATH= \
+       -DLLVM_NM= \
        -DLLVM_OMIT_DAGISEL_COMMENTS=ON \
        -DLLVM_OPTIMIZED_TABLEGEN=OFF \
        -DLLVM_OPTIMIZE_SANITIZED_BUILDS=ON \
        -DLLVM_PARALLEL_COMPILE_JOBS= \
        -DLLVM_PARALLEL_LINK_JOBS= \
+       -DLLVM_PARALLEL_TABLEGEN_JOBS= \
        -DLLVM_PROFDATA_FILE= \
+       -DLLVM_READOBJ= \
        -DLLVM_SOURCE_PREFIX= \
        -DLLVM_STATIC_LINK_CXX_STDLIB=OFF \
        -DLLVM_TARGETS_TO_BUILD= \
@@ -133,19 +160,15 @@ HOST_LLVM_CONF_OPT        := \
        -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=OFF \
        -DLLVM_TOOL_BOLT_BUILD=OFF \
        -DLLVM_TOOL_CLANG_BUILD=OFF \
-       -DLLVM_TOOL_COMPILER_RT_BUILD=OFF \
        -DLLVM_TOOL_DRAGONEGG_BUILD=OFF \
        -DLLVM_TOOL_FLANG_BUILD=OFF \
-       -DLLVM_TOOL_LIBCXXABI_BUILD=OFF \
-       -DLLVM_TOOL_LIBCXX_BUILD=OFF \
-       -DLLVM_TOOL_LIBC_BUILD=OFF \
-       -DLLVM_TOOL_LIBUNWIND_BUILD=OFF \
+       -DLLVM_TOOL_LIBCLC_BUILD=OFF \
        -DLLVM_TOOL_LLDB_BUILD=OFF \
        -DLLVM_TOOL_LLD_BUILD=OFF \
        -DLLVM_TOOL_MLIR_BUILD=OFF \
        -DLLVM_TOOL_OPENMP_BUILD=OFF \
        -DLLVM_TOOL_POLLY_BUILD=OFF \
-       -DLLVM_TOOL_PSTL_BUILD=OFF \
+       -DLLVM_UNITTEST_LINK_FLAGS= \
        -DLLVM_UNREACHABLE_OPTIMIZE=ON \
        -DLLVM_USE_FOLDERS=ON \
        -DLLVM_USE_INTEL_JITEVENTS=OFF \
@@ -157,6 +180,7 @@ HOST_LLVM_CONF_OPT  := \
        -DLLVM_USE_SPLIT_DWARF=OFF \
        -DLLVM_USE_STATIC_ZSTD=FALSE \
        -DLLVM_USE_SYMLINKS=ON \
+       -DLLVM_VERSION_PRINTER_SHOW_BUILD_CONFIG=ON \
        -DLLVM_VERSION_PRINTER_SHOW_HOST_TARGET_INFO=ON \
        -DLLVM_WINDOWS_PREFER_FORWARD_SLASH=OFF \
        -DPY_PYGMENTS_FOUND=OFF \
diff --git a/rules/llvm.make b/rules/llvm.make
index f76c22234e2b..2a61bb7ddf74 100644
--- a/rules/llvm.make
+++ b/rules/llvm.make
@@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_LLVM) += llvm
 #
 # Paths and names
 #
-LLVM_VERSION           := 20.1.2
-LLVM_MD5               := 965dac265bf6c97b630d310b5f76c269
+LLVM_VERSION           := 21.1.1
+LLVM_MD5               := a23122a1406c3095bb9ab10a245fed0f
 LLVM                   := llvm-$(LLVM_VERSION)
 LLVM_SUFFIX            := src.tar.xz
 LLVM_URL               := \
@@ -27,13 +27,19 @@ LLVM_STRIP_LEVEL    := 0
 LLVM_LICENSE           := Apache-2.0 WITH LLVM-exception AND NCSA
 LLVM_LICENSE_FILES     := 
file://$(LLVM_SUBDIR)/LICENSE.TXT;md5=8a15a0759ef07f2682d2ba4b893c9afe
 
-LLVM_CMAKE_MD5         := a56549b987f3c4b51ee7c7cb21d26f32
+LLVM_CMAKE_MD5         := 5f6dcdc09b33b098c29eb3095171af9c
 LLVM_CMAKE_URL         := \
        
https://github.com/llvm/llvm-project/releases/download/llvmorg-$(LLVM_VERSION)/cmake-$(LLVM_VERSION).$(LLVM_SUFFIX)
 LLVM_CMAKE_SOURCE      := $(SRCDIR)/cmake-$(LLVM_VERSION).$(LLVM_SUFFIX)
 LLVM_CMAKE_DIR         := $(BUILDDIR)/$(LLVM)/cmake
 
-LLVM_PARTS             += LLVM_CMAKE
+LLVM_THIRD_PARTY_MD5   := c7abf8d634ed94c982d1ddc51d95a97d
+LLVM_THIRD_PARTY_URL   := \
+       
https://github.com/llvm/llvm-project/releases/download/llvmorg-$(LLVM_VERSION)/third-party-$(LLVM_VERSION).$(LLVM_SUFFIX)
+LLVM_THIRD_PARTY_SOURCE        := 
$(SRCDIR)/llvm-third-party-$(LLVM_VERSION).$(LLVM_SUFFIX)
+LLVM_THIRD_PARTY_DIR   := $(BUILDDIR)/$(LLVM)/third-party
+
+LLVM_PARTS             += LLVM_CMAKE LLVM_THIRD_PARTY
 
 # ----------------------------------------------------------------------------
 # Prepare
@@ -83,6 +89,7 @@ define LLVM_SHARED_CONF_OPT
        -DLLVM_ADDITIONAL_BUILD_TYPES=OFF \
        -DLLVM_ALLOW_PROBLEMATIC_CONFIGURATIONS=OFF \
        -DLLVM_APPEND_VC_REV=ON \
+       -DLLVM_AS= \
        -DLLVM_BINUTILS_INCDIR= \
        -DLLVM_BUILD_32_BITS=OFF \
        -DLLVM_BUILD_BENCHMARKS=OFF \
@@ -93,7 +100,6 @@ define LLVM_SHARED_CONF_OPT
        -DLLVM_BUILD_LLVM_DYLIB=ON \
        -DLLVM_BUILD_RUNTIME=ON \
        -DLLVM_BUILD_RUNTIMES=ON \
-       -DLLVM_BUILD_TELEMETRY=OFF \
        -DLLVM_BUILD_TESTS=OFF \
        -DLLVM_BUILD_TOOLS=$(1) \
        -DLLVM_BUILD_UTILS=OFF \
@@ -118,6 +124,8 @@ define LLVM_SHARED_CONF_OPT
        -DLLVM_ENABLE_FFI=OFF \
        -DLLVM_ENABLE_GISEL_COV=OFF \
        -DLLVM_ENABLE_HTTPLIB=OFF \
+       -DLLVM_ENABLE_ICONV=OFF \
+       -DLLVM_ENABLE_ICU=OFF \
        -DLLVM_ENABLE_IDE=OFF \
        -DLLVM_ENABLE_LIBCXX=OFF \
        -DLLVM_ENABLE_LIBEDIT=OFF \
@@ -140,6 +148,7 @@ define LLVM_SHARED_CONF_OPT
        -DLLVM_ENABLE_RUNTIMES= \
        -DLLVM_ENABLE_SPHINX=OFF \
        -DLLVM_ENABLE_STRICT_FIXED_SIZE_VECTORS=OFF \
+       -DLLVM_ENABLE_TELEMETRY=OFF \
        -DLLVM_ENABLE_THREADS=ON \
        -DLLVM_ENABLE_UNWIND_TABLES=ON \
        -DLLVM_ENABLE_WARNINGS=ON \
@@ -147,11 +156,14 @@ define LLVM_SHARED_CONF_OPT
        -DLLVM_ENABLE_Z3_SOLVER=OFF \
        -DLLVM_ENABLE_ZLIB=ON \
        -DLLVM_ENABLE_ZSTD=OFF \
+       -DLLVM_EXPERIMENTAL_KEY_INSTRUCTIONS=ON \
        -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD= \
        -DLLVM_EXPORT_SYMBOLS_FOR_PLUGINS=OFF \
        -DLLVM_EXTERNALIZE_DEBUGINFO=OFF \
        -DLLVM_FORCE_ENABLE_STATS=OFF \
        -DLLVM_FORCE_USE_OLD_TOOLCHAIN=OFF \
+       -DLLVM_FORCE_VC_REPOSITORY= \
+       -DLLVM_FORCE_VC_REVISION= \
        -DLLVM_HAS_LOGF128=OFF \
        -DLLVM_HAVE_TFLITE= \
        -DLLVM_INCLUDE_BENCHMARKS=OFF \
@@ -171,6 +183,7 @@ define LLVM_SHARED_CONF_OPT
        -DLLVM_INTEGRATED_CRT_ALLOC= \
        -DLLVM_LIBDIR_SUFFIX= \
        -DLLVM_LIB_FUZZING_ENGINE= \
+       -DLLVM_LINK= \
        -DLLVM_LINK_LLVM_DYLIB=ON \
        -DLLVM_LIT_ARGS=-sv \
        -DLLVM_LOCAL_RPATH= \
@@ -194,6 +207,7 @@ define LLVM_SHARED_CONF_OPT
        -DLLVM_TOOL_COMPILER_RT_BUILD=OFF \
        -DLLVM_TOOL_DRAGONEGG_BUILD=OFF \
        -DLLVM_TOOL_FLANG_BUILD=OFF \
+       -DLLVM_TOOL_FLANG_RT_BUILD=OFF \
        -DLLVM_TOOL_LIBCLC_BUILD=OFF \
        -DLLVM_TOOL_LIBCXXABI_BUILD=OFF \
        -DLLVM_TOOL_LIBCXX_BUILD=OFF \
@@ -205,6 +219,7 @@ define LLVM_SHARED_CONF_OPT
        -DLLVM_TOOL_OPENMP_BUILD=OFF \
        -DLLVM_TOOL_POLLY_BUILD=OFF \
        -DLLVM_TOOL_PSTL_BUILD=OFF \
+       -DLLVM_UNITTEST_LINK_FLAGS= \
        -DLLVM_UNREACHABLE_OPTIMIZE=ON \
        -DLLVM_USE_FOLDERS=ON \
        -DLLVM_USE_INTEL_JITEVENTS=OFF \
-- 
2.47.3


Reply via email to