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 libpcre2-8-0/focal
2126 - name : Set up dependencies
2227 run : |
2328 sudo dpkg --add-architecture arm64
2429 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
30+ 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
31+ 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
32+ 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
2833 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
34+ 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
3535 - name : Build linux arm64 cross-compiled
3636 env :
3737 CC : aarch64-linux-gnu-gcc
3838 CXX : aarch64-linux-gnu-g++
3939 LDFLAGS : -static-libgcc -static-libstdc++
40+ PKG_CONFIG_PATH : /usr/lib/aarch64-linux-gnu/pkgconfig
4041 run : |
4142 make features
42- make -j $(nproc)
43+ make WITH_LTO=true -j $(nproc)
4344 - name : Set sha8
4445 id : slug
4546 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -50,33 +51,34 @@ jobs:
5051 bin/*
5152
5253 linux-armhf :
53- runs-on : ubuntu-18 .04
54+ runs-on : ubuntu-20 .04
5455 steps :
5556 - uses : actions/checkout@v2
5657 with :
5758 submodules : recursive
59+ - name : Fix GitHub's mess
60+ run : |
61+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
62+ sudo apt-get update -qq
63+ sudo apt-get install -yqq --allow-downgrades libpcre2-8-0/focal
5864 - name : Set up dependencies
5965 run : |
6066 sudo dpkg --add-architecture armhf
6167 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
68+ 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
69+ 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
70+ 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
6571 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
72+ 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
7273 - name : Build linux armhf cross-compiled
7374 env :
7475 CC : arm-linux-gnueabihf-gcc
7576 CXX : arm-linux-gnueabihf-g++
7677 LDFLAGS : -static-libgcc -static-libstdc++
78+ PKG_CONFIG_PATH : /usr/lib/arm-linux-gnueabihf/pkgconfig
7779 run : |
7880 make features
79- make -j $(nproc)
81+ make WITH_LTO=true -j $(nproc)
8082 - name : Set sha8
8183 id : slug
8284 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -86,51 +88,58 @@ jobs:
8688 path : |
8789 bin/*
8890
89- linux-x86 :
90- runs-on : ubuntu-18 .04
91+ linux-i686 :
92+ runs-on : ubuntu-20 .04
9193 steps :
9294 - uses : actions/checkout@v2
9395 with :
9496 submodules : recursive
97+ - name : Fix GitHub's mess
98+ run : |
99+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
100+ sudo apt-get update -qq
101+ sudo apt-get install -yqq --allow-downgrades libpcre2-8-0/focal
95102 - name : Set up dependencies
96103 run : |
97104 sudo dpkg --add-architecture i386
98105 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
106+ 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
107+ - name : Build linux i686
101108 env :
109+ CC : i686-linux-gnu-gcc
110+ CXX : i686-linux-gnu-g++
102111 CFLAGS : -m32
103112 CXXFLAGS : -m32
104113 LDFLAGS : -m32 -static-libgcc -static-libstdc++
105114 PKG_CONFIG_PATH : /usr/lib/i386-linux-gnu/pkgconfig
106115 run : |
107116 make features
108- make -j $(nproc)
117+ make WITH_LTO=true -j $(nproc)
109118 - name : Set sha8
110119 id : slug
111120 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
112121 - uses : actions/upload-artifact@v2
113122 with :
114- name : ${{ github.event.repository.name }}-linux-x86 -${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
123+ name : ${{ github.event.repository.name }}-linux-i686 -${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
115124 path : |
116125 bin/*
117126
118127 linux-x86_64 :
119- runs-on : ubuntu-18 .04
128+ runs-on : ubuntu-20 .04
120129 steps :
121130 - uses : actions/checkout@v2
122131 with :
123132 submodules : recursive
124133 - name : Set up dependencies
125134 run : |
126135 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
136+ 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
128137 - name : Build linux x86_64
129138 env :
130139 LDFLAGS : -static-libgcc -static-libstdc++
131140 run : |
132141 make features
133- make -j $(nproc)
142+ make WITH_LTO=true -j $(nproc)
134143 - name : Set sha8
135144 id : slug
136145 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -157,7 +166,7 @@ jobs:
157166 LDFLAGS : -arch x86_64 -arch arm64 -mmacosx-version-min=10.12
158167 run : |
159168 make features
160- make NOOPT=true -j $(sysctl -n hw.logicalcpu)
169+ make NOOPT=true WITH_LTO=true -j $(sysctl -n hw.logicalcpu)
161170 ./dpf/utils/package-osx-bundles.sh
162171 - name : Set sha8
163172 id : slug
@@ -175,16 +184,21 @@ jobs:
175184 !bin/vst3
176185
177186 win32 :
178- runs-on : ubuntu-18 .04
187+ runs-on : ubuntu-20 .04
179188 steps :
180189 - uses : actions/checkout@v2
181190 with :
182191 submodules : recursive
192+ - name : Fix GitHub's mess
193+ run : |
194+ sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
195+ sudo apt-get update -qq
196+ sudo apt-get install -yqq --allow-downgrades libpcre2-8-0/focal
183197 - name : Set up dependencies
184198 run : |
185199 sudo dpkg --add-architecture i386
186200 sudo apt-get update -qq
187- sudo apt-get install -yq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable:i386
201+ sudo apt-get install -yqq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable:i386
188202 - name : Build win32 cross-compiled
189203 env :
190204 CC : i686-w64-mingw32-gcc
@@ -194,7 +208,7 @@ jobs:
194208 WINEDEBUG : " -all"
195209 run : |
196210 make features
197- make -j $(nproc)
211+ make WITH_LTO=true -j $(nproc)
198212 - name : Set sha8
199213 id : slug
200214 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -215,7 +229,7 @@ jobs:
215229 - name : Set up dependencies
216230 run : |
217231 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
232+ sudo apt-get install -yqq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 wine-stable
219233 - name : Build win64 cross-compiled
220234 env :
221235 CC : x86_64-w64-mingw32-gcc
@@ -225,7 +239,7 @@ jobs:
225239 WINEDEBUG : " -all"
226240 run : |
227241 make features
228- make -j $(nproc)
242+ make WITH_LTO=true -j $(nproc)
229243 - name : Set sha8
230244 id : slug
231245 run : echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -250,9 +264,9 @@ jobs:
250264 sudo dpkg -i kxstudio-repos_10.0.3_all.deb
251265 sudo apt-get update -qq
252266 # 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
267+ 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
254268 # runtime testing
255- sudo apt-get install -yq carla-git lilv-utils lv2-dev lv2lint valgrind
269+ sudo apt-get install -yqq carla-git lilv-utils lv2-dev lv2lint valgrind
256270 - name : Build plugins
257271 env :
258272 CFLAGS : -g
@@ -313,7 +327,7 @@ jobs:
313327 done
314328 - name : Test VST2 plugins
315329 run : |
316- for p in $(ls bin/ | grep vst.so); do \
330+ for p in $(ls bin/ | grep -e vst.so -e '.*\.vst/.*\.so' ); do \
317331 env CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=native \
318332 valgrind \
319333 --error-exitcode=255 \
0 commit comments