diff --git a/0001-Avoid-SIGABRT-on-platform-plugin-initialization-fail.patch b/0001-Avoid-SIGABRT-on-platform-plugin-initialization-fail.patch deleted file mode 100644 index ba6f3af..0000000 --- a/0001-Avoid-SIGABRT-on-platform-plugin-initialization-fail.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 127e467e5ff86d5aba085c0e3410b3198d29b61a Mon Sep 17 00:00:00 2001 -From: Fabian Vogt -Date: Fri, 13 Nov 2020 15:51:50 +0100 -Subject: [PATCH] Avoid SIGABRT on platform plugin initialization failure - -If all platform plugins failed to initialize, Qt calls qFatal which in turn -calls abort. This causes SIGABRT and may generate a coredump. - -In the most common case it's because the connection to the display (Wayland, -X11, whatever) is missing or failed, and a coredump will not help analyzing -that at all. - -https://bugreports.qt.io/browse/QTBUG-88491 ---- - src/gui/kernel/qguiapplication.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp -index a95331e246..098c69d3c1 100644 ---- a/src/gui/kernel/qguiapplication.cpp -+++ b/src/gui/kernel/qguiapplication.cpp -@@ -1251,9 +1251,9 @@ static void init_platform(const QString &pluginNamesWithArguments, const QString - if (!QLibraryInfo::isDebugBuild() && !GetConsoleWindow()) - MessageBox(0, (LPCTSTR)fatalMessage.utf16(), (LPCTSTR)(QCoreApplication::applicationName().utf16()), MB_OK | MB_ICONERROR); - #endif // Q_OS_WIN && !Q_OS_WINRT -- qFatal("%s", qPrintable(fatalMessage)); -+ qCritical("%s", qPrintable(fatalMessage)); - -- return; -+ _exit(1); - } - - // Many platforms have created QScreens at this point. Finish initializing --- -2.25.1 - diff --git a/0001-Don-t-white-list-recent-Mesa-versions-for-multithrea.patch b/0001-Don-t-white-list-recent-Mesa-versions-for-multithrea.patch deleted file mode 100644 index 083e82a..0000000 --- a/0001-Don-t-white-list-recent-Mesa-versions-for-multithrea.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 8a053986b4c43a133f6824f839bd78a476d183e3 Mon Sep 17 00:00:00 2001 -From: Fabian Vogt -Date: Wed, 19 Feb 2020 11:42:06 +0100 -Subject: [PATCH] Don't white-list recent Mesa versions for multithreading - -It's not stable. ---- - .../gl_integrations/xcb_glx/qglxintegration.cpp | 16 ---------------- - 1 file changed, 16 deletions(-) - -diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp -index 75189a9c80..e328ea2d4b 100644 ---- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp -+++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp -@@ -764,22 +764,6 @@ void QGLXContext::queryDummyContext() - m_supportsThreading = false; - } - -- if (mesaVersionStr) { -- // The issue was fixed in Xcb 1.11, but we can't check for that -- // at runtime, so instead assume it fixed with recent Mesa versions -- // released several years after the Xcb fix. --#if QT_CONFIG(regularexpression) -- QRegularExpression versionTest(QStringLiteral("Mesa (\\d+)")); -- QRegularExpressionMatch result = versionTest.match(QString::fromLatin1(mesaVersionStr)); -- int versionNr = 0; -- if (result.hasMatch()) -- versionNr = result.captured(1).toInt(); -- if (versionNr >= 17) { -- // White-listed -- m_supportsThreading = true; -- } --#endif -- } - if (!m_supportsThreading) { - qCDebug(lcQpaGl).nospace() << "Multithreaded OpenGL disabled: " - "blacklisted vendor \"Mesa Project\""; --- -2.23.0 - diff --git a/0001-Revert-Blacklist-nouveau-and-llvmpipe-for-multithrea.patch b/0001-Revert-Blacklist-nouveau-and-llvmpipe-for-multithrea.patch new file mode 100644 index 0000000..1e02ff5 --- /dev/null +++ b/0001-Revert-Blacklist-nouveau-and-llvmpipe-for-multithrea.patch @@ -0,0 +1,50 @@ +From 7525dcc085d0453209bd7c321adac9c54487afa6 Mon Sep 17 00:00:00 2001 +From: Fabian Vogt +Date: Thu, 14 Mar 2019 10:30:14 +0100 +Subject: [PATCH 1/3] Revert "Blacklist nouveau and llvmpipe for + multithreading" + +This reverts commit 96f6cab22cab252cbe7a98bbeadde95497e0bd75. +--- + .../xcb_glx/qglxintegration.cpp | 18 ------------------ + 1 file changed, 18 deletions(-) + +diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp +index 476de6d1e5..d42a33c22b 100644 +--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp ++++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp +@@ -652,12 +652,6 @@ static const char *qglx_threadedgl_blacklist_renderer[] = { + 0 + }; + +-static const char *qglx_threadedgl_blacklist_vendor[] = { +- "llvmpipe", // QTCREATORBUG-10666 +- "nouveau", // https://bugs.freedesktop.org/show_bug.cgi?id=91632 +- nullptr +-}; +- + void QGLXContext::queryDummyContext() + { + if (m_queriedDummyContext) +@@ -716,18 +710,6 @@ void QGLXContext::queryDummyContext() + } + } + } +- if (const char *vendor = (const char *) glGetString(GL_VENDOR)) { +- for (int i = 0; qglx_threadedgl_blacklist_vendor[i]; ++i) { +- if (strstr(vendor, qglx_threadedgl_blacklist_vendor[i]) != 0) { +- qCDebug(lcQpaGl).nospace() << "Multithreaded OpenGL disabled: " +- "blacklisted vendor \"" +- << qglx_threadedgl_blacklist_vendor[i] +- << "\""; +- m_supportsThreading = false; +- break; +- } +- } +- } + + if (glxvendor && m_supportsThreading) { + // Blacklist Mesa drivers due to QTCREATORBUG-10875 (crash in creator), +-- +2.20.1 + diff --git a/0001-Revert-Bump-version.patch b/0001-Revert-Bump-version.patch deleted file mode 100644 index 4f67174..0000000 --- a/0001-Revert-Bump-version.patch +++ /dev/null @@ -1,23 +0,0 @@ -From e08cc7a0cec3c6fb69415b8e76e70b37088b561c Mon Sep 17 00:00:00 2001 -From: Fabian Vogt -Date: Mon, 21 Jun 2021 12:29:39 +0200 -Subject: [PATCH] Revert "Bump version" - -This reverts commit 6344955d17e17e2398720fe60c34cfc2a4a95208. ---- - .qmake.conf | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/.qmake.conf b/.qmake.conf -index 1bf1a80475..9476d20099 100644 ---- a/.qmake.conf -+++ b/.qmake.conf -@@ -6,4 +6,4 @@ DEFINES += QT_NO_JAVA_STYLE_ITERATORS - QT_SOURCE_TREE = $$PWD - QT_BUILD_TREE = $$shadowed($$PWD) - --MODULE_VERSION = 5.15.3 -+MODULE_VERSION = 5.15.2 --- -2.20.1 - diff --git a/0001-Revert-QMenu-hide-when-a-QWidgetAction-fires-the-tri.patch b/0001-Revert-QMenu-hide-when-a-QWidgetAction-fires-the-tri.patch deleted file mode 100644 index 25eb4e4..0000000 --- a/0001-Revert-QMenu-hide-when-a-QWidgetAction-fires-the-tri.patch +++ /dev/null @@ -1,139 +0,0 @@ -From 9928d66764337494d0e99208a3418fcd01ac3e66 Mon Sep 17 00:00:00 2001 -From: Fabian Vogt -Date: Wed, 27 May 2020 10:48:45 +0200 -Subject: [PATCH] Revert "QMenu: hide when a QWidgetAction fires the trigged - signal" - -This reverts commit b4669b919048c1dbdac2b3e9b2e79f3d023aa078. ---- - src/widgets/widgets/qmenu.cpp | 9 +-- - .../auto/widgets/widgets/qmenu/tst_qmenu.cpp | 79 ------------------- - 2 files changed, 4 insertions(+), 84 deletions(-) - -diff --git a/src/widgets/widgets/qmenu.cpp b/src/widgets/widgets/qmenu.cpp -index 865e3b2fb6..2878344f07 100644 ---- a/src/widgets/widgets/qmenu.cpp -+++ b/src/widgets/widgets/qmenu.cpp -@@ -1470,9 +1470,6 @@ void QMenuPrivate::_q_actionTriggered() - } - } - activateCausedStack(list, action, QAction::Trigger, false); -- // if a widget action fires, we need to hide the menu explicitly -- if (qobject_cast(action)) -- hideUpToMenuBar(); - } - } - } -@@ -1640,8 +1637,10 @@ void QMenu::initStyleOption(QStyleOptionMenuItem *option, const QAction *action) - - Widgets can be inserted into menus with the QWidgetAction class. - Instances of this class are used to hold widgets, and are inserted -- into menus with the addAction() overload that takes a QAction. If the -- QWidgetAction fires the triggered() signal, the menu will close. -+ into menus with the addAction() overload that takes a QAction. -+ -+ Conversely, actions can be added to widgets with the addAction(), -+ addActions() and insertAction() functions. - - \warning To make QMenu visible on the screen, exec() or popup() should be - used instead of show(). -diff --git a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp -index 5a24995caf..22494f3d24 100644 ---- a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp -+++ b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp -@@ -116,7 +116,6 @@ private slots: - void QTBUG20403_nested_popup_on_shortcut_trigger(); - void QTBUG47515_widgetActionEnterLeave(); - void QTBUG8122_widgetActionCrashOnClose(); -- void widgetActionTriggerClosesMenu(); - - void QTBUG_10735_crashWithDialog(); - #ifdef Q_OS_MAC -@@ -1408,84 +1407,6 @@ void tst_QMenu::QTBUG8122_widgetActionCrashOnClose() - QTRY_VERIFY(menu->isHidden()); - } - --/*! -- Test that a QWidgetAction that fires closes the menus that it is in. --*/ --void tst_QMenu::widgetActionTriggerClosesMenu() --{ -- class ButtonAction : public QWidgetAction -- { -- public: -- ButtonAction() -- : QWidgetAction(nullptr) -- {} -- -- void click() -- { -- if (pushButton) -- pushButton->click(); -- } -- -- protected: -- QWidget *createWidget(QWidget *parent) -- { -- QPushButton *button = new QPushButton(QLatin1String("Button"), parent); -- connect(button, &QPushButton::clicked, this, &QAction::trigger); -- -- if (!pushButton) -- pushButton = button; -- return button; -- } -- -- private: -- QPointer pushButton; -- }; -- -- QMenu menu; -- QMenu submenu; -- -- int menuTriggeredCount = 0; -- int menuAboutToHideCount = 0; -- QAction *actionTriggered = nullptr; -- -- connect(&menu, &QMenu::triggered, this, [&](QAction *action){ -- ++menuTriggeredCount; -- actionTriggered = action; -- }); -- connect (&menu, &QMenu::aboutToHide, this, [&](){ -- ++menuAboutToHideCount; -- }); -- -- QAction regularAction(QLatin1String("Action")); -- ButtonAction widgetAction; -- -- submenu.addAction(®ularAction); -- submenu.addAction(&widgetAction); -- -- menu.addMenu(&submenu); -- menu.addAction(®ularAction); -- menu.addAction(&widgetAction); -- -- menu.popup(QPoint(200,200)); -- submenu.popup(QPoint(250,250)); -- if (!QTest::qWaitForWindowExposed(&menu) || !QTest::qWaitForWindowExposed(&submenu)) -- QSKIP("Failed to show menus, aborting test"); -- -- regularAction.trigger(); -- QVERIFY(menu.isVisible()); -- QVERIFY(submenu.isVisible()); -- QCOMPARE(menuTriggeredCount, 1); -- QCOMPARE(actionTriggered, ®ularAction); -- menuTriggeredCount = 0; -- actionTriggered = nullptr; -- -- widgetAction.click(); -- QVERIFY(!menu.isVisible()); -- QVERIFY(!submenu.isVisible()); -- QCOMPARE(menuTriggeredCount, 1); -- QCOMPARE(menuAboutToHideCount, 1); -- QCOMPARE(actionTriggered, &widgetAction); --} - - class MyMenu : public QMenu - { --- -2.25.1 - diff --git a/0002-Revert-qtlite-Fix-build-libs-with-no-feature-regular.patch b/0002-Revert-qtlite-Fix-build-libs-with-no-feature-regular.patch new file mode 100644 index 0000000..fb435d5 --- /dev/null +++ b/0002-Revert-qtlite-Fix-build-libs-with-no-feature-regular.patch @@ -0,0 +1,280 @@ +From 4f28ec6c8526d754849bd26c55e4c5faf61f4eb0 Mon Sep 17 00:00:00 2001 +From: Fabian Vogt +Date: Thu, 14 Mar 2019 10:32:10 +0100 +Subject: [PATCH 2/3] Revert "qtlite: Fix build libs with + -no-feature-regularexpression" + +This reverts commit 3b514f853595c686d4ed8830567c1f27ea533faf. +--- + src/corelib/kernel/qvariant.cpp | 4 ---- + src/corelib/serialization/qcborvalue.cpp | 12 ------------ + src/corelib/serialization/qcborvalue.h | 10 +--------- + src/corelib/serialization/qjsoncbor.cpp | 7 ------- + .../platforms/eglfs/api/qeglfsdeviceintegration.cpp | 4 +--- + .../xcb/gl_integrations/xcb_glx/qglxintegration.cpp | 6 +----- + src/testlib/qtaptestlogger.cpp | 11 +---------- + 7 files changed, 4 insertions(+), 50 deletions(-) + +Index: qtbase-everywhere-src-5.13.0-beta2/src/corelib/kernel/qvariant.cpp +=================================================================== +--- qtbase-everywhere-src-5.13.0-beta2.orig/src/corelib/kernel/qvariant.cpp ++++ qtbase-everywhere-src-5.13.0-beta2/src/corelib/kernel/qvariant.cpp +@@ -1052,13 +1052,11 @@ static bool convert(const QVariant::Priv + return false; + + #ifndef QT_BOOTSTRAPPED +-#if QT_CONFIG(regularexpression) + case QMetaType::QRegularExpression: + if (d->type != QMetaType::QCborValue || !v_cast(d)->isRegularExpression()) + return false; + *static_cast(result) = v_cast(d)->toRegularExpression(); + break; +-#endif + case QMetaType::QJsonValue: + switch (d->type) { + case QMetaType::Nullptr: +@@ -1234,11 +1232,9 @@ static bool convert(const QVariant::Priv + case QVariant::Url: + *static_cast(result) = QCborValue(*v_cast(d)); + break; +-#if QT_CONFIG(regularexpression) + case QVariant::RegularExpression: + *static_cast(result) = QCborValue(*v_cast(d)); + break; +-#endif + case QVariant::Uuid: + *static_cast(result) = QCborValue(*v_cast(d)); + break; +Index: qtbase-everywhere-src-5.13.0-beta2/src/corelib/serialization/qcborvalue.cpp +=================================================================== +--- qtbase-everywhere-src-5.13.0-beta2.orig/src/corelib/serialization/qcborvalue.cpp ++++ qtbase-everywhere-src-5.13.0-beta2/src/corelib/serialization/qcborvalue.cpp +@@ -1772,7 +1772,6 @@ QCborValue::QCborValue(const QUrl &url) + container->elements[1].type = String; + } + +-#if QT_CONFIG(regularexpression) + /*! + Creates a QCborValue object of the regular expression pattern extended type + and containing the value represented by \a rx. The value can later be retrieved +@@ -1791,7 +1790,6 @@ QCborValue::QCborValue(const QRegularExp + // change type + t = RegularExpression; + } +-#endif // QT_CONFIG(regularexpression) + + /*! + Creates a QCborValue object of the UUID extended type and containing the +@@ -1945,7 +1943,6 @@ QUrl QCborValue::toUrl(const QUrl &defau + return QUrl::fromEncoded(byteData->asByteArrayView()); + } + +-#if QT_CONFIG(regularexpression) + /*! + Returns the regular expression value stored in this QCborValue, if it is of + the regular expression pattern extended type. Otherwise, it returns \a +@@ -1964,7 +1961,6 @@ QRegularExpression QCborValue::toRegular + Q_ASSERT(n == -1); + return QRegularExpression(container->stringAt(1)); + } +-#endif // QT_CONFIG(regularexpression) + + /*! + Returns the UUID value stored in this QCborValue, if it is of the UUID +@@ -2874,16 +2870,12 @@ uint qHash(const QCborValue &value, uint + return qHash(value.toDateTime(), seed); + case QCborValue::Url: + return qHash(value.toUrl(), seed); +-#if QT_CONFIG(regularexpression) + case QCborValue::RegularExpression: + return qHash(value.toRegularExpression(), seed); +-#endif + case QCborValue::Uuid: + return qHash(value.toUuid(), seed); + case QCborValue::Invalid: + return seed; +- default: +- break; + } + + Q_ASSERT(value.isSimpleType()); +@@ -2928,16 +2920,12 @@ static QDebug debugContents(QDebug &dbg, + return dbg << v.toDateTime(); + case QCborValue::Url: + return dbg << v.toUrl(); +-#if QT_CONFIG(regularexpression) + case QCborValue::RegularExpression: + return dbg << v.toRegularExpression(); +-#endif + case QCborValue::Uuid: + return dbg << v.toUuid(); + case QCborValue::Invalid: + return dbg << ""; +- default: +- break; + } + if (v.isSimpleType()) + return dbg << v.toSimpleType(); +Index: qtbase-everywhere-src-5.13.0-beta2/src/corelib/serialization/qcborvalue.h +=================================================================== +--- qtbase-everywhere-src-5.13.0-beta2.orig/src/corelib/serialization/qcborvalue.h ++++ qtbase-everywhere-src-5.13.0-beta2/src/corelib/serialization/qcborvalue.h +@@ -43,9 +43,7 @@ + #include + #include + #include +-#if QT_CONFIG(regularexpression) +-# include +-#endif ++#include + #include + #include + #include +@@ -159,9 +157,7 @@ public: + + explicit QCborValue(const QDateTime &dt); + explicit QCborValue(const QUrl &url); +-#if QT_CONFIG(regularexpression) + explicit QCborValue(const QRegularExpression &rx); +-#endif + explicit QCborValue(const QUuid &uuid); + + ~QCborValue() { if (container) dispose(); } +@@ -239,9 +235,7 @@ public: + QString toString(const QString &defaultValue = {}) const; + QDateTime toDateTime(const QDateTime &defaultValue = {}) const; + QUrl toUrl(const QUrl &defaultValue = {}) const; +-#if QT_CONFIG(regularexpression) + QRegularExpression toRegularExpression(const QRegularExpression &defaultValue = {}) const; +-#endif + QUuid toUuid(const QUuid &defaultValue = {}) const; + + // only forward-declared, need split functions +@@ -386,10 +380,8 @@ public: + { return concrete().toDateTime(defaultValue); } + QUrl toUrl(const QUrl &defaultValue = {}) const + { return concrete().toUrl(defaultValue); } +-#if QT_CONFIG(regularexpression) + QRegularExpression toRegularExpression(const QRegularExpression &defaultValue = {}) const + { return concrete().toRegularExpression(defaultValue); } +-#endif + QUuid toUuid(const QUuid &defaultValue = {}) const + { return concrete().toUuid(defaultValue); } + +Index: qtbase-everywhere-src-5.13.0-beta2/src/corelib/serialization/qjsoncbor.cpp +=================================================================== +--- qtbase-everywhere-src-5.13.0-beta2.orig/src/corelib/serialization/qjsoncbor.cpp ++++ qtbase-everywhere-src-5.13.0-beta2/src/corelib/serialization/qjsoncbor.cpp +@@ -543,19 +543,14 @@ QVariant QCborValue::toVariant() const + case Url: + return toUrl(); + +-#if QT_CONFIG(regularexpression) + case RegularExpression: + return toRegularExpression(); +-#endif + + case Uuid: + return toUuid(); + + case Invalid: + return QVariant(); +- +- default: +- break; + } + + if (isSimpleType()) +@@ -719,10 +714,8 @@ QCborValue QCborValue::fromVariant(const + case QVariant::Hash: + return QCborMap::fromVariantHash(variant.toHash()); + #ifndef QT_BOOTSTRAPPED +-#if QT_CONFIG(regularexpression) + case QVariant::RegularExpression: + return QCborValue(variant.toRegularExpression()); +-#endif + case QMetaType::QJsonValue: + return fromJsonValue(variant.toJsonValue()); + case QMetaType::QJsonObject: +Index: qtbase-everywhere-src-5.13.0-beta2/src/plugins/platforms/eglfs/api/qeglfsdeviceintegration.cpp +=================================================================== +--- qtbase-everywhere-src-5.13.0-beta2.orig/src/plugins/platforms/eglfs/api/qeglfsdeviceintegration.cpp ++++ qtbase-everywhere-src-5.13.0-beta2/src/plugins/platforms/eglfs/api/qeglfsdeviceintegration.cpp +@@ -51,9 +51,7 @@ + #include + #include + #include +-#if QT_CONFIG(regularexpression) +-# include +-#endif ++#include + #include + + #if defined(Q_OS_LINUX) +Index: qtbase-everywhere-src-5.13.0-beta2/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp +=================================================================== +--- qtbase-everywhere-src-5.13.0-beta2.orig/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp ++++ qtbase-everywhere-src-5.13.0-beta2/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp +@@ -48,9 +48,7 @@ + #undef register + #include + +-#if QT_CONFIG(regularexpression) +-# include +-#endif ++#include + #include + #include + +@@ -724,7 +722,6 @@ void QGLXContext::queryDummyContext() + // The issue was fixed in Xcb 1.11, but we can't check for that + // at runtime, so instead assume it fixed with recent Mesa versions + // released several years after the Xcb fix. +-#if QT_CONFIG(regularexpression) + QRegularExpression versionTest(QStringLiteral("Mesa (\\d+)")); + QRegularExpressionMatch result = versionTest.match(QString::fromLatin1(mesaVersionStr)); + int versionNr = 0; +@@ -734,7 +731,6 @@ void QGLXContext::queryDummyContext() + // White-listed + m_supportsThreading = true; + } +-#endif + } + if (!m_supportsThreading) { + qCDebug(lcQpaGl).nospace() << "Multithreaded OpenGL disabled: " +Index: qtbase-everywhere-src-5.13.0-beta2/src/testlib/qtaptestlogger.cpp +=================================================================== +--- qtbase-everywhere-src-5.13.0-beta2.orig/src/testlib/qtaptestlogger.cpp ++++ qtbase-everywhere-src-5.13.0-beta2/src/testlib/qtaptestlogger.cpp +@@ -43,9 +43,7 @@ + #include "qtestresult_p.h" + #include "qtestassert.h" + +-#if QT_CONFIG(regularexpression) +-# include +-#endif ++#include + + QT_BEGIN_NAMESPACE + +@@ -150,7 +148,6 @@ void QTapTestLogger::addIncident(Inciden + outputString(YAML_INDENT "---\n"); + + if (type != XFail) { +-#if QT_CONFIG(regularexpression) + // This is fragile, but unfortunately testlib doesn't plumb + // the expected and actual values to the loggers (yet). + static QRegularExpression verifyRegex( +@@ -211,12 +208,6 @@ void QTapTestLogger::addIncident(Inciden + YAML_INDENT "# %s\n", description); + outputString(unparsableDescription.data()); + } +-#else +- QTestCharBuffer unparsableDescription; +- QTest::qt_asprintf(&unparsableDescription, +- YAML_INDENT "# %s\n", description); +- outputString(unparsableDescription.data()); +-#endif + } + + if (file) { diff --git a/0002-Synthesize-Enter-LeaveEvent-for-accepted-QTabletEven.patch b/0002-Synthesize-Enter-LeaveEvent-for-accepted-QTabletEven.patch index 497ffb5..67c65fa 100644 --- a/0002-Synthesize-Enter-LeaveEvent-for-accepted-QTabletEven.patch +++ b/0002-Synthesize-Enter-LeaveEvent-for-accepted-QTabletEven.patch @@ -22,11 +22,11 @@ Change-Id: Ifbad6284483ee282ad129db54606f5d0d9ddd633 src/widgets/kernel/qwidgetwindow.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) -Index: qtbase-everywhere-src-5.15.0-alpha/src/widgets/kernel/qwidgetwindow.cpp -=================================================================== ---- qtbase-everywhere-src-5.15.0-alpha.orig/src/widgets/kernel/qwidgetwindow.cpp -+++ qtbase-everywhere-src-5.15.0-alpha/src/widgets/kernel/qwidgetwindow.cpp -@@ -1075,6 +1075,18 @@ void QWidgetWindow::handleTabletEvent(QT +diff --git a/src/widgets/kernel/qwidgetwindow.cpp b/src/widgets/kernel/qwidgetwindow.cpp +index fbc71cd0ea..729a7f701a 100644 +--- a/src/widgets/kernel/qwidgetwindow.cpp ++++ b/src/widgets/kernel/qwidgetwindow.cpp +@@ -1051,6 +1051,18 @@ void QWidgetWindow::handleTabletEvent(QTabletEvent *event) event->setAccepted(ev.isAccepted()); } @@ -43,5 +43,8 @@ Index: qtbase-everywhere-src-5.15.0-alpha/src/widgets/kernel/qwidgetwindow.cpp + } + if (event->type() == QEvent::TabletRelease && event->buttons() == Qt::NoButton) - qt_tablet_target = nullptr; + qt_tablet_target = 0; } +-- +2.21.0 + diff --git a/0003-Revert-White-list-more-recent-Mesa-version-for-multi.patch b/0003-Revert-White-list-more-recent-Mesa-version-for-multi.patch new file mode 100644 index 0000000..d4a22ca --- /dev/null +++ b/0003-Revert-White-list-more-recent-Mesa-version-for-multi.patch @@ -0,0 +1,102 @@ +From e0bf494295398cbc3ba5a84380525f9c00e3f8ad Mon Sep 17 00:00:00 2001 +From: Fabian Vogt +Date: Thu, 14 Mar 2019 10:32:16 +0100 +Subject: [PATCH 3/3] Revert "White-list more recent Mesa version for + multi-threading" + +This reverts commit 97600d2c2885e667ced0926815b5a12a7f25285c. +--- + .../xcb_glx/qglxintegration.cpp | 60 +++++++++++-------- + 1 file changed, 35 insertions(+), 25 deletions(-) + +diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp +index ddb8f45188..41012c0b04 100644 +--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp ++++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp +@@ -48,7 +48,6 @@ + #undef register + #include + +-#include + #include + #include + +@@ -650,6 +649,32 @@ static const char *qglx_threadedgl_blacklist_renderer[] = { + 0 + }; + ++// This disables threaded rendering on anything using mesa, e.g. ++// - nvidia/nouveau ++// - amd/gallium ++// - intel ++// - some software opengl implementations ++// ++// The client glx vendor string is used to identify those setups as that seems to show the least ++// variance between the bad configurations. It's always "Mesa Project and SGI". There are some ++// configurations which don't use mesa and which can do threaded rendering (amd and nvidia chips ++// with their own proprietary drivers). ++// ++// This, of course, is very broad and disables threaded rendering on a lot of devices which would ++// be able to use it. However, the bugs listed below don't follow any easily recognizable pattern ++// and we should rather be safe. ++// ++// http://cgit.freedesktop.org/xcb/libxcb/commit/?id=be0fe56c3bcad5124dcc6c47a2fad01acd16f71a will ++// fix some of the issues. Basically, the proprietary drivers seem to have a way of working around ++// a fundamental flaw with multithreaded access to xcb, but mesa doesn't. The blacklist should be ++// reevaluated once that patch is released in some version of xcb. ++static const char *qglx_threadedgl_blacklist_vendor[] = { ++ "Mesa Project and SGI", // QTCREATORBUG-10875 (crash in creator) ++ // QTBUG-34492 (flickering in fullscreen) ++ // QTBUG-38221 ++ 0 ++}; ++ + void QGLXContext::queryDummyContext() + { + if (m_queriedDummyContext) +@@ -709,33 +734,18 @@ void QGLXContext::queryDummyContext() + } + } + +- if (glxvendor && m_supportsThreading) { +- // Blacklist Mesa drivers due to QTCREATORBUG-10875 (crash in creator), +- // QTBUG-34492 (flickering in fullscreen) and QTBUG-38221 +- const char *mesaVersionStr = nullptr; +- if (strstr(glxvendor, "Mesa Project") != 0) { +- mesaVersionStr = (const char *) glGetString(GL_VERSION); +- m_supportsThreading = false; +- } ++ if (glxvendor) { ++ for (int i = 0; qglx_threadedgl_blacklist_vendor[i]; ++i) { ++ if (strstr(glxvendor, qglx_threadedgl_blacklist_vendor[i]) != 0) { ++ qCDebug(lcQpaGl).nospace() << "Multithreaded OpenGL disabled: " ++ "blacklisted vendor \"" ++ << qglx_threadedgl_blacklist_vendor[i] ++ << "\""; + +- if (mesaVersionStr) { +- // The issue was fixed in Xcb 1.11, but we can't check for that +- // at runtime, so instead assume it fixed with recent Mesa versions +- // released several years after the Xcb fix. +- QRegularExpression versionTest(QStringLiteral("Mesa (\\d+)")); +- QRegularExpressionMatch result = versionTest.match(QString::fromLatin1(mesaVersionStr)); +- int versionNr = 0; +- if (result.hasMatch()) +- versionNr = result.captured(1).toInt(); +- if (versionNr >= 17) { +- // White-listed +- m_supportsThreading = true; ++ m_supportsThreading = false; ++ break; + } + } +- if (!m_supportsThreading) { +- qCDebug(lcQpaGl).nospace() << "Multithreaded OpenGL disabled: " +- "blacklisted vendor \"Mesa Project\""; +- } + } + + context.doneCurrent(); +-- +2.20.1 + diff --git a/_service b/_service deleted file mode 100644 index 81ae6f2..0000000 --- a/_service +++ /dev/null @@ -1,18 +0,0 @@ - - - enable - 5.15.2+kde@TAG_OFFSET@ - https://invent.kde.org/qt/qt/qtbase.git - git - qtbase-everywhere-src - kde/5.15 - v5.15.2 - enable - - - - - *.tar - xz - - diff --git a/_servicedata b/_servicedata deleted file mode 100644 index 7581037..0000000 --- a/_servicedata +++ /dev/null @@ -1,4 +0,0 @@ - - - https://invent.kde.org/qt/qt/qtbase.git - 366350c2e4a7eccbda0f3936e69c6b9c4fa28f55 \ No newline at end of file diff --git a/libqt5-qtbase.changes b/libqt5-qtbase.changes index 561b4f0..d4afe4d 100644 --- a/libqt5-qtbase.changes +++ b/libqt5-qtbase.changes @@ -1,334 +1,9 @@ -------------------------------------------------------------------- -Fri Jan 21 08:04:30 UTC 2022 - Fabian Vogt - -- Update to version 5.15.2+kde294: - * QTzTimeZonePrivate::init(): fix handling of empty ID - * Restore support for reading /etc/timezone for system zone name - * QPathEdge: Fix array initialization - * QTzTimeZonePrivate: fix UB (data race on m_icu) - * Don't access QObject::objectName during QThread start - * Restore C++11 compatibility after e8b9f4c28d3ab5e960dc54f2dc0c4b749b0b50e0 - * QVarLengthArray: fix size update on failed append() - * Call statx() with AT_NO_AUTOMOUNT - * QThread: Remove superfluous initialization of threadId on Unix - * QThread: Reset the system thread ID when thread exits on Unix - * Add missing macOS header file that was indirectly included before - * QXcb: don't dereference pointer before checking - * xcb: avoid to use invalid pointers - * QVarLengthArray: fix insert() type/alias mismatch between decl and impl - * Use qint64 to replace int while qt_transform_image_rasterize - * QVarLengthArray: assert that the range passed to erase() is valid - * Fix pattern type matching - * QThread: fix UB (invalid enum value) on Private::Priority - * Use block char format to render list item bullets and numbers - * QDateTime: Don't require c++17 - * QVariantAnimation: fix UB (FP 0/0) in interpolated() arg calculation - * QDateTime: fix UB (signed overflow) in addDays() - * QString: fix UB (pointer arithmetic on nullptr) in qLastIndexOf - * tst_QIODevice: fix UB (precondition violation) in SequentialReadBuffer::readData() - * QVarLengthArray: fix UB (precondition violation) in range-erase() - * Fix segmentation fault in QObject::dumpObjectInfo - -------------------------------------------------------------------- -Fri Dec 24 11:45:16 UTC 2021 - fabian@ritter-vogt.de - -- Update to version 5.15.2+kde268: - * Adapt for q_EVP_PKEY_base_id → q_EVP_PKEY_get_base_id rename in OpenSSL 3 - * Don't use a deprecated function if built/linked with OpenSSL v3 - * Diffie-Hellman parameters: remove useless 'fix' - * Dont's use DTLS_MAX_VERSION when setting SSL_CTX - * Avoid mixing atomic futex changes and QAtomic - * Fix qtdeclarative baseline test failure for text tables - * Don't let text table cells shrink below their minimum width (boo#1176530) - * Don't shrink a column when it spans multiple columns - * Use icon themes in QPrintPreviewDialog [if they exist] - * QAbstractFileEngine: fix UB (data race) on qt_file_engine_handlers_in_use - * Increment reference count when restoring reference - * Reject truncated and corrupt ascii pnm images - * Fix handling of Sunday in POSIX time-zone rules - * Fix developer build -- Drop patches, support for OpenSSL < 1.1.0 is no longer necessary: - * 0001-Lower-required-version-of-OpenSSL-to-1.1.0.patch - * fix-build-openssl-1.1.0.patch - -------------------------------------------------------------------- -Thu Oct 28 07:14:35 UTC 2021 - Fabian Vogt - -- Update to version 5.15.2+kde254: - * Revert "QPushButton: fix support of style sheet rule for text alignment" - * Revert "Fix invalid text layout data when a full layout run is interrupted" - * Optimize mime type matching - * fix potential mem leak on connection lost - * tst_QSslSocket - replace an old certificate - * tst_QSslCertificate::verify - remove QSKIP - * tst_QSslCertificate::verify - skip auto-test - * Doc: bump the OpenSSL minimum supported version to 1.1.1 - * QHttpSocketEngine: Fix memory leak - * QSslCertificate(OpenSSL) - harden protection against nullpointers - * QSslCertificate: Guard against accessing empty QByteArray - * Make QStyle::proxy() always return the leaf proxy - * Prefer previously used channels in QHttpNetworkConnection - * Fix populating selection clipboard with keyboard - * QSslCertificate::operator == - cleanup error queue - * Revert "Fix highdpi conversion of QTabletEvent coordinates on xcb" - * Fix highdpi conversion of QTabletEvent coordinates on xcb - * Support transformations in pattern/texture brushes in pdf - * Respect font stretch if set together with font style - * Fix QPainterPath with QFont::SmallCaps - * Avoid generating large pdf files when using dashed cosmetic pens - * PDF generation: disentangle native pen from transforms - * qmake: Switch to using Xcode's new build system - * Explicitly set input files for qtpreprocess - * Only embed launch screen when building an app - * Explicitly set output files for qtpreprocess - * Fix memory leak - * Fix reading gamma from PNGs without ICC profile - * QPlatformWindow: fix isAncestorOf not breaking recursion - * Cater for upstream changes in eglplatform.h - * QTextOdfWriter: fix exporting pixmaps to ODT - * Fix access to content: URLs with transient read/write permissions - -------------------------------------------------------------------- -Fri Aug 27 17:51:39 UTC 2021 - Fabian Vogt - -- Update to version 5.15.2+kde222: - * Revert "QString::lastIndexOf: fix off-by-one for zero length matches" - * MySQL: treat the MYSQL_FIELD as read-only - * Remove checks for glibc < 2 from qplatformdefs.h files - * linux-clang/qplatformdefs: fix building with musl libc - * Refix for avoiding huge number of tiny dashes - * Improve fix for avoiding huge number of tiny dashes - * Avoid processing-intensive painting of high number of tiny dashes - * xcb: add a timeout control when reading INCR property - * Remove another usage of mysql_get_client_version() - * MySQL: remove the version number checks in favor of actual functionality - * QLibraryInfo: Add MSVC 2022 - * doCrypt() - check the error codes - * Restore C++11 compatibility of QSharedPointer code - * opengl: fix a typo in QOpenGLPaintDevice::dotsPerMeterY() - * Fix rvalue overload of qobject_pointer_cast for GCC 9.3 - * QVarLengthArray: fix aliasing error in insert(it, n, v) - * Fix memory leak of QOffscreenScreen in QOffscreenIntegration - * Fix tst_moc for C++17 - * Add missing limits include - * xcb: Avoid use-after-free in QXcbConnection::initializeScreens() - * xcb: Remove need for QXCBScreen to resolve QXcbGlIntegration - * Update shared-mime-info to the 2.1 release, adjust implementation - -------------------------------------------------------------------- -Thu Jun 24 19:16:41 UTC 2021 - Fabian Vogt - -- Revert to the default platform plugin list ("wayland;xcb") - -------------------------------------------------------------------- -Thu Jun 24 09:02:42 UTC 2021 - Fabian Vogt - -- Update to version 5.15.2+kde200: - * Optimize quadratic-time insertion in QSortFilterProxyModel - -------------------------------------------------------------------- -Mon Jun 21 08:07:20 UTC 2021 - Fabian Vogt - -- Switch to KDE's maintenance branch -- Update to version 5.15.2+kde199: - * Too many changes to list here -- Add patch to reset version to 5.15.2: - * 0001-Revert-Bump-version.patch -- Drop patches, now upstream: - * 0001-Partially-revert-813a928c7c3cf98670b6043149880ed5c95.patch - * 0001-Fix-allocated-memory-of-QByteArray.patch - * 0001-Fix-build-with-GCC-11-include-limits.patch - * 0001-Let-QXcbConnection-getTimestamp-properly-exit-when-X.patch - * 0002-Build-fixes-for-GCC-11.patch - -------------------------------------------------------------------- -Wed May 26 11:49:02 UTC 2021 - Fabian Vogt - -- Add trailing newline to qtlogging.ini - -------------------------------------------------------------------- -Tue Apr 13 07:06:06 UTC 2021 - Fabian Vogt - -- Add patch to fix possible crash caused by GCC 11 build fix: - * 0001-Partially-revert-813a928c7c3cf98670b6043149880ed5c95.patch - -------------------------------------------------------------------- -Mon Feb 8 09:16:47 UTC 2021 - Fabian Vogt - -- Add patch to fix build with GCC 11 (boo#1181861, QTBUG-90395): - * 0001-Fix-build-with-GCC-11-include-limits.patch - * 0002-Build-fixes-for-GCC-11.patch - -------------------------------------------------------------------- -Tue Jan 19 07:46:43 UTC 2021 - Stefan Brüns - -- Add patch to fix infinite loop in KWin on XServer exit: - * 0001-Let-QXcbConnection-getTimestamp-properly-exit-when-X.patch -- Spec file cleanup, remove conditionals for Leap 42.x - -------------------------------------------------------------------- -Tue Dec 29 11:48:35 UTC 2020 - Arjen de Korte - -- Add patch to avoid excessive use of memory by lconvert: - * 0001-Fix-allocated-memory-of-QByteArray.patch - -------------------------------------------------------------------- -Fri Nov 20 12:08:44 UTC 2020 - Fabian Vogt - -- Update to 5.15.2: - * New bugfix release - * For more details please see: - http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.15.2/?h=5.15.2 - * Fallback to /tmp/runtime-$USER if XDG_RUNTIME_DIR is not set - or is unsafe (bsc#1172515) -- Drop patches, now upstream: - * 0001-Revert-Emit-QScreen-availableG-g-eometryChanged-on-l.patch -- Pass -confirm-license option, drop duplicates -- BuildRequire xcb-util - -------------------------------------------------------------------- -Fri Nov 13 15:50:40 UTC 2020 - Fabian Vogt - -- Add patch to avoid coredumps with missing display: - * 0001-Avoid-SIGABRT-on-platform-plugin-initialization-fail.patch - -------------------------------------------------------------------- -Wed Oct 28 13:22:24 UTC 2020 - Fabian Vogt - -- Disable -reduce-relocations for now (boo#1175278, QTBUG-86173) - -------------------------------------------------------------------- -Wed Oct 14 19:28:37 UTC 2020 - Stefan Brüns - -- Silence xcb errors and qml connection warnings by default, see - boo#1115541 (xcb) and kde#418793. - -------------------------------------------------------------------- -Mon Oct 12 13:57:55 UTC 2020 - Stefan Brüns - -- Remove some no longer required build dependencies: libpulse, - alsa (now used via QtMultimedia), libmng (obsolete). - -------------------------------------------------------------------- -Mon Sep 21 09:55:25 UTC 2020 - Fabian Vogt - -- Revert commit to fix screen geometry on startup (boo#1176750, QTBUG-86604): - * 0001-Revert-Emit-QScreen-availableG-g-eometryChanged-on-l.patch - -------------------------------------------------------------------- -Thu Sep 10 07:57:00 UTC 2020 - Fabian Vogt - -- Update to 5.15.1: - * New bugfix release - * Fixes CVE-2020-17507, bsc#1176315 - * For more details please see: - http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.15.1/?h=5.15.1 -- Drop patches, now upstream: - * 0001-Do-not-multithread-if-already-in-a-global-threadpool.patch - * 0001-Fix-QToolButton-menus-showing-on-primary-screens-in-.patch -- Adjust fix-build-openssl-1.1.0.patch - -------------------------------------------------------------------- -Sun Jul 5 10:16:48 UTC 2020 - Fabian Vogt - -- Add patch to prevent stuck image conversion (boo#1172599, QTBUG-84619): - * 0001-Do-not-multithread-if-already-in-a-global-threadpool.patch - -------------------------------------------------------------------- -Wed Jun 10 12:31:44 UTC 2020 - Fabian Vogt - -- Add patch to fix tool menu placement (boo#1172754, QTBUG-84462): - * 0001-Fix-QToolButton-menus-showing-on-primary-screens-in-.patch - -------------------------------------------------------------------- -Wed May 27 08:48:52 UTC 2020 - Fabian Vogt - -- Add patch to avoid behaviour change causing crashes (kde#419526): - * 0001-Revert-QMenu-hide-when-a-QWidgetAction-fires-the-tri.patch - -------------------------------------------------------------------- -Tue May 26 09:44:55 UTC 2020 - Callum Farmer - -- Update to 5.15.0: - * No changelog available - -------------------------------------------------------------------- -Wed May 20 15:38:18 UTC 2020 - Callum Farmer - -- Update to 5.15.0-rc2 - * No changelog available - -------------------------------------------------------------------- -Wed May 6 11:26:35 UTC 2020 - Fabian Vogt - -- Update to 5.15.0-rc: - * New bugfix release - * For the changes between 5.14.2 and 5.15.0 please see: - http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.15.0/?h=5.15.0 -- Drop patches, now upstream: - * 0001-QTextMarkdownImporter-fix-use-after-free-add-fuzz-ge.patch -- Add patch to fix build on Leap 15.1: - * fix-build-openssl-1.1.0.patch - -------------------------------------------------------------------- -Mon Apr 27 12:45:07 UTC 2020 - Fabian Vogt - -- Add patch to fix use-after-free (boo#1170582, CVE-2020-12267): - * 0001-QTextMarkdownImporter-fix-use-after-free-add-fuzz-ge.patch - -------------------------------------------------------------------- -Fri Apr 24 07:11:04 UTC 2020 - Fabian Vogt - -- Update to 5.15.0-beta4: - * New bugfix release - * No changelog available - * Qt incorrectly calls SSL_shutdown() in OpenSSL mid-handshake - causing denial of service in TLS applications (bsc#1172726, - CVE-2020-13962, QTBUG-83450) - -------------------------------------------------------------------- -Tue Apr 14 06:47:19 UTC 2020 - Fabian Vogt - -- Update to 5.15.0-beta3: - * New bugfix release - * No changelog available -- Add patch to fix build on Leap 15.1: - * 0001-Lower-required-version-of-OpenSSL-to-1.1.0.patch - -------------------------------------------------------------------- -Tue Mar 24 12:13:29 UTC 2020 - Fabian Vogt - -- Update to 5.15.0-beta2: - * New bugfix release - * No changelog available - -------------------------------------------------------------------- -Fri Feb 28 09:58:42 UTC 2020 - Fabian Vogt - -- Update to 5.15.0-beta1: - * New bugfix release - * No changelog available - -------------------------------------------------------------------- -Wed Feb 19 10:16:14 UTC 2020 - Fabian Vogt - -- Update to 5.15.0-alpha: - * New feature release - * For more details please see: - https://wiki.qt.io/New_Features_in_Qt_5.15 -- Replace patches with single patch - 0001-Don-t-white-list-recent-Mesa-versions-for-multithrea.patch: - * 0001-Revert-Blacklist-nouveau-and-llvmpipe-for-multithrea.patch - * 0002-Revert-qtlite-Fix-build-libs-with-no-feature-regular.patch: - * 0003-Revert-White-list-more-recent-Mesa-version-for-multi.patch -- Refresh 0002-Synthesize-Enter-LeaveEvent-for-accepted-QTabletEven.patch - ------------------------------------------------------------------- Mon Jan 27 13:13:57 UTC 2020 - Fabian Vogt - Update to 5.14.1: * New bugfix release - * Fixes CVE-2020-0570, bsc#1161167, bsc#1162191, QTBUG-81272 + * Fixes CVE-2020-0570 * For more details please see: http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.14.1/?h=v5.14.1 - Drop patch, should be addressed by applications meanwhile: @@ -390,8 +65,6 @@ Thu Oct 24 13:22:25 UTC 2019 - Fabian Vogt - Update to 5.14.0-beta2: * New bugfix release * No changelog available - * Fix segfaults due to unaligned stack in QtCore5 (bsc#1155955) - * Add support for PostgreSQL 12 (bsc#1173758) - Refresh patches: * 0001-Revert-Always-escape-the-table-names-when-creating-t.patch @@ -598,8 +271,6 @@ Thu Mar 21 10:24:28 UTC 2019 - fabian@ritter-vogt.de * New feature release * For more details about Qt 5.13 please see: * http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.13.0/?h=5.13 - * Qt headers redefine opengl types differently than khronos headers - (bsc#1176130) - Remove patches, now upstream: * qapplication-emit-palettechanged.patch * reproducible-qrc-time.patch diff --git a/libqt5-qtbase.spec b/libqt5-qtbase.spec index 2481b93..e2d7ce7 100644 --- a/libqt5-qtbase.spec +++ b/libqt5-qtbase.spec @@ -1,7 +1,7 @@ # # spec file for package libqt5-qtbase # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,11 +12,11 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# Please submit bugfixes or comments via http://bugs.opensuse.org/ # -%define qt5_snapshot 1 +%define qt5_snapshot 0 %define journald 1 %ifarch %arm aarch64 @@ -25,32 +25,34 @@ %global gles 0 %endif +%if 0%{?suse_version} >= 1330 %global vulkan 1 %bcond_without harfbuzz +%else +# Harfbuzz too old +%bcond_with harfbuzz +# Vulkan headers too old +%global vulkan 0 +%endif Name: libqt5-qtbase -Version: 5.15.2+kde294 +Version: 5.14.1 Release: 0 Summary: C++ Program Library, Core Components License: LGPL-3.0-only or GPL-3.0-with-Qt-Company-Qt-exception-1.1 Group: System/Libraries Url: https://www.qt.io %define base_name libqt5 -%define real_version 5.15.2 -%define so_version 5.15.2 -%define tar_version qtbase-everywhere-src-%{version} -Source: %{tar_version}.tar.xz +%define real_version 5.14.1 +%define so_version 5.14.1 +%define tar_version qtbase-everywhere-src-5.14.1 +Source: https://download.qt.io/official_releases/qt/5.14/%{real_version}/submodules/%{tar_version}.tar.xz # to get mtime of file: Source1: libqt5-qtbase.changes Source2: macros.qt5 Source3: baselibs.conf -Source4: qtlogging.ini Source99: libqt5-qtbase-rpmlintrc # patches 0-1000 are openSUSE and/or non-upstream(able) patches # -Patch3: 0001-Revert-QMenu-hide-when-a-QWidgetAction-fires-the-tri.patch -# Proposed: https://bugreports.qt.io/browse/QTBUG-88491 -Patch4: 0001-Avoid-SIGABRT-on-platform-plugin-initialization-fail.patch -Patch5: 0001-Revert-Bump-version.patch # PATCH-FIX-OPENSUSE disable-rc4-ciphers-bnc865241.diff bnc#865241-- Exclude rc4 ciphers from being used by default Patch6: disable-rc4-ciphers-bnc865241.diff Patch8: tell-the-truth-about-private-api.patch @@ -59,16 +61,20 @@ Patch10: libqt5-prioritise-gtk2-platformtheme.patch # PATCH-FEATURE-OPENSUSE 0001-Add-remote-print-queue-support.patch fate#322052 -- Automatically recognize and allow printing to remote cups servers Patch12: 0001-Add-remote-print-queue-support.patch # PATCH-FIX-OPENSUSE -Patch21: 0001-Don-t-white-list-recent-Mesa-versions-for-multithrea.patch +Patch21: 0001-Revert-Blacklist-nouveau-and-llvmpipe-for-multithrea.patch +Patch22: 0002-Revert-qtlite-Fix-build-libs-with-no-feature-regular.patch +Patch23: 0003-Revert-White-list-more-recent-Mesa-version-for-multi.patch Patch24: fix-fixqt4headers.patch -# patches 1000-2000 and above from upstream 5.15 branch # -# patches 2000-3000 and above from upstream qt6/dev branch # +# patches 1000-2000 and above from upstream 5.14 branch # +# patches 2000-3000 and above from upstream 5.15/dev branch # # Not accepted yet, https://codereview.qt-project.org/c/qt/qtbase/+/255384 Patch2001: 0002-Synthesize-Enter-LeaveEvent-for-accepted-QTabletEven.patch +BuildRequires: alsa-devel BuildRequires: cups-devel BuildRequires: double-conversion-devel BuildRequires: gcc-c++ BuildRequires: libjpeg-devel +BuildRequires: libmng-devel BuildRequires: libmysqlclient-devel BuildRequires: libpng-devel BuildRequires: libproxy-devel @@ -95,6 +101,7 @@ BuildRequires: Mesa-libGLESv3-devel BuildRequires: pkgconfig(glesv2) %endif BuildRequires: libicu-devel +BuildRequires: libpulse-devel BuildRequires: tslib-devel %if %{vulkan} BuildRequires: vulkan-devel @@ -110,7 +117,6 @@ BuildRequires: pkgconfig(xcb-render) BuildRequires: pkgconfig(xcb-shape) BuildRequires: pkgconfig(xcb-shm) BuildRequires: pkgconfig(xcb-sync) -BuildRequires: pkgconfig(xcb-util) BuildRequires: pkgconfig(xcb-xfixes) BuildRequires: pkgconfig(xcb-xinerama) BuildRequires: pkgconfig(xcb-xkb) @@ -828,13 +834,8 @@ sed -i 's|qt_instdate=`date +%Y-%m-%d`|qt_instdate=$CHANGES|g' configure sed -i -e 's|^\(QMAKE_STRIP.*=\).*$|\1|g' mkspecs/common/linux.conf # -no-feature-relocatable is needed to support /usr/lib/sse2 etc., see QTBUG-78948 -# -reduce-relocations means copy relocations aren't allowed, and so special -# flags like -fPIC need to be passed when building an application. This breaks -# with LTO (PIE overrides that) and CMake (doesn't pass -fPIC when linking). -# Due to a binutils bug/misunderstanding, this option didn't do as much before 2.35, -# so just disable it for now until a proper alternative appears. -./configure \ +echo yes | ./configure \ -prefix %{_prefix} \ -L %{libqt5_libdir} \ -libdir %{libqt5_libdir} \ @@ -850,7 +851,11 @@ sed -i -e 's|^\(QMAKE_STRIP.*=\).*$|\1|g' mkspecs/common/linux.conf -sysconfdir %{libqt5_sysconfdir} \ -translationdir %{libqt5_translationdir} \ -verbose \ +%ifarch %ix86 x86_64 + -reduce-relocations \ +%else -no-reduce-relocations \ +%endif %ifarch %ix86 %if 0%{?sle_version} < 150000 -no-sse2 -no-pch \ @@ -859,12 +864,10 @@ sed -i -e 's|^\(QMAKE_STRIP.*=\).*$|\1|g' mkspecs/common/linux.conf -accessibility \ -no-strip \ -opensource \ - -confirm-license \ -no-separate-debug-info \ -force-debug-info \ -shared \ - -xkbcommon \ - -no-bundled-xcb-xinput \ + -xkb \ -dbus-linked \ -sm \ -no-rpath \ @@ -883,6 +886,7 @@ sed -i -e 's|^\(QMAKE_STRIP.*=\).*$|\1|g' mkspecs/common/linux.conf -glib \ -sctp \ -system-sqlite \ + -no-sql-mysql \ %if %journald -journald \ %endif @@ -901,7 +905,9 @@ sed -i -e 's|^\(QMAKE_STRIP.*=\).*$|\1|g' mkspecs/common/linux.conf -plugin-sql-psql -I/usr/include/pgsql/ -I/usr/include/pgsql/server \ -plugin-sql-odbc \ -plugin-sql-mysql -I/usr/include/mysql/ \ + -qpa "xcb;wayland" \ -no-feature-relocatable \ + -v \ QMAKE_CFLAGS+="$CFLAGS" \ QMAKE_CXXFLAGS+="$CXXFLAGS" @@ -960,10 +966,6 @@ popd chmod 644 %{buildroot}%{libqt5_docdir}/global/template/images/*.png -# Silence logging of xcb errors and qml deprecated connection -# warnings by default -install -Dm644 %{SOURCE4} %{buildroot}%{libqt5_datadir}/qtlogging.ini - %post -n libQt5Core5 -p /sbin/ldconfig %post -n libQt5Concurrent5 -p /sbin/ldconfig @@ -1046,8 +1048,6 @@ install -Dm644 %{SOURCE4} %{buildroot}%{libqt5_datadir}/qtlogging.ini %{libqt5_libdir}/sse2/libQt5Core.so.* %endif %endif -%dir %{libqt5_datadir} -%{libqt5_datadir}/qtlogging.ini %files -n libQt5Core-devel %license LICENSE.* @@ -1058,8 +1058,6 @@ install -Dm644 %{SOURCE4} %{buildroot}%{libqt5_datadir}/qtlogging.ini %{libqt5_libdir}/cmake/Qt5/ %{libqt5_libdir}/pkgconfig/Qt5Core.pc %{libqt5_includedir}/QtCore/ -%dir %{libqt5_libdir}/metatypes/ -%{libqt5_libdir}/metatypes/qt5core_metatypes.json %exclude %{libqt5_includedir}/QtCore/%{so_version} %{libqt5_docdir} @@ -1187,7 +1185,6 @@ install -Dm644 %{SOURCE4} %{buildroot}%{libqt5_datadir}/qtlogging.ini %{libqt5_libdir}/cmake/Qt5Widgets/ %{libqt5_libdir}/pkgconfig/Qt5Widgets.pc %{libqt5_includedir}/QtWidgets/ -%{libqt5_libdir}/metatypes/qt5widgets_metatypes.json %exclude %{libqt5_includedir}/QtWidgets/%{so_version} %files -n libQt5Gui5 @@ -1240,7 +1237,6 @@ install -Dm644 %{SOURCE4} %{buildroot}%{libqt5_datadir}/qtlogging.ini %{libqt5_includedir}/QtGui/ %{libqt5_includedir}/QtEglFSDeviceIntegration/ %{libqt5_includedir}/QtXkbCommonSupport -%{libqt5_libdir}/metatypes/qt5gui_metatypes.json %exclude %{libqt5_includedir}/QtGui/%{so_version} %exclude %{libqt5_includedir}/QtEglFSDeviceIntegration/%{so_version} %exclude %{libqt5_includedir}/QtXkbCommonSupport/%{so_version} @@ -1294,6 +1290,7 @@ install -Dm644 %{SOURCE4} %{buildroot}%{libqt5_datadir}/qtlogging.ini %doc *.txt %{libqt5_libdir}/libQt5Bootstrap.a %{libqt5_libdir}/libQt5Bootstrap.prl +%{libqt5_libdir}/cmake/Qt5Bootstrap/ %files -n libQt5OpenGLExtensions-devel-static %license LICENSE.* diff --git a/qtbase-everywhere-src-5.14.1.tar.xz b/qtbase-everywhere-src-5.14.1.tar.xz new file mode 100644 index 0000000..7c77e9b --- /dev/null +++ b/qtbase-everywhere-src-5.14.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9d423a6e7bcf1055c0372fc029f14a6fe67dd62c67b83095cde68b60b762cf7 +size 49828188 diff --git a/qtbase-everywhere-src-5.15.2+kde294.obscpio b/qtbase-everywhere-src-5.15.2+kde294.obscpio deleted file mode 100644 index 600f8a4..0000000 --- a/qtbase-everywhere-src-5.15.2+kde294.obscpio +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e6ec08431d9f5a84615b0381db9c80bdeb71de1e813f18a08b664336c290eeed -size 291332110 diff --git a/qtbase-everywhere-src.obsinfo b/qtbase-everywhere-src.obsinfo deleted file mode 100644 index 0b132c9..0000000 --- a/qtbase-everywhere-src.obsinfo +++ /dev/null @@ -1,5 +0,0 @@ -name: qtbase-everywhere-src -version: 5.15.2+kde294 -mtime: 1642610092 -commit: 366350c2e4a7eccbda0f3936e69c6b9c4fa28f55 - diff --git a/qtlogging.ini b/qtlogging.ini deleted file mode 100644 index 571dac6..0000000 --- a/qtlogging.ini +++ /dev/null @@ -1,3 +0,0 @@ -[Rules] -qt.qpa.xcb.warning=false -qt.qml.connections.warning=false