1313
1414jobs :
1515 linux-arm64 :
16- runs-on : ubuntu-18 .04
16+ runs-on : ubuntu-20 .04
1717 steps :
1818 - uses : actions/checkout@v2
1919 with :
2020 submodules : recursive
21+ - name : Fix GitHub's mess
22+ run : |
23+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
24+ sudo apt-get update -qq
25+ sudo apt-get install -yqq --allow-downgrades libgd3/focal libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
26+ sudo apt-get purge -yqq libmono* moby* mono* php* libgdiplus libpcre2-posix3 libzip4
2127 - name : Set up dependencies
2228 run : |
2329 sudo dpkg --add-architecture arm64
2430 sudo sed -i "s/deb http/deb [arch=amd64] http/" /etc/apt/sources.list
25- echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports bionic main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ports-arm64.list
26- 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
27- 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
31+ echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports focal main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ports-arm64.list
32+ echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports focal -updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-arm64.list
33+ echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports focal -backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-arm64.list
2834 sudo apt-get update -qq
29- 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
30- # fix broken Ubuntu packages missing pkg-config file in multi-arch package
31- sudo apt-get install -yq libasound2-dev libgl1-mesa-dev liblo-dev libpulse-dev libxcursor-dev libxrandr-dev
32- sudo ln -s /usr/lib/aarch64-linux-gnu/liblo.so.7 /usr/lib/aarch64-linux-gnu/liblo.so
33- sudo cp /usr/lib/x86_64-linux-gnu/pkgconfig/liblo.pc /usr/lib/aarch64-linux-gnu/pkgconfig/liblo.pc
34- sudo sed -i "s/x86_64-linux-gnu/aarch64-linux-gnu/" /usr/lib/aarch64-linux-gnu/pkgconfig/liblo.pc
35+ sudo apt-get install -yqq g++-aarch64-linux-gnu libasound2-dev:arm64 libcairo2-dev:arm64 libdbus-1-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
3536 - name : Build linux arm64 cross-compiled
3637 env :
3738 CC : aarch64-linux-gnu-gcc
3839 CXX : aarch64-linux-gnu-g++
3940 LDFLAGS : -static-libgcc -static-libstdc++
41+ PKG_CONFIG_PATH : /usr/lib/aarch64-linux-gnu/pkgconfig
4042 run : |
4143 make features
42- make -j $(nproc)
44+ make WITH_LTO=true -j $(nproc)
4345 - name : Set sha8
4446 id : slug
4547 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -50,33 +52,35 @@ jobs:
5052 bin/*
5153
5254 linux-armhf :
53- runs-on : ubuntu-18 .04
55+ runs-on : ubuntu-20 .04
5456 steps :
5557 - uses : actions/checkout@v2
5658 with :
5759 submodules : recursive
60+ - name : Fix GitHub's mess
61+ run : |
62+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
63+ sudo apt-get update -qq
64+ sudo apt-get install -yqq --allow-downgrades libgd3/focal libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
65+ sudo apt-get purge -yqq libmono* moby* mono* php* libgdiplus libpcre2-posix3 libzip4
5866 - name : Set up dependencies
5967 run : |
6068 sudo dpkg --add-architecture armhf
6169 sudo sed -i "s/deb http/deb [arch=amd64] http/" /etc/apt/sources.list
62- echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports bionic main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ports-armhf.list
63- 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
64- 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
70+ echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports focal main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ports-armhf.list
71+ echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports focal -updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-armhf.list
72+ echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports focal -backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-armhf.list
6573 sudo apt-get update -qq
66- 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
67- # fix broken Ubuntu packages missing pkg-config file in multi-arch package
68- sudo apt-get install -yq libasound2-dev libgl1-mesa-dev liblo-dev libpulse-dev libxcursor-dev libxrandr-dev
69- sudo ln -s /usr/lib/arm-linux-gnueabihf/liblo.so.7 /usr/lib/arm-linux-gnueabihf/liblo.so
70- sudo cp /usr/lib/x86_64-linux-gnu/pkgconfig/liblo.pc /usr/lib/arm-linux-gnueabihf/pkgconfig/liblo.pc
71- sudo sed -i "s/x86_64-linux-gnu/arm-linux-gnueabihf/" /usr/lib/arm-linux-gnueabihf/pkgconfig/liblo.pc
74+ sudo apt-get install -yqq g++-arm-linux-gnueabihf libasound2-dev:armhf libcairo2-dev:armhf libdbus-1-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
7275 - name : Build linux armhf cross-compiled
7376 env :
7477 CC : arm-linux-gnueabihf-gcc
7578 CXX : arm-linux-gnueabihf-g++
7679 LDFLAGS : -static-libgcc -static-libstdc++
80+ PKG_CONFIG_PATH : /usr/lib/arm-linux-gnueabihf/pkgconfig
7781 run : |
7882 make features
79- make -j $(nproc)
83+ make WITH_LTO=true -j $(nproc)
8084 - name : Set sha8
8185 id : slug
8286 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -86,51 +90,59 @@ jobs:
8690 path : |
8791 bin/*
8892
89- linux-x86 :
90- runs-on : ubuntu-18 .04
93+ linux-i686 :
94+ runs-on : ubuntu-20 .04
9195 steps :
9296 - uses : actions/checkout@v2
9397 with :
9498 submodules : recursive
99+ - name : Fix GitHub's mess
100+ run : |
101+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
102+ sudo apt-get update -qq
103+ sudo apt-get install -yqq --allow-downgrades libgd3/focal libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
104+ sudo apt-get purge -yqq libmono* moby* mono* php* libgdiplus libpcre2-posix3 libzip4
95105 - name : Set up dependencies
96106 run : |
97107 sudo dpkg --add-architecture i386
98108 sudo apt-get update -qq
99- sudo apt-get install -yq g++-multilib 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
100- - name : Build linux x86
109+ sudo apt-get install -yqq g++-i686-linux-gnu libasound2-dev:i386 libcairo2-dev:i386 libdbus-1 -dev:i386 libgl1-mesa-dev:i386 liblo-dev:i386 libpulse-dev:i386 libx11-dev:i386 libxcursor-dev:i386 libxext-dev:i386 libxrandr-dev:i386
110+ - name : Build linux i686
101111 env :
112+ CC : i686-linux-gnu-gcc
113+ CXX : i686-linux-gnu-g++
102114 CFLAGS : -m32
103115 CXXFLAGS : -m32
104116 LDFLAGS : -m32 -static-libgcc -static-libstdc++
105117 PKG_CONFIG_PATH : /usr/lib/i386-linux-gnu/pkgconfig
106118 run : |
107119 make features
108- make -j $(nproc)
120+ make WITH_LTO=true -j $(nproc)
109121 - name : Set sha8
110122 id : slug
111123 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
112124 - uses : actions/upload-artifact@v2
113125 with :
114- name : ${{ github.event.repository.name }}-linux-x86 -${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
126+ name : ${{ github.event.repository.name }}-linux-i686 -${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
115127 path : |
116128 bin/*
117129
118130 linux-x86_64 :
119- runs-on : ubuntu-18 .04
131+ runs-on : ubuntu-20 .04
120132 steps :
121133 - uses : actions/checkout@v2
122134 with :
123135 submodules : recursive
124136 - name : Set up dependencies
125137 run : |
126138 sudo apt-get update -qq
127- sudo apt-get install -yq libasound2-dev libcairo2-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev
139+ 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
128140 - name : Build linux x86_64
129141 env :
130142 LDFLAGS : -static-libgcc -static-libstdc++
131143 run : |
132144 make features
133- make -j $(nproc)
145+ make WITH_LTO=true -j $(nproc)
134146 - name : Set sha8
135147 id : slug
136148 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -157,7 +169,7 @@ jobs:
157169 LDFLAGS : -arch x86_64 -arch arm64 -mmacosx-version-min=10.12
158170 run : |
159171 make features
160- make NOOPT=true -j $(sysctl -n hw.logicalcpu)
172+ make NOOPT=true WITH_LTO=true -j $(sysctl -n hw.logicalcpu)
161173 ./dpf/utils/package-osx-bundles.sh
162174 - name : Set sha8
163175 id : slug
@@ -180,11 +192,17 @@ jobs:
180192 - uses : actions/checkout@v2
181193 with :
182194 submodules : recursive
195+ - name : Fix GitHub's mess
196+ run : |
197+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
198+ sudo apt-get update -qq
199+ sudo apt-get install -yqq --allow-downgrades libgd3/focal libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
200+ sudo apt-get purge -yqq libmono* moby* mono* php* libgdiplus libpcre2-posix3 libzip4
183201 - name : Set up dependencies
184202 run : |
185203 sudo dpkg --add-architecture i386
186204 sudo apt-get update -qq
187- sudo apt-get install -yq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable:i386
205+ sudo apt-get install -yqq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable:i386
188206 - name : Build win32 cross-compiled
189207 env :
190208 CC : i686-w64-mingw32-gcc
@@ -194,7 +212,7 @@ jobs:
194212 WINEDEBUG : " -all"
195213 run : |
196214 make features
197- make -j $(nproc)
215+ make WITH_LTO=true -j $(nproc)
198216 - name : Set sha8
199217 id : slug
200218 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -212,10 +230,16 @@ jobs:
212230 - uses : actions/checkout@v2
213231 with :
214232 submodules : recursive
233+ - name : Fix GitHub's mess
234+ run : |
235+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
236+ sudo apt-get update -qq
237+ sudo apt-get install -yqq --allow-downgrades libgd3/focal libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
238+ sudo apt-get purge -yqq libmono* moby* mono* php* libgdiplus libpcre2-posix3 libzip4
215239 - name : Set up dependencies
216240 run : |
217241 sudo apt-get update -qq
218- sudo apt-get install -yq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 wine-stable
242+ sudo apt-get install -yqq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 wine-stable
219243 - name : Build win64 cross-compiled
220244 env :
221245 CC : x86_64-w64-mingw32-gcc
@@ -225,7 +249,7 @@ jobs:
225249 WINEDEBUG : " -all"
226250 run : |
227251 make features
228- make -j $(nproc)
252+ make WITH_LTO=true -j $(nproc)
229253 - name : Set sha8
230254 id : slug
231255 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -250,9 +274,9 @@ jobs:
250274 sudo dpkg -i kxstudio-repos_10.0.3_all.deb
251275 sudo apt-get update -qq
252276 # build-deps
253- sudo apt-get install -yq libasound2-dev libcairo2-dev libgl1-mesa-dev liblo-dev libpulse-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev
277+ 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
254278 # runtime testing
255- sudo apt-get install -yq carla-git lilv-utils lv2-dev lv2lint valgrind
279+ sudo apt-get install -yqq carla-git lilv-utils lv2-dev lv2lint valgrind
256280 - name : Build plugins
257281 env :
258282 CFLAGS : -g
@@ -313,14 +337,14 @@ jobs:
313337 done
314338 - name : Test VST2 plugins
315339 run : |
316- for p in $(ls bin/ | grep vst.so); do \
340+ for p in $(find bin/ | grep -e vst.so -e '.*\.vst/.*\.so' ); do \
317341 env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \
318342 valgrind \
319343 --error-exitcode=255 \
320344 --leak-check=full \
321345 --track-origins=yes \
322346 --suppressions=./dpf/utils/valgrind-dpf.supp \
323- /usr/lib/carla/carla-bridge-native vst2 ./bin/ ${p} "" 1>/dev/null; \
347+ /usr/lib/carla/carla-bridge-native vst2 ./${p} "" 1>/dev/null; \
324348 done
325349 - name : Test VST3 plugins
326350 run : |
0 commit comments