newer 0.21 beta ebuild
authorDoug Goldstein <cardoe@gentoo.org>
Wed, 5 Mar 2008 19:34:28 +0000 (19:34 +0000)
committerDoug Goldstein <cardoe@gentoo.org>
Wed, 5 Mar 2008 19:34:28 +0000 (19:34 +0000)
Package-Manager: portage-2.1.4.4

media-tv/mythtv/ChangeLog
media-tv/mythtv/Manifest
media-tv/mythtv/mythtv-0.21_beta16401.ebuild [new file with mode: 0644]

index bbbcf9e77b281ec04cc91d36fa8be365ca95b7cc..bfa175e3855cf9829d9d0e8f5298e1e6076cc1f1 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for media-tv/mythtv
 # Copyright 2000-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/ChangeLog,v 1.219 2008/03/03 21:59:35 cardoe Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/ChangeLog,v 1.220 2008/03/05 19:34:28 cardoe Exp $
+
+*mythtv-0.21_beta16401 (05 Mar 2008)
+
+  05 Mar 2008; Doug Klima <cardoe@gentoo.org> +mythtv-0.21_beta16401.ebuild:
+  newer 0.21 beta ebuild
 
   03 Mar 2008; Doug Klima <cardoe@gentoo.org> -mythtv-0.20.2_p14814.ebuild,
   -mythtv-0.20.2_p15332.ebuild, -mythtv-0.20.2_p15477.ebuild,
index e78ad4839ce842ee170f400267be1a202c441ea9..1563e955c61b73e31ebd3cf8c83a4b7bb345a3c3 100644 (file)
@@ -13,12 +13,13 @@ EBUILD mythtv-0.20.2_p14972.ebuild 10237 RMD160 eae5584cc1f21c609f08b860dd36ffcb
 EBUILD mythtv-0.20.2_p15634.ebuild 10065 RMD160 e06d1f91993fd6f35d35b7d1bd09650e36859b39 SHA1 0a8704af4aace69312f8b36d9c01b75367cc9be3 SHA256 472862f7f583f7c3e1d4fb98713640596818a2dd61ea9bc70510db926e16e3e1
 EBUILD mythtv-0.21_beta16309.ebuild 9501 RMD160 a7ee9b3dc70915951d1383fdf5c4d607b59d4e8c SHA1 5b5d24dd2819f4279b7aaa0b50a179e5541633e3 SHA256 606c266695a44cab248a01f9a4f2a1b0ac4c4daa80d5eaa590826fe0f3483219
 EBUILD mythtv-0.21_beta16340.ebuild 9501 RMD160 42c9a6980829ba82ef4ec502551588543be96ebf SHA1 891530735f44fd0e6ca76a658f2d3ada2d49e417 SHA256 47f059d7ed4c4417c313db3cbfafb35d19c942c27449637816ec9a9a8be364a1
-MISC ChangeLog 41810 RMD160 588060ca32fec16beac1b0a828b71c27dcdf7fab SHA1 df4904e5c4828fdd9debe1eb28aedad6906f5ea6 SHA256 b1cbca174c4be7b5eef7dba1e8ff386e5e9a489012f84d7b269d8ef6d1f9009d
+EBUILD mythtv-0.21_beta16401.ebuild 9501 RMD160 c0e18b9087d4d21425ab2a7fa0a7cacbad616c74 SHA1 b8f1ad0599003b6632738f8a81b74756c8ae2c2d SHA256 5d9376b01fd4b41d1ce5fb2081e68d6d4e6e2697f28aca1899be214761ea2d9f
+MISC ChangeLog 41951 RMD160 13f77caa03b0001edd53a8d0338e52d15b8eef63 SHA1 1c0644ad92384eb6b5d8641332d346ffd5d0e304 SHA256 8b074c64f00554f8a40029ee5ca06241e246656c785ad27603e21ba3a3392b6c
 MISC metadata.xml 4714 RMD160 c65d058e83e36342d6a49b63a6e9609e11242b66 SHA1 0de80f93ca1adfede5783d30a45953ec4cd27c9b SHA256 7501a841c218dd17bee56aeefcfc60194241b3a5468898850c5bedf5dafd28e5
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.7 (GNU/Linux)
 
-iD8DBQFHzHTOoeSe8B0zEfwRAsSXAJ9iOuwntdow2rawr6kbk7uQq0t2dACfRo9I
-e89ji1Jza4t28O0Ak4VPZao=
-=C6ia
+iD8DBQFHzvZeoeSe8B0zEfwRAroIAJ4tSNilNHesbBQxROa1k2ZfhZKntACdEPAD
+GgScB2B0HOX3Rh3J3P7eAq0=
+=bdns
 -----END PGP SIGNATURE-----
