public inbox for buildroot@busybox.net
 help / color / mirror / Atom feed
From: Bernd Kuhls <bernd@kuhls.net>
To: buildroot@buildroot.org
Cc: Daniel Lang <dalang@gmx.at>,
	Joseph Kogut <joseph.kogut@gmail.com>,
	Romain Naour <romain.naour@gmail.com>,
	Valentin Korenblit <valentinkorenblit@gmail.com>
Subject: [Buildroot] [PATCH v2 3/3] package/llvm-project: bump version to 22.1.0
Date: Thu,  5 Mar 2026 20:50:02 +0100	[thread overview]
Message-ID: <20260305195003.147773-3-bernd@kuhls.net> (raw)
In-Reply-To: <20260305195003.147773-1-bernd@kuhls.net>

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.

Rebased compiler-rt/0001-include-cstdint.patch.

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.

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
v2: swutch tarball DL_DIR to llvm-project/ and re-used it for the
    subprojects

 package/llvm-project/clang/clang.hash         |  4 +-
 package/llvm-project/clang/clang.mk           |  8 +--
 .../compiler-rt/0001-include-cstdint.patch    | 10 ++--
 ...LLVM_THIRD_PARTY_DIR-for-siphash-inc.patch | 32 ------------
 .../llvm-project/compiler-rt/compiler-rt.hash |  5 +-
 .../llvm-project/compiler-rt/compiler-rt.mk   | 14 ++----
 .../0001-support-out-of-tree-build.patch      | 32 ------------
 package/llvm-project/libclc/libclc.hash       |  4 +-
 package/llvm-project/libclc/libclc.mk         |  4 +-
 package/llvm-project/lld/lld.hash             |  4 +-
 package/llvm-project/lld/lld.mk               |  4 +-
 .../llvm-project/llvm-cmake/llvm-cmake.hash   |  3 +-
 package/llvm-project/llvm-cmake/llvm-cmake.mk |  5 +-
 .../llvm-libunwind/llvm-libunwind.hash        |  4 +-
 .../llvm-libunwind/llvm-libunwind.mk          |  4 +-
 package/llvm-project/llvm-project.hash        |  4 ++
 package/llvm-project/llvm-project.mk          |  5 +-
 .../llvm-runtimes/llvm-runtimes.hash          |  3 +-
 .../llvm-runtimes/llvm-runtimes.mk            |  5 +-
 .../0001-Fix-standalone-build-for-llvm.patch  | 49 -------------------
 package/llvm-project/llvm/llvm.hash           |  5 +-
 package/llvm-project/llvm/llvm.mk             | 17 ++-----
 22 files changed, 47 insertions(+), 178 deletions(-)
 mode change 100644 => 120000 package/llvm-project/clang/clang.hash
 delete mode 100644 package/llvm-project/compiler-rt/0002-compiler-rt-Use-LLVM_THIRD_PARTY_DIR-for-siphash-inc.patch
 mode change 100644 => 120000 package/llvm-project/compiler-rt/compiler-rt.hash
 delete mode 100644 package/llvm-project/libclc/0001-support-out-of-tree-build.patch
 mode change 100644 => 120000 package/llvm-project/libclc/libclc.hash
 mode change 100644 => 120000 package/llvm-project/lld/lld.hash
 mode change 100644 => 120000 package/llvm-project/llvm-cmake/llvm-cmake.hash
 mode change 100644 => 120000 package/llvm-project/llvm-libunwind/llvm-libunwind.hash
 create mode 100644 package/llvm-project/llvm-project.hash
 mode change 100644 => 120000 package/llvm-project/llvm-runtimes/llvm-runtimes.hash
 delete mode 100644 package/llvm-project/llvm/0001-Fix-standalone-build-for-llvm.patch
 mode change 100644 => 120000 package/llvm-project/llvm/llvm.hash

