Re: building gstreamer-plugins from SRPM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2003-11-14 at 22:05, Jason Fiset wrote:
> I'd like to build my own custom gstreamer-mp3 plugin so I started by
> getting the SRPM for the gstreamer-plugin RPM and am trying to derrive
> the MP3 RPM from it and the original gstreamer-plugin tar file from the
> official gstreamer site.
...
> Any idea why these files are not getting built?

There are a few "BuildRequires" missing from the default .spec file. You
need to install libghttp-devel and libraw1394-devel (for starters).

Here is the spec file I use.

Marc.


%define         _glib2          2.0.0
%define         hermes_version  1.3.3

Summary: GStreamer Streaming-media framework plugins
Name: gstreamer-plugins
Version: 0.6.3
%define major 0.6
Release: 3.md.2
License: LGPL
Group: Applications/Multimedia
Source: gst-plugins-%{version}.tar.gz
#Source2: patch-tarball.sh
#Source3: removed-sources.txt
Source4: http://clanlib.org/download/files/Hermes-%{hermes_version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-root
Requires: glib2 >= %_glib2
BuildRequires: glib2-devel >= %_glib2
Requires: gstreamer >= %{version}
PreReq: /usr/bin/gst-register
PreReq: GConf2
PreReq: /usr/bin/gconftool-2
BuildRequires: gstreamer-devel >= %{version} 
BuildRequires: arts-devel
BuildRequires: audiofile-devel >= 0.2.1
BuildRequires: cdparanoia-devel >= alpha9.7
BuildRequires: esound-devel >= 0.2.8
BuildRequires: gnome-vfs2-devel >= 2.1.3
BuildRequires: libjpeg-devel
BuildRequires: libmad
BuildRequires: mikmod
BuildRequires: gstreamer-devel >= 0.5.2-8
BuildRequires: SDL-devel >= 1.2.0
BuildRequires: libogg-devel >= 1.0
BuildRequires: libvorbis-devel >= 0:1.0beta4
BuildRequires: xmms-devel
BuildRequires: autoconf automake libtool
BuildRequires: a52dec-devel libghttp-devel libraw1394-devel
Patch1: gst-plugins-0.4.2-pthread-includes.patch
#Patch2: gstreamer-plugins-0.5.0-libdirfix.patch
#Patch3: gstreamer-plugins-0.6.0-fPIC.patch
#Patch4: gstreamer-plugins-0.6.0-noffmpeg.patch

