Hello community,

here is the log from the commit of package libqt5-qtbase for openSUSE:Factory 
checked in at 2019-03-21 09:39:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtbase (Old)
 and      /work/SRC/openSUSE:Factory/.libqt5-qtbase.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libqt5-qtbase"

Thu Mar 21 09:39:56 2019 rev:94 rq:685624 version:5.12.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtbase/libqt5-qtbase.changes      
2019-02-13 10:16:50.665369986 +0100
+++ /work/SRC/openSUSE:Factory/.libqt5-qtbase.new.28833/libqt5-qtbase.changes   
2019-03-21 09:39:58.114985067 +0100
@@ -1,0 +2,43 @@
+Thu Mar 14 08:47:45 UTC 2019 - fab...@ritter-vogt.de
+
+- Update to 5.12.2:
+  * New bugfix release
+  * For more details please see:
+  * http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.12.2/?h=5.12.2
+- Replace 0001-Revert-White-list-more-recent-Mesa-version-for-multi.patch with
+  * 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
+- Remove 0002-Revert-QImage-merge-the-size-calculations-with-prope.patch,
+  fixed upstream
+
+-------------------------------------------------------------------
+Tue Feb 12 19:33:11 UTC 2019 - Fabian Vogt <fab...@ritter-vogt.de>
+
+- Clean %install a bit
+- Use %license
+- Add patch to fix crashes with nouveau (QTBUG-73715):
+  * 0001-Revert-White-list-more-recent-Mesa-version-for-multi.patch
+- Add patch to fix apparent memory leaks (QTBUG-73731):
+  * 0002-Revert-QImage-merge-the-size-calculations-with-prope.patch
+
+-------------------------------------------------------------------
+Mon Feb  4 07:23:09 UTC 2019 - wba...@tmo.at
+
+- Refresh tell-the-truth-about-private-api.patch to apply cleanly
+
+-------------------------------------------------------------------
+Fri Feb  1 08:39:22 UTC 2019 - fab...@ritter-vogt.de
+
+- Update to 5.12.1:
+  * New bugfix release
+  * For more details please see:
+  * http://code.qt.io/cgit/qt/qtbase.git/plain/dist/changes-5.12.1/?h=v5.12.1
+- xkbcommon not bundled anymore, removed now obsolete option
+- Refresh patches:
+  * 0001-Add-remote-print-queue-support.patch
+  * 0001-Fix-qfloat16-methods-definition-without-declaration-.patch
+- Drop patches, now upstream:
+  * 0001-Fix-compile-issue-with-gcc-9.patch
+
+-------------------------------------------------------------------

Old:
----
  0001-Fix-compile-issue-with-gcc-9.patch
  qtbase-everywhere-src-5.12.0.tar.xz

New:
----
  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
  qtbase-everywhere-src-5.12.2.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libqt5-qtbase.spec ++++++
--- /var/tmp/diff_new_pack.lNM3ie/_old  2019-03-21 09:40:03.054983929 +0100
+++ /var/tmp/diff_new_pack.lNM3ie/_new  2019-03-21 09:40:03.122983913 +0100
@@ -36,16 +36,16 @@
 %endif
 
 Name:           libqt5-qtbase
-Version:        5.12.0
+Version:        5.12.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.12.0
-%define so_version 5.12.0
-%define tar_version qtbase-everywhere-src-5.12.0
+%define real_version 5.12.2
+%define so_version 5.12.2
+%define tar_version qtbase-everywhere-src-5.12.2
 Source:         
https://download.qt.io/official_releases/qt/5.12/%{real_version}/submodules/%{tar_version}.tar.xz
 # to get mtime of file:
 Source1:        libqt5-qtbase.changes
@@ -71,10 +71,14 @@
 Patch19:        qapplication-emit-palettechanged.patch
 # PATCH-FIX-UPSTREAM
 Patch20:        0001-Fix-qfloat16-methods-definition-without-declaration-.patch
