Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[qt5-base & qtbase] Fix error on arm64-windows #41536

Merged
merged 10 commits into from
Oct 24, 2024
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions ports/qt5-base/patches/qmake-arm64.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
From b66ecb295ecc3981b1c21f01d62c9066f5d6e6ca Mon Sep 17 00:00:00 2001
From: Oliver Wolff <[email protected]>
Date: Mon, 15 Jul 2024 09:31:30 +0200
Subject: [PATCH 1/1] qmake: Add support for arm64 hosts on Windows

Pick-to: 6.8
Change-Id: I0096300fce870ef4411b071f074588a6420188e0
Reviewed-by: Alexey Edelev <[email protected]>
Reviewed-by: Joerg Bornemann <[email protected]>
---
qmake/library/qmakeevaluator.cpp | 5 +++++
1 file changed, 5 insertions(+)

pedrolcl marked this conversation as resolved.
Show resolved Hide resolved
diff --git a/qmake/library/qmakeevaluator.cpp b/qmake/library/qmakeevaluator.cpp
index df3f92d7d5df..0ee8cdbf11e1 100644
--- a/qmake/library/qmakeevaluator.cpp
+++ b/qmake/library/qmakeevaluator.cpp
@@ -1046,6 +1046,11 @@ void QMakeEvaluator::loadDefaults()
case PROCESSOR_ARCHITECTURE_AMD64:
archStr = ProString("x86_64");
break;
+# endif
+# ifdef PROCESSOR_ARCHITECTURE_ARM64
+ case PROCESSOR_ARCHITECTURE_ARM64:
+ archStr = ProString("arm64");
+ break;
# endif
case PROCESSOR_ARCHITECTURE_INTEL:
archStr = ProString("x86");
--
2.16.3
2 changes: 2 additions & 0 deletions ports/qt5-base/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@ qt_download_submodule( OUT_SOURCE_PATH SOURCE_PATH
patches/fix_angle.patch # Failed to create OpenGL context for format QSurfaceFormat ...
patches/mingw9.patch # Fix compile with MinGW-W64 9.0.0: Redefinition of 'struct _FILE_ID_INFO'
patches/XKB_KEY_dead_lowline.patch # https://bugreports.qt.io/browse/QTBUG-117950

patches/qmake-arm64.patch # Fix by Oliver Wolff to support ARM64 hosts on Windows
)

# Remove vendored dependencies to ensure they are not picked up by the build
Expand Down
1 change: 1 addition & 0 deletions ports/qt5-base/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"name": "qt5-base",
"version": "5.15.15",
"port-version": 1,
"description": "Qt Base provides the basic non-GUI functionality required by all Qt applications.",
"homepage": "https://www.qt.io/",
"license": null,
Expand Down
1 change: 1 addition & 0 deletions ports/qtbase/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ set(${PORT}_PATCHES
fix-host-aliasing.patch
fix_deploy_windows.patch
fix-link-lib-discovery.patch
qmake-arm64.patch
)

if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
Expand Down
31 changes: 31 additions & 0 deletions ports/qtbase/qmake-arm64.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
From b66ecb295ecc3981b1c21f01d62c9066f5d6e6ca Mon Sep 17 00:00:00 2001
From: Oliver Wolff <[email protected]>
Date: Mon, 15 Jul 2024 09:31:30 +0200
Subject: [PATCH 1/1] qmake: Add support for arm64 hosts on Windows

Pick-to: 6.8
Change-Id: I0096300fce870ef4411b071f074588a6420188e0
Reviewed-by: Alexey Edelev <[email protected]>
Reviewed-by: Joerg Bornemann <[email protected]>
---
qmake/library/qmakeevaluator.cpp | 5 +++++
1 file changed, 5 insertions(+)

pedrolcl marked this conversation as resolved.
Show resolved Hide resolved
diff --git a/qmake/library/qmakeevaluator.cpp b/qmake/library/qmakeevaluator.cpp
index df3f92d7d5df..0ee8cdbf11e1 100644
--- a/qmake/library/qmakeevaluator.cpp
+++ b/qmake/library/qmakeevaluator.cpp
@@ -1046,6 +1046,11 @@ void QMakeEvaluator::loadDefaults()
case PROCESSOR_ARCHITECTURE_AMD64:
archStr = ProString("x86_64");
break;
+# endif
+# ifdef PROCESSOR_ARCHITECTURE_ARM64
+ case PROCESSOR_ARCHITECTURE_ARM64:
+ archStr = ProString("arm64");
+ break;
# endif
case PROCESSOR_ARCHITECTURE_INTEL:
archStr = ProString("x86");
--
2.16.3
1 change: 1 addition & 0 deletions ports/qtbase/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"name": "qtbase",
"version": "6.7.3",
"port-version": 1,
"description": "Qt Base (Core, Gui, Widgets, Network, ...)",
"homepage": "https://www.qt.io/",
"license": null,
Expand Down
4 changes: 2 additions & 2 deletions versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -7326,7 +7326,7 @@
},
"qt5-base": {
"baseline": "5.15.15",
"port-version": 0
"port-version": 1
},
"qt5-canvas3d": {
"baseline": "0",
Expand Down Expand Up @@ -7494,7 +7494,7 @@
},
"qtbase": {
"baseline": "6.7.3",
"port-version": 0
"port-version": 1
},
"qtcharts": {
"baseline": "6.7.3",
Expand Down
5 changes: 5 additions & 0 deletions versions/q-/qt5-base.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "922e58e96e22afacb65fc9226e1cbe9abbb685f3",
"version": "5.15.15",
"port-version": 1
},
{
"git-tree": "99dfc2c88d6a863afc5eef00463166c50e5e12d2",
"version": "5.15.15",
Expand Down
5 changes: 5 additions & 0 deletions versions/q-/qtbase.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "fc8777955f99b25b8bd0f633c09b28b1e11c7ca3",
"version": "6.7.3",
"port-version": 1
},
{
"git-tree": "175c7c5f08049a07e1b18f39e622e82a60a16147",
"version": "6.7.3",
Expand Down
Loading