%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 plugins.
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
Requires: gstreamer-devel >= %{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.

%prep
%setup -q -n gst-plugins-%{version} -a 4

%patch1 -p1 -b .pthread-includes
#%patch2 -p1 -b .libdirfix
#%patch3 -p1 -b .fPIC
#%patch4 -p1 -b .noffmpeg

for docfile in AUTHORS COPYING README ; do
	cp Hermes-%{hermes_version}/${docfile} ${docfile}.Hermes
done

%build
hermes_top=`pwd`/Hermes-install

pushd Hermes-%{hermes_version}
aclocal
libtoolize --force --copy
automake
autoconf
CFLAGS="$RPM_OPT_FLAGS -fPIC"; export CFLAGS
./configure --disable-shared --enable-static \
	--prefix=${hermes_top} \
	--includedir=${hermes_top}/include \
	--libdir=${hermes_top}/%{_lib}
make all install
popd

aclocal -I m4  -I common/m4
libtoolize --force --copy
automake
autoconf

CFLAGS="$RPM_OPT_FLAGS -I${hermes_top}/include"; export CFLAGS
CPPFLAGS="-I${hermes_top}/include"; export CPPFLAGS
LDFLAGS="-L${hermes_top}/%{_lib}"; export LDFLAGS

%configure --disable-vorbistest \
%ifnarch %{ix86}
  --disable-qcam \
%else
  --enable-qcam \
%endif
  --enable-DEBUG --disable-tests --disable-examples

make ##%{?_smp_mflags}

#cp %{SOURCE3} .

%install
rm -rf $RPM_BUILD_ROOT
export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1
%makeinstall
unset GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL

rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{major}/*.la
rm -f $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{major}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
rm -f $RPM_BUILD_ROOT%{_includedir}/gstreamer-%{major}/gst/media-info/media-info.h
rm -f $RPM_BUILD_ROOT%{_libdir}/libgstmedia-info*.so*

%clean
rm -rf $RPM_BUILD_ROOT

%post
/sbin/ldconfig
env DISPLAY= /usr/bin/gst-register >/dev/null 2>&1
export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source`
SCHEMAS="gstreamer.schemas"
for S in $SCHEMAS; do 
  gconftool-2 --makefile-install-rule /etc/gconf/schemas/$S > /dev/null
done

%postun
/sbin/ldconfig
env DISPLAY= /usr/bin/gst-register >/dev/null 2>&1

%files
%defattr(-, root, root)
%doc AUTHORS COPYING README
%doc AUTHORS.Hermes COPYING.Hermes README.Hermes
%{_sysconfdir}/gconf/schemas/gstreamer.schemas
%{_bindir}/*
%{_libdir}/*so.*
%dir %{_libdir}/gstreamer-%{major}
%ifarch %{ix86} ia64 ppc ppc64 x86_64
%{_libdir}/gstreamer-%{major}/libgst1394.*
%endif
%{_libdir}/gstreamer-%{major}/libgstac3parse.*
%{_libdir}/gstreamer-%{major}/libgstadder.*
%{_libdir}/gstreamer-%{major}/libgstalaw.*
%{_libdir}/gstreamer-%{major}/libgstarts.*
%{_libdir}/gstreamer-%{major}/libgstartsdsink.*
%{_libdir}/gstreamer-%{major}/libgstaudio.*
%{_libdir}/gstreamer-%{major}/libgstaudiofile.*
%{_libdir}/gstreamer-%{major}/libgstaudioscale.*
%{_libdir}/gstreamer-%{major}/libgstauparse.*
%{_libdir}/gstreamer-%{major}/libgstavidemux.*
%{_libdir}/gstreamer-%{major}/libgstavimux.*
%{_libdir}/gstreamer-%{major}/libgstcdparanoia.*
%{_libdir}/gstreamer-%{major}/libgstcdplayer.*
%{_libdir}/gstreamer-%{major}/libgstcdxaparse.*
%{_libdir}/gstreamer-%{major}/libgstchart.*
%{_libdir}/gstreamer-%{major}/libgstcolorspace.*
%{_libdir}/gstreamer-%{major}/libgstcutter.*
%{_libdir}/gstreamer-%{major}/libgstdeinterlace.*
%{_libdir}/gstreamer-%{major}/libgsteffectv.*
%{_libdir}/gstreamer-%{major}/libgstesdmon.*
%{_libdir}/gstreamer-%{major}/libgstesdsink.*
%{_libdir}/gstreamer-%{major}/libgstfestival.*
%{_libdir}/gstreamer-%{major}/libgstffmpeg.*
%{_libdir}/gstreamer-%{major}/libgstffmpegall.*
%{_libdir}/gstreamer-%{major}/libgstfilter.*
%{_libdir}/gstreamer-%{major}/libgstflxdec.*
%{_libdir}/gstreamer-%{major}/libgstgnomevfssink.*
%{_libdir}/gstreamer-%{major}/libgstgnomevfssrc.*
%{_libdir}/gstreamer-%{major}/libgstgoom.*
%{_libdir}/gstreamer-%{major}/libgsthttpsrc.*
%{_libdir}/gstreamer-%{major}/libgstidct.*
%{_libdir}/gstreamer-%{major}/libgstintfloat.*
%{_libdir}/gstreamer-%{major}/libgstjpeg.*
%{_libdir}/gstreamer-%{major}/libgstlevel.*
%{_libdir}/gstreamer-%{major}/libgstlame.*
%{_libdir}/gstreamer-%{major}/libgstmad.*
%{_libdir}/gstreamer-%{major}/libgstmedian.*
%{_libdir}/gstreamer-%{major}/libgstmikmod.*
%{_libdir}/gstreamer-%{major}/libgstmodplug.*
%{_libdir}/gstreamer-%{major}/libgstmono2stereo.*
%{_libdir}/gstreamer-%{major}/libgstmonoscope.*
%{_libdir}/gstreamer-%{major}/libgstmp1videoparse.so
%{_libdir}/gstreamer-%{major}/libgstmp3types.so
%{_libdir}/gstreamer-%{major}/libgstmpeg1encoder.so
%{_libdir}/gstreamer-%{major}/libgstmpeg1systemencode.so
%{_libdir}/gstreamer-%{major}/libgstmpeg1types.so
%{_libdir}/gstreamer-%{major}/libgstmpeg2enc.so
%{_libdir}/gstreamer-%{major}/libgstmpeg2subt.so
%{_libdir}/gstreamer-%{major}/libgstmpeg2types.so
%{_libdir}/gstreamer-%{major}/libgstmpegaudio.so
%{_libdir}/gstreamer-%{major}/libgstmpegaudioparse.so
%{_libdir}/gstreamer-%{major}/libgstmpegstream.so
%{_libdir}/gstreamer-%{major}/libgstmulaw.*
%{_libdir}/gstreamer-%{major}/libgstoneton.*
%{_libdir}/gstreamer-%{major}/libgstossaudio.*
%{_libdir}/gstreamer-%{major}/libgstpassthrough.*
%{_libdir}/gstreamer-%{major}/libgstplayondemand.*
%{_libdir}/gstreamer-%{major}/libgstpng.*
%ifarch %{ix86}
%{_libdir}/gstreamer-%{major}/libgstqcam.*
%endif
%{_libdir}/gstreamer-%{major}/libgstqtdemux.*
%{_libdir}/gstreamer-%{major}/libgstresample.*
%{_libdir}/gstreamer-%{major}/libgstriff.*
%{_libdir}/gstreamer-%{major}/libgstrtjpeg.*
%{_libdir}/gstreamer-%{major}/libgstsdlvideosink.*
%{_libdir}/gstreamer-%{major}/libgstsilence.*
%{_libdir}/gstreamer-%{major}/libgstsinesrc.*
%{_libdir}/gstreamer-%{major}/libgstsmooth.*
%{_libdir}/gstreamer-%{major}/libgstsmpte.*
%{_libdir}/gstreamer-%{major}/libgstsnapshot.*
%{_libdir}/gstreamer-%{major}/libgstspectrum.*
%{_libdir}/gstreamer-%{major}/libgstspeed.*
%{_libdir}/gstreamer-%{major}/libgststereo.*
%{_libdir}/gstreamer-%{major}/libgststereo2mono.*
%{_libdir}/gstreamer-%{major}/libgststereosplit.*
%{_libdir}/gstreamer-%{major}/libgstsynaesthesia.*
%{_libdir}/gstreamer-%{major}/libgstudp.*
%{_libdir}/gstreamer-%{major}/libgstv4lelement.*
%{_libdir}/gstreamer-%{major}/libgstv4lmjpegsink.*
%{_libdir}/gstreamer-%{major}/libgstv4lmjpegsrc.*
%{_libdir}/gstreamer-%{major}/libgstv4lsrc.*
%{_libdir}/gstreamer-%{major}/libgstvbidec.*
%{_libdir}/gstreamer-%{major}/libgstvcdsrc.*
%{_libdir}/gstreamer-%{major}/libgstvideo.*
%{_libdir}/gstreamer-%{major}/libgstvideocrop.*
%{_libdir}/gstreamer-%{major}/libgstvideoscale.*
%{_libdir}/gstreamer-%{major}/libgstvideosink.*
%{_libdir}/gstreamer-%{major}/libgstvideotestsrc.*
%{_libdir}/gstreamer-%{major}/libgstvolenv.*
%{_libdir}/gstreamer-%{major}/libgstvolume.*
%{_libdir}/gstreamer-%{major}/libgstvorbis.*
%{_libdir}/gstreamer-%{major}/libgstvumeter.*
%{_libdir}/gstreamer-%{major}/libgstwavenc.*
%{_libdir}/gstreamer-%{major}/libgstwavparse.*
%{_libdir}/gstreamer-%{major}/libgstxvideosink.*
%{_libdir}/gstreamer-%{major}/libgsty4menc.*
%{_libdir}/gstreamer-%{major}/libmixmatrix.*
%{_libdir}/gstreamer-%{major}/*
%{_mandir}/man*/*

%files devel
%defattr(-, root, root)
%{_includedir}/gstreamer-%{major}/gst/*
%{_libdir}/pkgconfig/*.pc
%{_libdir}/*so

%changelog
* Sat Oct  4 2003 Marc Deslauriers <marcdeslauriers@xxxxxxxxxxxx> 0.6.3-3.md.2
- Put back mpeg support in

* Wed Sep 17 2003 Bill Nottingham <notting@xxxxxxxxxx> 0.6.3-3
- more cleanups

* Fri Sep 12 2003 Nalin Dahyabhai <nalin@xxxxxxxxxx> 0.6.3-2
- build gstcolorspace against a static bundled libHermes, which might want
  to move into its own package at some point
- explicitly list the plugins which are built in the files manifest so that
  we get errors if there are some which don't get built or get added between
  releases
- disable qcam on amd64 -- configure disables it on non-i386 arches
- limit 1394 support to amd64,ia64,ppc,ppc64,x86

* Thu Sep 11 2003 Alexander Larsson <alexl@xxxxxxxxxx> 0.6.3-1
- Update to 0.6.3 (gnome 2.4 final)
- remove all mpeg plugins

* Tue Aug 19 2003 Alexander Larsson <alexl@xxxxxxxxxx> 0.6.2-1
- 0.6.2

* Wed Jun 04 2003 Elliot Lee <sopwith@xxxxxxxxxx>
- rebuilt

* Wed May 21 2003 Jeremy Katz <katzj@xxxxxxxxxx> 0.6.0-7
- use automake 1.6

* Mon Feb 17 2003 Florian La Roche <Florian.LaRoche@xxxxxxxxx>
- rebuild to get sane s390x requires

* Tue Feb 11 2003 Jonathan Blandford <jrb@xxxxxxxxxx> 0.6.0-4
- unset the DISPLAY when running gst-register

* Sat Feb  8 2003 Bill Nottingham <notting@xxxxxxxxxx> 0.6.0-4
- move libgst*.so.X.X to main package; things require them (#80518, #83805)
- gstreamer-plugins-devel requires gstreamer-devel (#82506)

* Tue Feb  4 2003 Jonathan Blandford <jrb@xxxxxxxxxx> 0.6.0-3
- remove ffmpeg for now.  It doesn't build -fPIC

* Tue Feb 04 2003 Phil Knirsch <pknirsch@xxxxxxxxxx> 0.6.0-2
- Bump release and rebuild.

* Thu Jan 30 2003 Jonathan Blandford <jrb@xxxxxxxxxx>
- new version.  Requires new gstreamer.

* Wed Jan 22 2003 Tim Powers <timp@xxxxxxxxxx>
- rebuilt

* Wed Jan 15 2003 Matt Wilson <msw@xxxxxxxxxx> 0.5.0-18
- disable qcam on all non x86 and x86_64 platforms

* Mon Dec 30 2002 Florian La Roche <Florian.LaRoche@xxxxxxxxx>
- fix spec file to better remove libgstmedia-info
- exclude for mainframe

* Thu Dec 19 2002 Elliot Lee <sopwith@xxxxxxxxxx> 0.5.0-15
- Include ia64
- Add BuildRequires: autoconf automake

* Wed Dec 18 2002 Jonathan Blandford <jrb@xxxxxxxxxx>
- rebuild

* Tue Dec 17 2002 Jonathan Blandford <jrb@xxxxxxxxxx> 0.5.0-12
- rebuild

* Mon Dec 16 2002 Jonathan Blandford <jrb@xxxxxxxxxx> 0.5.0-10
- rebuild
- disable tests

* Mon Dec 16 2002 Tim Powers <timp@xxxxxxxxxx> 0.5.0-9
- rebuild

* Wed Dec 11 2002 Jonathan Blandford <jrb@xxxxxxxxxx> 0.5.0-7
- fix libdir for ia64.

* Wed Dec 11 2002 Jonathan Blandford <jrb@xxxxxxxxxx> 0.5.0-3
- ExcludeArch: ia64.   Random assembler errors that I have no hope of fixing
- Add devel package

* Wed Dec 11 2002 Jonathan Blandford <jrb@xxxxxxxxxx> 0.5.0-1
- 0.5.0
- apparently, festival-devel isn't needed.

* Tue Dec 10 2002 Tim Powers <timp@xxxxxxxxxx> 0.4.2-3
- rebuild to fix broken dep on libgstreamer-0.4.2.so.0

* Tue Dec  3 2002 Havoc Pennington <hp@xxxxxxxxxx>
- excludearch the arches that can't build gstreamer cothreads
- well it isn't really SMP-safe
- add patch for including pthread.h when required
- prereq gconftool
- fix typo that broke schema installation in post

* Mon Dec  2 2002 Havoc Pennington <hp@xxxxxxxxxx>
- initial "official" import
- munge tarball for legal cleanliness

* Thu Nov  7 2002 Jeremy Katz <katzj@xxxxxxxxxx>
- 0.4.2

* Mon Sep 23 2002 Jeremy Katz <katzj@xxxxxxxxxx>
- 0.4.1
- install the gconf schema
- use %%configure

* Sun Sep 22 2002 Jeremy Katz <katzj@xxxxxxxxxx>
- update to 0.4.0
- give explicit vorbis include path, don't run vorbis test

* Sun Aug 11 2002 Jeremy Katz <katzj@xxxxxxxxxx>
- collapse into one package to preserve some sanity

* Wed Mar 13 2002 Thomas Vander Stichele <thomas@xxxxxxxxxxxxx>
- added more BuildRequires and Requires
- rearranged some plugins
- added changelog ;)

[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux