Skip to content

Commit 2120917

Browse files
committed
[CI] Compile Uno with HiGHS
1 parent 5a3f4d5 commit 2120917

File tree

4 files changed

+44
-6
lines changed

4 files changed

+44
-6
lines changed

.github/workflows/build-macos.yml

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,18 @@ jobs:
2727
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
2828
runs-on: ${{ matrix.os }}
2929
strategy:
30+
fail-fast: false
3031
matrix:
31-
os: [macos-latest]
32-
architecture: [x64, arm64]
32+
# we want the combination (macos-13, x64) + (macos-latest, arm64)
33+
os: [macos-13, macos-latest]
34+
architecture: [arm64, x64]
3335
compiler: [gcc]
36+
exclude:
37+
# macos-latest only works with arm64 architecture
38+
- os: macos-latest
39+
architecture: x64
40+
- os: macos-13
41+
architecture: arm64
3442

3543
steps:
3644
- name: Checkout repository
@@ -41,16 +49,20 @@ jobs:
4149
run: |
4250
VERSION_BQPD="1.0.0"
4351
VERSION_MUMPS="5.8.0"
52+
VERSION_HIGHS="1.11.0"
4453
if [[ "${{matrix.architecture}}" == "x64" ]]; then
4554
PLATFORM="x86_64-apple-darwin"
4655
else
4756
PLATFORM="aarch64-apple-darwin"
4857
fi
4958
wget https://github.com/leyffer/BQPD_jll.jl/releases/download/BQPD-v${VERSION_BQPD}%2B0/BQPD.v${VERSION_BQPD}.$PLATFORM-libgfortran5.tar.gz
5059
wget https://github.com/amontoison/MUMPS_static_jll.jl/releases/download/MUMPS_static-v${VERSION_MUMPS}%2B0/MUMPS_static.v${VERSION_MUMPS}.$PLATFORM-libgfortran5.tar.gz
60+
wget https://github.com/amontoison/HiGHS_static_jll.jl/releases/download/HiGHS_static-v${VERSION_HIGHS}%2B0/HiGHS_static.v${VERSION_HIGHS}.$PLATFORM-libgfortran5.tar.gz
5161
mkdir deps
62+
mkdir deps/highs
5263
tar -xzvf BQPD.v${VERSION_BQPD}.$PLATFORM-libgfortran5.tar.gz -C deps
5364
tar -xzvf MUMPS_static.v${VERSION_MUMPS}.$PLATFORM-libgfortran5.tar.gz -C deps
65+
tar -xzvf HiGHS_static.v${VERSION_HIGHS}.$PLATFORM-libgfortran5.tar.gz -C deps/highs
5466
5567
- name: Install Fortran compiler
5668
uses: fortran-lang/setup-fortran@main
@@ -71,8 +83,11 @@ jobs:
7183
-DMUMPS_COMMON_LIBRARY=${{github.workspace}}/deps/lib/libmumps_common.a \
7284
-DMUMPS_PORD_LIBRARY=${{github.workspace}}/deps/lib/libpord.a \
7385
-DMUMPS_MPISEQ_LIBRARY=${{github.workspace}}/deps/lib/libmpiseq.a \
86+
-DHIGHS_DIR=${{github.workspace}}/deps/highs/lib/cmake/highs \
7487
-DBLAS_LIBRARIES=${{github.workspace}}/deps/lib/libblas.a \
75-
-DLAPACK_LIBRARIES=${{github.workspace}}/deps/lib/liblapack.a
88+
-DLAPACK_LIBRARIES=${{github.workspace}}/deps/lib/liblapack.a \
89+
-DBUILD_STATIC_LIBS=ON \
90+
-DBUILD_SHARED_LIBS=ON .
7691
7792
- name: Build
7893
# Build your program with the given configuration