diff --git a/package/llvm-project/clang/clang.hash b/package/llvm-project/clang/clang.hash
deleted file mode 100644
index 1abe819e62..0000000000
--- a/package/llvm-project/clang/clang.hash
+++ /dev/null
@@ -1,3 +0,0 @@
-# locally calculated
-sha256  6090e3f23720d003cdd84483a47d0eec6d01adbb5e0c714ac0c8b58de546aa62  clang-21.1.8.src.tar.xz
-sha256  ebcd9bbf783a73d05c53ba4d586b8d5813dcdf3bbec50265860ccc885e606f47  LICENSE.TXT
diff --git a/package/llvm-project/clang/clang.hash b/package/llvm-project/clang/clang.hash
new file mode 120000
index 0000000000..c7905bcb53
--- /dev/null
+++ b/package/llvm-project/clang/clang.hash
@@ -0,0 +1 @@
+../llvm-project.hash
\ No newline at end of file
diff --git a/package/llvm-project/clang/clang.mk b/package/llvm-project/clang/clang.mk
index 3e41cb3b13..116389449b 100644
--- a/package/llvm-project/clang/clang.mk
+++ b/package/llvm-project/clang/clang.mk
@@ -7,10 +7,12 @@
 CLANG_VERSION_MAJOR = $(LLVM_PROJECT_VERSION_MAJOR)
 CLANG_VERSION = $(LLVM_PROJECT_VERSION)
 CLANG_SITE = $(LLVM_PROJECT_SITE)
-CLANG_SOURCE = clang-$(CLANG_VERSION).src.tar.xz
+CLANG_SOURCE = $(LLVM_PROJECT_SOURCE)
+CLANG_DL_SUBDIR = llvm-project
 CLANG_LICENSE = Apache-2.0 with exceptions
 CLANG_LICENSE_FILES = LICENSE.TXT
 CLANG_CPE_ID_VENDOR = llvm
+CLANG_SUBDIR = clang
 CLANG_SUPPORTS_IN_SOURCE_BUILD = NO
 CLANG_INSTALL_STAGING = YES
 
@@ -142,11 +144,11 @@ define HOST_CLANG_TOOLCHAIN_WRAPPER_BUILD
 	$(HOSTCC) $(HOST_CFLAGS) $(TOOLCHAIN_WRAPPER_ARGS) \
 		-s -Wl,--hash-style=$(TOOLCHAIN_WRAPPER_HASH_STYLE) \
 		toolchain/toolchain-wrapper.c \
-		-o $(@D)/toolchain-wrapper-clang
+		-o $(@D)/clang/toolchain-wrapper-clang
 endef
 
 define HOST_CLANG_TOOLCHAIN_WRAPPER_INSTALL
-	$(INSTALL) -D -m 0755 $(@D)/toolchain-wrapper-clang \
+	$(INSTALL) -D -m 0755 $(@D)/clang/toolchain-wrapper-clang \
 		$(HOST_DIR)/bin/toolchain-wrapper-clang
 endef
 
diff --git a/package/llvm-project/compiler-rt/0001-include-cstdint.patch b/package/llvm-project/compiler-rt/0001-include-cstdint.patch
index ce75b29f4e..7119aba54f 100644
--- a/package/llvm-project/compiler-rt/0001-include-cstdint.patch
+++ b/package/llvm-project/compiler-rt/0001-include-cstdint.patch
@@ -11,14 +11,16 @@ Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
 Signed-off-by: Michał Górny <mgorny@gentoo.org>
 Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
 Upstream: https://bugs.gentoo.org/939498
+[Bernd: rebased for 22.1.0]
+Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
 ---
- lib/orc/error.h | 1 +
+ compiler-rt/lib/orc/error.h | 1 +
  1 file changed, 1 insertion(+)
 
-diff --git a/lib/orc/error.h b/lib/orc/error.h
+diff --git a/compiler-rt/lib/orc/error.h b/compiler-rt/lib/orc/error.h
 index 92ac5a884ac6..33a599f71149 100644
---- a/lib/orc/error.h
-+++ b/lib/orc/error.h
+--- a/compiler-rt/lib/orc/error.h
++++ b/compiler-rt/lib/orc/error.h
 @@ -14,6 +14,7 @@
  #include "stl_extras.h"
  