+# PATCH-FIX-OPENSUSE
+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
 # patches 1000-2000 and above from upstream 5.12 branch #
-Patch1000:      0001-Fix-compile-issue-with-gcc-9.patch
 # patches 2000-3000 and above from upstream 5.13/dev branch #
 Patch2000:      reproducible-qrc-time.patch
+
 BuildRequires:  alsa-devel
 BuildRequires:  cups-devel
 BuildRequires:  double-conversion-devel
@@ -151,7 +155,6 @@
 %endif
 # to get cmake(...) autoprovides
 BuildRequires:  cmake
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
 %description
 Qt is a set of libraries for developing applications.
@@ -174,8 +177,7 @@
 %define libqt5_translationdir  %{libqt5_datadir}/translations
 
 %prep
-%setup -q -n %{tar_version}
-%autopatch -p1
+%autosetup -p1 -n %{tar_version}
 
 # be sure not to use them
 rm -rf src/3rdparty/{libjpeg,freetype,zlib}
@@ -870,7 +872,6 @@
        -force-debug-info \
        -shared \
        -xkb \
-       -system-xkbcommon \
        -dbus-linked \
        -sm \
        -no-rpath \
@@ -942,16 +943,13 @@
 find %{buildroot}%{libqt5_libdir}/ -name 'lib*.a' -exec chmod -x -- {} +
 # kill .la files
 rm -fv %{buildroot}%{libqt5_libdir}/lib*.la
-rm -fv %{buildroot}%{libqt5_libdir}/*png.*
 
-# 
+# Not sure why these are deleted, but apparently we don't need them?
 rm -fv %{buildroot}%{libqt5_libdir}/cmake/Qt5*/Q*Plugin.cmake
 
 # This is only for Apple platforms and has a python2 dep
 rm -r %{buildroot}%{libqt5_archdatadir}/mkspecs/features/uikit
 
-mkdir -p %{buildroot}%{libqt5_plugindir}/sqldrivers
-
 # put all the binaries to %{_bindir}, add -qt5 suffix, and symlink them back 
to %_qt5_bindir
 mkdir -p %{buildroot}%{_bindir}
 pushd %{buildroot}%{libqt5_bindir}
@@ -969,9 +967,8 @@
   esac
 done
 popd
