[gstreamer1-plugins-bad-free] Initial Fedora spec file
Brian Pepple
bpepple at fedoraproject.org
Mon Aug 20 16:10:05 UTC 2012
commit 1487d419d1f73e8b7dc2e53f1f369af64ee07a72
Author: Brian Pepple <bpepple at fedoraproject.org>
Date: Mon Aug 20 11:09:17 2012 -0500
Initial Fedora spec file
.gitignore | 1 +
gst-p-bad-cleanup.sh | 189 ++++++++++++++++++++++++++++
gstreamer1-plugins-bad-free.spec | 251 ++++++++++++++++++++++++++++++++++++++
sources | 1 +
4 files changed, 442 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..61bfd7f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/gst-plugins-bad-free-0.11.93.tar.xz
diff --git a/gst-p-bad-cleanup.sh b/gst-p-bad-cleanup.sh
new file mode 100755
index 0000000..ac8d44f
--- /dev/null
+++ b/gst-p-bad-cleanup.sh
@@ -0,0 +1,189 @@
+#!/bin/sh
+
+# Process a gst-plugins-bad tarball to remove
+# unwanted GStreamer plugins.
+#
+# See https://bugzilla.redhat.com/show_bug.cgi?id=532470
+# for details
+#
+# Bastien Nocera <bnocera at redhat.com> - 2010
+#
+
+SOURCE="$1"
+NEW_SOURCE=`echo $SOURCE | sed 's/bad-/bad-free-/'`
+DIRECTORY=`echo $SOURCE | sed 's/\.tar\.xz//'`
+
+ALLOWED="
+aacparse
+adpcmdec
+adpcmenc
+aiff
+aiffparse
+amrparse
+asfmux
+audioparsers
+audiovisualizers
+autoconvert
+bayer
+camerabin
+camerabin2
+cdxaparse
+coloreffects
+colorspace
+dataurisrc
+dccp
+debugutils
+dtmf
+faceoverlay
+festival
+fieldanalysis
+freeverb
+freeze
+frei0r
+gaudieffects
+geometrictransform
+h264parse
+hdvparse
+hls
+id3tag
+inter
+interlace
+invtelecine
+ivfparse
+jpegformat
+jp2kdecimator
+legacyresample
+librfb
+liveadder
+mve
+mpegdemux
+mpeg4videoparse
+mpegpsmux
+mpegtsdemux
+mpegtsmux
+mpegvideoparse
+mxf
+nsf
+nuvdemux
+patchdetect
+pcapparse
+pnm
+qtmux
+rawparse
+removesilence
+rtpmux
+rtpvp8
+scaletempo
+sdi
+sdp
+segmentclip
+selector
+smooth
+speed
+stereo
+subenc
+tta
+valve
+videofilters
+videomaxrate
+videomeasure
+videoparsers
+videosignal
+vmnc
+y4m
+"
+
+NOT_ALLOWED="
+dvbsuboverlay
+dvdspu
+real
+siren
+"
+
+error()
+{
+ MESSAGE=$1
+ echo $MESSAGE
+ exit 1
+}
+
+check_allowed()
+{
+ MODULE=$1
+ for i in $ALLOWED ; do
+ if test x$MODULE = x$i ; then
+ return 0;
+ fi
+ done
+ # Ignore errors coming from ext/ directory
+ # they require external libraries so are ineffective anyway
+ return 1;
+}
+
+check_not_allowed()
+{
+ MODULE=$1
+ for i in $NOT_ALLOWED ; do
+ if test x$MODULE = x$i ; then
+ return 0;
+ fi
+ done
+ return 1;
+}
+
+rm -rf $DIRECTORY
+tar xJf $SOURCE || error "Cannot unpack $SOURCE"
+pushd $DIRECTORY > /dev/null || error "Cannot open directory \"$DIRECTORY\""
+
+unknown=""
+for subdir in gst ext sys; do
+ for dir in $subdir/* ; do
+ # Don't touch non-directories
+ if ! [ -d $dir ] ; then
+ continue;
+ fi
+ MODULE=`basename $dir`
+ if ( check_not_allowed $MODULE ) ; then
+ echo "**** Removing $MODULE ****"
+ echo "Removing directory $dir"
+ rm -r $dir || error "Cannot remove $dir"
+ if grep -q "AG_GST_CHECK_PLUGIN($MODULE)" configure.ac ; then
+ echo "Removing element check for $MODULE"
+ grep -v "AG_GST_CHECK_PLUGIN($MODULE)" configure.ac > configure.ac.new && mv configure.ac.new configure.ac
+ fi
+ echo "Removing Makefile generation for $MODULE"
+ grep -v "$dir/Makefile" configure.ac > configure.ac.new && mv configure.ac.new configure.ac
+ # Urgh
+ if test $MODULE = real ; then
+ grep -v "AG_GST_DISABLE_PLUGIN(real)" configure.ac > configure.ac.new && mv configure.ac.new configure.ac
+ fi
+ echo "Removing documentation for $MODULE"
+ if grep -q "$MODULE" docs/plugins/Makefile.am ; then
+ grep -v $dir docs/plugins/Makefile.am > docs/plugins/Makefile.am.new && mv docs/plugins/Makefile.am.new docs/plugins/Makefile.am
+ fi
+ echo
+ elif test $subdir = ext || test $subdir = sys; then
+ # Ignore library or system non-blacklisted plugins
+ continue;
+ elif ! ( check_allowed $MODULE ) ; then
+ echo "Unknown module in $dir"
+ unknown="$unknown $dir"
+ fi
+ done
+done
+
+echo
+
+if test "x$unknown" != "x"; then
+ echo -n "Aborting due to unkown modules: "
+ echo "$unknown" | sed "s/ /\n /g"
+ exit 1
+fi
+
+autoreconf
+
+popd > /dev/null
+
+tar cJf $NEW_SOURCE $DIRECTORY
+echo "$NEW_SOURCE is ready to use"
+
diff --git a/gstreamer1-plugins-bad-free.spec b/gstreamer1-plugins-bad-free.spec
new file mode 100644
index 0000000..8d3b297
--- /dev/null
+++ b/gstreamer1-plugins-bad-free.spec
@@ -0,0 +1,251 @@
+%global majorminor 1.0
+
+# Turn of extras package on RHEL.
+%if ! 0%{?rhel}
+%bcond_without extras
+%else
+%bcond_with extras
+%endif
+
+Name: gstreamer1-plugins-bad-free
+Version: 0.11.93
+Release: 2%{?dist}
+Summary: GStreamer streaming media framework "bad" plugins
+
+License: LGPLv2+ and LGPLv2
+URL: http://gstreamer.freedesktop.org/
+# The source is:
+# http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-%{version}.tar.xz
+# modified with gst-p-bad-cleanup.sh from SOURCE1
+Source0: gst-plugins-bad-free-%{version}.tar.xz
+Source1: gst-p-bad-cleanup.sh
+
+BuildRequires: gstreamer1-devel >= %{version}
+BuildRequires: gstreamer1-plugins-base-devel >= %{version}
+
+BuildRequires: check
+BuildRequires: gettext-devel
+BuildRequires: PyXML
+BuildRequires: libXt-devel
+BuildRequires: gtk-doc
+
+BuildRequires: bzip2-devel
+BuildRequires: exempi-devel
+BuildRequires: gsm-devel
+BuildRequires: jasper-devel
+## Plugin not ported
+#BuildRequires: ladspa-devel
+BuildRequires: libdvdnav-devel
+BuildRequires: libexif-devel
+BuildRequires: libiptcdata-devel
+BuildRequires: libmpcdec-devel
+BuildRequires: liboil-devel
+BuildRequires: librsvg2-devel
+BuildRequires: libsndfile-devel
+BuildRequires: libvpx-devel
+BuildRequires: mesa-libGLU-devel
+BuildRequires: openssl-devel
+BuildRequires: orc-devel
+Buildrequires: wavpack-devel
+
+BuildRequires: chrpath
+
+%if %{with extras}
+BuildRequires: celt-devel
+## Plugins not ported
+#BuildRequires: dirac-devel
+#BuildRequires: gmyth-devel >= 0.4
+BuildRequires: libass-devel
+## Plugin not ported
+#BuildRequires: libcdaudio-devel
+BuildRequires: libcurl-devel
+## Plugin not ported
+#BuildRequires: libkate-devel
+BuildRequires: libmodplug-devel
+## Plugins not ported
+#BuildRequires: libmusicbrainz-devel
+#BuildRequires: libtimidity-devel
+BuildRequires: libvdpau-devel
+# Requires opencv version < 2.3.1, Rawhide currently has 2.4.2
+#BuildRequires: opencv-devel
+BuildRequires: schroedinger-devel
+## Plugins not ported
+#BuildRequires: SDL-devel
+#BuildRequires: slv2-devel
+BuildRequires: soundtouch-devel
+#BuildRequires: wildmidi-devel
+BuildRequires: zbar-devel
+BuildRequires: zvbi-devel
+%endif
+
+
+%description
+GStreamer is a streaming media framework, based on graphs of elements which
+operate on media data.
+
+This package contains plug-ins that aren't tested well enough, or the code
+is not of good enough quality.
+
+
+%if %{with extras}
+%package extras
+Summary: Extra GStreamer "bad" plugins (less often used "bad" plugins)
+Requires: %{name} = %{version}-%{release}
+
+
+%description extras
+GStreamer is a streaming media framework, based on graphs of elements which
+operate on media data.
+
+gstreamer-plugins-bad contains plug-ins that aren't tested well enough,
+or the code is not of good enough quality.
+
+This package (%{name}-extras) contains
+extra "bad" plugins for sources (mythtv), sinks (fbdev) and
+effects (pitch) which are not used very much and require additional
+libraries to be installed.
+%endif
+
+
+%package devel
+Summary: Development files for the GStreamer media framework "bad" plug-ins
+Requires: %{name} = %{version}-%{release}
+Requires: gstreamer1-plugins-base-devel
+
+
+%description devel
+GStreamer is a streaming media framework, based on graphs of elements which
+operate on media data.
+
+This package contains the development files for the plug-ins that
+aren't tested well enough, or the code is not of good enough quality.
+
+
+%prep
+%setup -q -n gst-plugins-bad-%{version}
+
+
+%build
+%configure \
+ --with-package-name="Fedora GStreamer-plugins-bad package" \
+ --with-package-origin="http://download.fedoraproject.org" \
+ %{!?with_extras:--disable-fbdev --disable-decklink --disable-linsys} \
+ --enable-debug --disable-static --enable-gtk-doc --enable-experimental \
+ --disable-divx --disable-dts --disable-faac --disable-faad --disable-nas \
+ --disable-mimic --disable-libmms --disable-mpeg2enc --disable-mplex \
+ --disable-neon --disable-openal --disable-rtmp --disable-xvid
+make %{?_smp_mflags}
+
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make install DESTDIR=$RPM_BUILD_ROOT
+
+%find_lang gst-plugins-bad-%{majorminor}
+find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
+# Kill rpath
+chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstvideoparsersbad.so
+chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerabin2.so
+
+
+%post -p /sbin/ldconfig
+
+
+%postun -p /sbin/ldconfig
+
+
+%files -f gst-plugins-bad-%{majorminor}.lang
+%doc AUTHORS COPYING COPYING.LIB README REQUIREMENTS
+%{_datadir}/gstreamer-%{majorminor}/presets/GstVP8Enc.prs
+
+%{_libdir}/libgstbasecamerabinsrc-%{majorminor}.so.*
+%{_libdir}/libgstbasevideo-%{majorminor}.so.*
+%{_libdir}/libgstcodecparsers-%{majorminor}.so.*
+%{_libdir}/libgstphotography-%{majorminor}.so.*
+%{_libdir}/libgstsignalprocessor-%{majorminor}.so.*
+# Plugins without external dependencies
+%{_libdir}/gstreamer-%{majorminor}/libgstadpcmdec.so
+%{_libdir}/gstreamer-%{majorminor}/libgstadpcmenc.so
+%{_libdir}/gstreamer-%{majorminor}/libgstasfmux.so
+%{_libdir}/gstreamer-%{majorminor}/libgstaudiovisualizers.so
+%{_libdir}/gstreamer-%{majorminor}/libgstautoconvert.so
+%{_libdir}/gstreamer-%{majorminor}/libgstbayer.so
+%{_libdir}/gstreamer-%{majorminor}/libgstcamerabin2.so
+%{_libdir}/gstreamer-%{majorminor}/libgstcoloreffects.so
+%{_libdir}/gstreamer-%{majorminor}/libgstdataurisrc.so
+%{_libdir}/gstreamer-%{majorminor}/libgstdtmf.so
+%{_libdir}/gstreamer-%{majorminor}/libgstfestival.so
+%{_libdir}/gstreamer-%{majorminor}/libgstfragmented.so
+%{_libdir}/gstreamer-%{majorminor}/libgstgaudieffects.so
+%{_libdir}/gstreamer-%{majorminor}/libgstgeometrictransform.so
+%{_libdir}/gstreamer-%{majorminor}/libgstinterlace.so
+%{_libdir}/gstreamer-%{majorminor}/libgstmpegpsdemux.so
+%{_libdir}/gstreamer-%{majorminor}/libgstmpegtsdemux.so
+%{_libdir}/gstreamer-%{majorminor}/libgstmpegtsmux.so
+%{_libdir}/gstreamer-%{majorminor}/libgstpcapparse.so
+%{_libdir}/gstreamer-%{majorminor}/libgstrawparse.so
+%{_libdir}/gstreamer-%{majorminor}/libgstremovesilence.so
+%{_libdir}/gstreamer-%{majorminor}/libgstrtpmux.so
+%{_libdir}/gstreamer-%{majorminor}/libgstrtpvp8.so
+%{_libdir}/gstreamer-%{majorminor}/libgstscaletempoplugin.so
+%{_libdir}/gstreamer-%{majorminor}/libgstsdpelem.so
+%{_libdir}/gstreamer-%{majorminor}/libgstsegmentclip.so
+%{_libdir}/gstreamer-%{majorminor}/libgstshm.so
+%{_libdir}/gstreamer-%{majorminor}/libgstsmooth.so
+%{_libdir}/gstreamer-%{majorminor}/libgstvideoparsersbad.so
+%{_libdir}/gstreamer-%{majorminor}/libgsty4mdec.so
+
+# Plugins with external dependencies
+%{_libdir}/gstreamer-%{majorminor}/libgstbz2.so
+%{_libdir}/gstreamer-%{majorminor}/libgstgsm.so
+%{_libdir}/gstreamer-%{majorminor}/libgstvp8.so
+%{_libdir}/gstreamer-%{majorminor}/libgstsoundtouch.so
+
+#debugging plugin
+%{_libdir}/gstreamer-%{majorminor}/libgstdebugutilsbad.so
+
+
+%if %{with extras}
+%files extras
+# Plugins with external dependencies
+%{_libdir}/gstreamer-%{majorminor}/libgstassrender.so
+%{_libdir}/gstreamer-%{majorminor}/libgstcelt.so
+%{_libdir}/gstreamer-%{majorminor}/libgstcurl.so
+%{_libdir}/gstreamer-%{majorminor}/libgstmodplug.so
+%{_libdir}/gstreamer-%{majorminor}/libgstschro.so
+%{_libdir}/gstreamer-%{majorminor}/libgstzbar.so
+%endif
+
+
+%files devel
+%doc %{_datadir}/gtk-doc/html/gst-plugins-bad-plugins-%{majorminor}
+%doc %{_datadir}/gtk-doc/html/gst-plugins-bad-libs-%{majorminor}
+%{_libdir}/libgstbasecamerabinsrc-%{majorminor}.so
+%{_libdir}/libgstbasevideo-%{majorminor}.so
+%{_libdir}/libgstcodecparsers-%{majorminor}.so
+%{_libdir}/libgstphotography-%{majorminor}.so
+%{_libdir}/libgstsignalprocessor-%{majorminor}.so
+
+%{_includedir}/gstreamer-%{majorminor}/gst/basecamerabinsrc
+%{_includedir}/gstreamer-%{majorminor}/gst/codecparsers
+%{_includedir}/gstreamer-%{majorminor}/gst/interfaces/photography*
+%{_includedir}/gstreamer-%{majorminor}/gst/signalprocessor
+%{_includedir}/gstreamer-%{majorminor}/gst/video
+
+# pkg-config files
+%{_libdir}/pkgconfig/gstreamer-basevideo-%{majorminor}.pc
+%{_libdir}/pkgconfig/gstreamer-codecparsers-%{majorminor}.pc
+%{_libdir}/pkgconfig/gstreamer-plugins-bad-%{majorminor}.pc
+
+%changelog
+* Sat Aug 18 2012 Brian Pepple <bpepple at fedoraproject.org> - 0.11.93-2
+- Fix permission on tarball clean-up script.
+- Re-enable soundtouch-devel.
+- Add COPYING.LIB to package.
+- Use %%global instead of %%define.
+
+* Wed Aug 15 2012 Brian Pepple <bpepple at fedoraproject.org> - 0.11.93-1
+- Update to 0.11.93.
+
+* Fri Jul 20 2012 Brian Pepple <bpepple at fedoraproject.org> - 0.11.92-1
+- Initial Fedora spec file.
diff --git a/sources b/sources
index e69de29..5cabe82 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+fcb5b130b43571ec2edbb02a0daed62d gst-plugins-bad-free-0.11.93.tar.xz
More information about the scm-commits
mailing list