diff --git a/package/llvm-project/compiler-rt/0002-compiler-rt-Use-LLVM_THIRD_PARTY_DIR-for-siphash-inc.patch b/package/llvm-project/compiler-rt/0002-compiler-rt-Use-LLVM_THIRD_PARTY_DIR-for-siphash-inc.patch
deleted file mode 100644
index 2aa2d2c583..0000000000
--- a/package/llvm-project/compiler-rt/0002-compiler-rt-Use-LLVM_THIRD_PARTY_DIR-for-siphash-inc.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 8fb17d03f8f7cec84dc8d6baebd479c4c34ba74b Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd@kuhls.net>
-Date: Sun, 2 Nov 2025 21:18:24 +0100
-Subject: [PATCH] compiler-rt: Use LLVM_THIRD_PARTY_DIR for siphash include
-
-Introduced by https://github.com/llvm/llvm-project/commit/7f3afab9181d83f92771293ad3b6c00ac62800fd
-but currently unused in compiler-rt leading to build errors with
-COMPILER_RT_STANDALONE_BUILD=ON
-
-Upstream: https://github.com/llvm/llvm-project/pull/166097
-
-Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
----
- lib/builtins/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt
-index 6c226aa7d2d4..7eb5ef487d31 100644
---- a/lib/builtins/CMakeLists.txt
-+++ b/lib/builtins/CMakeLists.txt
-@@ -64,7 +64,7 @@ include(CMakePushCheckState)
- option(COMPILER_RT_BUILTINS_HIDE_SYMBOLS
-   "Do not export any symbols from the static library." ON)
- 
--include_directories(../../../third-party/siphash/include)
-+include_directories(${LLVM_THIRD_PARTY_DIR}/siphash/include)
- 
- # TODO: Need to add a mechanism for logging errors when builtin source files are
- # added to a sub-directory and not this CMakeLists file.
--- 
-2.47.3
-
diff --git a/package/llvm-project/compiler-rt/compiler-rt.hash b/package/llvm-project/compiler-rt/compiler-rt.hash
deleted file mode 100644
index 0ecea6d400..0000000000
--- a/package/llvm-project/compiler-rt/compiler-rt.hash
+++ /dev/null
@@ -1,4 +0,0 @@
-# Locally computed:
-sha256  dd54ae21aee1780fac59445b51ebff601ad016b31ac3a7de3b21126fd3ccb229  compiler-rt-21.1.8.src.tar.xz
-sha256  7fe99424384aea529ffaeec9cc9dfb8b451fd1852c03fc109e426fe208a1f1a7  third-party-21.1.8.src.tar.xz
-sha256  1a8f1058753f1ba890de984e48f0242a3a5c29a6a8f2ed9fd813f36985387e8d  LICENSE.TXT
diff --git a/package/llvm-project/compiler-rt/compiler-rt.hash b/package/llvm-project/compiler-rt/compiler-rt.hash
new file mode 120000
index 0000000000..c7905bcb53
--- /dev/null
+++ b/package/llvm-project/compiler-rt/compiler-rt.hash
@@ -0,0 +1 @@
+../llvm-project.hash
\ No newline at end of file
diff --git a/package/llvm-project/compiler-rt/compiler-rt.mk b/package/llvm-project/compiler-rt/compiler-rt.mk
index 2571114253..7c8fdf7f40 100644
--- a/package/llvm-project/compiler-rt/compiler-rt.mk
+++ b/package/llvm-project/compiler-rt/compiler-rt.mk
@@ -5,32 +5,24 @@
 ################################################################################
 
 COMPILER_RT_VERSION = $(LLVM_PROJECT_VERSION)
-COMPILER_RT_SOURCE = compiler-rt-$(COMPILER_RT_VERSION).src.tar.xz
 COMPILER_RT_SITE = $(LLVM_PROJECT_SITE)
+COMPILER_RT_SOURCE = $(LLVM_PROJECT_SOURCE)
+COMPILER_RT_DL_SUBDIR = llvm-project
 COMPILER_RT_LICENSE = NCSA MIT
 COMPILER_RT_LICENSE_FILES = LICENSE.TXT
 COMPILER_RT_CPE_ID_VENDOR = llvm
 COMPILER_RT_DEPENDENCIES = host-clang libxcrypt llvm
+COMPILER_RT_SUBDIR = compiler-rt
 COMPILER_RT_SUPPORTS_IN_SOURCE_BUILD = NO
 
 COMPILER_RT_INSTALL_STAGING = YES
 COMPILER_RT_INSTALL_TARGET = NO
 
