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

Contents of /eclass/mythtv-plugins.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.32 - (hide annotations) (download)
Tue Mar 11 14:52:45 2008 UTC (6 years, 4 months ago) by cardoe
Branch: MAIN
Changes since 1.31: +1 -3 lines
mythtv-fixes_patch is no longer around

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 cardoe 1.32 # $Header: /var/cvsroot/gentoo-x86/eclass/mythtv-plugins.eclass,v 1.31 2008/03/06 20:41:55 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 cardoe 1.23 # hijacks the plugins checkout to be:
26 cardoe 1.27 # /usr/portage/distfiles/svn-src/mythplugins/mythplugins/mythvideo/
27 cardoe 1.23 # so that each of the plugins can share the same svn checkout
28     # saving HD space and number of svn checkouts reqired
29     # Great suggestion by Tom Clift <tom@clift.name>
30 cardoe 1.27 ESVN_PROJECT="mythplugins"
31 cardoe 1.23
32 cardoe 1.13 mythtv-plugins_pkg_setup() {
33     # List of available plugins (needs to include ALL of them in the tarball)
34     MYTHPLUGINS="mythbrowser mythcontrols mythdvd mythflix mythgallery"
35     MYTHPLUGINS="${MYTHPLUGINS} mythgame mythmusic mythnews mythphone"
36     MYTHPLUGINS="${MYTHPLUGINS} mythvideo mythweather mythweb"
37    
38     if version_is_at_least "0.20" ; then
39     MYTHPLUGINS="${MYTHPLUGINS} mytharchive"
40     fi
41 cardoe 1.20
42 cardoe 1.30 if version_is_at_least "0.21_beta" ; then
43 cardoe 1.31 MYTHPLUGINS="${MYTHPLUGINS} mythzoneminder mythmovies"
44 cardoe 1.24 MYTHPLUGINS="${MYTHPLUGINS/mythdvd/}"
45 cardoe 1.20 fi
46 cardoe 1.13 }
47 cardoe 1.1
48     mythtv-plugins_src_unpack() {
49 cardoe 1.29 subversion_src_unpack
50 cardoe 1.25 mythtv-plugins_src_unpack_patch
51     }
52    
53     mythtv-plugins_src_unpack_patch() {
54 cardoe 1.13 cd "${S}"
55 swegener 1.8
56 cardoe 1.1 sed -e 's!PREFIX = /usr/local!PREFIX = /usr!' \
57     -i 'settings.pro' || die "fixing PREFIX to /usr failed"
58 swegener 1.8
59 cardoe 1.1 sed -e "s!QMAKE_CXXFLAGS_RELEASE = -O3 -march=pentiumpro -fomit-frame-pointer!QMAKE_CXXFLAGS_RELEASE = ${CXXFLAGS}!" \
60 cardoe 1.3 -i 'settings.pro' || die "Fixing QMake's CXXFLAGS failed"
61 swegener 1.8
62 cardoe 1.1 sed -e "s!QMAKE_CFLAGS_RELEASE = \$\${QMAKE_CXXFLAGS_RELEASE}!QMAKE_CFLAGS_RELEASE = ${CFLAGS}!" \
63 cardoe 1.3 -i 'settings.pro' || die "Fixing Qmake's CFLAGS failed"
64 eradicator 1.2
65 cardoe 1.13 find "${S}" -name '*.pro' -exec sed -i \
66 eradicator 1.2 -e "s:\$\${PREFIX}/lib/:\$\${PREFIX}/$(get_libdir)/:g" \
67     -e "s:\$\${PREFIX}/lib$:\$\${PREFIX}/$(get_libdir):g" \
68     {} \;
69 cardoe 1.1 }
70    
71     mythtv-plugins_src_compile() {
72 cardoe 1.13 cd "${S}"
73 swegener 1.8
74 cardoe 1.1 if use debug; then
75     sed -e 's!CONFIG += release!CONFIG += debug!' \
76     -i 'settings.pro' || die "switching to debug build failed"
77     fi
78 swegener 1.8
79 cardoe 1.3 # if ( use x86 && ! use mmx ) || ! use amd64 ; then
80     if ( ! use mmx ); then
81 cardoe 1.1 sed -e 's!DEFINES += HAVE_MMX!DEFINES -= HAVE_MMX!' \
82     -i 'settings.pro' || die "disabling MMX failed"
83     fi
84    
85     local myconf=""
86    
87     if hasq ${PN} ${MYTHPLUGINS} ; then
88     for x in ${MYTHPLUGINS} ; do
89     if [[ ${PN} == ${x} ]] ; then
90     myconf="${myconf} --enable-${x}"
91     else
92     myconf="${myconf} --disable-${x}"
93     fi
94     done
95     else
96     die "Package ${PN} is unsupported"
97     fi
98    
99     econf ${myconf} ${MTVCONF}
100    
101 cardoe 1.11 ${QTDIR}/bin/qmake QMAKE="${QTDIR}/bin/qmake" -o "Makefile" mythplugins.pro || die "qmake failed to run"
102 cardoe 1.1 emake || die "make failed to compile"
103     }
104    
105     mythtv-plugins_src_install() {
106     if hasq ${PN} ${MYTHPLUGINS} ; then
107 cardoe 1.13 cd "${S}"/${PN}
108 cardoe 1.1 else
109     die "Package ${PN} is unsupported"
110     fi
111    
112     einstall INSTALL_ROOT="${D}"
113     for doc in AUTHORS COPYING FAQ UPGRADING ChangeLog README; do
114     test -e "${doc}" && dodoc ${doc}
115     done
116     }
117 cardoe 1.13
118     EXPORT_FUNCTIONS pkg_setup src_unpack src_compile src_install

  ViewVC Help
Powered by ViewVC 1.1.20