Skip to content

Commit 8fa31c1

Browse files
committed
Drop Qt5 support, it's not worth the trouble anymore.
1 parent e6eef69 commit 8fa31c1

26 files changed

+178
-402
lines changed

.github/workflows/build.linux.workflow.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88

99
jobs:
1010
build:
11-
name: "Build: ${{ matrix.os }} - ${{ matrix.qtver }}"
11+
name: "Build: ${{ matrix.os }} - ${{ matrix.variant }}"
1212
runs-on: ${{ matrix.os }}
1313
strategy:
1414
fail-fast: false
@@ -19,11 +19,11 @@ jobs:
1919
statictype: [ON, OFF]
2020
include:
2121
- statictype: ON
22-
qtver: Qt6
22+
variant: ""
2323
host_triplet: release
2424
release_suffix: static
2525
- statictype: OFF
26-
qtver: Qt6-Dynamic
26+
variant: "Dynamic"
2727
host_triplet: dynamic-apng-release
2828
release_suffix: shared
2929

@@ -51,26 +51,26 @@ jobs:
5151
with:
5252
vcpkgJsonGlob: '**/gui/qt/vcpkg.json'
5353

54-
- name: Build CEmu ${{ matrix.qtver }} ${{ matrix.config }} on Linux ${{ matrix.arch }}
54+
- name: Build CEmu ${{ matrix.variant }} ${{ matrix.config }} on Linux ${{ matrix.arch }}
5555
uses: lukka/run-cmake@67c73a83a46f86c4e0b96b741ac37ff495478c38 # latest as of 2025-10-04
5656
with:
5757
cmakeListsTxtPath: '${{ github.workspace }}/gui/qt/CMakeLists.txt'
58-
configurePreset: 'Linux-${{ matrix.arch }}-${{ matrix.qtver }}'
58+
configurePreset: 'Linux-${{ matrix.arch }}-${{ matrix.variant }}'
5959
configurePresetAdditionalArgs: "['-DDEPS_RELEASE_ONLY=ON', '-DSHORT_VERSION=v3.0']"
60-
buildPreset: 'Linux-${{ matrix.arch }}-${{ matrix.qtver }}-${{ matrix.config }}'
60+
buildPreset: 'Linux-${{ matrix.arch }}-${{ matrix.variant }}-${{ matrix.config }}'
6161
env:
6262
VCPKG_DEFAULT_HOST_TRIPLET: ${{ matrix.arch }}-linux-${{ matrix.host_triplet }}
6363
VCPKG_FORCE_SYSTEM_BINARIES: 1
6464

6565
- name: Upload binary as artifact
6666
uses: actions/upload-artifact@v4
6767
with:
68-
name: CEmu_linux_${{ matrix.qtver }}_master
69-
path: ${{ github.workspace }}/gui/qt/CEmu.build/Linux-${{ matrix.arch }}-${{ matrix.qtver }}/${{ matrix.config }}/CEmu
68+
name: CEmu_linux_${{ matrix.variant }}_master
69+
path: ${{ github.workspace }}/gui/qt/CEmu.build/Linux-${{ matrix.arch }}-${{ matrix.variant }}/${{ matrix.config }}/CEmu
7070

7171
- name: Prepare binary for release upload
7272
run: |
73-
mv ${{ github.workspace }}/gui/qt/CEmu.build/Linux-${{ matrix.arch }}-${{ matrix.qtver }}/${{ matrix.config }}/CEmu ${{ github.workspace }}/CEmu-nightly_linux64_qt6_${{ matrix.release_suffix }}
73+
mv ${{ github.workspace }}/gui/qt/CEmu.build/Linux-${{ matrix.arch }}-${{ matrix.variant }}/${{ matrix.config }}/CEmu ${{ github.workspace }}/CEmu-nightly_linux64_${{ matrix.release_suffix }}
7474
7575
- name: Update nightly release
7676
if: ${{ github.ref == 'refs/heads/master' && github.event_name != 'pull_request' }}
@@ -80,4 +80,4 @@ jobs:
8080
prerelease: true
8181
token: ${{secrets.GITHUB_TOKEN}}
8282
files: |
83-
${{ github.workspace }}/CEmu-nightly_linux64_qt6_${{ matrix.release_suffix }}
83+
${{ github.workspace }}/CEmu-nightly_linux64_${{ matrix.release_suffix }}

.github/workflows/build.mac.workflow.yml

Lines changed: 18 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,19 @@ on:
88

