Browse Source

qt4-4.8.7-3

Tomohiro "Tomo-p" KATO 4 years ago
parent
commit
0413387c83
1 changed files with 118 additions and 20 deletions
  1. 118 20
      q/qt4/qt4-vl.spec

+ 118 - 20
q/qt4/qt4-vl.spec

@@ -8,7 +8,7 @@ Summary: Qt toolkit
 Summary(ja): Qt ツールキット
 Name: qt4
 Version: 4.8.7
-Release: 2%{?_dist_release}
+Release: 3%{?_dist_release}
 
 # See LGPL_EXCEPTIONS.txt, LICENSE.GPL3, respectively, for exception details
 License: (LGPLv2 with exceptions or GPLv3 with exceptions) and ASL 2.0 and BSD and FTL and MIT
@@ -40,6 +40,16 @@ Patch2: qt-everywhere-opensource-src-4.8.0-tp-multilib-optflags.patch
 # get rid of timestamp which causes multilib problem
 Patch4: qt-everywhere-opensource-src-4.8.5-uic_multilib.patch
 
+# reduce debuginfo in qtwebkit (webcore)
+Patch5: qt-everywhere-opensource-src-4.8.5-webcore_debuginfo.patch
+
+# cups16 printer discovery
+Patch6: qt-cupsEnumDests.patch
+
+# prefer adwaita over gtk+ on DE_GNOME
+# https://bugzilla.redhat.com/show_bug.cgi?id=1192453
+Patch10: qt-prefer_adwaita_on_gnome.patch
+
 # enable ft lcdfilter
 Patch15: qt-x11-opensource-src-4.5.1-enable_ft_lcdfilter.patch
 
@@ -51,6 +61,12 @@ Patch23: qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck.patch
 # (often in kde apps), keep an eye on https://git.reviewboard.kde.org/r/103699/
 Patch25: qt-everywhere-opensource-src-4.8.3-qdbusconnection_no_debug.patch
 
+# lrelease-qt4 tries to run qmake not qmake-qt4 (http://bugzilla.redhat.com/820767)
+Patch26: qt-everywhere-opensource-src-4.8.1-linguist_qmake-qt4.patch
+
+# enable debuginfo in libQt3Support
+Patch27: qt-everywhere-opensource-src-4.8.1-qt3support_debuginfo.patch
+
 # kde4/multilib QT_PLUGIN_PATH
 Patch28: qt-everywhere-opensource-src-4.8.5-qt_plugin_path.patch
 
@@ -58,6 +74,12 @@ Patch28: qt-everywhere-opensource-src-4.8.5-qt_plugin_path.patch
 # add support for pkgconfig's Requires.private to qmake
 Patch50: qt-everywhere-opensource-src-4.8.4-qmake_pkgconfig_requires_private.patch
 
+# FTBFS against newer firebird
+Patch51: qt-everywhere-opensource-src-4.8.7-firebird.patch
+
+# workaround major/minor macros possibly being defined already
+Patch52: qt-everywhere-opensource-src-4.8.7-QT_VERSION_CHECK.patch
+
 # fix invalid inline assembly in qatomic_{i386,x86_64}.h (de)ref implementations
 Patch53: qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm.patch
 
@@ -68,6 +90,12 @@ Patch54: qt-everywhere-opensource-src-4.8.5-mysql_config.patch
 # http://bugs.kde.org/show_bug.cgi?id=180051#c22
 Patch55: qt-everywhere-opensource-src-4.6.2-cups.patch
 
+# backport https://codereview.qt-project.org/#/c/205874/
+Patch56: qt-everywhere-opensource-src-4.8.7-mariadb.patch
+
+# use QMAKE_LFLAGS_RELEASE when building qmake
+Patch57: qt-everywhere-opensource-src-4.8.7-qmake_LFLAGS.patch
+
 # Fails to create debug build of Qt projects on mingw (rhbz#653674)
 Patch64: qt-everywhere-opensource-src-4.8.5-QTBUG-14467.patch
 
@@ -79,13 +107,13 @@ Patch67: qt-everywhere-opensource-src-4.8.6-s390.patch
 
 # https://bugs.webkit.org/show_bug.cgi?id=63941
 # -Wall + -Werror = fail
-Patch68: webkit-qtwebkit-2.2-no_Werror.patch
+Patch68: qt-everywhere-opensource-src-4.8.3-no_Werror.patch
 
 # revert qlist.h commit that seems to induce crashes in qDeleteAll<QList (QTBUG-22037)
 Patch69: qt-everywhere-opensource-src-4.8.0-QTBUG-22037.patch
 
 # Buttons in Qt applications not clickable when run under gnome-shell (#742658, QTBUG-21900)
