]> git.pld-linux.org Git - packages/qt4.git/blobdiff - qt4.spec
rebuild with openssl 3.0.0
[packages/qt4.git] / qt4.spec
index 28504ca26c533bd57f35134265f3c4e2c8b9a2ee..3a7b3d446d0a10062e3946a2a9edd6083121739e 100644 (file)
--- a/qt4.spec
+++ b/qt4.spec
@@ -1,5 +1,7 @@
 #
 # TODO:
+#      - fix moc failures, see e.g. https://bugzilla.redhat.com/show_bug.cgi?id=1396755
+#        at least add some macros to QTBUG-22829 patch (BOOST_PREDEF_VERSION_NUMBER_H, _SYS_SYSMACROS_H_OUTER...)
 #      - more cleanups
 #      - check if translations are available
 #      - check Qt ui tool
 %bcond_with    sse42           # use SSE4.2 instructions (the same)
 %bcond_with    avx             # use AVX instructions (future Intel x86 CPUs only)
 
-%ifnarch %{ix86} %{x8664} sparc sparcv9 alpha ppc
+%ifnarch %{ix86} %{x8664} x32 sparc sparcv9 alpha ppc
 %undefine      with_ibase
 %endif
 %ifarch        athlon
 %define                with_3dnow      1
 %endif
-%ifarch athlon pentium3 pentium4 %{x8664}
+%ifarch athlon pentium3 pentium4 %{x8664} x32
 %define                with_mmx        1
 %endif
-%ifarch pentium3 pentium4 %{x8664}
+%ifarch pentium3 pentium4 %{x8664} x32
 %define                with_sse        1
 %endif
-%ifarch pentium4 %{x8664}
+%ifarch pentium4 %{x8664} x32
 %define                with_sse2       1
 %endif
 # any SQL
 %define                _withsql        1
 %{!?with_sqlite3:%{!?with_sqlite:%{!?with_ibase:%{!?with_mysql:%{!?with_pgsql:%{!?with_odbc:%{!?with_oci:%undefine _withsql}}}}}}}
 
-%define                icu_abi         54
+%define                icu_abi         69
 %define                next_icu_abi    %(echo $((%{icu_abi} + 1)))
 
 Summary:       The Qt GUI application framework
@@ -61,7 +63,7 @@ Summary(pl.UTF-8):    Biblioteka Qt do tworzenia GUI
 Summary(pt_BR.UTF-8):  Estrutura para rodar aplicações GUI Qt
 Name:          qt4
 Version:       4.8.7
-Release:       1
+Release:       37
 License:       LGPL v2.1 or GPL v3.0
 Group:         X11/Libraries
 Source0:       http://download.qt-project.org/official_releases/qt/4.8/%{version}/qt-everywhere-opensource-src-%{version}.tar.gz
@@ -87,19 +89,51 @@ Patch8:             %{name}-ibase.patch
 Patch9:                qt-x11-opensource-src-4.5.1-enable_ft_lcdfilter.patch
 Patch10:       webkit-no_Werror.patch
 Patch11:       %{name}-wkhtml.patch
-Patch12:       fix-crash-in-assistant.patch
-Patch13:       improve-cups-support.patch
+Patch12:       openssl.patch
+Patch13:       qt-asm-volatile.patch
 Patch14:       x32.patch
 # backported from Qt5 (essentially)
 # http://bugzilla.redhat.com/702493
 # https://bugreports.qt-project.org/browse/QTBUG-5545
 Patch15:       qt-everywhere-opensource-src-4.8.4-qgtkstyle_disable_gtk_theme_check.patch
 Patch16:       qt-everywhere-opensource-src-4.8.3-QTBUG-4862.patch
