[packages/phonon] - build Qt5 version and bcond_without qt5

witekfl witekfl at pld-linux.org
Thu Jul 10 18:55:04 CEST 2014


commit a065ff0f2c1e736d151d8377a9bb47364ccbb622
Author: Witold Filipczyk <witekfl at poczta.onet.pl>
Date:   Thu Jul 10 18:54:35 2014 +0200

    - build Qt5 version and bcond_without qt5

 phonon.spec | 97 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 95 insertions(+), 2 deletions(-)
---
diff --git a/phonon.spec b/phonon.spec
index 4a3732c..edaaf25 100644
--- a/phonon.spec
+++ b/phonon.spec
@@ -1,5 +1,8 @@
-# TODO: build Qt5 version
+# Conditional builds
+%bcond_without qt5	# do not build Qt5 version
+
 %define		qtver		4.8.1
+%define		qt5ver		5.3.1
 
 Summary:	Phonon: multimedia API for Qt4/KDE4
 Summary(pl.UTF-8):	Phonon - biblioteka multimedialna dla Qt4/KDE4
@@ -11,8 +14,17 @@ Group:		X11/Libraries
 Source0:	ftp://ftp.kde.org/pub/kde/stable/phonon/%{version}/%{name}-%{version}.tar.xz
 # Source0-md5:	a8b722a11a301fc2cda7ff8228209531
 Patch0:		%{name}-pkg.patch
-#Patch1:		fix-plugindir-for-qt-app.patch
+#Patch1: fix-plugindir-for-qt-app.patch
 URL:		http://phonon.kde.org/
+%if %{with qt5}
+BuildRequires:	Qt5DBus-devel >= %{qt5ver}
+BuildRequires:	Qt5Designer-devel >= %{qt5ver}
+BuildRequires:	Qt5OpenGL-devel >= %{qt5ver}
+BuildRequires:	Qt5Qml-devel >= %{qt5ver}
+BuildRequires:	Qt5Widgets-devel >= %{qt5ver}
+BuildRequires:	qt5-build >= %{qt5ver}
+BuildRequires:	qt5-qmake >= %{qt5ver}
+%endif
 BuildRequires:	QtCore-devel >= %{qtver}
 BuildRequires:	QtDBus-devel >= %{qtver}
 BuildRequires:	QtNetwork-devel >= %{qtver}
@@ -71,6 +83,49 @@ Header files for Phonon library.
 %description devel -l pl.UTF-8
 Pliki nagłówkowe biblioteki Phonon.
 
+%package qt5
+Summary:	Phonon: multimedia API for Qt5/KDE5
+Summary(pl.UTF-8):	Phonon - biblioteka multimedialna dla Qt5/KDE5
+Group:		X11/Libraries
+Provides:	qt5-phonon
+Obsoletes:	qt5-phonon
+
+%description qt5
+Phonon is the multimedia API for Qt5/KDE5.
+
+Phonon was originally created to allow KDE 5 to be independent of any
+single multimedia framework such as GStreamer or Xine and to provide a
+stable API for KDE5's lifetime. It was done to fix problems of
+frameworks becoming unmaintained, API instability, and to create a
+simple multimedia API.
+
+%description qt5 -l pl.UTF-8
+Phonon to biblioteka multimedialna dla Qt5/KDE5.
+
+Pierwotnie powstała, aby pozwolić na niezależność KDE 5 od konkretnego
+środowiska multimedialnego, takiego jak GStreamer czy Xine, oraz
+zapewnić stabilne API na cały czas życia KDE5. Została stworzona w
+celu wyeliminowania problemów z porzucaniem bibliotek i
+niestabilnością ich API, a także w celu stworzenia prostego API
+multimedialnego.
+
+%package qt5-devel
+Summary:	Header files for Phonon library
+Summary(pl.UTF-8):	Pliki nagłówkowe biblioteki Phonon
+Group:		X11/Development/Libraries
+Requires:	%{name}-qt5 = %{version}-%{release}
+Requires:	Qt5Core-devel >= %{qt5ver}
+Requires:	Qt5DBus-devel >= %{qt5ver}
+Requires:	Qt5Gui-devel >= %{qt5ver}
+Provides:	qt5-phonon-devel
+Obsoletes:	qt5-phonon-devel
+
+%description qt5-devel
+Header files for Phonon library.
+
+%description qt5-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki Phonon.
+
 %prep
 %setup -q
 %patch0 -p1
@@ -83,8 +138,18 @@ cd build
 # disable designer plugin - currently packaged in QtDesigner package
 %cmake .. \
 	-DPHONON_BUILD_DESIGNER_PLUGIN=OFF
+%{__make}
 
+cd ..
+%if %{with qt5}
+install -d build5
+cd build5
+%cmake .. \
+	-DPHONON_BUILD_DESIGNER_PLUGIN=OFF \
+	-DPHONON_BUILD_PHONON4QT5=ON \
+	-DPHONON_INSTALL_QT_EXTENSIONS_INTO_SYSTEM_QT=ON
 %{__make}
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -98,12 +163,20 @@ install -d $RPM_BUILD_ROOT%{_datadir}/kde4/services/phononbackends
 ln -s ../phonon $RPM_BUILD_ROOT%{_includedir}/qt4/phonon
 ln -s ../KDE/Phonon $RPM_BUILD_ROOT%{_includedir}/phonon/Phonon
 
+%if %{with qt5}
+%{__make} -C build5 install \
+	DESTDIR=$RPM_BUILD_ROOT
+%endif
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post	-p /sbin/ldconfig
 %postun	-p /sbin/ldconfig
 
+%post qt5	-p /sbin/ldconfig
+%postun qt5	-p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libphonon.so.*.*.*
@@ -127,3 +200,23 @@ rm -rf $RPM_BUILD_ROOT
 %dir %{_datadir}/phonon
 %{_datadir}/phonon/buildsystem
 %{_datadir}/qt4/mkspecs/modules/qt_phonon.pri
+
+%if %{with qt5}
+%files qt5
+%defattr(644,root,root,755)
+%attr(755,root,root) %ghost %{_libdir}/libphonon4qt5.so.4
+%attr(755,root,root) %{_libdir}/libphonon4qt5.so.4.7.2
+%attr(755,root,root) %ghost %{_libdir}/libphonon4qt5experimental.so.4
+%attr(755,root,root) %{_libdir}/libphonon4qt5experimental.so.4.7.2
+%{_datadir}/dbus-1/interfaces/org.kde.Phonon4Qt5.AudioOutput.xml
+%{_datadir}/phonon4qt5
+
+%files qt5-devel
+%defattr(644,root,root,755)
+%{_includedir}/phonon4qt5
+%{_libdir}/cmake/phonon4qt5
+%attr(755,root,root) %{_libdir}/libphonon4qt5.so
+%attr(755,root,root) %{_libdir}/libphonon4qt5experimental.so
+%{_pkgconfigdir}/phonon4qt5.pc
+%{_libdir}/qt5/mkspecs/modules/qt_phonon4qt5.pri
+%endif
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/phonon.git/commitdiff/a065ff0f2c1e736d151d8377a9bb47364ccbb622



More information about the pld-cvs-commit mailing list