]> git.pld-linux.org Git - packages/qt5-qtbase.git/blobdiff - qt5-qtbase.spec
- rel 5
[packages/qt5-qtbase.git] / qt5-qtbase.spec
index 04a8611855b35799dcd1e49cf7c17f18f9676fac..70dd7384d077e20d4cbba6ec8ddd6918530117de 100644 (file)
@@ -1,7 +1,16 @@
 # TODO: separate more plugins? (think of qxcb when there are more commonly used platforms)
 #
+# Note on packaging .cmake files for plugins:
+# Base Qt5${component}Config.cmake file includes all existing Qt5${component}_*Plugin.cmake
+# files, which trigger check for presence of plugin module in filesystem.
+# Thus, for plugins separated into subpackages, we package plugins .cmake file
+# together with module, and the rest of .cmake files in appropriate -devel subpackage.
+#
 # Conditional build:
 %bcond_with    static_libs     # static libraries [incomplete support in .spec]
+# -- build targets
+%bcond_without qch             # QCH documentation
+%bcond_without qm              # QM translations
 # -- features
 %bcond_without cups            # CUPS printing support
 %bcond_without directfb        # DirectFB platform support
@@ -9,7 +18,6 @@
 %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_with    systemd         # logging to journald
 %bcond_without tslib           # tslib support
 # -- databases
 %define                with_sse2       1
 %endif
 
-%define                icu_abi         53
+%define                icu_abi         54
 %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.0
-Release:       1
+Version:       5.3.1
+Release:       5
 # 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: 4bc43a72e1b3d804171e5b52640e8d96
+# Source0-md5: 572c9953847d391f2d33b420bbcdca46
+Source1:       http://download.qt-project.org/official_releases/qt/5.3/%{version}/submodules/qttranslations-opensource-src-%{version}.tar.xz
+# Source1-md5: d43878fc7a5b9fdee03039770dbac1fa
 Patch0:                qtbase-oracle-instantclient.patch
 URL:           http://qt-project.org/
 %{?with_directfb:BuildRequires:        DirectFB-devel}
@@ -73,7 +83,7 @@ BuildRequires:        alsa-lib-devel
 BuildRequires: dbus-devel >= 1.2
 BuildRequires: fontconfig-devel
 %{?with_freetds:BuildRequires: freetds-devel}
-BuildRequires: freetype-devel >= 1:2.0.0
+BuildRequires: freetype-devel >= 2.1.3
 %{?with_pch:BuildRequires:     gcc >= 5:4.0}
 BuildRequires: gdb
 BuildRequires: glib2-devel >= 2.0.0
@@ -95,6 +105,7 @@ BuildRequires:       pkgconfig
 %{?with_pgsql:BuildRequires:   postgresql-devel}
 BuildRequires: pulseaudio-devel >= 0.9.10
 %{?with_qch:BuildRequires:     qt5-assistant >= 5.2}
+%{?with_qm:BuildRequires:      qt5-linguist >= 5.2}
 BuildRequires: rpmbuild(macros) >= 1.654
 BuildRequires: sed >= 4.0
 %{?with_sqlite2:BuildRequires: sqlite-devel}
@@ -330,9 +341,6 @@ Group:              Development/Libraries
 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
@@ -427,7 +435,7 @@ Requires:   Qt5Core-devel = %{version}-%{release}
 Requires:      Qt5DBus-devel = %{version}-%{release}
 Requires:      Qt5Gui-devel = %{version}-%{release}
 Requires:      fontconfig-devel
-Requires:      freetype-devel
+Requires:      freetype-devel >= 2.1.3
 Requires:      xorg-lib-libX11-devel
 Requires:      xorg-lib-libXrender-devel
 Requires:      xorg-lib-libXext-devel
@@ -783,7 +791,7 @@ Qt5 makefile generator.
 Generator plików makefile dla aplikacji Qt5.
 
 %prep
