gstreamer/gst-plugins-base.spec.in

230 lines
9.4 KiB
RPMSpec
Raw Normal View History

# This SPEC file is created in a way that tries to solve various demands.
# First of all it tries to create packages that will easily replace both the
# Fedora Core default packages and also replace the extra rpms provided
# by Fedora.us or freshrpms.net.
# At the same time they will only include plugins for which you have the needed
# packages installed at the time you run autogen.sh. This means that if you
# are not careful you might end up with less plugins than what the standard
# packages provide, which in turn means things might stop working for you.
# So make sure you have an idea of what you do before creating RPMS using this
# SPEC file.
%define register %{_bindir}/gst-register-%{majorminor} > /dev/null 2>&1 || :
%define gst_minver 0.7.6
%define gstp_minver 0.7.6
Name: gstreamer-plugins-base
Version: @VERSION@
Release: @GST_PLUGINS_VERSION_RELEASE@
Summary: GStreamer Streaming-media framework plug-ins.
%define majorminor @GST_MAJORMINOR@
Group: Applications/Multimedia
License: LGPL
URL: http://gstreamer.net/
Vendor: GStreamer Backpackers Team <package@gstreamer.net>
Source: http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%define _glib2 @GLIB2_REQ@
Requires: glib2 >= %_glib2
BuildRequires: glib2-devel >= %_glib2
Requires: gstreamer09 >= %{gst_minver}
BuildRequires: gstreamer09-devel >= %{gst_minver}
BuildRequires: gcc-c++
BuildRequires: XFree86-devel
@USE_GCONF_TRUE@Requires: GConf2
@USE_GCONF_TRUE@BuildRequires: GConf2-devel
@USE_GNOME_VFS_TRUE@Requires: gnome-vfs2 > 1.9.4.00
@USE_GNOME_VFS_TRUE@BuildRequires: gnome-vfs2-devel > 1.9.4.00
@USE_VORBIS_TRUE@Requires: libogg >= 1.0
@USE_VORBIS_TRUE@Requires: libvorbis >= 1.0
@USE_VORBIS_TRUE@BuildRequires: libogg-devel >= 1.0
@USE_VORBIS_TRUE@BuildRequires: libvorbis-devel >= 1.0
@USE_XVIDEO_TRUE@Requires: XFree86-libs
@USE_XVIDEO_TRUE@BuildRequires: XFree86-devel
%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.
%prep
%setup -n gst-plugins-base-%{version}
%build
%configure \
--with-gdk-pixbuf-loader-dir=$RPM_BUILD_ROOT%{_libdir}/gtk-2.0/2.2.0/loaders \
--enable-debug \
--enable-DEBUG
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
%makeinstall
unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
# Clean out files that should not be part of the rpm.
rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/*.la
rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstgdkpixbuf.so
%clean
rm -rf $RPM_BUILD_ROOT
%post
%{register}
%postun
%{register}
%files
%defattr(-, root, root)
%doc AUTHORS COPYING README REQUIREMENTS
# helper programs
%{_bindir}/gst-launch-ext-%{majorminor}
%{_bindir}/gst-visualise-%{majorminor}
%{_mandir}/man1/gst-launch-ext-%{majorminor}.*
%{_mandir}/man1/gst-visualise-%{majorminor}*
%{_datadir}/locale
# schema files
@USE_GCONF_TRUE@%{_sysconfdir}/gconf/schemas/gstreamer-%{majorminor}.schemas
# libraries
%{_libdir}/libgstinterfaces-%{majorminor}.so.*
@USE_GCONF_TRUE@%{_libdir}/libgstgconf-%{majorminor}.so.*
%{_libdir}/libgstaudio-0.9.so.*
%{_libdir}/libgstaudiofilter-0.9.so.*
%{_libdir}/libgstriff-0.9.so.*
%{_libdir}/libgsttagedit-0.9.so.*
%{_libdir}/libgstvideo-0.9.so.*
%{_libdir}/libgstnet-0.9.so.*
# non-core plugins without external dependencies
%{_libdir}/gstreamer-%{majorminor}/libgstadder.so
%{_libdir}/gstreamer-%{majorminor}/libgstaudioconvert.so
%{_libdir}/gstreamer-%{majorminor}/libgstffmpegcolorspace.so
%{_libdir}/gstreamer-%{majorminor}/libgstsinesrc.so
%{_libdir}/gstreamer-%{majorminor}/libgstdecodebin.so
%{_libdir}/gstreamer-%{majorminor}/libgstplaybin.so
%{_libdir}/gstreamer-%{majorminor}/libgsttypefindfunctions.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideotestsrc.so
%{_libdir}/gstreamer-%{majorminor}/libgstaudiorate.so
%{_libdir}/gstreamer-%{majorminor}/libgstsubparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstvolume.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideorate.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideoscale.so
%{_libdir}/gstreamer-%{majorminor}/libgsttcp.so
@USE_THEORA_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgsttheora.so
@USE_GNOME_VFS_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstgnomevfs.so
@USE_VORBIS_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstvorbis.so
@USE_VORBIS_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstogg.so
@USE_XVIDEO_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstximagesink.so
@USE_XVIDEO_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstxvimagesink.so
%package -n gstreamer-plugins-base-devel
Summary: GStreamer Plugin Library Headers.
Group: Development/Libraries
Requires: gstreamer-plugins-base = %{version}
%description -n gstreamer-plugins-base-devel
GStreamer support libraries header files.
%files -n gstreamer-plugins-base-devel
%defattr(-, root, root)
# plugin helper library headers
%{_includedir}/gstreamer-%{majorminor}/gst/audio/audio.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstaudiofilter.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/multichannel.h
%{_includedir}/gstreamer-%{majorminor}/gst/floatcast/floatcast.h
%{_includedir}/gstreamer-%{majorminor}/gst/riff/riff-ids.h
%{_includedir}/gstreamer-%{majorminor}/gst/riff/riff-media.h
%{_includedir}/gstreamer-%{majorminor}/gst/riff/riff-read.h
%{_includedir}/gstreamer-%{majorminor}/gst/video/video.h
%{_includedir}/gstreamer-%{majorminor}/gst/video/videosink.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/colorbalance.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/colorbalancechannel.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/interfaces-enumtypes.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/mixer.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/mixeroptions.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/mixertrack.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/navigation.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/propertyprobe.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/tuner.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/tunerchannel.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/tunernorm.h
%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/xoverlay.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstaudiosrc.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstbaseaudiosrc.h
# plugin interface headers
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstaudioclock.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstaudiosink.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstbaseaudiosink.h
%{_includedir}/gstreamer-%{majorminor}/gst/audio/gstringbuffer.h
%{_includedir}/gstreamer-%{majorminor}/gst/net/gstnetbuffer.h
%{_libdir}/libgstaudio-%{majorminor}.so
%{_libdir}/libgstaudiofilter-%{majorminor}.so
%{_libdir}/libgstriff-%{majorminor}.so
%{_libdir}/libgsttagedit-%{majorminor}.so
%{_libdir}/libgstvideo-%{majorminor}.so
%{_libdir}/libgstnet-%{majorminor}.so
# library headers
@USE_GCONF_TRUE@%{_includedir}/gstreamer-%{majorminor}/gst/gconf/gconf.h
%{_includedir}/gstreamer-%{majorminor}/gst/tag/tag.h
# pkg-config files
@USE_GCONF_TRUE@%{_libdir}/pkgconfig/gstreamer-gconf-%{majorminor}.pc
%{_libdir}/pkgconfig/gstreamer-plugins-base-0.9.pc
# .so files
@USE_GCONF_TRUE@%{_libdir}/libgstgconf-%{majorminor}.so
%{_libdir}/libgstinterfaces-%{majorminor}.so
@USE_ALSA_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstalsa.so
# Here are packages not in the base plugins package but not dependant
# on an external lib
# Here are all the packages depending on external libs #
### VIDEO 4 LINUX 2 ###
# @USE_GST_V4L2_TRUE@%package -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@Summary: GStreamer Video for Linux 2 plug-in.
# @USE_GST_V4L2_TRUE@Group: Applications/Multimedia
# @USE_GST_V4L2_TRUE@Requires: gstreamer-plugins09 = %{version}
# @USE_GST_V4L2_TRUE@BuildRequires: glibc-devel
# @USE_GST_V4L2_TRUE@Obsoletes: gstreamer-v4l2
# @USE_GST_V4L2_TRUE@
# @USE_GST_V4L2_TRUE@%description -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@Plug-in for accessing Video for Linux devices.
# @USE_GST_V4L2_TRUE@
# @USE_GST_V4L2_TRUE@%files -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@%defattr(-, root, root)
# @USE_GST_V4L2_TRUE@%{_libdir}/gstreamer-%{majorminor}/libgstvideo4linux2.so
# @USE_GST_V4L2_TRUE@
# @USE_GST_V4L2_TRUE@%post -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@%{register}
# @USE_GST_V4L2_TRUE@
# @USE_GST_V4L2_TRUE@%postun -n gstreamer-plugins-v4l2
# @USE_GST_V4L2_TRUE@%{register}
%changelog
* Fri May 6 2005 Christian Schaller <christian at fluendo dot com>
- Added libgstaudiorate and libgstsubparse to spec file
* Thu May 5 2005 Christian Schaller <christian at fluendo dot com>
- first attempt at spec file for gst-plugins-base