Qt 6.8.2 + pyside
OBS-URL: https://build.opensuse.org/package/show/KDE:Qt6/qt6-base?expand=0&rev=127
This commit is contained in:
commit
0b8d9ffff6
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.osc
|
52
0001-CMake-Install-objects-files-into-ARCHDATADIR.patch
Normal file
52
0001-CMake-Install-objects-files-into-ARCHDATADIR.patch
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
From 4e517492a03b6c0b710a2d9a3df05922ac233992 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Christophe Marin <christophe@krop.fr>
|
||||||
|
Date: Wed, 24 May 2023 11:23:39 +0200
|
||||||
|
Subject: [PATCH] CMake: Install objects files into 'ARCHDATADIR'
|
||||||
|
|
||||||
|
Change-Id: I917a9ef4d83f93eb5c3e47964bf1814d1b53fdab
|
||||||
|
---
|
||||||
|
cmake/QtResourceHelpers.cmake | 8 ++++----
|
||||||
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/cmake/QtResourceHelpers.cmake b/cmake/QtResourceHelpers.cmake
|
||||||
|
index 2df1fed50f..e4f34b5ff1 100644
|
||||||
|
--- a/cmake/QtResourceHelpers.cmake
|
||||||
|
+++ b/cmake/QtResourceHelpers.cmake
|
||||||
|
@@ -38,7 +38,7 @@ function(qt_internal_add_resource target resourceName)
|
||||||
|
if (out_targets)
|
||||||
|
qt_install(TARGETS ${out_targets}
|
||||||
|
EXPORT "${INSTALL_CMAKE_NAMESPACE}${target}Targets"
|
||||||
|
- DESTINATION "${INSTALL_LIBDIR}"
|
||||||
|
+ DESTINATION "${INSTALL_ARCHDATADIR}"
|
||||||
|
)
|
||||||
|
qt_internal_add_targets_to_additional_targets_export_file(
|
||||||
|
TARGETS ${out_targets}
|
||||||
|
@@ -47,7 +47,7 @@ function(qt_internal_add_resource target resourceName)
|
||||||
|
|
||||||
|
qt_internal_install_resource_pdb_files("${out_targets}")
|
||||||
|
qt_internal_record_rcc_object_files("${target}" "${out_targets}"
|
||||||
|
- INSTALL_DIRECTORY "${INSTALL_LIBDIR}")
|
||||||
|
+ INSTALL_DIRECTORY "${INSTALL_ARCHDATADIR}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (arg_OUTPUT_TARGETS)
|
||||||
|
@@ -77,7 +77,7 @@ function(qt_internal_record_rcc_object_files target resource_targets)
|
||||||
|
# It's comprised of thee following path parts:
|
||||||
|
#
|
||||||
|
# part (1) INSTALL_DIRECTORY.
|
||||||
|
- # A usual value is '${INSTALL_LIBDIR}/' for libraries
|
||||||
|
+ # A usual value is '${INSTALL_ARCHDATADIR}/' for libraries
|
||||||
|
# and '${INSTALL_QMLDIR}/foo/bar/' for qml plugin resources.
|
||||||
|
#
|
||||||
|
# part (2) the value computed by CMake's computeInstallObjectDir comprised of an
|
||||||
|
@@ -128,6 +128,6 @@ function(qt_internal_install_resource_pdb_files objlib_targets)
|
||||||
|
_qt_resource_generated_cpp_relative_path)
|
||||||
|
get_filename_component(rel_obj_file_dir "${generated_cpp_file_relative_path}" DIRECTORY)
|
||||||
|
qt_internal_install_pdb_files(${target}
|
||||||
|
- "${INSTALL_LIBDIR}/objects-$<CONFIG>/${target}/${rel_obj_file_dir}")
|
||||||
|
+ "${INSTALL_ARCHDATADIR}/objects-$<CONFIG>/${target}/${rel_obj_file_dir}")
|
||||||
|
endforeach()
|
||||||
|
endfunction()
|
||||||
|
--
|
||||||
|
2.40.1
|
||||||
|
|
39
0001-Don-t-strip-binaries-when-building-with-qmake.patch
Normal file
39
0001-Don-t-strip-binaries-when-building-with-qmake.patch
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
From e43300d226ca98dbda1b1b69c3a1aaf8543f0a16 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Christophe Marin <christophe@krop.fr>
|
||||||
|
Date: Wed, 4 Oct 2023 09:24:42 +0200
|
||||||
|
Subject: [PATCH] Don't strip binaries when building with qmake
|
||||||
|
|
||||||
|
Change-Id: I134f83b0a4fb1636d15f527585f8e9c9892f9057
|
||||||
|
---
|
||||||
|
mkspecs/common/gcc-base.conf | 2 ++
|
||||||
|
mkspecs/common/linux.conf | 4 ++--
|
||||||
|
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
|
||||||
|
index ae58326289..3a686cf18c 100644
|
||||||
|
--- a/mkspecs/common/gcc-base.conf
|
||||||
|
+++ b/mkspecs/common/gcc-base.conf
|
||||||
|
@@ -31,6 +31,8 @@
|
||||||
|
# you can use the manual test in tests/manual/mkspecs.
|
||||||
|
#
|
||||||
|
|
||||||
|
+CONFIG += nostrip
|
||||||
|
+
|
||||||
|
QMAKE_CFLAGS_OPTIMIZE = -O2
|
||||||
|
QMAKE_CFLAGS_OPTIMIZE_FULL = -O3
|
||||||
|
QMAKE_CFLAGS_OPTIMIZE_DEBUG = -Og
|
||||||
|
diff --git a/mkspecs/common/linux.conf b/mkspecs/common/linux.conf
|
||||||
|
index 544cc22715..b809cffeeb 100644
|
||||||
|
--- a/mkspecs/common/linux.conf
|
||||||
|
+++ b/mkspecs/common/linux.conf
|
||||||
|
@@ -48,5 +48,5 @@ QMAKE_OBJCOPY = objcopy
|
||||||
|
QMAKE_NM = nm -P
|
||||||
|
QMAKE_RANLIB =
|
||||||
|
|
||||||
|
-QMAKE_STRIP = strip
|
||||||
|
-QMAKE_STRIPFLAGS_LIB += --strip-unneeded
|
||||||
|
+QMAKE_STRIP =
|
||||||
|
+QMAKE_STRIPFLAGS_LIB +=
|
||||||
|
--
|
||||||
|
2.42.0
|
||||||
|
|
244
0001-HTTP2-Delay-any-communication-until-encrypted-can-be.patch
Normal file
244
0001-HTTP2-Delay-any-communication-until-encrypted-can-be.patch
Normal file
@ -0,0 +1,244 @@
|
|||||||
|
From 2b1e36e183ce75c224305c7a94457b92f7a5cf58 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?M=C3=A5rten=20Nordheim?= <marten.nordheim@qt.io>
|
||||||
|
Date: Tue, 25 Jun 2024 17:09:35 +0200
|
||||||
|
Subject: [PATCH] HTTP2: Delay any communication until encrypted() can be
|
||||||
|
responded to
|
||||||
|
|
||||||
|
We have the encrypted() signal that lets users do extra checks on the
|
||||||
|
established connection. It is emitted as BlockingQueued, so the HTTP
|
||||||
|
thread stalls until it is done emitting. Users can potentially call
|
||||||
|
abort() on the QNetworkReply at that point, which is passed as a Queued
|
||||||
|
call back to the HTTP thread. That means that any currently queued
|
||||||
|
signal emission will be processed before the abort() call is processed.
|
||||||
|
|
||||||
|
In the case of HTTP2 it is a little special since it is multiplexed and
|
||||||
|
the code is built to start requests as they are available. This means
|
||||||
|
that, while the code worked fine for HTTP1, since one connection only
|
||||||
|
has one request, it is not working for HTTP2, since we try to send more
|
||||||
|
requests in-between the encrypted() signal and the abort() call.
|
||||||
|
|
||||||
|
This patch changes the code to delay any communication until the
|
||||||
|
encrypted() signal has been emitted and processed, for HTTP2 only.
|
||||||
|
It's done by adding a few booleans, both to know that we have to return
|
||||||
|
early and so we can keep track of what events arose and what we need to
|
||||||
|
resume once enough time has passed that any abort() call must have been
|
||||||
|
processed.
|
||||||
|
|
||||||
|
Fixes: QTBUG-126610
|
||||||
|
Pick-to: 6.5 6.2 5.15 5.12
|
||||||
|
Change-Id: Ic25a600c278203256e35f541026f34a8783235ae
|
||||||
|
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
|
||||||
|
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
||||||
|
(cherry picked from commit b1e75376cc3adfc7da5502a277dfe9711f3e0536)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
(cherry picked from commit 0fb43e4395da34d561814242a0186999e4956e28)
|
||||||
|
---
|
||||||
|
src/network/access/qhttp2protocolhandler.cpp | 6 +--
|
||||||
|
.../access/qhttpnetworkconnectionchannel.cpp | 48 ++++++++++++++++++-
|
||||||
|
.../access/qhttpnetworkconnectionchannel_p.h | 6 +++
|
||||||
|
tests/auto/network/access/http2/tst_http2.cpp | 44 +++++++++++++++++
|
||||||
|
4 files changed, 99 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/network/access/qhttp2protocolhandler.cpp b/src/network/access/qhttp2protocolhandler.cpp
|
||||||
|
index 0abd99b9bc..3631b13dc8 100644
|
||||||
|
--- a/src/network/access/qhttp2protocolhandler.cpp
|
||||||
|
+++ b/src/network/access/qhttp2protocolhandler.cpp
|
||||||
|
@@ -303,12 +303,12 @@ bool QHttp2ProtocolHandler::sendRequest()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (!prefaceSent && !sendClientPreface())
|
||||||
|
- return false;
|
||||||
|
-
|
||||||
|
if (!requests.size())
|
||||||
|
return true;
|
||||||
|
|
||||||
|
+ if (!prefaceSent && !sendClientPreface())
|
||||||
|
+ return false;
|
||||||
|
+
|
||||||
|
m_channel->state = QHttpNetworkConnectionChannel::WritingState;
|
||||||
|
// Check what was promised/pushed, maybe we do not have to send a request
|
||||||
|
// and have a response already?
|
||||||
|
diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp
|
||||||
|
index 6766989690..1e4161d1fd 100644
|
||||||
|
--- a/src/network/access/qhttpnetworkconnectionchannel.cpp
|
||||||
|
+++ b/src/network/access/qhttpnetworkconnectionchannel.cpp
|
||||||
|
@@ -209,6 +209,10 @@ void QHttpNetworkConnectionChannel::abort()
|
||||||
|
bool QHttpNetworkConnectionChannel::sendRequest()
|
||||||
|
{
|
||||||
|
Q_ASSERT(protocolHandler);
|
||||||
|
+ if (waitingForPotentialAbort) {
|
||||||
|
+ needInvokeSendRequest = true;
|
||||||
|
+ return false; // this return value is unused
|
||||||
|
+ }
|
||||||
|
return protocolHandler->sendRequest();
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -221,21 +225,28 @@ bool QHttpNetworkConnectionChannel::sendRequest()
|
||||||
|
void QHttpNetworkConnectionChannel::sendRequestDelayed()
|
||||||
|
{
|
||||||
|
QMetaObject::invokeMethod(this, [this] {
|
||||||
|
- Q_ASSERT(protocolHandler);
|
||||||
|
if (reply)
|
||||||
|
- protocolHandler->sendRequest();
|
||||||
|
+ sendRequest();
|
||||||
|
}, Qt::ConnectionType::QueuedConnection);
|
||||||
|
}
|
||||||
|
|
||||||
|
void QHttpNetworkConnectionChannel::_q_receiveReply()
|
||||||
|
{
|
||||||
|
Q_ASSERT(protocolHandler);
|
||||||
|
+ if (waitingForPotentialAbort) {
|
||||||
|
+ needInvokeReceiveReply = true;
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
protocolHandler->_q_receiveReply();
|
||||||
|
}
|
||||||
|
|
||||||
|
void QHttpNetworkConnectionChannel::_q_readyRead()
|
||||||
|
{
|
||||||
|
Q_ASSERT(protocolHandler);
|
||||||
|
+ if (waitingForPotentialAbort) {
|
||||||
|
+ needInvokeReadyRead = true;
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
protocolHandler->_q_readyRead();
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1239,7 +1250,18 @@ void QHttpNetworkConnectionChannel::_q_encrypted()
|
||||||
|
if (!h2RequestsToSend.isEmpty()) {
|
||||||
|
// Similar to HTTP/1.1 counterpart below:
|
||||||
|
const auto &pair = std::as_const(h2RequestsToSend).first();
|
||||||
|
+ waitingForPotentialAbort = true;
|
||||||
|
emit pair.second->encrypted();
|
||||||
|
+
|
||||||
|
+ // We don't send or handle any received data until any effects from
|
||||||
|
+ // emitting encrypted() have been processed. This is necessary
|
||||||
|
+ // because the user may have called abort(). We may also abort the
|
||||||
|
+ // whole connection if the request has been aborted and there is
|
||||||
|
+ // no more requests to send.
|
||||||
|
+ QMetaObject::invokeMethod(this,
|
||||||
|
+ &QHttpNetworkConnectionChannel::checkAndResumeCommunication,
|
||||||
|
+ Qt::QueuedConnection);
|
||||||
|
+
|
||||||
|
// In case our peer has sent us its settings (window size, max concurrent streams etc.)
|
||||||
|
// let's give _q_receiveReply a chance to read them first ('invokeMethod', QueuedConnection).
|
||||||
|
}
|
||||||
|
@@ -1257,6 +1279,28 @@ void QHttpNetworkConnectionChannel::_q_encrypted()
|
||||||
|
QMetaObject::invokeMethod(connection, "_q_startNextRequest", Qt::QueuedConnection);
|
||||||
|
}
|
||||||
|
|
||||||
|
+
|
||||||
|
+void QHttpNetworkConnectionChannel::checkAndResumeCommunication()
|
||||||
|
+{
|
||||||
|
+ Q_ASSERT(connection->connectionType() == QHttpNetworkConnection::ConnectionTypeHTTP2
|
||||||
|
+ || connection->connectionType() == QHttpNetworkConnection::ConnectionTypeHTTP2Direct);
|
||||||
|
+
|
||||||
|
+ // Because HTTP/2 requires that we send a SETTINGS frame as the first thing we do, and respond
|
||||||
|
+ // to a SETTINGS frame with an ACK, we need to delay any handling until we can ensure that any
|
||||||
|
+ // effects from emitting encrypted() have been processed.
|
||||||
|
+ // This function is called after encrypted() was emitted, so check for changes.
|
||||||
|
+
|
||||||
|
+ if (!reply && h2RequestsToSend.isEmpty())
|
||||||
|
+ abort();
|
||||||
|
+ waitingForPotentialAbort = false;
|
||||||
|
+ if (needInvokeReadyRead)
|
||||||
|
+ _q_readyRead();
|
||||||
|
+ if (needInvokeReceiveReply)
|
||||||
|
+ _q_receiveReply();
|
||||||
|
+ if (needInvokeSendRequest)
|
||||||
|
+ sendRequest();
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
void QHttpNetworkConnectionChannel::requeueHttp2Requests()
|
||||||
|
{
|
||||||
|
const auto h2RequestsToSendCopy = std::exchange(h2RequestsToSend, {});
|
||||||
|
diff --git a/src/network/access/qhttpnetworkconnectionchannel_p.h b/src/network/access/qhttpnetworkconnectionchannel_p.h
|
||||||
|
index c42290feca..061f20fd42 100644
|
||||||
|
--- a/src/network/access/qhttpnetworkconnectionchannel_p.h
|
||||||
|
+++ b/src/network/access/qhttpnetworkconnectionchannel_p.h
|
||||||
|
@@ -74,6 +74,10 @@ public:
|
||||||
|
QAbstractSocket *socket;
|
||||||
|
bool ssl;
|
||||||
|
bool isInitialized;
|
||||||
|
+ bool waitingForPotentialAbort = false;
|
||||||
|
+ bool needInvokeReceiveReply = false;
|
||||||
|
+ bool needInvokeReadyRead = false;
|
||||||
|
+ bool needInvokeSendRequest = false;
|
||||||
|
ChannelState state;
|
||||||
|
QHttpNetworkRequest request; // current request, only used for HTTP
|
||||||
|
QHttpNetworkReply *reply; // current reply for this request, only used for HTTP
|
||||||
|
@@ -146,6 +150,8 @@ public:
|
||||||
|
void closeAndResendCurrentRequest();
|
||||||
|
void resendCurrentRequest();
|
||||||
|
|
||||||
|
+ void checkAndResumeCommunication();
|
||||||
|
+
|
||||||
|
bool isSocketBusy() const;
|
||||||
|
bool isSocketWriting() const;
|
||||||
|
bool isSocketWaiting() const;
|
||||||
|
diff --git a/tests/auto/network/access/http2/tst_http2.cpp b/tests/auto/network/access/http2/tst_http2.cpp
|
||||||
|
index 00efbc9832..c02e7b7b5b 100644
|
||||||
|
--- a/tests/auto/network/access/http2/tst_http2.cpp
|
||||||
|
+++ b/tests/auto/network/access/http2/tst_http2.cpp
|
||||||
|
@@ -106,6 +106,8 @@ private slots:
|
||||||
|
|
||||||
|
void duplicateRequestsWithAborts();
|
||||||
|
|
||||||
|
+ void abortOnEncrypted();
|
||||||
|
+
|
||||||
|
protected slots:
|
||||||
|
// Slots to listen to our in-process server:
|
||||||
|
void serverStarted(quint16 port);
|
||||||
|
@@ -1479,6 +1481,48 @@ void tst_Http2::duplicateRequestsWithAborts()
|
||||||
|
QCOMPARE(finishedCount, ExpectedSuccessfulRequests);
|
||||||
|
}
|
||||||
|
|
||||||
|
+void tst_Http2::abortOnEncrypted()
|
||||||
|
+{
|
||||||
|
+#if !QT_CONFIG(ssl)
|
||||||
|
+ QSKIP("TLS support is needed for this test");
|
||||||
|
+#else
|
||||||
|
+ clearHTTP2State();
|
||||||
|
+ serverPort = 0;
|
||||||
|
+
|
||||||
|
+ ServerPtr targetServer(newServer(defaultServerSettings, H2Type::h2Direct));
|
||||||
|
+
|
||||||
|
+ QMetaObject::invokeMethod(targetServer.data(), "startServer", Qt::QueuedConnection);
|
||||||
|
+ runEventLoop();
|
||||||
|
+
|
||||||
|
+ nRequests = 1;
|
||||||
|
+ nSentRequests = 0;
|
||||||
|
+
|
||||||
|
+ const auto url = requestUrl(H2Type::h2Direct);
|
||||||
|
+ QNetworkRequest request(url);
|
||||||
|
+ request.setAttribute(QNetworkRequest::Http2DirectAttribute, true);
|
||||||
|
+
|
||||||
|
+ std::unique_ptr<QNetworkReply> reply{manager->get(request)};
|
||||||
|
+ reply->ignoreSslErrors();
|
||||||
|
+ connect(reply.get(), &QNetworkReply::encrypted, reply.get(), [reply = reply.get()](){
|
||||||
|
+ reply->abort();
|
||||||
|
+ });
|
||||||
|
+ connect(reply.get(), &QNetworkReply::errorOccurred, this, &tst_Http2::replyFinishedWithError);
|
||||||
|
+
|
||||||
|
+ runEventLoop();
|
||||||
|
+ STOP_ON_FAILURE
|
||||||
|
+
|
||||||
|
+ QCOMPARE(nRequests, 0);
|
||||||
|
+ QCOMPARE(reply->error(), QNetworkReply::OperationCanceledError);
|
||||||
|
+
|
||||||
|
+ const bool res = QTest::qWaitFor(
|
||||||
|
+ [this, server = targetServer.get()]() {
|
||||||
|
+ return serverGotSettingsACK || prefaceOK || nSentRequests > 0;
|
||||||
|
+ },
|
||||||
|
+ 500);
|
||||||
|
+ QVERIFY(!res);
|
||||||
|
+#endif // QT_CONFIG(ssl)
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
void tst_Http2::serverStarted(quint16 port)
|
||||||
|
{
|
||||||
|
serverPort = port;
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
83
0001-QAbstractItemModelPrivate-add-resetting-member.patch
Normal file
83
0001-QAbstractItemModelPrivate-add-resetting-member.patch
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
From 9785bc77eb4967c4a791eef1745c0c4f2b0db95a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mitch Curtis <mitch.curtis@qt.io>
|
||||||
|
Date: Tue, 24 Sep 2024 10:40:37 +0800
|
||||||
|
Subject: [PATCH] QAbstractItemModelPrivate: add resetting member
|
||||||
|
|
||||||
|
This allows QQmlDelegateModel to know if a QAbstractItemModel subclass
|
||||||
|
is in the process of a reset, which it can't know if beginResetModel
|
||||||
|
was called in the model's constructor.
|
||||||
|
|
||||||
|
As an added bonus, it also allows us to warn the user if they call
|
||||||
|
endResetModel with a previous call to beginResetModel.
|
||||||
|
|
||||||
|
Task-number: QTBUG-125053
|
||||||
|
Task-number: QTBUG-127340
|
||||||
|
Pick-to: 6.5
|
||||||
|
Change-Id: I7d1fb983e9bf868c48472624ad945ae158115943
|
||||||
|
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
||||||
|
(cherry picked from commit 9d8663c18e88cb0b5a65f86cfd7726f3d31e04d6)
|
||||||
|
(cherry picked from commit 2ea3abed0125d81ca4f3bacb9650db7314657332)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
---
|
||||||
|
src/corelib/itemmodels/qabstractitemmodel.cpp | 13 +++++++++++++
|
||||||
|
src/corelib/itemmodels/qabstractitemmodel_p.h | 4 ++++
|
||||||
|
2 files changed, 17 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/src/corelib/itemmodels/qabstractitemmodel.cpp b/src/corelib/itemmodels/qabstractitemmodel.cpp
|
||||||
|
index 5b9b215..3d4d566 100644
|
||||||
|
--- a/src/corelib/itemmodels/qabstractitemmodel.cpp
|
||||||
|
+++ b/src/corelib/itemmodels/qabstractitemmodel.cpp
|
||||||
|
@@ -3400,6 +3400,13 @@ void QAbstractItemModel::endMoveColumns()
|
||||||
|
*/
|
||||||
|
void QAbstractItemModel::beginResetModel()
|
||||||
|
{
|
||||||
|
+ Q_D(QAbstractItemModel);
|
||||||
|
+ if (d->resetting) {
|
||||||
|
+ qWarning() << "beginResetModel called on" << this << "without calling endResetModel first";
|
||||||
|
+ // Warn, but don't return early in case user code relies on the incorrect behavior.
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ d->resetting = true;
|
||||||
|
emit modelAboutToBeReset(QPrivateSignal());
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -3417,8 +3424,14 @@ void QAbstractItemModel::beginResetModel()
|
||||||
|
void QAbstractItemModel::endResetModel()
|
||||||
|
{
|
||||||
|
Q_D(QAbstractItemModel);
|
||||||
|
+ if (!d->resetting) {
|
||||||
|
+ qWarning() << "endResetModel called on" << this << "without calling beginResetModel first";
|
||||||
|
+ // Warn, but don't return early in case user code relies on the incorrect behavior.
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
d->invalidatePersistentIndexes();
|
||||||
|
resetInternalData();
|
||||||
|
+ d->resetting = false;
|
||||||
|
emit modelReset(QPrivateSignal());
|
||||||
|
}
|
||||||
|
|
||||||
|
diff --git a/src/corelib/itemmodels/qabstractitemmodel_p.h b/src/corelib/itemmodels/qabstractitemmodel_p.h
|
||||||
|
index e34dc32..c2113fd 100644
|
||||||
|
--- a/src/corelib/itemmodels/qabstractitemmodel_p.h
|
||||||
|
+++ b/src/corelib/itemmodels/qabstractitemmodel_p.h
|
||||||
|
@@ -45,6 +45,8 @@ public:
|
||||||
|
QAbstractItemModelPrivate();
|
||||||
|
~QAbstractItemModelPrivate();
|
||||||
|
|
||||||
|
+ static const QAbstractItemModelPrivate *get(const QAbstractItemModel *model) { return model->d_func(); }
|
||||||
|
+
|
||||||
|
void removePersistentIndexData(QPersistentModelIndexData *data);
|
||||||
|
void movePersistentIndexes(const QList<QPersistentModelIndexData *> &indexes, int change, const QModelIndex &parent,
|
||||||
|
Qt::Orientation orientation);
|
||||||
|
@@ -115,6 +117,8 @@ public:
|
||||||
|
void insertMultiAtEnd(const QModelIndex& key, QPersistentModelIndexData *data);
|
||||||
|
} persistent;
|
||||||
|
|
||||||
|
+ bool resetting = false;
|
||||||
|
+
|
||||||
|
static const QHash<int,QByteArray> &defaultRoleNames();
|
||||||
|
static bool isVariantLessThan(const QVariant &left, const QVariant &right,
|
||||||
|
Qt::CaseSensitivity cs = Qt::CaseSensitive, bool isLocaleAware = false);
|
||||||
|
--
|
||||||
|
2.46.1
|
||||||
|
|
@ -0,0 +1,73 @@
|
|||||||
|
From 55a8050d1e762befeeb5ba557f458b0092cbb44b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Ahmad Samir <a.samirh78@gmail.com>
|
||||||
|
Date: Wed, 16 Oct 2024 19:26:25 +0300
|
||||||
|
Subject: [PATCH] QDirIterator: don't crash with next() after hasNext()
|
||||||
|
returned false
|
||||||
|
|
||||||
|
The typical use-case is calling hasNext() first before using next, but
|
||||||
|
the API docs say that calling next() even when hasNext() is false,
|
||||||
|
should just return an empty string.
|
||||||
|
|
||||||
|
[ChangeLog][QtCore][QDirIterator] Fixed a crash that happened if you
|
||||||
|
called next() after hasNext() had already returned false. Ideally you
|
||||||
|
should never call next() without first calling hasNext() as that could
|
||||||
|
lead to unexpected results (for example, infinite loops).
|
||||||
|
|
||||||
|
Fixes: QTBUG-130142
|
||||||
|
Change-Id: If0a8b1fe7dbd13b45793409a7a241e53c7257f24
|
||||||
|
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
||||||
|
(cherry picked from commit c7691842f743f568a073582c8f0cacd6ee188f98)
|
||||||
|
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
||||||
|
---
|
||||||
|
src/corelib/io/qdiriterator.cpp | 5 +++++
|
||||||
|
.../auto/corelib/io/qdiriterator/tst_qdiriterator.cpp | 11 +++++++++++
|
||||||
|
2 files changed, 16 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/src/corelib/io/qdiriterator.cpp b/src/corelib/io/qdiriterator.cpp
|
||||||
|
index faea8088cb..7d7fe15684 100644
|
||||||
|
--- a/src/corelib/io/qdiriterator.cpp
|
||||||
|
+++ b/src/corelib/io/qdiriterator.cpp
|
||||||
|
@@ -103,6 +103,11 @@ public:
|
||||||
|
|
||||||
|
void advance()
|
||||||
|
{
|
||||||
|
+ // Match the behavior of advance() from before porting to QDirListing,
|
||||||
|
+ // that is, even if hasNext() returns false, calling next() returns an
|
||||||
|
+ // empty string without crashing. QTBUG-130142
|
||||||
|
+ if (it == lister.end())
|
||||||
|
+ return;
|
||||||
|
currentFileInfo = nextFileInfo;
|
||||||
|
if (++it != lister.end()) {
|
||||||
|
nextFileInfo = it->fileInfo();
|
||||||
|
diff --git a/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp b/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp
|
||||||
|
index a0a8917c27..b739f0eb11 100644
|
||||||
|
--- a/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp
|
||||||
|
+++ b/tests/auto/corelib/io/qdiriterator/tst_qdiriterator.cpp
|
||||||
|
@@ -86,6 +86,8 @@ private slots:
|
||||||
|
void hiddenDirs_hiddenFiles();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
+ void hasNextFalseNoCrash();
|
||||||
|
+
|
||||||
|
private:
|
||||||
|
QSharedPointer<QTemporaryDir> m_dataDir;
|
||||||
|
};
|
||||||
|
@@ -642,6 +644,15 @@ void tst_QDirIterator::hiddenDirs_hiddenFiles()
|
||||||
|
}
|
||||||
|
#endif // Q_OS_WIN
|
||||||
|
|
||||||
|
+void tst_QDirIterator::hasNextFalseNoCrash()
|
||||||
|
+{
|
||||||
|
+ QDirIterator iter(u"empty"_s, QDir::NoDotAndDotDot);
|
||||||
|
+ // QTBUG-130142
|
||||||
|
+ // No crash if you call next() after hasNext() returned false
|
||||||
|
+ QVERIFY(!iter.hasNext());
|
||||||
|
+ QVERIFY(iter.next().isEmpty());
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
QTEST_MAIN(tst_QDirIterator)
|
||||||
|
|
||||||
|
#include "tst_qdiriterator.moc"
|
||||||
|
--
|
||||||
|
2.47.0
|
||||||
|
|
114
0001-QUuid-restore-sorting-order-of-Qt-6.8.patch
Normal file
114
0001-QUuid-restore-sorting-order-of-Qt-6.8.patch
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
From 3e8037af63821123eb392f42d717d10f741fb384 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thiago Macieira <thiago.macieira@intel.com>
|
||||||
|
Date: Sat, 19 Oct 2024 21:28:48 -0700
|
||||||
|
Subject: [PATCH] QUuid: restore sorting order of Qt < 6.8
|
||||||
|
|
||||||
|
This brings back and adapted version of the sorting code that was
|
||||||
|
removed by commit 15f753ca5a60b5273d243f528978e25c28a9b56d. The issue,
|
||||||
|
as shown in the test, is that we store data1, data2, and data3 as
|
||||||
|
native-endian integers, so the bitcasts in the new code cause them to
|
||||||
|
become mangled in little-endian platforms.
|
||||||
|
|
||||||
|
Since this is a weird behavior and we'll be changing the sorting order
|
||||||
|
in Qt 7 anyway, I've left a warning for us to think about it at the
|
||||||
|
time.
|
||||||
|
|
||||||
|
[ChangeLog][QtCore][QUuid] Fixed a regression that caused QUuid sorting
|
||||||
|
order to change for some UUIDs, compared to Qt 6.7 and earlier versions.
|
||||||
|
|
||||||
|
Fixes: QTBUG-130155
|
||||||
|
Pick-to: 6.8
|
||||||
|
Change-Id: I5eeb7b36bfc5ed7218e1fffd6a773c582ad0f6f4
|
||||||
|
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
|
||||||
|
---
|
||||||
|
src/corelib/plugin/quuid.cpp | 3 +++
|
||||||
|
src/corelib/plugin/quuid.h | 12 +++++++++---
|
||||||
|
tests/auto/corelib/plugin/quuid/tst_quuid.cpp | 9 +++++++++
|
||||||
|
3 files changed, 21 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/corelib/plugin/quuid.cpp b/src/corelib/plugin/quuid.cpp
|
||||||
|
index af7c07d..5cbae60 100644
|
||||||
|
--- a/src/corelib/plugin/quuid.cpp
|
||||||
|
+++ b/src/corelib/plugin/quuid.cpp
|
||||||
|
@@ -33,6 +33,9 @@ void _q_toHex(char *&dst, Integral value)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+#if QT_VERSION_MAJOR == 7
|
||||||
|
+# warning Consider storing the UUID as simple bytes, not as {uint, ushort, short, array}
|
||||||
|
+#endif
|
||||||
|
template <class Integral>
|
||||||
|
bool _q_fromHex(const char *&src, Integral &value)
|
||||||
|
{
|
||||||
|
diff --git a/src/corelib/plugin/quuid.h b/src/corelib/plugin/quuid.h
|
||||||
|
index 435b7bb..0597445 100644
|
||||||
|
--- a/src/corelib/plugin/quuid.h
|
||||||
|
+++ b/src/corelib/plugin/quuid.h
|
||||||
|
@@ -132,7 +132,14 @@ private:
|
||||||
|
static constexpr Qt::strong_ordering
|
||||||
|
compareThreeWay_helper(const QUuid &lhs, const QUuid &rhs) noexcept
|
||||||
|
{
|
||||||
|
-#if defined(__cpp_lib_bit_cast) && defined(QT_SUPPORTS_INT128)
|
||||||
|
+#if QT_VERSION < QT_VERSION_CHECK(7, 0, 0) && !defined(QT_BOOTSTRAPPED)
|
||||||
|
+ if (const auto c = Qt::compareThreeWay(lhs.data1, rhs.data1); !is_eq(c))
|
||||||
|
+ return c;
|
||||||
|
+ if (const auto c = Qt::compareThreeWay(lhs.data2, rhs.data2); !is_eq(c))
|
||||||
|
+ return c;
|
||||||
|
+ if (const auto c = Qt::compareThreeWay(lhs.data3, rhs.data3); !is_eq(c))
|
||||||
|
+ return c;
|
||||||
|
+#elif defined(__cpp_lib_bit_cast) && defined(QT_SUPPORTS_INT128)
|
||||||
|
quint128 lu = qFromBigEndian(std::bit_cast<quint128>(lhs));
|
||||||
|
quint128 ru = qFromBigEndian(std::bit_cast<quint128>(rhs));
|
||||||
|
return Qt::compareThreeWay(lu, ru);
|
||||||
|
@@ -144,13 +151,12 @@ private:
|
||||||
|
};
|
||||||
|
if (const auto c = Qt::compareThreeWay(make_int(lhs), make_int(rhs)); !is_eq(c))
|
||||||
|
return c;
|
||||||
|
-
|
||||||
|
+#endif
|
||||||
|
for (unsigned i = 0; i < sizeof(lhs.data4); ++i) {
|
||||||
|
if (const auto c = Qt::compareThreeWay(lhs.data4[i], rhs.data4[i]); !is_eq(c))
|
||||||
|
return c;
|
||||||
|
}
|
||||||
|
return Qt::strong_ordering::equal;
|
||||||
|
-#endif
|
||||||
|
}
|
||||||
|
friend constexpr Qt::strong_ordering compareThreeWay(const QUuid &lhs, const QUuid &rhs) noexcept
|
||||||
|
{
|
||||||
|
diff --git a/tests/auto/corelib/plugin/quuid/tst_quuid.cpp b/tests/auto/corelib/plugin/quuid/tst_quuid.cpp
|
||||||
|
index 8b75817..f1b96e6 100644
|
||||||
|
--- a/tests/auto/corelib/plugin/quuid/tst_quuid.cpp
|
||||||
|
+++ b/tests/auto/corelib/plugin/quuid/tst_quuid.cpp
|
||||||
|
@@ -465,6 +465,7 @@ void tst_QUuid::ordering_data()
|
||||||
|
#define AFTER_NCS(x) ROW(minNCS, x, less)
|
||||||
|
AFTER_NCS(ncs000_0000_0010);
|
||||||
|
AFTER_NCS(ncs000_0000_0100);
|
||||||
|
+ ROW(ncs000_0000_0010, ncs000_0000_0100, less);
|
||||||
|
AFTER_NCS(ncs000_0000_1000);
|
||||||
|
AFTER_NCS(ncs000_0001_0000);
|
||||||
|
AFTER_NCS(ncs000_0010_0000);
|
||||||
|
@@ -492,6 +493,13 @@ void tst_QUuid::ordering_data()
|
||||||
|
AFTER_R(ones);
|
||||||
|
#undef AFTER_R
|
||||||
|
#undef ROW
|
||||||
|
+
|
||||||
|
+ // due to the way we store data1,2,3 in memory, the ordering will flip
|
||||||
|
+ QTest::newRow("qt7-integer-portions")
|
||||||
|
+ << QUuid{0x01000002, 0x0000, 0x0000, 0, 0, 0, 0, 0, 0, 0, 0}
|
||||||
|
+ << QUuid{0x02000001, 0x0000, 0x0000, 0, 0, 0, 0, 0, 0, 0, 0}
|
||||||
|
+ << (QSysInfo::ByteOrder == QSysInfo::BigEndian || QT_VERSION_MAJOR < 7 ?
|
||||||
|
+ Qt::strong_ordering::less : Qt::strong_ordering::greater);
|
||||||
|
}
|
||||||
|
|
||||||
|
void tst_QUuid::ordering()
|
||||||
|
@@ -500,6 +508,7 @@ void tst_QUuid::ordering()
|
||||||
|
QFETCH(const QUuid, rhs);
|
||||||
|
QFETCH(const Qt::strong_ordering, expected);
|
||||||
|
|
||||||
|
+ QCOMPARE(qCompareThreeWay(lhs, rhs), expected);
|
||||||
|
QT_TEST_ALL_COMPARISON_OPS(lhs, rhs, expected);
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.47.0
|
||||||
|
|
167
0001-Revert-xcb-handle-XI2-input-button-and-motion-events.patch
Normal file
167
0001-Revert-xcb-handle-XI2-input-button-and-motion-events.patch
Normal file
@ -0,0 +1,167 @@
|
|||||||
|
From 1337291b725b0ab5958191f35ac69b8fabf0a510 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Liang Qi <liang.qi@qt.io>
|
||||||
|
Date: Tue, 1 Oct 2024 12:46:30 +0200
|
||||||
|
Subject: [PATCH] Revert "xcb: handle XI2 input button and motion events from
|
||||||
|
slave devices"
|
||||||
|
|
||||||
|
This reverts commit b71be292780b858f2c55ce92601452e2ea946de2, which causes a regression when using mouse wheel and moving cursor together
|
||||||
|
on scroll bar for some qt applications, like qutebrowser and
|
||||||
|
qbittorrent.
|
||||||
|
|
||||||
|
Fixes: QTBUG-129509
|
||||||
|
Fixes: QTBUG-129514
|
||||||
|
Task-number: QTBUG-110841
|
||||||
|
Pick-to: 6.8.0 6.8 6.7 6.5 6.2 5.15
|
||||||
|
Change-Id: I703158874413a1306ea99217bced4ba38382f543
|
||||||
|
---
|
||||||
|
.../platforms/xcb/qxcbconnection_xi2.cpp | 121 +++---------------
|
||||||
|
1 file changed, 16 insertions(+), 105 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp b/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp
|
||||||
|
index 55c226d..4f62a18 100644
|
||||||
|
--- a/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp
|
||||||
|
+++ b/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp
|
||||||
|
@@ -682,96 +682,23 @@ static inline qreal fixed1616ToReal(xcb_input_fp1616_t val)
|
||||||
|
return qreal(val) / 0x10000;
|
||||||
|
}
|
||||||
|
|
||||||
|
-//implementation is ported from https://codereview.qt-project.org/c/qt/qtbase/+/231552/12/src/plugins/platforms/xcb/qxcbconnection_xi2.cpp#558
|
||||||
|
-namespace {
|
||||||
|
-
|
||||||
|
-/*! \internal
|
||||||
|
-
|
||||||
|
- Qt listens for XIAllDevices to avoid losing mouse events. This function
|
||||||
|
- ensures that we don't process the same event twice: from a slave device and
|
||||||
|
- then again from a master device.
|
||||||
|
-
|
||||||
|
- In a normal use case (e.g. mouse press and release inside a window), we will
|
||||||
|
- drop events from master devices as duplicates. Other advantage of processing
|
||||||
|
- events from slave devices is that they don't share button state. All buttons
|
||||||
|
- on a master device share the state.
|
||||||
|
-
|
||||||
|
- Examples of special cases:
|
||||||
|
-
|
||||||
|
-\list
|
||||||
|
-
|
||||||
|
-\li During system move/resize, window manager (_NET_WM_MOVERESIZE) grabs the
|
||||||
|
- master pointer, in this case we process the matching release from the slave
|
||||||
|
- device. A master device event is not sent by the server, hence no duplicate
|
||||||
|
- event to drop. If we listened for XIAllMasterDevices instead, we would never
|
||||||
|
- see a release event in this case.
|
||||||
|
-
|
||||||
|
-\li If we dismiss a context menu by clicking somewhere outside a Qt application,
|
||||||
|
- we will process the mouse press from the master pointer as that is the
|
||||||
|
- device we are grabbing. We are not grabbing slave devices (grabbing on the
|
||||||
|
- slave device is buggy according to 19d289ab1b5bde3e136765e5432b5c7d004df3a4).
|
||||||
|
- And since the event occurs outside our window, the slave device event is
|
||||||
|
- not sent to us by the server, hence no duplicate event to drop.
|
||||||
|
-
|
||||||
|
-\endlist
|
||||||
|
-*/
|
||||||
|
-bool isDuplicateEvent(xcb_ge_event_t *event)
|
||||||
|
-{
|
||||||
|
- Q_ASSERT(event);
|
||||||
|
-
|
||||||
|
- struct qXIEvent {
|
||||||
|
- bool isValid = false;
|
||||||
|
- uint16_t sourceid;
|
||||||
|
- uint8_t evtype;
|
||||||
|
- uint32_t detail;
|
||||||
|
- int32_t root_x;
|
||||||
|
- int32_t root_y;
|
||||||
|
- };
|
||||||
|
- static qXIEvent lastSeenEvent;
|
||||||
|
-
|
||||||
|
- bool isDuplicate = false;
|
||||||
|
- auto *xiDeviceEvent = reinterpret_cast<qt_xcb_input_device_event_t *>(event);
|
||||||
|
- if (lastSeenEvent.isValid) {
|
||||||
|
- isDuplicate = lastSeenEvent.sourceid == xiDeviceEvent->sourceid &&
|
||||||
|
- lastSeenEvent.evtype == xiDeviceEvent->event_type &&
|
||||||
|
- lastSeenEvent.detail == xiDeviceEvent->detail &&
|
||||||
|
- lastSeenEvent.root_x == xiDeviceEvent->root_x &&
|
||||||
|
- lastSeenEvent.root_y == xiDeviceEvent->root_y;
|
||||||
|
- } else {
|
||||||
|
- lastSeenEvent.isValid = true;
|
||||||
|
- }
|
||||||
|
- lastSeenEvent.sourceid = xiDeviceEvent->sourceid;
|
||||||
|
- lastSeenEvent.evtype = xiDeviceEvent->event_type;
|
||||||
|
- lastSeenEvent.detail = xiDeviceEvent->detail;
|
||||||
|
- lastSeenEvent.root_x = xiDeviceEvent->root_x;
|
||||||
|
- lastSeenEvent.root_y = xiDeviceEvent->root_y;
|
||||||
|
-
|
||||||
|
- if (isDuplicate) {
|
||||||
|
- qCDebug(lcQpaXInputEvents, "Duplicate XI2 event %d", event->event_type);
|
||||||
|
- // This sanity check ensures that special cases like QTBUG-59277 keep working.
|
||||||
|
- lastSeenEvent.isValid = false; // An event can be a duplicate only once.
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return isDuplicate;
|
||||||
|
-}
|
||||||
|
-
|
||||||
|
-} // namespace
|
||||||
|
-
|
||||||
|
void QXcbConnection::xi2HandleEvent(xcb_ge_event_t *event)
|
||||||
|
{
|
||||||
|
auto *xiEvent = reinterpret_cast<qt_xcb_input_device_event_t *>(event);
|
||||||
|
- if (m_xiSlavePointerIds.contains(xiEvent->deviceid)) {
|
||||||
|
- if (!(xiEvent->event_type == XCB_INPUT_BUTTON_PRESS
|
||||||
|
- || xiEvent->event_type == XCB_INPUT_BUTTON_RELEASE
|
||||||
|
- || xiEvent->event_type == XCB_INPUT_MOTION)) {
|
||||||
|
- if (!m_duringSystemMoveResize)
|
||||||
|
- return;
|
||||||
|
- if (xiEvent->event == XCB_NONE)
|
||||||
|
- return;
|
||||||
|
-
|
||||||
|
- if (xiEvent->event_type == XCB_INPUT_TOUCH_END)
|
||||||
|
- abortSystemMoveResize(xiEvent->event);
|
||||||
|
+ setTime(xiEvent->time);
|
||||||
|
+ if (m_xiSlavePointerIds.contains(xiEvent->deviceid) && xiEvent->event_type != XCB_INPUT_PROPERTY) {
|
||||||
|
+ if (!m_duringSystemMoveResize)
|
||||||
|
+ return;
|
||||||
|
+ if (xiEvent->event == XCB_NONE)
|
||||||
|
+ return;
|
||||||
|
|
||||||
|
+ if (xiEvent->event_type == XCB_INPUT_BUTTON_RELEASE
|
||||||
|
+ && xiEvent->detail == XCB_BUTTON_INDEX_1 ) {
|
||||||
|
+ abortSystemMoveResize(xiEvent->event);
|
||||||
|
+ } else if (xiEvent->event_type == XCB_INPUT_TOUCH_END) {
|
||||||
|
+ abortSystemMoveResize(xiEvent->event);
|
||||||
|
+ return;
|
||||||
|
+ } else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -783,27 +710,11 @@ void QXcbConnection::xi2HandleEvent(xcb_ge_event_t *event)
|
||||||
|
switch (xiEvent->event_type) {
|
||||||
|
case XCB_INPUT_BUTTON_PRESS:
|
||||||
|
case XCB_INPUT_BUTTON_RELEASE:
|
||||||
|
- case XCB_INPUT_MOTION: {
|
||||||
|
- if (isDuplicateEvent(event))
|
||||||
|
- return;
|
||||||
|
- if (m_xiSlavePointerIds.contains(xiEvent->deviceid)) {
|
||||||
|
- if (m_duringSystemMoveResize) {
|
||||||
|
- if (xiEvent->event_type == XCB_INPUT_BUTTON_RELEASE
|
||||||
|
- && xiEvent->detail == XCB_BUTTON_INDEX_1 ) {
|
||||||
|
- abortSystemMoveResize(xiEvent->event);
|
||||||
|
- } else {
|
||||||
|
- return;
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
- xiDeviceEvent = xiEvent;
|
||||||
|
- eventListener = windowEventListenerFromId(xiDeviceEvent->event);
|
||||||
|
- sourceDeviceId = xiDeviceEvent->sourceid; // use the actual device id instead of the master
|
||||||
|
- break;
|
||||||
|
- }
|
||||||
|
+ case XCB_INPUT_MOTION:
|
||||||
|
case XCB_INPUT_TOUCH_BEGIN:
|
||||||
|
case XCB_INPUT_TOUCH_UPDATE:
|
||||||
|
- case XCB_INPUT_TOUCH_END: {
|
||||||
|
+ case XCB_INPUT_TOUCH_END:
|
||||||
|
+ {
|
||||||
|
xiDeviceEvent = xiEvent;
|
||||||
|
eventListener = windowEventListenerFromId(xiDeviceEvent->event);
|
||||||
|
sourceDeviceId = xiDeviceEvent->sourceid; // use the actual device id instead of the master
|
||||||
|
--
|
||||||
|
2.46.1
|
||||||
|
|
54
0001-Use-newer-GCC-on-Leap.patch
Normal file
54
0001-Use-newer-GCC-on-Leap.patch
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
From 793c4c0d728024139083660a7f382f6d95853efe Mon Sep 17 00:00:00 2001
|
||||||
|
From: Christophe Marin <christophe@krop.fr>
|
||||||
|
Date: Sun, 6 Jun 2021 10:44:09 +0200
|
||||||
|
Subject: [PATCH] Use newer GCC on Leap.patch
|
||||||
|
|
||||||
|
The default compiler in Leap doesn't match the Qt requirements.
|
||||||
|
Use the latest compiler version available on Leap.
|
||||||
|
|
||||||
|
Change-Id: I0c4ad87af4dd60d12fa09366eb9910edafcc9c4c
|
||||||
|
---
|
||||||
|
mkspecs/common/g++-base.conf | 6 +++---
|
||||||
|
mkspecs/common/gcc-base.conf | 4 ++--
|
||||||
|
2 files changed, 5 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/mkspecs/common/g++-base.conf b/mkspecs/common/g++-base.conf
|
||||||
|
index d392879..ddca128 100644
|
||||||
|
--- a/mkspecs/common/g++-base.conf
|
||||||
|
+++ b/mkspecs/common/g++-base.conf
|
||||||
|
@@ -8,14 +8,14 @@
|
||||||
|
# you can use the manual test in tests/manual/mkspecs.
|
||||||
|
#
|
||||||
|
|
||||||
|
-QMAKE_COMPILER = gcc
|
||||||
|
+QMAKE_COMPILER = gcc-13
|
||||||
|
|
||||||
|
-QMAKE_CC = $${CROSS_COMPILE}gcc
|
||||||
|
+QMAKE_CC = $${CROSS_COMPILE}gcc-13
|
||||||
|
|
||||||
|
QMAKE_LINK_C = $$QMAKE_CC
|
||||||
|
QMAKE_LINK_C_SHLIB = $$QMAKE_CC
|
||||||
|
|
||||||
|
-QMAKE_CXX = $${CROSS_COMPILE}g++
|
||||||
|
+QMAKE_CXX = $${CROSS_COMPILE}g++-13
|
||||||
|
|
||||||
|
QMAKE_LINK = $$QMAKE_CXX
|
||||||
|
QMAKE_LINK_SHLIB = $$QMAKE_CXX
|
||||||
|
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
|
||||||
|
index ae58326..33cc860 100644
|
||||||
|
--- a/mkspecs/common/gcc-base.conf
|
||||||
|
+++ b/mkspecs/common/gcc-base.conf
|
||||||
|
@@ -124,8 +124,8 @@ QMAKE_CFLAGS_MIPS_DSPR2 += -mdspr2
|
||||||
|
QMAKE_CFLAGS_ARCH_HASWELL = -march=core-avx2
|
||||||
|
|
||||||
|
# Wrapper tools that understand .o/.a files with GIMPLE instead of machine code
|
||||||
|
-QMAKE_AR_LTCG = gcc-ar cqs
|
||||||
|
-QMAKE_NM_LTCG = gcc-nm -P
|
||||||
|
+QMAKE_AR_LTCG = gcc-ar-13 cqs
|
||||||
|
+QMAKE_NM_LTCG = gcc-nm-13 -P
|
||||||
|
QMAKE_RANLIB_LTCG = true # No need to run since gcc-ar has "s"
|
||||||
|
|
||||||
|
QMAKE_LINK_OBJECT_SCRIPT = object_script
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
37
_constraints
Normal file
37
_constraints
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<constraints>
|
||||||
|
<hardware>
|
||||||
|
<disk>
|
||||||
|
<size unit="G">12</size>
|
||||||
|
</disk>
|
||||||
|
<memory>
|
||||||
|
<size unit="G">4</size>
|
||||||
|
</memory>
|
||||||
|
<processors>4</processors>
|
||||||
|
</hardware>
|
||||||
|
<overwrite>
|
||||||
|
<conditions>
|
||||||
|
<arch>ppc64</arch>
|
||||||
|
<arch>ppc64le</arch>
|
||||||
|
</conditions>
|
||||||
|
<hardware>
|
||||||
|
<memory>
|
||||||
|
<size unit="G">5</size>
|
||||||
|
</memory>
|
||||||
|
</hardware>
|
||||||
|
</overwrite>
|
||||||
|
<!-- relax constraints for qt6-base:docs -->
|
||||||
|
<overwrite>
|
||||||
|
<conditions>
|
||||||
|
<package>qt6-base:docs</package>
|
||||||
|
</conditions>
|
||||||
|
<hardware>
|
||||||
|
<disk>
|
||||||
|
<size unit="G">3</size>
|
||||||
|
</disk>
|
||||||
|
<memory>
|
||||||
|
<size unit="G">2</size>
|
||||||
|
</memory>
|
||||||
|
</hardware>
|
||||||
|
</overwrite>
|
||||||
|
</constraints>
|
4
_multibuild
Normal file
4
_multibuild
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<multibuild>
|
||||||
|
<flavor>docs</flavor>
|
||||||
|
</multibuild>
|
||||||
|
|
48
gcc14.patch
Normal file
48
gcc14.patch
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
From 39fa7e7bef90be2940c5f736935f963e3969e0bd Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dmitry Shachnev <mitya57@gmail.com>
|
||||||
|
Date: Sat, 27 Jul 2024 23:03:07 +0300
|
||||||
|
Subject: [PATCH] Use _Float16 only when SSE2 is enabled
|
||||||
|
|
||||||
|
The GCC documentation [1] says: “On x86 targets with SSE2 enabled, GCC
|
||||||
|
supports half-precision (16-bit) floating point via the _Float16 type”.
|
||||||
|
|
||||||
|
On non-SSE2 x86 (such as Debian i386 baseline [2]), __FLT16_MAX__ is
|
||||||
|
defined starting with GCC 14 [3], however any non-trivial use of the
|
||||||
|
_Float16 type results in an error:
|
||||||
|
|
||||||
|
error: operation not permitted on type ‘_Float16’ without option ‘-msse2’
|
||||||
|
|
||||||
|
which makes some packages fail to build on i386 architecture [4].
|
||||||
|
|
||||||
|
[1]: https://gcc.gnu.org/onlinedocs/gcc/Half-Precision.html
|
||||||
|
[2]: https://wiki.debian.org/ArchitectureSpecificsMemo#i386-1
|
||||||
|
[3]: https://gcc.gnu.org/g:9a19fa8b616f83474c35cc5b34a3865073ced829
|
||||||
|
[4]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1076986
|
||||||
|
|
||||||
|
Pick-to: 6.8 6.7 6.5
|
||||||
|
Change-Id: I393ee83eb8e8888f5fc9e3b349dc8b063eef6f5a
|
||||||
|
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
||||||
|
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
||||||
|
---
|
||||||
|
|
||||||
|
diff --git a/src/corelib/global/qtypes.h b/src/corelib/global/qtypes.h
|
||||||
|
index db9ba38..28458f6 100644
|
||||||
|
--- a/src/corelib/global/qtypes.h
|
||||||
|
+++ b/src/corelib/global/qtypes.h
|
||||||
|
@@ -263,13 +263,12 @@
|
||||||
|
// disabled due to https://github.com/llvm/llvm-project/issues/56963
|
||||||
|
# define QFLOAT16_IS_NATIVE 1
|
||||||
|
using NativeFloat16Type = decltype(__FLT16_MAX__);
|
||||||
|
-#elif defined(Q_CC_GNU_ONLY) && defined(__FLT16_MAX__)
|
||||||
|
+#elif defined(Q_CC_GNU_ONLY) && defined(__FLT16_MAX__) && defined(__ARM_FP16_FORMAT_IEEE)
|
||||||
|
# define QFLOAT16_IS_NATIVE 1
|
||||||
|
-# ifdef __ARM_FP16_FORMAT_IEEE
|
||||||
|
using NativeFloat16Type = __fp16;
|
||||||
|
-# else
|
||||||
|
+#elif defined(Q_CC_GNU_ONLY) && defined(__FLT16_MAX__) && defined(__SSE2__)
|
||||||
|
+# define QFLOAT16_IS_NATIVE 1
|
||||||
|
using NativeFloat16Type = _Float16;
|
||||||
|
-# endif
|
||||||
|
#else
|
||||||
|
# define QFLOAT16_IS_NATIVE 0
|
||||||
|
using NativeFloat16Type = void;
|
12
qt6-base-rpmlintrc
Normal file
12
qt6-base-rpmlintrc
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# using fdupes on include directories means looking for troubles
|
||||||
|
addFilter("files-duplicated-waste .*")
|
||||||
|
addFilter("files-duplicate .*")
|
||||||
|
|
||||||
|
# library and development package names don't match
|
||||||
|
addFilter("no-dependency-on .*")
|
||||||
|
|
||||||
|
# Only libraries used at link time are guaranteed to work
|
||||||
|
addFilter("shlib-fixed-dependency .*")
|
||||||
|
|
||||||
|
# libQt6ExampleIcons.a only contains embedded icons, there's nothing to extract
|
||||||
|
addFilter("lto-no-text-in-archive .*libQt6ExampleIcons.a")
|
650
qt6-base.changes
Normal file
650
qt6-base.changes
Normal file
@ -0,0 +1,650 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jan 31 10:22:52 UTC 2025 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.8.2
|
||||||
|
https://www.qt.io/blog/qt-6.8.2-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 2 13:01:57 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.8.1:
|
||||||
|
* https://www.qt.io/blog/qt-6.8.1-released
|
||||||
|
- Drop patches, merged upstream:
|
||||||
|
* 0001-QAbstractItemModelPrivate-add-resetting-member.patch
|
||||||
|
* 0001-QUuid-restore-sorting-order-of-Qt-6.8.patch
|
||||||
|
* 0001-QDirIterator-don-t-crash-with-next-after-hasNext-ret.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 22 06:59:37 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add patch to fix qxmpp test failures (gh#qxmpp-project/qxmpp#659):
|
||||||
|
* 0001-QUuid-restore-sorting-order-of-Qt-6.8.patch
|
||||||
|
- Add patch to fix potential crash with QDirIterator (QTBUG-130142):
|
||||||
|
* 0001-QDirIterator-don-t-crash-with-next-after-hasNext-ret.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 8 09:29:39 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.8.0:
|
||||||
|
* https://www.qt.io/blog/qt-6.8-released
|
||||||
|
- Add upstream change (needed for kde 493116's bugfix):
|
||||||
|
* 0001-QAbstractItemModelPrivate-add-resetting-member.patch
|
||||||
|
- Drop patch, merged upstream:
|
||||||
|
* 0001-Revert-xcb-handle-XI2-input-button-and-motion-events.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 1 22:23:35 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream fix:
|
||||||
|
* 0001-Revert-xcb-handle-XI2-input-button-and-motion-events.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Sep 28 08:22:54 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.7.3
|
||||||
|
* https://www.qt.io/blog/qt-6.7.3-released
|
||||||
|
- Drop patches, merged upstream:
|
||||||
|
* gcc14.patch
|
||||||
|
* 0001-HTTP2-Delay-any-communication-until-encrypted-can-be.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 7 12:46:16 UTC 2024 - Filip Kastl <filip.kastl@suse.com>
|
||||||
|
|
||||||
|
- Add gcc14.patch so that the package builds for 32bit with GCC 14.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jul 6 11:22:52 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream change (boo#1227426, CVE-2024-39936)
|
||||||
|
* 0001-HTTP2-Delay-any-communication-until-encrypted-can-be.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 19 07:25:37 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.7.2:
|
||||||
|
* https://www.qt.io/blog/qt-6.7.2-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 21 08:31:24 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.7.1:
|
||||||
|
* https://www.qt.io/blog/qt-6.7.1-released
|
||||||
|
- Build with system md4c when possible
|
||||||
|
- Drop patches, merged upstream:
|
||||||
|
* fix_builds_with_Werror.patch
|
||||||
|
* 0001-QStringConverterICU-Pass-correct-pointer-to-callback.patch
|
||||||
|
* 0001-CMake-ELF-allow-using-Qt-s-full-version-number-in-th.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 3 07:15:23 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream security fix (CVE-2024-33861, boo#1223917):
|
||||||
|
* 0001-QStringConverterICU-Pass-correct-pointer-to-callback.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 2 13:39:34 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.7.0:
|
||||||
|
* https://www.qt.io/blog/qt-6.7-released
|
||||||
|
- Replace 0001-Tell-the-truth-about-private-API.patch with
|
||||||
|
upstream change:
|
||||||
|
* 0001-CMake-ELF-allow-using-Qt-s-full-version-number-in-th.patch
|
||||||
|
- Add upstream fix (QTBUG-123937):
|
||||||
|
* fix_builds_with_Werror.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 26 14:25:22 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.6.3:
|
||||||
|
* https://www.qt.io/blog/qt-6.6.3-released
|
||||||
|
* Includes fix for issue where the wasm component may access
|
||||||
|
QNetworkReply header data via a dangling pointer
|
||||||
|
(CVE-2024-30161, bsc#1221926, QTBUG-122893)
|
||||||
|
- Make libQt6PrintSupport6 require qt6-printsupport-cups
|
||||||
|
(boo#1221576)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 21 14:56:42 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Replace the postgresql-server build dependency with the client library
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 14 16:53:08 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.6.2
|
||||||
|
* https://www.qt.io/blog/qt-6.6.2-released
|
||||||
|
* Fix for potential buffer overflow when reading KTX
|
||||||
|
images (boo#1219996, CVE-2024-25580)
|
||||||
|
- Drop patches, merged upstream:
|
||||||
|
* 0001-QMimeDatabase-handle-buggy-type-definitions.patch
|
||||||
|
* 0001-QMimeDatabase-collect-glob-patterns-from.patch
|
||||||
|
* 0001-HPack-fix-a-Yoda-Condition.patch
|
||||||
|
* 0002-HPack-fix-incorrect-integer-overflow-check.patch
|
||||||
|
* 0001-Http2-fix-potential-overflow-in-assemble_hpack_block.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jan 31 14:51:31 UTC 2024 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Switch to the latest GCC version available in Leap
|
||||||
|
- Replace 0001-Require-GCC-12.patch with 0001-Use-newer-GCC-on-Leap.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jan 3 08:52:06 UTC 2024 - Antonio Larrosa <alarrosa@suse.com>
|
||||||
|
|
||||||
|
- Add upstream patches to fix an incorrect integer overflow check
|
||||||
|
(boo#1218413, CVE-2023-51714):
|
||||||
|
* 0001-HPack-fix-a-Yoda-Condition.patch
|
||||||
|
* 0002-HPack-fix-incorrect-integer-overflow-check.patch
|
||||||
|
- Add upstream patch to fix a potential overflow in
|
||||||
|
assemble_hpack_block():
|
||||||
|
* 0001-Http2-fix-potential-overflow-in-assemble_hpack_block.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Dec 30 14:51:31 UTC 2023 - Luca Beltrame <lbeltrame@kde.org>
|
||||||
|
|
||||||
|
- Add upstream patch for a bug in QMimeDatabase which makes
|
||||||
|
impossible to save JPEG files in Qt6 applications:
|
||||||
|
* 0001-QMimeDatabase-collect-glob-patterns-from.patch
|
||||||
|
* https://code.qt.io/cgit/qt/qtbase.git/commit/?id=4e9944e6c8a456353d243ab268cb0f01ff006faa
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 4 19:11:49 UTC 2023 - Kacper Koniuszy <kacper.koniuszy@tuta.io>
|
||||||
|
|
||||||
|
- Add upstream patch for a bug in QMimeDatabase that causes some
|
||||||
|
applications to hang:
|
||||||
|
* 0001-QMimeDatabase-handle-buggy-type-definitions.patch
|
||||||
|
* https://code.qt.io/cgit/qt/qtbase.git/commit/?id=54656da9ace06caf4a0eeb1832989c0ab211a4a0
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Nov 27 14:00:05 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.6.1:
|
||||||
|
* https://www.qt.io/blog/qt-6.6.1-released
|
||||||
|
- Drop patches, merged upstream:
|
||||||
|
* 0001-xcb-replace-a-warning-with-debug-info-in-qxcbconnect.patch
|
||||||
|
* 0001-a11y-fix-race-condition-on-atspi-startup-on-Wayland.patch
|
||||||
|
* 0001-xkb-fix-build-with-libxkbcommon-1.6.0-and-later.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 16 09:14:40 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Make libQt6Network6 require the network plugins
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Nov 3 11:34:03 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream changes:
|
||||||
|
* 0001-xcb-replace-a-warning-with-debug-info-in-qxcbconnect.patch (QTBUG-117820)
|
||||||
|
* 0001-a11y-fix-race-condition-on-atspi-startup-on-Wayland.patch
|
||||||
|
- Turn FEATURE_forkfd_pidfd off until QTBUG-117954 gets fixed
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 25 14:16:30 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream change:
|
||||||
|
* 0001-xkb-fix-build-with-libxkbcommon-1.6.0-and-later.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 10 09:39:48 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.6.0
|
||||||
|
* https://www.qt.io/blog/qt-6.6-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 4 07:25:51 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add patch to fix creation of -debuginfo packages for qmake builds:
|
||||||
|
* 0001-Don-t-strip-binaries-when-building-with-qmake.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 28 07:34:06 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.5.3
|
||||||
|
* https://www.qt.io/blog/qt-6.5.3-released
|
||||||
|
- Drop patch, merged upstream:
|
||||||
|
* CVE-2023-38197-qtbase-6.5.diff
|
||||||
|
- Enable the experimental native painting feature to improve
|
||||||
|
remote desktop performances (boo#1214915)
|
||||||
|
exporting QT_XCB_NATIVE_PAINTING is required to use the feature.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jul 20 08:34:44 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Use a mirror to download sources for all Qt packages. Upstream
|
||||||
|
servers are very slow since a couple weeks.
|
||||||
|
- Update to 6.5.2
|
||||||
|
* https://www.qt.io/blog/qt-6.5.2-released-1
|
||||||
|
* Includes fix for a buffer overflow in QXmlStreamReader
|
||||||
|
(boo#1214327, CVE-2023-37369).
|
||||||
|
- Drop patches, merged upstream:
|
||||||
|
* 0001-Schannel-Reject-certificate-not-signed-by-a-configur.patch
|
||||||
|
* 0001-Ssl-Copy-the-on-demand-cert-loading-bool-from-defaul.patch
|
||||||
|
* 0001-tabbar-fix.patch
|
||||||
|
- Add patch:
|
||||||
|
* CVE-2023-38197-qtbase-6.5.diff (boo#1213326, CVE-2023-38197)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 30 15:13:07 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update subpackages requirements
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jun 29 11:13:42 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Replace 0001-Require-GCC-10.patch with 0001-Require-GCC-12.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 7 17:58:46 UTC 2023 - Jonas Kvinge <jonaski@opensuse.org>
|
||||||
|
|
||||||
|
- Add patch for QTabBar regression in Qt 6.5.1 (QTBUG-114204)
|
||||||
|
* 0001-tabbar-fix.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jun 5 08:59:52 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream changes (CVE-2023-34410, boo#1211994):
|
||||||
|
* 0001-Schannel-Reject-certificate-not-signed-by-a-configur.patch
|
||||||
|
* 0001-Ssl-Copy-the-on-demand-cert-loading-bool-from-defaul.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 24 07:45:34 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.5.1
|
||||||
|
* https://www.qt.io/blog/qt-6.5.1-released
|
||||||
|
* Includes fix for a buffer overflow in QTextLayout (boo#1211798,
|
||||||
|
CVE-2023-32763).
|
||||||
|
* Includes fix for incorrect parsing of strict-transport-security
|
||||||
|
(HSTS) header (boo#1211797, CVE-2023-32762)
|
||||||
|
* Includes fix for a buffer overflow in QDnsLookup
|
||||||
|
(CVE-2023-33285, bsc#1211642)
|
||||||
|
- Drop patches, merged upstream:
|
||||||
|
* 0001-QApplication-Fix-DEPRECATED_VERSION-for-setActiveWin.patch
|
||||||
|
* 0001-QVariant-Fix-support-for-metatypes-created-by-Qt-6.5.patch
|
||||||
|
- Add patch
|
||||||
|
* 0001-CMake-Install-objects-files-into-ARCHDATADIR.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 28 13:56:55 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream change to fix boo#1210849:
|
||||||
|
* 0001-QVariant-Fix-support-for-metatypes-created-by-Qt-6.5.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Apr 8 10:42:33 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream change:
|
||||||
|
* 0001-QApplication-Fix-DEPRECATED_VERSION-for-setActiveWin.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Apr 3 10:01:48 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.5.0
|
||||||
|
* https://www.qt.io/blog/qt-6.5-lts-released
|
||||||
|
* Includes fix for boo#1215178, QTBUG-109474, QTCREATORBUG-28593
|
||||||
|
- Drop patch, merged upstream:
|
||||||
|
* 0001-Avoid-resetting-CMAKE_AUTOMOC_MACRO_NAMES.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 16 09:59:57 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.4.3:
|
||||||
|
* https://www.qt.io/blog/qt-6.4.3-released
|
||||||
|
- Drop patch, merged upstream:
|
||||||
|
* CVE-2023-24607-qtbase-6.4.diff
|
||||||
|
- Add patch to silence moc warnings:
|
||||||
|
* 0001-Avoid-resetting-CMAKE_AUTOMOC_MACRO_NAMES.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 8 17:48:36 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Fix a possible DOS in the Qt ODBC driver plugin (CVE-2023-24607,
|
||||||
|
bsc#1209616):
|
||||||
|
* CVE-2023-24607-qtbase-6.4.diff
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jan 6 16:46:36 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.4.2:
|
||||||
|
* https://www.qt.io/blog/qt-6.4.2-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 15 11:53:07 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.4.1:
|
||||||
|
* https://www.qt.io/blog/qt-6.4.1-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Oct 16 07:39:21 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Make sure the QPA and wayland-related plugins are installed if
|
||||||
|
needed
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 29 10:35:48 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.4.0:
|
||||||
|
* https://www.qt.io/blog/qt-6.4-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Sep 16 08:29:02 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.4.0 RC
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Sep 9 12:41:32 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.3.2:
|
||||||
|
* https://www.qt.io/blog/qt-6.3.2-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 17 15:15:01 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.3.1:
|
||||||
|
* https://www.qt.io/blog/qt-6.3.1-released
|
||||||
|
- Drop patches, now upstream:
|
||||||
|
* 0001-CMake-Don-t-hardcode-the-library-directory-name.patch
|
||||||
|
* 0001-XCB-fix-GCC-12-warning-about-uninitialized-variable-.patch
|
||||||
|
* 0001-Fix-build-with-GCC12-avoid-QCborStreamReader-prepars.patch
|
||||||
|
* 0001-QtOpenGL-Fix-build-with-GCC-12-qt_imageForBrush-is-i.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 10 07:30:33 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add GCC 12 compatibility changes:
|
||||||
|
* 0001-XCB-fix-GCC-12-warning-about-uninitialized-variable-.patch
|
||||||
|
* 0001-Fix-build-with-GCC12-avoid-QCborStreamReader-prepars.patch
|
||||||
|
* 0001-QtOpenGL-Fix-build-with-GCC-12-qt_imageForBrush-is-i.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 3 11:25:01 UTC 2022 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||||
|
|
||||||
|
- Require the SSL devel package it was built with, not just any
|
||||||
|
pkgconfig(openssl). Otherwise it is satisfied with libressl-devel
|
||||||
|
even if it was built with openssl-devel.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 8 11:56:51 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.3.0:
|
||||||
|
* https://www.qt.io/blog/qt-6.3-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 29 12:28:29 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.3.0-rc
|
||||||
|
- Add patch:
|
||||||
|
* 0001-CMake-Don-t-hardcode-the-library-directory-name.patch
|
||||||
|
- Update build constraints
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 21 08:46:52 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.2.4
|
||||||
|
* https://www.qt.io/blog/qt-6.2.4-released
|
||||||
|
- Drop 0001-QProcess-Unix-ensure-we-don-t-accidentally-execute-s.patch
|
||||||
|
Merged upstream.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 2 09:16:10 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream change (boo#1196501, CVE-2022-25255):
|
||||||
|
* 0001-QProcess-Unix-ensure-we-don-t-accidentally-execute-s.patch
|
||||||
|
- Install qt6-core-private-devel when installing qt6-core-devel
|
||||||
|
(boo#1195368)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 31 08:54:21 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.2.3:
|
||||||
|
* https://www.qt.io/blog/qt-6.2.3-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 22 13:47:40 UTC 2021 - Antonio Larrosa <alarrosa@suse.com>
|
||||||
|
|
||||||
|
- Increase the memory constraint to fix a oom failure
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 1 10:05:54 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.2.2
|
||||||
|
* https://www.qt.io/blog/qt-6.2.2-released
|
||||||
|
- Make sure all dependencies are present when installing devel
|
||||||
|
packages. Qt >= 6.2.2 is much less permissive.
|
||||||
|
- Drop 0001-qscrollarea-performance-fix.patch. Merged upstream.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 4 20:59:52 UTC 2021 - Jonas Kvinge <jonaski@opensuse.org>
|
||||||
|
|
||||||
|
- Add patch for critical performance regression in qscrollarea
|
||||||
|
* 0001-qscrollarea-performance-fix.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 26 11:22:28 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.2.1
|
||||||
|
* https://www.qt.io/blog/qt-6.2.1-released
|
||||||
|
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 30 12:25:46 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.2.0:
|
||||||
|
* https://www.qt.io/blog/qt-6.2-lts-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Sep 25 07:18:33 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.2.0-rc2
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 16 14:07:31 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.2.0-rc
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Sep 9 14:04:56 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.2.0-beta4
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Sep 1 13:03:23 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.1.3:
|
||||||
|
* https://www.qt.io/blog/qt-6.1.3-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jul 2 14:07:30 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.1.2. New bugfix release:
|
||||||
|
* https://www.qt.io/blog/qt-6.1.2-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jun 8 05:54:07 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.1.1:
|
||||||
|
* https://www.qt.io/blog/qt-6.1.1-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jun 5 15:50:54 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update the minimum disk size. Leap 15.3 needs more than 13G.
|
||||||
|
- Also require at least 4 cores.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu May 6 17:10:11 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.1.0:
|
||||||
|
* https://www.qt.io/blog/qt-6.1-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 23 14:11:33 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.1.0-rc.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Apr 17 08:04:45 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Stop owning directories provided by the filesystem package (boo#1184786)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 13 06:29:24 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.1.0-beta3.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 31 13:29:44 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.3
|
||||||
|
* https://www.qt.io/blog/qt-6.0.3-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Mar 20 17:12:40 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.1.0-beta2
|
||||||
|
- Drop fix-fixqt4headers.patch. No longer needed.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 5 17:23:59 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.1.0-beta1
|
||||||
|
https://www.qt.io/blog/qt-6.1-beta-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 5 09:31:18 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.2:
|
||||||
|
https://www.qt.io/blog/qt-6.0.2-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 3 16:54:58 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.1
|
||||||
|
https://www.qt.io/blog/qt-6.0.1-released
|
||||||
|
- Drop patches:
|
||||||
|
* 0001-Fix-QCache-Crash.patch
|
||||||
|
* 0001-CMake-Fix-conditions-for-some-subarch-features.patch
|
||||||
|
* 0001-CMake-strip-the-executable-bit-from-qt-cmake-private.patch
|
||||||
|
- Enable ltcg where possible.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jan 23 20:24:22 UTC 2021 - Mykola Krachkovsky <w01dnick@gmail.com>
|
||||||
|
|
||||||
|
- Remove uikit qmake spec to avoid automatic dep on python2
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 16 11:26:03 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Use a different 'Name' when building the docs flavor.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Dec 11 15:56:51 UTC 2020 - Jonas Kvinge <jonas@jkvinge.net>
|
||||||
|
|
||||||
|
- Add patch for critical bug: QCache related crashes.
|
||||||
|
* 0001-Fix-QCache-Crash.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Dec 8 14:09:01 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.0:
|
||||||
|
* https://www.qt.io/blog/qt-6.0-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 7 18:42:26 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- libQt6Core6 now owns most of runtime folders and
|
||||||
|
qt6-base-common-devel owns development ones.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Dec 3 17:59:47 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Disable the reduce_relocations option. (boo#1175278, QTBUG-86173)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 2 12:08:58 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Qt 6.0.0 RC2
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 2 11:06:59 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add the missing openssl dependency for qt6-network-private-devel
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Nov 30 16:55:57 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add upstream patches:
|
||||||
|
* 0001-CMake-strip-the-executable-bit-from-qt-cmake-private.patch
|
||||||
|
* 0001-CMake-Fix-conditions-for-some-subarch-features.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Nov 25 14:19:54 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.0~rc1
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 17 07:26:23 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.0~beta5
|
||||||
|
- Drop upstream patches:
|
||||||
|
* 0001-CMake-Potentially-use-INSTALL_LIBDIR-in-qt6_extract_.patch
|
||||||
|
* 0001-CMake-Allow-using-DESTDIR-when-installing-documentat.patch
|
||||||
|
* 0001-CMake-Make-zstd-config-based-lookup-quiet.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 10 18:40:31 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.0~beta4
|
||||||
|
- Replace patches:
|
||||||
|
* 0001-CMake-Allow-using-DESTDIR-when-installing-documentat.patch
|
||||||
|
(replaces 0001-cmake-Fix-doc-installation.patch)
|
||||||
|
* 0001-CMake-Potentially-use-INSTALL_LIBDIR-in-qt6_extract_.patch
|
||||||
|
(replaces 0001-cmake-Don-t-hardcode-the-library-directory-name.patch)
|
||||||
|
- Add upstream patch:
|
||||||
|
* 0001-CMake-Locate-zstd-using-CONFIG.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 20 07:47:07 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.0beta1
|
||||||
|
https://www.qt.io/blog/qt-6.0-beta-released
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Oct 7 12:24:40 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Turn more options on:
|
||||||
|
* link to openSSL
|
||||||
|
* libproxy usage
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 6 19:41:23 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Update to 6.0.0-alpha
|
||||||
|
https://www.qt.io/blog/qt-6.0-alpha-released
|
||||||
|
- Import fix-fixqt4headers.patch from libqt5-qtbase
|
||||||
|
- Add patches:
|
||||||
|
* 0001-cmake-Fix-doc-installation.patch
|
||||||
|
* 0001-cmake-Don-t-hardcode-the-library-directory-name.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Sep 20 08:25:20 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Resurrect 0001-Tell-the-truth-about-private-API.patch from
|
||||||
|
libqt5-qtbase
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jan 21 22:38:13 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Add a qt6-printsupport-cups package for the cups plugin
|
||||||
|
- Add the journald option back
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jan 21 22:19:11 UTC 2020 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Split the changes into smaller commits
|
||||||
|
- Fixed the wrong paths in CMake config files
|
||||||
|
- Fixed the mkspecs install dir. Everything is in qt6_mkspecsdir now.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Dec 31 09:06:08 UTC 2019 - Christophe Giboudeaux <christophe@krop.fr>
|
||||||
|
|
||||||
|
- Experimental qt6-qtbase package
|
1300
qt6-base.spec
Normal file
1300
qt6-base.spec
Normal file
File diff suppressed because it is too large
Load Diff
BIN
qtbase-everywhere-src-6.7.2.tar.xz
(Stored with Git LFS)
Normal file
BIN
qtbase-everywhere-src-6.7.2.tar.xz
(Stored with Git LFS)
Normal file
Binary file not shown.
3
qtbase-everywhere-src-6.7.3.tar.xz
Normal file
3
qtbase-everywhere-src-6.7.3.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:8ccbb9ab055205ac76632c9eeddd1ed6fc66936fc56afc2ed0fd5d9e23da3097
|
||||||
|
size 49426156
|
3
qtbase-everywhere-src-6.8.0.tar.xz
Normal file
3
qtbase-everywhere-src-6.8.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1bad481710aa27f872de6c9f72651f89a6107f0077003d0ebfcc9fd15cba3c75
|
||||||
|
size 49819628
|
BIN
qtbase-everywhere-src-6.8.1.tar.xz
(Stored with Git LFS)
Normal file
BIN
qtbase-everywhere-src-6.8.1.tar.xz
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
qtbase-everywhere-src-6.8.2.tar.xz
(Stored with Git LFS)
Normal file
BIN
qtbase-everywhere-src-6.8.2.tar.xz
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user