-COMPILER_RT_EXTRA_DOWNLOADS = third-party-$(COMPILER_RT_VERSION).src.tar.xz
-
-define COMPILER_RT_THIRD_PARTY_EXTRACT
-	$(call suitable-extractor,$(notdir $(COMPILER_RT_EXTRA_DOWNLOADS))) \
-		$(COMPILER_RT_DL_DIR)/$(notdir $(COMPILER_RT_EXTRA_DOWNLOADS)) | \
-		$(TAR) -C $(@D) $(TAR_OPTIONS) -
-endef
-COMPILER_RT_POST_EXTRACT_HOOKS += COMPILER_RT_THIRD_PARTY_EXTRACT
-
 COMPILER_RT_CONF_OPTS = \
 	-DCOMPILER_RT_STANDALONE_BUILD=ON \
 	-DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=$(GNU_TARGET_NAME) \
 	-DLLVM_CONFIG_PATH=$(HOST_DIR)/bin/llvm-config \
 	-DCMAKE_MODULE_PATH=$(HOST_DIR)/lib/cmake/llvm \
-	-DLLVM_THIRD_PARTY_DIR=$(@D)/third-party-$(COMPILER_RT_VERSION).src \
 	-DLLVM_COMMON_CMAKE_UTILS=$(HOST_DIR)/lib/cmake/llvm
 
 # The installation of the target runtime libraries defaults to DESTDIR, however
diff --git a/package/llvm-project/libclc/0001-support-out-of-tree-build.patch b/package/llvm-project/libclc/0001-support-out-of-tree-build.patch
deleted file mode 100644
index d2cde4de0a..0000000000
--- a/package/llvm-project/libclc/0001-support-out-of-tree-build.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From a435f3c9318935ba29b04dabe7342cd6160711e0 Mon Sep 17 00:00:00 2001
-From: El Mehdi YOUNES <elmehdi.younes@smile.fr>
-Date: Thu, 15 May 2025 10:02:12 +0200
-Subject: [PATCH] support out of tree build
-
-prepare_builtins tool is built
-but not placed in the path for later use in the build. This
-fix allows the later build steps to use the binary in-place.
-
-Upstream: Not submitted
-
-Signed-off-by: El Mehdi YOUNES <elmehdi.younes@smile.fr>
----
- libclc/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index d651a9bf506b..18bd7efe8217 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -180,7 +180,7 @@ set(LLVM_LINK_COMPONENTS
- )
- if( LIBCLC_STANDALONE_BUILD )
-   add_llvm_executable( prepare_builtins utils/prepare-builtins.cpp )
--  set( prepare_builtins_exe prepare_builtins )
-+  set( prepare_builtins_exe ./prepare_builtins )
-   set( prepare_builtins_target prepare_builtins )
- else()
-   add_llvm_utility( prepare_builtins utils/prepare-builtins.cpp )
--- 
-2.43.0
-
diff --git a/package/llvm-project/libclc/libclc.hash b/package/llvm-project/libclc/libclc.hash
deleted file mode 100644
index 8f06a55864..0000000000
--- a/package/llvm-project/libclc/libclc.hash
+++ /dev/null
@@ -1,3 +0,0 @@
-# locally calculated
-sha256  6c2677362a53531c35edf482bdc9171ea0471ca0a1e9138ac9b5a1782925616f  libclc-21.1.8.src.tar.xz
-sha256  3c536c052db9afd997809e38785c9f2a9e54e2892330fa7c5b438e18a7413479  LICENSE.TXT
diff --git a/package/llvm-project/libclc/libclc.hash b/package/llvm-project/libclc/libclc.hash
new file mode 120000
index 0000000000..c7905bcb53
--- /dev/null
+++ b/package/llvm-project/libclc/libclc.hash
@@ -0,0 +1 @@
+../llvm-project.hash
\ No newline at end of file
diff --git a/package/llvm-project/libclc/libclc.mk b/package/llvm-project/libclc/libclc.mk
index 399878bf0b..ff00871747 100644
--- a/package/llvm-project/libclc/libclc.mk
+++ b/package/llvm-project/libclc/libclc.mk
@@ -6,9 +6,11 @@
 
 LIBCLC_VERSION = $(LLVM_PROJECT_VERSION)
 LIBCLC_SITE = $(LLVM_PROJECT_SITE)
-LIBCLC_SOURCE = libclc-$(LIBCLC_VERSION).src.tar.xz
+LIBCLC_SOURCE = $(LLVM_PROJECT_SOURCE)
+LIBCLC_DL_SUBDIR = llvm-project
 LIBCLC_LICENSE = Apache-2.0 with exceptions or MIT
 LIBCLC_LICENSE_FILES = LICENSE.TXT
+LIBCLC_SUBDIR= libclc
 
 LIBCLC_DEPENDENCIES = host-clang host-llvm host-spirv-llvm-translator
 HOST_LIBCLC_DEPENDENCIES = host-clang host-llvm host-spirv-llvm-translator
