Skip to content

Commit edd2819

Browse files
committed
Add arm64 build
1 parent 7eb7480 commit edd2819

1 file changed

Lines changed: 52 additions & 17 deletions

File tree

.github/workflows/build.yml

Lines changed: 52 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,42 @@ on:
44
push:
55
branches:
66
- master
7+
- arm
78
pull_request:
89
branches:
910
- master
1011

1112
jobs:
1213
build_ubuntu_x11:
1314
name: Build Ubuntu X11
14-
runs-on: ubuntu-22.04
15+
runs-on: ${{ matrix.cfg.os }}
16+
strategy:
17+
matrix:
18+
cfg:
19+
- { os: ubuntu-22.04, arch: x86_64 }
20+
- { os: ubuntu-22.04-arm, arch: aarch64 }
1521

1622
steps:
1723
- uses: actions/checkout@v4
1824
with:
1925
submodules: "recursive"
2026

21-
- uses: jurplel/install-qt-action@v3
27+
- name: Install Vulkan SDK
28+
run: |
29+
sudo apt update
30+
sudo apt install libvulkan-dev
31+
32+
- name: Install x86_64 Qt
33+
uses: jurplel/install-qt-action@v3
34+
if: ${{ matrix.cfg.arch == 'x86_64' }}
2235
with:
2336
version: 5.12.9
2437
host: linux
2538

26-
- name: Install Vulkan SDK
39+
- name: Install aarch64 Qt
40+
if: ${{ matrix.cfg.arch == 'aarch64' }}
2741
run: |
28-
sudo apt update
29-
sudo apt install libvulkan-dev
42+
sudo apt install qt5-qmake qtbase5-dev libqt5gui5
3043
3144
- name: Install libfuse
3245
run: |
@@ -42,33 +55,50 @@ jobs:
4255
CXX="clang++"
4356
qmake DEFINES+=X11 CONFIG+=release PREFIX=/usr
4457
make INSTALL_ROOT=appdir install ; find appdir/
45-
wget -c -nv "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
46-
chmod a+x linuxdeployqt-continuous-x86_64.AppImage
58+
wget -c -nv "https://github.com/q4a/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-${{matrix.cfg.arch}}.AppImage"
59+
chmod a+x linuxdeployqt-continuous-${{matrix.cfg.arch}}.AppImage
4760
export VERSION=${TARGET_PLATFORM}
4861
cp vulkanCapsViewer.png appdir/usr/share/icons/hicolor/256x256/apps/vulkanCapsViewer.png
49-
./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/share/applications/* -appimage
62+
./linuxdeployqt-continuous-${{matrix.cfg.arch}}.AppImage appdir/usr/share/applications/* -appimage
5063
- name: Upload
5164
if: github.ref == 'refs/heads/master'
52-
run: curl -T Vulkan_Caps_Viewer-X11-x86_64.AppImage ftp://${{ secrets.FTP_USER_NAME }}:${{ secrets.FTP_PASS }}@${{ secrets.FTP_SERVER_NAME }}
65+
run: curl -T Vulkan_Caps_Viewer-X11-${{matrix.cfg.arch}}.AppImage ftp://${{ secrets.FTP_USER_NAME }}:${{ secrets.FTP_PASS }}@${{ secrets.FTP_SERVER_NAME }}
66+
- name: Upload artifact
67+
uses: actions/upload-artifact@main
68+
with:
69+
name: Vulkan_Caps_Viewer-X11-${{matrix.cfg.arch}}.AppImage.ci-${{ github.run_number }}
70+
path: Vulkan_Caps_Viewer-X11-${{matrix.cfg.arch}}.AppImage
5371

5472
build_ubuntu_wayland:
5573
name: Build Ubuntu Wayland
56-
runs-on: ubuntu-22.04
74+
runs-on: ${{ matrix.cfg.os }}
75+
strategy:
76+
matrix:
77+
cfg:
78+
- { os: ubuntu-22.04, arch: x86_64 }
79+
- { os: ubuntu-22.04-arm, arch: aarch64 }
5780

5881
steps:
5982
- uses: actions/checkout@v4
6083
with:
6184
submodules: "recursive"
6285

63-
- uses: jurplel/install-qt-action@v3
86+
- name: Install Vulkan SDK
87+
run: |
88+
sudo apt update
89+
sudo apt install libvulkan-dev libwayland-dev
90+
91+
- name: Install x86_64 Qt
92+
uses: jurplel/install-qt-action@v3
93+
if: ${{ matrix.cfg.arch == 'x86_64' }}
6494
with:
6595
version: 5.12.9
6696
host: linux
6797

68-
- name: Install Vulkan SDK
98+
- name: Install aarch64 Qt
99+
if: ${{ matrix.cfg.arch == 'aarch64' }}
69100
run: |
70-
sudo apt update
71-
sudo apt install libvulkan-dev libwayland-dev
101+
sudo apt install qt5-qmake qtbase5-dev libqt5gui5
72102
73103
- name: Install libfuse
74104
run: |
@@ -84,14 +114,19 @@ jobs:
84114
CXX="clang++"
85115
qmake DEFINES+=WAYLAND CONFIG+=release PREFIX=/usr
86116
make INSTALL_ROOT=appdir install ; find appdir/
87-
wget -c -nv "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
88-
chmod a+x linuxdeployqt-continuous-x86_64.AppImage
117+
wget -c -nv "https://github.com/q4a/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-${{matrix.cfg.arch}}.AppImage"
118+
chmod a+x linuxdeployqt-continuous-${{matrix.cfg.arch}}.AppImage
89119
export VERSION=${TARGET_PLATFORM}
90120
cp vulkanCapsViewer.png appdir/usr/share/icons/hicolor/256x256/apps/vulkanCapsViewer.png
91-
./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/share/applications/* -appimage -exclude-libs=libwayland-client.so
121+
./linuxdeployqt-continuous-${{matrix.cfg.arch}}.AppImage appdir/usr/share/applications/* -appimage -exclude-libs=libwayland-client.so
92122
- name: Upload
93123
if: github.ref == 'refs/heads/master'
94124
run: curl -T Vulkan_Caps_Viewer-wayland-x86_64.AppImage ftp://${{ secrets.FTP_USER_NAME }}:${{ secrets.FTP_PASS }}@${{ secrets.FTP_SERVER_NAME }}
125+
- name: Upload artifact
126+
uses: actions/upload-artifact@main
127+
with:
128+
name: Vulkan_Caps_Viewer-wayland-${{matrix.cfg.arch}}.AppImage.ci-${{ github.run_number }}
129+
path: Vulkan_Caps_Viewer-wayland-${{matrix.cfg.arch}}.AppImage
95130

96131
build_macosx:
97132
name: Build macOS

0 commit comments

Comments
 (0)