%define _default_patch_fuzz 1 %define _disable_exceptions 1 %define build_bootstrap 0 %{?_with_bootstrap: %{expand: %%global build_bootstrap 1}} %bcond_without postgres %bcond_without mysql %bcond_without sqlite %bcond_without tds %bcond_without cups %bcond_with qvfb %bcond_without docs %bcond_without odbc %bcond_with debug %bcond_with ibase %if %{build_bootstrap} %bcond_without local_phonon_package %else %bcond_with local_phonon_package %endif %define qtmajor 5 %define qtminor 0 %define qtsubminor 2 %define rel 1 %define major_private 1 %define qtversion %{qtmajor}.%{qtminor}.%{qtsubminor} %define libqt %mklibname qt5base %qtmajor %define libqtdevel %mklibname qt5base %qtmajor -d %define libqtcore %mklibname qt5core %qtmajor %define libqtcore_d %mklibname qt5core -d %define libqtcore_p_d %mklibname qt5core-private -d %define libqtconcurrent %mklibname qt5concurrent %qtmajor %define libqtconcurrent_d %mklibname qt5concurrent -d %define libqtconcurrent_p_d %mklibname qt5concurrent-private -d %define libqtdbus %mklibname qt5dbus %qtmajor %define libqtdbus_d %mklibname qt5dbus -d %define libqtdbus_p_d %mklibname qt5dbus-private -d %define libqtsql %mklibname qt5sql %qtmajor %define libqtsql_d %mklibname qt5sql -d %define libqtsql_p_d %mklibname qt5sql-private -d %define libqtgui %mklibname qt5gui %qtmajor %define libqtgui_d %mklibname qt5gui -d %define libqtgui_p_d %mklibname qt5gui-private -d %define libqtnetwork %mklibname qt5network %qtmajor %define libqtnetwork_d %mklibname qt5network -d %define libqtnetwork_p_d %mklibname qt5network-private -d %define libqtopengl %mklibname qt5opengl %qtmajor %define libqtopengl_d %mklibname qt5opengl -d %define libqtopengl_p_d %mklibname qt5opengl-private -d %define libqtprintsupport %mklibname qt5printsupport %qtmajor %define libqtprintsupport_d %mklibname qt5printsupport -d %define libqtprintsupport_p_d %mklibname qt5printsupport-private -d %define libqttest %mklibname qt5test %qtmajor %define libqttest_d %mklibname qt5test -d %define libqttest_p_d %mklibname qt5test-private -d %define libqtwidgets %mklibname qt5widgets %qtmajor %define libqtwidgets_d %mklibname qt5widgets -d %define libqtwidgets_p_d %mklibname qt5widgets-private -d %define libqtxml %mklibname qt5xml %qtmajor %define libqtxml_d %mklibname qt5xml -d %define libqtxml_p_d %mklibname qt5xml-private -d %define libqtbootstrap %mklibname qt5bootstrap %qtmajor %define libqtbootstrap_d %mklibname qt5bootstrap -d %define libqtbootstrap_p_d %mklibname qt5bootstrap-private -d %define libqtplatformsupport %mklibname qt5platformsupport %qtmajor %define libqtplatformsupport_d %mklibname qt5platformsupport -d %define libqtplatformsupport_p_d %mklibname qt5platformsupport-private -d %define _qt5_prefix %_libdir/qt5 %define _qt5_datadir %{_qt5_prefix} %define _qt5_bindir %{_qt5_prefix}/bin %define _qt5_docdir %_docdir/qt5 %define _qt5_libdir %{_qt5_prefix}/lib %define _qt5_includedir %{_qt5_prefix}/include %define _qt5_plugindir %{_qt5_prefix}/plugins %define _qt5_demosdir %{_qt5_prefix}/demos %define _qt5_examplesdir %{_qt5_prefix}/examples %define _qt5_importdir %{_qt5_prefix}/imports %define _qt5_testsdir %{_qt5_prefix}/tests %define _qt5_translationdir %{_datadir}/qt5/translations %define _qt5_sysconfigdir %{_sysconfdir} %define qttarballdir qtbase-opensource-src-%{qtversion} Name: qtbase5 Version: %{qtversion} Release: %mkrel %{rel} Summary: Qt GUI toolkit Group: Development/KDE and Qt License: LGPLv2 with exceptions or GPLv3 with exceptions and GFDL URL: http://www.qt-project.org Source0: http://releases.qt-project.org/qt5/%{version}/submodules_tar/%{qttarballdir}.tar.xz Source2: qt5.macros #Branch Patchs #Trunk Patchs #Patch from Mageia BuildRequires: pkgconfig(xtst) BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(xcb-image) BuildRequires: pkgconfig(xcb-icccm) BuildRequires: pkgconfig(xcb-keysyms) BuildRequires: pkgconfig(xcb-renderutil) BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(gl) BuildRequires: mesa-common-devel BuildRequires: pkgconfig(zlib) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(libpng) BuildRequires: libjpeg-devel BuildRequires: libtiff-devel BuildRequires: libmng-devel BuildRequires: pkgconfig(lcms) BuildRequires: cups-devel BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(fontconfig) BuildRequires: expat-devel BuildRequires: pkgconfig(dbus-1) >= 0.92 BuildRequires: termcap-devel BuildRequires: libpam-devel BuildRequires: readline-devel BuildRequires: perl BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(libxml-2.0) BuildRequires: binutils >= 2.18 # For qtgtk style BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(gstreamer-0.10) BuildRequires: pkgconfig(gstreamer-app-0.10) BuildRequires: pkgconfig(vg) %description Qt is a GUI software toolkit which simplifies the task of writing and maintaining GUI (Graphical User Interface) applications for the X Window System. Qt is written in C++ and is fully object-oriented. This package contains the shared library needed to run Qt applications, as well as the README files for Qt. #------------------------------------------------------------------------------ %package common Summary: Qt%{qtmajor} Config and Language Files Group: Development/KDE and Qt Provides: qt5-common = %version-%release Obsoletes: qt5-common %description common Qt is a GUI software toolkit which simplifies the task of writing and maintaining GUI (Graphical User Interface) applications for the X Window System. Qt is written in C++ and is fully object-oriented. Configuration and language files for Qt%{qtmajor}. %files common %attr(0755,root,root) %{_sysconfdir}/profile.d/* %if "%{_qt5_libdir}" != "%{_libdir}" %_sysconfdir/ld.so.conf.d/* %{_var}/lib/rpm/filetriggers/qt5.* %endif %dir %{_qt5_bindir} %{_qt5_bindir}/qdoc %{_qt5_bindir}/syncqt %dir %{_qt5_plugindir} %{_qt5_plugindir}/generic %{_qt5_plugindir}/bearer %{_qt5_plugindir}/accessible %dir %{_qt5_docdir} %{_qt5_docdir}/global #------------------------------------------------------------------------------ %package examples Summary: Example programs made with Qt%{qtmajor} Group: Documentation Provides: qt5-examples = %version-%release Obsoletes: qt5-examples %description examples Example programs made with Qt%{qtmajor}. %files examples %{_qt5_examplesdir} #------------------------------------------------------------------------------ %if ! %without odbc %package database-plugin-odbc Summary: Qt%{qtmajor} Database ODBC Database Plugin Group: Databases Provides: qt5-database-plugin-odbc = %version-%release Obsoletes: qt5-database-plugin-odbc BuildRequires: unixODBC-devel %description database-plugin-odbc The QODBC driver allows you to connect to an ODBC (Open Database Connectivity) driver manager and access the available data sources. %files database-plugin-odbc %{_qt5_plugindir}/sqldrivers/libqsqlodbc.so %endif #------------------------------------------------------------------------------ %if ! %without mysql %package database-plugin-mysql Summary: Qt%{qtmajor} MYSQL Database Plugin Group: Databases BuildRequires: mysql-devel Provides: qt5-database-plugin-mysql = %version-%release Obsoletes: qt5-database-plugin-mysql %description database-plugin-mysql Database plugin for mysql Qt support. %files database-plugin-mysql %{_qt5_plugindir}/sqldrivers/libqsqlmysql.so %endif #------------------------------------------------------------------------------ %if ! %without sqlite %package database-plugin-sqlite Summary: Qt%{qtmajor} SQLITE Database Plugin Group: Databases BuildRequires: sqlite3-devel Provides: qt5-database-plugin-sqlite = %version-%release Obsoletes: qt5-database-plugin-sqlite %description database-plugin-sqlite The Qt SQLite plugin makes it possible to access SQLite databases. %files database-plugin-sqlite %{_qt5_plugindir}/sqldrivers/libqsqlite.so %endif #------------------------------------------------------------------------------ %if ! %without tds %package database-plugin-tds Summary: Qt%{qtmajor} FREETDS Database Plugin Group: Databases BuildRequires: freetds-devel Provides: qt5-database-plugin-tds = %version-%release Obsoletes: qt5-database-plugin-tds %description database-plugin-tds Database plugin for freetds Qt support. %files database-plugin-tds %{_qt5_plugindir}/sqldrivers/libqsqltds.so %endif #------------------------------------------------------------------------------ %if %with ibase %package database-plugin-ibase Summary: Qt%{qtmajor} Interbase Database Plugin Group: Databases BuildRequires: firebird-devel Provides: qt5-database-plugin-ibase = %version-%release Obsoletes: qt5-database-plugin-ibase %description database-plugin-ibase Database plugin for interbase Qt support. %files database-plugin-ibase %{_qt5_plugindir}/sqldrivers/libqsqlibase.so %endif #------------------------------------------------------------------------------ %if ! %without postgres %package database-plugin-pgsql Summary: Qt%{qtmajor} PGSQL Database Plugin Group: Databases BuildRequires: postgresql-devel BuildRequires: libpq-devel Provides: qt5-database-plugin-pgsql = %version-%release Obsoletes: qt5-database-plugin-pgsql %description database-plugin-pgsql Database plugin for pgsql Qt support. %files database-plugin-pgsql %{_qt5_plugindir}/sqldrivers/libqsqlpsql.so %endif #------------------------------------------------------------------------------ # CORE QT LIBRARIES #------------------------------------------------------------------------------ %package -n %{libqtcore} Summary: Qt%{qtmajor} Component Library Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtcore} Qt%{qtmajor} Component Library. The QtCore module contains core non-GUI functionality. %files -n %{libqtcore} %{_qt5_libdir}/libQt5Core.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqtcore_d} Summary: Devel files needed to build apps based on QtCore Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtcore} = %version Provides: libqtcore5-devel = %version Provides: libqt5core-devel = %version Provides: qt5core-devel = %version Provides: qtcore5-devel = %version %description -n %{libqtcore_d} Devel files needed to build apps based on QtCore. %files -n %{libqtcore_d} %{_qt5_libdir}/libQt5Core.prl %{_qt5_libdir}/libQt5Core.so %{_qt5_libdir}/pkgconfig/Qt5Core.pc %{_qt5_libdir}/cmake/Qt5Core %{_qt5_includedir}/QtCore %exclude %{_qt5_includedir}/QtCore/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtcore_p_d} Summary: Devel files needed to build apps based on QtCore Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqtcore_d} = %version Provides: libqtcore5-private-devel = %version Provides: libqt5core-private-devel = %version Provides: qt5core-private-devel = %version Provides: qtcore5-private-devel = %version %description -n %{libqtcore_p_d} Devel files needed to build apps based on QtCore. %files -n %{libqtcore_p_d} %{_qt5_includedir}/QtCore/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtsql} Summary: Qt%{qtmajor} Component Library Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtsql} Qt%{qtmajor} Component Library. %files -n %{libqtsql} %{_qt5_libdir}/libQt5Sql.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqtsql_d} Summary: Devel files needed to build apps based on QtSql Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtsql} = %version Provides: libqtsql5-devel = %version Provides: libqt5sql-devel = %version Provides: qt5sql-devel = %version Provides: qtsql5-devel = %version %description -n %{libqtsql_d} Devel files needed to build apps based on QtSql. %files -n %{libqtsql_d} %{_qt5_libdir}/libQt5Sql.prl %{_qt5_libdir}/libQt5Sql.so %{_qt5_libdir}/pkgconfig/Qt5Sql.pc %{_qt5_libdir}/cmake/Qt5Sql %{_qt5_includedir}/QtSql %exclude %{_qt5_includedir}/QtSql/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtsql_p_d} Summary: Devel files needed to build apps based on QtSql Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqtsql_d} = %version Provides: libqtsql5-private-devel = %version Provides: libqt5sql-private-devel = %version Provides: qt5sql-private-devel = %version Provides: qtsql5-private-devel = %version %description -n %{libqtsql_p_d} Devel files needed to build apps based on QtSql. %files -n %{libqtsql_p_d} %{_qt5_includedir}/QtSql/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtdbus} Summary: Qt%{qtmajor} Component Library Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtdbus} Qt%{qtmajor} Component Library. The QtCore module contains core non-GUI functionality. %files -n %{libqtdbus} %{_qt5_libdir}/libQt5DBus.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqtdbus_d} Summary: Devel files needed to build apps based on QtCore Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtdbus} = %version Provides: libqtdbus5-devel = %version Provides: libqt5dbus-devel = %version Provides: qt5dbus-devel = %version Provides: qtdbus5-devel = %version %description -n %{libqtdbus_d} Devel files needed to build apps based on QtCore. %files -n %{libqtdbus_d} %{_qt5_libdir}/libQt5DBus.prl %{_qt5_libdir}/libQt5DBus.so %{_qt5_libdir}/pkgconfig/Qt5DBus.pc %{_qt5_libdir}/cmake/Qt5DBus %{_qt5_includedir}/QtDBus %exclude %{_qt5_includedir}/QtDBus/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtdbus_p_d} Summary: Devel files needed to build apps based on QtCore Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqtdbus_d} = %version Provides: libqtdbus5-private-devel = %version Provides: libqt5dbus-private-devel = %version Provides: qt5dbus-private-devel = %version Provides: qtdbus5-private-devel = %version %description -n %{libqtdbus_p_d} Devel files needed to build apps based on QtCore. %files -n %{libqtdbus_p_d} %{_qt5_includedir}/QtDBus/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtconcurrent} Summary: Qt%{qtmajor} 3D Lib Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtconcurrent} Qt%{qtmajor} 3D Lib. %files -n %{libqtconcurrent} %{_qt5_libdir}/libQt5Concurrent.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqtconcurrent_d} Summary: Devel files needed to build apps based on QtConcurrent Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtconcurrent} = %version Provides: libqtconcurrent5-devel = %version Provides: libqt5concurrent-devel = %version Provides: qt5concurrent-devel = %version Provides: qtconcurrent5-devel = %version %description -n %{libqtconcurrent_d} Devel files needed to build apps based on QtConcurrent. %files -n %{libqtconcurrent_d} %{_qt5_libdir}/libQt5Concurrent.so %{_qt5_libdir}/libQt5Concurrent.prl %{_qt5_libdir}/pkgconfig/Qt5Concurrent.pc %{_qt5_libdir}/cmake/Qt5Concurrent %{_qt5_includedir}/QtConcurrent #------------------------------------------------------------------------------ %package -n %{libqtgui} Summary: Qt%{qtmajor} Component Library Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtgui} Qt%{qtmajor} Component Library. The QtGui module extends QtCore with GUI functionality. %files -n %{libqtgui} %{_qt5_libdir}/libQt5Gui.so.%{qtmajor}* %{_qt5_plugindir}/imageformats/ %{_qt5_plugindir}/platforminputcontexts %{_qt5_plugindir}/platforms #------------------------------------------------------------------------------ %package -n %{libqtgui_d} Summary: Devel files needed to build apps based on QtContacts Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtgui} = %version Provides: libqtgui5-devel = %version Provides: libqt5gui-devel = %version Provides: qtgui5-devel = %version Provides: qt5gui-devel = %version %description -n %{libqtgui_d} Devel files needed to build apps based on QtContacts. %files -n %{libqtgui_d} %{_qt5_libdir}/libQt5Gui.prl %{_qt5_libdir}/libQt5Gui.so %{_qt5_libdir}/pkgconfig/Qt5Gui.pc %{_qt5_libdir}/cmake/Qt5Gui %{_qt5_includedir}/QtGui %exclude %{_qt5_includedir}/QtGui/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtgui_p_d} Summary: Devel files needed to build apps based on QtContacts Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqtgui_d} = %version Requires: qt5core-private-devel = %version Provides: libqtgui5-private-devel = %version Provides: libqt5gui-private-devel = %version Provides: qtgui5-private-devel = %version Provides: qt5gui-private-devel = %version %description -n %{libqtgui_p_d} Devel files needed to build apps based on QtContacts. %files -n %{libqtgui_p_d} %{_qt5_includedir}/QtGui/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtnetwork} Summary: Qt%{qtmajor} Component Library Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtnetwork} Qt%{qtmajor} Component Library. The QtNetwork module provides classes to make network programming easier and portable. %files -n %{libqtnetwork} %{_qt5_libdir}/libQt5Network.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqtnetwork_d} Summary: Devel files needed to build apps based on QtNetwork Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtnetwork} = %version Provides: libqtnetwork5-devel = %version Provides: libqt5network-devel = %version Provides: qtnetwork5-devel = %version Provides: qt5network-devel = %version %description -n %{libqtnetwork_d} Devel files needed to build apps based on QtNetwork. %files -n %{libqtnetwork_d} %{_qt5_libdir}/libQt5Network.prl %{_qt5_libdir}/libQt5Network.so %{_qt5_libdir}/pkgconfig/Qt5Network.pc %{_qt5_libdir}/cmake/Qt5Network %{_qt5_includedir}/QtNetwork %exclude %{_qt5_includedir}/QtNetwork/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtnetwork_p_d} Summary: Devel files needed to build apps based on QtNetwork Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqtnetwork_d} = %version Provides: libqtnetwork5-private-devel = %version Provides: libqt5network-private-devel = %version Provides: qtnetwork5-private-devel = %version Provides: qt5network-private-devel = %version %description -n %{libqtnetwork_p_d} Devel files needed to build apps based on QtNetwork. %files -n %{libqtnetwork_p_d} %{_qt5_includedir}/QtNetwork/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtopengl} Summary: Qt%{qtmajor} Component Library Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtopengl} Qt%{qtmajor} Component Library. The QtOpenGL module offers classes that make it easy to use OpenGL in Qt applications. %files -n %{libqtopengl} %{_qt5_libdir}/libQt5OpenGL.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqtopengl_d} Summary: Devel files needed to build apps based on QtContacts Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtopengl} = %version Provides: libqtopengl5-devel = %version Provides: libqt5opengl-devel = %version Provides: qtopengl5-devel = %version Provides: qt5opengl-devel = %version %description -n %{libqtopengl_d} Devel files needed to build apps based on QtContacts. %files -n %{libqtopengl_d} %{_qt5_libdir}/libQt5OpenGL.prl %{_qt5_libdir}/libQt5OpenGL.so %{_qt5_libdir}/pkgconfig/Qt5OpenGL.pc %{_qt5_libdir}/cmake/Qt5OpenGL %{_qt5_includedir}/QtOpenGL %exclude %{_qt5_includedir}/QtOpenGL/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtopengl_p_d} Summary: Devel files needed to build apps based on QtContacts Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqtopengl_d} = %version Provides: libqtopengl5-private-devel = %version Provides: libqt5opengl-private-devel = %version Provides: qtopengl5-private-devel = %version Provides: qt5opengl-private-devel = %version %description -n %{libqtopengl_p_d} Devel files needed to build apps based on QtContacts. %files -n %{libqtopengl_p_d} %{_qt5_includedir}/QtOpenGL/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtprintsupport} Summary: Qt%{qtmajor} Lib Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtprintsupport} Qt%{qtmajor} Lib. %files -n %{libqtprintsupport} %{_qt5_libdir}/libQt5PrintSupport.so.%{qtmajor}* %{_qt5_plugindir}/printsupport #------------------------------------------------------------------------------ %package -n %{libqtprintsupport_d} Summary: Devel files needed to build apps based on QtPrintSupport Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtprintsupport} = %version Provides: libqtprintsupport5-devel = %version Provides: libqt5printsupport-devel = %version Provides: qtprintsupport5-devel = %version Provides: qt5printsupport-devel = %version %description -n %{libqtprintsupport_d} Devel files needed to build apps based on QtPrintSupport. %files -n %{libqtprintsupport_d} %{_qt5_libdir}/libQt5PrintSupport.so %{_qt5_libdir}/libQt5PrintSupport.prl %{_qt5_libdir}/pkgconfig/Qt5PrintSupport.pc %{_qt5_libdir}/cmake/Qt5PrintSupport %{_qt5_includedir}/QtPrintSupport %exclude %{_qt5_includedir}/QtPrintSupport/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtprintsupport_p_d} Summary: Devel files needed to build apps based on QtPrintSupport Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqtprintsupport_d} = %version Provides: libqtprintsupport5-private-devel = %version Provides: libqt5printsupport-private-devel = %version Provides: qtprintsupport5-private-devel = %version Provides: qt5printsupport-private-devel = %version %description -n %{libqtprintsupport_p_d} Devel files needed to build apps based on QtPrintSupport. %files -n %{libqtprintsupport_p_d} %{_qt5_includedir}/QtPrintSupport/%qtversion #------------------------------------------------------------------------------ %package -n %{libqttest} Summary: Qt%{qtmajor} Component Library Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqttest} Qt%{qtmajor} Component Library. The QtTest module provides classes for unit testing Qt applications and libraries. %files -n %{libqttest} %{_qt5_libdir}/libQt5Test.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqttest_d} Summary: Devel files needed to build apps based on QtTest Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqttest} = %version Requires: %{libqttest_d} = %version Provides: libqttest5-devel = %version Provides: libqt5test-devel = %version Provides: qttest5-devel = %version Provides: qt5test-devel = %version Requires: qtwidgets5-devel = %version-%release %description -n %{libqttest_d} Devel files needed to build apps based on QtTest. %files -n %{libqttest_d} %{_qt5_libdir}/libQt5Test.prl %{_qt5_libdir}/libQt5Test.so %{_qt5_libdir}/pkgconfig/Qt5Test.pc %{_qt5_libdir}/cmake/Qt5Test %{_qt5_includedir}/QtTest %exclude %{_qt5_includedir}/QtTest/%qtversion #------------------------------------------------------------------------------ %package -n %{libqttest_p_d} Summary: Devel files needed to build apps based on QtTest Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqttest_d} = %version Provides: libqttest5-private-devel = %version Provides: libqt5test-private-devel = %version Provides: qttest5-private-devel = %version Provides: qt5test-private-devel = %version %description -n %{libqttest_p_d} Devel files needed to build apps based on QtTest. %files -n %{libqttest_p_d} %{_qt5_includedir}/QtTest/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtwidgets} Summary: Qt%{qtmajor} Lib Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtwidgets} Qt%{qtmajor} Lib. %files -n %{libqtwidgets} %{_qt5_libdir}/libQt5Widgets.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqtwidgets_d} Summary: Devel files needed to build apps based on QtWidgets Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtwidgets} = %version Provides: libqtwidgets5-devel = %version Provides: libqt5widgets-devel = %version Provides: qtwidgets5-devel = %version Provides: qt5widgets-devel = %version %description -n %{libqtwidgets_d} Devel files needed to build apps based on QtWidgets. %files -n %{libqtwidgets_d} %{_qt5_libdir}/libQt5Widgets.so %{_qt5_libdir}/libQt5Widgets.prl %{_qt5_libdir}/pkgconfig/Qt5Widgets.pc %{_qt5_libdir}/cmake/Qt5Widgets %{_qt5_includedir}/QtWidgets %exclude %{_qt5_includedir}/QtWidgets/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtwidgets_p_d} Summary: Devel files needed to build apps based on QtWidgets Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %{libqtwidgets_d} = %version Provides: libqtwidgets5-private-devel = %version Provides: libqt5widgets-private-devel = %version Provides: qtwidgets5-private-devel = %version Provides: qt5widgets-private-devel = %version Requires: qt5gui-private-devel = %version %description -n %{libqtwidgets_p_d} Devel files needed to build apps based on QtWidgets. %files -n %{libqtwidgets_p_d} %{_qt5_includedir}/QtWidgets/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtxml} Summary: Qt%{qtmajor} Component Library Group: System/Libraries Requires(pre): %{name}-common = %{version} %description -n %{libqtxml} Qt%{qtmajor} Component Library. The QtXml module provides a stream reader and writer for XML documents, and C++ implementations of SAX and DOM. %files -n %{libqtxml} %{_qt5_libdir}/libQt5Xml.so.%{qtmajor}* #------------------------------------------------------------------------------ %package -n %{libqtxml_d} Summary: Devel files needed to build apps based on QtXml Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtxml} = %version Provides: libqtxml5-devel = %version Provides: libqt5xml-devel = %version Provides: qtxml5-devel = %version Provides: qt5xml-devel = %version %description -n %{libqtxml_d} Devel files needed to build apps based on QtXml. %files -n %{libqtxml_d} %{_qt5_libdir}/libQt5Xml.prl %{_qt5_libdir}/libQt5Xml.so %{_qt5_libdir}/pkgconfig/Qt5Xml.pc %{_qt5_libdir}/cmake/Qt5Xml %{_qt5_includedir}/QtXml #------------------------------------------------------------------------------ %package -n %{libqtplatformsupport_d} Summary: Devel files needed to build apps based on QtPlatformSupport Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} #Requires: %{libqtplatformsupport} = %version Provides: libqtplatformsupport5-devel = %version Provides: libqt5platformsupport-devel = %version Provides: qtplatformsupport5-devel = %version Provides: qt5platformsupport-devel = %version %description -n %{libqtplatformsupport_d} Devel files needed to build iapps based on QtPlatformSupport. %files -n %{libqtplatformsupport_d} %{_qt5_libdir}/libQt5PlatformSupport.a %{_qt5_libdir}/libQt5PlatformSupport.prl %{_qt5_libdir}/pkgconfig/Qt5PlatformSupport.pc %{_qt5_includedir}/QtPlatformSupport %exclude %{_qt5_includedir}/QtPlatformSupport/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtplatformsupport_p_d} Summary: Devel files needed to build apps based on QtPlatformSupport Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} #Requires: %{libqtplatformsupport} = %version Provides: libqtplatformsupport5-private-devel = %version Provides: libqt5platformsupport-private-devel = %version Provides: qtplatformsupport5-private-devel = %version Provides: qt5platformsupport-private-devel = %version %description -n %{libqtplatformsupport_p_d} Devel files needed to build iapps based on QtPlatformSupport. %files -n %{libqtplatformsupport_p_d} %{_qt5_includedir}/QtPlatformSupport/%qtversion #------------------------------------------------------------------------------ %package -n %{libqtbootstrap_d} Summary: Devel files needed to build apps based on QtBootstrap Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Requires: %name-common-devel = %{version}-%{release} #Requires: %{libqtbootstrap} = %version Provides: libqtbootstrap5-devel = %version %description -n %{libqtbootstrap_d} Devel files needed to build apps based on QtBootstrap. %files -n %{libqtbootstrap_d} %{_qt5_libdir}/libQt5Bootstrap.a %{_qt5_libdir}/libQt5Bootstrap.prl %{_qt5_libdir}/pkgconfig/Qt5Bootstrap.pc #------------------------------------------------------------------------------ %package -n %{libqtdevel} Summary: Development files for the Qt%{qtmajor} GUI toolkit Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} Provides: qt5-devel = %{version}-%{release} Provides: qtbase5-devel = %{version}-%{release} Provides: libqtbase5-devel = %{version}-%{release} Provides: libqt5-devel = %{version}-%{release} Requires: %name-common-devel = %{version}-%{release} Requires: %{libqtconcurrent_d} = %{version}-%{release} Requires: %{libqtdbus_d} = %{version}-%{release} Requires: %{libqtcore_d} = %{version}-%{release} Requires: %{libqtsql_d} = %{version}-%{release} Requires: %{libqtgui_d} = %{version}-%{release} Requires: %{libqtnetwork_d} = %{version}-%{release} Requires: %{libqtopengl_d} = %{version}-%{release} Requires: %{libqtprintsupport_d} = %{version}-%{release} Requires: %{libqttest_d} = %{version}-%{release} Requires: %{libqtwidgets_d} = %{version}-%{release} Requires: %{libqtxml_d} = %{version}-%{release} Requires: %{libqtbootstrap_d} = %{version}-%{release} %description -n %{libqtdevel} The %{name}-devel package contains the files necessary to develop applications using the Qt GUI toolkit: the header files, the Qt meta object compiler, and the static libraries. See the address http://qt-project.org/ for more information about Qt%{qtmajor}. %files -n %{libqtdevel} #------------------------------------------------------------------- %package -n %name-common-devel Summary: Development files for the Qt%{qtmajor} GUI toolkit Group: Development/KDE and Qt Requires(pre): %{name}-common = %{version} %description -n %name-common-devel Common files needed to build application based on Qt5 %post -n %name-common-devel update-alternatives --install %{_bindir}/qmake qmake %{_qt5_bindir}/qmake 20 %postun -n %name-common-devel if ! [ -e %{_qt5_bindir}/qmake ]; then update-alternatives --remove qmake %{_qt5_bindir}/qmake fi %files -n %name-common-devel %{_sysconfdir}/rpm/macros.d/qt5.macros %{_qt5_bindir}/moc %{_qt5_bindir}/qdbusxml2cpp %{_qt5_bindir}/qdbuscpp2xml %{_qt5_bindir}/qmake %{_qt5_bindir}/rcc %{_qt5_bindir}/uic %{_qt5_datadir}/mkspecs %dir %{_qt5_libdir}/cmake %if "%{_qt5_includedir}" != "%{_includedir}" %dir %{_qt5_includedir} %endif #------------------------------------------------------------------------------ %prep %setup -q -n %qttarballdir %apply_patches # Unlike Fedora, we don't modify the installed mkspecs to contain our flags, # which would have the side effect that plain 'qmake' would use them as well # (i.e. even when not building an rpm), which is not really wanted. Our # packages are built with %%qmake_qt5 (qt5.macros) which already overrides the # flags, so altering qmake default configuration for that is unnecessary. # Since the Qt configure script doesn't support defining custom flags, we # still have to temporarily override the flags below - they are restored in # %%install. -Anssi cp mkspecs/linux-g++/qmake.conf mkspecs/linux-g++/qmake.conf.upstream cat >> mkspecs/linux-g++/qmake.conf <<EOF QMAKE_CFLAGS = %{optflags} QMAKE_CXXFLAGS = %{optflags} QMAKE_LFLAGS = %{ldflags} QMAKE_STRIP = # Note that setting QMAKE_LFLAGS_PLUGIN here would do no good, as it would # just get appended to $QMAKE_LFLAGS instead of replacing it. EOF sed -e "s|^QMAKE_CFLAGS_RELEASE .*$|QMAKE_CFLAGS_RELEASE += %{optflags} -fno-strict-aliasing -DPIC -fPIC| " -e 's|^QMAKE_CXXFLAGS .*|& -std=gnu++0x|' -i mkspecs/common/gcc-base.conf mkspecs/common/gcc-base-unix.conf %if 0 # set correct lib path (from fedora) if [ "%{_lib}" == "lib64" ] ; then sed -i -e "s,/usr/lib /lib,/usr/%{_lib} /%{_lib},g" config.tests/{unix,x11}/*.test sed -i -e "s,/lib /usr/lib,/%{_lib} /usr/%{_lib},g" config.tests/{unix,x11}/*.test fi %endif %build export QTDIR=`/bin/pwd` export PATH="$PWD/bin:$PWD/qtrepotools/bin:$PATH" export QMAKESPEC=$PWD/mkspecs/linux-g++ # Don't include headers or link with /usr/X11R6/{include,lib} perl -pi -e 's@/X11R6/@/@' mkspecs/linux-*/qmake.conf mkspecs/common/linux.conf #------------------------------------------------------------------------------ ./configure -v \ -confirm-license \ -opensource \ -optimized-qmake \ -prefix %{_qt5_prefix} \ -bindir %{_qt5_bindir} \ -datadir %{_qt5_datadir} \ -docdir %{_qt5_docdir} \ -examplesdir %{_qt5_examplesdir} \ -headerdir %{_qt5_includedir} \ -importdir %{_qt5_importdir} \ -libdir %{_qt5_libdir} \ -plugindir %{_qt5_plugindir} \ -sysconfdir %{_qt5_sysconfigdir} \ -translationdir %{_qt5_translationdir} \ %if %with debug -debug \ -verbose \ -developer-build \ %else -release \ -silent \ %endif -shared \ -no-separate-debug-info \ -no-rpath \ -no-pch \ -reduce-relocations \ -openssl-linked \ -dbus-linked \ %if %{with qvfb} -qvfb \ %endif -gtkstyle \ -opengl desktop \ -platform linux-g++ \ -sm \ -system-libpng \ -system-libjpeg \ -system-zlib \ -xinput \ -xcursor \ -xfixes \ -xinerama \ -xshape \ -xrandr \ -xkb \ -glib \ %if ! %{with_cups} -no-cups \ %endif %if ! %without postgres -plugin-sql-psql \ %endif %if ! %without mysql -plugin-sql-mysql \ %else -no-sql-mysql \ %endif %if %with ibase -plugin-sql-ibase \ %else -no-sql-ibase \ %endif %if ! %without sqlite -plugin-sql-sqlite \ -system-sqlite \ -no-sql-sqlite2 \ %else -no-sql-sqlite \ -no-sql-sqlite2 \ %endif %if ! %without odbc -plugin-sql-odbc \ %else -no-sql-odbc \ %endif %if %without docs -nomake docs \ -nomake demos \ -nomake examples %endif %install RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" ################## Build of QtBase ######################################## make -j $RPM_BUILD_NCPUS make INSTALL_ROOT=$RPM_BUILD_ROOT install install -d %{buildroot}/%{_qt5_docdir} install -d %{buildroot}/%{_sysconfdir} install -d %{buildroot}/%{_sysconfdir}/profile.d # recreate .qm files #LD_LIBRARY_PATH=`pwd`/lib bin/lrelease translations/*.ts %if %{with qvfb} # Install qvfb %make -C tools/qvfb INSTALL_ROOT=%{buildroot} install %else rm -f %{buildroot}%{_qt5_translationdir}/qvfb*.qm %endif # Fix mkspec link pushd %{buildroot}/%{_qt5_datadir}/mkspecs rm -f default ln -sf %{_qt5_datadir}/mkspecs/linux-g++ default popd # Restore qmake.conf to the upstream version which was backed up in %%prep mv %{buildroot}%{_qt5_datadir}/mkspecs/linux-g++/qmake.conf.upstream %{buildroot}%{_qt5_datadir}/mkspecs/linux-g++/qmake.conf # Fix all buildroot paths find %{buildroot}/%{_qt5_libdir} -type f -name '*prl' -exec perl -pi -e "s, -L%{_builddir}/\S+,,g" {} \; find %{buildroot}/%{_qt5_libdir} -type f -name '*prl' -exec sed -i -e "/^QMAKE_PRL_BUILD_DIR/d" {} \; find %{buildroot}/%{_qt5_libdir} -type f -name '*la' -print -exec perl -pi -e "s, -L%{_builddir}/?\S+,,g" {} \; find %{buildroot}/%{_qt5_libdir} -type f -name '*la' -print -exec sed -i -e "s, -L%{_builddir}/?\S+,,g" -e "s,-L../JavaScriptCore/release,,g" -e "s,-ljscore,,g" {} \; find %{buildroot}/%{_qt5_datadir}/mkspecs -name 'qmake.conf' -exec chmod -x -- {} \; find %{buildroot}/%{_qt5_datadir}/mkspecs -name Info.plist.app -exec chmod -x -- {} \; # Don't reference builddir neither /usr(/X11R6)?/ in .pc files. perl -pi -e '\ s@-L/usr/X11R6/%{_lib} @@g;\ s@-I/usr/X11R6/include @@g;\ s@-L/%{_builddir}\S+@@g'\ `find . -name \*.pc` # Install rpm macros mkdir -p %{buildroot}/%{_sysconfdir}/rpm/macros.d install -m 0644 %SOURCE2 %{buildroot}/%{_sysconfdir}/rpm/macros.d # Profiles cat > %{buildroot}/%{_sysconfdir}/profile.d/60qt5.sh << EOF #!/bin/bash QTDIR5="%{_qt5_prefix}" ; export QTDIR5 ; PATH="\$PATH:%{_qt5_prefix}/bin" ; export PATH ; [ -z \$QT5DOCDIR ] && export QT5DOCDIR=%{_qt5_docdir} if [ -z \$(echo \$PATH | grep "%{_qt5_bindir}") ]; then PATH=\${PATH}:%{_qt5_bindir} export PATH fi EOF %if "%{_qt5_libdir}" != "%{_libdir}" # Use the new ld.so.conf.d # Do not remove for mageia 3, we will work on this on mga4 mkdir -p %buildroot/%_sysconfdir/ld.so.conf.d pushd %buildroot/%_sysconfdir/ld.so.conf.d echo "%{_qt5_libdir}" > qt5.conf popd install -d %buildroot%{_var}/lib/rpm/filetriggers cat > %buildroot%{_var}/lib/rpm/filetriggers/qt5.filter << EOF ^.%{_qt5_libdir}/[^/]*\.so\. EOF cat > %buildroot%{_var}/lib/rpm/filetriggers/qt5.script << EOF #!/bin/sh ldconfig -X EOF chmod 755 %buildroot%{_var}/lib/rpm/filetriggers/qt5.script %endif # .la and .a files, die, die, die. rm -f %{buildroot}%{_qt5_libdir}/lib*.la # .a files are needed by qttols5 #rm -f %{buildroot}%{_qt5_libdir}/lib*.a %changelog * Tue Apr 16 2013 neoclust <neoclust> 5.0.2-1.mga3 + Revision: 410186 - New version 5.0.2 * Sat Feb 02 2013 neoclust <neoclust> 5.0.1-2.mga3 + Revision: 394069 - Fix Requires * Fri Feb 01 2013 neoclust <neoclust> 5.0.1-1.mga3 + Revision: 393866 - New version 5.0.1 Final * Wed Jan 30 2013 neoclust <neoclust> 5.0.1-0.rc1.8.mga3 + Revision: 393551 - Add Requires * Wed Jan 30 2013 neoclust <neoclust> 5.0.1-0.rc1.7.mga3 + Revision: 393536 - Add macro about makeinstall for qt apps * Tue Jan 29 2013 neoclust <neoclust> 5.0.1-0.rc1.6.mga3 + Revision: 393126 - Make qtbase5-devel a metapackage * Tue Jan 29 2013 neoclust <neoclust> 5.0.1-0.rc1.5.mga3 + Revision: 393072 - Split cmake files out of main devel packages - Split private headers out of devel packages - Rename devel packages * Sat Jan 26 2013 neoclust <neoclust> 5.0.1-0.rc1.4.mga3 + Revision: 392561 - Add openvg support * Sat Jan 26 2013 neoclust <neoclust> 5.0.1-0.rc1.3.mga3 + Revision: 392554 - Try to fix gstreamer support * Sat Jan 26 2013 neoclust <neoclust> 5.0.1-0.rc1.2.mga3 + Revision: 392544 - Try to add gstreamer support * Sat Jan 26 2013 neoclust <neoclust> 5.0.1-0.rc1.1.mga3 + Revision: 392329 - New version 5.0.1 rc1 * Fri Jan 25 2013 fwang <fwang> 5.0.0-12.mga3 + Revision: 392253 - unify qt5 doc dir - use xz * Fri Jan 25 2013 fwang <fwang> 5.0.0-11.mga3 + Revision: 392220 - drop invalid provides as it will conflicts with qt4 - only call ldconfig when acturall libs are installed - move ldconfig script into conditioned location * Fri Jan 25 2013 fwang <fwang> 5.0.0-10.mga3 + Revision: 392205 - add rpm file triggers so that ldconfig is alwasy run * Thu Jan 24 2013 neoclust <neoclust> 5.0.0-9.mga3 + Revision: 392006 - Fix typo in macros * Thu Jan 24 2013 neoclust <neoclust> 5.0.0-8.mga3 + Revision: 391945 - Fix typo in macros * Wed Jan 23 2013 neoclust <neoclust> 5.0.0-7.mga3 + Revision: 391721 - Fix macros - Fix typo in comment * Wed Jan 23 2013 neoclust <neoclust> 5.0.0-6.mga3 + Revision: 391719 - Add back ld.conf * Wed Jan 23 2013 neoclust <neoclust> 5.0.0-5.mga3 + Revision: 391695 - Revert path changes, as includes files conflicts with qt4 * Wed Jan 23 2013 neoclust <neoclust> 5.0.0-4.mga3 + Revision: 391675 - First try to move libs in libdir * Wed Jan 23 2013 neoclust <neoclust> 5.0.0-3.mga3 + Revision: 391267 - Do not remove .a files * Sun Jan 13 2013 umeabot <umeabot> 5.0.0-2.mga3 + Revision: 379965 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Tue Dec 25 2012 neoclust <neoclust> 5.0.0-1.mga3 + Revision: 335181 - Qt 5.0.0 Final * Thu Nov 29 2012 neoclust <neoclust> 5.0.0-0.rc1.4.mga3 + Revision: 322896 - Add missing requires in the devel package * Thu Nov 29 2012 neoclust <neoclust> 5.0.0-0.rc1.3.mga3 + Revision: 322796 - New Qt5 rc1 daily snapshot * Tue Nov 27 2012 neoclust <neoclust> 5.0.0-0.rc1.2.mga3 + Revision: 322265 - Remove missing deps * Mon Nov 26 2012 neoclust <neoclust> 5.0.0-0.rc1.1.mga3 + Revision: 322187 - Daily rc snapshot + fwang <fwang> - update url * Sat Nov 17 2012 neoclust <neoclust> 5.0.0-0.beta.20.mga3 + Revision: 319123 - Fix libs name * Sat Nov 17 2012 neoclust <neoclust> 5.0.0-0.beta.19.mga3 + Revision: 319086 - Fix wrong requires in opengl package * Fri Nov 16 2012 neoclust <neoclust> 5.0.0-0.beta.18.mga3 + Revision: 318971 - Fix requires on the devel package * Fri Nov 16 2012 neoclust <neoclust> 5.0.0-0.beta.17.mga3 + Revision: 318400 - Add Master patch to rename libs and allow qt4/Qt5 co installation * Thu Nov 15 2012 neoclust <neoclust> 5.0.0-0.beta.16.mga3 + Revision: 318235 - imported package qtbase5