Gentoo Archives: gentoo-commits

From: "Doug Goldstein (cardoe)" <cardoe@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in media-tv/mythtv: ChangeLog mythtv-0.23_alpha22784.ebuild
Date: Tue, 10 Nov 2009 15:07:25
Message-Id: E1N7sJT-0005rx-OE@stork.gentoo.org
1 cardoe 09/11/10 15:07:19
2
3 Modified: ChangeLog
4 Added: mythtv-0.23_alpha22784.ebuild
5 Log:
6 add a trunk ebuild for bleeding edge users
7 (Portage version: 2.1.7.4/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.290 media-tv/mythtv/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-tv/mythtv/ChangeLog?rev=1.290&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-tv/mythtv/ChangeLog?rev=1.290&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-tv/mythtv/ChangeLog?r1=1.289&r2=1.290
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/media-tv/mythtv/ChangeLog,v
19 retrieving revision 1.289
20 retrieving revision 1.290
21 diff -u -r1.289 -r1.290
22 --- ChangeLog 10 Nov 2009 14:56:26 -0000 1.289
23 +++ ChangeLog 10 Nov 2009 15:07:18 -0000 1.290
24 @@ -1,6 +1,12 @@
25 # ChangeLog for media-tv/mythtv
26 # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/ChangeLog,v 1.289 2009/11/10 14:56:26 cardoe Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/ChangeLog,v 1.290 2009/11/10 15:07:18 cardoe Exp $
29 +
30 +*mythtv-0.23_alpha22784 (10 Nov 2009)
31 +
32 + 10 Nov 2009; Doug Goldstein <cardoe@g.o>
33 + +mythtv-0.23_alpha22784.ebuild:
34 + add a trunk ebuild for bleeding edge users
35
36 *mythtv-0.22_p22778 (10 Nov 2009)
37
38
39
40
41 1.1 media-tv/mythtv/mythtv-0.23_alpha22784.ebuild
42
43 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-tv/mythtv/mythtv-0.23_alpha22784.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-tv/mythtv/mythtv-0.23_alpha22784.ebuild?rev=1.1&content-type=text/plain
45
46 Index: mythtv-0.23_alpha22784.ebuild
47 ===================================================================
48 # Copyright 1999-2009 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/mythtv-0.23_alpha22784.ebuild,v 1.1 2009/11/10 15:07:18 cardoe Exp $
51
52 EAPI=2
53 inherit flag-o-matic multilib eutils qt4 mythtv toolchain-funcs python
54
55 DESCRIPTION="Homebrew PVR project"
56 SLOT="0"
57 KEYWORDS="~amd64 ~ppc ~x86"
58
59 IUSE_VIDEO_CARDS="video_cards_nvidia"
60 IUSE="alsa altivec autostart debug directv dvb dvd \
61 fftw ieee1394 jack lcd lirc mmx perl pulseaudio python \
62 tiff vdpau xvmc ${IUSE_VIDEO_CARDS}"
63
64 RDEPEND=">=media-libs/freetype-2.0
65 >=media-sound/lame-3.93.1
66 x11-libs/libX11
67 x11-libs/libXext
68 x11-libs/libXinerama
69 x11-libs/libXv
70 x11-libs/libXrandr
71 x11-libs/libXxf86vm
72 >=x11-libs/qt-core-4.4:4[qt3support]
73 >=x11-libs/qt-gui-4.4:4[qt3support,tiff?]
74 >=x11-libs/qt-sql-4.4:4[qt3support,mysql]
75 >=x11-libs/qt-opengl-4.4:4[qt3support]
76 >=x11-libs/qt-webkit-4.4:4
77 virtual/mysql
78 virtual/opengl
79 virtual/glu
80 || ( >=net-misc/wget-1.9.1 >=media-tv/xmltv-0.5.43 )
81 alsa? ( >=media-libs/alsa-lib-0.9 )
82 autostart? ( net-dialup/mingetty
83 x11-wm/evilwm
84 x11-apps/xset )
85 directv? ( virtual/perl-Time-HiRes )
86 dvb? ( media-libs/libdvb media-tv/linuxtv-dvb-headers )
87 dvd? ( media-libs/libdvdcss )
88 fftw? ( sci-libs/fftw:3.0 )
89 ieee1394? ( >=sys-libs/libraw1394-1.2.0
90 >=sys-libs/libavc1394-0.5.3
91 >=media-libs/libiec61883-1.0.0 )
92 jack? ( media-sound/jack-audio-connection-kit )
93 lcd? ( app-misc/lcdproc )
94 lirc? ( app-misc/lirc )
95 perl? ( dev-perl/DBD-mysql )
96 pulseaudio? ( >=media-sound/pulseaudio-0.9.7 )
97 python? ( dev-python/mysql-python )
98 vdpau? ( x11-libs/libvdpau )
99 xvmc? ( x11-libs/libXvMC )"
100
101 DEPEND="${RDEPEND}
102 x11-proto/xineramaproto
103 x11-proto/xf86vidmodeproto
104 x11-apps/xinit
105 !<media-plugins/mythcontrols-0.22
106 !<x11-themes/mythtv-themes-0.22
107 !<x11-themes/mythtv-themes-extra-0.22"
108
109 MYTHTV_GROUPS="video,audio,tty,uucp"
110
111 pkg_setup() {
112 einfo "This ebuild now uses a heavily stripped down version of your CFLAGS"
113
114 if use xvmc && use video_cards_nvidia; then
115 elog
116 elog "For NVIDIA based cards, the XvMC renderer only works on"
117 elog "the NVIDIA 4, 5, 6 & 7 series cards."
118 fi
119
120 # puts the SVN branch name into an environment variable that the build
121 # system reads and embeds into the binaries for version info
122 export URL=${MYTHTV_REPO}
123
124 enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
125 usermod -a -G ${MYTHTV_GROUPS} mythtv
126 }
127
128 src_prepare() {
129 # puts the SVN revision into a special file that the build system
130 # reads and embeds into the binaries for version info
131 echo "SOURCE_VERSION=${MYTHTV_REV}" > "${S}/VERSION"
132
133 # Perl bits need to go into vender_perl and not site_perl
134 sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
135 -i "${S}"/bindings/perl/perl.pro
136
137 epatch "${FILESDIR}/${PN}-0.21-ldconfig-sanxbox-fix.patch"
138 }
139
140 src_configure() {
141 local myconf="--prefix=/usr
142 --mandir=/usr/share/man
143 --libdir-name=$(get_libdir)"
144 use alsa || myconf="${myconf} --disable-audio-alsa"
145 use altivec || myconf="${myconf} --disable-altivec"
146 use fftw && myconf="${myconf} --enable-libfftw3"
147 use jack || myconf="${myconf} --disable-audio-jack"
148 use vdpau && myconf="${myconf} --enable-vdpau"
149
150 #from bug #220857
151 use xvmc && myconf="${myconf} --enable-xvmc --enable-xvmcw \
152 --disable-xvmc-vld"
153
154 # according to the Ubuntu guys, this works better being always on
155 myconf="${myconf} --enable-glx-procaddrarb"
156
157 myconf="${myconf}
158 $(use_enable dvb)
159 $(use_enable ieee1394 firewire)
160 $(use_enable lirc)
161 --disable-audio-arts
162 --disable-directfb
163 --dvb-path=/usr/include
164 --enable-opengl-vsync
165 --enable-xrandr
166 --enable-xv
167 --enable-x11"
168
169 if use mmx || use amd64; then
170 myconf="${myconf} --enable-mmx"
171 else
172 myconf="${myconf} --disable-mmx"
173 fi
174
175 if use perl && use python; then
176 myconf="${myconf} --with-bindings=perl,python"
177 elif use perl; then
178 myconf="${myconf} --with-bindings=perl"
179 elif use python; then
180 myconf="${myconf} --with-bindings=python"
181 else
182 myconf="${myconf} --without-bindings=perl,python"
183 fi
184
185 if use debug; then
186 myconf="${myconf} --compile-type=debug"
187 else
188 myconf="${myconf} --compile-type=profile"
189 fi
190
191 ## CFLAG cleaning so it compiles
192 MARCH=$(get-flag "march")
193 MTUNE=$(get-flag "mtune")
194 strip-flags
195 filter-flags "-march=*" "-mtune=*" "-mcpu=*"
196 filter-flags "-O" "-O?"
197
198 if [[ -n "${MARCH}" ]]; then
199 myconf="${myconf} --cpu=${MARCH}"
200 fi
201 if [[ -n "${MTUNE}" ]]; then
202 myconf="${myconf} --tune=${MTUNE}"
203 fi
204
205 # myconf="${myconf} --extra-cxxflags=\"${CXXFLAGS}\" --extra-cflags=\"${CFLAGS}\""
206 hasq distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
207 hasq ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
208
209 # let MythTV come up with our CFLAGS. Upstream will support this
210 CFLAGS=""
211 CXXFLAGS=""
212 einfo "Running ./configure ${myconf}"
213 sh ./configure ${myconf} || die "configure died"
214 }
215
216 src_compile() {
217 eqmake4 mythtv.pro -o "Makefile" || die "eqmake4 failed"
218 emake || die "emake failed"
219
220 # firewire support should build the tester
221 if use ieee1394; then
222 cd contrib
223 $(tc-getCC) ${CFLAGS} ${CPPFLAGS} -o ../firewire_tester \
224 development/firewire_tester/firewire_tester.c \
225 ${LDFLAGS} -liec61883 -lraw1394 || \
226 die "failed to compile firewire_tester"
227
228 cd channel_changers
229 $(tc-getCC) ${CFLAGS} ${CPPFLAGS} -std=gnu99 -o ../../6200ch \
230 6200ch/6200ch.c \
231 ${LDFLAGS} -lrom1394 -lavc1394 -lraw1394 || \
232 die "failed to compile 6200ch"
233 $(tc-getCC) ${CFLAGS} ${CPPFLAGS} -o ../../sa3250ch \
234 sa3250ch/sa3250ch.c \
235 ${LDFLAGS} -lrom1394 -lavc1394 -lraw1394 || \
236 die "failed to compile sa3250ch"
237 fi
238
239 cd "${S}"/contrib/channel_changers
240 $(tc-getCC) ${CFLAGS} ${CPPFLAGS} -o ../../red_eye red_eye/red_eye.c \
241 ${LDFLAGS} || die "failed to compile red_eye"
242 }
243
244 src_install() {
245
246 einstall INSTALL_ROOT="${D}" || die "install failed"
247 dodoc AUTHORS FAQ UPGRADING README
248
249 insinto /usr/share/mythtv/database
250 doins database/*
251
252 exeinto /usr/share/mythtv
253 doexe "${FILESDIR}/mythfilldatabase.cron"
254
255 newinitd "${FILESDIR}"/mythbackend-0.18.2.rc mythbackend
256 newconfd "${FILESDIR}"/mythbackend-0.18.2.conf mythbackend
257
258 dodoc keys.txt docs/*.{txt,pdf}
259 dohtml docs/*.html
260
261 keepdir /etc/mythtv
262 chown -R mythtv "${D}"/etc/mythtv
263 keepdir /var/log/mythtv
264 chown -R mythtv "${D}"/var/log/mythtv
265
266 insinto /etc/logrotate.d
267 newins "${FILESDIR}"/mythtv.logrotate.d mythtv
268
269 insinto /usr/share/mythtv/contrib
270 doins -r contrib/*
271
272 dobin "${FILESDIR}"/runmythfe
273
274 if use autostart; then
275 dodir /etc/env.d/
276 echo 'CONFIG_PROTECT="/home/mythtv/"' > "${D}"/etc/env.d/95mythtv
277
278 insinto /home/mythtv
279 newins "${FILESDIR}"/bash_profile .bash_profile
280 newins "${FILESDIR}"/xinitrc .xinitrc
281 fi
282
283 if use ieee1394; then
284 dobin firewire_tester || die "failed to install firewire_tester"
285 newdoc contrib/development/firewire_tester/README README.firewire_tester
286
287 dobin 6200ch || die "failed to install 6200ch"
288 newdoc contrib/channel_changers/6200ch/README README.6200ch
289
290 dobin sa3250ch || die "failed to install sa3250ch"
291 newdoc contrib/channel_changers/sa3250ch/README README.sa3250ch
292 fi
293
294 dobin red_eye || die "failed to install red_eye"
295 newdoc contrib/channel_changers/red_eye/README README.red_eye
296
297 if use directv; then
298 dobin contrib/channel_changers/d10control.pl || die "failed to install d10control"
299 newdoc contrib/channel_changers/d10control/README README.d10control
300 fi
301 }
302
303 pkg_preinst() {
304 export CONFIG_PROTECT="${CONFIG_PROTECT} ${ROOT}/home/mythtv/"
305 }
306
307 pkg_postinst() {
308 use python && python_mod_optimize $(python_get_sitedir)/MythTV
309
310 elog
311 elog "To always have MythBackend running and available run the following:"
312 elog "rc-update add mythbackend default"
313 elog
314 ewarn "Your recordings folder must be owned by the user 'mythtv' now"
315 ewarn "chown -R mythtv /path/to/store"
316
317 if use xvmc && [[ ! -s "${ROOT}/etc/X11/XvMCConfig" ]]; then
318 ewarn
319 ewarn "No XvMC implementation has been selected yet"
320 ewarn "Use 'eselect xvmc list' for a list of available choices"
321 ewarn "Then use 'eselect xvmc set <choice>' to choose"
322 ewarn "'eselect xvmc set nvidia' for example"
323 fi
324
325 elog "Want mythfrontend to start automatically?"
326 elog "Set USE=autostart. Details can be found at:"
327 elog "http://dev.gentoo.org/~cardoe/mythtv/autostart.html"
328
329 if use autostart; then
330 elog
331 elog "Please add the following to your /etc/inittab file at the end of"
332 elog "the TERMINALS section"
333 elog "c8:2345:respawn:/sbin/mingetty --autologin mythtv tty8"
334 fi
335
336 elog
337 ewarn "Beware when you change ANY packages on your system that it may"
338 ewarn "break some or all of the MythTV components. MythTV's build system"
339 ewarn "is very fragile and only supports automagic dependencies."
340 ewarn "i.e. It depends on libraries and components it finds at build time"
341 ewarn "We try to mitigate this with RDEPENDs but be prepared to run"
342 ewarn "revdep-rebuild as necessary."
343
344 }
345
346 pkg_postrm()
347 {
348 use python && python_mod_cleanup $(python_get_sitedir)/MythTV
349 }
350
351 pkg_info() {
352 "${ROOT}"/usr/bin/mythfrontend --version
353 }
354
355 pkg_config() {
356 echo "Creating mythtv MySQL user and mythconverg database if it does not"
357 echo "already exist. You will be prompted for your MySQL root password."
358 "${ROOT}"/usr/bin/mysql -u root -p < "${ROOT}"/usr/share/mythtv/database/mc.sql
359 }