Add plugin validation step
Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
parent
f5a5adfeca
commit
5e41f20fd0
|
@ -235,3 +235,89 @@ jobs:
|
|||
bin/*
|
||||
!bin/*-ladspa.dll
|
||||
!bin/*-dssi.dll
|
||||
|
||||
plugin-validation:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: Set up dependencies
|
||||
run: |
|
||||
# custom repos
|
||||
wget https://launchpad.net/~kxstudio-debian/+archive/kxstudio/+files/kxstudio-repos_10.0.3_all.deb
|
||||
sudo dpkg -i kxstudio-repos_10.0.3_all.deb
|
||||
sudo apt-get update -qq
|
||||
# build-deps
|
||||
sudo apt-get install -yq libasound2-dev libcairo2-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev
|
||||
# runtime testing
|
||||
sudo apt-get install -yq carla-git lilv-utils lv2-dev lv2lint valgrind
|
||||
- name: Build plugins
|
||||
env:
|
||||
CFLAGS: -g
|
||||
CXXFLAGS: -g
|
||||
LDFLAGS: -static-libgcc -static-libstdc++
|
||||
run: |
|
||||
make features
|
||||
make NOOPT=true SKIP_STRIPPING=true -j $(nproc)
|
||||
- name: Validate LV2 ttl syntax
|
||||
run: |
|
||||
lv2_validate \
|
||||
/usr/lib/lv2/mod.lv2/*.ttl \
|
||||
/usr/lib/lv2/kx-meta/*.ttl \
|
||||
/usr/lib/lv2/kx-control-input-port-change-request.lv2/*.ttl \
|
||||
/usr/lib/lv2/kx-programs.lv2/*.ttl \
|
||||
./bin/*.lv2/*.ttl
|
||||
- name: Validate LV2 metadata and binaries
|
||||
run: |
|
||||
export LV2_PATH=/tmp/lv2-path
|
||||
mkdir ${LV2_PATH}
|
||||
cp -r bin/*.lv2 \
|
||||
/usr/lib/lv2/{atom,buf-size,core,data-access,kx-control-input-port-change-request,kx-programs,instance-access,midi,parameters,port-groups,port-props,options,patch,presets,resize-port,state,time,ui,units,urid,worker}.lv2 \
|
||||
${LV2_PATH}
|
||||
lv2lint -s lv2_generate_ttl -M nopack $(lv2ls)
|
||||
- name: Test LADSPA plugins
|
||||
run: |
|
||||
for p in $(ls bin/ | grep ladspa.so); do \
|
||||
env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \
|
||||
valgrind \
|
||||
--error-exitcode=255 \
|
||||
--leak-check=full \
|
||||
--track-origins=yes \
|
||||
--suppressions=./dpf/utils/valgrind-dpf.supp \
|
||||
/usr/lib/carla/carla-bridge-native ladspa ./bin/${p} "" 1>/dev/null; \
|
||||
done
|
||||
- name: Test DSSI plugins
|
||||
run: |
|
||||
for p in $(ls bin/ | grep dssi.so); do \
|
||||
env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \
|
||||
valgrind \
|
||||
--error-exitcode=255 \
|
||||
--leak-check=full \
|
||||
--track-origins=yes \
|
||||
--suppressions=./dpf/utils/valgrind-dpf.supp \
|
||||
/usr/lib/carla/carla-bridge-native dssi ./bin/${p} "" 1>/dev/null; \
|
||||
done
|
||||
- name: Test LV2 plugins
|
||||
run: |
|
||||
export LV2_PATH=/tmp/lv2-path
|
||||
for p in $(lv2ls); do \
|
||||
env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \
|
||||
valgrind \
|
||||
--error-exitcode=255 \
|
||||
--leak-check=full \
|
||||
--track-origins=yes \
|
||||
--suppressions=./dpf/utils/valgrind-dpf.supp \
|
||||
/usr/lib/carla/carla-bridge-native lv2 "" ${p} 1>/dev/null; \
|
||||
done
|
||||
- name: Test VST2 plugins
|
||||
run: |
|
||||
for p in $(ls bin/ | grep vst.so); do \
|
||||
env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \
|
||||
valgrind \
|
||||
--error-exitcode=255 \
|
||||
--leak-check=full \
|
||||
--track-origins=yes \
|
||||
--suppressions=./dpf/utils/valgrind-dpf.supp \
|
||||
/usr/lib/carla/carla-bridge-native vst2 ./bin/${p} "" 1>/dev/null; \
|
||||
done
|
||||
|
|
2
dpf
2
dpf
|
@ -1 +1 @@
|
|||
Subproject commit 86a621bfd86922a49ce593fec2a618a1e0cc6ef3
|
||||
Subproject commit 03fb16c1bf53c8e5a29f6f07c6f63a9dd6670f51
|
Loading…
Reference in New Issue