-Patch17:       l-qclipboard_delay.patch
-Patch18:       l-qclipboard_fix_recursive.patch
-Patch19:       qtcore-4.8.5-honor-ExcludeSocketNotifiers-in-glib-event-loop.patch
-Patch20:       %{name}-oracle-instantclient.patch
-Patch27:       moc-boost-workaround.patch
+Patch17:       %{name}-oracle-instantclient.patch
+# from Debian
+Patch18:       add-lxde-support.patch
+Patch19:       Better-handling-of-invalid-font-tables.patch
+Patch20:       xmlpatterns_stack_overflow_fix.diff
+Patch21:       no_libicu_message.diff
+Patch22:       add-mate-support.patch
+
+# from FC
+Patch28:       qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm.patch
+Patch29:       qt-everywhere-opensource-src-4.8.6-QTBUG-38585.patch
+Patch30:       qt-everywhere-opensource-src-4.8.6-QTBUG-37380.patch
+Patch31:       qt-everywhere-opensource-src-4.8.6-QTBUG-34614.patch
+Patch32:       qt-everywhere-opensource-src-4.8.5-QTBUG-35459.patch
+Patch33:       qt-everywhere-opensource-src-4.8.5-QTBUG-4862.patch
+Patch34:       qt-everywhere-opensource-src-4.8.5-QTBUG-21900.patch
+Patch35:       qt-4.8-poll.patch
+Patch36:       qt-cupsEnumDests.patch
+Patch37:       qt-everywhere-opensource-src-4.8.4-qmake_pkgconfig_requires_private.patch
+Patch38:       qt-everywhere-opensource-src-4.8.5-QTBUG-14467.patch
+Patch39:       qt-everywhere-opensource-src-4.8.5-tds_no_strict_aliasing.patch
+Patch40:       qt-everywhere-opensource-src-4.8.6-QTBUG-22829.patch
+Patch41:       qt-everywhere-opensource-src-4.8.7-alsa-1.1.patch
+Patch42:       qt-everywhere-opensource-src-4.8.7-gcc6.patch
+Patch43:       qt-everywhere-opensource-src-4.6.2-cups.patch
+Patch44:       qt-everywhere-opensource-src-4.8.0-tp-qtreeview-kpackagekit-crash.patch
+Patch45:       qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck.patch
+Patch46:       qt-everywhere-opensource-src-4.8.3-qdbusconnection_no_debug.patch
+Patch47:       qt-everywhere-opensource-src-4.8.2--assistant-crash.patch
+Patch48:       qt-everywhere-opensource-src-4.8.0-QTBUG-22037.patch
+Patch49:       icu59.patch
+Patch50:       mysql-link.patch
+Patch51:       gcc9.patch
+Patch52:       gcc9-qforeach.patch
+Patch53:       cxx11.patch
+Patch54:       gcc11.patch
+Patch55:       qmap_inf_loop.patch
 URL:           http://qt-project.org/
 %{?with_ibase:BuildRequires:   Firebird-devel}
 %{?with_openvg:BuildRequires:  Mesa-libOpenVG-devel}
@@ -113,7 +147,7 @@ BuildRequires:      freetds-devel
 BuildRequires: freetype-devel >= 2.1.3
 %{?with_pch:BuildRequires:     gcc >= 5:4.0}
 BuildRequires: glib2-devel >= 2.0.0
-BuildRequires: gstreamer0.10-plugins-base-devel
+%{!?with_system_phonon:BuildRequires:  gstreamer0.10-plugins-base-devel}
 %{?with_gtk:BuildRequires:     gtk+2-devel >= 2:2.10}
 # see dependency on libicu version below
 BuildRequires: libicu-devel >= %{icu_abi}
@@ -154,7 +188,7 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                _noautoreqdep   libGL.so.1 libGLU.so.1
 %define                _noautostrip    '.*_debug\\.so*'
 
-%define                specflags       -fno-strict-aliasing
+%define                specflags       -fno-strict-aliasing -Wno-deprecated
 
 %define                _qtdir          %{_libdir}/qt4
 
@@ -630,6 +664,7 @@ Requires:   QtCore = %{version}-%{release}
 # the rest for qnmbearer plugin
 Requires:      QtDBus = %{version}-%{release}
 Requires:      QtXml = %{version}-%{release}
+%requires_ge_to        openssl openssl-devel
 
 %description -n QtNetwork
 Qt classes for network programming.
@@ -1460,9 +1495,7 @@ Summary:  Qt Documentation in HTML format
 Summary(pl.UTF-8):     Dokumentacja Qt w formacie HTML
 Group:         X11/Development/Libraries
 Suggests:      %{name}-assistant = %{version}-%{release}
-%if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
-%endif
 
 %description doc
 Qt documentation in HTML format.
@@ -1507,12 +1540,42 @@ Programas exemplo para o Qt versão.
 %patch14 -p1
 %patch15 -p1
 %patch16 -p1
-%patch17 -p0
-%patch18 -p0
+%patch17 -p1
+
+%patch18 -p1
 %patch19 -p1
 %patch20 -p1
