Skip to content

Commit ff37d11

Browse files
CamilleScholtzMaxKellermann
authored andcommitted
Workflow fixes for macOS
1 parent 509786c commit ff37d11

File tree

1 file changed

+73
-28
lines changed

1 file changed

+73
-28
lines changed

.github/workflows/build.yml

Lines changed: 73 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -151,54 +151,99 @@ jobs:
151151
run: meson test -C output/mini
152152

153153
build-macos:
154-
runs-on: macos-latest
154+
strategy:
155+
matrix:
156+
compiler: [clang]
157+
include:
158+
- compiler: clang
159+
os: macos-latest
160+
cc: clang
161+
cxx: clang++
162+
brew_packages: >
163+
meson ninja
164+
ccache
165+
fmt
166+
googletest
167+
icu4c
168+
ffmpeg
169+
libnfs
170+
libupnp
171+
libid3tag
172+
chromaprint
173+
libsamplerate
174+
libsoxr
175+
flac
176+
opus
177+
libvorbis
178+
faad2
179+
wavpack
180+
libmpdclient
181+
meson_options: --force-fallback-for=fmt,gtest
182+
183+
runs-on: ${{ matrix.os }}
184+
185+
env:
186+
CC: ccache ${{ matrix.cc }}
187+
CXX: ccache ${{ matrix.cxx }}
188+
155189
steps:
156190
- id: checkout
157191
uses: actions/checkout@v4
158192

159-
- uses: actions/setup-python@v5
160-
with:
161-
python-version: 3.x
162-
163193
- name: Install dependencies
164194
run: |
195+
brew update
165196
brew install \
166-
meson ninja \
167-
ccache \
168-
fmt \
169-
googletest \
170-
icu4c \
171-
ffmpeg \
172-
libnfs \
173-
libupnp \
174-
libid3tag \
175-
chromaprint \
176-
libsamplerate \
177-
libsoxr \
178-
flac \
179-
opus \
180-
libvorbis \
181-
faad2 \
182-
wavpack \
183-
libmpdclient
197+
${{ matrix.brew_packages }}
184198
185199
- id: cache-ccache
186-
uses: hendrikmuhs/ccache-action@v1
200+
uses: hendrikmuhs/ccache-action@v1.2
187201
with:
188-
key: macos
202+
key: ${{ matrix.compiler }}
189203

190204
- name: Configure
191205
run: |
192206
meson setup \
193207
-Ddocumentation=disabled \
194208
-Dtest=true \
195-
output
209+
-Dpcre=enabled \
210+
211+
--wrap-mode nofallback \
212+
${{ matrix.meson_options }} \
213+
output/full
196214
197215
- name: Build
198-
run: meson compile -C output --verbose
216+
run: meson compile -C output/full --verbose
199217

200218
- name: Unit Tests
201-
run: meson test -C output
219+
run: meson test -C output/full
220+
221+
- name: Configure Mini
222+
run: |
223+
meson setup \
224+
-Dbuildtype=minsize \
225+
-Dauto_features=disabled \
226+
-Dtest=true \
227+
-Ddaemon=false \
228+
-Dinotify=false -Depoll=false -Deventfd=false \
229+
-Dsignalfd=false \
230+
-Dtcp=false \
231+
-Ddsd=false \
232+
-Ddatabase=false \
233+
-Dneighbor=false \
234+
-Dcue=false \
235+
-Dfifo=false \
236+
-Dhttpd=false -Dpipe=false -Drecorder=false \
237+
-Dsnapcast=false \
238+
--wrap-mode nofallback \
239+
${{ matrix.meson_options }} \
240+
output/mini
241+
242+
- name: Build Mini
243+
run: meson compile -C output/mini --verbose
244+
245+
- name: Unit Tests Mini
246+
run: meson test -C output/mini
202247

203248
build-msys2:
204249
strategy:

0 commit comments

Comments
 (0)