99
jobs:
1010
build:
11-
name: "Build: ${{ matrix.os }} Qt${{ matrix.qtvershort }}"
11+
name: "Build: ${{ matrix.os }} ${{ matrix.archname }}"
1212
runs-on: ${{ matrix.os }}
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
2221
os: macos-13
23-
- qtvershort: "6_intel"
24-
arch: x64
25-
qtver: Qt6
26-
os: macos-13
27-
- qtvershort: "6_arm"
22+
- archname: "arm"
2823
arch: arm64
29-
qtver: Qt6
3024
os: macos-14
3125

3226
steps:
@@ -48,21 +42,21 @@ jobs:
4842
with:
4943
vcpkgJsonGlob: '**/gui/qt/vcpkg.json'
5044

51-
- name: Build CEmu ${{ matrix.qtver }} ${{ matrix.config }} on macOS ${{ matrix.arch }}
45+
- name: Build CEmu ${{ matrix.config }} on macOS ${{ matrix.arch }}
5246
uses: lukka/run-cmake@67c73a83a46f86c4e0b96b741ac37ff495478c38 # latest as of 2025-10-04
5347
with:
5448
cmakeListsTxtPath: '${{ github.workspace }}/gui/qt/CMakeLists.txt'
55-
configurePreset: 'Mac-${{ matrix.arch }}-${{ matrix.qtver }}'
49+
configurePreset: 'Mac-${{ matrix.arch }}'
5650
configurePresetAdditionalArgs: "['-DDEPS_RELEASE_ONLY=ON', '-DSHORT_VERSION=v3.0']"
57-
buildPreset: 'Mac-${{ matrix.arch }}-${{ matrix.qtver }}-${{ matrix.config }}'
51+
buildPreset: 'Mac-${{ matrix.arch }}-${{ matrix.config }}'
5852
env:
5953
VCPKG_DEFAULT_HOST_TRIPLET: ${{ matrix.arch }}-osx-release
6054
VCPKG_FORCE_SYSTEM_BINARIES: 1
6155

6256
- name: Move to temp folder
6357
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}}/
58+
mkdir -p /tmp/CEmu-nightly_mac_${{matrix.archname}}/
59+
mv ${{ github.workspace }}/gui/qt/CEmu.build/Mac-${{ matrix.arch }}/${{ matrix.config }}/CEmu.app /tmp/CEmu-nightly_mac_${{matrix.archname}}/
6660
6761
- name: "Codesign CEmu.app"
6862
env:
@@ -79,21 +73,21 @@ jobs:
7973
security unlock-keychain -p $MACOS_KEYCHAIN_PWD build.keychain
8074
security import certificate.p12 -k build.keychain -P $MACOS_CERTIFICATE_PWD -T /usr/bin/codesign
8175
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
76+
/usr/bin/codesign --deep --force --verify --verbose --sign "$MACOS_CODESIGN_IDENT" --timestamp --options runtime /tmp/CEmu-nightly_mac_${{matrix.archname}}/CEmu.app
8377
8478
- name: "Create the DMG"
8579
run: |
8680
brew install create-dmg || brew install create-dmg; # we try twice because sometimes it fails...
8781
# The codesign variable may be empty (for forks) but that's fine, create-dmg only does code-signing if it's not empty.
8882
createDmgArgs="--codesign '${{ secrets.MACOS_CODESIGN_IDENT }}' \
89-
--volname 'CEmu-nightly Qt${{matrix.qtvershort}}' \
83+
--volname 'CEmu-nightly ${{matrix.archname}}' \
9084
--window-pos 200 120 \
9185
--window-size 600 400 \
9286
--icon-size 64 \
9387
--icon 'CEmu.app' 125 200 \
9488
--app-drop-link 400 200 \
95-
'CEmu-nightly_mac_qt${{matrix.qtvershort}}.dmg' \
96-
'/tmp/CEmu-nightly_mac_qt${{matrix.qtvershort}}/'"
89+
'CEmu-nightly_mac_${{matrix.archname}}.dmg' \
90+
'/tmp/CEmu-nightly_mac_${{matrix.archname}}/'"
9791
eval "create-dmg $createDmgArgs" || eval "create-dmg $createDmgArgs" # We also retry just in case...
9892
9993
- name: "[macOS] Notarize and staple DMG"
@@ -105,14 +99,14 @@ jobs:
10599
APPLE_NOTARIZATION_TEAMID: ${{ secrets.APPLE_NOTARIZATION_TEAMID }}
106100
run: |
107101
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"
102+
xcrun notarytool submit "CEmu-nightly_mac_${{matrix.archname}}.dmg" --keychain-profile "notarytool-profile" --wait
103+
xcrun stapler staple "CEmu-nightly_mac_${{matrix.archname}}.dmg"
110104
111105
- name: Upload dmg as artifact
112106
uses: actions/upload-artifact@v4
113107
with:
114-
name: CEmu-nightly_mac_qt${{matrix.qtvershort}}
115-
path: CEmu-nightly_mac_qt${{matrix.qtvershort}}.dmg
108+
name: CEmu-nightly_mac_${{matrix.archname}}
109+
path: CEmu-nightly_mac_${{matrix.archname}}.dmg
116110

