diff options
Diffstat (limited to 'media-tv/mythtv')
-rw-r--r-- | media-tv/mythtv/Manifest | 11 | ||||
-rw-r--r-- | media-tv/mythtv/files/bash_profile | 4 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythbackend-0.18.2.conf | 31 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythbackend-0.18.2.rc | 41 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythfilldatabase.cron | 4 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythtv-0.20-as-needed.patch | 104 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythtv-0.21-bttv.patch | 13 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythtv-0.21-mythflix-naming-collision.patch | 11 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythtv.logrotate.d | 15 | ||||
-rw-r--r-- | media-tv/mythtv/files/runmythfe | 6 | ||||
-rw-r--r-- | media-tv/mythtv/files/xinitrc | 7 | ||||
-rw-r--r-- | media-tv/mythtv/mythtv-0.21_p19961-r1.ebuild | 304 |
12 files changed, 551 insertions, 0 deletions
diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest new file mode 100644 index 0000000..d9f1ad0 --- /dev/null +++ b/media-tv/mythtv/Manifest @@ -0,0 +1,11 @@ +AUX bash_profile 63 RMD160 71ed6a00c824f8d2704b65371e54adb85ca6d861 SHA1 cd4bc03298d30fadb759d1a2463e930441c5a5e7 SHA256 9a753f699d07b5f481374d13ea3f2b2439a22f3a9a49b6280cc8d9eebf0b2ca9 +AUX mythbackend-0.18.2.conf 1427 RMD160 bcbe4c1574ed435d433cefabef1f594c25049fb7 SHA1 eeec3e791035053bdfa956637b3f20c53f877eb2 SHA256 c1d0ecc8483ebf08335f320c602c33d370b213dd8ebe442a9b85c3fbe48c28d3 +AUX mythbackend-0.18.2.rc 1125 RMD160 e2b056d0610a5a391080725bc019e1abef3f013a SHA1 97f82543f2e1f144c3e69bea20fc950efff15561 SHA256 7604d5d2e412433fab831d72388765a2df84bc22063227499c6dcf5dde5f3f7c +AUX mythfilldatabase.cron 73 RMD160 ce57516fe3ac3f339ebaad6b88c85366d4dbbc5b SHA1 7ae24184f931336f317eaefaa7c27a8e4531e0ee SHA256 fc5a3b094fd403e9076fbb1903e826ddc97bd579cb0ba7ef6fc11940099fca3d +AUX mythtv-0.20-as-needed.patch 4260 RMD160 a81bbadba9a09647ee10a6ba994db855ab72ba09 SHA1 a54c4b405616581b34aa899902619159cb38362f SHA256 cdf55c4847f2f27699947dd863568e638218cfe170bab47647b68997bcf9cfc2 +AUX mythtv-0.21-bttv.patch 630 RMD160 c80853b7cb9aa6612a96dd798b8dbc7e9ea08db9 SHA1 1dbb90a54e8ff1d4380d4b55c3818bb750d8b93c SHA256 90411dc58532a95b8556053e2ba04adf5f726bc501e13e3d57b37330cb4c969d +AUX mythtv-0.21-mythflix-naming-collision.patch 475 RMD160 5473a9ffc8fbe1eebfe87a01abd22ea1c666f75f SHA1 008a9e762c59f8d49a69c5d82161a6a3df025a3b SHA256 969e31cc7310870041b6cae07f1a84b57a387f2ad5e96e24094fe0e146c68611 +AUX mythtv.logrotate.d 431 RMD160 1def3a72ccb17650d26359c3e6498c7c0b6a8160 SHA1 b609dcaf02e645930a63ea3f2c0dcc4ae893301a SHA256 e08265605df90ae4a0ba862ec85220056bc500357c529128948acc77dbe391e7 +AUX runmythfe 186 RMD160 e4b5bfeaecbf541e6cc45b6a9c0e5c048e3fccd0 SHA1 f5ec9dfd4781b28c0af8745c282ce242141590d8 SHA256 bebc665f37b21193be2f259cb8daf6863dfd4336e4e1424a7a989d6b679964fe +AUX xinitrc 240 RMD160 9c0c1030aa65c8fd3f20501f45757515a9208a61 SHA1 11795aa8be5bd668d91acdd61aa80d5cc8af5cac SHA256 770990183ce8df60bf3bcbc3a334558155aedd0a80357556261fb938b4254e94 +EBUILD mythtv-0.21_p19961-r1.ebuild 9013 RMD160 969c727b614c431d82fce49a2817f5d924c7d2b3 SHA1 efdfa99e3840a0ce1101bc07fa5cff7c120d5ec1 SHA256 1c95e8a9f01eff85ff87386429a81d4b12a10420f96861121a571f8b68231f3a diff --git a/media-tv/mythtv/files/bash_profile b/media-tv/mythtv/files/bash_profile new file mode 100644 index 0000000..5de354b --- /dev/null +++ b/media-tv/mythtv/files/bash_profile @@ -0,0 +1,4 @@ +# .bash_profile +case "`tty`" in + *tty8) startx; logout ;; +esac diff --git a/media-tv/mythtv/files/mythbackend-0.18.2.conf b/media-tv/mythtv/files/mythbackend-0.18.2.conf new file mode 100644 index 0000000..d39995e --- /dev/null +++ b/media-tv/mythtv/files/mythbackend-0.18.2.conf @@ -0,0 +1,31 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvs/lportage/media-tv/mythtv/files/mythbackend-0.18.2.conf,v 1.1 2009-02-21 01:51:37 randomdan Exp $ + +#Accepts any combination (separated by comma) of: +# +# all - ALL available debug output +# important - Errors or other very important messages +# general - General info +# record - Recording related messages +# playback - Playback related messages +# channel - Channel related messages +# osd - On-Screen Display related messages +# file - File and AutoExpire related messages +# schedule - Scheduling related messages +# network - Network protocol related messages +# commflag - Commercial Flagging related messages +# audio - Audio related messages +# libav - Enables libav debugging +# jobqueue - JobQueue related messages +# siparser - Siparser related messages +# eit - EIT related messages +# vbi - VBI related messages +# database - Display all SQL commands executed +# dsmcc - DSMCC carousel related messages +# mheg - MHEG debugging messages +# upnp - upnp debugging messages +# socket - socket debugging messages +# timestamp - Conditional data driven messages +# none - NO debug output +#MYTH_VERBOSE="important,general" diff --git a/media-tv/mythtv/files/mythbackend-0.18.2.rc b/media-tv/mythtv/files/mythbackend-0.18.2.rc new file mode 100644 index 0000000..6ee67ef --- /dev/null +++ b/media-tv/mythtv/files/mythbackend-0.18.2.rc @@ -0,0 +1,41 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvs/lportage/media-tv/mythtv/files/mythbackend-0.18.2.rc,v 1.1 2009-02-21 01:51:37 randomdan Exp $ + +depend() { + # future note for me, backend doesn't have to run on + # same machine as MySQL so should be use + need net + use mysql lircd LCDd +} + +start() { + [ -z "${MYTH_VERBOSE}" ] && MYTH_VERBOSE="important,general" + + export QTDIR=/usr/qt/3 + export HOME=/etc/mythtv + + #fixes for bug #101308 + unset DISPLAY + unset SESSION_MANAGER + + # Work around any strange permissions that may be on these files. + chown -R mythtv /var/log/mythtv/ + chown -R mythtv /etc/mythtv/ + rm -rf /etc/mythtv/.qt + + ebegin "Starting MythTV Backend" + start-stop-daemon --start --quiet --chuid mythtv \ + --exec /usr/bin/mythbackend \ + --make-pidfile --pidfile /var/run/mythbackend.pid \ + --background -- --verbose ${MYTH_VERBOSE} \ + --logfile /var/log/mythtv/mythbackend.log + eend $? +} + +stop () { + ebegin "Stopping MythTV Backend" + start-stop-daemon --stop --quiet --pidfile=/var/run/mythbackend.pid + eend $? +} diff --git a/media-tv/mythtv/files/mythfilldatabase.cron b/media-tv/mythtv/files/mythfilldatabase.cron new file mode 100644 index 0000000..e25082a --- /dev/null +++ b/media-tv/mythtv/files/mythfilldatabase.cron @@ -0,0 +1,4 @@ +#!/bin/sh + +QTDIR=/usr/qt/3 +/usr/bin/mythfilldatabase --no-delete --quiet diff --git a/media-tv/mythtv/files/mythtv-0.20-as-needed.patch b/media-tv/mythtv/files/mythtv-0.20-as-needed.patch new file mode 100644 index 0000000..9a88cfe --- /dev/null +++ b/media-tv/mythtv/files/mythtv-0.20-as-needed.patch @@ -0,0 +1,104 @@ +Index: libs/libmythtv/libmythtv.pro +=================================================================== +--- libs/libmythtv/libmythtv.pro (revision 11172) ++++ libs/libmythtv/libmythtv.pro (working copy) +@@ -17,6 +17,7 @@ + + DEPENDPATH += ../libmyth ../libavcodec ../libavformat ../libavutil + DEPENDPATH += ../libmythmpeg2 ../libmythdvdnav ++DEPENDPATH += ../libmythui + DEPENDPATH += ./dvbdev ./mpeg ./hdhomerun + DEPENDPATH += ../libmythlivemedia/BasicUsageEnvironment/include + DEPENDPATH += ../libmythlivemedia/BasicUsageEnvironment +@@ -26,12 +27,16 @@ + DEPENDPATH += ../libmythlivemedia/liveMedia + DEPENDPATH += ../libmythlivemedia/UsageEnvironment/include + DEPENDPATH += ../libmythlivemedia/UsageEnvironment ++DEPENDPATH += ../libmythfreemheg + + LIBS += -L../libmyth -L../libavutil -L../libavcodec -L../libavformat +-LIBS += -L../libmythmpeg2 -L../libmythdvdnav ++LIBS += -L../libmythmpeg2 -L../libmythdvdnav -L../libmythlivemedia ++LIBS += -L../libmythfreemheg -L../libmythui + LIBS += -lmyth-$${LIBVERSION} -lmythavutil-$${LIBVERSION} + LIBS += -lmythavcodec-$${LIBVERSION} -lmythdvdnav-$${LIBVERSION} + LIBS += -lmythavformat-$${LIBVERSION} -lmythmpeg2-$${LIBVERSION} ++LIBS += -lmythlivemedia-$${LIBVERSION} -lmythfreemheg-$${LIBVERSION} ++LIBS += -lmythui-$${LIBVERSION} + LIBS += $$EXTRA_LIBS + + isEmpty(QMAKE_EXTENSION_SHLIB) { +@@ -46,8 +51,10 @@ + TARGETDEPS += ../libavformat/libmythavformat-$${LIBVERSION}.$${QMAKE_EXTENSION_SHLIB} + TARGETDEPS += ../libmythmpeg2/libmythmpeg2-$${LIBVERSION}.$${QMAKE_EXTENSION_LIB} + TARGETDEPS += ../libmythdvdnav/libmythdvdnav-$${LIBVERSION}.$${QMAKE_EXTENSION_LIB} ++TARGETDEPS += ../libmythlivemedia/libmythlivemedia-$${LIBVERSION}.$${QMAKE_EXTENSION_SHLIB} ++TARGETDEPS += ../libmythfreemheg/libmythfreemheg-$${LIBVERSION}.$${QMAKE_EXTENSION_SHLIB} ++TARGETDEPS += ../libmythui/libmythui-$${LIBVERSION}.$${QMAKE_EXTENSION_SHLIB} + +- + DEFINES += _LARGEFILE_SOURCE + QMAKE_CXXFLAGS_RELEASE += $${FREETYPE_CFLAGS} + QMAKE_CXXFLAGS_DEBUG += $${FREETYPE_CFLAGS} +Index: libs/libmythui/libmythui.pro +=================================================================== +--- libs/libmythui/libmythui.pro (revision 11172) ++++ libs/libmythui/libmythui.pro (working copy) +@@ -12,7 +12,7 @@ + + DEPENDPATH += ../libmyth . + +-LIBS += -L../libmyth -lmyth-$$LIBVERSION ++#LIBS += -L../libmyth -lmyth-$$LIBVERSION + + QMAKE_CLEAN += $(TARGET) $(TARGETA) $(TARGETD) $(TARGET0) $(TARGET1) $(TARGET2) + +Index: libs/libmyth/libmyth.pro +=================================================================== +--- libs/libmyth/libmyth.pro (revision 11172) ++++ libs/libmyth/libmyth.pro (working copy) +@@ -38,6 +38,7 @@ + + LIBS += -L../libmythsamplerate -lmythsamplerate-$${LIBVERSION} + LIBS += -L../libmythsoundtouch -lmythsoundtouch-$${LIBVERSION} ++LIBS += -L../libmythui -lmythui-$${LIBVERSION} + + isEmpty(QMAKE_EXTENSION_SHLIB) { + QMAKE_EXTENSION_SHLIB=so +@@ -48,6 +49,7 @@ + + TARGETDEPS += ../libmythsamplerate/libmythsamplerate-$${LIBVERSION}.$${QMAKE_EXTENSION_LIB} + TARGETDEPS += ../libmythsoundtouch/libmythsoundtouch-$${LIBVERSION}.$${QMAKE_EXTENSION_LIB} ++TARGETDEPS += ../libmythui/libmythui-$${LIBVERSION}.$${QMAKE_EXTENSION_SHLIB} + + inc.path = $${PREFIX}/include/mythtv/ + inc.files = dialogbox.h lcddevice.h mythcontext.h mythdbcon.h +Index: libs/libs.pro +=================================================================== +--- libs/libs.pro (revision 11172) ++++ libs/libs.pro (working copy) +@@ -8,7 +8,6 @@ + # Directories + SUBDIRS += libavutil libavcodec libavformat libmythsamplerate + SUBDIRS += libmythsoundtouch libmythmpeg2 libmythdvdnav +-SUBDIRS += libmyth libmythtv libmythui libmythfreemheg ++SUBDIRS += libmythlivemedia libmythfreemheg ++SUBDIRS += libmythui libmyth libmythtv + SUBDIRS += libmythupnp +-SUBDIRS += libmythlivemedia +- +Index: libs/libavcodec/libavcodec.pro +=================================================================== +--- libs/libavcodec/libavcodec.pro (revision 11172) ++++ libs/libavcodec/libavcodec.pro (working copy) +@@ -37,8 +37,8 @@ + + INSTALLS += inc + +-LIBS += $$LOCAL_LIBDIR_X11 +-LIBS += -L../libavutil -lmythavutil-$$LIBVERSION ++LIBS += $$LOCAL_LIBDIR_X11 -lz $${CONFIG_XVMC_LIBS} ++LIBS += -L../libavutil -lmythavutil-$$LIBVERSION + + contains( CONFIG_AASC_DECODER, yes ) { + SOURCES += aasc.c diff --git a/media-tv/mythtv/files/mythtv-0.21-bttv.patch b/media-tv/mythtv/files/mythtv-0.21-bttv.patch new file mode 100644 index 0000000..d1f418d --- /dev/null +++ b/media-tv/mythtv/files/mythtv-0.21-bttv.patch @@ -0,0 +1,13 @@ +Index: libs/libmythtv/NuppelVideoRecorder.cpp +=================================================================== +--- a/mythtv/libs/libmythtv/NuppelVideoRecorder.cpp (revision 18814) ++++ b/mythtv/libs/libmythtv/NuppelVideoRecorder.cpp (working copy) +@@ -981,7 +981,7 @@ + correct_bttv = true; + + QString driver = (char *)vcap.driver; +- if (driver == "cx8800" || driver == "go7007" || driver == "em28xx") ++ if (driver == "cx8800" || driver == "go7007" || driver == "em28xx" || driver == "bttv") + { + channelfd = open(videodevice.ascii(), O_RDWR); + if (channelfd < 0) diff --git a/media-tv/mythtv/files/mythtv-0.21-mythflix-naming-collision.patch b/media-tv/mythtv/files/mythtv-0.21-mythflix-naming-collision.patch new file mode 100644 index 0000000..582fbe4 --- /dev/null +++ b/media-tv/mythtv/files/mythtv-0.21-mythflix-naming-collision.patch @@ -0,0 +1,11 @@ +Index: themes/default-wide/netflix-ui.xml +=================================================================== +--- a/mythtv/themes/default-wide/netflix-ui.xml (revision 14295) ++++ b/mythtv/themes/default-wide/netflix-ui.xml (revision 19046) +@@ -267,5 +267,5 @@ + + <image name="background" draworder="0" fleximage="no"> +- <filename>news-info-bg.png</filename> ++ <filename>mythflix_background.png</filename> + <position>0,0</position> + </image> diff --git a/media-tv/mythtv/files/mythtv.logrotate.d b/media-tv/mythtv/files/mythtv.logrotate.d new file mode 100644 index 0000000..8110bfd --- /dev/null +++ b/media-tv/mythtv/files/mythtv.logrotate.d @@ -0,0 +1,15 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvs/lportage/media-tv/mythtv/files/mythtv.logrotate.d,v 1.1 2009-02-21 01:51:37 randomdan Exp $ + +/var/log/mythtv/mythbackend.log /var/log/mythtv/mythfrontend.log { +rotate 5 +weekly +create 660 mythtv video +notifempty +sharedscripts +missingok +postrotate +/bin/kill -HUP `cat /var/run/mythbackend.pid` +endscript +} diff --git a/media-tv/mythtv/files/runmythfe b/media-tv/mythtv/files/runmythfe new file mode 100644 index 0000000..073fad9 --- /dev/null +++ b/media-tv/mythtv/files/runmythfe @@ -0,0 +1,6 @@ +#!/bin/sh + +if ! pgrep mythfrontend >& /dev/null ; then + echo >> /var/log/mythtv/mythfrontend.log + DISPLAY=":0.0" mythfrontend -l /var/log/mythtv/mythfrontend.log -v important,general +fi diff --git a/media-tv/mythtv/files/xinitrc b/media-tv/mythtv/files/xinitrc new file mode 100644 index 0000000..78eb4b2 --- /dev/null +++ b/media-tv/mythtv/files/xinitrc @@ -0,0 +1,7 @@ +# .xinitrc +[ -x /usr/bin/nvidia-settings ] && /usr/bin/nvidia-settings -l +/usr/bin/xset s noblank +/usr/bin/xset s off +/usr/bin/xset -dpms +/usr/bin/evilwm & +exec /usr/bin/mythfrontend -l /var/log/mythtv/mythfrontend.log -v important,general diff --git a/media-tv/mythtv/mythtv-0.21_p19961-r1.ebuild b/media-tv/mythtv/mythtv-0.21_p19961-r1.ebuild new file mode 100644 index 0000000..b50f8e0 --- /dev/null +++ b/media-tv/mythtv/mythtv-0.21_p19961-r1.ebuild @@ -0,0 +1,304 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvs/lportage/media-tv/mythtv/mythtv-0.21_p19961-r1.ebuild,v 1.1 2009-02-21 01:51:37 randomdan Exp $ + +EAPI=2 +inherit flag-o-matic multilib eutils qt3 mythtv toolchain-funcs python confutils + +DESCRIPTION="Homebrew PVR project" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" + +IUSE_VIDEO_CARDS="video_cards_nvidia" +IUSE="aac alsa altivec autostart debug directv dvb dvd fftw ieee1394 jack lcd \ +lirc mmx opengl perl python xvmc ${IUSE_VIDEO_CARDS}" + +RDEPEND=">=media-libs/freetype-2.0 + >=media-sound/lame-3.93.1 + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXv + x11-libs/libXrandr + x11-libs/libXxf86vm + >=x11-libs/qt-3.3:3[mysql,opengl] + virtual/mysql + virtual/opengl + virtual/glu + || ( >=net-misc/wget-1.9.1 >=media-tv/xmltv-0.5.43 ) + aac? ( media-libs/faad2 ) + alsa? ( >=media-libs/alsa-lib-0.9 ) + autostart? ( net-dialup/mingetty + x11-wm/evilwm + x11-apps/xset ) + directv? ( virtual/perl-Time-HiRes ) + dvb? ( media-libs/libdvb media-tv/linuxtv-dvb-headers ) + dvd? ( media-libs/libdvdcss ) + fftw? ( sci-libs/fftw:3.0 ) + ieee1394? ( >=sys-libs/libraw1394-1.2.0 + >=sys-libs/libavc1394-0.5.3 + >=media-libs/libiec61883-1.0.0 ) + jack? ( media-sound/jack-audio-connection-kit ) + lcd? ( app-misc/lcdproc ) + lirc? ( app-misc/lirc ) + perl? ( dev-perl/DBD-mysql ) + python? ( dev-python/mysql-python ) + xvmc? ( x11-libs/libXvMC )" + +DEPEND="${RDEPEND} + x11-proto/xineramaproto + x11-proto/xf86vidmodeproto + x11-apps/xinit" + +PDEPEND="=x11-themes/mythtv-themes-${MY_PV}*" + +S="${WORKDIR}/${PN}-${MY_PV}" + +MYTHTV_GROUPS="video,audio,tty,uucp" + +pkg_setup() { + elog "This ebuild now uses a heavily stripped down version of your CFLAGS" + + if use xvmc && use video_cards_nvidia; then + elog + elog "For NVIDIA based cards, the XvMC renderer only works on" + elog "the NVIDIA 4, 5, 6 & 7 series cards." + fi + + enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS} + usermod -a -G ${MYTHTV_GROUPS} mythtv +} + +src_prepare() { + # upstream wants the revision number in their version.cpp + # since the subversion.eclass strips out the .svn directory + # svnversion in MythTV's build doesn't work + sed -e "s:\`(svnversion \$\${SVNTREEDIR} 2>\/dev\/null) || echo Unknown\`:${MYTHTV_REV}:" \ + -i "${S}"/version.pro || die "svnversion sed failed" + + # Perl bits need to go into vender_perl and not site_perl + sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \ + -i "${S}"/bindings/perl/perl.pro +} + +src_configure() { + local myconf="--prefix=/usr + --mandir=/usr/share/man + --libdir-name=$(get_libdir)" + use aac && myconf="${myconf} --enable-libfaad" + use alsa || myconf="${myconf} --disable-audio-alsa" + use altivec || myconf="${myconf} --disable-altivec" + use fftw && myconf="${myconf} --enable-libfftw3" + use jack || myconf="${myconf} --disable-audio-jack" + # let's give this a whirl from bug #220857 + use xvmc && myconf="${myconf} --enable-xvmc --enable-xvmcw \ + --disable-xvmc-vld" + #use xvmc && ! use video_cards_via && \ + # myconf="${myconf} --enable-xvmc" + #use xvmc && use video_cards_via && myconf="${myconf} --enable-xvmc \ + # --enable-xvmc-pro --disable-xvmcw" + # nvidia-drivers-71 don't support GLX 1.4 + #use video_cards_nvidia && has_version =x11-drivers/nvidia-drivers-71* \ + # && myconf="${myconf} --enable-glx-procaddrarb" + # according to the Ubuntu guys, this works better always on + myconf="${myconf} --enable-glx-procaddrarb" + + myconf="${myconf} + $(use_enable dvb) + $(use_enable ieee1394 firewire) + $(use_enable lirc) + --disable-audio-arts + --disable-directfb + --dvb-path=/usr/include + --enable-opengl-vsync + --enable-xrandr + --enable-xv + --enable-x11" +# per discussions with j-rod and janng in #mythtv, these are disabled +# --enable-libmp3lame +# use x264 && myconf="${myconf} --enable-libx264" +# use xvid && myconf="${myconf} --enable-libxvid" +# use aac && myconf="${myconf} --enable-libfaac" + + if use mmx || use amd64; then + myconf="${myconf} --enable-mmx" + else + myconf="${myconf} --disable-mmx" + fi + + if use perl && use python; then + myconf="${myconf} --with-bindings=perl,python" + elif use perl; then + myconf="${myconf} --with-bindings=perl" + elif use python; then + myconf="${myconf} --with-bindings=python" + else + myconf="${myconf} --without-bindings=perl,python" + fi + + if use debug; then + myconf="${myconf} --compile-type=debug" + else + myconf="${myconf} --compile-type=profile" + fi + + ## CFLAG cleaning so it compiles + MARCH=$(get-flag "march") + MTUNE=$(get-flag "mtune") + strip-flags + filter-flags "-march=*" "-mtune=*" "-mcpu=*" + filter-flags "-O" "-O?" + + if [[ -n "${MARCH}" ]]; then + myconf="${myconf} --cpu=${MARCH}" + fi + if [[ -n "${MTUNE}" ]]; then + myconf="${myconf} --tune=${MTUNE}" + fi + +# myconf="${myconf} --extra-cxxflags=\"${CXXFLAGS}\" --extra-cflags=\"${CFLAGS}\"" + hasq distcc ${FEATURES} || myconf="${myconf} --disable-distcc" + hasq ccache ${FEATURES} || myconf="${myconf} --disable-ccache" + + # let MythTV come up with our CFLAGS. Upstream will support this + CFLAGS="" + CXXFLAGS="" + einfo "Running ./configure ${myconf}" + ./configure ${myconf} || die "configure died" +} + +src_compile() { + eqmake3 mythtv.pro -o "Makefile" || die "eqmake3 failed" + emake || die "emake failed" + + # firewire support should build the tester + if use ieee1394; then + cd contrib + $(tc-getCC) ${CFLAGS} ${CPPFLAGS} -o ../firewire_tester firewire_tester.c \ + ${LDFLAGS} -liec61883 -lraw1394 || \ + die "failed to compile firewire_tester" + + cd channel_changers + $(tc-getCC) ${CFLAGS} ${CPPFLAGS} -std=gnu99 -o ../../6200ch 6200ch.c \ + ${LDFLAGS} -lrom1394 -lavc1394 -lraw1394 || \ + die "failed to compile 6200ch" + $(tc-getCC) ${CFLAGS} ${CPPFLAGS} -o ../../sa3250ch sa3250ch.c \ + ${LDFLAGS} -lrom1394 -lavc1394 -lraw1394 || \ + die "failed to compile sa3250ch" + fi + + cd "${S}"/contrib/channel_changers + $(tc-getCC) ${CFLAGS} ${CPPFLAGS} -o ../../red_eye red_eye.c ${LDFLAGS} || \ + die "failed to compile red_eye" +} + +src_install() { + + einstall INSTALL_ROOT="${D}" || die "install failed" + dodoc AUTHORS FAQ UPGRADING README + + insinto /usr/share/mythtv/database + doins database/* + + exeinto /usr/share/mythtv + doexe "${FILESDIR}/mythfilldatabase.cron" + + newinitd "${FILESDIR}"/mythbackend-0.18.2.rc mythbackend + newconfd "${FILESDIR}"/mythbackend-0.18.2.conf mythbackend + + dodoc keys.txt docs/*.{txt,pdf} + dohtml docs/*.html + + keepdir /etc/mythtv + chown -R mythtv "${D}"/etc/mythtv + keepdir /var/log/mythtv + chown -R mythtv "${D}"/var/log/mythtv + + insinto /etc/logrotate.d + newins "${FILESDIR}"/mythtv.logrotate.d mythtv + + insinto /usr/share/mythtv/contrib + doins -r contrib/* + + dobin "${FILESDIR}"/runmythfe + + if use autostart; then + dodir /etc/env.d/ + echo 'CONFIG_PROTECT="/home/mythtv/"' > "${D}"/etc/env.d/95mythtv + + insinto /home/mythtv + newins "${FILESDIR}"/bash_profile .bash_profile + newins "${FILESDIR}"/xinitrc .xinitrc + fi + + if use ieee1394; then + dobin firewire_tester || die "failed to install firewire_tester" + dodoc contrib/firewire_tester-README + + dobin 6200ch || die "failed to install 6200ch" + dodoc contrib/channel_changers/6200ch-README + + dobin sa3250ch || die "failed to install sa3250ch" + dodoc contrib/channel_changers/sa3250ch-README + fi + + dobin red_eye || die "failed to install red_eye" + dodoc contrib/channel_changers/red_eye-README + + if use directv; then + dobin contrib/channel_changers/d10control.pl || die "failed to install d10control" + dodoc contrib/channel_changers/d10control-README + fi +} + +pkg_preinst() { + export CONFIG_PROTECT="${CONFIG_PROTECT} ${ROOT}/home/mythtv/" +} + +pkg_postinst() { + python_version + python_mod_optimize /usr/$(get_libdir)/python${PYVER}/site-packages/MythTV + + echo + elog "Want mythfrontend to start automatically?" + elog "Set USE=autostart. Details can be found at:" + elog "http://dev.gentoo.org/~cardoe/mythtv/autostart.html" + + elog + elog "To always have MythBackend running and available run the following:" + elog "rc-update add mythbackend default" + elog + ewarn "Your recordings folder must be owned by the user 'mythtv' now" + ewarn "chown -R mythtv /path/to/store" + + if use xvmc && [[ ! -s "${ROOT}/etc/X11/XvMCConfig" ]]; then + ewarn + ewarn "No XvMC implementation has been selected yet" + ewarn "Use 'eselect xvmc list' for a list of available choices" + ewarn "Then use 'eselect xvmc set <choice>' to choose" + ewarn "'eselect xvmc set nvidia' for example" + fi + + if use autostart; then + elog + elog "Please add the following to your /etc/inittab file at the end of" + elog "the TERMINALS section" + elog "c8:2345:respawn:/sbin/mingetty --autologin mythtv tty8" + fi + +} + +pkg_postrm() +{ + python_mod_cleanup /usr/$(get_libdir)/python*/site-packages/MythTV +} + +pkg_info() { + "${ROOT}"/usr/bin/mythfrontend --version +} + +pkg_config() { + echo "Creating mythtv MySQL user and mythconverg database if it does not" + echo "already exist. You will be prompted for your MySQL root password." + "${ROOT}"/usr/bin/mysql -u root -p < "${ROOT}"/usr/share/mythtv/database/mc.sql +} |