Blob Blame History Raw
Summary: Multimedia framework api
Name:    phonon
Version: 4.3.1
Release: 5%{?dist}
Group:   System Environment/Libraries
License: LGPLv2+
URL:     http://phonon.kde.org/
#Source0: ftp://ftp.kde.org/pub/kde/stable/phonon/%{version}/%{name}-%{version}.tar.bz2
Source0: ftp://ftp.kde.org/pub/kde/stable/4.2.1/phonon-%{version}.tar.bz2
Source1: http://gstreamer.freedesktop.org/data/images/artwork/gstreamer-logo.svg
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

# Make PulseAudio the default again when listed by the backend.
# Note that this currently only works for the Xine backend. Device selection in
# the GStreamer backend is weird: there is a setting for "sink" which cannot be
# set through systemsettings, and listed devices are only those supported by the
# "sink". So it never lists "PulseAudio" as a supported device, you have to pick
# it as a "sink", and then the device setting is ignored entirely.
Patch0:  phonon-4.2.96-pulseaudio.patch
Patch1:  phonon-4.2.96-xine-pulseaudio.patch

## Upstream patches
Patch100: phonon-4.3.2-gstreamer-utf8-url.patch
Patch101: phonon-4.3.2-gstreamer-volumefader.patch
# fix for non-ascii filenames in xine backend
Patch102: phonon-4.3.2-kdebug#172242.patch

BuildRequires: automoc4 >= 0.9.86
BuildRequires: cmake >= 2.6.0
BuildRequires: glib2-devel
BuildRequires: gstreamer-devel
BuildRequires: gstreamer-plugins-base-devel
BuildRequires: GraphicsMagick
BuildRequires: kde-filesystem
BuildRequires: libxcb-devel
BuildRequires: libxml2-devel
BuildRequires: pkgconfig
BuildRequires: qt4-devel >= 4.4.0
BuildRequires: xine-lib-devel

Requires: phonon-backend%{?_isa} >= %{version}
## hard-code phonon-backend-xine, if yum chooses -gstreamer by default
#Requires(hint): phonon-backend-xine%{?_isa} >= %{version}

%description
%{summary}.

%package backend-gstreamer
Summary: Gstreamer phonon backend
Group:   Applications/Multimedia
Requires: %{name} = %{version}-%{release}
Provides: phonon-backend%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-backend-gst < 4.2.0-4
Provides:  %{name}-backend-gst = %{version}-%{release}
%description backend-gstreamer
%{summary}.

%package backend-xine
Summary: xine phonon backend
Group:   Applications/Multimedia
Requires: %{name} = %{version}-%{release}
Provides: phonon-backend%{?_isa} = %{version}-%{release}
%description backend-xine
%{summary}.

%package devel
Summary: Developer files for %{name}
Group:   Development/Libraries
Requires: %{name} = %{version}-%{release}
Requires: qt4-devel
Requires: pkgconfig
%description devel
%{summary}.


%prep
%setup -q -n phonon-%{version}%{?alphatag}
%patch0 -p1 -b .pulseaudio
%patch1 -p1 -b .xine-pulseaudio
%patch100 -p0 -b .gstreamer-utf8-url
%patch101 -p0 -b .gstreamer-volumefader
%patch102 -p1 -b .xine_nonascii


%build
mkdir -p %{_target_platform}
pushd %{_target_platform}
%{cmake} ..
popd

make %{?_smp_mflags} -C %{_target_platform}


%install
rm -rf %{buildroot}

make install/fast DESTDIR=%{buildroot} -C %{_target_platform}

# move the oxygen-only phonon-xine icons to hicolor
test -d %{buildroot}%{_datadir}/icons/hicolor && exit 0
mv %{buildroot}%{_datadir}/icons/oxygen \
   %{buildroot}%{_datadir}/icons/hicolor

