Skip to content

Commit 2ff7a1a

Browse files
authored
Add support for aarch64-apple-darwin (#234)
1 parent f350266 commit 2ff7a1a

File tree

4 files changed

+34
-18
lines changed

4 files changed

+34
-18
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,18 @@ jobs:
1515
strategy:
1616
fail-fast: false
1717
matrix:
18-
version: ['1.6', '1'] # Test against LTS and current minor release
18+
version: ['1.10', '1'] # Test against LTS and current minor release
1919
os: [ubuntu-latest, macOS-latest, windows-latest]
2020
arch: [x64]
2121
include:
2222
# Also test against 32-bit Linux on LTS.
23-
- version: '1.6'
23+
- version: '1.10'
2424
os: ubuntu-latest
2525
arch: x86
26+
# Test against Apple M-series
27+
- version: '1'
28+
os: macos-14
29+
arch: aarch64
2630
steps:
2731
- uses: actions/checkout@v4
2832
- uses: julia-actions/setup-julia@v2

.github/workflows/format_check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
shell: julia --color=yes {0}
1919
run: |
2020
using Pkg
21-
Pkg.add(PackageSpec(name="JuliaFormatter", version="1"))
21+
Pkg.add(PackageSpec(name="JuliaFormatter", version="2"))
2222
using JuliaFormatter
2323
format("src/MOI_wrapper", verbose=true)
2424
format("test", verbose=true)

Project.toml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,21 @@
11
name = "Cbc"
22
uuid = "9961bab8-2fa3-5c5a-9d89-47fab24efd76"
33
repo = "https://github.com/jump-dev/Cbc.jl.git"
4-
version = "1.2.0"
4+
version = "1.3.0"
55

66
[deps]
77
Cbc_jll = "38041ee0-ae04-5750-a4d2-bb4d0d83d27d"
8+
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
89
MathOptInterface = "b8f27783-ece8-5eb3-8dc8-9495eed66fee"
10+
OpenBLAS32_jll = "656ef2d0-ae68-5445-9ca0-591084a874a2"
911
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
1012

1113
[compat]
12-
Cbc_jll = "=2.10.5, =200.1000.501, =200.1000.800"
14+
Cbc_jll = "=200.1000.1200"
15+
LinearAlgebra = "1"
1316
MathOptInterface = "1.7"
14-
julia = "1.6"
17+
OpenBLAS32_jll = "0.3.10"
18+
julia = "1.10"
1519

1620
[extras]
1721
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

src/Cbc.jl

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,16 @@
66
module Cbc
77

88
import Cbc_jll: libcbcsolver
9+
import LinearAlgebra
910
import MathOptInterface as MOI
11+
import OpenBLAS32_jll
1012
import SparseArrays
1113

1214
function __init__()
15+
config = LinearAlgebra.BLAS.lbt_get_config()
16+
if !any(lib -> lib.interface == :lp64, config.loaded_libs)
17+
LinearAlgebra.BLAS.lbt_forward(OpenBLAS32_jll.libopenblas_path)
18+
end
1319
version_str = unsafe_string(Cbc_getVersion())
1420
version = if version_str == "devel"
1521
# Support un-released versions of Cbc. These may differ in C API
@@ -19,18 +25,20 @@ function __init__()
1925
VersionNumber(version_str)
2026
end
2127
if !(v"2.10.0" <= version < v"2.11")
22-
error("""
23-
You have installed version $version of Cbc, which is not supported by
24-
Cbc.jl We require Cbc version 2.10. After installing Cbc 2.10, run:
25-
26-
import Pkg
27-
Pkg.rm("Cbc")
28-
Pkg.add("Cbc")
29-
30-
If you have a newer version of Cbc installed, changes may need to be made
31-
to the Julia code. Please open an issue at
32-
https://github.com/jump-dev/Cbc.jl.
33-
""")
28+
error(
29+
"""
30+
You have installed version $version of Cbc, which is not supported by
31+
Cbc.jl We require Cbc version 2.10. After installing Cbc 2.10, run:
32+
33+
import Pkg
34+
Pkg.rm("Cbc")
35+
Pkg.add("Cbc")
36+
37+
If you have a newer version of Cbc installed, changes may need to be
38+
made to the Julia code. Please open an issue at
39+
https://github.com/jump-dev/Cbc.jl.
40+
""",
41+
)
3442
end
3543
return
3644
end

0 commit comments

Comments
 (0)