Skip to content

Commit f58aece

Browse files
authored
[Qt6Base] Version 6.10.2 (host build) (#13167)
1 parent f519a69 commit f58aece

File tree

2 files changed

+19
-139
lines changed

2 files changed

+19
-139
lines changed

Q/Qt6Base/build_tarballs.jl

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,24 @@
33
using BinaryBuilder, Pkg
44

55
name = "Qt6Base"
6-
version = v"6.8.2"
6+
version = v"6.10.2"
77

88
# Set this to true first when updating the version. It will build only for the host (linux musl).
99
# After that JLL is in the registry, set this to false to build for the other platforms, using
1010
# this same package as host build dependency.
11-
const host_build = false
11+
const host_build = true
1212

1313
# Collection of sources required to build qt6
1414
sources = [
1515
ArchiveSource("https://download.qt.io/official_releases/qt/$(version.major).$(version.minor)/$version/submodules/qtbase-everywhere-src-$version.tar.xz",
16-
"012043ce6d411e6e8a91fdc4e05e6bedcfa10fcb1347d3c33908f7fdd10dfe05"),
16+
"aeb78d29291a2b5fd53cb55950f8f5065b4978c25fb1d77f627d695ab9adf21e"),
1717
DirectorySource("./bundled"),
1818
]
1919