install -D -m 0644 %{SOURCE1} %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/phonon-gstreamer.svg
for i in 16 22 32 48 64 128; do
  mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps
  gm convert -background None -geometry ${i}x${i}  %{SOURCE1} %{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps/phonon-gstreamer.png
done


%clean
rm -rf %{buildroot}


%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%post backend-gstreamer
touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:

%post backend-xine
touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:

%posttrans backend-gstreamer
gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:

%posttrans backend-xine
gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:

%postun backend-gstreamer
if [ $1 -eq 0 ] ; then
  touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
  gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
fi

%postun backend-xine
if [ $1 -eq 0 ] ; then
  touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
  gtk-update-icon-cache %{_kde4_iconsdir}/hicolor &> /dev/null ||:
fi


%files
%defattr(-,root,root,-)
%doc COPYING.LIB
%{_libdir}/libphonon*.so.4*
%{_datadir}/dbus-1/interfaces/org.kde.Phonon.AudioOutput.xml
# kde4-specific dirs
%dir %{_kde4_libdir}/kde4/plugins/phonon_backend/
%dir %{_kde4_datadir}/kde4/services/phononbackends/

%files backend-gstreamer
%defattr(-,root,root,-)
%{_kde4_libdir}/kde4/plugins/phonon_backend/phonon_gstreamer.so
%{_kde4_datadir}/kde4/services/phononbackends/gstreamer.desktop
%{_datadir}/icons/hicolor/*/apps/phonon-gstreamer.*

%files backend-xine
%defattr(-,root,root,-)
%{_kde4_libdir}/kde4/plugins/phonon_backend/phonon_xine.so
%{_kde4_datadir}/kde4/services/phononbackends/xine.desktop
%{_datadir}/icons/hicolor/*/apps/phonon-xine.*

%files devel
%defattr(-,root,root,-)
%dir %{_includedir}/KDE
%{_includedir}/KDE/Phonon/
%{_includedir}/phonon/
%{_libdir}/pkgconfig/phonon.pc
%{_libdir}/libphonon*.so


%changelog
* Wed May 20 2009 Rex Dieter <rdieter@fedoraproject.org> - 4.3.1-5
- s/ImageMagick/GraphicsMagick/, avail on more secondary archs, is faster,
  yields better results.

* Mon May 04 2009 Rex Dieter <rdieter@fedoraproject.org> - 4.3.1-4
- fix Source0 Url
- xine backend will not play files with non-ascii names (kdebug#172242)

* Sat Apr 11 2009 Rex Dieter <rdieter@fedoraproject.org> - 4.3.1-3
- optimize scriptlets
- Provides/Requires: phonon-backend%%{_isa} ...

* Tue Mar  3 2009 Lukáš Tinkl <ltinkl@redhat.com> - 4.3.1-2
- backport GStreamer backend bugfixes (UTF-8 file handling, volume
fader)

* Fri Feb 27 2009 Than Ngo <than@redhat.com> - 4.3.1-1
- 4.3.1

* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Sun Feb 01 2009 Rex Dieter <rdieter@fedoraproject.org> - 4.3.0-5
- put icons in the right subpkg

* Thu Jan 29 2009 Rex Dieter <rdieter@fedoraproject.org> - 4.3.0-4
- Requires: phonon-backend >= %%version
- move icons to hicolor theme and into -backend subpkgs
- BR: libxcb-devel
- move phonon-gstreamer.svg to sources

* Mon Jan 26 2009 Rex Dieter <rdieter@fedoraproject.org> - 4.3.0-3
- BR: automoc4 >= 0.9.86

* Fri Jan 23 2009 Kevin Kofler <Kevin@tigcc.ticalc.org> - 4.3.0-2
- fix typo in postun scriptlet (introduced in 4.2.96-3)

* Thu Jan 22 2009 Than Ngo <than@redhat.com> - 4.3.0-1
- 4.3.0

* Thu Jan 08 2009 Rex Dieter <rdieter@fedoraproject.org> - 4.2.96-3
- new tarball
- put icons/scriptlets into main pkg
- Requires: phonon-backend

* Thu Jan 08 2009 Lorenzo Villani <lvillani@binaryhelix.net> - 4.2.96-2
- add gstreaer-logo.svg

* Thu Jan 08 2009 Lorenzo Villani <lvillani@binaryhelix.net> - 4.2.96-1
- 4.2.96
- rebase phonon-4.2.0-pulseaudio.patch (-> phonon-4.2.96-pulseaudio.patch)
- rebase phonon-4.2.70-xine-pulseaudio.patch 
  (-> phonon-4.2.96-xine-pulseaudio.patch)

* Fri Dec 12 2008 Rex Dieter <rdieter@fedoraproject.org> 4.2.80-3
- rebuild for pkgconfig deps

* Tue Nov 25 2008 Kevin Kofler <Kevin@tigcc.ticalc.org> 4.2.80-2
- phonon-backend-xine: don't Obsolete/Provide itself, Provides: phonon-backend

* Tue Nov 25 2008 Than Ngo <than@redhat.com> 4.2.80-1
- 4.2.80

* Fri Nov 21 2008 Lorenzo Villani <lvillani@binaryhelix.net> - 4.2.80-0.1.20081121svn887051
- Use subversion (4.2.80) snapshot
- phonon-backend-xine subpkg
- make VERBOSE=1
- make install/fast
- Xine backend is in phonon now, add xine-lib-devel as BR
- BR cmake >= 2.6.0
- forward-port xine pulseaudio patch

* Tue Sep 30 2008 Than Ngo <than@redhat.com> 4.2.0-7
- fix tranparent issue by convert

* Tue Sep 30 2008 Than Ngo <than@redhat.com> 4.2.0-6
- add missing icon

* Wed Sep 17 2008 Rex Dieter <rdieter@fedoraproject.org> 4.2.0-5
- Requires: phonon-backend-xine

* Sun Aug 10 2008 Kevin Kofler <Kevin@tigcc.ticalc.org> 4.2.0-4
- rename -backend-gst back to -backend-gstreamer (longer name as -backend-xine)
  The GStreamer backend isn't ready to be the default, and KDE 4.1 also defaults
  to the Xine backend when both are installed.
- fix PulseAudio not being the default in the Xine backend (4.2 regression)

* Sat Aug 02 2008 Rex Dieter <rdieter@fedoraproject.org> 4.2.0-3
- -backend-gst: Obsoletes: -backend-gstreamer < 4.2.0-2

* Thu Jul 24 2008 Rex Dieter <rdieter@fedoraproject.org> 4.2.0-2
- rename -backend-gstreamer -> backend-gst

* Wed Jul 23 2008 Rex Dieter <rdieter@fedoraproject.org> 4.2.0-1
- phonon-4.2.0

* Mon Jul 14 2008 Rex Dieter <rdieter@fedoraproject.org> 4.2-0.4.beta2
- BR: automoc4
- -backend-gstreamer subpkg

* Tue Jul 01 2008 Kevin Kofler <Kevin@tigcc.ticalc.org> 4.2-0.3.beta2
- drop automoc libsuffix patch, no longer needed

* Fri Jun 20 2008 Rex Dieter <rdieter@fedoraproject.org> 4.2-0.2.beta2
- phonon 4.2beta2 (aka 4.1.83)

* Sat Jun 14 2008 Rex Dieter <rdieter@fedoraproject.org> 4.2-0.1.20080614svn820634
- first try