.github/workflows/build-msvc.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ jobs:
4444
run: |
4545
VERSION_BQPD="1.0.0"
4646
VERSION_MUMPS="5.8.0"
47+
VERSION_HIGHS="1.11.0"
4748
if [[ "${{matrix.architecture}}" == "x64" ]]; then
4849
PLATFORM="x86_64-w64-mingw32"
4950
else
@@ -52,9 +53,11 @@ jobs:
5253
choco install wget
5354
wget https://github.com/leyffer/BQPD_jll.jl/releases/download/BQPD-v${VERSION_BQPD}%2B0/BQPD.v${VERSION_BQPD}.$PLATFORM-libgfortran5.tar.gz
5455
wget https://github.com/amontoison/MUMPS_static_jll.jl/releases/download/MUMPS_static-v${VERSION_MUMPS}%2B0/MUMPS_static.v${VERSION_MUMPS}.$PLATFORM-libgfortran5.tar.gz
56+
wget https://github.com/amontoison/HiGHS_static_jll.jl/releases/download/HiGHS_static-v${VERSION_HIGHS}%2B0/HiGHS_static.v${VERSION_HIGHS}.$PLATFORM-libgfortran5.tar.gz
5557
mkdir deps
5658
tar -xzvf BQPD.v${VERSION_BQPD}.$PLATFORM-libgfortran5.tar.gz -C deps
5759
tar -xzvf MUMPS_static.v${VERSION_MUMPS}.$PLATFORM-libgfortran5.tar.gz -C deps
60+
tar -xzvf HiGHS_static.v${VERSION_HIGHS}.$PLATFORM-libgfortran5.tar.gz -C deps
5861
5962
- name: Install Fortran compiler
6063
uses: fortran-lang/setup-fortran@main
@@ -81,6 +84,7 @@ jobs:
8184
-DMUMPS_MPISEQ_LIBRARY=${{github.workspace}}\deps\lib\libmpiseq.a ^
8285
-DBLAS_LIBRARIES=${{github.workspace}}\deps\lib\libblas.a ^
8386
-DLAPACK_LIBRARIES=${{github.workspace}}\deps\lib\liblapack.a ^
87+
-DHIGHS_DIR=${{github.workspace}}\deps ^
8488
-DBUILD_STATIC_LIBS=ON ^
8589
-DBUILD_SHARED_LIBS=OFF .
8690
) else (

.github/workflows/build-windows.yml

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,11 @@ jobs:
2727
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
2828
runs-on: ${{ matrix.os }}
2929
strategy:
30+
fail-fast: false
3031
matrix:
3132
os: [windows-latest]
3233
architecture: [x64]
34+
compiler: [mingw]
3335

3436
steps:
3537
- name: Checkout repository
@@ -40,13 +42,21 @@ jobs:
4042
run: |
4143
VERSION_BQPD="1.0.0"
4244
VERSION_MUMPS="5.8.0"
43-
PLATFORM="x86_64-w64-mingw32"
45+
VERSION_HIGHS="1.11.0"
46+
if [[ "${{matrix.architecture}}" == "x64" ]]; then
47+
PLATFORM="x86_64-w64-mingw32"
48+
else
49+
PLATFORM="i686-w64-mingw32"
50+
fi
4451
choco install wget
4552
wget https://github.com/leyffer/BQPD_jll.jl/releases/download/BQPD-v${VERSION_BQPD}%2B0/BQPD.v${VERSION_BQPD}.$PLATFORM-libgfortran5.tar.gz
4653
wget https://github.com/amontoison/MUMPS_static_jll.jl/releases/download/MUMPS_static-v${VERSION_MUMPS}%2B0/MUMPS_static.v${VERSION_MUMPS}.$PLATFORM-libgfortran5.tar.gz
54+
wget https://github.com/amontoison/HiGHS_static_jll.jl/releases/download/HiGHS_static-v${VERSION_HIGHS}%2B0/HiGHS_static.v${VERSION_HIGHS}.$PLATFORM-libgfortran5.tar.gz
4755
mkdir deps
56+
mkdir deps/highs
4857
tar -xzvf BQPD.v${VERSION_BQPD}.$PLATFORM-libgfortran5.tar.gz -C deps
4958
tar -xzvf MUMPS_static.v${VERSION_MUMPS}.$PLATFORM-libgfortran5.tar.gz -C deps
59+
tar -xzvf HiGHS_static.v${VERSION_HIGHS}.$PLATFORM-libgfortran5.tar.gz -C deps/highs
5060
5161
- name: add MinGW64 directory to path
5262
run: echo "C:\tools\msys64\mingw64\bin" >> "$GITHUB_PATH"
@@ -66,7 +76,10 @@ jobs:
6676
-DMUMPS_PORD_LIBRARY=${{github.workspace}}\deps\lib\libpord.a ^
6777
-DMUMPS_MPISEQ_LIBRARY=${{github.workspace}}\deps\lib\libmpiseq.a ^
6878
-DBLAS_LIBRARIES=${{github.workspace}}\deps\lib\libblas.a ^
69-
-DLAPACK_LIBRARIES=${{github.workspace}}\deps\lib\liblapack.a .
79+
-DLAPACK_LIBRARIES=${{github.workspace}}\deps\lib\liblapack.a ^
80+
-DHIGHS_DIR=${{github.workspace}}\deps\highs\lib\cmake\highs ^
81+
-DBUILD_STATIC_LIBS=ON ^
82+
-DBUILD_SHARED_LIBS=ON .
7083
7184
- name: Build
7285
# Build your program with the given configuration

.github/workflows/unit-tests-ubuntu.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,15 @@ jobs:
5353
run: |
5454
VERSION_BQPD="1.0.0"
5555
VERSION_MUMPS="5.8.0"
56+
VERSION_HIGHS="1.11.0"
5657
PLATFORM="x86_64-linux-gnu"
5758
wget https://github.com/leyffer/BQPD_jll.jl/releases/download/BQPD-v${VERSION_BQPD}%2B0/BQPD.v${VERSION_BQPD}.$PLATFORM-libgfortran5.tar.gz
5859
wget https://github.com/amontoison/MUMPS_static_jll.jl/releases/download/MUMPS_static-v${VERSION_MUMPS}%2B0/MUMPS_static.v${VERSION_MUMPS}.$PLATFORM-libgfortran5.tar.gz
60+
wget https://github.com/amontoison/HiGHS_static_jll.jl/releases/download/HiGHS_static-v${VERSION_HIGHS}%2B0/HiGHS_static.v${VERSION_HIGHS}.$PLATFORM-libgfortran5.tar.gz
5961
mkdir deps
6062
tar -xzvf BQPD.v${VERSION_BQPD}.$PLATFORM-libgfortran5.tar.gz -C deps
6163
tar -xzvf MUMPS_static.v${VERSION_MUMPS}.$PLATFORM-libgfortran5.tar.gz -C deps
64+
tar -xzvf HiGHS_static.v${VERSION_HIGHS}.$PLATFORM-libgfortran5.tar.gz -C deps
6265
6366
- name: Configure CMake
6467
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
@@ -74,7 +77,10 @@ jobs:
7477
-DMUMPS_PORD_LIBRARY=${{github.workspace}}/deps/lib/libpord.a \
7578
-DMUMPS_MPISEQ_LIBRARY=${{github.workspace}}/deps/lib/libmpiseq.a \
7679
-DBLAS_LIBRARIES=${{github.workspace}}/deps/lib/libblas.a \
77-
-DLAPACK_LIBRARIES=${{github.workspace}}/deps/lib/liblapack.a
80+
-DLAPACK_LIBRARIES=${{github.workspace}}/deps/lib/liblapack.a \
81+
-DHIGHS_DIR=${{github.workspace}}/deps \
82+
-DBUILD_STATIC_LIBS=ON \
83+
-DBUILD_SHARED_LIBS=ON .
7884
7985
- name: Build
8086
# Build your program with the given configuration

0 commit comments

Comments
 (0)