Skip to content

Commit 003064d

Browse files
committed
CI: Test macOS builds
1 parent 88a0f58 commit 003064d

1 file changed

Lines changed: 120 additions & 117 deletions

File tree

.github/workflows/builds.yml

Lines changed: 120 additions & 117 deletions
Original file line numberDiff line numberDiff line change
@@ -8,72 +8,75 @@ on:
88
push:
99

1010
jobs:
11-
build_linux:
12-
name: 'Linux variants'
13-
strategy:
14-
matrix:
15-
include:
16-
- arch: x64
17-
docker_image: 'pmeira/manylinux_wheel_fpc322_x86_64'
18-
extra_cmake_flags: ''
19-
klusolve_linux32: ''
20-
- arch: x86
21-
docker_image: 'pmeira/manylinux_wheel_fpc322_i686'
22-
extra_cmake_flags: '-DCMAKE_CXX_COMPILER_ARG1=-m32 -DCMAKE_C_COMPILER_ARG1=-m32'
23-
klusolve_linux32: linux32
24-
25-
runs-on: ubuntu-latest
26-
env:
27-
KLUSOLVE_OS: linux
28-
EIGEN_VERSION : "5.0.0"
29-
DOCKER_IMAGE: ${{ matrix.docker_image }}
30-
KLUSOLVE_ARCH: ${{ matrix.arch }}
31-
KLUSOLVE_EXTRA_CMAKE_FLAGS: ${{ matrix.extra_cmake_flags }}
32-
KLUSOLVE_LINUX32: ${{ matrix.klusolve_linux32 }}
33-
steps:
34-
- uses: "actions/checkout@v4"
35-
with:
36-
fetch-depth: 0
37-
path: 'klusolve'
38-
39-
- name: 'Setup Docker'
40-
run: |
41-
docker pull $DOCKER_IMAGE
42-
43-
- name: 'Download dependencies'
44-
run: |
45-
klusolve/ci/download_deps.sh
46-
47-
- name: Build
48-
run: |
49-
docker run --rm -v `pwd`:/io -e KLUSOLVE_WORK_DIR=/io -e GITHUB_REF -e KLUSOLVE_OS -e KLUSOLVE_ARCH -e EIGEN_VERSION -e KLUSOLVE_EXTRA_CMAKE_FLAGS $DOCKER_IMAGE ${KLUSOLVE_LINUX32} bash /io/klusolve/ci/build_unix.sh
50-
cd klusolve
51-
ls -lR lib
52-
bash ci/pack.sh
53-
54-
- name: 'Upload artifacts'
55-
uses: "actions/upload-artifact@v4"
56-
#if: github.event_name == 'release' && github.event.action == 'created'
57-
with:
58-
name: 'development-build-linux_${{ matrix.arch }}'
59-
path: '${{ github.workspace }}/klusolve/release/*.tar.gz'
11+
# build_linux:
12+
# name: 'Linux variants'
13+
# strategy:
14+
# matrix:
15+
# include:
16+
# - arch: x64
17+
# docker_image: 'pmeira/manylinux_wheel_fpc322_x86_64'
18+
# extra_cmake_flags: ''
19+
# klusolve_linux32: ''
20+
# - arch: x86
21+
# docker_image: 'pmeira/manylinux_wheel_fpc322_i686'
22+
# extra_cmake_flags: '-DCMAKE_CXX_COMPILER_ARG1=-m32 -DCMAKE_C_COMPILER_ARG1=-m32'
23+
# klusolve_linux32: linux32
24+
25+
# runs-on: ubuntu-latest
26+
# env:
27+
# KLUSOLVE_OS: linux
28+
# EIGEN_VERSION : "5.0.0"
29+
# DOCKER_IMAGE: ${{ matrix.docker_image }}
30+
# KLUSOLVE_ARCH: ${{ matrix.arch }}
31+
# KLUSOLVE_EXTRA_CMAKE_FLAGS: ${{ matrix.extra_cmake_flags }}
32+
# KLUSOLVE_LINUX32: ${{ matrix.klusolve_linux32 }}
33+
# steps:
34+
# - uses: "actions/checkout@v4"
35+
# with:
36+
# fetch-depth: 0
37+
# path: 'klusolve'
38+
39+
# - name: 'Setup Docker'
40+
# run: |
41+
# docker pull $DOCKER_IMAGE
42+
43+
# - name: 'Download dependencies'
44+
# run: |
45+
# klusolve/ci/download_deps.sh
46+
47+
# - name: Build
48+
# run: |
49+
# docker run --rm -v `pwd`:/io -e KLUSOLVE_WORK_DIR=/io -e GITHUB_REF -e KLUSOLVE_OS -e KLUSOLVE_ARCH -e EIGEN_VERSION -e KLUSOLVE_EXTRA_CMAKE_FLAGS $DOCKER_IMAGE ${KLUSOLVE_LINUX32} bash /io/klusolve/ci/build_unix.sh
50+
# cd klusolve
51+
# ls -lR lib
52+
# bash ci/pack.sh
53+
54+
# - name: 'Upload artifacts'
55+
# uses: "actions/upload-artifact@v4"
56+
# #if: github.event_name == 'release' && github.event.action == 'created'
57+
# with:
58+
# name: 'development-build-linux_${{ matrix.arch }}'
59+
# path: '${{ github.workspace }}/klusolve/release/*.tar.gz'
6060

6161