2020
script = raw"""
21+
# Need newer cmake from JLL
22+
apk del cmake
23+
2124
cd $WORKSPACE/srcdir
2225
2326
BIN_DIR="/opt/bin/${bb_full_target}"
@@ -173,6 +176,7 @@ dependencies = [
173176
BuildDependency("Xorg_xproto_jll"),
174177
BuildDependency("Xorg_glproto_jll"),
175178
BuildDependency("Vulkan_Headers_jll"),
179+
HostBuildDependency("CMake_jll"),
176180
]
177181

178182
if !host_build
Lines changed: 12 additions & 136 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
diff -ur qtbase-everywhere-src-6.8.1-orig/cmake/QtCompilerOptimization.cmake qtbase-everywhere-src-6.8.1/cmake/QtCompilerOptimization.cmake
2-
--- qtbase-everywhere-src-6.8.1-orig/cmake/QtCompilerOptimization.cmake 2024-11-12 11:55:11.000000000 +0100
3-
+++ qtbase-everywhere-src-6.8.1/cmake/QtCompilerOptimization.cmake 2025-01-03 10:14:15.474649627 +0100
1+
diff --color -ur a/cmake/QtCompilerOptimization.cmake b/cmake/QtCompilerOptimization.cmake
2+
--- a/cmake/QtCompilerOptimization.cmake 2026-01-13 11:18:17.000000000 +0100
3+
+++ b/cmake/QtCompilerOptimization.cmake 2026-02-17 22:50:57.547445002 +0100
44
@@ -49,7 +49,7 @@
55
set(QT_CFLAGS_RDSEED "${__prefix}-mrdseed")
66
set(QT_CFLAGS_AVX "${__prefix}-mavx")
@@ -10,139 +10,15 @@ diff -ur qtbase-everywhere-src-6.8.1-orig/cmake/QtCompilerOptimization.cmake qtb
1010
set(QT_CFLAGS_AVX512F "${__prefix}-mavx512f")
1111
set(QT_CFLAGS_AVX512ER "${__prefix}-mavx512er")
1212
set(QT_CFLAGS_AVX512CD "${__prefix}-mavx512cd")
13-
Only in qtbase-everywhere-src-6.8.1/src/android/jar: .gradle
14-
Only in qtbase-everywhere-src-6.8.1/src/android/templates: .gradle
15-
diff -ur qtbase-everywhere-src-6.8.1-orig/src/corelib/thread/qfutex_mac_p.h qtbase-everywhere-src-6.8.1/src/corelib/thread/qfutex_mac_p.h
16-
--- qtbase-everywhere-src-6.8.1-orig/src/corelib/thread/qfutex_mac_p.h 2024-11-12 11:55:11.000000000 +0100
17-
+++ qtbase-everywhere-src-6.8.1/src/corelib/thread/qfutex_mac_p.h 2025-01-03 10:14:59.794711719 +0100
18-
@@ -15,6 +15,7 @@
19-
// We mean it.
20-
//
21-
22-
+#include <errno.h>
23-
#include <qdeadlinetimer.h>
24-
#include <qtsan_impl.h>
25-
#include <private/qglobal_p.h>
26-
diff -ur qtbase-everywhere-src-6.8.1-orig/src/gui/opengl/qopengl.cpp qtbase-everywhere-src-6.8.1/src/gui/opengl/qopengl.cpp
27-
--- qtbase-everywhere-src-6.8.1-orig/src/gui/opengl/qopengl.cpp 2024-11-12 11:55:11.000000000 +0100
28-
+++ qtbase-everywhere-src-6.8.1/src/gui/opengl/qopengl.cpp 2025-01-03 10:18:33.215209902 +0100
29-
@@ -187,6 +187,14 @@
30-
return result;
31-
}
32-
33-
+namespace QOSWorkaround {
34-
+ // Due to a mingw bug being confused by static constexpr variables in an exported class,
35-
+ // we cannot use QOperatingSystemVersion::Windows11 in libraries outside of QtCore.
36-
+ // ### TODO Remove this when that problem is fixed.
37-
+ static constexpr QOperatingSystemVersionBase Windows11 { QOperatingSystemVersionBase::Windows,
38-
+ 10, 0, 22000 };
39-
+}
40-
+
41-
// OS term consisting of name and optional version found in
42-
// under "os" in main array and in "exceptions" lists.
43-
struct OsTypeTerm
44-
@@ -196,7 +204,7 @@
45-
static QVersionNumber hostKernelVersion() { return QVersionNumber::fromString(QSysInfo::kernelVersion()); }
46-
static QString hostOsRelease() {
47-
#ifdef Q_OS_WIN
48-
- if (QOperatingSystemVersion::current() >= QOperatingSystemVersion::Windows11)
49-
+ if (QOperatingSystemVersion::current() >= QOSWorkaround::Windows11)
50-
return u"11"_s;
51-
return u"10"_s;
52-
#else
53-
Only in qtbase-everywhere-src-6.8.1/src/network/android/jar: .gradle
54-
diff -ur qtbase-everywhere-src-6.8.1-orig/src/plugins/platforms/windows/qwindowsiconengine.cpp qtbase-everywhere-src-6.8.1/src/plugins/platforms/windows/qwindowsiconengine.cpp
55-
--- qtbase-everywhere-src-6.8.1-orig/src/plugins/platforms/windows/qwindowsiconengine.cpp 2024-11-12 11:55:11.000000000 +0100
56-
+++ qtbase-everywhere-src-6.8.1/src/plugins/platforms/windows/qwindowsiconengine.cpp 2025-01-03 10:20:35.525611881 +0100
57-
@@ -285,10 +285,18 @@
58-
: (m_iconName.length() == 1 ? m_iconName : QString());
59-
}
60-
61-
+namespace QOSWorkaround {
62-
+ // Due to a mingw bug being confused by static constexpr variables in an exported class,
63-
+ // we cannot use QOperatingSystemVersion::Windows11 in libraries outside of QtCore.
64-
+ // ### TODO Remove this when that problem is fixed.
65-
+ static constexpr QOperatingSystemVersionBase Windows11 { QOperatingSystemVersionBase::Windows,
66-
+ 10, 0, 22000 };
67-
+}
68-
+
69-
namespace {
70-
auto iconFontFamily()
71-
{
72-
- static const bool isWindows11 = QOperatingSystemVersion::current() >= QOperatingSystemVersion::Windows11;
73-
+ static const bool isWindows11 = QOperatingSystemVersion::current() >= QOSWorkaround::Windows11;
74-
return isWindows11 ? u"Segoe Fluent Icons"_s
75-
: u"Segoe MDL2 Assets"_s;
76-
}
77-
diff -ur qtbase-everywhere-src-6.8.1-orig/src/plugins/platforms/windows/qwindowsintegration.cpp qtbase-everywhere-src-6.8.1/src/plugins/platforms/windows/qwindowsintegration.cpp
78-
--- qtbase-everywhere-src-6.8.1-orig/src/plugins/platforms/windows/qwindowsintegration.cpp 2024-11-12 11:55:11.000000000 +0100
79-
+++ qtbase-everywhere-src-6.8.1/src/plugins/platforms/windows/qwindowsintegration.cpp 2025-01-03 10:21:13.415749811 +0100
80-
@@ -606,6 +606,14 @@
81-
MessageBeep(MB_OK); // For QApplication
82-
}
83-
84-
+namespace QOSWorkaround {
85-
+ // Due to a mingw bug being confused by static constexpr variables in an exported class,
86-
+ // we cannot use QOperatingSystemVersion::Windows11 in libraries outside of QtCore.
87-
+ // ### TODO Remove this when that problem is fixed.
88-
+ static constexpr QOperatingSystemVersionBase Windows11 { QOperatingSystemVersionBase::Windows,
89-
+ 10, 0, 22000 };
90-
+}
91-
+
92-
void QWindowsIntegration::setApplicationBadge(qint64 number)
93-
{
94-
// Clamp to positive numbers, as the Windows API doesn't support negative numbers
95-
@@ -614,7 +622,7 @@
96-
// Persist, so we can re-apply it on setting changes and Explorer restart
97-
m_applicationBadgeNumber = number;
98-
99-
- static const bool isWindows11 = QOperatingSystemVersion::current() >= QOperatingSystemVersion::Windows11;
100-
+ static const bool isWindows11 = QOperatingSystemVersion::current() >= QOSWorkaround::Windows11;
101-
102-
#if QT_CONFIG(cpp_winrt)
103-
// We prefer the native BadgeUpdater API, that allows us to set a number directly,
104-
diff -ur qtbase-everywhere-src-6.8.1-orig/src/plugins/platforms/windows/qwindowstheme.cpp qtbase-everywhere-src-6.8.1/src/plugins/platforms/windows/qwindowstheme.cpp
105-
--- qtbase-everywhere-src-6.8.1-orig/src/plugins/platforms/windows/qwindowstheme.cpp 2024-11-12 11:55:11.000000000 +0100
106-
+++ qtbase-everywhere-src-6.8.1/src/plugins/platforms/windows/qwindowstheme.cpp 2025-01-03 10:21:53.685902489 +0100
107-
@@ -504,10 +504,18 @@
108-
return appDir.isDir() ? QStringList(appDir.absoluteFilePath()) : QStringList();
109-
}
110-
111-
+namespace QOSWorkaround {
112-
+ // Due to a mingw bug being confused by static constexpr variables in an exported class,
113-
+ // we cannot use QOperatingSystemVersion::Windows11 in libraries outside of QtCore.
114-
+ // ### TODO Remove this when that problem is fixed.
115-
+ static constexpr QOperatingSystemVersionBase Windows11 { QOperatingSystemVersionBase::Windows,
116-
+ 10, 0, 22000 };
117-
+}
118-
+
119-
static inline QStringList styleNames()
120-
{
121-
QStringList styles = { QStringLiteral("WindowsVista"), QStringLiteral("Windows") };
122-
- if (QOperatingSystemVersion::current() >= QOperatingSystemVersion::Windows11)
123-
+ if (QOperatingSystemVersion::current() >= QOSWorkaround::Windows11)
124-
styles.prepend(QStringLiteral("Windows11"));
125-
return styles;
126-
}
127-
diff -ur qtbase-everywhere-src-6.8.1-orig/src/plugins/platforms/windows/qwindowswindow.cpp qtbase-everywhere-src-6.8.1/src/plugins/platforms/windows/qwindowswindow.cpp
128-
--- qtbase-everywhere-src-6.8.1-orig/src/plugins/platforms/windows/qwindowswindow.cpp 2024-11-12 11:55:11.000000000 +0100
129-
+++ qtbase-everywhere-src-6.8.1/src/plugins/platforms/windows/qwindowswindow.cpp 2025-01-03 10:23:49.419705426 +0100
130-
@@ -2551,9 +2551,17 @@
131-
return hasMaximumHeight() || hasMaximumWidth();
13+
diff --color -ur a/src/corelib/global/qlogging.cpp b/src/corelib/global/qlogging.cpp
14+
--- a/src/corelib/global/qlogging.cpp 2026-01-13 11:18:17.000000000 +0100
15+
+++ b/src/corelib/global/qlogging.cpp 2026-02-18 21:02:34.179245237 +0100
16+
@@ -203,7 +203,7 @@
17+
return false;
13218
}
13319

134-
+namespace QOSWorkaround {
135-
+ // Due to a mingw bug being confused by static constexpr variables in an exported class,
136-
+ // we cannot use QOperatingSystemVersion::Windows11 in libraries outside of QtCore.
137-
+ // ### TODO Remove this when that problem is fixed.
138-
+ static constexpr QOperatingSystemVersionBase Windows11 { QOperatingSystemVersionBase::Windows,
139-
+ 10, 0, 22000 };
140-
+}
141-
+
142-
void QWindowsWindow::correctWindowPlacement(WINDOWPLACEMENT &windowPlacement)
20+
-#if defined(Q_OS_LINUX) || defined(Q_OS_DARWIN) || defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)
21+
+#if (defined(Q_OS_LINUX) && defined(__GLIBC__)) || defined(Q_OS_DARWIN) || defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)
22+
static bool qt_append_thread_name_to(QString &message)
14323
{
144-
- static const auto windows11 = QOperatingSystemVersion::Windows11_21H2;
145-
+ static const auto windows11 = QOSWorkaround::Windows11;
146-
static const bool isWindows10 = QOperatingSystemVersion::current() < windows11;
147-
if (!isWindows10)
148-
return;
24+
std::array<char, 16> name{};

0 commit comments

Comments
 (0)