@@ -4,15 +4,10 @@ const YGGDRASIL_DIR = "../.."
44include(joinpath(YGGDRASIL_DIR, " platforms" , " macos_sdks.jl" ))
55
66name = " slope"
7- version = v" 5.1.1"
8-
9- # See https://github.com/JuliaLang/Pkg.jl/issues/2942
10- # Once this Pkg issue is resolved, this must be removed
11- uuid = Base. UUID(" a83860b7-747b-57cf-bf1f-3e79990d037f" )
12- delete!(Pkg. Types. get_last_stdlibs(v" 1.6.3" ), uuid)
7+ version = v" 6.3.0"
138
149sources = [
15- GitSource(" https://github.com/jolars/libslope.git" , " e668b0891ff744cad2d1b3fbf13bf2ec534f1518 " ),
10+ GitSource(" https://github.com/jolars/libslope.git" , " 25c165ed1e52ee99da57c81d42ba5c504f1c98b4 " ),
1611]
1712
1813# Bash recipe for building across all platforms
@@ -23,20 +18,34 @@ cd $WORKSPACE/srcdir/libslope
2318cmake -B build \
2419 -DBUILD_TESTING=OFF \
2520 -DBUILD_JULIA_BINDINGS=ON \
21+ -DJlCxx_DIR=$prefix/lib/cmake/JlCxx \
2622 -DCMAKE_BUILD_TYPE=Release \
2723 -DCMAKE_INSTALL_PREFIX=$prefix \
2824 -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
2925 -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TARGET_TOOLCHAIN} \
30- -DJulia_PREFIX=${prefix} \
26+ -DJulia_PREFIX=${prefix}
3127
3228cmake --build build --parallel ${nproc}
3329cmake --install build
3430
3531install_license $WORKSPACE/srcdir/libslope/LICENSE
3632"""
3733
34+ # Workaround for haskey bug in Julia 1.11+: Empty weakdeps from Pkg stdlib
35+ # The bug is triggered when a stdlib (like Pkg) has weakdeps and gets resolved
36+ # as part of the dependency graph. The code tries to call haskey(p.deps, name)
37+ # where p.deps is a Vector{UUID} but the code expects a Dict.
38+ # By emptying weakdeps, we avoid the buggy code path in Pkg.Operations.fixups_from_projectfile!
39+ uuidpkg = Base. UUID(" 44cfe95a-1eb2-52ea-b672-e2afdf69b78f" )
40+ for v in [v" 1.11.0" , v" 1.12.0" , v" 1.13.0" , v" 1.14.0" ]
41+ stdlibs = Pkg. Types. get_last_stdlibs(v)
42+ if haskey(stdlibs, uuidpkg)
43+ empty!(stdlibs[uuidpkg]. weakdeps)
44+ end
45+ end
46+
3847# `std::optionals()`'s `value()` needs macOS 10.14 SDK
39- sources, script = require_macos_sdk(" 10.14 " , sources, script)
48+ sources, script = require_macos_sdk(" 11.3 " , sources, script)
4049
4150include(" ../../L/libjulia/common.jl" )
4251julia_versions = filter(v -> v >= v" 1.10" , julia_versions)
@@ -51,9 +60,11 @@ dependencies = [
5160 BuildDependency(" Eigen_jll" ),
5261 BuildDependency(" libjulia_jll" ),
5362 Dependency(" CompilerSupportLibraries_jll" ),
54- Dependency(" LLVMOpenMP_jll" , platforms= filter(Sys. isapple, platforms)),
55- Dependency(" libcxxwrap_julia_jll" ; compat= " 0.14.3 " ),
63+ Dependency(" LLVMOpenMP_jll" , platforms = filter(Sys. isapple, platforms)),
64+ Dependency(" libcxxwrap_julia_jll" ; compat = " 0.14.7 " ),
5665]
5766
58- build_tarballs(ARGS , name, version, sources, script, platforms, products, dependencies;
59- preferred_gcc_version= v" 11" , julia_compat= " 1.10" )
67+ build_tarballs(
68+ ARGS , name, version, sources, script, platforms, products, dependencies;
69+ preferred_gcc_version = v" 11" , julia_compat = " 1.10"
70+ )
0 commit comments