diff --git a/package/llvm-project/lld/lld.hash b/package/llvm-project/lld/lld.hash
deleted file mode 100644
index b7483d5564..0000000000
--- a/package/llvm-project/lld/lld.hash
+++ /dev/null
@@ -1,3 +0,0 @@
-# locally calculated
-sha256  d9524c5ee952500a2af92c27042a0d90ab089962af47816d4c85d0ebf76373d1  lld-21.1.8.src.tar.xz
-sha256  f7891568956e34643eb6a0db1462db30820d40d7266e2a78063f2fe233ece5a0  LICENSE.TXT
diff --git a/package/llvm-project/lld/lld.hash b/package/llvm-project/lld/lld.hash
new file mode 120000
index 0000000000..c7905bcb53
--- /dev/null
+++ b/package/llvm-project/lld/lld.hash
@@ -0,0 +1 @@
+../llvm-project.hash
\ No newline at end of file
diff --git a/package/llvm-project/lld/lld.mk b/package/llvm-project/lld/lld.mk
index e7233e74ae..735cb8a7ed 100644
--- a/package/llvm-project/lld/lld.mk
+++ b/package/llvm-project/lld/lld.mk
@@ -6,9 +6,11 @@
 
 LLD_VERSION = $(LLVM_PROJECT_VERSION)
 LLD_SITE = $(LLVM_PROJECT_SITE)
-LLD_SOURCE = lld-$(LLD_VERSION).src.tar.xz
+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
 
diff --git a/package/llvm-project/llvm-cmake/llvm-cmake.hash b/package/llvm-project/llvm-cmake/llvm-cmake.hash
deleted file mode 100644
index c93a606c3c..0000000000
--- a/package/llvm-project/llvm-cmake/llvm-cmake.hash
+++ /dev/null
@@ -1,2 +0,0 @@
-# locally calculated
-sha256  85735f20fd8c81ecb0a09abb0c267018475420e93b65050cc5b7634eab744de9  cmake-21.1.8.src.tar.xz
diff --git a/package/llvm-project/llvm-cmake/llvm-cmake.hash b/package/llvm-project/llvm-cmake/llvm-cmake.hash
new file mode 120000
index 0000000000..c7905bcb53
--- /dev/null
+++ b/package/llvm-project/llvm-cmake/llvm-cmake.hash
@@ -0,0 +1 @@
+../llvm-project.hash
\ No newline at end of file
diff --git a/package/llvm-project/llvm-cmake/llvm-cmake.mk b/package/llvm-project/llvm-cmake/llvm-cmake.mk
index 26dc04dcd7..31b015c5c0 100644
--- a/package/llvm-project/llvm-cmake/llvm-cmake.mk
+++ b/package/llvm-project/llvm-cmake/llvm-cmake.mk
@@ -6,12 +6,13 @@
 
 LLVM_CMAKE_VERSION = $(LLVM_PROJECT_VERSION)
 LLVM_CMAKE_SITE = $(LLVM_PROJECT_SITE)
-LLVM_CMAKE_SOURCE = cmake-$(LLVM_CMAKE_VERSION).src.tar.xz
+LLVM_CMAKE_SOURCE = $(LLVM_PROJECT_SOURCE)
+LLVM_CMAKE_DL_SUBDIR = llvm-project
 LLVM_CMAKE_LICENSE = Apache-2.0 with exceptions
 
 define HOST_LLVM_CMAKE_INSTALL_CMDS
 	mkdir -p $(HOST_DIR)/lib/cmake/llvm/Modules
