building the bad RPM

Chuck Crisler ccrisler at mutualink.net
Mon Apr 29 09:16:49 PDT 2013


%define majorminor  0.10
%define gstreamer   gstreamer

%define gst_minver   0.10.0

Name:         %{gstreamer}-plugins-bad
Version:     0.10.20
Release:     1.gst
Summary:     GStreamer plug-ins of bad quality

%define     majorminor    0.10

Group:         Applications/Multimedia
License:     LGPL
URL:        http://gstreamer.freedesktop.org/
Vendor:         GStreamer Backpackers Team <
package at gstreamer.freedesktop.org>
Source:
http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-%{version}.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u}
-n)

Requires:         %{gstreamer} >= %{gst_minver}
BuildRequires:    %{gstreamer}-devel >= %{gst_minver}

BuildRequires:  gcc-c++
BuildRequires: ladspa-devel
BuildRequires:  faad2-devel >= 2.0
#BuildRequires:  gsm-devel >= 1.0.10
#Requires:      SDL >= 1.2.0
#BuildRequires:  swfdec-devel
Provides:      gstreamer-faad = %{version}-%{release}
Requires:      faac >= 1.23
#Provides:       gstreamer-gsm = %{version}-%{release}
Requires: libmms >= 0.1
#Requires: gmyth

%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 GStreamer Plugins that are considered to be of bad
quality, even though they might work.

%prep
%setup -q -n gst-plugins-bad-%{version}

%build
./configure --prefix=/usr --enable-orc --enable-resindvd --disable-cdaudio \
  --disable-quicktime --disable-jack --disable-cog --disable-dirac
--disable-lv2 \
  --disable-musicbrainz --disable-mythtv --disable-soundtouch
--disable-theoradec --disable-vdpau \
  --disable-vp8 --disable-videomaxrate --disable-shm --disable-invtelecine
--disable-ivfparse \
  --disable-jpegformat --disable-geometrictransform --disable-gaudieffects
--disable-coloreffects \
  --disable-dataurisrc --disable-modplug --disable-segmentclip \
  --enable-ofa --enable-shared --enable-debug=no CFLAGS=-O2

make %{?_smp_mflags}

%install
rm -rf $RPM_BUILD_ROOT

%makeinstall


