@@ -17,23 +17,41 @@ jobs:
17
17
matrix :
18
18
compiler : [gcc, clang]
19
19
config :
20
- - {name: "Default", cmake_args: ""}
20
+ - name : " Default"
21
+ cmake_args : " -DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"
21
22
- name : " ALSA Only"
22
23
cmake_args : >-
23
24
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
24
25
-DMINIAUDIO_ENABLE_ALSA=ON
26
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
27
+ -DMINIAUDIO_BUILD_TESTS=ON
25
28
- name : " PulseAudio Only"
26
29
cmake_args : >-
27
30
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
28
31
-DMINIAUDIO_ENABLE_PULSEAUDIO=ON
32
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
33
+ -DMINIAUDIO_BUILD_TESTS=ON
29
34
- name : " JACK Only"
30
35
cmake_args : >-
31
36
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
32
37
-DMINIAUDIO_ENABLE_JACK=ON
33
- - {name: "No Device IO", cmake_args: "-DMINIAUDIO_NO_DEVICEIO=ON"}
34
- - {name: "Force C++", cmake_args: "-DMINIAUDIO_FORCE_CXX=ON"}
38
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
39
+ -DMINIAUDIO_BUILD_TESTS=ON
40
+ - name : " No Device IO"
41
+ cmake_args : >-
42
+ -DMINIAUDIO_NO_DEVICEIO=ON
43
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
44
+ -DMINIAUDIO_BUILD_TESTS=ON
45
+ - name : " Force C++"
46
+ cmake_args : >-
47
+ -DMINIAUDIO_FORCE_CXX=ON
48
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
49
+ -DMINIAUDIO_BUILD_TESTS=ON
35
50
- name : " Force C89"
36
- cmake_args : " -DMINIAUDIO_FORCE_C89=ON"
51
+ cmake_args : >-
52
+ -DMINIAUDIO_FORCE_C89=ON
53
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
54
+ -DMINIAUDIO_BUILD_TESTS=ON
37
55
continue_on_error : true
38
56
39
57
steps :
@@ -69,21 +87,36 @@ jobs:
69
87
matrix :
70
88
compiler : [msvc, mingw]
71
89
config :
72
- - {name: "Default", cmake_args: ""}
90
+ - name : " Default"
91
+ cmake_args : " -DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"
73
92
- name : " WASAPI Only"
74
93
cmake_args : >-
75
94
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
76
95
-DMINIAUDIO_ENABLE_WASAPI=ON
96
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
97
+ -DMINIAUDIO_BUILD_TESTS=ON
77
98
- name : " DirectSound Only"
78
99
cmake_args : >-
79
100
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
80
101
-DMINIAUDIO_ENABLE_DSOUND=ON
102
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
103
+ -DMINIAUDIO_BUILD_TESTS=ON
81
104
- name : " WinMM Only"
82
105
cmake_args : >-
83
106
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
84
107
-DMINIAUDIO_ENABLE_WINMM=ON
85
- - {name: "No Device IO", cmake_args: "-DMINIAUDIO_NO_DEVICEIO=ON"}
86
- - {name: "Force C++", cmake_args: "-DMINIAUDIO_FORCE_CXX=ON"}
108
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
109
+ -DMINIAUDIO_BUILD_TESTS=ON
110
+ - name : " No Device IO"
111
+ cmake_args : >-
112
+ -DMINIAUDIO_NO_DEVICEIO=ON
113
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
114
+ -DMINIAUDIO_BUILD_TESTS=ON
115
+ - name : " Force C++"
116
+ cmake_args : >-
117
+ -DMINIAUDIO_FORCE_CXX=ON
118
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
119
+ -DMINIAUDIO_BUILD_TESTS=ON
87
120
88
121
steps :
89
122
- uses : actions/checkout@v4
@@ -127,15 +160,29 @@ jobs:
127
160
fail-fast : false
128
161
matrix :
129
162
config :
130
- - {name: "Default", cmake_args: ""}
163
+ - name : " Default"
164
+ cmake_args : " -DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"
131
165
- name : " CoreAudio Only"
132
166
cmake_args : >-
133
167
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
134
168
-DMINIAUDIO_ENABLE_COREAUDIO=ON
135
- - {name: "No Device IO", cmake_args: "-DMINIAUDIO_NO_DEVICEIO=ON"}
136
- - {name: "Force C++", cmake_args: "-DMINIAUDIO_FORCE_CXX=ON"}
169
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
170
+ -DMINIAUDIO_BUILD_TESTS=ON
171
+ - name : " No Device IO"
172
+ cmake_args : >-
173
+ -DMINIAUDIO_NO_DEVICEIO=ON
174
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
175
+ -DMINIAUDIO_BUILD_TESTS=ON
176
+ - name : " Force C++"
177
+ cmake_args : >-
178
+ -DMINIAUDIO_FORCE_CXX=ON
179
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
180
+ -DMINIAUDIO_BUILD_TESTS=ON
137
181
- name : " Force C89"
138
- cmake_args : " -DMINIAUDIO_FORCE_C89=ON"
182
+ cmake_args : >-
183
+ -DMINIAUDIO_FORCE_C89=ON
184
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
185
+ -DMINIAUDIO_BUILD_TESTS=ON
139
186
continue_on_error : true
140
187
141
188
steps :
@@ -154,12 +201,19 @@ jobs:
154
201
fail-fast : false
155
202
matrix :
156
203
config :
157
- - {name: "Default", cmake_args: ""}
204
+ - name : " Default"
205
+ cmake_args : " -DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"
158
206
- name : " WebAudio Only"
159
207
cmake_args : >-
160
208
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
161
209
-DMINIAUDIO_ENABLE_WEBAUDIO=ON
162
- - {name: "No Device IO", cmake_args: "-DMINIAUDIO_NO_DEVICEIO=ON"}
210
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
211
+ -DMINIAUDIO_BUILD_TESTS=ON
212
+ - name : " No Device IO"
213
+ cmake_args : >-
214
+ -DMINIAUDIO_NO_DEVICEIO=ON
215
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
216
+ -DMINIAUDIO_BUILD_TESTS=ON
163
217
164
218
steps :
165
219
- uses : actions/checkout@v4
@@ -183,15 +237,20 @@ jobs:
183
237
matrix :
184
238
arch : [arm64-v8a, armeabi-v7a, x86_64]
185
239
config :
186
- - {name: "Default", cmake_args: ""}
240
+ - name : " Default"
241
+ cmake_args : " -DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"
187
242
- name : " AAudio Only"
188
243
cmake_args : >-
189
244
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
190
245
-DMINIAUDIO_ENABLE_AAUDIO=ON
246
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
247
+ -DMINIAUDIO_BUILD_TESTS=ON
191
248
- name : " OpenSL Only"
192
249
cmake_args : >-
193
250
-DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
194
251
-DMINIAUDIO_ENABLE_OPENSL=ON
252
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
253
+ -DMINIAUDIO_BUILD_TESTS=ON
195
254
196
255
steps :
197
256
- uses : actions/checkout@v4
@@ -213,6 +272,120 @@ jobs:
213
272
- name : Build
214
273
run : cmake --build build --parallel $(nproc)
215
274
275
+ freebsd :
276
+ name : FreeBSD (${{ matrix.config.name }})
277
+ runs-on : ubuntu-latest
278
+ continue-on-error : true
279
+ strategy :
280
+ fail-fast : false
281
+ matrix :
282
+ config :
283
+ - {name: "Default", cmake_args: "-DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"}
284
+ - name : " OSS Only"
285
+ cmake_args : >-
286
+ -DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
287
+ -DMINIAUDIO_ENABLE_OSS=ON
288
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
289
+ -DMINIAUDIO_BUILD_TESTS=ON
290
+ - name : " No Device IO"
291
+ cmake_args : >-
292
+ -DMINIAUDIO_NO_DEVICEIO=ON
293
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
294
+ -DMINIAUDIO_BUILD_TESTS=ON
295
+
296
+ steps :
297
+ - uses : actions/checkout@v4
298
+
299
+ - name : Test on FreeBSD
300
+ uses : vmactions/freebsd-vm@v1
301
+ with :
302
+ usesh : true
303
+ prepare : |
304
+ pkg install -y cmake
305
+ run : |
306
+ cmake -B build ${{ matrix.config.cmake_args }}
307
+ cmake --build build --parallel $(sysctl -n hw.ncpu)
308
+
309
+ openbsd :
310
+ name : OpenBSD (${{ matrix.config.name }})
311
+ runs-on : ubuntu-latest
312
+ continue-on-error : true
313
+ strategy :
314
+ fail-fast : false
315
+ matrix :
316
+ config :
317
+ - {name: "Default", cmake_args: "-DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"}
318
+ - name : " sndio Only"
319
+ cmake_args : >-
320
+ -DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
321
+ -DMINIAUDIO_ENABLE_SNDIO=ON
322
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
323
+ -DMINIAUDIO_BUILD_TESTS=ON
324
+ - name : " OSS Only"
325
+ cmake_args : >-
326
+ -DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
327
+ -DMINIAUDIO_ENABLE_OSS=ON
328
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
329
+ -DMINIAUDIO_BUILD_TESTS=ON
330
+ - name : " No Device IO"
331
+ cmake_args : >-
332
+ -DMINIAUDIO_NO_DEVICEIO=ON
333
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
334
+ -DMINIAUDIO_BUILD_TESTS=ON
335
+
336
+ steps :
337
+ - uses : actions/checkout@v4
338
+
339
+ - name : Test on OpenBSD
340
+ uses : vmactions/openbsd-vm@v1
341
+ with :
342
+ usesh : true
343
+ prepare : |
344
+ pkg_add cmake
345
+ run : |
346
+ cmake -B build ${{ matrix.config.cmake_args }}
347
+ cmake --build build --parallel $(sysctl -n hw.ncpu)
348
+
349
+ netbsd :
350
+ name : NetBSD (${{ matrix.config.name }})
351
+ runs-on : ubuntu-latest
352
+ continue-on-error : true
353
+ strategy :
354
+ fail-fast : false
355
+ matrix :
356
+ config :
357
+ - {name: "Default", cmake_args: "-DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"}
358
+ - name : " audio4 Only"
359
+ cmake_args : >-
360
+ -DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
361
+ -DMINIAUDIO_ENABLE_AUDIO4=ON
362
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
363
+ -DMINIAUDIO_BUILD_TESTS=ON
364
+ - name : " OSS Only"
365
+ cmake_args : >-
366
+ -DMINIAUDIO_ENABLE_ONLY_SPECIFIC_BACKENDS=ON
367
+ -DMINIAUDIO_ENABLE_OSS=ON
368
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
369
+ -DMINIAUDIO_BUILD_TESTS=ON
370
+ - name : " No Device IO"
371
+ cmake_args : >-
372
+ -DMINIAUDIO_NO_DEVICEIO=ON
373
+ -DMINIAUDIO_BUILD_EXAMPLES=ON
374
+ -DMINIAUDIO_BUILD_TESTS=ON
375
+
376
+ steps :
377
+ - uses : actions/checkout@v4
378
+
379
+ - name : Test on NetBSD
380
+ uses : vmactions/netbsd-vm@v1
381
+ with :
382
+ usesh : true
383
+ prepare : |
384
+ /usr/sbin/pkg_add cmake
385
+ run : |
386
+ cmake -B build ${{ matrix.config.cmake_args }}
387
+ cmake --build build --parallel $(sysctl -n hw.ncpu)
388
+
216
389
additional-configs :
217
390
name : Additional Configurations (${{ matrix.config.name }})
218
391
runs-on : ubuntu-latest
@@ -234,6 +407,8 @@ jobs:
234
407
- {name: "No MP3", cmake_args: "-DMINIAUDIO_NO_MP3=ON"}
235
408
- {name: "Use stdint", cmake_args: "-DMINIAUDIO_USE_STDINT=ON"}
236
409
- {name: "Debug Output", cmake_args: "-DMINIAUDIO_DEBUG_OUTPUT=ON"}
410
+ - name : " Examples and Tests"
411
+ cmake_args : " -DMINIAUDIO_BUILD_EXAMPLES=ON -DMINIAUDIO_BUILD_TESTS=ON"
237
412
238
413
steps :
239
414
- uses : actions/checkout@v4
0 commit comments