1515 linux-arm64 :
1616 runs-on : ubuntu-20.04
1717 steps :
18- - uses : actions/checkout@v2
18+ - uses : actions/checkout@v3
1919 with :
2020 submodules : recursive
2121 - name : Fix GitHub's mess
@@ -44,17 +44,17 @@ jobs:
4444 make WITH_LTO=true -j $(nproc)
4545 - name : Set sha8
4646 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
4949 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 }}
5151 path : |
5252 bin/*
5353
5454 linux-armhf :
5555 runs-on : ubuntu-20.04
5656 steps :
57- - uses : actions/checkout@v2
57+ - uses : actions/checkout@v3
5858 with :
5959 submodules : recursive
6060 - name : Fix GitHub's mess
@@ -83,17 +83,17 @@ jobs:
8383 make WITH_LTO=true -j $(nproc)
8484 - name : Set sha8
8585 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
8888 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 }}
9090 path : |
9191 bin/*
9292
9393 linux-i686 :
9494 runs-on : ubuntu-20.04
9595 steps :
96- - uses : actions/checkout@v2
96+ - uses : actions/checkout@v3
9797 with :
9898 submodules : recursive
9999 - name : Fix GitHub's mess
@@ -120,17 +120,56 @@ jobs:
120120 make WITH_LTO=true -j $(nproc)
121121 - name : Set sha8
122122 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
125125 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 }}
127166 path : |
128167 bin/*
129168
130169 linux-x86_64 :
131170 runs-on : ubuntu-20.04
132171 steps :
133- - uses : actions/checkout@v2
172+ - uses : actions/checkout@v3
134173 with :
135174 submodules : recursive
136175 - name : Set up dependencies
@@ -145,23 +184,19 @@ jobs:
145184 make WITH_LTO=true -j $(nproc)
146185 - name : Set sha8
147186 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
150189 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 }}
152191 path : |
153192 bin/*
154193
155194 macos-universal :
156- runs-on : macos-10.15
195+ runs-on : macos-11
157196 steps :
158- - uses : actions/checkout@v2
197+ - uses : actions/checkout@v3
159198 with :
160199 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"
165200 - name : Build macOS universal
166201 env :
167202 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:
173208 ./dpf/utils/package-osx-bundles.sh
174209 - name : Set sha8
175210 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
178213 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 }}
180215 path : |
181216 *-macOS.pkg
182217 bin/*
@@ -189,7 +224,7 @@ jobs:
189224 win32 :
190225 runs-on : ubuntu-20.04
191226 steps :
192- - uses : actions/checkout@v2
227+ - uses : actions/checkout@v3
193228 with :
194229 submodules : recursive
195230 - name : Fix GitHub's mess
@@ -215,10 +250,10 @@ jobs:
215250 make WITH_LTO=true -j $(nproc)
216251 - name : Set sha8
217252 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
220255 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 }}
222257 path : |
223258 bin/*
224259 !bin/*-ladspa.dll
@@ -227,7 +262,7 @@ jobs:
227262 win64 :
228263 runs-on : ubuntu-20.04
229264 steps :
230- - uses : actions/checkout@v2
265+ - uses : actions/checkout@v3
231266 with :
232267 submodules : recursive
233268 - name : Fix GitHub's mess
@@ -252,10 +287,10 @@ jobs:
252287 make WITH_LTO=true -j $(nproc)
253288 - name : Set sha8
254289 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
257292 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 }}
259294 path : |
260295 bin/*
261296 !bin/*-ladspa.dll
@@ -264,23 +299,23 @@ jobs:
264299 plugin-validation :
265300 runs-on : ubuntu-20.04
266301 steps :
267- - uses : actions/checkout@v2
302+ - uses : actions/checkout@v3
268303 with :
269304 submodules : recursive
270305 - name : Set up dependencies
271306 run : |
272307 # 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
275310 sudo apt-get update -qq
276311 # build-deps
277312 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
278313 # 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
280315 - name : Build plugins
281316 env :
282317 CFLAGS : -g
283- CXXFLAGS : -g -DDPF_ABORT_ON_ERROR
318+ CXXFLAGS : -g -DDPF_ABORT_ON_ERROR -DDPF_RUNTIME_TESTING
284319 LDFLAGS : -static-libgcc -static-libstdc++
285320 run : |
286321 make features
@@ -357,3 +392,14 @@ jobs:
357392 --suppressions=./dpf/utils/valgrind-dpf.supp \
358393 /usr/lib/carla/carla-bridge-native vst3 ./bin/${p} "" 1>/dev/null; \
359394 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