# 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%{_includedir}/gstreamer-%{majorminor}/gst/video/*.h
rm -f
$RPM_BUILD_ROOT%{_includedir}/gstreamer-%{majorminor}/gst/signalprocessor/*.h
rm -f
$RPM_BUILD_ROOT%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/*.h
sudo rm -f %{_libdir}/pkgconfig/gstreamer-plugins-bad-0.10.pc

%find_lang gst-plugins-bad-%{majorminor}

%clean
rm -rf $RPM_BUILD_ROOT

%files -f gst-plugins-bad-%{majorminor}.lang
%defattr(-, root, root)
%doc AUTHORS COPYING README REQUIREMENTS gst-plugins-bad.doap

# non-core plugins without external dependencies
%{_libdir}/gstreamer-%{majorminor}/libgsttta.so
%{_libdir}/gstreamer-%{majorminor}/libgstspeed.so
%{_libdir}/gstreamer-%{majorminor}/libgstcdxaparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstfreeze.so
%{_libdir}/gstreamer-%{majorminor}/libgsth264parse.so
%{_libdir}/gstreamer-%{majorminor}/libgstnsf.so
%{_libdir}/gstreamer-%{majorminor}/libgstnuvdemux.so
%{_libdir}/gstreamer-%{majorminor}/libgstrfbsrc.so
%{_libdir}/gstreamer-%{majorminor}/libgstreal.so
%{_libdir}/gstreamer-%{majorminor}/libgstmve.so
%{_libdir}/gstreamer-%{majorminor}/libgstmpegvideoparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstbayer.so
%{_libdir}/gstreamer-%{majorminor}/libgstdvdspu.so
%{_libdir}/gstreamer-%{majorminor}/libgstfestival.so
%{_libdir}/gstreamer-%{majorminor}/libgststereo.so
%{_libdir}/gstreamer-%{majorminor}/libgstvcdsrc.so
%{_libdir}/gstreamer-%{majorminor}/libgstdvb.so
%{_libdir}/gstreamer-%{majorminor}/libgstsdpelem.so
%{_libdir}/gstreamer-%{majorminor}/libgstmpeg4videoparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstfbdevsink.so
%{_libdir}/gstreamer-%{majorminor}/libgstrawparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstselector.so
%{_libdir}/gstreamer-%{majorminor}/libgstsubenc.so
%{_libdir}/gstreamer-%{majorminor}/libresindvd.so
%{_libdir}/gstreamer-%{majorminor}/libgstaiff.so
%{_libdir}/gstreamer-%{majorminor}/libgstdccp.so
%{_libdir}/gstreamer-%{majorminor}/libgstpcapparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstmpegtsmux.so
%{_libdir}/gstreamer-%{majorminor}/libgstscaletempoplugin.so
%{_libdir}/gstreamer-%{majorminor}/libgstmpegdemux.so
%{_libdir}/gstreamer-%{majorminor}/libgstjp2k.so
%{_libdir}/gstreamer-%{majorminor}/libgstapexsink.so
%{_libdir}/gstreamer-%{majorminor}/libgstqtmux.so
%{_libdir}/gstreamer-%{majorminor}/libgstlegacyresample.so
%{_libdir}/gstreamer-%{majorminor}/libgstmxf.so
%{_libdir}/gstreamer-%{majorminor}/libgstvmnc.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideosignal.so
%{_libdir}/gstreamer-%{majorminor}/libgstvalve.so
%{_libdir}/gstreamer-%{majorminor}/libgstautoconvert.so
%{_libdir}/gstreamer-%{majorminor}/libgstdtmf.so
%{_libdir}/gstreamer-%{majorminor}/libgstliveadder.so
%{_libdir}/gstreamer-%{majorminor}/libgstrtpmux.so
%{_libdir}/gstreamer-%{majorminor}/libgstsiren.so
%{_libdir}/gstreamer-%{majorminor}/libgstadpcmdec.so
%{_libdir}/gstreamer-%{majorminor}/libgstadpcmenc.so
%{_libdir}/gstreamer-%{majorminor}/libgstid3tag.so
%{_libdir}/gstreamer-%{majorminor}/libgsthdvparse.so
%{_libdir}/gstreamer-%{majorminor}/libgstdebugutilsbad.so
%{_libdir}/gstreamer-%{majorminor}/libgstasfmux.so
%{_libdir}/gstreamer-%{majorminor}/libgstpnm.so
%{_libdir}/gstreamer-%{majorminor}/libgstvideomeasure.so
%{_libdir}/gstreamer-%{majorminor}/libgstaudioparsersbad.so
%{_libdir}/gstreamer-%{majorminor}/libgstrsvg.so

#%{_includedir}/gstreamer-%{majorminor}/gst/video/gstbasevideocodec.h
#%{_includedir}/gstreamer-%{majorminor}/gst/video/gstbasevideodecoder.h
#%{_includedir}/gstreamer-%{majorminor}/gst/video/gstbasevideoencoder.h
#%{_includedir}/gstreamer-%{majorminor}/gst/video/gstbasevideoparse.h
#%{_includedir}/gstreamer-%{majorminor}/gst/video/gstbasevideoutils.h
#%{_includedir}/gstreamer-%{majorminor}/gst/signalprocessor/gstsignalprocessor.h

#%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/photography-enumtypes.h
#%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/photography.h
%{_libdir}/libgstphotography-0.10.so
%{_libdir}/gstreamer-%{majorminor}/libgstcamerabin.so
%{_libdir}/libgstphotography-%{majorminor}.so.0
%{_libdir}/libgstphotography-%{majorminor}.so.0.0.0
%{_libdir}/libgstbasevideo*
%{_libdir}/libgstsignalprocessor*
%{_libdir}/gstreamer-%{majorminor}/libgstmpegpsmux.so

# hopefully very shortlived .pc file for bad
#%{_libdir}/pkgconfig/gstreamer-plugins-bad-0.10.pc

# gstreamer-plugins with external dependencies but in the main package
%{_libdir}/gstreamer-%{majorminor}/libgstfaad.so
%{_libdir}/gstreamer-%{majorminor}/libgstfaac.so
#%{_libdir}/gstreamer-%{majorminor}/libgsttrm.so
#%{_libdir}/gstreamer-%{majorminor}/libgstsdl.so
#%{_libdir}/gstreamer-%{majorminor}/libgstswfdec.so
%{_libdir}/gstreamer-%{majorminor}/libgstmms.so
%{_libdir}/gstreamer-%{majorminor}/libgstxvid.so
%{_libdir}/gstreamer-%{majorminor}/libgstbz2.so
#%{_libdir}/gstreamer-%{majorminor}/libgstneonhttpsrc.so
%{_libdir}/gstreamer-%{majorminor}/libgstalsaspdif.so
#%{_libdir}/gstreamer-%{majorminor}/libgstmusepack.so
#%{_libdir}/gstreamer-%{majorminor}/libgstgsm.so
#%{_libdir}/gstreamer-%{majorminor}/libgstdtsdec.so
%{_libdir}/gstreamer-%{majorminor}/libgstladspa.so
#%{_libdir}/gstreamer-%{majorminor}/libgstmythtvsrc.so
%{_libdir}/gstreamer-%{majorminor}/libgstdc1394.so
#%{_libdir}/gstreamer-%{majorminor}/libgsttimidity.so
#%{_libdir}/gstreamer-%{majorminor}/libgstwildmidi.so
#%{_libdir}/gstreamer-%{majorminor}/libgstjack.so
#%{_libdir}/gstreamer-%{majorminor}/libgstsndfile.so
%{_libdir}/gstreamer-%{majorminor}/libgstcelt.so
%{_libdir}/gstreamer-%{majorminor}/libgstmpeg2enc.so
%{_libdir}/gstreamer-%{majorminor}/libgstmplex.so
%{_libdir}/gstreamer-%{majorminor}/libgstkate.so
%{_libdir}/gstreamer-%{majorminor}/libgstassrender.so
%{_libdir}/gstreamer-%{majorminor}/libgstfrei0r.so
%{_libdir}/gstreamer-%{majorminor}/libgstschro.so
%{_libdir}/gstreamer-%{majorminor}/libgstofa.so
%{_libdir}/gstreamer-%{majorminor}/libgstmetadata.so

%changelog
* Thu Mar 12 2009 Christian Schaller <chrisian.schaller at collabora dot co
uk>
- Add Celt, mpeg2enc and mplex plugins to spec file

* Thu Oct 9 2008 Christian Schaller <chrisian.schaller at collabora dot co
uk>
- flacparse, flvmux and j2kdec plugins added

* Mon Sep 1 2008 Christian Schaller <christian.schaller at collabora dot co
uk>
- Add tsmux and scaletempo plugins

* Fri May 2 2008 Christian Schaller <christian.schaller at collabora dot co
uk>
- Add Wildmidi plugin

* Mon Apr 14 2008 Tim-Philipp Müller <tim.muller at collabora dot co uk>
- Remove souphttpsrc plugin, which has moved to gst-plugins-good.

* Thu Apr 3 2008 Christian Schaller <christian.schaller at collabora dot co
uk>
- Add new OSSv4 plugin to SPEC file

* Tue Apr 1 2008 Tim-Philipp Müller <tim.muller at collabora dot co uk>
- Update spec file for srtenc plugin rename to subenc

* Tue Apr 1 2008 Christian Schaller <christian.schaller at collabora dot co
uk>
- Update spec with libgstsrtenc plugin

* Wed Jan 23 2008 Christian Schaller <christian.schaller at collabora dot
co uk>
- Update spec with fbdev sink and rawparse, remove videoparse

* Fri Dec 14 2007 Christian Schaller <christian.schaller at collabora dot
co uk>
- Update spec file with timidity, libgstdvb, libgstsdpelem,
libgstspeexresample, libgstmpeg4videoparse

* Tue Jun 12 2007 Jan Schmidt <jan at fluendo dot com>
- wavpack and qtdemux have moved to good.

* Thu Mar 22 2007 Christian Schaller <christian at fluendo dot com>
- Add x264 and mpegvideoparse plugins

* Fri Dec 15 2006 Thomas Vander Stichele <thomas at apestaart dot org>
- add doap file
- more cleanup

* Sun Nov 27 2005 Thomas Vander Stichele <thomas at apestaart dot org>
- redone for split

Thank you!


On Mon, Apr 29, 2013 at 12:09 PM, Nathanael D. Noblet <nathanael at gnat.ca>wrote:

> On 04/29/2013 10:01 AM, Chuck Crisler wrote:
>
>> I am trying to build v 0.10.20 of the bad plugins RPM. Almost everything
>> is working except that the rpmbuild process is copying some header files
>> (gst/video, gst/signalprocessor and gst/interfaces) and the
>> gstreamer-plugins-bad-0.10.pc file, which cause dependency problems in
>> the resulting RPM. I am not sure if the *.h files are really causing a
>> problem but the PC file does establish dependency issues. Since this is
>> supposed to be an RPM to distribute binaries, not a devel RPM, why are
>> these files being included? I have modified the spec file to delete the
>> headers but the PC file is troublesome since normal users can't delete
>> it (rw_r__r__).
>>
>
> Post your specfile via pastebin or something and I can perhaps help clean
> that part up...
>
>
> --
> Nathanael d. Noblet
> t 403.875.4613
> ______________________________**_________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.**freedesktop.org<gstreamer-devel at lists.freedesktop.org>
> http://lists.freedesktop.org/**mailman/listinfo/gstreamer-**devel<http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20130429/cb8bd6ea/attachment-0001.html>


More information about the gstreamer-devel mailing list