/[gentoo-x86]/eclass/gst-plugins-bad.eclass
Gentoo

Diff of /eclass/gst-plugins-bad.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.5 Revision 1.40
1# Copyright 1999-2006 Gentoo Foundation 1# Copyright 1999-2009 Gentoo Foundation
2# Distributed under the terms of the GNU General Public License v2 2# Distributed under the terms of the GNU General Public License v2
3# $Header: /var/cvsroot/gentoo-x86/eclass/gst-plugins-bad.eclass,v 1.5 2006/05/10 11:50:14 zaheerm Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/gst-plugins-bad.eclass,v 1.40 2011/07/29 07:01:40 leio Exp $
4 4
5# 5#
6# Original Author: Saleem Abdulrasool <compnerd@gentoo.org> 6# Original Author: Saleem Abdulrasool <compnerd@gentoo.org>
7# Based on the work of foser <foser@gentoo.org> and zaheerm <zaheerm@gentoo.org> 7# Based on the work of foser <foser@gentoo.org> and zaheerm <zaheerm@gentoo.org>
8# Purpose: This elcass is designed to help package external gst-plugins per 8# Purpose: This elcass is designed to help package external gst-plugins per
9# plugin rather than in a single package. 9# plugin rather than in a single package.
10# 10#
11 11
12my_gst_plugins_bad="amrwb bz2 directfb dts divx faac faad gsm gst_v4l2 ivorbis libmms musepack musicbrainz neon opengl sdl sdltest soundtouch swfdec theoradec wavpack xvid" 12inherit eutils versionator gst-plugins10
13#qtdemux spped tta
14 13
15inherit eutils gst-plugins10 14# This list is current for gst-plugins-bad-0.10.21.
15my_gst_plugins_bad="directsound directdraw osx_video quicktime vcd
16assrender amrwb apexsink bz2 cdaudio celt cog dc1394 directfb dirac dts divx
17faac faad fbdev flite gsm jp2k kate ladspa lv2 libmms
18modplug mimic mpeg2enc mplex musepack musicbrainz mythtv nas neon ofa rsvg
19timidity wildmidi sdl sdltest sndfile soundtouch spc gme swfdec xvid
20dvb wininet acm vdpau schro zbar resindvd vp8"
21
22# When adding conditionals like below, be careful about having leading spaces
23
24# Changes in 0.10.22:
25# New curlsink element in a new curl plugin
26# New Blackmagic Decklink source and sink
27# New Linear Systems SDI plugin
28if version_is_at_least "0.10.22"; then
29 my_gst_plugins_bad+=" curl decklink linsys"
30fi
31
32# Unused ancient theora decoder, better one in -base long ago
33if ! version_is_at_least "0.10.22"; then
34 my_gst_plugins_bad+=" theoradec"
35fi
36
37# Changes in 0.10.21:
38# New opencv and apple_media plugins
39if version_is_at_least "0.10.21"; then
40 my_gst_plugins_bad+=" opencv apple_media"
41fi
42
43# exif for a specific jifmux tests purpose only.
44# Made automagic in 0.10.22, which is fine as a non-installed test
45if [ ${PV} == "0.10.21" ]; then
46 my_gst_plugins_bad+=" exif"
47fi
48
49# jack moved to -good, metadata removed (functionality in base classes)
50# alsaspdif gone (gst-plugins-alsa from -base can do spdif on its own long ago)
51if ! version_is_at_least "0.10.21"; then
52 my_gst_plugins_bad+=" jack metadata alsa"
53fi
54
55# Changes in 0.10.20:
56# New split plugins rtmp, gsettings and shm
57if version_is_at_least "0.10.20"; then
58 my_gst_plugins_bad+=" rtmp gsettings shm"
59fi
16 60
17MY_PN="gst-plugins-bad" 61MY_PN="gst-plugins-bad"
18MY_P=${MY_PN}-${PV} 62MY_P=${MY_PN}-${PV}
19 63
20SRC_URI="http://gstreamer.freedesktop.org/src/gst-plugins-bad/${MY_P}.tar.bz2" 64SRC_URI="http://gstreamer.freedesktop.org/src/gst-plugins-bad/${MY_P}.tar.bz2"
21 65
22# added to remove circular deps 66# added to remove circular deps
23# 6/2/2006 - zaheerm 67# 6/2/2006 - zaheerm
24if [ "${PN}" != "${MY_PN}" ]; then 68if [ "${PN}" != "${MY_PN}" ]; then
25RDEPEND="=media-libs/gstreamer-0.10* 69RDEPEND="=media-libs/gstreamer-0.10*
26 =media-libs/gst-plugins-base-0.10* 70 =media-libs/gst-plugins-base-0.10*
27 >=dev-libs/glib-2.6 71 >=dev-libs/glib-2.6"
28 >=dev-libs/liboil-0.3"
29DEPEND="${RDEPEND} 72DEPEND="${RDEPEND}
30 sys-apps/sed 73 sys-apps/sed
74 dev-util/pkgconfig
31 sys-devel/gettext" 75 sys-devel/gettext"
76
77# -bad-0.10.20 uses orc optionally instead of liboil unconditionally.
78# While <0.10.20 configure always check for liboil, it is used only by non-split
79# plugins in gst/ (legacyresample and mpegdemux), so we only builddep for all
80# old packages, and have a RDEPEND in old versions of media-libs/gst-plugins-bad
81if ! version_is_at_least "0.10.20"; then
82DEPEND="${DEPEND} >=dev-libs/liboil-0.3.8"
83fi
84
85RESTRICT=test
32fi 86fi
33S=${WORKDIR}/${MY_P} 87S=${WORKDIR}/${MY_P}
34 88
35gst-plugins-bad_src_unpack() { 89gst-plugins-bad_src_unpack() {
36 local makefiles 90# local makefiles
37 91
38 unpack ${A} 92 unpack ${A}
39 93
94 # Link with the syswide installed gst-libs if needed
40 gst-plugins10_find_plugin_dir 95 gst-plugins10_find_plugin_dir
41 cd ${S} 96 sed -e "s:\$(top_builddir)/gst-libs/gst/interfaces/libgstphotography:${ROOT}/usr/$(get_libdir)/libgstphotography:" \
97 -e "s:\$(top_builddir)/gst-libs/gst/signalprocessor/libgstsignalprocessor:${ROOT}/usr/$(get_libdir)/libgstsignalprocessor:" \
98 -e "s:\$(top_builddir)/gst-libs/gst/video/libgstbasevideo:${ROOT}/usr/$(get_libdir)/libgstbasevideo:" \
99 -e "s:\$(top_builddir)/gst-libs/gst/basecamerabinsrc/libgstbasecamerabinsrc:${ROOT}/usr/$(get_libdir)/libgstbasecamerabinsrc:" \
100 -i Makefile.in
42 101
43 # Remove generation of any other Makefiles except the plugin's Makefile 102 # Remove generation of any other Makefiles except the plugin's Makefile
44 if [[ -d "${S}/sys/${GST_PLUGINS_BUILD_DIR}" ]] ; then 103# if [[ -d "${S}/sys/${GST_PLUGINS_BUILD_DIR}" ]] ; then
45 makefiles="Makefile sys/Makefile sys/${GST_PLUGINS_BUILD_DIR}/Makefile" 104# makefiles="Makefile sys/Makefile sys/${GST_PLUGINS_BUILD_DIR}/Makefile"
46 elif [[ -d "${S}/ext/${GST_PLUGINS_BUILD_DIR}" ]] ; then 105# elif [[ -d "${S}/ext/${GST_PLUGINS_BUILD_DIR}" ]] ; then
47 makefiles="Makefile ext/Makefile ext/${GST_PLUGINS_BUILD_DIR}/Makefile" 106# makefiles="Makefile ext/Makefile ext/${GST_PLUGINS_BUILD_DIR}/Makefile"
48 fi 107# fi
49 108
50 sed -e "s:ac_config_files=.*:ac_config_files='${makefiles}':" \ 109# sed -e "s:ac_config_files=.*:ac_config_files='${makefiles}':" \
51 -i ${S}/configure 110# -i ${S}/configure
52} 111}
53 112
54gst-plugins-bad_src_configure() { 113gst-plugins-bad_src_configure() {
55 local plugin gst_conf 114 local plugin gst_conf
56 115
57 einfo "Configuring to build ${GST_PLUGINS_BUILD} plugin(s) ..." 116 einfo "Configuring to build ${GST_PLUGINS_BUILD} plugin(s) ..."
58
59 for plugin in ${GST_PLUGINS_BUILD} ; do
60 my_gst_plugins_bad="${my_gst_plugins_bad/${plugin}/}"
61 done
62 117
63 for plugin in ${my_gst_plugins_bad} ; do 118 for plugin in ${my_gst_plugins_bad} ; do
64 gst_conf="${gst_conf} --disable-${plugin}" 119 gst_conf="${gst_conf} --disable-${plugin}"
65 done 120 done
66 121
67 for plugin in ${GST_PLUGINS_BUILD} ; do 122 for plugin in ${GST_PLUGINS_BUILD} ; do
68 gst_conf="${gst_conf} --enable-${plugin}" 123 gst_conf="${gst_conf} --enable-${plugin}"
69 done 124 done
70 125
71 cd ${S} 126 cd ${S}
72 econf ${@} ${gst_conf} || die "configure failed" 127 econf ${@} --with-package-name="Gentoo GStreamer Ebuild" --with-package-origin="http://www.gentoo.org" ${gst_conf} || die "configure failed"
73} 128}
74 129
75gst-plugins-bad_src_compile() { 130gst-plugins-bad_src_compile() {
76 gst-plugins-bad_src_configure ${@} 131 gst-plugins-bad_src_configure ${@}
77 132
81 136
82gst-plugins-bad_src_install() { 137gst-plugins-bad_src_install() {
83 gst-plugins10_find_plugin_dir 138 gst-plugins10_find_plugin_dir
84 einstall || die "install failed" 139 einstall || die "install failed"
85 140
86 dodoc README 141 [[ -e README ]] && dodoc README
87} 142}
88 143
89EXPORT_FUNCTIONS src_unpack src_compile src_install 144EXPORT_FUNCTIONS src_unpack src_compile src_install

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.40

  ViewVC Help
Powered by ViewVC 1.1.20