gst.spec
author dermotm
Mon, 24 Jul 2006 12:30:39 +0000
branchgnome-2-10
changeset 19949 94f49bf19351
parent 19884 8a9ee5371cb5
permissions -rw-r--r--
access control test #4

#
# spec file for package gstreamer
#
# Copyright (c) 2005 Sun Microsystems, Inc.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#

Name:         gstreamer
License:      LGPL
Group:        Libraries/Multimedia
Version:      0.8.10
Release:      35
Distribution: Java Desktop System
Vendor:       Sun Microsystems, Inc.
Summary:      GStreamer streaming media framework runtime.
Source:	 	  http://gstreamer.freedesktop.org/src/gstreamer/%{name}-%{version}.tar.bz2
Source2:      gst-complete-0.8.1.gz
Source3:      gst-complete.1.gz
Source4:      gst-compprep-0.8.1.gz
Source5:      gst-compprep.1.gz
Source6:      gst-feedback-0.8.1.gz
Source7:      gst-feedback.1.gz
Source8:      gst-inspect-0.8.1.gz
Source9:      gst-inspect.1.gz
Source10:     gst-launch-0.8.1.gz
Source11:     gst-launch.1.gz
Source12:     gst-md5sum-0.8.1.gz
Source13:     gst-md5sum.1.gz
Source14:     gst-register-0.8.1.gz
Source15:     gst-register.1.gz
Source16:     gst-typefind-0.8.1.gz
Source17:     gst-typefind.1.gz
Source18:     gst-xmlinspect-0.8.1.gz
Source19:     gst-xmlinspect.1.gz
Source20:     gst-xmllaunch-0.8.1.gz
Source21:     gst-xmllaunch.1.gz
Source22:     libgstreamer-0.8.3.gz
Source23:     libgstdataprotocol.3.gz
Source24:     libgstgetbits.3.gz
Patch1:       gst-01-gettext.diff
URL:          http://gstreamer.net/
BuildRoot:    %{_tmppath}/%{name}-%{version}-build
Docdir:       %{_defaultdocdir}/doc
Autoreqprov:  on
Docdir:       %{_defaultdocdir}/doc
Autoreqprov:  on
Prereq:         /sbin/ldconfig

%define         majorminor      0.8
%define         glib2_version	2.0.1
%define         libxml2_version	2.4.0

Requires:       glib2 >= %{glib2_version}
Requires:       libxml2 >= %{libxml2_version}
Requires:       popt
BuildRequires:  glib2-devel >= %{glib2_version}
BuildRequires:  libxml2-devel >= %{libxml2_version}
BuildRequires:  flex
BuildRequires:  gtk-doc >= 0.7
BuildRequires:  gcc
BuildRequires:  zlib-devel
BuildRequires:  popt

%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
plugins.

%package devel
Summary:        Libraries/include files for GStreamer streaming media frame
Group:          Development/Libraries
Requires:       %{name} = %{version}
Requires:       glib2-devel >= %{glib2_version}
Requires:       libxml2-devel >= %{libxml2_version}

%description devel
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
plugins.

This package contains the libraries and includes files necessary to develop
applications and plugins for GStreamer.

%package tools
Summary:        tools for GStreamer streaming media framework.
Group:          Libraries/Multimedia

%description tools
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
plugins.

This package contains the basic command-line tools used for GStreamer, like
gst-register and gst-launch.  It is split off to allow parallel-installability
in the future.

%prep
%setup -q 
%patch1 -p1

%build
%ifos linux
if [ -x /usr/bin/getconf ]; then
  CPUS=`getconf _NPROCESSORS_ONLN`
fi
%else
  CPUS=`/usr/sbin/psrinfo | grep on-line | wc -l | tr -d ' '`
%endif
if test "x$CPUS" = "x" -o $CPUS = 0; then
  CPUS=1
fi

glib-gettextize -f
libtoolize --force
aclocal $ACLOCAL_FLAGS -I common/m4
automake -a -c -f
autoconf
./configure \
  --prefix=%{_prefix} \
  --sysconfdir=%{_sysconfdir} \
  --mandir=%{_mandir}   \
  --with-cachedir=%{_localstatedir}/cache/gstreamer-%{majorminor} \
  --disable-tests --disable-examples \
  --program-suffix=""