-
-%patch27 -p1
+%patch21 -p1
+%patch22 -p1
+
+%patch28 -p1
+%patch29 -p0
+%patch30 -p1
+%patch31 -p0
+%patch32 -p1
+%patch33 -p1
+%patch34 -p1
+%patch35 -p1
+%patch36 -p1
+%patch37 -p1
+%patch38 -p1
+%patch39 -p1
+%patch40 -p1
+%patch41 -p1
+%patch42 -p1
+%patch43 -p1
+%patch44 -p1
+%patch45 -p1
+%patch46 -p1
+%patch47 -p1
+%patch48 -p1
+%patch49 -p1
+%patch50 -p1
+%patch51 -p1
+%patch52 -p1
+%patch53 -p1
+%patch54 -p1
+%patch55 -p1
 
 %{__sed} -i -e 's,usr/X11R6/,usr/g,' mkspecs/linux-g++-64/qmake.conf \
        mkspecs/common/linux.conf
@@ -1543,8 +1606,11 @@ Programas exemplo para o Qt versão.
        s|^QMAKE_STRIP.*=.*|QMAKE_STRIP             =|;
        ' mkspecs/common/linux.conf
 
+# disable gstreamer-0.10 based multimedia
+%{__sed} -i -e 's/gstreamer-0.10/&-disabled/' src/3rdparty/webkit/Source/WebCore/features.pri
+
 # disable webkit tests, broken build
-rm -r src/3rdparty/webkit/Source/WebKit/qt/tests
+%{__rm} -r src/3rdparty/webkit/Source/WebKit/qt/tests
 
 %build
 # pass OPTFLAGS to build qmake itself with optimization
@@ -1586,6 +1652,7 @@ COMMONOPT=" \
        %{!?with_sse41:-no-sse4.1} \
        %{!?with_sse42:-no-sse4.2} \
        %{!?with_avx:-no-avx} \
+       %{?with_system_phonon:-no-phonon} \
        -qdbus \
        -dbus-linked \
        -reduce-relocations \
@@ -1698,6 +1765,9 @@ install bin/qdoc3 $RPM_BUILD_ROOT%{_qtdir}/bin/qdoc3
        s|uic_location=.*|uic_location=%{_bindir}/uic-qt4|;
        ' $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
 
+# kill -std=XYZ, so qmake won't pass it over to other projects
+#%{__sed} -i -e s#^\(.*\) -std=[a-z0-9+]\+\( .*\|$\)#\1 \2#g' $RPM_BUILD_ROOT%{_datadir}/qt4/mkspecs/common/g++-base.conf
+
 # libQtWebKit.la contains '-ljscore' and '-lwebcore', they come
 # from src/3rdparty/webkit/{JavaScriptCore,WebCore}} but those libs aren't installed
 %{__sed} -i -e "s,-lwebcore,,g;s,-ljscore,,g;" $RPM_BUILD_ROOT%{_libdir}/libQtWebKit.la
@@ -1734,7 +1804,7 @@ ln -sf ../%{_lib}/qt4/bin/xmlpatternsvalidator .
 cd -
 
 # multilib
-mv $RPM_BUILD_ROOT%{_qtdir}/bin/{qdbus,qdbusviewer} $RPM_BUILD_ROOT%{_bindir}
+%{__mv} $RPM_BUILD_ROOT%{_qtdir}/bin/{qdbus,qdbusviewer} $RPM_BUILD_ROOT%{_bindir}
 ln -sf %{_bindir}/qdbus $RPM_BUILD_ROOT%{_qtdir}/bin/qdbus
 ln -sf %{_bindir}/qdbusviewer $RPM_BUILD_ROOT%{_qtdir}/bin/qdbusviewer
 
@@ -1885,7 +1955,7 @@ mkdevfl QtCLucene
 mkdevfl QtXml
 mkdevfl QtXmlPatterns
 mkdevfl Qt3Support
-mkdevfl phonon
+%{!?with_system_phonon:mkdevfl phonon}
 
 # without *.la *.pc etc.
 mkdevfl QtDesigner || /bin/true
@@ -1911,17 +1981,6 @@ for f in `find $RPM_BUILD_ROOT%{_examplesdir}/qt4-demos -printf "%%P "`; do
        ifecho demos %{_examplesdir}/qt4-demos/$f
 done
 
-%if %{with system_phonon}
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libphonon.so* \
-       $RPM_BUILD_ROOT%{_libdir}/libphonon.{la,prl} \
-       $RPM_BUILD_ROOT%{_libdir}/qt4/plugins/phonon_backend/libphonon_gstreamer.so \
-       $RPM_BUILD_ROOT%{_pkgconfigdir}/phonon.pc
-%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/qt4/phonon
-%if %{with static_libs}
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libphonon.a
-%endif
-%endif
-
 %clean
 rm -rf $RPM_BUILD_ROOT
 
This page took 0.075128 seconds and 4 git commands to generate.