@@ -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.2.1"
138
149sources = [
15- GitSource (" https://github.com/jolars/libslope.git" , " e668b0891ff744cad2d1b3fbf13bf2ec534f1518 " ),
10+ GitSource (" https://github.com/jolars/libslope.git" , " 5736dcf59ddb483dd89198d949ec0c12779346db " ),
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