-	cp -Rv $(@D)/Modules/* $(HOST_DIR)/lib/cmake/llvm/Modules
+	cp -Rv $(@D)/cmake/Modules/* $(HOST_DIR)/lib/cmake/llvm/Modules
 	ln -sf $(HOST_DIR)/lib/cmake/llvm/Modules/* $(HOST_DIR)/lib/cmake/llvm/
 endef
 
diff --git a/package/llvm-project/llvm-libunwind/llvm-libunwind.hash b/package/llvm-project/llvm-libunwind/llvm-libunwind.hash
deleted file mode 100644
index bdd6b2481c..0000000000
--- a/package/llvm-project/llvm-libunwind/llvm-libunwind.hash
+++ /dev/null
@@ -1,3 +0,0 @@
-# locally computed
-sha256  03e8adc6c3bdde657dcaedc94886ea70d1f7d551d622fcd8a36a8300e5c36cbc  libunwind-21.1.8.src.tar.xz
-sha256  b5efebcaca80879234098e52d1725e6d9eb8fb96a19fce625d39184b705f7b6d  LICENSE.TXT
diff --git a/package/llvm-project/llvm-libunwind/llvm-libunwind.hash b/package/llvm-project/llvm-libunwind/llvm-libunwind.hash
new file mode 120000
index 0000000000..c7905bcb53
--- /dev/null
+++ b/package/llvm-project/llvm-libunwind/llvm-libunwind.hash
@@ -0,0 +1 @@
+../llvm-project.hash
\ No newline at end of file
diff --git a/package/llvm-project/llvm-libunwind/llvm-libunwind.mk b/package/llvm-project/llvm-libunwind/llvm-libunwind.mk
index e7b59a9dcf..31e0e75bfb 100644
--- a/package/llvm-project/llvm-libunwind/llvm-libunwind.mk
+++ b/package/llvm-project/llvm-libunwind/llvm-libunwind.mk
@@ -6,9 +6,11 @@
 
 LLVM_LIBUNWIND_VERSION = $(LLVM_PROJECT_VERSION)
 LLVM_LIBUNWIND_SITE = $(LLVM_PROJECT_SITE)
-LLVM_LIBUNWIND_SOURCE = libunwind-$(LLVM_LIBUNWIND_VERSION).src.tar.xz
+LLVM_LIBUNWIND_SOURCE = $(LLVM_PROJECT_SOURCE)
+LLVM_LIBUNWIND_DL_SUBDIR = llvm-project
 LLVM_LIBUNWIND_LICENSE = Apache-2.0 with exceptions
 LLVM_LIBUNWIND_LICENSE_FILES = LICENSE.TXT
+LLVM_LIBUNWIND_SUBDIR = libunwind
 LLVM_LIBUNWIND_SUPPORTS_IN_SOURCE_BUILD = NO
 
 HOST_LLVM_LIBUNWIND_DEPENDENCIES = host-llvm-cmake host-llvm-runtimes
diff --git a/package/llvm-project/llvm-project.hash b/package/llvm-project/llvm-project.hash
new file mode 100644
index 0000000000..99e5dc666a
--- /dev/null
+++ b/package/llvm-project/llvm-project.hash
@@ -0,0 +1,4 @@
+# From https://github.com/llvm/llvm-project/releases/tag/llvmorg-22.1.0
+sha256  25d2e2adc4356d758405dd885fcfd6447bce82a90eb78b6b87ce0934bd077173  llvm-project-22.1.0.src.tar.xz
+# locally calculated
+sha256  8d85c1057d742e597985c7d4e6320b015a9139385cff4cbae06ffc0ebe89afee  LICENSE.TXT
diff --git a/package/llvm-project/llvm-project.mk b/package/llvm-project/llvm-project.mk
index 411ef5fb3a..d9820d7d12 100644
--- a/package/llvm-project/llvm-project.mk
+++ b/package/llvm-project/llvm-project.mk
@@ -4,8 +4,9 @@
 #
 ################################################################################
 
-LLVM_PROJECT_VERSION_MAJOR = 21
-LLVM_PROJECT_VERSION = $(LLVM_PROJECT_VERSION_MAJOR).1.8
+LLVM_PROJECT_VERSION_MAJOR = 22
+LLVM_PROJECT_VERSION = $(LLVM_PROJECT_VERSION_MAJOR).1.0
 LLVM_PROJECT_SITE = https://github.com/llvm/llvm-project/releases/download/llvmorg-$(LLVM_PROJECT_VERSION)
+LLVM_PROJECT_SOURCE = llvm-project-$(LLVM_VERSION).src.tar.xz
 
 include $(sort $(wildcard package/llvm-project/*/*.mk))
