From 16f7694b943c0970971d941ebda3f16f177c09a6 Mon Sep 17 00:00:00 2001 From: Max Horn Date: Fri, 13 Feb 2026 22:56:33 +0100 Subject: [PATCH] [libjulia] Update 1.13 and 1.14 variants I am not aware of ABI changes in either, but it seems sensible to at least switch 1.13 to the beta, which should be close (hopefully identical) in terms of ABI to the final release. Switching this now should help ensure a smoother transition to the final release. --- L/libjulia/build_tarballs.jl | 2 +- ...rop-compile-database-makefile-target.patch | 58 ------------------- .../bf16-workaround.patch | 0 ...rop-compile-database-makefile-target.patch | 58 ------------------- L/libjulia/common.jl | 19 +++--- 5 files changed, 12 insertions(+), 125 deletions(-) delete mode 100644 L/libjulia/bundled/patches/1.13.0-DEV/Drop-compile-database-makefile-target.patch rename L/libjulia/bundled/patches/{1.13.0-DEV => 1.13.0-beta2}/bf16-workaround.patch (100%) delete mode 100644 L/libjulia/bundled/patches/1.14.0-DEV/Drop-compile-database-makefile-target.patch diff --git a/L/libjulia/build_tarballs.jl b/L/libjulia/build_tarballs.jl index 5b18312eca3..175045366a3 100644 --- a/L/libjulia/build_tarballs.jl +++ b/L/libjulia/build_tarballs.jl @@ -1,6 +1,6 @@ include("common.jl") -jllversion=v"1.11.0" +jllversion=v"1.11.1" for ver in julia_full_versions build_julia(ARGS, ver; jllversion) end diff --git a/L/libjulia/bundled/patches/1.13.0-DEV/Drop-compile-database-makefile-target.patch b/L/libjulia/bundled/patches/1.13.0-DEV/Drop-compile-database-makefile-target.patch deleted file mode 100644 index ad20eb0b155..00000000000 --- a/L/libjulia/bundled/patches/1.13.0-DEV/Drop-compile-database-makefile-target.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 01ddd6655495b6110a11513fa1a29f76ad895ecd Mon Sep 17 00:00:00 2001 -From: Max Horn -Date: Tue, 29 Oct 2025 15:02:00 +0100 -Subject: [PATCH] Drop compile-database.json target - -Remove the `compile-database.json` target from the `release` targets -due to build problems in Yggdrasil (see https://github.com/JuliaPackaging/Yggdrasil/pull/12406#issuecomment-3457169292). -https://github.com/JuliaLang/julia/pull/59980 tries to address this properly. ---- - src/Makefile | 2 +- - src/flisp/Makefile | 2 +- - src/support/Makefile | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/Makefile b/src/Makefile -index 18e9a4a639..f92cd73a10 100644 ---- a/src/Makefile -+++ b/src/Makefile -@@ -259,7 +259,7 @@ endif - default: $(JULIA_BUILD_MODE) # contains either "debug" or "release" - all: debug release - --release debug: %: libjulia-internal-% libjulia-codegen-% $(BUILDDIR)/compile_commands.json -+release debug: %: libjulia-internal-% libjulia-codegen-% - - $(BUILDDIR): - mkdir -p $(BUILDDIR) -diff --git a/src/flisp/Makefile b/src/flisp/Makefile -index 135859eacb..98b336fb14 100644 ---- a/src/flisp/Makefile -+++ b/src/flisp/Makefile -@@ -61,9 +61,9 @@ DEBUGFLAGS_COMMON += $(FLAGS_COMMON) - - default: release - --release: $(BUILDDIR)/$(EXENAME)$(EXE) $(BUILDDIR)/compile_commands.json -+release: $(BUILDDIR)/$(EXENAME)$(EXE) - --debug: $(BUILDDIR)/$(EXENAME)-debug$(EXE) $(BUILDDIR)/compile_commands.json -+debug: $(BUILDDIR)/$(EXENAME)-debug$(EXE) - - $(BUILDDIR): - mkdir -p $(BUILDDIR) -diff --git a/src/support/Makefile b/src/support/Makefile -index 2b48a20bbc..3c1dba17f8 100644 ---- a/src/support/Makefile -+++ b/src/support/Makefile -@@ -53,8 +53,8 @@ $(BUILDDIR)/host/Makefile: - @printf "%s\n" 'BUILDING_HOST_TOOLS=1' >> $@ - @printf "%s\n" 'include $(SRCDIR)/Makefile' >> $@ - --release: $(BUILDDIR)/libsupport.a $(BUILDDIR)/compile_commands.json --debug: $(BUILDDIR)/libsupport-debug.a $(BUILDDIR)/compile_commands.json -+release: $(BUILDDIR)/libsupport.a -+debug: $(BUILDDIR)/libsupport-debug.a - - $(BUILDDIR)/libsupport.a: $(OBJS) | $(BUILDIR) - rm -rf $@ diff --git a/L/libjulia/bundled/patches/1.13.0-DEV/bf16-workaround.patch b/L/libjulia/bundled/patches/1.13.0-beta2/bf16-workaround.patch similarity index 100% rename from L/libjulia/bundled/patches/1.13.0-DEV/bf16-workaround.patch rename to L/libjulia/bundled/patches/1.13.0-beta2/bf16-workaround.patch diff --git a/L/libjulia/bundled/patches/1.14.0-DEV/Drop-compile-database-makefile-target.patch b/L/libjulia/bundled/patches/1.14.0-DEV/Drop-compile-database-makefile-target.patch deleted file mode 100644 index ad20eb0b155..00000000000 --- a/L/libjulia/bundled/patches/1.14.0-DEV/Drop-compile-database-makefile-target.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 01ddd6655495b6110a11513fa1a29f76ad895ecd Mon Sep 17 00:00:00 2001 -From: Max Horn -Date: Tue, 29 Oct 2025 15:02:00 +0100 -Subject: [PATCH] Drop compile-database.json target - -Remove the `compile-database.json` target from the `release` targets -due to build problems in Yggdrasil (see https://github.com/JuliaPackaging/Yggdrasil/pull/12406#issuecomment-3457169292). -https://github.com/JuliaLang/julia/pull/59980 tries to address this properly. ---- - src/Makefile | 2 +- - src/flisp/Makefile | 2 +- - src/support/Makefile | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/Makefile b/src/Makefile -index 18e9a4a639..f92cd73a10 100644 ---- a/src/Makefile -+++ b/src/Makefile -@@ -259,7 +259,7 @@ endif - default: $(JULIA_BUILD_MODE) # contains either "debug" or "release" - all: debug release - --release debug: %: libjulia-internal-% libjulia-codegen-% $(BUILDDIR)/compile_commands.json -+release debug: %: libjulia-internal-% libjulia-codegen-% - - $(BUILDDIR): - mkdir -p $(BUILDDIR) -diff --git a/src/flisp/Makefile b/src/flisp/Makefile -index 135859eacb..98b336fb14 100644 ---- a/src/flisp/Makefile -+++ b/src/flisp/Makefile -@@ -61,9 +61,9 @@ DEBUGFLAGS_COMMON += $(FLAGS_COMMON) - - default: release - --release: $(BUILDDIR)/$(EXENAME)$(EXE) $(BUILDDIR)/compile_commands.json -+release: $(BUILDDIR)/$(EXENAME)$(EXE) - --debug: $(BUILDDIR)/$(EXENAME)-debug$(EXE) $(BUILDDIR)/compile_commands.json -+debug: $(BUILDDIR)/$(EXENAME)-debug$(EXE) - - $(BUILDDIR): - mkdir -p $(BUILDDIR) -diff --git a/src/support/Makefile b/src/support/Makefile -index 2b48a20bbc..3c1dba17f8 100644 ---- a/src/support/Makefile -+++ b/src/support/Makefile -@@ -53,8 +53,8 @@ $(BUILDDIR)/host/Makefile: - @printf "%s\n" 'BUILDING_HOST_TOOLS=1' >> $@ - @printf "%s\n" 'include $(SRCDIR)/Makefile' >> $@ - --release: $(BUILDDIR)/libsupport.a $(BUILDDIR)/compile_commands.json --debug: $(BUILDDIR)/libsupport-debug.a $(BUILDDIR)/compile_commands.json -+release: $(BUILDDIR)/libsupport.a -+debug: $(BUILDDIR)/libsupport-debug.a - - $(BUILDDIR)/libsupport.a: $(OBJS) | $(BUILDIR) - rm -rf $@ diff --git a/L/libjulia/common.jl b/L/libjulia/common.jl index 2cbc8f1f309..a645d2e71b7 100644 --- a/L/libjulia/common.jl +++ b/L/libjulia/common.jl @@ -5,9 +5,10 @@ using BinaryBuilderBase: get_addable_spec const YGGDRASIL_DIR = "../.." include(joinpath(YGGDRASIL_DIR, "fancy_toys.jl")) +include(joinpath(YGGDRASIL_DIR, "platforms", "macos_sdks.jl")) # list of supported Julia versions -julia_full_versions = [v"1.10.0", v"1.11.1", v"1.12.0", v"1.13.0-DEV", v"1.14.0-DEV"] +julia_full_versions = [v"1.10.0", v"1.11.1", v"1.12.0", v"1.13.0-beta2", v"1.14.0-DEV"] libjulia_min_julia_version = Base.thispatch(minimum(julia_full_versions)) if ! @isdefined julia_versions julia_versions = Base.thispatch.(julia_full_versions) @@ -75,16 +76,12 @@ function build_julia(ARGS, version::VersionNumber; jllversion=version) v"1.10.0" => "a4136608265c5d9186ae4767e94ddc948b19b43f760aba3501a161290852054d", v"1.11.1" => "895549f40b21dee66b6380e30811f40d2d938c2baba0750de69c9a183cccd756", v"1.12.0" => "c4f84dd858c36fbad010ebc4a73700f0dbb8c0f573c0734b9f7ae3f8fed0bba8", + v"1.13.0-beta2" => "5885a021056a8c83ed90daa5452f810d6b0d205ff6ff19e1582381abfdc7a9b2", ) - if version == v"1.13.0-DEV" + if version == v"1.14.0-DEV" sources = [ - GitSource("https://github.com/JuliaLang/julia.git", "abd8457ca85370eefe3788cfa13a6233773ea16f"), - DirectorySource("./bundled"), - ] - elseif version == v"1.14.0-DEV" - sources = [ - GitSource("https://github.com/JuliaLang/julia.git", "b63991c5b0aaf83b40603503457baa1ef98e7b98"), + GitSource("https://github.com/JuliaLang/julia.git", "df1fb13dc371c059218cc48b402730489dbc4963"), DirectorySource("./bundled"), ] else @@ -260,6 +257,9 @@ function build_julia(ARGS, version::VersionNumber; jllversion=version) # julia expects libuv-julia.a override LIBUV=${prefix}/lib/libuv.a + # julia needs the static version of utf8proc + override LIBUTF8PROC=${prefix}/lib/libutf8proc.a + override BB_TRIPLET_LIBGFORTRAN_CXXABI=${BB_TRIPLET_LIBGFORTRAN_CXXABI} override USE_BINARYBUILDER=1 @@ -415,6 +415,9 @@ function build_julia(ARGS, version::VersionNumber; jllversion=version) # gcc 7 and gcc 8 crash on aarch64-linux when encountering some bfloat16 intrinsics gcc_ver = version >= v"1.11.0-" ? v"9" : v"7" + # Julia requires macOS SDK >= 10.14 + sources, script = require_macos_sdk("10.14", sources, script) + if any(should_build_platform.(triplet.(platforms))) build_tarballs(ARGS, name, jllversion, sources, script, platforms, products, dependencies; preferred_gcc_version=gcc_ver, preferred_llvm_version=v"17",