-pushd %{buildroot}%{libqt5_docdir}/global/template/images
-chmod -R 644 *.png
-popd
+
+chmod 644 %{buildroot}%{libqt5_docdir}/global/template/images/*.png
 
 %post -n libQt5Core5 -p /sbin/ldconfig
 
@@ -1018,8 +1015,8 @@
 %postun -n libQt5Widgets5 -p /sbin/ldconfig
 
 %files common-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{_rpmconfigdir}/macros.d/macros.qt5
 %{_bindir}/moc*
 %{libqt5_bindir}/moc*
@@ -1044,8 +1041,8 @@
 %dir %{libqt5_bindir}
 
 %files -n libQt5Core5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Core.so.*
 %ifarch %ix86
 %if 0%{?sle_version} < 150000
@@ -1055,8 +1052,8 @@
 %endif
 
 %files -n libQt5Core-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Core.so
 %{libqt5_libdir}/libQt5Core.prl
 %{libqt5_libdir}/cmake/Qt5Core/
@@ -1067,13 +1064,13 @@
 %{libqt5_docdir}
 
 %files -n libQt5Concurrent5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Concurrent.so.*
 
 %files -n libQt5Concurrent-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Concurrent.so
 %{libqt5_libdir}/libQt5Concurrent.prl
 %{libqt5_libdir}/cmake/Qt5Concurrent/
@@ -1081,13 +1078,13 @@
 %{libqt5_includedir}/QtConcurrent/
 
 %files -n libQt5DBus5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5DBus.so.*
 
 %files -n libQt5DBus-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5DBus.so
 %{libqt5_libdir}/libQt5DBus.prl
 %{libqt5_libdir}/cmake/Qt5DBus/
@@ -1100,16 +1097,16 @@
 %{_bindir}/qdbuscpp2xml*
 
 %files -n libQt5Network5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Network.so.*
 %dir %{libqt5_libdir}/qt5
 %dir %{libqt5_plugindir}
 %{libqt5_plugindir}/bearer
 
 %files -n libQt5Network-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Network.so
 %{libqt5_libdir}/libQt5Network.prl
 %{libqt5_libdir}/cmake/Qt5Network/
@@ -1118,13 +1115,13 @@
 %exclude %{libqt5_includedir}/QtNetwork/%{so_version}
 
 %files -n libQt5OpenGL5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5OpenGL.so.*
 
 %files -n libQt5OpenGL-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5OpenGL.so
 %{libqt5_libdir}/libQt5OpenGL.prl
 %{libqt5_libdir}/cmake/Qt5OpenGL/
@@ -1133,14 +1130,14 @@
 %exclude %{libqt5_includedir}/QtOpenGL/%{so_version}
 
 %files -n libQt5PrintSupport5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5PrintSupport.so.*
 %{libqt5_plugindir}/printsupport
 
 %files -n libQt5PrintSupport-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5PrintSupport.so
 %{libqt5_libdir}/libQt5PrintSupport.prl
 %{libqt5_libdir}/cmake/Qt5PrintSupport/
@@ -1149,13 +1146,13 @@
 %exclude %{libqt5_includedir}/QtPrintSupport/%{so_version}
 
 %files -n libQt5Xml5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Xml.so.*
 
 %files -n libQt5Xml-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Xml.so
 %{libqt5_libdir}/libQt5Xml.prl
 %{libqt5_libdir}/cmake/Qt5Xml/
@@ -1163,13 +1160,13 @@
 %{libqt5_includedir}/QtXml/
 
 %files -n libQt5Test5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Test.so.*
 
 %files -n libQt5Test-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Test.so
 %{libqt5_libdir}/libQt5Test.prl
 %{libqt5_libdir}/cmake/Qt5Test/
@@ -1178,13 +1175,13 @@
 %exclude %{libqt5_includedir}/QtTest/%{so_version}
 
 %files -n libQt5Widgets5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Widgets.so.*
 
 %files -n libQt5Widgets-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Widgets.so
 %{libqt5_libdir}/libQt5Widgets.prl
 %{libqt5_libdir}/cmake/Qt5Widgets/
@@ -1193,8 +1190,8 @@
 %exclude %{libqt5_includedir}/QtWidgets/%{so_version}
 
 %files -n libQt5Gui5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Gui.so.*
 %ifarch %ix86
 %if 0%{?sle_version:%sle_version} < 150000
@@ -1212,20 +1209,20 @@
 %{libqt5_plugindir}/xcbglintegrations
 
 %files platformtheme-gtk3
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %dir %{libqt5_plugindir}/platformthemes
 %{libqt5_plugindir}/platformthemes/libqgtk3.so
 
 %files platformtheme-xdgdesktopportal
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %dir %{libqt5_plugindir}/platformthemes
 %{libqt5_plugindir}/platformthemes/libqxdgdesktopportal.so
 
 %files -n libQt5Gui-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Gui.so
 %{libqt5_libdir}/libQt5Gui.prl
 %{libqt5_libdir}/libQt5EglFSDeviceIntegration.so
@@ -1240,22 +1237,22 @@
 %exclude %{libqt5_includedir}/QtEglFSDeviceIntegration/%{so_version}
 
 %files devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 
 %files private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 
 %files -n libQt5Sql5
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Sql.so.*
 %dir %{libqt5_plugindir}/sqldrivers
 
 %files -n libQt5Sql-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Sql.so
 %{libqt5_libdir}/libQt5Sql.prl
 %{libqt5_libdir}/cmake/Qt5Sql/
@@ -1264,35 +1261,35 @@
 %exclude %{libqt5_includedir}/QtSql/%{so_version}
 
 %files -n libQt5Sql5-sqlite
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_plugindir}/sqldrivers/libqsqlite*.so
 
 %files -n libQt5Sql5-unixODBC
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_plugindir}/sqldrivers/libqsqlodbc*.so
 
 %files -n libQt5Sql5-postgresql
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_plugindir}/sqldrivers/libqsqlpsql*.so
 
 %files -n libQt5Sql5-mysql
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_plugindir}/sqldrivers/libqsqlmysql*.so
 
 %files -n libQt5Bootstrap-devel-static
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5Bootstrap.a
 %{libqt5_libdir}/libQt5Bootstrap.prl
 #{libqt5_libdir}/pkgconfig/Qt5Bootstrap.pc
 
 %files -n libQt5OpenGLExtensions-devel-static
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5OpenGLExtensions.a
 %{libqt5_libdir}/libQt5OpenGLExtensions.prl
 %{libqt5_libdir}/cmake/Qt5OpenGLExtensions/
@@ -1300,8 +1297,8 @@
 %{libqt5_includedir}/QtOpenGLExtensions/
 
 %files -n libQt5PlatformSupport-devel-static
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5XcbQpa.so
 %{libqt5_libdir}/libQt5XcbQpa.prl
 %{libqt5_libdir}/libQt5AccessibilitySupport.a
@@ -1374,47 +1371,47 @@
 %endif
 
 %files -n libQt5KmsSupport-devel-static
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_libdir}/libQt5KmsSupport.a
 %{libqt5_libdir}/libQt5KmsSupport.prl
 %exclude %{libqt5_includedir}/QtKmsSupport/%{so_version}/
 %{libqt5_includedir}/QtKmsSupport/
 
 %files -n libQt5Core-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtCore/%{so_version}/
 
 %files -n libQt5DBus-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtDBus/%{so_version}/
 
 %files -n libQt5Gui-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtGui/%{so_version}/
 %{libqt5_includedir}/QtEglFSDeviceIntegration/%{so_version}
 
 %files -n libQt5KmsSupport-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtKmsSupport/%{so_version}/
 
 %files -n libQt5Network-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtNetwork/%{so_version}/
 
 %files -n libQt5OpenGL-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtOpenGL/%{so_version}/
 
 %files -n libQt5PlatformSupport-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtAccessibilitySupport/%{so_version}/
 %{libqt5_includedir}/QtDeviceDiscoverySupport/%{so_version}/
 %{libqt5_includedir}/QtEglSupport/%{so_version}/
@@ -1435,33 +1432,33 @@
 %endif
 
 %files -n libQt5PrintSupport-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtPrintSupport/%{so_version}/
 
 %files -n libQt5Sql-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtSql/%{so_version}/
 
 %files -n libQt5Test-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtTest/%{so_version}/
 
 %files -n libQt5Widgets-private-headers-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtWidgets/%{so_version}/
 
 %files -n libQt5PlatformHeaders-devel
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_includedir}/QtPlatformHeaders/
 
 %files examples
-%defattr(-,root,root,755)
-%doc *.txt LICENSE.*
+%license LICENSE.*
+%doc *.txt
 %{libqt5_examplesdir}/
 
 %changelog

++++++ 0001-Add-remote-print-queue-support.patch ++++++
--- /var/tmp/diff_new_pack.lNM3ie/_old  2019-03-21 09:40:03.534983818 +0100
+++ /var/tmp/diff_new_pack.lNM3ie/_new  2019-03-21 09:40:03.562983812 +0100
@@ -18,10 +18,10 @@
  src/plugins/printsupport/cups/qppdprintdevice.cpp  | 33 +++++++-
  4 files changed, 160 insertions(+), 11 deletions(-)
 
-Index: 
qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintengine.cpp
+Index: 
qtbase-everywhere-src-5.12.1/src/plugins/printsupport/cups/qcupsprintengine.cpp
 ===================================================================
---- 
qtbase-everywhere-src-5.12.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintengine.cpp
-+++ 
qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintengine.cpp
+--- 
qtbase-everywhere-src-5.12.1.orig/src/plugins/printsupport/cups/qcupsprintengine.cpp
++++ 
qtbase-everywhere-src-5.12.1/src/plugins/printsupport/cups/qcupsprintengine.cpp
 @@ -48,6 +48,7 @@
  #include <qbuffer.h>
  #include "private/qcups_p.h" // Only needed for PPK_CupsOptions
@@ -72,10 +72,10 @@
  
          QFile::remove(tempFile);
      }
-Index: 
qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport.cpp
+Index: 
qtbase-everywhere-src-5.12.1/src/plugins/printsupport/cups/qcupsprintersupport.cpp
 ===================================================================
---- 
qtbase-everywhere-src-5.12.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintersupport.cpp
-+++ 
qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport.cpp
+--- 
qtbase-everywhere-src-5.12.1.orig/src/plugins/printsupport/cups/qcupsprintersupport.cpp
++++ 
qtbase-everywhere-src-5.12.1/src/plugins/printsupport/cups/qcupsprintersupport.cpp
 @@ -61,6 +61,35 @@
  # include <cups/language.h>
  #endif
@@ -153,7 +153,7 @@
      return list;
  }
  
-@@ -177,8 +224,18 @@ QString QCupsPrinterSupport::defaultPrin
+@@ -182,8 +229,18 @@ QString QCupsPrinterSupport::staticDefau
  {
      QString printerId;
      cups_dest_t *dests;
@@ -174,7 +174,7 @@
          if (dests[i].is_default) {
              printerId = QString::fromLocal8Bit(dests[i].name);
              if (dests[i].instance) {
-@@ -187,8 +244,30 @@ QString QCupsPrinterSupport::defaultPrin
+@@ -192,8 +249,30 @@ QString QCupsPrinterSupport::staticDefau
              }
          }
      }
@@ -206,10 +206,10 @@
 +
 +
  QT_END_NAMESPACE
-Index: 
qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport_p.h
+Index: 
qtbase-everywhere-src-5.12.1/src/plugins/printsupport/cups/qcupsprintersupport_p.h
 ===================================================================
---- 
qtbase-everywhere-src-5.12.0-alpha.orig/src/plugins/printsupport/cups/qcupsprintersupport_p.h
-+++ 
qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qcupsprintersupport_p.h
+--- 
qtbase-everywhere-src-5.12.1.orig/src/plugins/printsupport/cups/qcupsprintersupport_p.h
++++ 
qtbase-everywhere-src-5.12.1/src/plugins/printsupport/cups/qcupsprintersupport_p.h
 @@ -56,6 +56,8 @@
  
  #include <QtCore/qstringlist.h>
@@ -219,9 +219,9 @@
  QT_BEGIN_NAMESPACE
  
  class QCupsPrinterSupport : public QPlatformPrinterSupport
-@@ -71,8 +73,14 @@ public:
-     QStringList availablePrintDeviceIds() const override;
-     QString defaultPrintDeviceId() const override;
+@@ -73,8 +75,14 @@ public:
+ 
+     static QString staticDefaultPrintDeviceId();
  
 +    static void fillCupsPrinters();
 +    static cups_dest_t *cupsPrinters() { return qt_cups_printers; };
@@ -234,19 +234,19 @@
  };
  
  QT_END_NAMESPACE
-Index: 
qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qppdprintdevice.cpp
+Index: 
qtbase-everywhere-src-5.12.1/src/plugins/printsupport/cups/qppdprintdevice.cpp
 ===================================================================
---- 
qtbase-everywhere-src-5.12.0-alpha.orig/src/plugins/printsupport/cups/qppdprintdevice.cpp
-+++ 
qtbase-everywhere-src-5.12.0-alpha/src/plugins/printsupport/cups/qppdprintdevice.cpp
-@@ -39,6 +39,7 @@
+--- 
qtbase-everywhere-src-5.12.1.orig/src/plugins/printsupport/cups/qppdprintdevice.cpp
++++ 
qtbase-everywhere-src-5.12.1/src/plugins/printsupport/cups/qppdprintdevice.cpp
+@@ -41,6 +41,7 @@
  
- #include "qppdprintdevice.h"
+ #include "qcupsprintersupport_p.h"
  
 +#include "qcupsprintersupport_p.h"
  #include <QtCore/QMimeDatabase>
  #include <qdebug.h>
  
-@@ -63,10 +64,36 @@ QPpdPrintDevice::QPpdPrintDevice(const Q
+@@ -65,10 +66,36 @@ QPpdPrintDevice::QPpdPrintDevice(const Q
          if (parts.size() > 1)
              m_cupsInstance = parts.at(1).toUtf8();
  

++++++ 0001-Fix-qfloat16-methods-definition-without-declaration-.patch ++++++
--- /var/tmp/diff_new_pack.lNM3ie/_old  2019-03-21 09:40:03.690983782 +0100
+++ /var/tmp/diff_new_pack.lNM3ie/_new  2019-03-21 09:40:03.702983779 +0100
@@ -19,26 +19,23 @@
  src/corelib/global/qfloat16.h | 2 ++
  1 file changed, 2 insertions(+)
 
-diff --git a/src/corelib/global/qfloat16.h b/src/corelib/global/qfloat16.h
-index a8befd7adb..3e50ad8467 100644
---- a/src/corelib/global/qfloat16.h
-+++ b/src/corelib/global/qfloat16.h
-@@ -123,6 +123,7 @@ Q_REQUIRED_RESULT inline bool qIsNull(qfloat16 f) 
Q_DECL_NOTHROW
- inline int qIntCast(qfloat16 f) Q_DECL_NOTHROW
- { return int(static_cast<float>(f)); }
+Index: qtbase-everywhere-src-5.12.1/src/corelib/global/qfloat16.h
+===================================================================
+--- qtbase-everywhere-src-5.12.1.orig/src/corelib/global/qfloat16.h
++++ qtbase-everywhere-src-5.12.1/src/corelib/global/qfloat16.h
+@@ -207,6 +207,7 @@ QF16_MAKE_ARITH_OP_INT(*)
+ QF16_MAKE_ARITH_OP_INT(/)
+ #undef QF16_MAKE_ARITH_OP_INT
  
 +#ifndef Q_QDOC
  QT_WARNING_PUSH
- QT_WARNING_DISABLE_CLANG("-Wc99-extensions")
- QT_WARNING_DISABLE_GCC("-Wold-style-cast")
-@@ -162,6 +163,7 @@ inline qfloat16::operator float() const Q_DECL_NOTHROW
-     return f;
- #endif
+ QT_WARNING_DISABLE_CLANG("-Wfloat-equal")
+ QT_WARNING_DISABLE_GCC("-Wfloat-equal")
+@@ -254,6 +255,7 @@ Q_REQUIRED_RESULT inline bool qFuzzyIsNu
+ {
+     return qAbs(static_cast<float>(f)) <= 0.001f;
  }
 +#endif
  
- inline qfloat16 operator-(qfloat16 a) Q_DECL_NOTHROW
- {
--- 
-2.19.2
-
+ QT_END_NAMESPACE
+ 

++++++ 0001-Revert-Blacklist-nouveau-and-llvmpipe-for-multithrea.patch ++++++
>From 7525dcc085d0453209bd7c321adac9c54487afa6 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fab...@ritter-vogt.de>
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

++++++ 0002-Revert-qtlite-Fix-build-libs-with-no-feature-regular.patch ++++++
>From 4f28ec6c8526d754849bd26c55e4c5faf61f4eb0 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fab...@ritter-vogt.de>
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(-)

diff --git a/src/corelib/kernel/qvariant.cpp b/src/corelib/kernel/qvariant.cpp
index 090436a3c7..6541b97595 100644
--- a/src/corelib/kernel/qvariant.cpp
+++ b/src/corelib/kernel/qvariant.cpp
@@ -1052,13 +1052,11 @@ static bool convert(const QVariant::Private *d, int t, 
void *result, bool *ok)
         return false;
 
 #ifndef QT_BOOTSTRAPPED
-#if QT_CONFIG(regularexpression)
     case QMetaType::QRegularExpression:
         if (d->type != QMetaType::QCborValue || 
!v_cast<QCborValue>(d)->isRegularExpression())
             return false;
         *static_cast<QRegularExpression *>(result) = 
v_cast<QCborValue>(d)->toRegularExpression();
         break;
-#endif
     case QMetaType::QJsonValue:
         switch (d->type) {
         case QMetaType::Nullptr:
@@ -1234,11 +1232,9 @@ static bool convert(const QVariant::Private *d, int t, 
void *result, bool *ok)
         case QVariant::Url:
             *static_cast<QCborValue *>(result) = QCborValue(*v_cast<QUrl>(d));
             break;
-#if QT_CONFIG(regularexpression)
         case QVariant::RegularExpression:
             *static_cast<QCborValue *>(result) = 
QCborValue(*v_cast<QRegularExpression>(d));
             break;
-#endif
         case QVariant::Uuid:
             *static_cast<QCborValue *>(result) = QCborValue(*v_cast<QUuid>(d));
             break;
diff --git a/src/corelib/serialization/qcborvalue.cpp 
b/src/corelib/serialization/qcborvalue.cpp
index 80ef515fd2..e53b6a0326 100644
--- a/src/corelib/serialization/qcborvalue.cpp
+++ b/src/corelib/serialization/qcborvalue.cpp
@@ -1771,7 +1771,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
@@ -1790,7 +1789,6 @@ QCborValue::QCborValue(const QRegularExpression &rx)
     // change type
     t = RegularExpression;
 }
-#endif // QT_CONFIG(regularexpression)
 
 /*!
     Creates a QCborValue object of the UUID extended type and containing the
@@ -1944,7 +1942,6 @@ QUrl QCborValue::toUrl(const QUrl &defaultValue) const
     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
@@ -1963,7 +1960,6 @@ QRegularExpression QCborValue::toRegularExpression(const 
QRegularExpression &def
     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
@@ -2404,16 +2400,12 @@ uint qHash(const QCborValue &value, uint seed)
         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());
@@ -2458,16 +2450,12 @@ static QDebug debugContents(QDebug &dbg, const 
QCborValue &v)
         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 << "<invalid>";
-    default:
-        break;
     }
     if (v.isSimpleType())
         return dbg << v.toSimpleType();
diff --git a/src/corelib/serialization/qcborvalue.h 
b/src/corelib/serialization/qcborvalue.h
index d6ba4e88d8..105af1ba73 100644
--- a/src/corelib/serialization/qcborvalue.h
+++ b/src/corelib/serialization/qcborvalue.h
@@ -43,9 +43,7 @@
 #include <QtCore/qbytearray.h>
 #include <QtCore/qdatetime.h>
 #include <QtCore/qcborcommon.h>
-#if QT_CONFIG(regularexpression)
-#  include <QtCore/qregularexpression.h>
-#endif
+#include <QtCore/qregularexpression.h>
 #include <QtCore/qstring.h>
 #include <QtCore/qstringview.h>
 #include <QtCore/qurl.h>
@@ -157,9 +155,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(); }
@@ -237,9 +233,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;
 
 #ifdef Q_QDOC
@@ -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); }
 
diff --git a/src/corelib/serialization/qjsoncbor.cpp 
b/src/corelib/serialization/qjsoncbor.cpp
index 4f756df97c..158f1950d0 100644
--- a/src/corelib/serialization/qjsoncbor.cpp
+++ b/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 QVariant &variant)
     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:
diff --git a/src/plugins/platforms/eglfs/api/qeglfsdeviceintegration.cpp 
b/src/plugins/platforms/eglfs/api/qeglfsdeviceintegration.cpp
index 0a3a37863a..f151713400 100644
--- a/src/plugins/platforms/eglfs/api/qeglfsdeviceintegration.cpp
+++ b/src/plugins/platforms/eglfs/api/qeglfsdeviceintegration.cpp
@@ -51,9 +51,7 @@
 #include <private/qguiapplication_p.h>
 #include <QScreen>
 #include <QDir>
-#if QT_CONFIG(regularexpression)
-#  include <QRegularExpression>
-#endif
+#include <QRegularExpression>
 #include <QLoggingCategory>
 
 #if defined(Q_OS_LINUX)
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 d42a33c22b..ddb8f45188 100644
--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
@@ -48,9 +48,7 @@
 #undef register
 #include <GL/glx.h>
 
-#if QT_CONFIG(regularexpression)
-#  include <QtCore/QRegularExpression>
-#endif
+#include <QtCore/QRegularExpression>
 #include <QtGui/QOpenGLContext>
 #include <QtGui/QOffscreenSurface>
 
@@ -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: "
diff --git a/src/testlib/qtaptestlogger.cpp b/src/testlib/qtaptestlogger.cpp
index 540b36e273..e73609de3d 100644
--- a/src/testlib/qtaptestlogger.cpp
+++ b/src/testlib/qtaptestlogger.cpp
@@ -43,9 +43,7 @@
 #include "qtestresult_p.h"
 #include "qtestassert.h"
 
-#if QT_CONFIG(regularexpression)
-#  include <QtCore/qregularexpression.h>
-#endif
+#include <QtCore/qregularexpression.h>
 
 QT_BEGIN_NAMESPACE
 
@@ -150,7 +148,6 @@ void QTapTestLogger::addIncident(IncidentTypes type, const 
char *description,
         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(IncidentTypes type, const 
char *description,
                     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) {
-- 
2.20.1

++++++ 0003-Revert-White-list-more-recent-Mesa-version-for-multi.patch ++++++
>From e0bf494295398cbc3ba5a84380525f9c00e3f8ad Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fab...@ritter-vogt.de>
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 <GL/glx.h>
 
-#include <QtCore/QRegularExpression>
 #include <QtGui/QOpenGLContext>
 #include <QtGui/QOffscreenSurface>
 
@@ -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

++++++ qtbase-everywhere-src-5.12.0.tar.xz -> 
qtbase-everywhere-src-5.12.2.tar.xz ++++++
/work/SRC/openSUSE:Factory/libqt5-qtbase/qtbase-everywhere-src-5.12.0.tar.xz 
/work/SRC/openSUSE:Factory/.libqt5-qtbase.new.28833/qtbase-everywhere-src-5.12.2.tar.xz
 differ: char 25, line 1

++++++ tell-the-truth-about-private-api.patch ++++++
--- /var/tmp/diff_new_pack.lNM3ie/_old  2019-03-21 09:40:05.162983443 +0100
+++ /var/tmp/diff_new_pack.lNM3ie/_new  2019-03-21 09:40:05.166983442 +0100
@@ -2,7 +2,7 @@
 ===================================================================
 --- 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
+@@ -215,9 +215,9 @@ android: CONFIG += qt_android_deps no_li
      QMAKE_LFLAGS += $${QMAKE_LFLAGS_VERSION_SCRIPT}$$verscript
  
      internal_module {


Reply via email to