117111
- name: Update nightly release
118112
if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request'
@@ -122,4 +116,4 @@ jobs:
122116
prerelease: true
123117
token: ${{secrets.GITHUB_TOKEN}}
124118
files: |
125-
CEmu-nightly_mac_qt${{matrix.qtvershort}}.dmg
119+
CEmu-nightly_mac_${{matrix.archname}}.dmg

.github/workflows/build.windows.workflow.yml

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,13 @@ on:
88

99
jobs:
1010
build:
11-
name: "Build: Windows ${{ matrix.arch }}-${{ matrix.config }}-${{ matrix.qtver }}"
11+
name: "Build: Windows ${{ matrix.arch }}-${{ matrix.config }}"
1212
runs-on: windows-latest
1313

1414
strategy:
1515
fail-fast: false
1616
matrix:
1717
arch: [x64, x86]
18-
qtver: [Qt5, Qt6]
1918
config: [Release]
2019
exclude:
2120
- arch: x86
@@ -46,29 +45,29 @@ jobs:
4645
with:
4746
vcpkgJsonGlob: '**/gui/qt/vcpkg.json'
4847

49-
- name: Build CEmu ${{ matrix.qtver }} ${{ matrix.config }} on Windows ${{ matrix.arch_name }}
48+
- name: Build CEmu ${{ matrix.config }} on Windows ${{ matrix.arch_name }}
5049
uses: lukka/run-cmake@67c73a83a46f86c4e0b96b741ac37ff495478c38 # latest as of 2025-10-04
5150
with:
5251
cmakeListsTxtPath: '${{ github.workspace }}/gui/qt/CMakeLists.txt'
53-
configurePreset: 'Win-${{ matrix.arch }}-${{ matrix.qtver }}'
52+
configurePreset: 'Win-${{ matrix.arch }}'
5453
configurePresetAdditionalArgs: "['-DDEPS_RELEASE_ONLY=ON', '-DSHORT_VERSION=v3.0']"
55-
buildPreset: 'Win-${{ matrix.arch }}-${{ matrix.qtver }}-${{ matrix.config }}'
54+
buildPreset: 'Win-${{ matrix.arch }}-${{ matrix.config }}'
5655
env:
5756
VCPKG_DEFAULT_TRIPLET: ${{ matrix.arch }}-windows
5857
VCPKG_DEFAULT_HOST_TRIPLET: x64-windows-static-release
5958
VCPKG_FORCE_SYSTEM_BINARIES: 1
6059

61-
- name: Upload ${{ matrix.arch_name }} ${{ matrix.config }} ${{ matrix.qtver }} EXE
60+
- name: Upload ${{ matrix.arch_name }} ${{ matrix.config }} EXE
6261
uses: actions/upload-artifact@v4
6362
with:
64-
name: CEmu_win${{ matrix.arch_suffix }}_${{ matrix.qtver }}_master
65-
path: ${{ github.workspace }}/gui/qt/CEmu.build/Win-${{ matrix.arch }}-${{ matrix.qtver }}/${{ matrix.config }}/CEmu.exe
63+
name: CEmu_win${{ matrix.arch_suffix }}_master
64+
path: ${{ github.workspace }}/gui/qt/CEmu.build/Win-${{ matrix.arch }}/${{ matrix.config }}/CEmu.exe
6665

6766
- name: Prepare binary for release upload
6867
if: ${{ matrix.config == 'Release' }}
6968
run: |
70-
$ReleaseName = "CEmu-nightly_win${{ matrix.arch_suffix }}-msvc_${{ matrix.qtver }}.exe".Replace("Qt", "qt")
71-
Rename-Item -Path "${{ github.workspace }}/gui/qt/CEmu.build/Win-${{ matrix.arch }}-${{ matrix.qtver }}/${{ matrix.config }}/CEmu.exe" -NewName $ReleaseName
69+
$ReleaseName = "CEmu-nightly_win${{ matrix.arch_suffix }}-msvc.exe"
70+
Rename-Item -Path "${{ github.workspace }}/gui/qt/CEmu.build/Win-${{ matrix.arch }}/${{ matrix.config }}/CEmu.exe" -NewName $ReleaseName
7271
echo "RELEASE_NAME=$ReleaseName" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
7372
7473
- name: Update nightly release
@@ -79,4 +78,4 @@ jobs:
7978
prerelease: true
8079
token: ${{secrets.GITHUB_TOKEN}}
8180
files: |
82-
./gui/qt/CEmu.build/Win-${{ matrix.arch }}-${{ matrix.qtver }}/${{ matrix.config }}/${{ env.RELEASE_NAME }}
81+
./gui/qt/CEmu.build/Win-${{ matrix.arch }}/${{ matrix.config }}/${{ env.RELEASE_NAME }}

