diff options
author | Steve Dibb <beandog@gentoo.org> | 2009-05-29 20:13:06 +0000 |
---|---|---|
committer | Steve Dibb <beandog@gentoo.org> | 2009-05-29 20:13:06 +0000 |
commit | 591c94c6f2785f2f82db1aaf771e3906650d7b49 (patch) | |
tree | 343f64365c34c8638067574f8fcee1e9de5ac70a /media-tv | |
parent | Replace kernel-conditional dependency on sys-apps/acl with virtual/acl. (diff) | |
download | historical-591c94c6f2785f2f82db1aaf771e3906650d7b49.tar.gz historical-591c94c6f2785f2f82db1aaf771e3906650d7b49.tar.bz2 historical-591c94c6f2785f2f82db1aaf771e3906650d7b49.zip |
Backport MythTV patch for DVB headers, bug 253338; Support VIA + XvMC, bug 225025; restore old bttv patch
Package-Manager: portage-2.2_rc33/cvs/Linux x86_64
Diffstat (limited to 'media-tv')
-rw-r--r-- | media-tv/mythtv/ChangeLog | 10 | ||||
-rw-r--r-- | media-tv/mythtv/Manifest | 5 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythtv-0.21-bttv.patch | 13 | ||||
-rw-r--r-- | media-tv/mythtv/files/mythtv-0.21-dvb-headers.patch | 21 | ||||
-rw-r--r-- | media-tv/mythtv/mythtv-0.21_p18314-r2.ebuild | 316 |
5 files changed, 363 insertions, 2 deletions
diff --git a/media-tv/mythtv/ChangeLog b/media-tv/mythtv/ChangeLog index d1b0f381a390..3e6d0ee5ea4d 100644 --- a/media-tv/mythtv/ChangeLog +++ b/media-tv/mythtv/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for media-tv/mythtv # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/ChangeLog,v 1.272 2009/05/29 19:56:57 beandog Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/ChangeLog,v 1.273 2009/05/29 20:13:06 beandog Exp $ + +*mythtv-0.21_p18314-r2 (29 May 2009) + + 29 May 2009; Steve Dibb <beandog@gentoo.org> + +mythtv-0.21_p18314-r2.ebuild, +files/mythtv-0.21-bttv.patch, + +files/mythtv-0.21-dvb-headers.patch: + Backport MythTV patch for DVB headers, bug 253338; Support VIA + XvMC, bug + 225025; restore old bttv patch *mythtv-0.21_p19961-r2 (29 May 2009) diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest index bd5bcefc6a31..539c3fa41421 100644 --- a/media-tv/mythtv/Manifest +++ b/media-tv/mythtv/Manifest @@ -2,6 +2,8 @@ AUX bash_profile 63 RMD160 71ed6a00c824f8d2704b65371e54adb85ca6d861 SHA1 cd4bc03 AUX mythbackend-0.18.2.conf 1430 RMD160 f966c40618592cae62a2e4345bb4cd5847ec0de6 SHA1 2a3cb59593c4fd1ba431b4ebe70b91782a418a02 SHA256 0b6d0514d410bdcbeaebded48488926fc2941edaeee518794d9884693a4eb9db AUX mythbackend-0.18.2.rc 1128 RMD160 0297452b3d9fe09479c737d136a73171a35eb643 SHA1 df4fe1ca7750c3ed27c9f5bbeb28dcebb36f9b1d SHA256 be994a8b6690e830820e82316f4ccce5b7f84ce68213de75e3740818227f6f3c AUX mythfilldatabase.cron 73 RMD160 ce57516fe3ac3f339ebaad6b88c85366d4dbbc5b SHA1 7ae24184f931336f317eaefaa7c27a8e4531e0ee SHA256 fc5a3b094fd403e9076fbb1903e826ddc97bd579cb0ba7ef6fc11940099fca3d +AUX mythtv-0.21-bttv.patch 630 RMD160 c80853b7cb9aa6612a96dd798b8dbc7e9ea08db9 SHA1 1dbb90a54e8ff1d4380d4b55c3818bb750d8b93c SHA256 90411dc58532a95b8556053e2ba04adf5f726bc501e13e3d57b37330cb4c969d +AUX mythtv-0.21-dvb-headers.patch 725 RMD160 dfcf2a2b8dfe7af4f2a6776525c591bd07838bce SHA1 09d78a600f215fbc6cab9384437ed8509ab49a31 SHA256 c6043bf9fb1980d559691d8cb79cf650cb86bef7e63475ec973acdb16cb9a0f8 AUX mythtv-0.21-mythflix-naming-collision.patch 475 RMD160 5473a9ffc8fbe1eebfe87a01abd22ea1c666f75f SHA1 008a9e762c59f8d49a69c5d82161a6a3df025a3b SHA256 969e31cc7310870041b6cae07f1a84b57a387f2ad5e96e24094fe0e146c68611 AUX mythtv.logrotate.d 434 RMD160 c76842df30c1e9cc772f57dd3a3532c017d4176d SHA1 f5e772659b2616a55ca7326f65d8917352029b51 SHA256 a9032f190b28c3778340799be668779638ee09cf85e8febc669443f3aaf3578c AUX runmythfe 186 RMD160 e4b5bfeaecbf541e6cc45b6a9c0e5c048e3fccd0 SHA1 f5ec9dfd4781b28c0af8745c282ce242141590d8 SHA256 bebc665f37b21193be2f259cb8daf6863dfd4336e4e1424a7a989d6b679964fe @@ -10,8 +12,9 @@ DIST mythtv-0.21_p18314.tar.bz2 27303543 RMD160 214a0933cad3e5b80c9d26b09dc9fc5e DIST mythtv-0.21_p19961.tar.bz2 27193086 RMD160 71ad1091ab9fb4b0109092a2a10f7e3fcad9f72f SHA1 a8a636e71375406e8c873916f527ce2d1083e4e6 SHA256 27fcb3c13add495a201a26b8bdcd2fbe9a45ea09e05d1fec4593324eed5fcfde DIST mythtv-0.22_alpha19054.tar.bz2 28313043 RMD160 11de9639953123fe98bc853a0a426fc5df419363 SHA1 af735115935b403ec1da02606358b4db143af8ae SHA256 cf58ea16cfd619b643cc9b018c10d37755869e314513e228a1c15b86066a248e EBUILD mythtv-0.21_p18314-r1.ebuild 9247 RMD160 bc263afda88cf7124857d7a2c613ba271f33db53 SHA1 301f28f58d5ca48485c688f026fb7e7e8a80b1f1 SHA256 e843b279467be27ac71c0acf56227c2579ae33e9bdddbdc50b376271ab3e87ff +EBUILD mythtv-0.21_p18314-r2.ebuild 9109 RMD160 1a9bd4d997fa10e9361ca54f10809ced36d9afdc SHA1 a2a08d31016951f9d23f5a3989d2e0dfdaada655 SHA256 f9f1fd75e3752e17910aba88cb733df7cbb1b4607850cf96d98803d6e84d8a7f EBUILD mythtv-0.21_p19961-r1.ebuild 9052 RMD160 17b7293ff4490ac6b871a927fe7f918a2806b12b SHA1 0e6d5a36c47622d599aa0ab5df33e05fe44ff47a SHA256 c2677646a079506f4e42626d28faf9044dcaf863b90e4a28ab62940305cd5058 EBUILD mythtv-0.21_p19961-r2.ebuild 8879 RMD160 e07a69daf9cc3f13bc88971ba7d6a2f47e131e61 SHA1 3678cf6675c6c9471fadfe12dff4500e51874808 SHA256 276042d6bb75b5770bec22ea2bd5fb3244ff5df4278747426e944d84bdb98903 EBUILD mythtv-0.22_alpha19054.ebuild 8598 RMD160 edd06a4a1aa0d51197222fb94c1d34685c64a4ef SHA1 731968e20ba8456a3cc474786b0601a53b538a96 SHA256 fd9b433fc547545823b779a024723f7ae7e2891d3bca83bc647a6e01ae35d293 -MISC ChangeLog 54135 RMD160 8398ceb4334e5b2fb514a25182b811aced032db0 SHA1 4b7fd3900f97e0066840fb40ee9dadee19877a20 SHA256 c759474fce8ecde2306000be0ac9cf68f97a60c52a4848c5c47c54fb4357b2de +MISC ChangeLog 54435 RMD160 4353064ed6e38df8d74296351ad06312f95d4d83 SHA1 eda63e6dd1b01dadd08b573d674dd575a83a754e SHA256 03a873583e9a8001608ad0690739a96753491bede3ae5f056f45f50d815cf7c7 MISC metadata.xml 3255 RMD160 54a3e730f5cb5d9ade5dbe9b3e5e2b1dbfdd885d SHA1 90601ab1f7dbc73b1fc6bc1f806e4f645aa64783 SHA256 e593e8a37451bcfc150a7441aecfe9518d3879bc6382cb52fd96f13f5fda865a 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 000000000000..d1f418dab361 --- /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-dvb-headers.patch b/media-tv/mythtv/files/mythtv-0.21-dvb-headers.patch new file mode 100644 index 000000000000..02ac37b8e874 --- /dev/null +++ b/media-tv/mythtv/files/mythtv-0.21-dvb-headers.patch @@ -0,0 +1,21 @@ +--- libs/libmythtv/dvbtypes.h.orig 2009-05-29 14:05:20.000000000 -0600 ++++ libs/libmythtv/dvbtypes.h 2009-05-29 14:06:22.000000000 -0600 +@@ -19,15 +19,15 @@ + #include <linux/dvb/frontend.h> + #include <linux/dvb/dmx.h> + +-#if (DVB_API_VERSION != 3) +-# error "DVB driver includes with API version 3 not found!" ++#if (DVB_API_VERSION != 3 && DVB_API_VERSION != 5) ++# error "DVB driver includes with API version 3 or 5 not found!" + #endif + + #ifndef DVB_API_VERSION_MINOR + # define DVB_API_VERSION_MINOR 0 + #endif + +-#if (DVB_API_VERSION >= 3 && DVB_API_VERSION_MINOR >= 1) ++#if ((DVB_API_VERSION == 3 && DVB_API_VERSION_MINOR >= 1) || (DVB_API_VERSION > 3)) + # define USE_ATSC + #else + #warning DVB API version < 3.1 diff --git a/media-tv/mythtv/mythtv-0.21_p18314-r2.ebuild b/media-tv/mythtv/mythtv-0.21_p18314-r2.ebuild new file mode 100644 index 000000000000..5610e8724346 --- /dev/null +++ b/media-tv/mythtv/mythtv-0.21_p18314-r2.ebuild @@ -0,0 +1,316 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-tv/mythtv/mythtv-0.21_p18314-r2.ebuild,v 1.1 2009/05/29 20:13:06 beandog Exp $ + +EAPI=1 +inherit flag-o-matic multilib eutils qt3 mythtv toolchain-funcs python confutils + +DESCRIPTION="Homebrew PVR project" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" + +SRC_URI="mirror://gentoo/${P}.tar.bz2" + +IUSE_VIDEO_CARDS="video_cards_nvidia video_cards_via" +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 + 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}*" + +MYTHTV_GROUPS="video,audio,tty,uucp" + +pkg_setup() { + + confutils_require_built_with_all =x11-libs/qt-3* mysql opengl + + 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_unpack() { + + unpack ${A} + cd "${S}" + + # 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 + + # fix mythflix naming collision + epatch "${FILESDIR}"/${PN}-0.21-mythflix-naming-collision.patch + + # fix for bttv cards + epatch "${FILESDIR}"/${PN}-0.21-bttv.patch + + # fix for dvb headers, bug 253338 + epatch "${FILESDIR}"/${PN}-0.21-dvb-headers.patch + +} + +src_compile() { + 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" + if use video_cards_via && use xvmc; then + myconf="${myconf} --enable-xvmc-vld"; + else + myconf="${myconf} --disable-xvmc-vld"; + fi + # 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" + + 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 +} |