diff --git a/media-tv/mythtv/mythtv-0.21_beta16401.ebuild b/media-tv/mythtv/mythtv-0.21_beta16401.ebuild
new file mode 100644 (file)
index 0000000..6db16ec
--- /dev/null
@@ -0,0 +1,317 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/mythtv-0.21_beta16401.ebuild,v 1.1 2008/03/05 19:34:28 cardoe Exp $
+
+EAPI=1
+inherit flag-o-matic multilib eutils qt3 mythtv toolchain-funcs python
+
+DESCRIPTION="Homebrew PVR project"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+IUSE_VIDEO_CARDS="video_cards_nvidia video_cards_via"
+IUSE="alsa altivec autostart dbox2 debug directv dvb dvd hdhomerun ieee1394 iptv \
+ivtv jack joystick lcd lirc mmx opengl opengl-video opengl-xvmc perl python \
+vorbis 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
+       virtual/mysql
+       virtual/opengl
+       virtual/glu
+       || ( >=net-misc/wget-1.9.1 >=media-tv/xmltv-0.5.43 )
+       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/libdvdnav )
+       ieee1394? (     >=sys-libs/libraw1394-1.2.0
+                       >=sys-libs/libavc1394-0.5.0
+                       >=media-libs/libiec61883-1.0.0 )
+       ivtv? ( media-tv/ivtv )
+       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 )
+       opengl-xvmc? ( >=x11-drivers/nvidia-drivers-100 )
+       xvmc? ( x11-libs/libXvMC
+               app-admin/eselect-xvmc )"
+
+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() {
+
+       if ! built_with_use -a =x11-libs/qt-3* mysql opengl ; then
+               echo
+               eerror "MythTV requires Qt to be built with mysql and opengl use flags enabled."
+               eerror "Please re-emerge =x11-libs/qt-3*, after having the use flags set."
+               echo
+               die "Please fix the above issues, before continuing."
+       fi
+
+       echo
+       einfo "This ebuild now uses a heavily stripped down version of your CFLAGS"
+       einfo "Don't complain because your -momfg-fast-speed CFLAG is being stripped"
+       einfo "Only additional CFLAG issues that will be addressed are for binary"
+       einfo "package building."
+       echo
+
+       if use xvmc && use opengl-xvmc ; then
+               einfo "Enabling USE=opengl-xvmc results in an experimental OpenGL"
+               einfo "& XvMC renderer that only works on NVIDIA GeForce 4,5,6, & 7"
+               einfo "series of cards. It is typically slower then stock XVideo"
+               einfo "support that is the default in MythTV."
+               echo
+       fi
+
+       if use opengl-video ; then
+               einfo "Enabling USE=opengl-video results in an experimental OpenGL"
+               einfo "renderer that is typically slower then the default XVideo"
+               einfo "renderer. Enable at your own risk."
+               echo
+       fi
+
+       enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS} || die "Problem adding mythtv user"
+       usermod -a -G ${MYTHTV_GROUPS} mythtv
+}
+
+src_unpack() {
+       subversion_src_unpack
+
+       # 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_compile() {
+       local myconf="--prefix=/usr
+               --mandir=/usr/share/man
+               --libdir-name=$(get_libdir)"
+       use alsa || myconf="${myconf} --disable-audio-alsa"
+       use altivec || myconf="${myconf} --disable-altivec"
+       use dbox2 || myconf="${myconf} --disable-dbox2"
+       use hdhomerun || myconf="${myconf} --disable-hdhomerun"
+       use ivtv || myconf="${myconf} --disable-ivtv"
+       use jack || myconf="${myconf} --disable-audio-jack"
+       use opengl-video && myconf="${myconf} --enable-opengl-video"
+       use xvmc && ! use video_cards_via  ! use opengl-xvmc && myconf="${myconf} --enable-xvmc --xvmc-lib=XvMCW"
+       use xvmc && use video_cards_via && myconf="${myconf} --enable-xvmc --enable-xvmc-pro"
+       use xvmc && use video_cards_nvidia && use opengl-xvmc && myconf="${myconf} --enable-xvmc --enable-xvmc-opengl"
+       myconf="${myconf}
+               $(use_enable dvb)
+               $(use_enable ieee1394 firewire)
+               $(use_enable iptv)
+               $(use_enable joystick joystick-menu)
+               $(use_enable lirc)
+               --disable-audio-arts
+               --disable-directfb
+               --dvb-path=/usr/include
+               --enable-opengl-vsync
+               --enable-xrandr
+               --enable-xv
+               --enable-x11
+               --enable-gpl"
+
+       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"
+
+       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 "${ROOT}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"
+
+       echo
+       elog "To always have MythBackend running and available run the following:"
+       elog "rc-update add mythbackend default"
+       echo
+       ewarn "Your recordings folder must be owned by the user 'mythtv' now"
+       ewarn "chown -R mythtv /path/to/store"
+
+       if use xvmc; then
+               echo
+               elog "Please set the proper XvMC provider with eselect xvmc"
+       fi
+
+       if use autostart; then
+               echo
+               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_version
+       python_mod_cleanup "/usr/$(get_libdir)/python${PYVER}/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
+}