aboutsummaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorDioEgizio <83089242+DioEgizio@users.noreply.github.com>2022-11-05 08:25:10 +0100
committerDioEgizio <83089242+DioEgizio@users.noreply.github.com>2022-11-30 13:46:55 +0100
commit5efa725e92e87497287408c8d4d011e63aa214bb (patch)
tree875c5eccdf56f022bf649923f151e62c86f00927 /.github
parent42c00213ce97e51cdf9c0a9d3ddb235e64567994 (diff)
downloadPrismLauncher-5efa725e92e87497287408c8d4d011e63aa214bb.tar.gz
PrismLauncher-5efa725e92e87497287408c8d4d011e63aa214bb.tar.bz2
PrismLauncher-5efa725e92e87497287408c8d4d011e63aa214bb.zip
feat(actions) add arm64 build
Signed-off-by: DioEgizio <83089242+DioEgizio@users.noreply.github.com>
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml53
1 files changed, 43 insertions, 10 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 79221531..d957f627 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -71,6 +71,18 @@ jobs:
qt_modules: 'qt5compat qtimageformats'
qt_tools: ''
+ - os: windows-2022
+ name: "Windows-MSVC-arm64"
+ msystem: ''
+ architecture: 'arm64'
+ vcvars_arch: 'amd64_arm64'
+ qt_ver: 6
+ qt_host: windows
+ qt_arch: 'win64_msvc2019_arm64'
+ qt_version: '6.4.0'
+ qt_modules: 'qt5compat qtimageformats'
+ qt_tools: ''
+
- os: macos-12
name: macOS
macosx_deployment_target: 10.15
@@ -139,7 +151,7 @@ jobs:
if: (runner.os != 'Windows' || matrix.msystem == '') && inputs.build_type == 'Debug'
uses: hendrikmuhs/ccache-action@v1.2.5
with:
- key: ${{ matrix.os }}-qt${{ matrix.qt_ver }}
+ key: ${{ matrix.os }}-qt${{ matrix.qt_ver }}-${{ matrix.architecture }}
- name: Setup ccache (Windows MinGW-w64)
if: runner.os == 'Windows' && matrix.msystem != '' && inputs.build_type == 'Debug'
@@ -188,8 +200,23 @@ jobs:
if: runner.os == 'Linux' && matrix.qt_ver != 6
run: |
sudo apt-get -y install qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libqt5core5a libqt5network5 libqt5gui5
-
- - name: Install Qt (macOS, AppImage & Windows MSVC)
+
+ - name: Install host Qt (Windows MSVC arm64)
+ if: runner.os == 'Windows' && matrix.architecture == 'arm64'
+ uses: jurplel/install-qt-action@v3
+ with:
+ version: ${{ matrix.qt_version }}
+ host: 'windows'
+ target: 'desktop'
+ arch: ''
+ modules: ${{ matrix.qt_modules }}
+ tools: ${{ matrix.qt_tools }}
+ cache: ${{ inputs.is_qt_cached }}
+ cache-key-prefix: host-qt-arm64-windows
+ dir: ${{ github.workspace }}\HostQt
+ set-env: false
+
+ - name: Install Qt (macOS, Linux, Qt 6 & Windows MSVC)
if: runner.os == 'Linux' && matrix.qt_ver == 6 || runner.os == 'macOS' || (runner.os == 'Windows' && matrix.msystem == '')
uses: jurplel/install-qt-action@v3
with:
@@ -201,6 +228,13 @@ jobs:
tools: ${{ matrix.qt_tools }}
cache: ${{ inputs.is_qt_cached }}
+ - name: Install MSVC (Windows MSVC)
+ if: runner.os == 'Windows' && matrix.msystem == ''
+ uses: ilammy/msvc-dev-cmd@v1
+ with:
+ vsversion: 2022
+ arch: ${{ matrix.vcvars_arch }}
+
- name: Prepare AppImage (Linux)
if: runner.os == 'Linux' && matrix.qt_ver != 5
run: |
@@ -210,6 +244,11 @@ jobs:
${{ github.workspace }}/.github/scripts/prepare_JREs.sh
+ - name: Add QT_HOST_PATH var (Windows MSVC arm64)
+ if: runner.os == 'Windows' && matrix.architecture == 'arm64'
+ run: |
+ echo "QT_HOST_PATH=${{ github.workspace }}\HostQt\Qt\${{ matrix.qt_version }}\msvc2019_64" >> $env:GITHUB_ENV
+
##
# CONFIGURE
##
@@ -286,7 +325,7 @@ jobs:
ctest -E "^example64|example$" --test-dir build --output-on-failure
- name: Test (Windows MSVC)
- if: runner.os == 'Windows' && matrix.msystem == ''
+ if: runner.os == 'Windows' && matrix.msystem == '' && matrix.architecture != 'arm64'
run: |
ctest -E "^example64|example$" --test-dir build --output-on-failure -C ${{ inputs.build_type }}
@@ -324,12 +363,6 @@ jobs:
EOF
fi
- - name: Add VC Enviroment Variables
- if: runner.os == 'Windows' && matrix.msystem == ''
- uses: ilammy/msvc-dev-cmd@v1
- with:
- arch: ${{ matrix.vcvars_arch }}
-
- name: Package (Windows MinGW-w64)
if: runner.os == 'Windows' && matrix.msystem != ''
shell: msys2 {0}