-Patch71: qt-everywhere-opensource-src-4.8.5-QTBUG-21900.patch
+Patch71:  qt-everywhere-opensource-src-4.8.5-QTBUG-21900.patch
 
 # workaround
 # sql/drivers/tds/qsql_tds.cpp:341:49: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
@@ -94,8 +122,8 @@ Patch74: qt-everywhere-opensource-src-4.8.5-tds_no_strict_aliasing.patch
 # add missing method for QBasicAtomicPointer on s390(x)
 Patch76: qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
 
-# don't spam if libicu is not present at runtime
-Patch77:  qt-everywhere-opensource-src-4.8.0-icu_no_spam.patch
+# don't spam in release/no_debug mode if libicu is not present at runtime
+Patch77: qt-everywhere-opensource-src-4.8.3-icu_no_debug.patch
 
 # https://bugzilla.redhat.com/show_bug.cgi?id=810500
 Patch81: qt-everywhere-opensource-src-4.8.2--assistant-crash.patch
@@ -120,20 +148,52 @@ Patch87: qt-everywhere-opensource-src-4.8.6-QTBUG-37380.patch
 Patch88: qt-everywhere-opensource-src-4.8.6-QTBUG-34614.patch
 Patch89: qt-everywhere-opensource-src-4.8.6-QTBUG-38585.patch
 
-# upstream patches
-# http://codereview.qt-project.org/#change,22006
-Patch100: qt-everywhere-opensource-src-4.8.1-qtgahandle.patch
+# build against the system clucene09-core
+Patch90: qt-everywhere-opensource-src-4.8.6-system-clucene.patch
 
+# fix arch autodetection for 64-bit MIPS
+Patch91: qt-everywhere-opensource-src-4.8.7-mips64.patch
+
+# fix build issue(s) with gcc6
+Patch92: qt-everywhere-opensource-src-4.8.7-gcc6.patch
+
+# support alsa-1.1.x
+Patch93: qt-everywhere-opensource-src-4.8.7-alsa-1.1.patch
+
+# support OpenSSL 1.1.x, from Debian (Gert Wollny, Dmitry Eremin-Solenikov)
+# https://anonscm.debian.org/cgit/pkg-kde/qt/qt4-x11.git/tree/debian/patches/openssl_1.1.patch?h=experimental
+# fixes for -openssl-linked by Kevin Kofler
+Patch94: qt-everywhere-opensource-src-4.8.7-openssl-1.1.patch
+
+# fix build with ICU >= 59, from OpenSUSE (Fabian Vogt)
+# https://build.opensuse.org/package/view_file/KDE:Qt/libqt4/fix-build-icu59.patch?expand=1
+Patch95: qt-everywhere-opensource-src-4.8.7-icu59.patch
+
+# workaround qtscript failures when building with f28's gcc8
+# https://bugzilla.redhat.com/show_bug.cgi?id=1580047
+Patch96: qt-everywhere-opensource-src-4.8.7-gcc8_qtscript.patch
+
+# upstream patches
 # backported from Qt5 (essentially)
 # http://bugzilla.redhat.com/702493
 # https://bugreports.qt-project.org/browse/QTBUG-5545
 Patch102: qt-everywhere-opensource-src-4.8.5-qgtkstyle_disable_gtk_theme_check.patch
-
 # workaround for MOC issues with Boost headers (#756395)
 # https://bugreports.qt-project.org/browse/QTBUG-22829
-Patch113: qt-everywhere-opensource-src-4.8.5-QTBUG-22829.patch
+Patch113: qt-everywhere-opensource-src-4.8.6-QTBUG-22829.patch
+
+# aarch64 support, https://bugreports.qt-project.org/browse/QTBUG-35442
+Patch180: qt-aarch64.patch
 
-# security patches
+# Fix problem caused by gcc 9 fixing a longstanding bug.
+# https://github.com/qt/qtbase/commit/c35a3f519007af44c3b364b9af86f6a336f6411b.patch
+Patch181: qt-everywhere-opensource-src-4.8.7-qforeach.patch
+
+## upstream git
+
+## security patches
+# CVE-2018-19872 qt: malformed PPM image causing division by zero and crash in qppmhandler.cpp
+Patch500: qt-everywhere-opensource-src-4.8.7-crash-in-qppmhandler.patch
 
 # Vine Patches
 # use system ca-bundle certs, http://bugzilla.redhat.com/521911
@@ -149,6 +209,8 @@ Patch1001: qt-everywhere-opensource-src-4.8.0-system_ca_certificates_vine.patch
 %define sqlite -plugin-sql-sqlite
 %define tds -plugin-sql-tds
 
+%define no_javascript_jit -no-javascript-jit
+
 # don't build with phonon backend now
 #define phonon -phonon
 #define phonon_backend -phonon-backend