make -j $CPUS

%install
make DESTDIR=$RPM_BUILD_ROOT install
# Clean out files that should not be part of the rpm.
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/gstreamer-%{majorminor}
rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}-%{majorminor}/*.la
rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}-%{majorminor}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
rm -rf $RPM_BUILD_ROOT%{_mandir}/man1
rm -rf $RPM_BUILD_ROOT%{_mandir}/man3
install -d $RPM_BUILD_ROOT%{_mandir}/man1
install -d $RPM_BUILD_ROOT%{_mandir}/man3
install --mode=0644 %SOURCE2 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE3 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE4 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE5 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE6 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE7 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE8 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE9 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE10 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE11 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE12 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE13 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE14 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE15 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE16 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE17 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE18 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE19 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE20 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE21 $RPM_BUILD_ROOT%{_mandir}/man1
install --mode=0644 %SOURCE22 $RPM_BUILD_ROOT%{_mandir}/man3
install --mode=0644 %SOURCE23 $RPM_BUILD_ROOT%{_mandir}/man3
install --mode=0644 %SOURCE24 $RPM_BUILD_ROOT%{_mandir}/man3

%clean
rm -rf $RPM_BUILD_ROOT

%post 
/sbin/ldconfig

%post tools
/sbin/ldconfig
%{_bindir}/gst-register > /dev/null 2> /dev/null

%post devel
/sbin/ldconfig

%postun
/sbin/ldconfig

%files
%defattr(-, root, root)
%doc AUTHORS COPYING README TODO ABOUT-NLS REQUIREMENTS DOCBUILDING
%{_libdir}/libgstreamer-%{majorminor}.so.*
%{_libdir}/libgstcontrol-%{majorminor}.so.*
%dir %{_libdir}/gstreamer-%{majorminor}
%dir %{_localstatedir}/cache/gstreamer-%{majorminor}
%{_libdir}/gstreamer-%{majorminor}/libgst*.so*

%files devel
%defattr(-, root, root)
%dir %{_includedir}/%{name}-%{majorminor}
%dir %{_includedir}/%{name}-%{majorminor}/gst
%{_includedir}/%{name}-%{majorminor}/gst/*.h
%dir %{_includedir}/%{name}-%{majorminor}/gst/bytestream
%{_includedir}/%{name}-%{majorminor}/gst/bytestream/*.h
%dir %{_includedir}/%{name}-%{majorminor}/gst/control
%{_includedir}/%{name}-%{majorminor}/gst/control/*.h
%dir %{_includedir}/%{name}-%{majorminor}/gst/dataprotocol
%{_includedir}/%{name}-%{majorminor}/gst/dataprotocol/*.h
%dir %{_includedir}/%{name}-%{majorminor}/gst/getbits
%{_includedir}/%{name}-%{majorminor}/gst/getbits/*.h
%{_libdir}/libgstreamer-%{majorminor}.so
%{_libdir}/libgstcontrol-%{majorminor}.so
%{_libdir}/pkgconfig/gstreamer-%{majorminor}.pc
%{_libdir}/pkgconfig/gstreamer-control-%{majorminor}.pc
%{_datadir}/aclocal/*.m4
%{_datadir}/gtk-doc
%{_mandir}/man3/*

%files tools
%{_bindir}/gst-complete*
%{_bindir}/gst-compprep*
%{_bindir}/gst-inspect*
%{_bindir}/gst-launch*
%{_bindir}/gst-md5sum*
%{_bindir}/gst-register*
%{_bindir}/gst-feedback*
%{_bindir}/gst-xmllaunch*
%{_bindir}/gst-xmlinspect*
%{_bindir}/gst-typefind*
%{_mandir}/man1/gst-complete*
%{_mandir}/man1/gst-compprep*
%{_mandir}/man1/gst-feedback*
%{_mandir}/man1/gst-inspect*
%{_mandir}/man1/gst-launch*
%{_mandir}/man1/gst-md5sum*
%{_mandir}/man1/gst-register*
%{_mandir}/man1/gst-typefind*
%{_mandir}/man1/gst-xmllaunch*
%{_mandir}/man1/gst-xmlinspect*

%changelog
* Mon Jun 06 2005 - [email protected]
- Removed patch for modifying uninstalled-pc file since it
  is no longer needed.

* Wed May 11 2005 - [email protected]
- Updated to call automake, now needed.

* Wed Nov 17 2004 - [email protected]
- #6195855, install correct man page

* Thu Oct 28 2004 - [email protected]
- Add gst-*, libgst*

* Wed Sep 29 2004 - [email protected]
- Update gst-02-g11n-potfiles.diff
- Update gst-03-gettext.diff to fix 5068957
- Remove gst-04-g11n-potfiles.diff

* Mon Aug 30 2004 - [email protected]
- Add gst-04-g11n-potfiles.diff

* Sun Aug 29 2004 - [email protected]
- Now packaging gtk-docs.

* Tue Aug 23 2004 - [email protected]
- Now building gtk-docs.

* Fri Aug 20 2004 - [email protected]
- Fixed typo.

* Fri Aug 20 2004 - [email protected]
- gst-xmlinspect man page packaged

* Mon Aug 09 2004 - [email protected]
- Corrected Linux packaging.  Corrected Release to 2 since
  this is the 2nd change after bumping the release last
  Thursday.

* Thu Jul 29 2004 - [email protected]
- Bumped revision of gstreamer to 0.8.4, making patches 4 and 5 go away
  since they were integrated into CVS head.

* Fri Jul 15 2004 - [email protected]
- Added patch to change the default scheduler to basicgthread which
  works better than opt for audio and opt doesn't work at all for
  video on Solaris.

* Mon Jul 12 2004 - [email protected]
- ported to rpm4, pkg'd some missing files

* Thu Jul 08 2004 - [email protected]
- Adding gst-l10n-po-1.2.tar.bz2 l10n content

* Wed Jul 07 2004 - [email protected]
- added "-j $CPUS" to make to speed up builds

* Fri May 14 2004 - [email protected]
- added patch 03 from CVS head to support aligned memory access,
  needed for Solaris.
* Wed May 12 2004 - [email protected]
- Updated to tarball 0.8.1 version as per Laca and yippi request.

* Mon May 10 2004 - [email protected]
- autotools-jdsize to fix Makefile problem

* Thu May 02 2004 - [email protected]
- Add glib-gettextize, aclocal, and autoconf calls
  so that gettext patches to configure.in/configure.ac
  get included.  Added patches mentioned above to
  appropriate spec files.

* Mon Apr 05 2004 - [email protected]
- changed majorminor version to 0.8

* Fri Apr 02 2004 - [email protected]
- Upgraded tarball to 0.8.0 which is released for 2.6

* Tue Mar 16 2004 - [email protected]
- Added gst-02-g11n-potfiles.diff
* Mon Mar 08 2004 - [email protected]
- add patch to fix gst-*-uninstslled.pc Cflags.
- disable docs build on Solaris for now (causes gthread error) 

* Fri Feb 13 2004 - [email protected]
- Bump to 0.7.4, update tools files

* Mon Jan 05 2004 - [email protected]
- Fixed the postinstall problem. Basically, gst has allowed for parallel
  installed and had decided to have program named by /usr/bin/gst-regsiter-<majorminor>
  since we do not have parallel installed on our distro, so configure with
  --program-suffix="" to remove the version number.

* Wed Dec 17 2003 - [email protected]
- bump to 0.7.2
 
* Fri Oct 10 2003 - [email protected]
- Removed the patch 01 which is already in 0.63 release of gstreamer
  updtaed spec file to build for Qs. and also include a patch from Bala
  as part of the fix to 4880305.

* Fri Oct 03 2003 - [email protected]
- Pulled out two patches from the 0.63 release that fixes a infinite loop
  and a crash, bugzilla 120741 and 104829.

* Wed Jul 23 2003 - [email protected]
- Added a patch to disable putbits which uses a potential patent ridden
  issue with mpeg

* Tue May 14 2003 - [email protected]
- initial release version for gstreamer