/[gentoo-x86]/eclass/mythtv-plugins.eclass
Gentoo

Contents of /eclass/mythtv-plugins.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.33 - (hide annotations) (download)
Sat Jan 10 14:00:15 2009 UTC (5 years, 11 months ago) by beandog
Branch: MAIN
Changes since 1.32: +4 -1 lines
Add strip restriction, bug 240325

1 cardoe 1.13 # Copyright 1999-2006 Gentoo Foundation
2 cardoe 1.1 # Distributed under the terms of the GNU General Public License v2
3 beandog 1.33 # $Header: /var/cvsroot/gentoo-x86/eclass/mythtv-plugins.eclass,v 1.32 2008/03/11 14:52:45 cardoe Exp $
4 cardoe 1.1 #
5 cardoe 1.11 # Author: Doug Goldstein <cardoe@gentoo.org>
6 cardoe 1.1 #
7 cardoe 1.13 # Installs MythTV plugins along with patches from the release-${PV}-fixes branch
8     #
9 cardoe 1.30 inherit mythtv multilib qt3 versionator subversion
10 cardoe 1.13
11     # Extra configure options to pass to econf
12     MTVCONF=${MTVCONF:=""}
13    
14     SLOT="0"
15 cardoe 1.14 IUSE="${IUSE} debug mmx"
16 cardoe 1.1
17 swegener 1.19 RDEPEND="${RDEPEND}
18 cardoe 1.13 =media-tv/mythtv-${MY_PV}*"
19     DEPEND="${DEPEND}
20     =media-tv/mythtv-${MY_PV}*
21     >=sys-apps/sed-4"
22    
23     S="${WORKDIR}/mythplugins-${MY_PV}"
24    
25 beandog 1.33 # bug 240325
26     RESTRICT="strip"
27    
28 cardoe 1.23 # hijacks the plugins checkout to be:
29 cardoe 1.27 # /usr/portage/distfiles/svn-src/mythplugins/mythplugins/mythvideo/
30 cardoe 1.23 # so that each of the plugins can share the same svn checkout
31     # saving HD space and number of svn checkouts reqired
32     # Great suggestion by Tom Clift <tom@clift.name>
33 cardoe 1.27 ESVN_PROJECT="mythplugins"
34 cardoe 1.23
35 cardoe 1.13 mythtv-plugins_pkg_setup() {
36     # List of available plugins (needs to include ALL of them in the tarball)
37     MYTHPLUGINS="mythbrowser mythcontrols mythdvd mythflix mythgallery"
38     MYTHPLUGINS="${MYTHPLUGINS} mythgame mythmusic mythnews mythphone"
39     MYTHPLUGINS="${MYTHPLUGINS} mythvideo mythweather mythweb"
40    
41     if version_is_at_least "0.20" ; then
42     MYTHPLUGINS="${MYTHPLUGINS} mytharchive"
43     fi
44 cardoe 1.20
45 cardoe 1.30 if version_is_at_least "0.21_beta" ; then
46 cardoe 1.31 MYTHPLUGINS="${MYTHPLUGINS} mythzoneminder mythmovies"
47 cardoe 1.24 MYTHPLUGINS="${MYTHPLUGINS/mythdvd/}"
48 cardoe 1.20 fi
49 cardoe 1.13 }
50 cardoe 1.1
51     mythtv-plugins_src_unpack() {
52 cardoe 1.29 subversion_src_unpack
53 cardoe 1.25 mythtv-plugins_src_unpack_patch
54     }
55    
56     mythtv-plugins_src_unpack_patch() {
57 cardoe 1.13 cd "${S}"
58 swegener 1.8
59 cardoe 1.1 sed -e 's!PREFIX = /usr/local!PREFIX = /usr!' \
60     -i 'settings.pro' || die "fixing PREFIX to /usr failed"
61 swegener 1.8
62 cardoe 1.1 sed -e "s!QMAKE_CXXFLAGS_RELEASE = -O3 -march=pentiumpro -fomit-frame-pointer!QMAKE_CXXFLAGS_RELEASE = ${CXXFLAGS}!" \
63 cardoe 1.3 -i 'settings.pro' || die "Fixing QMake's CXXFLAGS failed"
64 swegener 1.8
65 cardoe 1.1 sed -e "s!QMAKE_CFLAGS_RELEASE = \$\${QMAKE_CXXFLAGS_RELEASE}!QMAKE_CFLAGS_RELEASE = ${CFLAGS}!" \
66 cardoe 1.3 -i 'settings.pro' || die "Fixing Qmake's CFLAGS failed"
67 eradicator 1.2
68 cardoe 1.13 find "${S}" -name '*.pro' -exec sed -i \
69 eradicator 1.2 -e "s:\$\${PREFIX}/lib/:\$\${PREFIX}/$(get_libdir)/:g" \
70     -e "s:\$\${PREFIX}/lib$:\$\${PREFIX}/$(get_libdir):g" \
71     {} \;
72 cardoe 1.1 }
73    
74     mythtv-plugins_src_compile() {
75 cardoe 1.13 cd "${S}"
76 swegener 1.8
77 cardoe 1.1 if use debug; then
78     sed -e 's!CONFIG += release!CONFIG += debug!' \
79     -i 'settings.pro' || die "switching to debug build failed"
80     fi
81 swegener 1.8
82 cardoe 1.3 # if ( use x86 && ! use mmx ) || ! use amd64 ; then
83     if ( ! use mmx ); then
84 cardoe 1.1 sed -e 's!DEFINES += HAVE_MMX!DEFINES -= HAVE_MMX!' \
85     -i 'settings.pro' || die "disabling MMX failed"
86     fi
87    
88     local myconf=""
89    
90     if hasq ${PN} ${MYTHPLUGINS} ; then
91     for x in ${MYTHPLUGINS} ; do
92     if [[ ${PN} == ${x} ]] ; then
93     myconf="${myconf} --enable-${x}"
94     else
95     myconf="${myconf} --disable-${x}"
96     fi
97     done
98     else
99     die "Package ${PN} is unsupported"
100     fi
101    
102     econf ${myconf} ${MTVCONF}
103    
104 cardoe 1.11 ${QTDIR}/bin/qmake QMAKE="${QTDIR}/bin/qmake" -o "Makefile" mythplugins.pro || die "qmake failed to run"
105 cardoe 1.1 emake || die "make failed to compile"
106     }
107    
108     mythtv-plugins_src_install() {
109     if hasq ${PN} ${MYTHPLUGINS} ; then
110 cardoe 1.13 cd "${S}"/${PN}
111 cardoe 1.1 else
112     die "Package ${PN} is unsupported"
113     fi
114    
115     einstall INSTALL_ROOT="${D}"
116     for doc in AUTHORS COPYING FAQ UPGRADING ChangeLog README; do
117     test -e "${doc}" && dodoc ${doc}
118     done
119     }
120 cardoe 1.13
121     EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install

  ViewVC Help
Powered by ViewVC 1.1.20