diff --git a/.github/julia/build_tarballs.jl b/.github/julia/build_tarballs.jl index 13ed0ecc8c5..3b62b50e416 100644 --- a/.github/julia/build_tarballs.jl +++ b/.github/julia/build_tarballs.jl @@ -12,9 +12,6 @@ version = VersionNumber(ENV["HIGHS_RELEASE"]) sources = [GitSource(ENV["HIGHS_URL"], ENV["HIGHS_COMMIT"])] script = raw""" -export BUILD_SHARED="ON" -export BUILD_STATIC="OFF" - cd $WORKSPACE/srcdir/HiGHS # Remove system CMake to use the jll version @@ -23,19 +20,21 @@ apk del cmake rm -rf build mkdir build -# Do fully static build only on Windows -if [[ "${BUILD_SHARED}" == "OFF" ]] && [[ "${target}" == *-mingw* ]]; then - export CXXFLAGS="-static" +if [[ "${target}" == *-mingw* ]]; then + LBT=blastrampoline-5 +else + LBT=blastrampoline fi cmake -S . -B build \ -DCMAKE_INSTALL_PREFIX=${prefix} \ -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TARGET_TOOLCHAIN} \ -DCMAKE_BUILD_TYPE=Release \ - -DBUILD_SHARED_LIBS=${BUILD_SHARED} \ - -DZLIB_USE_STATIC_LIBS=${BUILD_STATIC} \ - -DHIPO=ON -DBUILD_SHARED_EXTRAS_LIB=OFF \ - -DBLAS_LIBRARIES="${libdir}/libopenblas.${dlext}" + -DBUILD_SHARED_LIBS=ON \ + -DHIPO=ON \ + -DBUILD_SHARED_EXTRAS_LIB=OFF \ + -DBLA_VENDOR=blastrampoline \ + -DBLAS_LIBRARIES=\"${LBT}\" if [[ "${target}" == *-linux-* ]]; then make -C build -j ${nproc} @@ -62,7 +61,7 @@ platforms = expand_cxxstring_abis(platforms) dependencies = [ Dependency("CompilerSupportLibraries_jll"), Dependency("Zlib_jll"), - Dependency("OpenBLAS32_jll"), + Dependency("libblastrampoline_jll"), HostBuildDependency(PackageSpec(; name="CMake_jll")), ] @@ -76,5 +75,5 @@ build_tarballs( products, dependencies; preferred_gcc_version = v"11", - julia_compat = "1.6", + julia_compat = "1.10", ) diff --git a/.github/workflows/julia-tests.yml b/.github/workflows/julia-tests.yml index e818900ab67..cd772ba3ace 100644 --- a/.github/workflows/julia-tests.yml +++ b/.github/workflows/julia-tests.yml @@ -1,12 +1,9 @@ name: JuliaCompileAndTest - on: [push, pull_request] -# needed to allow julia-actions/cache to delete old caches that it has created - concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true - +# needed to allow julia-actions/cache to delete old caches that it has created permissions: actions: write contents: read @@ -18,7 +15,7 @@ jobs: matrix: triplet: ['x86_64-linux-gnu-cxx11', 'aarch64-apple-darwin', 'x86_64-w64-mingw32-cxx11'] steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - uses: julia-actions/setup-julia@v3 with: version: "1.7" @@ -64,7 +61,7 @@ jobs: os: 'windows-latest' arch: x64 steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - uses: julia-actions/setup-julia@v3 with: version: "1.10" @@ -106,18 +103,7 @@ jobs: "$(m[1]) = \"$(dir)\"\n", ) Pkg.develop(; path = joinpath(ENV["GITHUB_WORKSPACE"], "HiGHS_jll")) - - shell: julia --color=yes {0} - run: | - import HiGHS_jll - file = joinpath(ENV["GITHUB_WORKSPACE"], "check", "instances", "flugpl.mps") - run(`$(HiGHS_jll.highs()) --solver=hipo $file`) - run(`$(HiGHS_jll.highs()) $file`) - shell: julia --color=yes {0} run: | using Pkg - # HiGHS uses (N+1)/2 threads. HiGHS.jl parallelises the tests and, in - # the default setting, it may use up to 4 parallel jobs. This means - # HiGHS may attempt to start up to 2(N+1) threads and we get unhandled - # exceptions on macOS and a SIGTERM on linux. To avoid these errors, - # opt out of running the tests in parallel. - Pkg.test("HiGHS"; test_args=["--parallel=false"]) + Pkg.test("HiGHS")