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

Contents of /eclass/gst-plugins-good.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.7 - (hide annotations) (download)
Thu May 4 16:21:21 2006 UTC (8 years, 2 months ago) by zaheerm
Branch: MAIN
Changes since 1.6: +2 -2 lines
new plugins in 0.10.3 release

1 zaheerm 1.1 # Copyright 1999-2004 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3 zaheerm 1.7 # $Header: /var/cvsroot/gentoo-x86/eclass/gst-plugins-good.eclass,v 1.6 2006/02/27 12:54:10 zaheerm Exp $
4 zaheerm 1.1
5     # Author : foser <foser@gentoo.org>, zaheerm <zaheerm@gentoo.org>
6    
7     # gst-plugins-good eclass
8     #
9     # eclass to make external gst-plugins emergable on a per-plugin basis
10     # to solve the problem with gst-plugins generating far too much unneeded deps
11     #
12 swegener 1.3 # 3rd party applications using gstreamer now should depend on a set of plugins as
13     # defined in the source, obtain recommended plugins to use from
14     # Gentoo developers responsible for gstreamer <gnome@gentoo.org>, the application developer
15 zaheerm 1.1 # or the gstreamer team.
16    
17     inherit eutils gst-plugins10
18    
19    
20     ###
21     # variable declarations
22     ###
23    
24     MY_PN=gst-plugins-good
25     MY_P=${MY_PN}-${PV}
26     # All relevant configure options for gst-plugins
27     # need a better way to extract these
28     # gst-plugins-base 0.9
29 zaheerm 1.7 my_gst_plugins_good="gconf gconftool oss aalib aalibtest cairo cdio esd esdtest flac jpeg ladspa libcaca libdv libpng dv1394 shout2 shout2test speex annodex hal x"
30 zaheerm 1.1
31     #SRC_URI="mirror://gnome/sources/gst-plugins/${PV_MAJ_MIN}/${MY_P}.tar.bz2"
32     SRC_URI="http://gstreamer.freedesktop.org/src/gst-plugins-good/${MY_P}.tar.bz2"
33    
34     S=${WORKDIR}/${MY_P}
35 zaheerm 1.4 # added to remove circular deps
36     # 6/2/2006 - zaheerm
37     if [ "${PN}" != "${MY_PN}" ]; then
38     RDEPEND="=media-libs/gst-plugins-base-0.10*"
39 zaheerm 1.1 DEPEND="${RDEPEND}
40     >=sys-apps/sed-4"
41 zaheerm 1.4 fi
42 zaheerm 1.1
43     ###
44     # public functions
45     ###
46    
47     gst-plugins-good_src_configure() {
48 swegener 1.3
49 zaheerm 1.1 # disable any external plugin besides the plugin we want
50     local plugin gst_conf
51    
52     einfo "Configuring to build ${GST_PLUGINS_BUILD} plugin(s) ..."
53    
54     for plugin in ${GST_PLUGINS_BUILD}; do
55     my_gst_plugins_good=${my_gst_plugins_good/${plugin}/}
56     done
57     for plugin in ${my_gst_plugins_good}; do
58     gst_conf="${gst_conf} --disable-${plugin} "
59     done
60     for plugin in ${GST_PLUGINS_BUILD}; do
61     gst_conf="${gst_conf} --enable-${plugin} "
62     done
63    
64     cd ${S}
65     econf ${@} ${gst_conf} || die "./configure failure"
66    
67     }
68    
69     ###
70     # public inheritable functions
71     ###
72    
73     gst-plugins-good_src_unpack() {
74    
75     local makefiles
76    
77     unpack ${A}
78    
79     # Link with the syswide installed gst-libs if needed
80     gst-plugins10_find_plugin_dir
81     cd ${S}
82    
83     # Remove generation of any other Makefiles except the plugin's Makefile
84     if [ -d "${S}/sys/${GST_PLUGINS_BUILD_DIR}" ]; then
85     makefiles="Makefile sys/Makefile sys/${GST_PLUGINS_BUILD_DIR}/Makefile"
86     elif [ -d "${S}/ext/${GST_PLUGINS_BUILD_DIR}" ]; then
87     makefiles="Makefile ext/Makefile ext/${GST_PLUGINS_BUILD_DIR}/Makefile"
88 swegener 1.3 fi
89 zaheerm 1.1 sed -e "s:ac_config_files=.*:ac_config_files='${makefiles}':" \
90     -i ${S}/configure
91    
92     }
93    
94     gst-plugins-good_src_compile() {
95    
96     gst-plugins-good_src_configure ${@}
97    
98     gst-plugins10_find_plugin_dir
99     emake || die "compile failure"
100    
101     }
102    
103     gst-plugins-good_src_install() {
104    
105     gst-plugins10_find_plugin_dir
106     einstall || die
107    
108     dodoc README
109     }
110    
111     EXPORT_FUNCTIONS src_unpack src_compile src_install

  ViewVC Help
Powered by ViewVC 1.1.20