diff --git a/package/llvm-project/llvm-runtimes/llvm-runtimes.hash b/package/llvm-project/llvm-runtimes/llvm-runtimes.hash
deleted file mode 100644
index 419176341a..0000000000
--- a/package/llvm-project/llvm-runtimes/llvm-runtimes.hash
+++ /dev/null
@@ -1,2 +0,0 @@
-# locally calculated
-sha256  b6989d35cdfc1acee4af1d110fb8887f76831eb93e1df6ff7365004048742db8  runtimes-21.1.8.src.tar.xz
diff --git a/package/llvm-project/llvm-runtimes/llvm-runtimes.hash b/package/llvm-project/llvm-runtimes/llvm-runtimes.hash
new file mode 120000
index 0000000000..c7905bcb53
--- /dev/null
+++ b/package/llvm-project/llvm-runtimes/llvm-runtimes.hash
@@ -0,0 +1 @@
+../llvm-project.hash
\ No newline at end of file
diff --git a/package/llvm-project/llvm-runtimes/llvm-runtimes.mk b/package/llvm-project/llvm-runtimes/llvm-runtimes.mk
index 1886ff3a14..653dc74c89 100644
--- a/package/llvm-project/llvm-runtimes/llvm-runtimes.mk
+++ b/package/llvm-project/llvm-runtimes/llvm-runtimes.mk
@@ -6,12 +6,13 @@
 
 LLVM_RUNTIMES_VERSION = $(LLVM_PROJECT_VERSION)
 LLVM_RUNTIMES_SITE = $(LLVM_PROJECT_SITE)
-LLVM_RUNTIMES_SOURCE = runtimes-$(LLVM_RUNTIMES_VERSION).src.tar.xz
+LLVM_RUNTIMES_SOURCE = $(LLVM_PROJECT_SOURCE)
+LLVM_RUNTIMES_DL_SUBDIR = llvm-project
 LLVM_RUNTIMES_LICENSE = Apache-2.0 with exceptions
 
 define HOST_LLVM_RUNTIMES_INSTALL_CMDS
 	mkdir -p $(HOST_DIR)/lib/cmake/llvm/Modules
