# -- features
%bcond_without cups # CUPS printing support
%bcond_without directfb # DirectFB platform support
+%bcond_without egl # EGL (EGLFS, minimal EGL) platform support
%bcond_without gtk # GTK+ theme integration
+%bcond_without kms # KMS platform support
%bcond_without pch # pch (pre-compiled headers) in qmake
+%bcond_without qch # QCH documentation
%bcond_without tslib # tslib support
# -- databases
%bcond_without freetds # TDS (Sybase/MS SQL) plugin
%bcond_with db2 # DB2 support
%bcond_with oracle # OCI (Oracle) support
# -- SIMD CPU instructions
-%bcond_with sse # use SSE instructions in gui/painting module
%bcond_with sse2 # use SSE2 instructions
%bcond_with sse3 # use SSE3 instructions (since: Intel middle Pentium4, AMD Athlon64)
%bcond_with ssse3 # use SSSE3 instructions (Intel since Core2, Via Nano)
%ifarch athlon pentium3 pentium4 %{x8664}
%define with_mmx 1
%endif
-%ifarch pentium3 pentium4 %{x8664}
-%define with_sse 1
-%endif
%ifarch pentium4 %{x8664}
%define with_sse2 1
%endif
Summary: Qt5 - base components
Summary(pl.UTF-8): Biblioteka Qt5 - podstawowe komponenty
Name: qt5-%{orgname}
-Version: 5.2.0
-Release: 1
-# See LGPL_EXCEPTIONS.txt, LICENSE.GPL3, respectively, for exception details
-License: LGPLv2 with exceptions or GPLv3 with exceptions
+Version: 5.2.1
+Release: 2
+# See LGPL_EXCEPTION.txt for exception details
+License: LGPL v2 with Digia Qt LGPL Exception v1.1 or GPL v3
Group: X11/Libraries
Source0: http://download.qt-project.org/official_releases/qt/5.2/%{version}/submodules/%{orgname}-opensource-src-%{version}.tar.xz
-# Source0-md5: c94bbaf1bb7f0f4a32d2caa7501416e1
+# Source0-md5: fa005301a2000b92b61b63edc042567b
URL: http://qt-project.org/
%{?with_directfb:BuildRequires: DirectFB-devel}
+BuildRequires: EGL-devel
%{?with_ibase:BuildRequires: Firebird-devel}
BuildRequires: Mesa-libOpenVG-devel
+%{?with_kms:BuildRequires: Mesa-libgbm-devel}
BuildRequires: OpenGL-devel
+%{?with_kms:BuildRequires: OpenGLESv2-devel}
BuildRequires: alsa-lib-devel
%{?with_gtk:BuildRequires: atk-devel}
%{?with_cups:BuildRequires: cups-devel}
BuildRequires: gdb
BuildRequires: glib2-devel >= 2.0.0
%{?with_gtk:BuildRequires: gtk+2-devel >= 2:2.18}
+%{?with_kms:BuildRequires: libdrm-devel}
# see dependency on libicu version below
BuildRequires: libicu-devel < %{next_icu_abi}
BuildRequires: libicu-devel >= %{icu_abi}
%{?with_pgsql:BuildRequires: postgresql-backend-devel}
%{?with_pgsql:BuildRequires: postgresql-devel}
BuildRequires: pulseaudio-devel >= 0.9.10
+%{?with_qch:BuildRequires: qt5-assistant >= 5.2}
BuildRequires: rpmbuild(macros) >= 1.654
BuildRequires: sed >= 4.0
%{?with_sqlite2:BuildRequires: sqlite-devel}
Summary: Qt5 Bootstrap library - development files
Summary(pl.UTF-8): Biblioteka Qt5 Bootstrap - pliki programistyczne
Group: Development/Libraries
-# for (subset of) QtCore headers
-Requires: QtCore-devel = %{version}-%{release}
+# for (subset of) Qt5Core headers
+Requires: Qt5Core-devel = %{version}-%{release}
Requires: zlib-devel
%description -n Qt5Bootstrap-devel
Requires: OpenGL-devel
Requires: Qt5Core-devel = %{version}-%{release}
Requires: Qt5Gui = %{version}-%{release}
+%{?with_directfb:Requires: Qt5Gui-platform-directfb = %{version}-%{release}}
+%{?with_egl:Requires: Qt5Gui-platform-egl = %{version}-%{release}}
+%{?with_kms:Requires: Qt5Gui-platform-kms = %{version}-%{release}}
Requires: libpng-devel
%description -n Qt5Gui-devel
%description -n Qt5Xml-devel -l pl.UTF-8
Pliki nagłówkowe biblioteki Qt5 Xml.
+%package -n qt5-doc-common
+Summary: Common part of Qt5 documentation
+Summary(pl.UTF-8): Część wspólna dokumentacji do Qt5
+Group: Documentation
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
+
+%description -n qt5-doc-common
+Common part of Qt5 documentation, global for all components.
+
+%description -n qt5-doc-common -l pl.UTF-8
+Część wspólna dokumentacji do Qt5 ("global", dla wszystkich
+elementów).
+
%package doc
-Summary: Documentation for Qt5 application framework base components
-Summary(pl.UTF-8): Dokumentacja do podstawowych komponentów szkieletu aplikacji Qt5
+Summary: HTML documentation for Qt5 application framework base components
+Summary(pl.UTF-8): Dokumentacja HTML do podstawowych komponentów szkieletu aplikacji Qt5
Group: Documentation
+Requires: qt5-doc-common = %{version}-%{release}
%if "%{_rpmversion}" >= "5"
BuildArch: noarch
%endif
%description doc
-Documentation for Qt5 application framework base components.
+HTML documentation for Qt5 application framework base components.
%description doc -l pl.UTF-8
-Dokumentacja do podstawowych komponentów szkieletu aplikacji Qt5.
+Dokumentacja HTML do podstawowych komponentów szkieletu aplikacji Qt5.
+
+%package doc-qch
+Summary: QCH documentation for Qt5 application framework base components
+Summary(pl.UTF-8): Dokumentacja QCH do podstawowych komponentów szkieletu aplikacji Qt5
+Group: Documentation
+Requires: qt5-doc-common = %{version}-%{release}
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
+
+%description doc-qch
+QCH documentation for Qt5 application framework base components.
+
+%description doc-qch -l pl.UTF-8
+Dokumentacja QCH do podstawowych komponentów szkieletu aplikacji Qt5.
%package examples
Summary: Examples for Qt5 application framework base components
-icu \
-largefile \
-nis \
+ %{!?with_egl:-no-eglfs} \
+ %{!?with_kms:-no-kms} \
-no-rpath \
-no-separate-debug-info \
- %{!?with_sse:-no-sse} \
%{!?with_sse2:-no-sse2} \
%{!?with_sse3:-no-sse3} \
%{!?with_ssse3:-no-ssse3} \
# use just built qdoc instead of requiring already installed qt5-build
wd="$(pwd)"
-%{__sed} -i -e 's|%{qt5dir}/bin/qdoc|LD_LIBRARY_PATH='${wd}'/lib$${LD_LIBRARY_PATH:+:$$LD_LIBRARY_PATH} '${wd}'/bin/qdoc|' src/*/Makefile
-# build only HTML docs (qch docs require qhelpgenerator)
-%{__make} html_docs
+%{__sed} -i -e 's|%{qt5dir}/bin/qdoc|LD_LIBRARY_PATH='${wd}'/lib$${LD_LIBRARY_PATH:+:$$LD_LIBRARY_PATH} '${wd}'/bin/qdoc|' src/*/Makefile qmake/Makefile.qmake-docs
+# build only HTML docs if without qch (which require qhelpgenerator)
+%{__make} %{!?with_qch:html_}docs
%install
rm -rf $RPM_BUILD_ROOT
%{__make} install \
INSTALL_ROOT=$RPM_BUILD_ROOT
-%{__make} install_html_docs \
+%{__make} install_%{!?with_qch:html_}docs \
INSTALL_ROOT=$RPM_BUILD_ROOT
# kill unnecessary -L%{_libdir} from *.la, *.prl, *.pc
# Prepare some files list
ifecho() {
- RESULT=`echo $RPM_BUILD_ROOT$2 2>/dev/null`
- [ "$RESULT" == "" ] && return # XXX this is never true due $RPM_BUILD_ROOT being set
- r=`echo $RESULT | awk '{ print $1 }'`
-
+ r="$RPM_BUILD_ROOT$2"
if [ -d "$r" ]; then
echo "%%dir $2" >> $1.files
elif [ -x "$r" ] ; then
return 1
fi
}
+ifecho_tree() {
+ ifecho $1 $2
+ for f in `find $RPM_BUILD_ROOT$2 -printf "%%P "`; do
+ ifecho $1 $2/$f
+ done
+}
echo "%defattr(644,root,root,755)" > examples.files
-ifecho examples %{_examplesdir}/qt5
-for f in `find $RPM_BUILD_ROOT%{_examplesdir}/qt5 -printf "%%P "`; do
- ifecho examples %{_examplesdir}/qt5/$f
-done
+ifecho_tree examples %{_examplesdir}/qt5/dbus
+ifecho_tree examples %{_examplesdir}/qt5/gestures
+ifecho_tree examples %{_examplesdir}/qt5/gui
+ifecho_tree examples %{_examplesdir}/qt5/ipc
+ifecho_tree examples %{_examplesdir}/qt5/json
+ifecho_tree examples %{_examplesdir}/qt5/network
+ifecho_tree examples %{_examplesdir}/qt5/opengl
+ifecho_tree examples %{_examplesdir}/qt5/qpa
+ifecho_tree examples %{_examplesdir}/qt5/qtconcurrent
+ifecho_tree examples %{_examplesdir}/qt5/qtestlib
+ifecho_tree examples %{_examplesdir}/qt5/sql
+ifecho_tree examples %{_examplesdir}/qt5/threads
+ifecho_tree examples %{_examplesdir}/qt5/tools
+ifecho_tree examples %{_examplesdir}/qt5/touch
+ifecho_tree examples %{_examplesdir}/qt5/widgets
+ifecho_tree examples %{_examplesdir}/qt5/xml
%clean
rm -rf $RPM_BUILD_ROOT
%{_libdir}/libQt5Bootstrap.a
%{_libdir}/libQt5Bootstrap.prl
%{_pkgconfigdir}/Qt5Bootstrap.pc
+%{qt5dir}/mkspecs/modules/qt_lib_bootstrap_private.pri
%files -n Qt5Concurrent
%defattr(644,root,root,755)
%{_includedir}/qt5/QtConcurrent
%{_pkgconfigdir}/Qt5Concurrent.pc
%{_libdir}/cmake/Qt5Concurrent
+%{qt5dir}/mkspecs/modules/qt_lib_concurrent.pri
+%{qt5dir}/mkspecs/modules/qt_lib_concurrent_private.pri
%files -n Qt5Core
%defattr(644,root,root,755)
+%doc LGPL_EXCEPTION.txt header.*
%attr(755,root,root) %{_libdir}/libQt5Core.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libQt5Core.so.5
%dir /etc/qt5
%dir %{qt5dir}
%dir %{qt5dir}/bin
+%dir %{qt5dir}/mkspecs
+%dir %{qt5dir}/mkspecs/modules
%dir %{qt5dir}/plugins
%files -n Qt5Core-devel
%{_pkgconfigdir}/Qt5Core.pc
%{_libdir}/cmake/Qt5
%{_libdir}/cmake/Qt5Core
+%{qt5dir}/mkspecs/modules/qt_lib_core.pri
+%{qt5dir}/mkspecs/modules/qt_lib_core_private.pri
%files -n Qt5DBus
%defattr(644,root,root,755)
%{_includedir}/qt5/QtDBus
%{_pkgconfigdir}/Qt5DBus.pc
%{_libdir}/cmake/Qt5DBus
+%{qt5dir}/mkspecs/modules/qt_lib_dbus.pri
+%{qt5dir}/mkspecs/modules/qt_lib_dbus_private.pri
%files -n Qt5Gui
%defattr(644,root,root,755)
%endif
%if %{with kms}
-# TODO; requires GLESv2 instead of GL
%files -n Qt5Gui-platform-kms
%defattr(644,root,root,755)
# R: EGL GLESv2 libdrm libgbm udev-libs
%endif
%if %{with egl}
-# TODO; requires GLESv2 instead of GL
%files -n Qt5Gui-platform-egl
%defattr(644,root,root,755)
# R: egl fontconfig freetype (for two following)
%{_includedir}/qt5/QtGui
%{_pkgconfigdir}/Qt5Gui.pc
%{_libdir}/cmake/Qt5Gui
+%{qt5dir}/mkspecs/modules/qt_lib_gui.pri
+%{qt5dir}/mkspecs/modules/qt_lib_gui_private.pri
%files -n Qt5Network
%defattr(644,root,root,755)
%{_includedir}/qt5/QtNetwork
%{_pkgconfigdir}/Qt5Network.pc
%{_libdir}/cmake/Qt5Network
+%{qt5dir}/mkspecs/modules/qt_lib_network.pri
+%{qt5dir}/mkspecs/modules/qt_lib_network_private.pri
%files -n Qt5OpenGL
%defattr(644,root,root,755)
%{_includedir}/qt5/QtOpenGL
%{_pkgconfigdir}/Qt5OpenGL.pc
%{_libdir}/cmake/Qt5OpenGL
+%{qt5dir}/mkspecs/modules/qt_lib_opengl.pri
+%{qt5dir}/mkspecs/modules/qt_lib_opengl_private.pri
%files -n Qt5OpenGLExtensions-devel
%defattr(644,root,root,755)
%{_includedir}/qt5/QtOpenGLExtensions
%{_pkgconfigdir}/Qt5OpenGLExtensions.pc
%{_libdir}/cmake/Qt5OpenGLExtensions
+%{qt5dir}/mkspecs/modules/qt_lib_openglextensions.pri
+%{qt5dir}/mkspecs/modules/qt_lib_openglextensions_private.pri
%files -n Qt5PlatformSupport-devel
%defattr(644,root,root,755)
%{_libdir}/libQt5PlatformSupport.prl
%{_includedir}/qt5/QtPlatformSupport
%{_pkgconfigdir}/Qt5PlatformSupport.pc
+%{qt5dir}/mkspecs/modules/qt_lib_platformsupport_private.pri
%files -n Qt5PrintSupport
%defattr(644,root,root,755)
%{_includedir}/qt5/QtPrintSupport
%{_pkgconfigdir}/Qt5PrintSupport.pc
%{_libdir}/cmake/Qt5PrintSupport
+%{qt5dir}/mkspecs/modules/qt_lib_printsupport.pri
+%{qt5dir}/mkspecs/modules/qt_lib_printsupport_private.pri
%files -n Qt5Sql
%defattr(644,root,root,755)
%{_includedir}/qt5/QtSql
%{_pkgconfigdir}/Qt5Sql.pc
%{_libdir}/cmake/Qt5Sql
+%{qt5dir}/mkspecs/modules/qt_lib_sql.pri
+%{qt5dir}/mkspecs/modules/qt_lib_sql_private.pri
%files -n Qt5Test
%defattr(644,root,root,755)
%{_includedir}/qt5/QtTest
%{_pkgconfigdir}/Qt5Test.pc
%{_libdir}/cmake/Qt5Test
+%{qt5dir}/mkspecs/modules/qt_lib_testlib.pri
+%{qt5dir}/mkspecs/modules/qt_lib_testlib_private.pri
%files -n Qt5Widgets
%defattr(644,root,root,755)
%{_includedir}/qt5/QtWidgets
%{_pkgconfigdir}/Qt5Widgets.pc
%{_libdir}/cmake/Qt5Widgets
+%{qt5dir}/mkspecs/modules/qt_lib_widgets.pri
+%{qt5dir}/mkspecs/modules/qt_lib_widgets_private.pri
%files -n Qt5Xml
%defattr(644,root,root,755)
%{_includedir}/qt5/QtXml
%{_pkgconfigdir}/Qt5Xml.pc
%{_libdir}/cmake/Qt5Xml
+%{qt5dir}/mkspecs/modules/qt_lib_xml.pri
+%{qt5dir}/mkspecs/modules/qt_lib_xml_private.pri
+
+%files -n qt5-doc-common
+%defattr(644,root,root,755)
+%dir %{_docdir}/qt5-doc
+%{_docdir}/qt5-doc/global
%files doc
%defattr(644,root,root,755)
-%{_docdir}/qt5-doc
+%{_docdir}/qt5-doc/qdoc
+%{_docdir}/qt5-doc/qmake
+%{_docdir}/qt5-doc/qtconcurrent
+%{_docdir}/qt5-doc/qtcore
+%{_docdir}/qt5-doc/qtdbus
+%{_docdir}/qt5-doc/qtgui
+%{_docdir}/qt5-doc/qtnetwork
+%{_docdir}/qt5-doc/qtopengl
+%{_docdir}/qt5-doc/qtprintsupport
+%{_docdir}/qt5-doc/qtsql
+%{_docdir}/qt5-doc/qttestlib
+%{_docdir}/qt5-doc/qtwidgets
+%{_docdir}/qt5-doc/qtxml
+
+%if %{with qch}
+%files doc-qch
+%defattr(644,root,root,755)
+%{_docdir}/qt5-doc/qdoc.qch
+%{_docdir}/qt5-doc/qmake.qch
+%{_docdir}/qt5-doc/qtconcurrent.qch
+%{_docdir}/qt5-doc/qtcore.qch
+%{_docdir}/qt5-doc/qtdbus.qch
+%{_docdir}/qt5-doc/qtgui.qch
+%{_docdir}/qt5-doc/qtnetwork.qch
+%{_docdir}/qt5-doc/qtopengl.qch
+%{_docdir}/qt5-doc/qtprintsupport.qch
+%{_docdir}/qt5-doc/qtsql.qch
+%{_docdir}/qt5-doc/qttestlib.qch
+%{_docdir}/qt5-doc/qtwidgets.qch
+%{_docdir}/qt5-doc/qtxml.qch
+%endif
%files examples -f examples.files
+%dir %{_examplesdir}/qt5
+%doc %{_examplesdir}/qt5/README
+%{_examplesdir}/qt5/examples.pro
%files -n qt5-build
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/qmake-qt5
%attr(755,root,root) %{qt5dir}/bin/qmake
-%{qt5dir}/mkspecs
+%{qt5dir}/mkspecs/aix-*
+%{qt5dir}/mkspecs/android-*
+%{qt5dir}/mkspecs/blackberry-*
+%{qt5dir}/mkspecs/common
+%{qt5dir}/mkspecs/cygwin-*
+%{qt5dir}/mkspecs/darwin-*
+%{qt5dir}/mkspecs/devices
+%{qt5dir}/mkspecs/features
+%{qt5dir}/mkspecs/freebsd-*
+%{qt5dir}/mkspecs/hpux-*
+%{qt5dir}/mkspecs/hpuxi-*
+%{qt5dir}/mkspecs/hurd-*
+%{qt5dir}/mkspecs/irix-*
+%{qt5dir}/mkspecs/linux-*
+%{qt5dir}/mkspecs/lynxos-*
+%{qt5dir}/mkspecs/macx-*
+%{qt5dir}/mkspecs/netbsd-*
+%{qt5dir}/mkspecs/openbsd-*
+%{qt5dir}/mkspecs/qnx-*
+%{qt5dir}/mkspecs/sco-*
+%{qt5dir}/mkspecs/solaris-*
+%{qt5dir}/mkspecs/tru64-*
+%{qt5dir}/mkspecs/unixware-*
+%{qt5dir}/mkspecs/unsupported
+%{qt5dir}/mkspecs/win32-*
+%{qt5dir}/mkspecs/wince60standard-*
+%{qt5dir}/mkspecs/wince70embedded-*
+%{qt5dir}/mkspecs/winphone-*
+%{qt5dir}/mkspecs/winrt-*
+%{qt5dir}/mkspecs/*.pri