#
# Conditional build:
%bcond_with static_libs # static libraries [incomplete support in .spec]
+%bcond_with bootstrap # disable features to able to build without installed qt5
# -- build targets
%bcond_without qch # QCH documentation
%bcond_without qm # QM translations
%bcond_without pch # pch (pre-compiled headers) in qmake
%bcond_with systemd # logging to journald
%bcond_without tslib # tslib support
+%bcond_with openvg # OpenVG support
# -- databases
%bcond_without freetds # TDS (Sybase/MS SQL) plugin
%bcond_without mysql # MySQL plugin
%bcond_with avx # use AVX instructions (Intel since Sandy Bridge, AMD since Bulldozer)
%bcond_with avx2 # use AVX2 instructions (Intel since Haswell)
-%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 pentium4 %{x8664}
+%ifarch pentium4 %{x8664} x32
%define with_sse2 1
%endif
-%define icu_abi 54
+%if %{with bootstrap}
+%undefine with_qch
+%undefine with_qm
+%endif
+
+%define icu_abi 55
%define next_icu_abi %(echo $((%{icu_abi} + 1)))
%define orgname qtbase
Summary: Qt5 - base components
Summary(pl.UTF-8): Biblioteka Qt5 - podstawowe komponenty
Name: qt5-%{orgname}
-Version: 5.3.2
-Release: 1
+Version: 5.5.0
+Release: 0.1
# 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.3/%{version}/submodules/%{orgname}-opensource-src-%{version}.tar.xz
-# Source0-md5: 563e2b10274171f1184b3fd7260b4991
-Source1: http://download.qt-project.org/official_releases/qt/5.3/%{version}/submodules/qttranslations-opensource-src-%{version}.tar.xz
-# Source1-md5: f2332bedc9c1ac8e762c62cfa71aa640
+Source0: http://download.qt-project.org/official_releases/qt/5.5/%{version}/submodules/%{orgname}-opensource-src-%{version}.tar.xz
+# Source0-md5: 252613b5a180c94d7196d10467a4f08b
+Source1: http://download.qt-project.org/official_releases/qt/5.5/%{version}/submodules/qttranslations-opensource-src-%{version}.tar.xz
+# Source1-md5: 423cccbace459623a9a173cede968cbe
Patch0: qtbase-oracle-instantclient.patch
+Patch1: %{name}-system_cacerts.patch
URL: http://qt-project.org/
%{?with_directfb:BuildRequires: DirectFB-devel}
BuildRequires: EGL-devel
%{?with_ibase:BuildRequires: Firebird-devel}
-BuildRequires: Mesa-libOpenVG-devel
+%{?with_openvg:BuildRequires: Mesa-libOpenVG-devel}
%{?with_kms:BuildRequires: Mesa-libgbm-devel}
BuildRequires: OpenGL-devel
%{?with_kms:BuildRequires: OpenGLESv2-devel}
BuildRequires: xorg-lib-libXrandr-devel
BuildRequires: xorg-lib-libXrender-devel
BuildRequires: xorg-lib-libxkbcommon-devel >= 0.4.1
+BuildRequires: xorg-lib-libxkbcommon-x11-devel >= 0.4.1
BuildRequires: xz
BuildRequires: zlib-devel
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description -n Qt5Widgets
The Qt5 Widgets library extends Qt 5 GUI with C++ widget
-functionality. This package contains also qtaccessiblewidgets plugin
-for Qt5 Gui library.
+functionality.
%description -n Qt5Widgets -l pl.UTF-8
Biblioteka Qt5 Widgets rozszerza graficzny interfejs Qt 5 o
-funkcjonalność widgetów C++. Pakiet zawiera także wtyczkę
-qtaccessiblewidgets dla biblioteki Qt5 Gui.
+funkcjonalność widgetów C++.
%package -n Qt5Widgets-devel
Summary: Qt5 Widgets library - development files
%package -n qt5-build
Summary: Qt5 build tools
-Summary(pl.UTF-8): Narzędzia do budowania dla Qt4
+Summary(pl.UTF-8): Narzędzia do budowania dla Qt5
Group: Development/Tools
%description -n qt5-build
%prep
%setup -q -n %{orgname}-opensource-src-%{version} %{?with_qm:-a1}
%patch0 -p1
+%patch1 -p1
%{__sed} -i -e 's,usr/X11R6/,usr/,g' mkspecs/linux-g++-64/qmake.conf
-system-xkbcommon \
-system-zlib \
%{?with_tslib:-tslib} \
+ -%{!?with_openvg:no-}openvg \
-xcursor \
-xfixes \
-xinerama \
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{/etc/qt5,%{_bindir},%{_pkgconfigdir}}
+# for QtSolutions (qtlockedfile, qtsingleapplication, etc)
+install -d $RPM_BUILD_ROOT%{_includedir}/qt5/QtSolutions
+
%{__make} install \
INSTALL_ROOT=$RPM_BUILD_ROOT
%{__make} -C qttranslations-opensource-src-%{version} install \
INSTALL_ROOT=$RPM_BUILD_ROOT
# keep only qt and qtbase
-%{__rm} $RPM_BUILD_ROOT%{_datadir}/qt5/translations/{assistant,designer,linguist,qmlviewer,qt_help,qtconfig,qtconnectivity,qtdeclarative,qtlocation,qtmultimedia,qtquick1,qtscript,qtxmlpatterns}_*.qm
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/qt5/translations/{assistant,designer,linguist,qmlviewer,qt_help,qtconfig,qtconnectivity,qtdeclarative,qtlocation,qtmultimedia,qtquick1,qtquickcontrols,qtscript,qtxmlpatterns}_*.qm
%else
install -d $RPM_BUILD_ROOT%{_datadir}/qt5/translations
%endif
# actually drop *.la, follow policy of not packaging them when *.pc exist
%{__rm} $RPM_BUILD_ROOT%{_libdir}/libQt5*.la
-# install tools
-install bin/findtr $RPM_BUILD_ROOT%{qt5dir}/bin
# symlinks in system bin dir
cd $RPM_BUILD_ROOT%{_bindir}
-ln -sf ../%{_lib}/qt5/bin/findtr findtr-qt5
ln -sf ../%{_lib}/qt5/bin/moc moc-qt5
ln -sf ../%{_lib}/qt5/bin/qmake qmake-qt5
ln -sf ../%{_lib}/qt5/bin/uic uic-qt5
}
echo "%defattr(644,root,root,755)" > examples.files
+ifecho_tree examples %{_examplesdir}/qt5/corelib
ifecho_tree examples %{_examplesdir}/qt5/dbus
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
%attr(755,root,root) %{_libdir}/libQt5Core.so
%{_libdir}/libQt5Core.prl
%dir %{_includedir}/qt5
+%dir %{_includedir}/qt5/QtSolutions
%{_includedir}/qt5/QtCore
%{_pkgconfigdir}/Qt5Core.pc
%{_libdir}/cmake/Qt5
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libQt5Gui.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libQt5Gui.so.5
-# loaded from src/gui/accessible/qaccessible.cpp
-%dir %{qt5dir}/plugins/accessible
# loaded from src/gui/kernel/qgenericpluginfactory.cpp
%dir %{qt5dir}/plugins/generic
# R: udev-libs (by all qevdev* plugins)
%files -n Qt5Gui-platform-kms
%defattr(644,root,root,755)
# R: EGL GLESv2 libdrm libgbm udev-libs
-%attr(755,root,root) %{qt5dir}/plugins/platforms/libqkms.so
-%{_libdir}/cmake/Qt5Gui/Qt5Gui_QKmsIntegrationPlugin.cmake
+#%attr(755,root,root) %{qt5dir}/plugins/platforms/libqkms.so
+#%{_libdir}/cmake/Qt5Gui/Qt5Gui_QKmsIntegrationPlugin.cmake
%endif
%if %{with egl}
%attr(755,root,root) %{_libdir}/libQt5Gui.so
%{_libdir}/libQt5Gui.prl
%{_includedir}/qt5/QtGui
+%{_includedir}/qt5/QtPlatformHeaders
%{_pkgconfigdir}/Qt5Gui.pc
%{_libdir}/cmake/Qt5Gui/Qt5GuiConfig*.cmake
%{_libdir}/cmake/Qt5Gui/Qt5Gui_QEvdevKeyboardPlugin.cmake
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libQt5Widgets.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libQt5Widgets.so.5
-# Qt5Gui plugin which requires Qt5Widgets
-%attr(755,root,root) %{qt5dir}/plugins/accessible/libqtaccessiblewidgets.so
%files -n Qt5Widgets-devel
%defattr(644,root,root,755)
%dir %{_libdir}/cmake/Qt5Widgets
%{_libdir}/cmake/Qt5Widgets/Qt5WidgetsConfig*.cmake
%{_libdir}/cmake/Qt5Widgets/Qt5WidgetsMacros.cmake
-%{_libdir}/cmake/Qt5Widgets/Qt5Widgets_AccessibleFactory.cmake
%{qt5dir}/mkspecs/modules/qt_lib_widgets.pri
%{qt5dir}/mkspecs/modules/qt_lib_widgets_private.pri
%{_docdir}/qt5-doc/qtgui
%{_docdir}/qt5-doc/qtnetwork
%{_docdir}/qt5-doc/qtopengl
+%{_docdir}/qt5-doc/qtplatformheaders
%{_docdir}/qt5-doc/qtprintsupport
%{_docdir}/qt5-doc/qtsql
%{_docdir}/qt5-doc/qttestlib
%{_docdir}/qt5-doc/qtgui.qch
%{_docdir}/qt5-doc/qtnetwork.qch
%{_docdir}/qt5-doc/qtopengl.qch
+%{_docdir}/qt5-doc/qtplatformheaders.qch
%{_docdir}/qt5-doc/qtprintsupport.qch
%{_docdir}/qt5-doc/qtsql.qch
%{_docdir}/qt5-doc/qttestlib.qch
%files -n qt5-build
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/findtr-qt5
%attr(755,root,root) %{_bindir}/moc-qt5
%attr(755,root,root) %{_bindir}/qdbuscpp2xml-qt5
%attr(755,root,root) %{_bindir}/qdbusxml2cpp-qt5
%attr(755,root,root) %{_bindir}/qlalr-qt5
%attr(755,root,root) %{_bindir}/rcc-qt5
%attr(755,root,root) %{_bindir}/uic-qt5
-%attr(755,root,root) %{qt5dir}/bin/findtr
%attr(755,root,root) %{qt5dir}/bin/moc
%attr(755,root,root) %{qt5dir}/bin/qdbuscpp2xml
%attr(755,root,root) %{qt5dir}/bin/qdbusxml2cpp
%{qt5dir}/mkspecs/winphone-*
%{qt5dir}/mkspecs/winrt-*
%{qt5dir}/mkspecs/*.pri
+
+%if 0
+# unpackaged files
+ /usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSKmsIntegrationPlugin.cmake
+ /usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSX11IntegrationPlugin.cmake
+ /usr/lib64/cmake/Qt5Gui/Qt5Gui_QTuioTouchPlugin.cmake
+ /usr/lib64/cmake/Qt5Gui/Qt5Gui_QXcbEglIntegrationPlugin.cmake
+ /usr/lib64/cmake/Qt5Gui/Qt5Gui_QXcbGlxIntegrationPlugin.cmake
+ /usr/lib64/libQt5EglDeviceIntegration.prl
+ /usr/lib64/libQt5EglDeviceIntegration.so
+ /usr/lib64/libQt5EglDeviceIntegration.so.5
+ /usr/lib64/libQt5EglDeviceIntegration.so.5.5.0
+ /usr/lib64/libQt5XcbQpa.prl
+ /usr/lib64/libQt5XcbQpa.so
+ /usr/lib64/libQt5XcbQpa.so.5
+ /usr/lib64/libQt5XcbQpa.so.5.5.0
+ /usr/lib64/pkgconfig/Qt5EglDeviceIntegration.pc
+ /usr/lib64/pkgconfig/Qt5XcbQpa.pc
+ /usr/lib64/qt5/mkspecs/haiku-g++/qmake.conf
+ /usr/lib64/qt5/mkspecs/haiku-g++/qplatformdefs.h
+ /usr/lib64/qt5/mkspecs/modules/qt_lib_eglfs_device_lib_private.pri
+ /usr/lib64/qt5/mkspecs/modules/qt_lib_xcb_qpa_lib_private.pri
+ /usr/lib64/qt5/plugins/egldeviceintegrations/libqeglfs-kms-integration.so
+ /usr/lib64/qt5/plugins/egldeviceintegrations/libqeglfs-x11-integration.so
+ /usr/lib64/qt5/plugins/generic/libqtuiotouchplugin.so
+ /usr/lib64/qt5/plugins/xcbglintegrations/libqxcb-egl-integration.so
+ /usr/lib64/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so
+ /usr/share/qt5/translations/qtwebsockets_fr.qm
+%endif