15
15
linux-arm64 :
16
16
runs-on : ubuntu-20.04
17
17
steps :
18
- - uses : actions/checkout@v2
18
+ - uses : actions/checkout@v3
19
19
with :
20
20
submodules : recursive
21
21
- name : Fix GitHub's mess
@@ -44,17 +44,17 @@ jobs:
44
44
make WITH_LTO=true -j $(nproc)
45
45
- name : Set sha8
46
46
id : slug
47
- run : echo "::set-output name=sha8:: $(echo ${{ github.sha }} | cut -c1-8)"
48
- - uses : actions/upload-artifact@v2
47
+ run : echo "SHA8= $(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
48
+ - uses : actions/upload-artifact@v3
49
49
with :
50
- name : ${{ github.event.repository.name }}-linux-arm64-${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
50
+ name : ${{ github.event.repository.name }}-linux-arm64-${{ github.event.pull_request.number || env.SHA8 }}
51
51
path : |
52
52
bin/*
53
53
54
54
linux-armhf :
55
55
runs-on : ubuntu-20.04
56
56
steps :
57
- - uses : actions/checkout@v2
57
+ - uses : actions/checkout@v3
58
58
with :
59
59
submodules : recursive
60
60
- name : Fix GitHub's mess
@@ -83,17 +83,17 @@ jobs:
83
83
make WITH_LTO=true -j $(nproc)
84
84
- name : Set sha8
85
85
id : slug
86
- run : echo "::set-output name=sha8:: $(echo ${{ github.sha }} | cut -c1-8)"
87
- - uses : actions/upload-artifact@v2
86
+ run : echo "SHA8= $(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
87
+ - uses : actions/upload-artifact@v3
88
88
with :
89
- name : ${{ github.event.repository.name }}-linux-armhf-${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
89
+ name : ${{ github.event.repository.name }}-linux-armhf-${{ github.event.pull_request.number || env.SHA8 }}
90
90
path : |
91
91
bin/*
92
92
93
93
linux-i686 :
94
94
runs-on : ubuntu-20.04
95
95
steps :
96
- - uses : actions/checkout@v2
96
+ - uses : actions/checkout@v3
97
97
with :
98
98
submodules : recursive
99
99
- name : Fix GitHub's mess
@@ -120,17 +120,56 @@ jobs:
120
120
make WITH_LTO=true -j $(nproc)
121
121
- name : Set sha8
122
122
id : slug
123
- run : echo "::set-output name=sha8:: $(echo ${{ github.sha }} | cut -c1-8)"
124
- - uses : actions/upload-artifact@v2
123
+ run : echo "SHA8= $(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
124
+ - uses : actions/upload-artifact@v3
125
125
with :
126
- name : ${{ github.event.repository.name }}-linux-i686-${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
126
+ name : ${{ github.event.repository.name }}-linux-i686-${{ github.event.pull_request.number || env.SHA8 }}
127
+ path : |
128
+ bin/*
129
+
130
+ linux-riscv64 :
131
+ runs-on : ubuntu-20.04
132
+ steps :
133
+ - uses : actions/checkout@v3
134
+ with :
135
+ submodules : recursive
136
+ - name : Fix GitHub's mess
137
+ run : |
138
+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
139
+ sudo apt-get update -qq
140
+ sudo apt-get install -yqq --allow-downgrades libgd3/focal libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
141
+ sudo apt-get purge -yqq libclang* libgbm* libllvm* libmono* moby* mono* php* libgdiplus libpcre2-posix3 libzip4
142
+ - name : Set up dependencies
143
+ run : |
144
+ sudo dpkg --add-architecture riscv64
145
+ sudo sed -i "s/deb http/deb [arch=amd64] http/" /etc/apt/sources.list
146
+ echo "deb [arch=riscv64] http://ports.ubuntu.com/ubuntu-ports focal main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ports-riscv64.list
147
+ echo "deb [arch=riscv64] http://ports.ubuntu.com/ubuntu-ports focal-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-riscv64.list
148
+ echo "deb [arch=riscv64] http://ports.ubuntu.com/ubuntu-ports focal-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-riscv64.list
149
+ sudo apt-get update -qq
150
+ sudo apt-get install -yqq g++-riscv64-linux-gnu libasound2-dev:riscv64 libcairo2-dev:riscv64 libdbus-1-dev:riscv64 libgl1-mesa-dev:riscv64 libglapi-mesa:riscv64 libglvnd0:riscv64 liblo-dev:riscv64 libpulse-dev:riscv64 libx11-dev:riscv64 libxcursor-dev:riscv64 libxext-dev:riscv64 libxrandr-dev:riscv64 qemu-user-static
151
+ - name : Build linux riscv64 cross-compiled
152
+ env :
153
+ CC : riscv64-linux-gnu-gcc
154
+ CXX : riscv64-linux-gnu-g++
155
+ LDFLAGS : -static-libgcc -static-libstdc++
156
+ PKG_CONFIG_PATH : /usr/lib/riscv64-linux-gnu/pkgconfig
157
+ run : |
158
+ make features
159
+ make WITH_LTO=true -j $(nproc)
160
+ - name : Set sha8
161
+ id : slug
162
+ run : echo "SHA8=$(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
163
+ - uses : actions/upload-artifact@v3
164
+ with :
165
+ name : ${{ github.event.repository.name }}-linux-riscv64-${{ github.event.pull_request.number || env.SHA8 }}
127
166
path : |
128
167
bin/*
129
168
130
169
linux-x86_64 :
131
170
runs-on : ubuntu-20.04
132
171
steps :
133
- - uses : actions/checkout@v2
172
+ - uses : actions/checkout@v3
134
173
with :
135
174
submodules : recursive
136
175
- name : Set up dependencies
@@ -145,23 +184,19 @@ jobs:
145
184
make WITH_LTO=true -j $(nproc)
146
185
- name : Set sha8
147
186
id : slug
148
- run : echo "::set-output name=sha8:: $(echo ${{ github.sha }} | cut -c1-8)"
149
- - uses : actions/upload-artifact@v2
187
+ run : echo "SHA8= $(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
188
+ - uses : actions/upload-artifact@v3
150
189
with :
151
- name : ${{ github.event.repository.name }}-linux-x86_64-${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
190
+ name : ${{ github.event.repository.name }}-linux-x86_64-${{ github.event.pull_request.number || env.SHA8 }}
152
191
path : |
153
192
bin/*
154
193
155
194
macos-universal :
156
- runs-on : macos-10.15
195
+ runs-on : macos-11
157
196
steps :
158
- - uses : actions/checkout@v2
197
+ - uses : actions/checkout@v3
159
198
with :
160
199
submodules : recursive
161
- - name : Fix up Xcode
162
- run : |
163
- sudo rm -Rf /Library/Developer/CommandLineTools/SDKs/*
164
- sudo xcode-select -s "/Applications/Xcode_12.3.app"
165
200
- name : Build macOS universal
166
201
env :
167
202
CFLAGS : -arch x86_64 -arch arm64 -DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_12 -mmacosx-version-min=10.12 -mtune=generic -msse -msse2
@@ -173,10 +208,10 @@ jobs:
173
208
./dpf/utils/package-osx-bundles.sh
174
209
- name : Set sha8
175
210
id : slug
176
- run : echo "::set-output name=sha8:: $(echo ${{ github.sha }} | cut -c1-8)"
177
- - uses : actions/upload-artifact@v2
211
+ run : echo "SHA8= $(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
212
+ - uses : actions/upload-artifact@v3
178
213
with :
179
- name : ${{ github.event.repository.name }}-macOS-universal-${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
214
+ name : ${{ github.event.repository.name }}-macOS-universal-${{ github.event.pull_request.number || env.SHA8 }}
180
215
path : |
181
216
*-macOS.pkg
182
217
bin/*
@@ -189,7 +224,7 @@ jobs:
189
224
win32 :
190
225
runs-on : ubuntu-20.04
191
226
steps :
192
- - uses : actions/checkout@v2
227
+ - uses : actions/checkout@v3
193
228
with :
194
229
submodules : recursive
195
230
- name : Fix GitHub's mess
@@ -215,10 +250,10 @@ jobs:
215
250
make WITH_LTO=true -j $(nproc)
216
251
- name : Set sha8
217
252
id : slug
218
- run : echo "::set-output name=sha8:: $(echo ${{ github.sha }} | cut -c1-8)"
219
- - uses : actions/upload-artifact@v2
253
+ run : echo "SHA8= $(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
254
+ - uses : actions/upload-artifact@v3
220
255
with :
221
- name : ${{ github.event.repository.name }}-win32-${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
256
+ name : ${{ github.event.repository.name }}-win32-${{ github.event.pull_request.number || env.SHA8 }}
222
257
path : |
223
258
bin/*
224
259
!bin/*-ladspa.dll
@@ -227,7 +262,7 @@ jobs:
227
262
win64 :
228
263
runs-on : ubuntu-20.04
229
264
steps :
230
- - uses : actions/checkout@v2
265
+ - uses : actions/checkout@v3
231
266
with :
232
267
submodules : recursive
233
268
- name : Fix GitHub's mess
@@ -252,10 +287,10 @@ jobs:
252
287
make WITH_LTO=true -j $(nproc)
253
288
- name : Set sha8
254
289
id : slug
255
- run : echo "::set-output name=sha8:: $(echo ${{ github.sha }} | cut -c1-8)"
256
- - uses : actions/upload-artifact@v2
290
+ run : echo "SHA8= $(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
291
+ - uses : actions/upload-artifact@v3
257
292
with :
258
- name : ${{ github.event.repository.name }}-win64-${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
293
+ name : ${{ github.event.repository.name }}-win64-${{ github.event.pull_request.number || env.SHA8 }}
259
294
path : |
260
295
bin/*
261
296
!bin/*-ladspa.dll
@@ -264,23 +299,23 @@ jobs:
264
299
plugin-validation :
265
300
runs-on : ubuntu-20.04
266
301
steps :
267
- - uses : actions/checkout@v2
302
+ - uses : actions/checkout@v3
268
303
with :
269
304
submodules : recursive
270
305
- name : Set up dependencies
271
306
run : |
272
307
# custom repos
273
- wget https://launchpad.net/~kxstudio-debian/+archive/kxstudio/+files/kxstudio-repos_10.0.3_all .deb
274
- sudo dpkg -i kxstudio-repos_10.0.3_all .deb
308
+ wget https://launchpad.net/~kxstudio-debian/+archive/kxstudio/+files/kxstudio-repos_11.1.0_all .deb
309
+ sudo dpkg -i kxstudio-repos_11.1.0_all .deb
275
310
sudo apt-get update -qq
276
311
# build-deps
277
312
sudo apt-get install -yqq libasound2-dev libcairo2-dev libdbus-1-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev
278
313
# runtime testing
279
- sudo apt-get install -yqq carla-git lilv-utils lv2-dev lv2lint valgrind
314
+ sudo apt-get install -yqq carla-git lilv-utils lv2-dev lv2lint kxstudio-lv2-extensions mod-lv2-extensions valgrind xvfb
280
315
- name : Build plugins
281
316
env :
282
317
CFLAGS : -g
283
- CXXFLAGS : -g -DDPF_ABORT_ON_ERROR
318
+ CXXFLAGS : -g -DDPF_ABORT_ON_ERROR -DDPF_RUNTIME_TESTING
284
319
LDFLAGS : -static-libgcc -static-libstdc++
285
320
run : |
286
321
make features
@@ -357,3 +392,14 @@ jobs:
357
392
--suppressions=./dpf/utils/valgrind-dpf.supp \
358
393
/usr/lib/carla/carla-bridge-native vst3 ./bin/${p} "" 1>/dev/null; \
359
394
done
395
+ - name : Test CLAP plugins
396
+ run : |
397
+ for p in $(ls bin/ | grep clap); do \
398
+ env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \
399
+ valgrind \
400
+ --error-exitcode=255 \
401
+ --leak-check=full \
402
+ --track-origins=yes \
403
+ --suppressions=./dpf/utils/valgrind-dpf.supp \
404
+ /usr/lib/carla/carla-bridge-native clap ./bin/${p} "" 1>/dev/null; \
405
+ done
0 commit comments