-%setup -q -n %{orgname}-opensource-src-%{version}
+%setup -q -n %{orgname}-opensource-src-%{version} %{?with_qm:-a1}
 %patch0 -p1
 
 %{__sed} -i -e 's,usr/X11R6/,usr/,g' mkspecs/linux-g++-64/qmake.conf
@@ -828,7 +836,6 @@ COMMONOPT=" \
        -libdir %{_libdir} \
        -plugindir %{qt5dir}/plugins \
        -datadir %{_datadir}/qt5 \
-       -translationdir %{_localedir} \
        -sysconfdir %{_sysconfdir}/qt5 \
        -examplesdir %{_examplesdir}/qt5 \
 %if %{with mysql}
@@ -929,6 +936,14 @@ wd="$(pwd)"
 # build only HTML docs if without qch (which require qhelpgenerator)
 %{__make} %{!?with_qch:html_}docs
 
+%if %{with qm}
+export QMAKEPATH=$(pwd)
+cd qttranslations-opensource-src-%{version}
+../bin/qmake
+%{__make}
+cd ..
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{/etc/qt5,%{_bindir},%{_pkgconfigdir}}
@@ -939,6 +954,18 @@ install -d $RPM_BUILD_ROOT{/etc/qt5,%{_bindir},%{_pkgconfigdir}}
 %{__make} install_%{!?with_qch:html_}docs \
        INSTALL_ROOT=$RPM_BUILD_ROOT
 
