88
99jobs :
1010 build :
11- name : " Build: ${{ matrix.os }} Qt${{ matrix.qtvershort }}"
12- runs-on : ${{ matrix.os }}
11+ name : " Build: ${{ matrix.archname }}"
12+ runs-on : macos-14
1313 strategy :
1414 fail-fast : false
1515 matrix :
16- qtvershort : [5_intel, 6_intel, 6_arm ]
16+ archname : [intel, arm ]
1717 config : [Release]
1818 include :
19- - qtvershort : " 5_intel "
19+ - archname : " intel "
2020 arch : x64
21- qtver : Qt5
22- os : macos-13
23- - qtvershort : " 6_intel"
24- arch : x64
25- qtver : Qt6
26- os : macos-13
27- - qtvershort : " 6_arm"
21+ - archname : " arm"
2822 arch : arm64
29- qtver : Qt6
30- os : macos-14
3123
3224 steps :
3325 - name : Checkout Git Repo
3426 uses : actions/checkout@v5
3527 with :
3628 submodules : ' recursive'
3729
30+ - name : Remove windows-only qt version override in vcpkg.json
31+ run : |
32+ sed -i '' '/For Windows only/d' ${{ github.workspace }}/gui/qt/vcpkg.json
33+
3834 - name : Install dependencies
3935 run : |
4036 set -e
41- brew install automake autoconf libtool libusb
37+ brew install automake autoconf autoconf-archive libtool
4238
4339 - name : Install latest CMake
4440 uses : lukka/get-cmake@628dd514bed37cb0a609e84a6186cbbaa2fc0140 # latest as of 2025-10-04
@@ -48,21 +44,21 @@ jobs:
4844 with :
4945 vcpkgJsonGlob : ' **/gui/qt/vcpkg.json'
5046
51- - name : Build CEmu ${{ matrix.qtver }} ${{ matrix. config }} on macOS ${{ matrix.arch }}
47+ - name : Build CEmu ${{ matrix.config }} on macOS ${{ matrix.arch }}
5248 uses : lukka/run-cmake@67c73a83a46f86c4e0b96b741ac37ff495478c38 # latest as of 2025-10-04
5349 with :
5450 cmakeListsTxtPath : ' ${{ github.workspace }}/gui/qt/CMakeLists.txt'
55- configurePreset : ' Mac-${{ matrix.arch }}-${{ matrix.qtver }} '
51+ configurePreset : ' Mac-${{ matrix.arch }}'
5652 configurePresetAdditionalArgs : " ['-DDEPS_RELEASE_ONLY=ON', '-DSHORT_VERSION=v3.0']"
57- buildPreset : ' Mac-${{ matrix.arch }}-${{ matrix.qtver }}-${{ matrix. config }}'
53+ buildPreset : ' Mac-${{ matrix.arch }}-${{ matrix.config }}'
5854 env :
59- VCPKG_DEFAULT_HOST_TRIPLET : ${{ matrix.arch }} -osx-release
55+ VCPKG_DEFAULT_HOST_TRIPLET : arm64 -osx-release
6056 VCPKG_FORCE_SYSTEM_BINARIES : 1
6157
6258 - name : Move to temp folder
6359 run : |
64- mkdir -p /tmp/CEmu-nightly_mac_qt ${{matrix.qtvershort }}/
65- mv ${{ github.workspace }}/gui/qt/CEmu.build/Mac-${{ matrix.arch }}-${{ matrix.qtver }} /${{ matrix.config }}/CEmu.app /tmp/CEmu-nightly_mac_qt ${{matrix.qtvershort }}/
60+ mkdir -p /tmp/CEmu-nightly_mac_ ${{matrix.archname }}/
61+ mv ${{ github.workspace }}/gui/qt/CEmu.build/Mac-${{ matrix.arch }}/${{ matrix.config }}/CEmu.app /tmp/CEmu-nightly_mac_ ${{matrix.archname }}/
6662
6763 - name : " Codesign CEmu.app"
6864 env :
@@ -79,21 +75,21 @@ jobs:
7975 security unlock-keychain -p $MACOS_KEYCHAIN_PWD build.keychain
8076 security import certificate.p12 -k build.keychain -P $MACOS_CERTIFICATE_PWD -T /usr/bin/codesign
8177 security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $MACOS_KEYCHAIN_PWD build.keychain
82- /usr/bin/codesign --deep --force --verify --verbose --sign "$MACOS_CODESIGN_IDENT" --timestamp --options runtime /tmp/CEmu-nightly_mac_qt ${{matrix.qtvershort }}/CEmu.app
78+ /usr/bin/codesign --deep --force --verify --verbose --sign "$MACOS_CODESIGN_IDENT" --timestamp --options runtime /tmp/CEmu-nightly_mac_ ${{matrix.archname }}/CEmu.app
8379
8480 - name : " Create the DMG"
8581 run : |
8682 brew install create-dmg || brew install create-dmg; # we try twice because sometimes it fails...
8783 # The codesign variable may be empty (for forks) but that's fine, create-dmg only does code-signing if it's not empty.
8884 createDmgArgs="--codesign '${{ secrets.MACOS_CODESIGN_IDENT }}' \
89- --volname 'CEmu-nightly Qt ${{matrix.qtvershort }}' \
85+ --volname 'CEmu-nightly ${{matrix.archname }}' \
9086 --window-pos 200 120 \
9187 --window-size 600 400 \
9288 --icon-size 64 \
9389 --icon 'CEmu.app' 125 200 \
9490 --app-drop-link 400 200 \
95- 'CEmu-nightly_mac_qt ${{matrix.qtvershort }}.dmg' \
96- '/tmp/CEmu-nightly_mac_qt ${{matrix.qtvershort }}/'"
91+ 'CEmu-nightly_mac_ ${{matrix.archname }}.dmg' \
92+ '/tmp/CEmu-nightly_mac_ ${{matrix.archname }}/'"
9793 eval "create-dmg $createDmgArgs" || eval "create-dmg $createDmgArgs" # We also retry just in case...
9894
9995 - name : " [macOS] Notarize and staple DMG"
@@ -105,14 +101,14 @@ jobs:
105101 APPLE_NOTARIZATION_TEAMID : ${{ secrets.APPLE_NOTARIZATION_TEAMID }}
106102 run : |
107103 xcrun notarytool store-credentials "notarytool-profile" --apple-id "$APPLE_NOTARIZATION_USERNAME" --team-id "$APPLE_NOTARIZATION_TEAMID" --password "$APPLE_NOTARIZATION_PASSWORD"
108- xcrun notarytool submit "CEmu-nightly_mac_qt ${{matrix.qtvershort }}.dmg" --keychain-profile "notarytool-profile" --wait
109- xcrun stapler staple "CEmu-nightly_mac_qt ${{matrix.qtvershort }}.dmg"
104+ xcrun notarytool submit "CEmu-nightly_mac_ ${{matrix.archname }}.dmg" --keychain-profile "notarytool-profile" --wait
105+ xcrun stapler staple "CEmu-nightly_mac_ ${{matrix.archname }}.dmg"
110106
111107 - name : Upload dmg as artifact
112108 uses : actions/upload-artifact@v4
113109 with :
114- name : CEmu-nightly_mac_qt ${{matrix.qtvershort }}
115- path : CEmu-nightly_mac_qt ${{matrix.qtvershort }}.dmg
110+ name : CEmu-nightly_mac_ ${{matrix.archname }}
111+ path : CEmu-nightly_mac_ ${{matrix.archname }}.dmg
116112
117113 - name : Update nightly release
118114 if : github.ref == 'refs/heads/master' && github.event_name != 'pull_request'
@@ -122,4 +118,4 @@ jobs:
122118 prerelease : true
123119 token : ${{secrets.GITHUB_TOKEN}}
124120 files : |
125- CEmu-nightly_mac_qt ${{matrix.qtvershort }}.dmg
121+ CEmu-nightly_mac_ ${{matrix.archname }}.dmg
0 commit comments