diff --git a/.gitignore b/.gitignore index e69de29..ef7e43e 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/phonon-gstreamer-4.4.4-20110104.tar.bz2 diff --git a/phonon-4.3.50-gstreamer-fix-seekable-query-failed.patch b/phonon-4.3.50-gstreamer-fix-seekable-query-failed.patch new file mode 100644 index 0000000..7ab051c --- /dev/null +++ b/phonon-4.3.50-gstreamer-fix-seekable-query-failed.patch @@ -0,0 +1,15 @@ +diff -Naur phonon-4.3.50.orig/gstreamer/mediaobject.cpp phonon-4.3.50/gstreamer/mediaobject.cpp +--- phonon-4.3.50.orig/gstreamer/mediaobject.cpp 2009-10-11 02:24:30.000000000 +0200 ++++ phonon-4.3.50/gstreamer/mediaobject.cpp 2009-10-11 02:28:25.000000000 +0200 +@@ -852,6 +852,10 @@ + else + m_backend->logMessage("Stream is non-seekable", Backend::Info, this); + } else { ++ if (m_seekable) { ++ m_seekable = false; ++ emit seekableChanged(m_seekable); ++ } + m_backend->logMessage("updateSeekable query failed", Backend::Info, this); + } + gst_query_unref (query); + diff --git a/phonon-4.4.3-flac_mimetype.patch b/phonon-4.4.3-flac_mimetype.patch new file mode 100644 index 0000000..eef6a9f --- /dev/null +++ b/phonon-4.4.3-flac_mimetype.patch @@ -0,0 +1,15 @@ +diff -up phonon-4.4.3/gstreamer/backend.cpp.flac_mimetype phonon-4.4.3/gstreamer/backend.cpp +--- phonon-4.4.3/gstreamer/backend.cpp.flac_mimetype 2010-11-24 12:26:19.000000000 -0600 ++++ phonon-4.4.3/gstreamer/backend.cpp 2010-11-30 07:29:31.005424613 -0600 +@@ -265,6 +265,11 @@ QStringList Backend::availableMimeTypes( + if (!availableMimeTypes.contains("audio/ogg")) /* *.oga */ + availableMimeTypes.append("audio/ogg"); + } ++ if (availableMimeTypes.contains("audio/x-flac")) { ++ if (!availableMimeTypes.contains("audio/flac")) { ++ availableMimeTypes.append("audio/flac"); ++ } ++ } + availableMimeTypes.sort(); + return availableMimeTypes; + } diff --git a/phonon-backend-gstreamer.spec b/phonon-backend-gstreamer.spec new file mode 100644 index 0000000..b6bd232 --- /dev/null +++ b/phonon-backend-gstreamer.spec @@ -0,0 +1,109 @@ + +%define snap 20110104 + +Summary: Gstreamer phonon backend +Name: phonon-backend-gstreamer +Epoch: 2 +Version: 4.4.4 +Release: 0.3.%{snap}%{?dist} +Group: System Environment/Libraries +License: LGPLv2+ +URL: http://phonon.kde.org/ +Source0: phonon-gstreamer-%{version}-%{snap}.tar.bz2 +# run this script to generate a snapshot tarball +Source1: phonon-gstreamer_snapshot.sh +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +## Mandriva/upstreamable patches +Patch52: phonon-4.3.50-gstreamer-fix-seekable-query-failed.patch + +## Ubuntu/upstreamable patches +Patch60: phonon-4.4.3-flac_mimetype.patch + +## Upstream patches + +BuildRequires: automoc4 +BuildRequires: cmake +BuildRequires: gstreamer-devel +BuildRequires: gstreamer-plugins-base-devel +BuildRequires: phonon-devel >= 4.4.4 + +%global phonon_version %(pkg-config --modversion phonon 2>/dev/null || echo 4.4.4) + +Provides: phonon-backend%{?_isa} = %{phonon_version} + +Obsoletes: phonon-backend-gst < 4.2.0-4 +Provides: phonon-backend-gst = %{version}-%{release} + +Obsoletes: phonon-gstreamer < 4.4.4-0.2 +Provides: phonon-gstreamer = %{version}-%{release} + +Requires: gstreamer-plugins-good +Requires: phonon%{?_isa} => %{phonon_version} +Requires: qt4%{?_isa} >= %{_qt4_version} + +%description +%{summary}. + + +%prep +%setup -q -n phonon-gstreamer-%{version} + +%patch52 -p1 -b .gstreamer-fix-seekable-query-failed +%patch60 -p1 -b .flac_mimetype + + +%build +mkdir -p %{_target_platform} +pushd %{_target_platform} +%{cmake} \ + -DUSE_INSTALL_PLUGIN=TRUE \ + .. +popd + +make %{?_smp_mflags} -C %{_target_platform} + + +%install +rm -rf %{buildroot} + +make install/fast DESTDIR=%{buildroot} -C %{_target_platform} + + +%clean +rm -rf %{buildroot} + + +%post +touch --no-create %{_datadir}/icons/hicolor &> /dev/null ||: + +%postun +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &> /dev/null ||: + gtk-update-icon-cache %{_datadir}/icons/hicolor &> /dev/null ||: +fi + +%posttrans +gtk-update-icon-cache %{_datadir}/icons/hicolor &> /dev/null ||: + + +%files +%defattr(-,root,root,-) +%doc COPYING.LIB +%{_kde4_libdir}/kde4/plugins/phonon_backend/phonon_gstreamer.so +%{_kde4_datadir}/kde4/services/phononbackends/gstreamer.desktop +%{_datadir}/icons/hicolor/*/apps/phonon-gstreamer.* + + + +%changelog +* Wed Jan 05 2011 Rex Dieter - 2:4.4.4-0.3.20110104 +- %%doc COPYING.LIB +- add comment on pnonon-gstreamer_snapshot.sh usage + +* Wed Jan 05 2011 Rex Dieter - 2:4.4.4-0.2.20110104 +- phonon-backend-gstreamer + +* Tue Jan 04 2011 Rex Dieter - 4.4.4-0.1.20110104 +- phonon-gstreamer-4.4.4-20110104 snapshot + diff --git a/phonon-gstreamer_snapshot.sh b/phonon-gstreamer_snapshot.sh new file mode 100755 index 0000000..ed43d6c --- /dev/null +++ b/phonon-gstreamer_snapshot.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +MODULE=phonon-gstreamer +VERSION=4.4.4 +DATE=$(date +%Y%m%d) + +set -x + +rm -rf $MODULE + +git clone git://anongit.kde.org/phonon-gstreamer $MODULE/ +pushd $MODULE +git archive master --format tar --prefix=${MODULE}-${VERSION}/ | bzip2 -9 > ../${MODULE}-${VERSION}-${DATE}.tar.bz2 +popd + +rm -rf $MODULE diff --git a/sources b/sources index e69de29..c8a417a 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +583025f8dc2a922394ab130604316946 phonon-gstreamer-4.4.4-20110104.tar.bz2