From ca2a89c03e02292bfc6276bcf391cd60ae09059d Mon Sep 17 00:00:00 2001 From: Paul Guyot Date: Wed, 1 Jul 2026 06:36:09 +0200 Subject: [PATCH] llvm-devel: update to 20260701-4a11eb33 (LLVM 23) Bump the trunk snapshot to LLVM 23 (clang_exe_version 23) for emscripten 6.0.1, whose wasm-ld emits --no-stack-first that the LLVM 22 toolchain rejected. Switch github.tarball_from to archive and reset subport revisions. Also set -DLLVM_ENABLE_BINDINGS=OFF (matching llvm-19..22) so local builds with ocamlfind present stop installing unversioned META.llvm* files that conflict with other LLVM ports. See: https://trac.macports.org/ticket/59785 Signed-off-by: Paul Guyot --- lang/llvm-devel/Portfile | 24 +++++++++---------- ...n-t-embed-the-deployment-target-in-t.patch | 17 ++++++------- 2 files changed, 21 insertions(+), 20 deletions(-) diff --git a/lang/llvm-devel/Portfile b/lang/llvm-devel/Portfile index 1b1838b09fa..69286eaed04 100644 --- a/lang/llvm-devel/Portfile +++ b/lang/llvm-devel/Portfile @@ -25,20 +25,19 @@ PortGroup github 1.0 # BEFORE UPDATING to a new upstream commit: # Change github.tarball_from (see below) -set llvm-commit 408a2e7cee3f4bcdcbc4d3dbb13fea3ecd5788d4 -set date 20250908 -revision 2 +set llvm-commit 4a11eb33c70af70bbb5942bf644b6af64386970a +set date 20260701 +revision 0 set llvm_version devel -set clang_exe_version 22 +set clang_exe_version 23 github.setup llvm llvm-project ${llvm-commit} -# Change github.tarball_from to 'releases' or 'archive' next update -github.tarball_from tarball +github.tarball_from archive version ${date}-[string range ${llvm-commit} 0 7] default_variants-append +assertions -checksums rmd160 e1583512e285b4d0127351ba85500f3cc3bbd04c \ - sha256 1df234b4de8fd4b5a4ba277d80989718fc656a08e60e82d0137e306ad3e9a854 \ - size 247257333 +checksums rmd160 fd544309521247ad2f220d8d591830d0648022b0 \ + sha256 9bc06d321a95d1170631a95369a03178634c2f5043375e6392cf04fa3ea20d30 \ + size 276245914 # For release #set llvm_version 14 @@ -50,9 +49,9 @@ checksums rmd160 e1583512e285b4d0127351ba85500f3cc3bbd04c \ name llvm-${llvm_version} subport mlir-${llvm_version} { revision 0 } -subport clang-${llvm_version} { revision 2 } +subport clang-${llvm_version} { revision 0 } subport lldb-${llvm_version} { revision 0 } -subport flang-${llvm_version} { revision 1 } +subport flang-${llvm_version} { revision 0 } dist_subdir llvm set suffix mp-${llvm_version} @@ -96,7 +95,8 @@ configure.args-append \ -DLLVM_INCLUDE_EXAMPLES=OFF \ -DLLVM_ENABLE_FFI=ON \ -DFFI_INCLUDE_DIR=${prefix}/include \ - -DFFI_LIBRARY_DIR=${prefix}/lib + -DFFI_LIBRARY_DIR=${prefix}/lib \ + -DLLVM_ENABLE_BINDINGS=OFF # Disable iOS support # To Be reviewed with later versions diff --git a/lang/llvm-devel/files/0002-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch b/lang/llvm-devel/files/0002-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch index ee76c08a13c..d23d9cb59cf 100644 --- a/lang/llvm-devel/files/0002-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch +++ b/lang/llvm-devel/files/0002-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch @@ -2,23 +2,24 @@ diff --git a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/llvm/lib/CodeGen/AsmPr index 2297b27ffdc0..35578040d951 100644 --- a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp -@@ -461,13 +461,15 @@ bool AsmPrinter::doInitialization(Module &M) { +@@ -549,13 +549,15 @@ bool AsmPrinter::doInitialization(Module &M) { // alternative is duplicated code in each of the target asm printers that // use the directive, where it would need the same conditionalization // anyway. -- const Triple &Target = TM.getTargetTriple(); - if (Target.isOSBinFormatMachO() && Target.isOSDarwin()) { - Triple TVT(M.getDarwinTargetVariantTriple()); - OutStreamer->emitVersionForTarget( -+ if (MAI->useIntegratedAssembler()) { -+ const Triple &Target = TM.getTargetTriple(); +- Target, M.getSDKVersion(), +- M.getDarwinTargetVariantTriple().empty() ? nullptr : &TVT, +- M.getDarwinTargetVariantSDKVersion()); ++ if (MAI.useIntegratedAssembler()) { + if (Target.isOSBinFormatMachO() && Target.isOSDarwin()) { + Triple TVT(M.getDarwinTargetVariantTriple()); + OutStreamer->emitVersionForTarget( - Target, M.getSDKVersion(), - M.getDarwinTargetVariantTriple().empty() ? nullptr : &TVT, - M.getDarwinTargetVariantSDKVersion()); ++ Target, M.getSDKVersion(), ++ M.getDarwinTargetVariantTriple().empty() ? nullptr : &TVT, ++ M.getDarwinTargetVariantSDKVersion()); + } } - + // Allow the target to emit any magic that it wants at the start of the file.