Skip to content

Commit

Permalink
[libjulia] add Julia 1.9, update 1.8
Browse files Browse the repository at this point in the history
Co-authored-by: Mosè Giordano <mose@gnu.org>
  • Loading branch information
fingolfin and giordano committed Feb 20, 2022
1 parent 4cc6e54 commit b9ceb4b
Show file tree
Hide file tree
Showing 5 changed files with 74 additions and 35 deletions.
3 changes: 2 additions & 1 deletion L/libjulia/build_tarballs.jl
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
include("common.jl")
jllversion=v"1.7.1"
jllversion=v"1.8.0"
build_julia(ARGS, v"1.6.3"; jllversion)
build_julia(ARGS, v"1.7.0"; jllversion)
build_julia(ARGS, v"1.8.0-DEV"; jllversion)
build_julia(ARGS, v"1.9.0-DEV"; jllversion)

This file was deleted.

26 changes: 26 additions & 0 deletions L/libjulia/bundled/patches/1.8.0-DEV/debuginfo-32-bit-arm.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
From c9ac2eadfb2c80ddd2cff30c5eaec0f4e8695167 Mon Sep 17 00:00:00 2001
From: David Nadlinger <code@klickverbot.at>
Date: Sat, 19 Feb 2022 20:31:41 +0000
Subject: [PATCH] debuginfo: Fix build on 32-bit ARM

This slipped through in 955d4271, as we aren't building for
32 bit ARM during CI right now.

GitHub: Fixes #44254.
---
src/debuginfo.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/debuginfo.cpp b/src/debuginfo.cpp
index 42d67bd6f89c..53105feb81bf 100644
--- a/src/debuginfo.cpp
+++ b/src/debuginfo.cpp
@@ -227,7 +227,7 @@ class JITObjectRegistry
continue;
}
}
- uint64_t loadaddr = L.getSectionLoadAddress(section);
+ uint64_t loadaddr = getLoadAddress(section.getName().get());
size_t seclen = section.getSize();
if (istext) {
arm_text_addr = loadaddr;
26 changes: 26 additions & 0 deletions L/libjulia/bundled/patches/1.9.0-DEV/debuginfo-32-bit-arm.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
From c9ac2eadfb2c80ddd2cff30c5eaec0f4e8695167 Mon Sep 17 00:00:00 2001
From: David Nadlinger <code@klickverbot.at>
Date: Sat, 19 Feb 2022 20:31:41 +0000
Subject: [PATCH] debuginfo: Fix build on 32-bit ARM

This slipped through in 955d4271, as we aren't building for
32 bit ARM during CI right now.

GitHub: Fixes #44254.
---
src/debuginfo.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/debuginfo.cpp b/src/debuginfo.cpp
index 42d67bd6f89c..53105feb81bf 100644
--- a/src/debuginfo.cpp
+++ b/src/debuginfo.cpp
@@ -227,7 +227,7 @@ class JITObjectRegistry
continue;
}
}
- uint64_t loadaddr = L.getSectionLoadAddress(section);
+ uint64_t loadaddr = getLoadAddress(section.getName().get());
size_t seclen = section.getSize();
if (istext) {
arm_text_addr = loadaddr;
24 changes: 20 additions & 4 deletions L/libjulia/common.jl
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,12 @@ function build_julia(ARGS, version::VersionNumber; jllversion=version)

if version == v"1.8.0-DEV"
sources = [
GitSource("https://github.com/JuliaLang/julia.git", "00646634c6a73998eaae3785eb78fea881c39502"),
GitSource("https://github.com/JuliaLang/julia.git", "7a1c20e6dea50291b364452996d3d4d71a6133dc"),
DirectorySource("./bundled"),
]
elseif version == v"1.9.0-DEV"
sources = [
GitSource("https://github.com/JuliaLang/julia.git", "6409a8a8ebe8a6d648ad1739e7ac589721646e2d"),
DirectorySource("./bundled"),
]
else
Expand Down Expand Up @@ -130,7 +135,13 @@ function build_julia(ARGS, version::VersionNumber; jllversion=version)
# -NDEBUG below fixes the FreeBSD build of Julia 1.4 and 1.5
CXXFLAGS="-I${prefix}/include -DNDEBUG"
if [[ "${target}" == *mingw* ]]; then
LLVMLINK="-L${prefix}/bin -lLLVM"
if [[ "${version}" == 1.8.* ]]; then
LLVMLINK="-L${prefix}/bin -lLLVM-13jl"
elif [[ "${version}" == 1.9.* ]]; then
LLVMLINK="-L${prefix}/bin -lLLVM-13jl"
else
LLVMLINK="-L${prefix}/bin -lLLVM"
fi
LLVM_LDFLAGS="-L${prefix}/bin"
LDFLAGS="-L${prefix}/bin"
elif [[ "${target}" == *apple* ]]; then
Expand All @@ -141,7 +152,9 @@ function build_julia(ARGS, version::VersionNumber; jllversion=version)
elif [[ "${version}" == 1.7.* ]]; then
LLVMLINK="-L${prefix}/lib -lLLVM-12jl"
elif [[ "${version}" == 1.8.* ]]; then
LLVMLINK="-L${prefix}/lib -lLLVM-12jl"
LLVMLINK="-L${prefix}/lib -lLLVM-13jl"
elif [[ "${version}" == 1.9.* ]]; then
LLVMLINK="-L${prefix}/lib -lLLVM-13jl"
else
echo "Error, LLVM version not specified"
exit 1
Expand Down Expand Up @@ -323,7 +336,10 @@ function build_julia(ARGS, version::VersionNumber; jllversion=version)
push!(dependencies, BuildDependency(get_addable_spec("LLVM_full_jll", v"12.0.1+3")))
push!(dependencies, BuildDependency(get_addable_spec("LLVMLibUnwind_jll", v"11.0.1+1")))
elseif version.major == 1 && version.minor == 8
push!(dependencies, BuildDependency(get_addable_spec("LLVM_full_jll", v"12.0.1+4")))
push!(dependencies, BuildDependency(get_addable_spec("LLVM_full_jll", v"13.0.0+3")))
push!(dependencies, BuildDependency(get_addable_spec("LLVMLibUnwind_jll", v"12.0.1+0")))
elseif version.major == 1 && version.minor == 9
push!(dependencies, BuildDependency(get_addable_spec("LLVM_full_jll", v"13.0.1+0")))
push!(dependencies, BuildDependency(get_addable_spec("LLVMLibUnwind_jll", v"12.0.1+0")))
else
error("Unsupported Julia version")
Expand Down

0 comments on commit b9ceb4b

Please sign in to comment.