gstreamer1.0-plugins-good/gstreamer1.0-plugins-good.spec
2016-12-07 17:35:47 +02:00

330 lines
11 KiB
RPMSpec

%bcond_with tests
%define major 1.0
%define majorminor 1.0
%define bname gstreamer1.0
Summary: GStreamer Streaming-media framework plug-ins
Name: %{bname}-plugins-good
Version: 1.10.2
Release: 1
License: LGPLv2.1+
Group: Sound
Source0: http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-%{version}.tar.xz
Url: http://gstreamer.freedesktop.org/
%ifarch %{ix86}
BuildRequires: nasm
%endif
BuildRequires: gstreamer1.0-plugins-base
BuildRequires: bzip2-devel
BuildRequires: gettext-devel
BuildRequires: jpeg-devel
BuildRequires: pkgconfig(check)
BuildRequires: pkgconfig(dbus-glib-1)
# (gw) For the pixbuf plugin
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) >= %{version}
BuildRequires: pkgconfig(gtk+-2.0)
BuildRequires: pkgconfig(gudev-1.0)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libv4l1)
BuildRequires: pkgconfig(orc-0.4) >= 0.4.5
BuildRequires: pkgconfig(shout)
BuildRequires: pkgconfig(taglib)
BuildRequires: pkgconfig(theora)
%ifnarch %{mips} %{arm}
BuildRequires: pkgconfig(valgrind)
%endif
BuildRequires: pkgconfig(vorbis)
Obsoletes: gstreamer1.0-voip < %{version}
Provides: %{bname}-audiosrc
Provides: %{bname}-audiosink
# gw this is the default http source:
Suggests: %{bname}-soup
%description
GStreamer is a streaming-media framework, based on graphs of filters which
operate on media data. Applications using this library can do anything
from real-time sound processing to playing videos, and just about anything
else media-related. Its plugin-based architecture means that new data
types or processing capabilities can be added simply by installing new
plug-ins.
This package contains a set of plug-ins that are considered to have
good quality code, correct functionality, the preferred license (LGPL
for the plug-in code, LGPL or LGPL-compatible for the supporting
library). People writing elements should base their code on these
elements.
%files -f gst-plugins-good-%{majorminor}.lang
%doc AUTHORS COPYING README NEWS
%{_libdir}/gstreamer-%{majorminor}/libgstalaw.so
%{_libdir}/gstreamer-%{majorminor}/libgstalpha.so
%{_libdir}/gstreamer-%{majorminor}/libgstalphacolor.so
%{_libdir}/gstreamer-%{majorminor}/libgstapetag.so
%{_libdir}/gstreamer-%{majorminor}/libgstaudiofx.so
%{_libdir}/gstreamer-%{majorminor}/libgstaudioparsers.so
%{_libdir}/gstreamer-%{majorminor}/libgstauparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstautodetect.so
%{_libdir}/gstreamer-%{majorminor}/libgstavi.so
%{_libdir}/gstreamer-%{majorminor}/libgstcutter.so
%{_libdir}/gstreamer-%{majorminor}/libgstdebug.so
%{_libdir}/gstreamer-%{majorminor}/libgstdeinterlace.so
%{_libdir}/gstreamer-%{majorminor}/libgsteffectv.so
%{_libdir}/gstreamer-%{majorminor}/libgstflv.so
%{_libdir}/gstreamer-%{majorminor}/libgstequalizer.so
%{_libdir}/gstreamer-%{majorminor}/libgstflxdec.so
%{_libdir}/gstreamer-%{majorminor}/libgstgdkpixbuf.so
%{_libdir}/gstreamer-%{majorminor}/libgstgoom.so
%{_libdir}/gstreamer-%{majorminor}/libgstgoom2k1.so
%{_libdir}/gstreamer-%{majorminor}/libgsticydemux.so
%{_libdir}/gstreamer-%{majorminor}/libgstid3demux.so
%{_libdir}/gstreamer-%{majorminor}/libgstimagefreeze.so
%{_libdir}/gstreamer-%{majorminor}/libgstinterleave.so
%{_libdir}/gstreamer-%{majorminor}/libgstisomp4.so
%{_libdir}/gstreamer-%{majorminor}/libgstjpeg.so
%{_libdir}/gstreamer-%{majorminor}/libgstlevel.so
%{_libdir}/gstreamer-%{majorminor}/libgstmatroska.so
%{_libdir}/gstreamer-%{majorminor}/libgstmonoscope.so
%{_libdir}/gstreamer-%{majorminor}/libgstmulaw.so
%{_libdir}/gstreamer-%{majorminor}/libgstmultifile.so
%{_libdir}/gstreamer-%{majorminor}/libgstmultipart.so
%{_libdir}/gstreamer-%{majorminor}/libgstnavigationtest.so
%{_libdir}/gstreamer-%{majorminor}/libgstossaudio.so
%{_libdir}/gstreamer-%{majorminor}/libgstoss4audio.so
%{_libdir}/gstreamer-%{majorminor}/libgstpng.so
%{_libdir}/gstreamer-%{majorminor}/libgstreplaygain.so
%{_libdir}/gstreamer-%{majorminor}/libgstrtp.so
%{_libdir}/gstreamer-%{majorminor}/libgstrtpmanager.so
%{_libdir}/gstreamer-%{majorminor}/libgstrtsp.so
%{_libdir}/gstreamer-%{majorminor}/libgstshapewipe.so
%{_libdir}/gstreamer-%{majorminor}/libgstshout2.so
%{_libdir}/gstreamer-%{majorminor}/libgstsmpte.so
%{_libdir}/gstreamer-%{majorminor}/libgstspectrum.so
%{_libdir}/gstreamer-%{majorminor}/libgsttaglib.so
%{_libdir}/gstreamer-%{majorminor}/libgstudp.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideo4linux2.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideobox.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideocrop.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideofilter.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideomixer.so
%{_libdir}/gstreamer-%{majorminor}/libgstwavenc.so
%{_libdir}/gstreamer-%{majorminor}/libgstwavparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstximagesrc.so
%{_libdir}/gstreamer-%{majorminor}/libgsty4menc.so
%{_libdir}/gstreamer-%{majorminor}/libgstcairo.so
%{_libdir}/gstreamer-%{majorminor}/libgstdtmf.so
%dir %{_datadir}/gstreamer-%{majorminor}/
%dir %{_datadir}/gstreamer-%{majorminor}/presets
%{_datadir}/gstreamer-%{majorminor}/presets/*
%{_datadir}/gtk-doc/html/gst-plugins-good-plugins-%{major}/*
#----------------------------------------------------------------------------
%package -n %{bname}-jack
Summary: GStreamer plug-in for the Jack Sound Server
Group: Sound
BuildRequires: pkgconfig(jack) => 0.28.0
Provides: %{bname}-audiosrc
Provides: %{bname}-audiosink
%description -n %{bname}-jack
Plug-in for the JACK professional sound server.
%files -n %{bname}-jack
%{_libdir}/gstreamer-%{majorminor}/libgstjack.so
#----------------------------------------------------------------------------
%package -n %{bname}-soup
Summary: GStreamer HTTP plugin based on libsoup
Group: System/Libraries
Requires: %{bname}-plugins >= %{version}
BuildRequires: pkgconfig(libsoup-2.4)
%description -n %{bname}-soup
Plug-in for HTTP access based on libsoup.
%files -n %{bname}-soup
%{_libdir}/gstreamer-%{majorminor}/libgstsouphttpsrc.so
#----------------------------------------------------------------------------
%package -n %{bname}-pulse
Summary: Pulseaudio plugin for GStreamer
Group: Sound
Requires: %{bname}-plugins >= %{version}
BuildRequires: pkgconfig(libpulse) >= 0.9.7
Requires: pulseaudio >= 0.9.7
%description -n %{bname}-pulse
This is a GStreamer audio output plugin using the Pulseaudio sound server.
%files -n %{bname}-pulse
%{_libdir}/gstreamer-%{majorminor}/libgstpulse.so
#----------------------------------------------------------------------------
### LIBDV ###
%package -n %{bname}-dv
Summary: GStreamer DV plug-in
Group: Video
Requires: %{bname}-plugins >= %{version}
BuildRequires: pkgconfig(libdv) >= 0.98
%description -n %{bname}-dv
Plug-in for digital video support using libdv.
%files -n %{bname}-dv
%{_libdir}/gstreamer-%{majorminor}/libgstdv.so
#----------------------------------------------------------------------------
%package -n %{bname}-speex
Summary: Gstreamer plugin for encoding and decoding Ogg Speex audio files
Group: Sound
Requires: %{bname}-plugins >= %{version}
BuildRequires: pkgconfig(speex)
%description -n %{bname}-speex
Plug-Ins for creating and playing Ogg Speex audio files.
%files -n %{bname}-speex
%{_libdir}/gstreamer-%{majorminor}/libgstspeex.so
#----------------------------------------------------------------------------
### RAW1394 ###
%package -n %{bname}-raw1394
Summary: GStreamer raw1394 Firewire plug-in
Group: System/Libraries
Requires: %{bname}-plugins >= %{version}
BuildRequires: pkgconfig(libavc1394)
BuildRequires: pkgconfig(libiec61883)
BuildRequires: pkgconfig(libraw1394)
%description -n %{bname}-raw1394
Plug-in for digital video support using raw1394.
%files -n %{bname}-raw1394
%{_libdir}/gstreamer-%{majorminor}/libgst1394.so
#----------------------------------------------------------------------------
### FLAC ###
%package -n %{bname}-flac
Summary: GStreamer plug-in for FLAC lossless audio
Group: Sound
Requires: %{bname}-plugins >= %{version}
BuildRequires: pkgconfig(flac) >= 1.0.4
%description -n %{bname}-flac
Plug-in for the free FLAC lossless audio format.
%files -n %{bname}-flac
%{_libdir}/gstreamer-%{majorminor}/libgstflac.so
#----------------------------------------------------------------------------
### AALIB ###
%package -n %{bname}-aalib
Summary: Gstreamer plugin for Ascii-art output
Group: Video
BuildRequires: aalib-devel >= 1.3
Requires: %{bname}-plugins >= %{version}
%description -n %{bname}-aalib
Plugin for viewing movies in Ascii-art using aalib library.
%files -n %{bname}-aalib
%{_libdir}/gstreamer-%{majorminor}/libgstaasink.so
#----------------------------------------------------------------------------
%package -n %{bname}-caca
Summary: Gstreamer plugin for Ascii-art output
Group: Video
BuildRequires: pkgconfig(caca)
Requires: %{bname}-plugins >= %{version}
%description -n %{bname}-caca
Plugin for viewing movies in Ascii-art using caca library.
%files -n %{bname}-caca
%{_libdir}/gstreamer-%{majorminor}/libgstcacasink.so
#----------------------------------------------------------------------------
%package -n %{bname}-wavpack
Summary: Gstreamer plugin for encoding and decoding WavPack audio files
Group: Sound
Requires: %{bname}-plugins >= %{version}
BuildRequires: pkgconfig(wavpack)
%description -n %{bname}-wavpack
Plug-Ins for creating and playing WavPack audio files.
%files -n %{bname}-wavpack
%{_libdir}/gstreamer-%{majorminor}/libgstwavpack.so
#----------------------------------------------------------------------------
%package -n %{bname}-vp8
Summary: GStreamer VP8 plug-in
Group: Video
BuildRequires: pkgconfig(vpx)
%description -n %{bname}-vp8
VP8 encoding and decoding plug-in.
%files -n %{bname}-vp8
%{_libdir}/gstreamer-%{majorminor}/libgstvpx.so
#----------------------------------------------------------------------------
%prep
%setup -q -n gst-plugins-good-%{version}
%build
%configure2_5x \
--with-package-name='%{distribution} %{name} package' \
--with-package-origin='%{disturl}' \
--disable-dependency-tracking \
--enable-experimental \
--disable-esd \
--disable-hal
%make
%install
rm -f gst-plugins-base-%{majorminor}.lang
%makeinstall_std GETTEXT_PACKAGE=gst-plugins-good-%{majorminor}
%find_lang gst-plugins-good-%{majorminor}
# Clean out files that should not be part of the rpm.
# This is the recommended way of dealing with it for RH8
rm -f %{buildroot}%{_libdir}/gstreamer-%{majorminor}/*.la
rm -f %{buildroot}%{_libdir}/gstreamer-%{majorminor}/*.a
rm -f %{buildroot}%{_libdir}/*.a
#blino remove development doc since we don't ship devel files
rm -rf %{buildroot}%{_docdir}/docs/plugins/html
%if %{with tests}
# FIXME: Some tests on mips are currently failing with timeouts
# so disable them. Moreover, orc is failing to compile stuff
# on arm/mips so orc checks are half-failings (as the backup functions
# are working)
%check
cd tests/check
%ifarch %{arm} %{mips}
make check || /bin/true
%else
make check
%endif
%endif