| @@ -26,7 +26,7 @@ jobs: | |||||
| echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports bionic-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-arm64.list | echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports bionic-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-arm64.list | ||||
| echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports bionic-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-arm64.list | echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports bionic-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-arm64.list | ||||
| sudo apt-get update -qq | sudo apt-get update -qq | ||||
| sudo apt-get install -yq g++-aarch64-linux-gnu libasound2-dev:arm64 libcairo2-dev:arm64 libgl1-mesa-dev:arm64 liblo-dev:arm64 libpulse-dev:arm64 libx11-dev:arm64 libxcursor-dev:arm64 libxext-dev:arm64 libxrandr-dev:arm64 qemu-user-static | |||||
| sudo apt-get install -yq g++-aarch64-linux-gnu libasound2-dev:arm64 libcairo2-dev:arm64 libgl1-mesa-dev:arm64 liblo-dev:arm64 libpulse-dev:arm64 libx11-dev:arm64 libxcursor-dev:arm64 libxext-dev:arm64 libxrandr-dev:arm64 qemu-user-static xvfb | |||||
| # extra for vcv deps | # extra for vcv deps | ||||
| sudo apt-get install -yq libxi-dev:arm64 libxinerama-dev:arm64 | sudo apt-get install -yq libxi-dev:arm64 libxinerama-dev:arm64 | ||||
| # fix broken Ubuntu packages missing pkg-config file in multi-arch package | # fix broken Ubuntu packages missing pkg-config file in multi-arch package | ||||
| @@ -41,7 +41,7 @@ jobs: | |||||
| LDFLAGS: -static-libgcc -static-libstdc++ | LDFLAGS: -static-libgcc -static-libstdc++ | ||||
| run: | | run: | | ||||
| make features | make features | ||||
| make WITH_LTO=true -j $(nproc) | |||||
| xvfb-run make WITH_LTO=true -j $(nproc) | |||||
| - name: Set sha8 | - name: Set sha8 | ||||
| id: slug | id: slug | ||||
| run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | ||||
| @@ -68,7 +68,7 @@ jobs: | |||||
| echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports bionic-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-armhf.list | echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports bionic-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-armhf.list | ||||
| echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports bionic-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-armhf.list | echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports bionic-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-armhf.list | ||||
| sudo apt-get update -qq | sudo apt-get update -qq | ||||
| sudo apt-get install -yq g++-arm-linux-gnueabihf libasound2-dev:armhf libcairo2-dev:armhf libgl1-mesa-dev:armhf liblo-dev:armhf libpulse-dev:armhf libx11-dev:armhf libxcursor-dev:armhf libxext-dev:armhf libxrandr-dev:armhf qemu-user-static | |||||
| sudo apt-get install -yq g++-arm-linux-gnueabihf libasound2-dev:armhf libcairo2-dev:armhf libgl1-mesa-dev:armhf liblo-dev:armhf libpulse-dev:armhf libx11-dev:armhf libxcursor-dev:armhf libxext-dev:armhf libxrandr-dev:armhf qemu-user-static xvfb | |||||
| # extra for vcv deps | # extra for vcv deps | ||||
| sudo apt-get install -yq libxi-dev:armhf libxinerama-dev:armhf | sudo apt-get install -yq libxi-dev:armhf libxinerama-dev:armhf | ||||
| # fix broken Ubuntu packages missing pkg-config file in multi-arch package | # fix broken Ubuntu packages missing pkg-config file in multi-arch package | ||||
| @@ -83,7 +83,7 @@ jobs: | |||||
| LDFLAGS: -static-libgcc -static-libstdc++ | LDFLAGS: -static-libgcc -static-libstdc++ | ||||
| run: | | run: | | ||||
| make features | make features | ||||
| make WITH_LTO=true -j $(nproc) | |||||
| xvfb-run make WITH_LTO=true -j $(nproc) | |||||
| - name: Set sha8 | - name: Set sha8 | ||||
| id: slug | id: slug | ||||
| run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | ||||
| @@ -106,7 +106,7 @@ jobs: | |||||
| run: | | run: | | ||||
| sudo dpkg --add-architecture i386 | sudo dpkg --add-architecture i386 | ||||
| sudo apt-get update -qq | sudo apt-get update -qq | ||||
| sudo apt-get install -yq g++-i686-linux-gnu libasound2-dev:i386 libcairo2-dev:i386 libgl1-mesa-dev:i386 liblo-dev:i386 libpulse-dev:i386 libx11-dev:i386 libxcursor-dev:i386 libxext-dev:i386 libxrandr-dev:i386 | |||||
| sudo apt-get install -yq g++-i686-linux-gnu libasound2-dev:i386 libcairo2-dev:i386 libgl1-mesa-dev:i386 liblo-dev:i386 libpulse-dev:i386 libx11-dev:i386 libxcursor-dev:i386 libxext-dev:i386 libxrandr-dev:i386 xvfb | |||||
| # extra for vcv deps | # extra for vcv deps | ||||
| sudo apt-get install -yq libxi-dev:i386 libxinerama-dev:i386 | sudo apt-get install -yq libxi-dev:i386 libxinerama-dev:i386 | ||||
| - name: Build linux x86 | - name: Build linux x86 | ||||
| @@ -119,7 +119,7 @@ jobs: | |||||
| PKG_CONFIG_PATH: /usr/lib/i386-linux-gnu/pkgconfig | PKG_CONFIG_PATH: /usr/lib/i386-linux-gnu/pkgconfig | ||||
| run: | | run: | | ||||
| make features | make features | ||||
| make WITH_LTO=true -j $(nproc) | |||||
| xvfb-run make WITH_LTO=true -j $(nproc) | |||||
| - name: Set sha8 | - name: Set sha8 | ||||
| id: slug | id: slug | ||||
| run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | ||||
| @@ -141,7 +141,7 @@ jobs: | |||||
| - name: Set up dependencies | - name: Set up dependencies | ||||
| run: | | run: | | ||||
| sudo apt-get update -qq | sudo apt-get update -qq | ||||
| sudo apt-get install -yq libasound2-dev libcairo2-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev | |||||
| sudo apt-get install -yq libasound2-dev libcairo2-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev xvfb | |||||
| # extra for vcv deps | # extra for vcv deps | ||||
| sudo apt-get install -yq libxi-dev libxinerama-dev | sudo apt-get install -yq libxi-dev libxinerama-dev | ||||
| - name: Build linux x86_64 | - name: Build linux x86_64 | ||||
| @@ -149,7 +149,7 @@ jobs: | |||||
| LDFLAGS: -static-libgcc -static-libstdc++ | LDFLAGS: -static-libgcc -static-libstdc++ | ||||
| run: | | run: | | ||||
| make features | make features | ||||
| make WITH_LTO=true -j $(nproc) | |||||
| xvfb-run make WITH_LTO=true -j $(nproc) | |||||
| - name: Set sha8 | - name: Set sha8 | ||||
| id: slug | id: slug | ||||
| run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | ||||
| @@ -171,7 +171,7 @@ jobs: | |||||
| - name: Set up dependencies | - name: Set up dependencies | ||||
| run: | | run: | | ||||
| sudo apt-get update -qq | sudo apt-get update -qq | ||||
| sudo apt-get install -yq libasound2-dev libcairo2-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev | |||||
| sudo apt-get install -yq libasound2-dev libcairo2-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev xvfb | |||||
| # extra for vcv deps | # extra for vcv deps | ||||
| sudo apt-get install -yq libxi-dev libxinerama-dev | sudo apt-get install -yq libxi-dev libxinerama-dev | ||||
| - name: Build linux x86_64 (debug) | - name: Build linux x86_64 (debug) | ||||
| @@ -179,7 +179,7 @@ jobs: | |||||
| LDFLAGS: -static-libgcc -static-libstdc++ | LDFLAGS: -static-libgcc -static-libstdc++ | ||||
| run: | | run: | | ||||
| make features | make features | ||||
| make DEBUG=true -j $(nproc) | |||||
| xvfb-run make DEBUG=true -j $(nproc) | |||||
| - name: Set sha8 | - name: Set sha8 | ||||
| id: slug | id: slug | ||||
| run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | ||||
| @@ -230,7 +230,7 @@ jobs: | |||||
| run: | | run: | | ||||
| sudo dpkg --add-architecture i386 | sudo dpkg --add-architecture i386 | ||||
| sudo apt-get update -qq | sudo apt-get update -qq | ||||
| sudo apt-get install -yq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable:i386 | |||||
| sudo apt-get install -yq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable:i386 xvfb | |||||
| - name: Build win32 cross-compiled | - name: Build win32 cross-compiled | ||||
| env: | env: | ||||
| CC: i686-w64-mingw32-gcc | CC: i686-w64-mingw32-gcc | ||||
| @@ -240,7 +240,7 @@ jobs: | |||||
| WINEDEBUG: "-all" | WINEDEBUG: "-all" | ||||
| run: | | run: | | ||||
| make features | make features | ||||
| make WITH_LTO=true -j $(nproc) | |||||
| xvfb-run make WITH_LTO=true -j $(nproc) | |||||
| - name: Set sha8 | - name: Set sha8 | ||||
| id: slug | id: slug | ||||
| run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | ||||
| @@ -262,7 +262,7 @@ jobs: | |||||
| - name: Set up dependencies | - name: Set up dependencies | ||||
| run: | | run: | | ||||
| sudo apt-get update -qq | sudo apt-get update -qq | ||||
| sudo apt-get install -yq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 wine-stable | |||||
| sudo apt-get install -yq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 wine-stable xvfb | |||||
| - name: Build win64 cross-compiled | - name: Build win64 cross-compiled | ||||
| env: | env: | ||||
| CC: x86_64-w64-mingw32-gcc | CC: x86_64-w64-mingw32-gcc | ||||
| @@ -272,7 +272,7 @@ jobs: | |||||
| WINEDEBUG: "-all" | WINEDEBUG: "-all" | ||||
| run: | | run: | | ||||
| make features | make features | ||||
| make WITH_LTO=true -j $(nproc) | |||||
| xvfb-run make WITH_LTO=true -j $(nproc) | |||||
| - name: Set sha8 | - name: Set sha8 | ||||
| id: slug | id: slug | ||||
| run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)" | ||||
| @@ -298,7 +298,7 @@ jobs: | |||||
| sudo dpkg -i kxstudio-repos_10.0.3_all.deb | sudo dpkg -i kxstudio-repos_10.0.3_all.deb | ||||
| sudo apt-get update -qq | sudo apt-get update -qq | ||||
| # build-deps | # 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 | |||||
| sudo apt-get install -yq libasound2-dev libcairo2-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev xvfb | |||||
| # extra for vcv deps | # extra for vcv deps | ||||
| sudo apt-get install -yq libxi-dev libxinerama-dev | sudo apt-get install -yq libxi-dev libxinerama-dev | ||||
| # runtime testing | # runtime testing | ||||
| @@ -310,7 +310,7 @@ jobs: | |||||
| LDFLAGS: -static-libgcc -static-libstdc++ | LDFLAGS: -static-libgcc -static-libstdc++ | ||||
| run: | | run: | | ||||
| make features | make features | ||||
| make NOOPT=true SKIP_STRIPPING=true -j $(nproc) | |||||
| xvfb-run make NOOPT=true SKIP_STRIPPING=true -j $(nproc) | |||||
| - name: Validate LV2 ttl syntax | - name: Validate LV2 ttl syntax | ||||
| run: | | run: | | ||||
| lv2_validate \ | lv2_validate \ | ||||
| @@ -327,56 +327,34 @@ jobs: | |||||
| /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 \ | /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} | ${LV2_PATH} | ||||
| lv2lint -s lv2_generate_ttl -l ld-linux-x86-64.so.2 -M nopack $(lv2ls) | lv2lint -s lv2_generate_ttl -l ld-linux-x86-64.so.2 -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=no \ | |||||
| --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=no \ | |||||
| --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 | |||||
| - name: Test LV2 plugin | |||||
| run: | | run: | | ||||
| export LV2_PATH=/tmp/lv2-path | export LV2_PATH=/tmp/lv2-path | ||||
| for p in $(lv2ls); do \ | for p in $(lv2ls); do \ | ||||
| env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ | env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ | ||||
| valgrind \ | |||||
| xvfb-run valgrind \ | |||||
| --error-exitcode=255 \ | --error-exitcode=255 \ | ||||
| --leak-check=no \ | --leak-check=no \ | ||||
| --track-origins=yes \ | --track-origins=yes \ | ||||
| --suppressions=./dpf/utils/valgrind-dpf.supp \ | --suppressions=./dpf/utils/valgrind-dpf.supp \ | ||||
| /usr/lib/carla/carla-bridge-native lv2 "" ${p} 1>/dev/null; \ | /usr/lib/carla/carla-bridge-native lv2 "" ${p} 1>/dev/null; \ | ||||
| done | done | ||||
| - name: Test VST2 plugins | |||||
| - name: Test VST2 plugin | |||||
| run: | | run: | | ||||
| for p in $(ls bin/ | grep vst.so); do \ | for p in $(ls bin/ | grep vst.so); do \ | ||||
| env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ | env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ | ||||
| valgrind \ | |||||
| xvfb-run valgrind \ | |||||
| --error-exitcode=255 \ | --error-exitcode=255 \ | ||||
| --leak-check=no \ | --leak-check=no \ | ||||
| --track-origins=yes \ | --track-origins=yes \ | ||||
| --suppressions=./dpf/utils/valgrind-dpf.supp \ | --suppressions=./dpf/utils/valgrind-dpf.supp \ | ||||
| /usr/lib/carla/carla-bridge-native vst2 ./bin/${p} "" 1>/dev/null; \ | /usr/lib/carla/carla-bridge-native vst2 ./bin/${p} "" 1>/dev/null; \ | ||||
| done | done | ||||
| - name: Test VST3 plugins | |||||
| - name: Test VST3 plugin | |||||
| run: | | run: | | ||||
| for p in $(ls bin/ | grep vst3); do \ | for p in $(ls bin/ | grep vst3); do \ | ||||
| env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ | env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \ | ||||
| valgrind \ | |||||
| xvfb-run valgrind \ | |||||
| --error-exitcode=255 \ | --error-exitcode=255 \ | ||||
| --leak-check=no \ | --leak-check=no \ | ||||
| --track-origins=yes \ | --track-origins=yes \ | ||||