6262
build_macos:
6363
name: 'macOS variants'
6464
strategy:
6565
matrix:
6666
include:
67-
- os: macos-13
67+
- os: macos-15-intel
6868
arch: x64
69+
extra_cmake_flags: '-DCMAKE_POLICY_VERSION_MINIMUM=3.5'
6970
- os: macos-latest
7071
arch: arm64
72+
extra_cmake_flags: '-DCMAKE_POLICY_VERSION_MINIMUM=3.5'
7173

7274
runs-on: ${{ matrix.os }}
7375
env:
7476
KLUSOLVE_OS: darwin
7577
KLUSOLVE_ARCH: ${{ matrix.arch }}
7678
EIGEN_VERSION : "5.0.0"
79+
KLUSOLVE_EXTRA_CMAKE_FLAGS: ${{ matrix.extra_cmake_flags }}
7780
steps:
7881
- uses: "actions/checkout@v4"
7982
with:
@@ -100,71 +103,71 @@ jobs:
100103
path: '${{ github.workspace }}/klusolve/release/*.tar.gz'
101104

102105

103-
build_windows:
104-
name: 'Windows variants'
105-
strategy:
106-
matrix:
107-
os: [windows-2019, windows-2022]
108-
arch: ['x64', 'x86']
109-
compiler: ['msvc', 'gcc']
110-
exclude:
111-
# We don't need to build the same exact binary twice with GCC (since we install MinGW manually)
112-
- os: windows-2022
113-
compiler: gcc
114-
arch: x86
115-
116-
fail-fast: false
117-
118-
runs-on: ${{ matrix.os }}
119-
env:
120-
KLUSOLVE_OS: windows
121-
KLUSOLVE_OS_IMAGE: ${{ matrix.os }}
122-
KLUSOLVE_ARCH: ${{ matrix.arch }}
123-
KLUSOLVE_COMPILER: ${{ matrix.compiler }}
124-
EIGEN_VERSION: "5.0.0"
125-
steps:
126-
- uses: "actions/checkout@v4"
127-
with:
128-
fetch-depth: 0
129-
path: 'klusolve'
130-
131-
- name: 'Download dependencies'
132-
shell: bash
133-
run: |
134-
bash klusolve/ci/download_deps.sh
135-
136-
- name: Set up MinGW
137-
uses: egor-tensin/setup-mingw@v2
138-
if: matrix.arch == 'x86' && matrix.compiler == 'gcc'
139-
with:
140-
platform: x86
141-
version: 12.2.0
106+
# build_windows:
107+
# name: 'Windows variants'
108+
# strategy:
109+
# matrix:
110+
# os: [windows-2019, windows-2022]
111+
# arch: ['x64', 'x86']
112+
# compiler: ['msvc', 'gcc']
113+
# exclude:
114+
# # We don't need to build the same exact binary twice with GCC (since we install MinGW manually)
115+
# - os: windows-2022
116+
# compiler: gcc
117+
# arch: x86
118+
119+
# fail-fast: false
120+
121+
# runs-on: ${{ matrix.os }}
122+
# env:
123+
# KLUSOLVE_OS: windows
124+
# KLUSOLVE_OS_IMAGE: ${{ matrix.os }}
125+
# KLUSOLVE_ARCH: ${{ matrix.arch }}
126+
# KLUSOLVE_COMPILER: ${{ matrix.compiler }}
127+
# EIGEN_VERSION: "5.0.0"
128+
# steps:
129+
# - uses: "actions/checkout@v4"
130+
# with:
131+
# fetch-depth: 0
132+
# path: 'klusolve'
133+
134+
# - name: 'Download dependencies'
135+
# shell: bash
136+
# run: |
137+
# bash klusolve/ci/download_deps.sh
138+
139+
# - name: Set up MinGW
140+
# uses: egor-tensin/setup-mingw@v2
141+
# if: matrix.arch == 'x86' && matrix.compiler == 'gcc'
142+
# with:
143+
# platform: x86
144+
# version: 12.2.0
142145

143-
- name: Build
144-
shell: cmd
145-
run: |
146-
cd klusolve
147-
ci\build_win.bat
148-
149-
- name: Pack
150-
shell: bash
151-
run: |
152-
cd klusolve
153-
bash ci/pack.sh
154-
155-
- name: 'Upload artifacts'
156-
uses: "actions/upload-artifact@v4"
157-
#if: github.event_name == 'release' && github.event.action == 'created'
158-
with:
159-
name: 'development-build-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.compiler }}'
160-
path: '${{ github.workspace }}/klusolve/release/*.zip'
161-
162-
merge:
163-
runs-on: ubuntu-latest
164-
needs: [build_linux, build_macos, build_windows]
165-
steps:
166-
- name: Merge Artifacts
167-
uses: actions/upload-artifact/merge@v4
168-
with:
169-
name: development-build
170-
pattern: development-build-*
146+
# - name: Build
147+
# shell: cmd
148+
# run: |
149+
# cd klusolve
150+
# ci\build_win.bat
151+
152+
# - name: Pack
153+
# shell: bash
154+
# run: |
155+
# cd klusolve
156+
# bash ci/pack.sh
157+
158+
# - name: 'Upload artifacts'
159+
# uses: "actions/upload-artifact@v4"
160+
# #if: github.event_name == 'release' && github.event.action == 'created'
161+
# with:
162+
# name: 'development-build-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.compiler }}'
163+
# path: '${{ github.workspace }}/klusolve/release/*.zip'
164+
165+
# merge:
166+
# runs-on: ubuntu-latest
167+
# needs: [build_linux, build_macos, build_windows]
168+
# steps:
169+
# - name: Merge Artifacts
170+
# uses: actions/upload-artifact/merge@v4
171+
# with:
172+
# name: development-build
173+
# pattern: development-build-*

0 commit comments

Comments
 (0)