diff --git a/0001-Fix-qmake-build-with-glibc-2.28.patch b/0001-Fix-qmake-build-with-glibc-2.28.patch deleted file mode 100644 index 8dba782..0000000 --- a/0001-Fix-qmake-build-with-glibc-2.28.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 25feee4e061b99edab79503d81f5bd045c6c8e3d Mon Sep 17 00:00:00 2001 -From: Thiago Macieira -Date: Tue, 7 Aug 2018 09:38:42 -0700 -Subject: [PATCH] Fix qmake build with glibc 2.28 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -We haven't yet run the configure checks to see if statx and renameat2 -are present in glibc, so this fails when we redefine the structures and -functions. - -linux/stat.h:56:8: error: redefinition of 'struct statx_timestamp' -bits/statx.h:25:8: note: previous definition of 'struct statx_timestamp' -qfilesystemengine_unix.cpp:110:12: error: 'int renameat2(int, const char*, int, const char*, unsigned int)' was declared 'extern' and later 'static' [-fpermissive] - -Change-Id: Ia741b559c24d46c78fb2fffd1548a792d22e3368 -Reviewed-by: Oswald Buddenhagen -Reviewed-by: Jüri Valdmann ---- - src/corelib/global/qconfig-bootstrapped.h | 12 ++++++++++-- - src/corelib/io/qfilesystemengine_unix.cpp | 2 +- - 2 files changed, 11 insertions(+), 3 deletions(-) - -diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h -index 3469ebe5e6..c5585ea32a 100644 ---- a/src/corelib/global/qconfig-bootstrapped.h -+++ b/src/corelib/global/qconfig-bootstrapped.h -@@ -98,10 +98,18 @@ - #define QT_NO_QOBJECT - #define QT_FEATURE_process -1 - #define QT_FEATURE_regularexpression -1 --#define QT_FEATURE_renameat2 -1 -+#ifdef __GLIBC_PREREQ -+# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1) -+#else -+# define QT_FEATURE_renameat2 -1 -+#endif - #define QT_FEATURE_sharedmemory -1 - #define QT_FEATURE_slog2 -1 --#define QT_FEATURE_statx -1 -+#ifdef __GLIBC_PREREQ -+# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1) -+#else -+# define QT_FEATURE_statx -1 -+#endif - #define QT_FEATURE_syslog -1 - #define QT_NO_SYSTEMLOCALE - #define QT_FEATURE_systemsemaphore -1 -diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp -index 0c9cdb8667..deb4a9f220 100644 ---- a/src/corelib/io/qfilesystemengine_unix.cpp -+++ b/src/corelib/io/qfilesystemengine_unix.cpp -@@ -91,7 +91,6 @@ extern "C" NSString *NSTemporaryDirectory(); - # include - # include - # include --# include - - // in case linux/fs.h is too old and doesn't define it: - #ifndef FICLONE -@@ -112,6 +111,7 @@ static int renameat2(int oldfd, const char *oldpath, int newfd, const char *newp - # endif - - # if !QT_CONFIG(statx) && defined(SYS_statx) -+# include - static int statx(int dirfd, const char *pathname, int flag, unsigned mask, struct statx *statxbuf) - { return syscall(SYS_statx, dirfd, pathname, flag, mask, statxbuf); } - # elif !QT_CONFIG(statx) && !defined(SYS_statx) --- -2.18.0 - diff --git a/0001-xcb-Don-t-get-initial-screen-rotation.patch b/0001-xcb-Don-t-get-initial-screen-rotation.patch new file mode 100644 index 0000000..aff6e1d --- /dev/null +++ b/0001-xcb-Don-t-get-initial-screen-rotation.patch @@ -0,0 +1,53 @@ +From 2283db90d8872df8cb3e1b2d6a3ba080b0bc687b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?B=C5=82a=C5=BCej=20Szczygie=C5=82?= +Date: Tue, 25 Sep 2018 18:45:10 +0200 +Subject: [PATCH] xcb: Don't get initial screen rotation + +"xcb_randr_get_screen_info" can be slow and in some configurations can +cause short mouse cursor freezes (which will happen on Qt application +startup). + +Initial rotation state (if differs than 0 degrees) is used only for +filtering first screen change notify event if nothing has changed. + +Also remove unused variable. + +Change-Id: I9f01325a045d2c82c4dd2fce91a18a34e54a4bcd +--- + src/plugins/platforms/xcb/qxcbscreen.cpp | 7 ------- + src/plugins/platforms/xcb/qxcbscreen.h | 1 - + 2 files changed, 8 deletions(-) + +diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp +index 7f2793b2b7..a696e2a311 100644 +--- a/src/plugins/platforms/xcb/qxcbscreen.cpp ++++ b/src/plugins/platforms/xcb/qxcbscreen.cpp +@@ -118,13 +118,6 @@ QXcbVirtualDesktop::QXcbVirtualDesktop(QXcbConnection *connection, xcb_screen_t + + xcb_depth_next(&depth_iterator); + } +- +- if (connection->hasXRandr()) { +- xcb_connection_t *conn = connection->xcb_connection(); +- auto screen_info = Q_XCB_REPLY(xcb_randr_get_screen_info, conn, screen->root); +- if (screen_info) +- m_rotation = screen_info->rotation; +- } + } + + QXcbVirtualDesktop::~QXcbVirtualDesktop() +diff --git a/src/plugins/platforms/xcb/qxcbscreen.h b/src/plugins/platforms/xcb/qxcbscreen.h +index 6438669e7a..ae595dbda2 100644 +--- a/src/plugins/platforms/xcb/qxcbscreen.h ++++ b/src/plugins/platforms/xcb/qxcbscreen.h +@@ -220,7 +220,6 @@ private: + xcb_randr_crtc_t m_crtc; + xcb_randr_mode_t m_mode = XCB_NONE; + bool m_primary = false; +- uint8_t m_rotation = XCB_RANDR_ROTATION_ROTATE_0; + + QString m_outputName; + QSizeF m_outputSizeMillimeters; +-- +2.18.0 + diff --git a/0002-xcb-Use-the-screen-s-physical-DPI-as-logical-DPI-unl.patch b/0002-xcb-Use-the-screen-s-physical-DPI-as-logical-DPI-unl.patch index 7050278..c41d7c1 100644 --- a/0002-xcb-Use-the-screen-s-physical-DPI-as-logical-DPI-unl.patch +++ b/0002-xcb-Use-the-screen-s-physical-DPI-as-logical-DPI-unl.patch @@ -14,27 +14,24 @@ Task-number: QTBUG-67928 src/plugins/platforms/xcb/qxcbscreen.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) -diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp -index 7e898db17c..21076a0812 100644 ---- a/src/plugins/platforms/xcb/qxcbscreen.cpp -+++ b/src/plugins/platforms/xcb/qxcbscreen.cpp -@@ -606,7 +606,15 @@ QDpi QXcbScreen::logicalDpi() const +Index: qtbase-everywhere-src-5.11.2/src/plugins/platforms/xcb/qxcbscreen.cpp +=================================================================== +--- qtbase-everywhere-src-5.11.2.orig/src/plugins/platforms/xcb/qxcbscreen.cpp ++++ qtbase-everywhere-src-5.11.2/src/plugins/platforms/xcb/qxcbscreen.cpp +@@ -681,7 +681,15 @@ QDpi QXcbScreen::logicalDpi() const if (forcedDpi > 0) { return QDpi(forcedDpi, forcedDpi); } -- return virtualDpi(); +- return m_virtualDesktop->dpi(); + + // By default, X fakes the virtual size to be 96 dpi (+-rounding), + // so if it's different the user overwrote it. -+ if (qRound(virtualDpi().first) != 96 || -+ qRound(virtualDpi().second) != 96) { -+ return virtualDpi(); ++ if (qRound(m_virtualDesktop->dpi().first) != 96 || ++ qRound(m_virtualDesktop->dpi().second) != 96) { ++ return m_virtualDesktop->dpi(); + } + + return QDpi(m_pixelDensity * 96, m_pixelDensity * 96); } qreal QXcbScreen::pixelDensity() const --- -2.17.1 - diff --git a/Export-qt_open64-from-QtCore.patch b/Export-qt_open64-from-QtCore.patch new file mode 100644 index 0000000..869f366 --- /dev/null +++ b/Export-qt_open64-from-QtCore.patch @@ -0,0 +1,30 @@ +From ba22a6731377c8604d13e3855204c03652c0a2e3 Mon Sep 17 00:00:00 2001 +From: Thiago Macieira +Date: Fri, 21 Sep 2018 09:04:24 -0700 +Subject: [PATCH] Export qt_open64 from QtCore + +Other libs use qcore_unix_p.h. + +qopenglprogrambinarycache.cpp:function QOpenGLProgramBinaryCache::load(QByteArray const&, unsigned int): error: undefined reference to 'qt_open64(char const*, int, unsigned int)' + +Change-Id: I44e7d800c68141bdaae0fffd155675d15eded2e4 +--- + src/corelib/kernel/qcore_unix_p.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/corelib/kernel/qcore_unix_p.h b/src/corelib/kernel/qcore_unix_p.h +index cb98bef3476..5a2a29a3273 100644 +--- a/src/corelib/kernel/qcore_unix_p.h ++++ b/src/corelib/kernel/qcore_unix_p.h +@@ -178,7 +178,7 @@ inline void qt_ignore_sigpipe() + + #if defined(Q_PROCESSOR_X86_32) && defined(__GLIBC__) + # if !__GLIBC_PREREQ(2, 22) +-int qt_open64(const char *pathname, int flags, mode_t); ++Q_CORE_EXPORT int qt_open64(const char *pathname, int flags, mode_t); + # undef QT_OPEN + # define QT_OPEN qt_open64 + # endif +-- +2.16.3 + diff --git a/libqt5-qtbase.changes b/libqt5-qtbase.changes index a5d13cc..74ad685 100644 --- a/libqt5-qtbase.changes +++ b/libqt5-qtbase.changes @@ -1,3 +1,25 @@ +------------------------------------------------------------------- +Wed Sep 26 14:16:33 UTC 2018 - fabian@ritter-vogt.de + +- Add patch to avoid lag on startup with the modesetting driver on + intel (QTBUG-70760): + * 0001-xcb-Don-t-get-initial-screen-rotation.patch + +------------------------------------------------------------------- +Fri Sep 21 07:58:43 UTC 2018 - fabian@ritter-vogt.de + +- Update to 5.11.2 + * New bugfix release + * For more details please see: + * http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.11.2/?h=v5.11.2 +- Refresh patches: + * 0002-xcb-Use-the-screen-s-physical-DPI-as-logical-DPI-unl.patch + * tell-the-truth-about-private-api.patch +- Remove patches, now upstream: + * 0001-Fix-qmake-build-with-glibc-2.28.patch +- Add patch to fix build on 32-bit: + * Export-qt_open64-from-QtCore.patch + ------------------------------------------------------------------- Tue Sep 11 15:25:17 UTC 2018 - schwab@suse.de diff --git a/libqt5-qtbase.spec b/libqt5-qtbase.spec index ecdabfd..8b0b0af 100644 --- a/libqt5-qtbase.spec +++ b/libqt5-qtbase.spec @@ -36,16 +36,16 @@ %endif Name: libqt5-qtbase -Version: 5.11.1 +Version: 5.11.2 Release: 0 Summary: C++ Program Library, Core Components License: LGPL-2.1-with-Qt-Company-Qt-exception-1.1 or LGPL-3.0-only Group: System/Libraries Url: https://www.qt.io %define base_name libqt5 -%define real_version 5.11.1 -%define so_version 5.11.1 -%define tar_version qtbase-everywhere-src-5.11.1 +%define real_version 5.11.2 +%define so_version 5.11.2 +%define tar_version qtbase-everywhere-src-5.11.2 Source: https://download.qt.io/official_releases/qt/5.11/%{real_version}/submodules/%{tar_version}.tar.xz # to get mtime of file: Source1: libqt5-qtbase.changes @@ -71,8 +71,8 @@ Patch18: 0002-xcb-Use-the-screen-s-physical-DPI-as-logical-DPI-unl.patch # PATCH-FIX-UPSTREAM Patch19: qapplication-emit-palettechanged.patch # patches 1000- 2000 and above from upstream 5.11 branch # -# PATCH-FIX-UPSTREAM -Patch1000: 0001-Fix-qmake-build-with-glibc-2.28.patch +Patch1000: Export-qt_open64-from-QtCore.patch +Patch1001: 0001-xcb-Don-t-get-initial-screen-rotation.patch # patches 2000-3000 and above from upstream 5.12/dev branch # BuildRequires: alsa-devel BuildRequires: cups-devel diff --git a/qtbase-everywhere-src-5.11.1.tar.xz b/qtbase-everywhere-src-5.11.1.tar.xz deleted file mode 100644 index a100dc9..0000000 --- a/qtbase-everywhere-src-5.11.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a0d047b2da5782c8332c59ae203984b64e4d5dc5f4ba9c0884fdbe753d0afb46 -size 46860400 diff --git a/qtbase-everywhere-src-5.11.2.tar.xz b/qtbase-everywhere-src-5.11.2.tar.xz new file mode 100644 index 0000000..7a62b4a --- /dev/null +++ b/qtbase-everywhere-src-5.11.2.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6381e7c3468d5a1dcfe3683b29eeced192faa0f8a32434fec071a59b8bcd0107 +size 46954920 diff --git a/tell-the-truth-about-private-api.patch b/tell-the-truth-about-private-api.patch index ac59bdc..96402f6 100644 --- a/tell-the-truth-about-private-api.patch +++ b/tell-the-truth-about-private-api.patch @@ -1,8 +1,8 @@ -Index: qtbase-everywhere-src-5.10.0-rc1/mkspecs/features/qt_module.prf +Index: qtbase-everywhere-src-5.11.2/mkspecs/features/qt_module.prf =================================================================== ---- qtbase-everywhere-src-5.10.0-rc1.orig/mkspecs/features/qt_module.prf -+++ qtbase-everywhere-src-5.10.0-rc1/mkspecs/features/qt_module.prf -@@ -216,9 +216,9 @@ android: CONFIG += qt_android_deps no_li +--- qtbase-everywhere-src-5.11.2.orig/mkspecs/features/qt_module.prf ++++ qtbase-everywhere-src-5.11.2/mkspecs/features/qt_module.prf +@@ -217,9 +217,9 @@ android: CONFIG += qt_android_deps no_li QMAKE_LFLAGS += $${QMAKE_LFLAGS_VERSION_SCRIPT}$$verscript internal_module {