diff --git a/.gitignore b/.gitignore index 89c6204..0bc4524 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,2 @@ -/qtbase-opensource-src-5.9.2.tar.xz -/qtbase-opensource-src-5.9.3.tar.xz -/qtbase-everywhere-src-5.10.0.tar.xz /qtbase-everywhere-src-5.10.1.tar.xz +/qtbase-everywhere-src-5.11.0.tar.xz diff --git a/opengl-Bail-if-cached-shader-fails-to-load.patch b/opengl-Bail-if-cached-shader-fails-to-load.patch deleted file mode 100644 index fbd26da..0000000 --- a/opengl-Bail-if-cached-shader-fails-to-load.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 3bb3ee936f27e9749bf1a2c4bd5ded2f5167663f Mon Sep 17 00:00:00 2001 -From: Max Staudt -Date: Mon, 12 Feb 2018 15:07:29 +0100 -Subject: [PATCH] opengl: Bail if cached shader fails to load -References: boo#1080578, boo#1079465 -Signed-off-by: Max Staudt - -QOpenGLProgramBinaryCache::setProgramBinary() should check -GL_LINK_STATUS after glProgramBinary(), but doesn't. - -In practice, this means that SDDM is a white screen, and KDE is just -a gray task bar. - -So far, Qt tries to check this using its internal ::link() function. -But in case the cached binary fails to load, Qt currently attempts to -link the inexistent program, resulting in a zero-length, fixed -pipeline shader. - -Checking this already in ::setProgramBinary() makes the call to -::link() superfluous, so we remove that as well. - -Many thanks to Michal Srb and Fabian Vogt for hunting this down. -This was truly a joint effort. - -Cc: Michal Srb -Cc: Fabian Vogt -Signed-off-by: Max Staudt ---- - src/gui/opengl/qopenglprogrambinarycache.cpp | 11 ++++++++++- - src/gui/opengl/qopenglshaderprogram.cpp | 8 +------- - 2 files changed, 11 insertions(+), 8 deletions(-) - -diff --git a/src/gui/opengl/qopenglprogrambinarycache.cpp b/src/gui/opengl/qopenglprogrambinarycache.cpp -index 06373e1113..f50878ab5c 100644 ---- a/src/gui/opengl/qopenglprogrambinarycache.cpp -+++ b/src/gui/opengl/qopenglprogrambinarycache.cpp -@@ -161,10 +161,19 @@ bool QOpenGLProgramBinaryCache::setProgramBinary(uint programId, uint blobFormat - QOpenGLExtraFunctions *funcs = QOpenGLContext::currentContext()->extraFunctions(); - while (funcs->glGetError() != GL_NO_ERROR) { } - funcs->glProgramBinary(programId, blobFormat, p, blobSize); -+ - int err = funcs->glGetError(); -+ GLint link_status = 0; -+ funcs->glGetProgramiv(programId, GL_LINK_STATUS, &link_status); -+ if (link_status != GL_TRUE || err != GL_NO_ERROR) { -+ qCDebug(DBG_SHADER_CACHE, "Program binary failed to load for program %u, size %d, format 0x%x, link_status = 0x%x, err = 0x%x", -+ programId, blobSize, blobFormat, link_status, err); -+ return false; -+ } -+ - qCDebug(DBG_SHADER_CACHE, "Program binary set for program %u, size %d, format 0x%x, err = 0x%x", - programId, blobSize, blobFormat, err); -- return err == 0; -+ return true; - } - - #ifdef Q_OS_UNIX -diff --git a/src/gui/opengl/qopenglshaderprogram.cpp b/src/gui/opengl/qopenglshaderprogram.cpp -index cc8af16bfe..3b82baccb3 100644 ---- a/src/gui/opengl/qopenglshaderprogram.cpp -+++ b/src/gui/opengl/qopenglshaderprogram.cpp -@@ -3824,13 +3824,7 @@ bool QOpenGLShaderProgramPrivate::linkBinary() - bool needsCompile = true; - if (binCache.load(cacheKey, q->programId())) { - qCDebug(DBG_SHADER_CACHE, "Program binary received from cache"); -- linkBinaryRecursion = true; -- bool ok = q->link(); -- linkBinaryRecursion = false; -- if (ok) -- needsCompile = false; -- else -- qCDebug(DBG_SHADER_CACHE, "Link failed after glProgramBinary"); -+ needsCompile = false; - } - - bool needsSave = false; --- -2.13.6 - diff --git a/qt5-qtbase.spec b/qt5-qtbase.spec index ee4a2fc..3a906a1 100644 --- a/qt5-qtbase.spec +++ b/qt5-qtbase.spec @@ -30,33 +30,23 @@ # use external qt_settings pkg %global qt_settings 1 -# See http://bugzilla.redhat.com/1279265 -%if 0%{?fedora} < 24 -%global inject_optflags 1 -%endif - %global journald -journald BuildRequires: pkgconfig(libsystemd) -%if 0%{?fedora} > 23 -# gcc6: FTBFS -#global qt5_deprecated_flag -Wno-deprecated-declarations -# gcc6: Qt assumes this in places -#global qt5_null_flag -fno-delete-null-pointer-checks -%endif - %global examples 1 -%global tests 1 +## skip for now, until we're better at it --rex +#global tests 1 Name: qt5-qtbase Summary: Qt5 - QtBase components -Version: 5.10.1 -Release: 8%{?dist} +Version: 5.11.0 +Release: 1%{?dist} # See LGPL_EXCEPTIONS.txt, for exception details License: LGPLv2 with exceptions or GPLv3 with exceptions Url: http://qt-project.org/ -Source0: https://download.qt.io/official_releases/qt/5.10/%{version}/submodules/%{qt_module}-everywhere-src-%{version}.tar.xz +%global majmin %(echo %{version} | cut -d. -f1-2) +Source0: https://download.qt.io/official_releases/qt/%{majmin}/%{version}/submodules/%{qt_module}-everywhere-src-%{version}.tar.xz # https://bugzilla.redhat.com/show_bug.cgi?id=1227295 Source1: qtlogging.ini @@ -109,9 +99,6 @@ Patch53: qtbase-fdo101667.patch # respect QMAKE_LFLAGS_RELEASE when building qmake Patch54: qtbase-qmake_LFLAGS.patch -# https://bugreports.qt.io/browse/QTBUG-66420 -Patch55: https://bugreports.qt.io/secure/attachment/69873/opengl-Bail-if-cached-shader-fails-to-load.patch - # drop -O3 and make -O2 by default Patch61: qt5-qtbase-cxxflag.patch @@ -120,7 +107,6 @@ Patch64: qt5-qtbase-5.9.1-firebird.patch # fix for new mariadb Patch65: qtbase-opensource-src-5.9.0-mysql.patch -Patch66: qtbase-mariadb.patch # use categorized logging for xcb log entries # https://bugreports.qt.io/browse/QTBUG-55167 @@ -364,33 +350,16 @@ Qt5 libraries used for drawing widgets and OpenGL items. %patch50 -p1 -b .QT_VERSION_CHECK %patch51 -p1 -b .hidpi_scale_at_192 %patch52 -p1 -b .moc_macros -%patch53 -p1 -b .fdo101667 +# FIXME/REBASE ? +#patch53 -p1 -b .fdo101667 %patch54 -p1 -b .qmake_LFLAGS -%patch55 -p1 -b .QTBUG-66420 %patch61 -p1 -b .qt5-qtbase-cxxflag %patch64 -p1 -b .firebird %if 0%{?fedora} > 27 %patch65 -p1 -b .mysql %endif -%patch66 -p1 -b .mariadb -%patch67 -p1 -b .xcberror_filter - -%if 0%{?inject_optflags} -## adjust $RPM_OPT_FLAGS - -%patch2 -p1 -b .multilib_optflags -# drop backup file(s), else they get installed too, http://bugzilla.redhat.com/639463 -rm -fv mkspecs/linux-g++*/qmake.conf.multilib-optflags - -sed -i -e "s|-O2|$RPM_OPT_FLAGS|g" \ - mkspecs/%{platform}/qmake.conf - -sed -i -e "s|^\(QMAKE_LFLAGS_RELEASE.*\)|\1 $RPM_LD_FLAGS|" \ - mkspecs/common/g++-unix.conf - -# undefine QMAKE_STRIP (and friends), so we get useful -debuginfo pkgs (#1065636) -sed -i -e 's|^\(QMAKE_STRIP.*=\).*$|\1|g' mkspecs/common/linux.conf -%endif +# FIXME/REBASE +#patch67 -p1 -b .xcberror_filter # move some bundled libs to ensure they're not accidentally used pushd src/3rdparty @@ -493,7 +462,6 @@ export MAKEFLAGS="%{?_smp_mflags}" QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS:-$RPM_OPT_FLAGS}" \ QMAKE_LFLAGS_RELEASE="${LDFLAGS:-$RPM_LD_FLAGS}" -%if ! 0%{?inject_optflags} # ensure qmake build using optflags (which can happen if not munging qmake.conf defaults) make clean -C qmake %make_build -C qmake all binary \ @@ -501,7 +469,6 @@ make clean -C qmake QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS:-$RPM_OPT_FLAGS}" \ QMAKE_LFLAGS_RELEASE="${LDFLAGS:-$RPM_LD_FLAGS}" \ QMAKE_STRIP= -%endif %make_build @@ -926,8 +893,7 @@ fi %{_qt5_libdir}/cmake/Qt5Sql/Qt5Sql_QTDSDriverPlugin.cmake %endif -%post gui -p /sbin/ldconfig -%postun gui -p /sbin/ldconfig +%ldconfig_scriptlets gui %files gui %dir %{_sysconfdir}/X11/xinit @@ -992,13 +958,19 @@ fi %{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QXcbIntegrationPlugin.cmake %{_qt5_plugindir}/xcbglintegrations/libqxcb-glx-integration.so %{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QXcbGlxIntegrationPlugin.cmake +%{_qt5_plugindir}/platformthemes/libqflatpak.so %{_qt5_plugindir}/platformthemes/libqgtk3.so +%{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QFlatpakThemePlugin.cmake %{_qt5_libdir}/cmake/Qt5Gui/Qt5Gui_QGtk3ThemePlugin.cmake %{_qt5_plugindir}/printsupport/libcupsprintersupport.so %{_qt5_libdir}/cmake/Qt5PrintSupport/Qt5PrintSupport_QCupsPrinterSupportPlugin.cmake %changelog +* Tue May 22 2018 Rex Dieter - 5.11.0-1 +- 5.11.0 +- drop support for inject_optflags (not used since f23) + * Mon Apr 30 2018 Pete Walter - 5.10.1-8 - Rebuild for ICU 61.1 diff --git a/qtbase-mariadb.patch b/qtbase-mariadb.patch deleted file mode 100644 index 9e1626a..0000000 --- a/qtbase-mariadb.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/src/plugins/sqldrivers/mysql/qsql_mysql.cpp b/src/plugins/sqldrivers/mysql/qsql_mysql.cpp -index 365f899..9ff415d 100644 ---- a/src/plugins/sqldrivers/mysql/qsql_mysql.cpp -+++ b/src/plugins/sqldrivers/mysql/qsql_mysql.cpp -@@ -1160,14 +1160,15 @@ static void qLibraryInit() - # endif // MYSQL_VERSION_ID - #endif // Q_NO_MYSQL_EMBEDDED - --#ifdef MARIADB_BASE_VERSION -+#if defined(MARIADB_BASE_VERSION) || defined(MARIADB_VERSION_ID) - qAddPostRoutine([]() { mysql_server_end(); }); - #endif - } - - static void qLibraryEnd() - { --#if !defined(MARIADB_BASE_VERSION) -+#if !defined(MARIADB_BASE_VERSION) && !defined(MARIADB_VERSION_ID) -+//#error should not get here on f27+ says rex - # if !defined(Q_NO_MYSQL_EMBEDDED) - # if MYSQL_VERSION_ID > 40000 - # if (MYSQL_VERSION_ID >= 40110 && MYSQL_VERSION_ID < 50000) || MYSQL_VERSION_ID >= 50003 diff --git a/sources b/sources index ed92775..5bc3724 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (qtbase-everywhere-src-5.10.1.tar.xz) = abc8087bb7c5db2a668ba87cef67ab7ab9d884b770bce916b7fe7bf4e0a1fac47114eff50e15bd9efed66d63307d6aceed5cb097aa2ae5df98cffd11af8691ba +SHA512 (qtbase-everywhere-src-5.11.0.tar.xz) = 9f68e00d432db6999f932da6ba759e465ea7d65461ef8db13765f16bd812f2ddd05beede1df3c6546165bc4924a6bd14cc0ff083defc43e2dce37ea20c561462