@@ -205,7 +267,7 @@ BuildRequires: firebird-devel
 %endif
 
 %if "%{?mysql}" != "-no-sql-mysql"
-BuildRequires: libmysqlclient-devel
+BuildRequires: libmariadb-devel
 %endif
 
 %if "%{?phonon_backend}" == "-phonon-backend"
@@ -426,32 +488,38 @@ applications using the Qt toolkit.
 %prep
 %setup -q -n qt-everywhere-opensource-src-%{version}
 
-%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
 %patch4 -p1 -b .uic_multilib
+%patch5 -p1 -b .webcore_debuginfo
+# ie, where cups-1.6+ is present
+%if 0%{?fedora} || 0%{?rhel} > 7
+#patch6 -p1 -b .cupsEnumDests
+%endif
+%patch10 -p0 -b .prefer_adwaita_on_gnome
 %patch15 -p1 -b .enable_ft_lcdfilter
 %patch23 -p1 -b .glib_eventloop_nullcheck
 %patch25 -p1 -b .qdbusconnection_no_debug
+%patch26 -p1 -b .linguist_qtmake-qt4
+%patch27 -p1 -b .qt3support_debuginfo
 %patch28 -p1 -b .qt_plugin_path
 %patch50 -p1 -b .qmake_pkgconfig_requires_private
+%patch51 -p1 -b .firebird
+%patch52 -p1 -b .QT_VERSION_CHECK
 ## TODO: still worth carrying?  if so, upstream it.
 %patch53 -p1 -b .qatomic-inline-asm
 ## TODO: upstream me
 %patch54 -p1 -b .mysql_config
 %patch55 -p1 -b .cups-1
+%patch56 -p1 -b .mariadb
+%patch57 -p1 -b .qmake_LFLAGS
 %patch64 -p1 -b .QTBUG-14467
 %patch65 -p1 -b .qtreeview-kpackagekit-crash
 %patch67 -p1 -b .s390
-pushd src/3rdparty/webkit
 %patch68 -p1 -b .no_Werror
-popd
 %patch69 -p1 -b .QTBUG-22037
 %patch71 -p1 -b .QTBUG-21900
 %patch74 -p1 -b .tds_no_strict_aliasing
-#patch75 -p1 -b .ppc64-crash
 %patch76 -p1 -b .s390-atomic
-%patch77 -p1 -b .icu_no_spam
+%patch77 -p1 -b .icu_no_debug
 %patch81 -p1 -b .assistant-crash
 %patch82 -p1 -b .QTBUG-4862
 %patch83 -p1 -b .poll
@@ -459,16 +527,39 @@ popd
 %patch88 -p0 -b .QTBUG-34614
 %patch89 -p0 -b .QTBUG-38585
 
+%if 0%{?system_clucene}
+%patch90 -p1 -b .system_clucene
+# delete bundled copy
+rm -rf src/3rdparty/clucene
+%endif
+%patch91 -p1 -b .mips64
+%patch92 -p1 -b .gcc6
+%patch93 -p1 -b .alsa1.1
+%patch94 -p1 -b .openssl1.1
+%patch95 -p1 -b .icu59
+%patch96 -p1 -b .gcc8_qtscript
+
 # upstream patches
-%patch100 -p1 -b .QTgaHandler
 %patch102 -p1 -b .qgtkstyle_disable_gtk_theme_check
 %patch113 -p1 -b .QTBUG-22829
 
+%patch180 -p1 -b .aarch64
+%patch181 -p1 -b .qforeach
+
+# upstream git
+
 # security fixes
+%patch500 -p1 -b .malformed-ppb-image-causing-crash
+
 # regression fixes for the security fixes
 %patch84 -p1 -b .QTBUG-35459
+
 %patch86 -p1 -b .systemtrayicon
 
+%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
+
 # Patches for Vine
 %patch1001 -p1 -b .system_ca_certificates
 
@@ -517,6 +608,10 @@ sed -e 's:$(QTBIN):%{_qt4_bindir}:g' %{SOURCE24} > qtdemo.desktop
 sed -e 's:$(QTBIN):%{_qt4_bindir}:g' %{SOURCE25} > qtconfig.desktop
 
 %build
+CXXFLAGS="$CXXFLAGS -std=gnu++98"
+CXXFLAGS="$CXXFLAGS -Wno-deprecated"
+export CXXFLAGS="$CXXFLAGS $RPM_OPT_FLAGS"
+
 # build shared, threaded (default) libraries
 ./configure -v \
     -confirm-license \
@@ -1129,6 +1224,9 @@ fi
 %endif
 
 %changelog
+* Mon Aug 26 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.8.7-3
+- replaced all patches with rawhide's.
+
 * Tue Jun 28 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 4.8.7-2
 - rebuild with gcc-5.4.0