-	cp -Rv $(@D)/cmake/Modules/* $(HOST_DIR)/lib/cmake/llvm
+	cp -Rv $(@D)/runtimes/cmake/Modules/* $(HOST_DIR)/lib/cmake/llvm
 endef
 
 $(eval $(host-generic-package))
diff --git a/package/llvm-project/llvm/0001-Fix-standalone-build-for-llvm.patch b/package/llvm-project/llvm/0001-Fix-standalone-build-for-llvm.patch
deleted file mode 100644
index cbb15599cb..0000000000
--- a/package/llvm-project/llvm/0001-Fix-standalone-build-for-llvm.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 255068deb7f3d18837ed30e739aa92c111ab450a Mon Sep 17 00:00:00 2001
-From: El Mehdi YOUNES <elmehdi.younes@smile.fr>
-Date: Sat, 10 May 2025 12:55:07 +0200
-Subject: [PATCH] Fix standalone build for llvm
-
-Upstream commit 9dd01a5241dc ("Harmonize cmake_policy() across standalone builds of all projects")
-moved the `cmake_policy()` settings from `llvm/CMakeLists.txt` into a shared
-`cmake/modules/CMakePolicy.cmake`, and included it from all relevant projects
-(Clang, LLD, LLDB, etc.) to harmonize standalone builds.
-
-However, in `llvm/CMakeLists.txt`, unlike other components, the line:
-    set(LLVM_COMMON_CMAKE_UTILS ...)
-was left **without** the usual:
-    if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS)
-
-This prevents external build systems (e.g., when using separate source archives)
-from overriding the `LLVM_COMMON_CMAKE_UTILS` variable, since the value is
-always reset unconditionally.
-
-This patch adds the missing `if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS)` guard,
-in the same way as it is already done in Clang, LLD, etc., to make
-`LLVM_COMMON_CMAKE_UTILS` properly overridable.
-
-Upstream: Not submitted
-
-Signed-off-by: El Mehdi YOUNES <elmehdi.younes@smile.fr>
----
- llvm/CMakeLists.txt | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index f5293e866324..d861233f299f 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -4,7 +4,10 @@ cmake_minimum_required(VERSION 3.20.0)
- 
- include(CMakeDependentOption)
- 
--set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake)
-+if(NOT DEFINED LLVM_COMMON_CMAKE_UTILS)
-+  set(LLVM_COMMON_CMAKE_UTILS ${CMAKE_CURRENT_SOURCE_DIR}/../cmake)
-+endif()
-+
- include(${LLVM_COMMON_CMAKE_UTILS}/Modules/CMakePolicy.cmake
-   NO_POLICY_SCOPE)
- 
--- 
-2.49.0
-
diff --git a/package/llvm-project/llvm/llvm.hash b/package/llvm-project/llvm/llvm.hash
deleted file mode 100644
index 2e08ef5977..0000000000
--- a/package/llvm-project/llvm/llvm.hash
+++ /dev/null
@@ -1,4 +0,0 @@
-# locally calculated
-sha256  d9022ddadb40a15015f6b27e6549a7144704ded8828ba036ffe4b8165707de21  llvm-21.1.8.src.tar.xz
-sha256  7fe99424384aea529ffaeec9cc9dfb8b451fd1852c03fc109e426fe208a1f1a7  third-party-21.1.8.src.tar.xz
-sha256  8d85c1057d742e597985c7d4e6320b015a9139385cff4cbae06ffc0ebe89afee  LICENSE.TXT
diff --git a/package/llvm-project/llvm/llvm.hash b/package/llvm-project/llvm/llvm.hash
new file mode 120000
index 0000000000..c7905bcb53
--- /dev/null
+++ b/package/llvm-project/llvm/llvm.hash
@@ -0,0 +1 @@
+../llvm-project.hash
\ No newline at end of file
diff --git a/package/llvm-project/llvm/llvm.mk b/package/llvm-project/llvm/llvm.mk
index 554e16169f..577128bb1e 100644
--- a/package/llvm-project/llvm/llvm.mk
+++ b/package/llvm-project/llvm/llvm.mk
@@ -6,26 +6,15 @@
 
 LLVM_VERSION = $(LLVM_PROJECT_VERSION)
 LLVM_SITE = $(LLVM_PROJECT_SITE)
-LLVM_SOURCE = llvm-$(LLVM_VERSION).src.tar.xz
+LLVM_SOURCE = $(LLVM_PROJECT_SOURCE)
+LLVM_DL_SUBDIR = llvm-project
 LLVM_LICENSE = Apache-2.0 with exceptions
 LLVM_LICENSE_FILES = LICENSE.TXT
 LLVM_CPE_ID_VENDOR = llvm
 LLVM_SUPPORTS_IN_SOURCE_BUILD = NO
+LLVM_SUBDIR = llvm
 LLVM_INSTALL_STAGING = YES
 
-HOST_LLVM_EXTRA_DOWNLOADS = third-party-$(LLVM_VERSION).src.tar.xz
-
-define HOST_LLVM_THIRD_PARTY_EXTRACT
-	$(call suitable-extractor,$(notdir $(HOST_LLVM_EXTRA_DOWNLOADS))) \
-		$(HOST_LLVM_DL_DIR)/$(notdir $(HOST_LLVM_EXTRA_DOWNLOADS)) | \
-		$(TAR) -C $(@D) $(TAR_OPTIONS) -
-endef
-HOST_LLVM_POST_EXTRACT_HOOKS += HOST_LLVM_THIRD_PARTY_EXTRACT
-LLVM_POST_EXTRACT_HOOKS += HOST_LLVM_THIRD_PARTY_EXTRACT
-
-HOST_LLVM_CONF_OPTS += -DLLVM_THIRD_PARTY_DIR=$(@D)/third-party-$(LLVM_PROJECT_VERSION).src
-LLVM_CONF_OPTS += -DLLVM_THIRD_PARTY_DIR=$(@D)/third-party-$(LLVM_PROJECT_VERSION).src
-
 HOST_LLVM_DEPENDENCIES = host-python3 host-llvm-cmake
 LLVM_DEPENDENCIES = host-llvm
 
-- 
2.47.3

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

  parent reply	other threads:[~2026-03-05 19:50 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-05 19:50 [Buildroot] [PATCH 1/3] package/spirv-{headers, tools}: bump to version 1.4.341.0 Bernd Kuhls
2026-03-05 19:50 ` [Buildroot] [PATCH 2/3] package/spirv-llvm-translator: bump version to 22.1.0 Bernd Kuhls
2026-03-05 19:50 ` Bernd Kuhls [this message]
2026-03-08 15:20   ` [Buildroot] [PATCH v2 3/3] package/llvm-project: " Julien Olivain via buildroot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260305195003.147773-3-bernd@kuhls.net \
    --to=bernd@kuhls.net \
    --cc=buildroot@buildroot.org \
    --cc=dalang@gmx.at \
    --cc=joseph.kogut@gmail.com \
    --cc=romain.naour@gmail.com \
    --cc=valentinkorenblit@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox