From 7a3dd6d5afaf3c1d9da69d05ee0b62a6a7ab2e6e Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: May 21 2014 10:03:59 +0000 Subject: Update to 5.3.0 --- diff --git a/qt5-qtbase.spec b/qt5-qtbase.spec index 854df3a..8c4a99c 100644 --- a/qt5-qtbase.spec +++ b/qt5-qtbase.spec @@ -21,8 +21,8 @@ Summary: Qt5 - QtBase components Name: qt5-qtbase -Version: 5.2.1 -Release: 8%{?dist} +Version: 5.3.0 +Release: 1%{?dist} # See LGPL_EXCEPTIONS.txt, LICENSE.GPL3, respectively, for exception details License: LGPLv2 with exceptions or GPLv3 with exceptions @@ -45,22 +45,12 @@ Source5: qconfig-multilib.h # QT_XCB_FORCE_SOFTWARE_OPENGL for them Source6: 10-qt5-check-opengl2.sh -# help build on some lowmem archs, e.g. drop hard-coded -O3 optimization on some files -Patch1: qtbase-opensource-src-5.0.2-lowmem.patch - # support multilib optflags Patch2: qtbase-multilib_optflags.patch -# qatomic on ppc/ppc64, http://bugzilla.redhat.com/1005482 -Patch3: qtbase-qatomic-ppc.patch - # fix QTBUG-35459 (too low entityCharacterLimit=1024 for CVE-2013-4549) Patch4: qt-everywhere-opensource-src-4.8.5-QTBUG-35459.patch -# add a QT_XCB_FORCE_SOFTWARE_OPENGL environment variable to allow forcing -# LIBGL_ALWAYS_SOFTWARE (llvmpipe) for Qt 5 apps only -Patch6: qtbase-opensource-src-5.2.0-allow-forcing-llvmpipe.patch - # unconditionally enable freetype lcdfilter support Patch12: qtbase-opensource-src-5.2.0-enable_ft_lcdfilter.patch @@ -72,10 +62,6 @@ Patch50: qt5-poll.patch ##upstream patches -## security patches -# https://bugreports.qt-project.org/browse/QTBUG-38367 -Patch200: qtbase-opensource-src-5.2.1-QTBUG-38367.patch - # macros %define _qt5 %{name} %define _qt5_prefix %{_libdir}/qt5 @@ -262,23 +248,14 @@ Qt5 libraries used for drawing widgets and OpenGL items. # drop backup file(s), else they get installed too, http://bugzilla.redhat.com/639463 rm -fv mkspecs/linux-g++*/qmake.conf.multilib-optflags -%patch3 -p1 -b .qatomic-ppc %patch4 -p1 -b .QTBUG-35459 -%patch6 -p1 -b .allow-forcing-llvmpipe %patch12 -p1 -b .enable_ft_lcdfilter #patch50 -p1 -b .poll -%patch200 -p1 -b .QTBUG-38367 - # drop -fexceptions from $RPM_OPT_FLAGS RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed 's|-fexceptions||g'` -# lowmem hacks -#ifarch %{arm} s390 -%patch1 -p1 -b .lowmem -#endif - %define platform linux-g++ %ifarch %{multilib_archs} %if "%{?__isa_bits}" == "64" @@ -694,6 +671,9 @@ popd %changelog +* Wed May 21 2014 Jan Grulich 5.3.0-1 +- 5.3.0 + * Thu Apr 24 2014 Rex Dieter 5.2.1-8 - DoS vulnerability in the GIF image handler (QTBUG-38367) diff --git a/qtbase-multilib_optflags.patch b/qtbase-multilib_optflags.patch index 153b07b..3d32215 100644 --- a/qtbase-multilib_optflags.patch +++ b/qtbase-multilib_optflags.patch @@ -1,6 +1,7 @@ -diff -up qtbase-opensource-src-5.1.0/mkspecs/linux-g++-32/qmake.conf.multilib_optflags qtbase-opensource-src-5.1.0/mkspecs/linux-g++-32/qmake.conf ---- qtbase-opensource-src-5.1.0/mkspecs/linux-g++-32/qmake.conf.multilib_optflags 2013-08-27 10:28:26.599972122 -0500 -+++ qtbase-opensource-src-5.1.0/mkspecs/linux-g++-32/qmake.conf 2013-08-27 10:30:03.780950078 -0500 +diff --git a/mkspecs/linux-g++-32/qmake.conf b/mkspecs/linux-g++-32/qmake.conf +index 340aa85..571a559 100644 +--- a/mkspecs/linux-g++-32/qmake.conf ++++ b/mkspecs/linux-g++-32/qmake.conf @@ -9,6 +9,8 @@ QMAKE_INCREMENTAL_STYLE = sublib QMAKE_CFLAGS = -m32 QMAKE_LFLAGS = -m32 @@ -10,9 +11,10 @@ diff -up qtbase-opensource-src-5.1.0/mkspecs/linux-g++-32/qmake.conf.multilib_op include(../common/linux.conf) include(../common/gcc-base-unix.conf) include(../common/g++-unix.conf) -diff -up qtbase-opensource-src-5.1.0/mkspecs/linux-g++-64/qmake.conf.multilib_optflags qtbase-opensource-src-5.1.0/mkspecs/linux-g++-64/qmake.conf ---- qtbase-opensource-src-5.1.0/mkspecs/linux-g++-64/qmake.conf.multilib_optflags 2013-08-27 10:28:26.600972112 -0500 -+++ qtbase-opensource-src-5.1.0/mkspecs/linux-g++-64/qmake.conf 2013-08-27 10:29:49.188103550 -0500 +diff --git a/mkspecs/linux-g++-64/qmake.conf b/mkspecs/linux-g++-64/qmake.conf +index 36fb6a8..9a07595 100644 +--- a/mkspecs/linux-g++-64/qmake.conf ++++ b/mkspecs/linux-g++-64/qmake.conf @@ -12,6 +12,8 @@ QMAKE_INCREMENTAL_STYLE = sublib QMAKE_CFLAGS = -m64 QMAKE_LFLAGS = -m64 @@ -22,11 +24,12 @@ diff -up qtbase-opensource-src-5.1.0/mkspecs/linux-g++-64/qmake.conf.multilib_op include(../common/linux.conf) include(../common/gcc-base-unix.conf) include(../common/g++-unix.conf) -diff -up qtbase-opensource-src-5.1.0/mkspecs/linux-g++/qmake.conf.multilib_optflags qtbase-opensource-src-5.1.0/mkspecs/linux-g++/qmake.conf ---- qtbase-opensource-src-5.1.0/mkspecs/linux-g++/qmake.conf.multilib_optflags 2013-08-27 10:28:26.601972101 -0500 -+++ qtbase-opensource-src-5.1.0/mkspecs/linux-g++/qmake.conf 2013-08-27 10:29:30.196303285 -0500 +diff --git a/mkspecs/linux-g++/qmake.conf b/mkspecs/linux-g++/qmake.conf +index 35bce8f..5186f98 100644 +--- a/mkspecs/linux-g++/qmake.conf ++++ b/mkspecs/linux-g++/qmake.conf @@ -6,6 +6,8 @@ MAKEFILE_GENERATOR = UNIX - CONFIG += incremental gdb_dwarf_index + CONFIG += incremental QMAKE_INCREMENTAL_STYLE = sublib +QMAKE_CFLAGS_RELEASE += -O2 diff --git a/qtbase-opensource-src-5.0.2-lowmem.patch b/qtbase-opensource-src-5.0.2-lowmem.patch deleted file mode 100644 index f63dc78..0000000 --- a/qtbase-opensource-src-5.0.2-lowmem.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up qtbase-opensource-src-5.0.2/src/gui/painting/qdrawhelper.cpp.lowmem qtbase-opensource-src-5.0.2/src/gui/painting/qdrawhelper.cpp ---- qtbase-opensource-src-5.0.2/src/gui/painting/qdrawhelper.cpp.lowmem 2013-04-08 19:11:09.000000000 -0500 -+++ qtbase-opensource-src-5.0.2/src/gui/painting/qdrawhelper.cpp 2013-04-18 19:34:44.600940784 -0500 -@@ -43,8 +43,8 @@ - && (__GNUC__ * 100 + __GNUC_MINOR__ * 10 + __GNUC_PATCHLEVEL__ >= 440) - // GCC 4.4 supports #pragma GCC optimize and #pragma GCC target - --# if (__GNUC__ * 100 + __GNUC_MINOR__ * 10 + __GNUC_PATCHLEVEL__ < 473) --// From GCC 4.7.3 onwards, GCC optimize can result in gcc bailing out with OOM -+# if (__GNUC__ * 100 + __GNUC_MINOR__ * 10 + __GNUC_PATCHLEVEL__ < 472) -+// From GCC 4.7.2 onwards, GCC optimize can result in gcc bailing out with OOM - # pragma GCC optimize "O3" - # endif - diff --git a/qtbase-opensource-src-5.2.0-allow-forcing-llvmpipe.patch b/qtbase-opensource-src-5.2.0-allow-forcing-llvmpipe.patch deleted file mode 100644 index 1869f54..0000000 --- a/qtbase-opensource-src-5.2.0-allow-forcing-llvmpipe.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -ur qtbase-opensource-src-5.2.0/src/platformsupport/glxconvenience/qglxconvenience.cpp qtbase-opensource-src-5.2.0-allow-forcing-llvmpipe/src/platformsupport/glxconvenience/qglxconvenience.cpp ---- qtbase-opensource-src-5.2.0/src/platformsupport/glxconvenience/qglxconvenience.cpp 2013-12-08 18:09:47.000000000 +0100 -+++ qtbase-opensource-src-5.2.0-allow-forcing-llvmpipe/src/platformsupport/glxconvenience/qglxconvenience.cpp 2014-01-29 19:03:23.000000000 +0100 -@@ -39,6 +39,10 @@ - ** - ****************************************************************************/ - -+// We have to include this before the X11 headers dragged in by -+// qglxconvenience_p.h. -+#include -+ - #include "qglxconvenience_p.h" - - #include -@@ -116,6 +120,27 @@ - - GLXFBConfig qglx_findConfig(Display *display, int screen , const QSurfaceFormat &format, int drawableBit) - { -+ // Allow forcing LIBGL_ALWAYS_SOFTWARE for Qt 5 applications only. -+ // This is most useful with drivers that only support OpenGL 1. -+ // We need OpenGL 2, but the user probably doesn't want -+ // LIBGL_ALWAYS_SOFTWARE in OpenGL 1 apps. -+ static bool checkedForceSoftwareOpenGL = false; -+ static bool forceSoftwareOpenGL = false; -+ if (!checkedForceSoftwareOpenGL) { -+ // If LIBGL_ALWAYS_SOFTWARE is already set, don't mess with it. -+ // We want to unset LIBGL_ALWAYS_SOFTWARE at the end so it does not -+ // get inherited by other processes, of course only if it wasn't -+ // already set before. -+ if (!qEnvironmentVariableIsEmpty("QT_XCB_FORCE_SOFTWARE_OPENGL") -+ && !qEnvironmentVariableIsSet("LIBGL_ALWAYS_SOFTWARE")) -+ forceSoftwareOpenGL = true; -+ -+ checkedForceSoftwareOpenGL = true; -+ } -+ -+ if (forceSoftwareOpenGL) -+ qputenv("LIBGL_ALWAYS_SOFTWARE", QByteArrayLiteral("1")); -+ - bool reduced = true; - GLXFBConfig chosenConfig = 0; - QSurfaceFormat reducedFormat = format; -@@ -159,6 +184,10 @@ - reducedFormat = qglx_reduceSurfaceFormat(reducedFormat,&reduced); - } - -+ // unset LIBGL_ALWAYS_SOFTWARE now so other processes don't inherit it -+ if (forceSoftwareOpenGL) -+ qunsetenv("LIBGL_ALWAYS_SOFTWARE"); -+ - return chosenConfig; - } - diff --git a/qtbase-opensource-src-5.2.1-QTBUG-38367.patch b/qtbase-opensource-src-5.2.1-QTBUG-38367.patch deleted file mode 100644 index b85d74d..0000000 --- a/qtbase-opensource-src-5.2.1-QTBUG-38367.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -up qtbase-opensource-src-5.2.1/src/gui/image/qgifhandler.cpp.QTBUG-38367 qtbase-opensource-src-5.2.1/src/gui/image/qgifhandler.cpp ---- qtbase-opensource-src-5.2.1/src/gui/image/qgifhandler.cpp.QTBUG-38367 2014-02-01 14:37:35.000000000 -0600 -+++ qtbase-opensource-src-5.2.1/src/gui/image/qgifhandler.cpp 2014-04-24 16:28:10.952100278 -0500 -@@ -359,6 +359,13 @@ int QGIFFormat::decode(QImage *image, co - memset(bits, 0, image->byteCount()); - } - -+ // Check if the previous attempt to create the image failed. If it -+ // did then the image is broken and we should give up. -+ if (image->isNull()) { -+ state = Error; -+ return -1; -+ } -+ - disposePrevious(image); - disposed = false; - diff --git a/qtbase-qatomic-ppc.patch b/qtbase-qatomic-ppc.patch deleted file mode 100644 index 4e1ac59..0000000 --- a/qtbase-qatomic-ppc.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: qtbase-opensource-src-5.1.1/src/corelib/thread/qoldbasicatomic.h -=================================================================== ---- qtbase-opensource-src-5.1.1.orig/src/corelib/thread/qoldbasicatomic.h -+++ qtbase-opensource-src-5.1.1/src/corelib/thread/qoldbasicatomic.h -@@ -63,7 +63,7 @@ public: - // Atomic API, implemented in qatomic_XXX.h - - int load() const { return _q_value; } -- int loadAcquire() { return _q_value; } -+ int loadAcquire() const { return _q_value; } - void store(int newValue) { _q_value = newValue; } - void storeRelease(int newValue) { _q_value = newValue; } - -@@ -107,7 +107,7 @@ public: - // Atomic API, implemented in qatomic_XXX.h - - T *load() const { return _q_value; } -- T *loadAcquire() { return _q_value; } -+ T *loadAcquire() const { return _q_value; } - void store(T *newValue) { _q_value = newValue; } - void storeRelease(T *newValue) { _q_value = newValue; } -