+%if %{with qm}
+%{__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
+%else
+install -d $RPM_BUILD_ROOT%{_datadir}/qt5/translations
+%endif
+
+# external plugins loaded from qtbase libs
+install -d $RPM_BUILD_ROOT%{qt5dir}/plugins/iconengines
+
 # kill unnecessary -L%{_libdir} from *.la, *.prl, *.pc
 %{__sed} -i -e "s,-L%{_libdir} \?,,g" \
        $RPM_BUILD_ROOT%{_libdir}/*.{la,prl} \
@@ -1003,6 +1030,21 @@ ifecho_tree examples %{_examplesdir}/qt5/touch
 ifecho_tree examples %{_examplesdir}/qt5/widgets
 ifecho_tree examples %{_examplesdir}/qt5/xml
 
+# find_lang --with-qm supports only PLD qt3/qt4 specific %{_datadir}/locale/*/LC_MESSAGES layout
+find_qt5_qm()
+{
+       name="$1"
+       find $RPM_BUILD_ROOT%{_datadir}/qt5/translations -name "${name}_*.qm" | \
+               sed -e "s:^$RPM_BUILD_ROOT::" \
+                   -e 's:\(.*/'$name'_\)\([a-z][a-z][a-z]\?\)\(_[A-Z][A-Z]\)\?\(\.qm\)$:%lang(\2\3) \1\2\3\4:'
+}
+
+echo '%defattr(644,root,root,755)' > qtbase.lang
+%if %{with qm}
+find_qt5_qm qt >> qtbase.lang
+find_qt5_qm qtbase >> qtbase.lang
+%endif
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -1062,7 +1104,7 @@ rm -rf $RPM_BUILD_ROOT
 %{qt5dir}/mkspecs/modules/qt_lib_concurrent.pri
 %{qt5dir}/mkspecs/modules/qt_lib_concurrent_private.pri
 
-%files -n Qt5Core
+%files -n Qt5Core -f qtbase.lang
 %defattr(644,root,root,755)
 %doc LGPL_EXCEPTION.txt header.* dist/{README,changes-*}
 %attr(755,root,root) %{_libdir}/libQt5Core.so.*.*.*
@@ -1073,6 +1115,8 @@ rm -rf $RPM_BUILD_ROOT
 %dir %{qt5dir}/mkspecs
 %dir %{qt5dir}/mkspecs/modules
 %dir %{qt5dir}/plugins
+%dir %{_datadir}/qt5
+%dir %{_datadir}/qt5/translations
 
 %files -n Qt5Core-devel
 %defattr(644,root,root,755)
@@ -1114,6 +1158,8 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{qt5dir}/plugins/generic/libqevdevmouseplugin.so
 %attr(755,root,root) %{qt5dir}/plugins/generic/libqevdevtabletplugin.so
 %attr(755,root,root) %{qt5dir}/plugins/generic/libqevdevtouchplugin.so
+# loaded from src/gui/image/qicon.cpp
+%dir %{qt5dir}/plugins/iconengines
 # loaded from src/gui/image/qimage{reader,writer}.cpp
 %dir %{qt5dir}/plugins/imageformats
 %attr(755,root,root) %{qt5dir}/plugins/imageformats/libqgif.so
@@ -1137,12 +1183,15 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqxcb.so
 # loaded from src/gui/kernel/qplatformthemefactory.cpp
 %dir %{qt5dir}/plugins/platformthemes
+# common for base -devel and plugin-specific files
+%dir %{_libdir}/cmake/Qt5Gui
 
 %if %{with tslib}
 %files -n Qt5Gui-generic-tslib
 %defattr(644,root,root,755)
 # R: tslib
 %attr(755,root,root) %{qt5dir}/plugins/generic/libqtslibplugin.so
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QTsLibPlugin.cmake
 %endif
 
 %if %{with directfb}
@@ -1150,6 +1199,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: DirectFB fontconfig freetype
 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqdirectfb.so
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QDirectFbIntegrationPlugin.cmake
 %endif
 
 %if %{with kms}
@@ -1157,6 +1207,7 @@ rm -rf $RPM_BUILD_ROOT
 %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
 %endif
 
 %if %{with egl}
@@ -1165,6 +1216,8 @@ rm -rf $RPM_BUILD_ROOT
 # R: egl fontconfig freetype (for two following)
 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqeglfs.so
 %attr(755,root,root) %{qt5dir}/plugins/platforms/libqminimalegl.so
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QEglFSIntegrationPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QMinimalEglIntegrationPlugin.cmake
 %endif
 
 %if %{with gtk}
@@ -1172,6 +1225,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: gtk+2
 %attr(755,root,root) %{qt5dir}/plugins/platformthemes/libqgtk2.so
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QGtk2ThemePlugin.cmake
 %endif
 
 %files -n Qt5Gui-devel
@@ -1180,7 +1234,20 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libQt5Gui.prl
 %{_includedir}/qt5/QtGui
 %{_pkgconfigdir}/Qt5Gui.pc
-%{_libdir}/cmake/Qt5Gui
+%{_libdir}/cmake/Qt5Gui/Qt5GuiConfig*.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QEvdevKeyboardPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QEvdevMousePlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QEvdevTabletPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QEvdevTouchScreenPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QGifPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QICOPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QJpegPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QComposePlatformInputContextPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QIbusPlatformInputContextPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QLinuxFbIntegrationPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QMinimalIntegrationPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QOffscreenIntegrationPlugin.cmake
+%{_libdir}/cmake/Qt5Gui/Qt5Gui_QXcbIntegrationPlugin.cmake
 %{qt5dir}/mkspecs/modules/qt_lib_gui.pri
 %{qt5dir}/mkspecs/modules/qt_lib_gui_private.pri
 
@@ -1202,7 +1269,11 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libQt5Network.prl
 %{_includedir}/qt5/QtNetwork
 %{_pkgconfigdir}/Qt5Network.pc
-%{_libdir}/cmake/Qt5Network
+%dir %{_libdir}/cmake/Qt5Network
+%{_libdir}/cmake/Qt5Network/Qt5NetworkConfig*.cmake
+%{_libdir}/cmake/Qt5Network/Qt5Network_QConnmanEnginePlugin.cmake
+%{_libdir}/cmake/Qt5Network/Qt5Network_QGenericEnginePlugin.cmake
+%{_libdir}/cmake/Qt5Network/Qt5Network_QNetworkManagerEnginePlugin.cmake
 %{qt5dir}/mkspecs/modules/qt_lib_network.pri
 %{qt5dir}/mkspecs/modules/qt_lib_network_private.pri
 
@@ -1257,7 +1328,11 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libQt5PrintSupport.prl
 %{_includedir}/qt5/QtPrintSupport
 %{_pkgconfigdir}/Qt5PrintSupport.pc
-%{_libdir}/cmake/Qt5PrintSupport
+%dir %{_libdir}/cmake/Qt5PrintSupport
+%{_libdir}/cmake/Qt5PrintSupport/Qt5PrintSupportConfig*.cmake
+%if %{with cups}
+%{_libdir}/cmake/Qt5PrintSupport/Qt5PrintSupport_QCupsPrinterSupportPlugin.cmake
+%endif
 %{qt5dir}/mkspecs/modules/qt_lib_printsupport.pri
 %{qt5dir}/mkspecs/modules/qt_lib_printsupport_private.pri
 
@@ -1267,12 +1342,15 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %ghost %{_libdir}/libQt5Sql.so.5
 # loaded from src/sql/kernel/qsqldatabase.cpp
 %dir %{qt5dir}/plugins/sqldrivers
+# common for base -devel and plugin-specific files
+%dir %{_libdir}/cmake/Qt5Sql
 
 %if %{with db2}
 %files -n Qt5Sql-sqldriver-db2
 %defattr(644,root,root,755)
 # R: (proprietary) DB2 libs
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqldb2.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QDB2DriverPlugin.cmake
 %endif
 
 %if %{with ibase}
@@ -1280,6 +1358,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: Firebird-lib
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqlibase.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QIBaseDriverPlugin.cmake
 %endif
 
 %if %{with sqlite3}
@@ -1287,6 +1366,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: sqlite3
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqlite.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QSQLiteDriverPlugin.cmake
 %endif
 
 %if %{with sqlite2}
@@ -1294,6 +1374,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: sqlite >= 2
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqlite2.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QSQLite2DriverPlugin.cmake
 %endif
 
 %if %{with mysql}
@@ -1301,6 +1382,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: mysql-libs
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqlmysql.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QMYSQLDriverPlugin.cmake
 %endif
 
 %if %{with oci}
@@ -1308,6 +1390,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: (proprietary) Oracle libs
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqloci.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QOCIDriverPlugin.cmake
 %endif
 
 %if %{with odbc}
@@ -1315,6 +1398,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: unixODBC
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqlodbc.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QODBCDriverPlugin.cmake
 %endif
 
 %if %{with pgsql}
@@ -1322,6 +1406,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: postgresql-libs
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqlpsql.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QPSQLDriverPlugin.cmake
 %endif
 
 %if %{with freetds}
@@ -1329,6 +1414,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # R: freetds
 %attr(755,root,root) %{qt5dir}/plugins/sqldrivers/libqsqltds.so
+%{_libdir}/cmake/Qt5Sql/Qt5Sql_QTDSDriverPlugin.cmake
 %endif
 
 %files -n Qt5Sql-devel
@@ -1337,7 +1423,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libQt5Sql.prl
 %{_includedir}/qt5/QtSql
 %{_pkgconfigdir}/Qt5Sql.pc
-%{_libdir}/cmake/Qt5Sql
+%{_libdir}/cmake/Qt5Sql/Qt5SqlConfig*.cmake
 %{qt5dir}/mkspecs/modules/qt_lib_sql.pri
 %{qt5dir}/mkspecs/modules/qt_lib_sql_private.pri
 
@@ -1369,7 +1455,10 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libQt5Widgets.prl
 %{_includedir}/qt5/QtWidgets
 %{_pkgconfigdir}/Qt5Widgets.pc
-%{_libdir}/cmake/Qt5Widgets
+%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
 
This page took 0.103997 seconds and 4 git commands to generate.