.github/workflows/coverity.workflow.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@ jobs:
1010
runs-on: ubuntu-22.04
1111
steps:
1212
- name: Checkout Git Repo
13-
uses: actions/checkout@v3
13+
uses: actions/checkout@v5
1414
with:
1515
submodules: 'recursive'
1616

17-
- name: Install Linux dependencies (Ubuntu 18.04+)
17+
- name: Install Linux dependencies (Ubuntu 22.04+)
1818
run: |
1919
set -e
2020
sudo apt-get update
21-
sudo apt-get install qtbase5-dev qt5-qmake libgl1-mesa-dev libarchive-dev libudev-dev libusb-1.0-0-dev
21+
sudo apt-get install qt6-base-dev qmake6 libgl1-mesa-dev libarchive-dev libudev-dev libusb-1.0-0-dev
2222
2323
- name: Prepare build
2424
run: |

gui/qt/CEmu.pro

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
if (lessThan(QT_MAJOR_VERSION, 6)) {
2-
lessThan(QT_MAJOR_VERSION, 5) : error("You need at least Qt 5.7 to build CEmu!")
3-
lessThan(QT_MINOR_VERSION, 7) : error("You need at least Qt 5.7 to build CEmu!")
2+
lessThan(QT_MINOR_VERSION, 2) : error("You need at least Qt 6.2 to build CEmu!")
43
}
54

65
# Error if git submodules are not downloaded

gui/qt/CMakeLists.txt

Lines changed: 6 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,8 @@
11
cmake_minimum_required(VERSION 3.21.1)
22

3-
option(USE_QT5 "Build with Qt5 instead of Qt6" OFF)
4-
5-
if(USE_QT5)
6-
list(APPEND VCPKG_MANIFEST_FEATURES "qt5")
7-
if(APPLE)
8-
set(ENV{MACOSX_DEPLOYMENT_TARGET} "10.13")
9-
set(ENV{VCPKG_KEEP_ENV_VARS} "MACOSX_DEPLOYMENT_TARGET")
10-
endif()
11-
else()
12-
list(APPEND VCPKG_MANIFEST_FEATURES "qt6")
13-
if(APPLE)
14-
set(ENV{MACOSX_DEPLOYMENT_TARGET} "11.0")
15-
set(ENV{VCPKG_KEEP_ENV_VARS} "MACOSX_DEPLOYMENT_TARGET")
16-
endif()
3+
if(APPLE)
4+
set(ENV{MACOSX_DEPLOYMENT_TARGET} "11.0")
5+
set(ENV{VCPKG_KEEP_ENV_VARS} "MACOSX_DEPLOYMENT_TARGET")
176
endif()
187

198
option(DEPS_RELEASE_ONLY "Build only release versions of vcpkg dependencies" OFF)
@@ -72,12 +61,8 @@ endif()
7261

7362
include(GNUInstallDirs)
7463

75-
if(USE_QT5)
76-
find_package(Qt5 REQUIRED COMPONENTS Core DBus Gui Network Widgets)
77-
else()
78-
find_package(QT NAMES Qt6 REQUIRED COMPONENTS Core)
79-
find_package(Qt6 REQUIRED COMPONENTS DBus Gui Network Widgets)
80-
endif()
64+
find_package(QT NAMES Qt6 REQUIRED COMPONENTS Core)
65+
find_package(Qt6 REQUIRED COMPONENTS DBus Gui Network Widgets)
8166

8267
set(CMAKE_AUTORCC ON)
8368
set(CMAKE_AUTOMOC ON)
@@ -201,11 +186,7 @@ set(CEmu_Sources
201186
${CEmu_Resources}
202187
)
203188

204-
if(USE_QT5)
205-
add_executable(CEmu ${MAYBE_MACOSX_BUNDLE} ${CEmu_Sources})
206-
else()
207-
qt_add_executable(CEmu ${MAYBE_MACOSX_BUNDLE} ${CEmu_Sources})
208-
endif()
189+
qt_add_executable(CEmu ${MAYBE_MACOSX_BUNDLE} ${CEmu_Sources})
209190

210191
# TODO better, see https://stackoverflow.com/a/21028226/378298
211192
execute_process(

0 commit comments

Comments
 (0)