public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2015-09-06  3:25 Doug Goldstein
  0 siblings, 0 replies; 13+ messages in thread
From: Doug Goldstein @ 2015-09-06  3:25 UTC (permalink / raw
  To: gentoo-commits

commit:     a9570ca04e0816c050178ac466fae72680f1098d
Author:     Doug Goldstein <cardoe <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  5 02:44:55 2015 +0000
Commit:     Doug Goldstein <cardoe <AT> gentoo <DOT> org>
CommitDate: Sun Sep  6 03:24:42 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a9570ca0

Retire a slew of old ebuilds

Package-Manager: portage-2.2.20.1
Signed-off-by: Doug Goldstein <cardoe <AT> gentoo.org>

 media-tv/mythtv/Manifest                       |   6 -
 media-tv/mythtv/files/mythtv.logrotate.d-r3    |  20 --
 media-tv/mythtv/mythtv-0.27.1_p20140817.ebuild | 353 ------------------------
 media-tv/mythtv/mythtv-0.27.3_p20141009.ebuild | 355 -------------------------
 media-tv/mythtv/mythtv-0.27.4_p20150124.ebuild | 355 -------------------------
 5 files changed, 1089 deletions(-)

diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 931c9d3..27e05e5 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,12 +1,6 @@
 DIST mythtv-0.26.0-9fd7c6102b2cd1a3760337663803b110446c6ea7.tar.xz 179540 SHA256 ae63398f1ea8884950eb4653c42f6bf71e504738112f5ac8f4d13c1988098d95 SHA512 599dab7a51e9e2f5e240e6d80aadf3bc1f89b8f83e0a5c2e6c82695926ef3f1b7694a73d95b0a296544f9642f1e070a809d86563a415498345a3c1049f269aa4 WHIRLPOOL 74c8aa8f2846eb67f88bddacf5d7c5aa0445e0fe2fbd0f6f2f284e51e1f2c024ca8b7ef22639b7e201b8304421859d7bab802a7d2fe9343ec40d36453f0bfa8e
 DIST mythtv-0.26.0.tar.bz2 40887666 SHA256 2f158962ca3009db563dabc32827c47788a688bd67a25abd76f4baa9c3cfe306 SHA512 8c8766542b6a1a877d400fd99343e8149d9c6cc4ab1e425db358bdbdc10b6cb7422bb4bdcf984ce64b2cf02b0ad0725606b266558afcadff9ec9c9bb95bb49c0 WHIRLPOOL c737a1dbdfafe65ae5ee3bde8d0b3a9ad50ebfccec784d6907c78d03f9732637cfbf8b82ecfca80af0b049c65d70c608a81ac3bf27a8070ba3f32d657f5137bb
 DIST mythtv-0.27-583395f5a376637efcd408a102fa64d0f188c12f.tar.xz 298048 SHA256 2b18428980fe8951694eb9c8594aa2559df491b029987e1a4b983128fdea4f51 SHA512 1d8c2a61bd91d7116ba3b43251d517bda3c8db3c235e73dde66116dc02d14806db9c80bacf6e19eaf816c4765d8e51fe9b53900efa3112134c564c08cc0ca012 WHIRLPOOL 3d50908d085f844cd210c568b50c55c47e4fe8dd8423ffe18303a7c799a45e24dfceaa5221e6f59596394484162d9992f46d5f66b0ad3c57fbb5a240def68dec
-DIST mythtv-0.27.1-082d5c1fbccd48dd862f14007c0445dee8502f3d.tar.xz 161652 SHA256 271c12af8bdf6188f1a11f07ac7c3ad45374cc60211e4a005975af66d5421739 SHA512 ed7ecb9fc5d3abe592e195309d88979a41132ebd99e92e59e2471f17c3f5da089cc5846d817a5228657cef37fade5724f9ac8f0e335ec45855158996a2317016 WHIRLPOOL 86a99cc0a74c75789a98e18fd57b5627b59c650da02602d947a8ccd854ed2bf210e76bf858bc16a2a6fd93763149257ae0e3ea95f44aecf0916b5f1a2b81460d
-DIST mythtv-0.27.1.tar.gz 85612356 SHA256 a7039ba46347f1d6a0ed392a53117639c8cba6bc458a6ad30082046d8ad85de7 SHA512 f2c79765948c0a00c7a92f24d2315b5af3044333f67ed8925a59c5bebbdebf98792ef05e2bc8864bfbe77be8cc8ff530e3f4e8761320cfe5ed21369341d8915e WHIRLPOOL 938e0e77070473a523323fe64e40eb416809b40b16943d66a5914d65caa7530dd4b5ba5209919050a7b4968c9e5ca5155ee970f165b39a5c77392debb20bf0ad
-DIST mythtv-0.27.3-e1d575da2fdde7ae7119972c688b0ddd15e676c4.tar.xz 77584 SHA256 43e54366582c71c0835771987be6dd33543326ba2aba4efb8a57f83b965647cc SHA512 0360b990d0ec5eade879879c516a9169c50aafaff8b08fff60d4d65e93b3c2dadac36869f958e070b644eea72592344a7f678c78a25ae7950372e17b725a1cd1 WHIRLPOOL 5eb3b1cbea2defad1143ad3934ad5d2c2585595013bc8619f8e436eebcdfa35efe377bf40b50281140901314b5c1daf2c8654b9a0f7ab4be59fdc49c5d278c43
-DIST mythtv-0.27.3.tar.gz 85624583 SHA256 8eaaf8c6e42ca6eb81f180467de90d597dbeabb1bb14b7085da353d2980db8f4 SHA512 c825c6d5a4fab6fe3179dbb78730575732615ab41cf2d21f82c6e6317ab62c9a6570cd9d204c39c04d176138c90dfdc95892cd8336bb8487051f1f3842cc0866 WHIRLPOOL b9382dbe1019bde96135ff404039d4db5ef03d52d5f2d75cfd3005e1e5eea702529df3a45497c081de89d9ecfd5a6a143b6dadc228e581453b9aa75c63bcc042
-DIST mythtv-0.27.4-3b4390396bf09dfe3741508ecf7fc71a004abd01.tar.xz 12752 SHA256 b3331d8dbe36d34c88ab42aec2d2d84e2bb51ba11b714f23c5faa91e32ce06de SHA512 8f80378cfc5be8058baa74f7d25e8ec0a0405201e6f8b77b6cb96ba91dbd9b9251947ba7b6e48efad5270624769195891e2c48e0c8d0a16d6f8893801103a26b WHIRLPOOL 140d8dfb39942ef587b551099942b6b284bd49e070225aaee71f3fb4feebfc0ce293461b87fe9f6477def2745a6d71226fb103cf090a25fc33ecf85bd62212b6
-DIST mythtv-0.27.4.tar.gz 85644227 SHA256 1f734ffc776e4938aa913e49ce94279f2c2d520c62af278f1d04fe399723365b SHA512 6f858f32467756e96db6f79ccb2c42edc0bf22d217cb7b9dc9188ada994bbb9aafe9f72dd71aca10cd26bad1bd5d344af64487ec5fc925872aba81cf7aa257c8 WHIRLPOOL 65cd1869b7cee00197179b13a138d466dc443ecaf23c665754e0451e7ab51940e7235cb74d23ed7296be2c716f443c9c42df2fdd918a0480a04c63381ebce2c4
 DIST mythtv-0.27.5-9498257571e8158926b60a0eefc74568c4436823.tar.xz 11992 SHA256 aef3b944a9f4b49daa3f5489b58a080db35eb7b85c76819d9d00ccf1adfadfdf SHA512 bddc80f6d7e7ad583459a2192660e6101d53d8821c0f875634f90588bc6fbff86c80fa75f6e8cb859fd5164a81f0ad3427939d57da2b112741b1ea9ce646659d WHIRLPOOL 249d4f5332d943669610b96363b6d2b19d63973ba191bd62900e7d31362b4c541077ffe6ca9eae6027c6d1d5fea1d691722739ff9d0d7af6566d288921444961
 DIST mythtv-0.27.5.tar.gz 85652939 SHA256 7e625f94332effeadfba8e7ae7c98d44a83bfc25b7c59e39adce67dc2f4e1e1b SHA512 b912e010e54271f9321ac1b11d4a31e4093f86c0f2ae3139d4b55085bab142ca3fc6d847d163f6b75aa31320404914c71c094528dc8ee7d70086e56a828b9169 WHIRLPOOL e9ebbbabac6ed53b4ec90537371a63e053bb9a2c0a0e920e43d3d2e475f87bdd0ac5a4604045498e88aaf06b11eb054d50dea7881c87dbd45a36c08309e1b880
 DIST mythtv-0.27.tar.gz 85904162 SHA256 494ebd7ee384e751c05ee0a1b3dcd3618caf72f1e94810381c09c2b5d1c799f0 SHA512 2ea070497a7610b8e1548112d9925a28aeedba819c2d063e88cc63daf69947379ce7213e357c26bf2221f8a8e865c937dee3b9bf2695644f2f1adeadf6d11116 WHIRLPOOL 74c4fade0d0f93a64e5f1da3120358f15f6f8891f53b7c74b41a286369e192790cae87829b79a3a90ce3ca23ede63b3dfa809b514b68cee220432794414b8a47

diff --git a/media-tv/mythtv/files/mythtv.logrotate.d-r3 b/media-tv/mythtv/files/mythtv.logrotate.d-r3
deleted file mode 100644
index 220776a..0000000
--- a/media-tv/mythtv/files/mythtv.logrotate.d-r3
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-/var/log/mythtv/*.log {
-    weekly
-    rotate 8
-    nocompress
-    nocreate
-    notifempty
-    sharedscripts
-    missingok
-    olddir /var/log/mythtv/old
-    postrotate
-        killall -HUP mythfrontend
-        killall -HUP mythbackend
-        killall -HUP mythlcdserver
-        find /var/log/mythtv/old -type f -mtime +30 -delete
-    endscript
-}

diff --git a/media-tv/mythtv/mythtv-0.27.1_p20140817.ebuild b/media-tv/mythtv/mythtv-0.27.1_p20140817.ebuild
deleted file mode 100644
index d2771be..0000000
--- a/media-tv/mythtv/mythtv-0.27.1_p20140817.ebuild
+++ /dev/null
@@ -1,353 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_DEPEND="python? 2:2.6"
-BACKPORTS="082d5c1fbccd48dd862f14007c0445dee8502f3d"
-MY_P=${P%_p*}
-
-inherit flag-o-matic multilib eutils python user systemd
-
-MYTHTV_VERSION="v0.27.1"
-MYTHTV_BRANCH="fixes/0.27"
-
-DESCRIPTION="Homebrew PVR project"
-HOMEPAGE="http://www.mythtv.org"
-SRC_URI="https://github.com/MythTV/mythtv/archive/v0.27.1.tar.gz -> mythtv-0.27.1.tar.gz
-	${BACKPORTS:+https://dev.gentoo.org/~rich0/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
-
-SLOT="0"
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~x86"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE="alsa altivec libass autostart bluray cec crystalhd debug dvb dvd \
-egl fftw +hls ieee1394 jack lcd lirc perl pulseaudio python raop +theora \
-vaapi vdpau +vorbis +xml xmltv +xvid ${IUSE_INPUT_DEVICES}"
-
-REQUIRED_USE="
-	bluray? ( xml )
-	theora? ( vorbis )"
-
-COMMON="
-	>=media-libs/freetype-2.0:=
-	sys-libs/zlib:=
-	x11-libs/libX11:=
-	x11-libs/libXext:=
-	x11-libs/libXinerama:=
-	x11-libs/libXv:=
-	x11-libs/libXrandr:=
-	x11-libs/libXxf86vm:=
-	>=dev-qt/qtcore-4.7.2:4=
-	>=dev-qt/qtdbus-4.7.2:4=
-	>=dev-qt/qtgui-4.7.2:4=
-	>=dev-qt/qtscript-4.7.2:4=
-	>=dev-qt/qtsql-4.7.2:4=[mysql]
-	>=dev-qt/qtopengl-4.7.2:4=[egl?]
-	>=dev-qt/qtwebkit-4.7.2:4=
-	x11-misc/wmctrl:=
-	virtual/mysql:=
-	virtual/opengl:=
-	alsa? ( >=media-libs/alsa-lib-1.0.24:= )
-	bluray? (
-		dev-libs/libcdio:=
-		media-libs/libbluray:=
-	)
-	cec? ( dev-libs/libcec:= )
-	dvb? (
-		media-libs/libdvb:=
-		virtual/linuxtv-dvb-headers:=
-	)
-	dvd? ( dev-libs/libcdio:= )
-	egl? ( media-libs/mesa:=[egl] )
-	fftw? ( sci-libs/fftw:3.0= )
-	hls? (
-		media-libs/faac:=
-		media-libs/libvpx:=
-		>=media-libs/x264-0.0.20111220:=
-		>=media-sound/lame-3.93.1
-	)
-	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 )
-	libass? ( >=media-libs/libass-0.9.11:= )
-	lirc? ( app-misc/lirc )
-	perl? (
-		dev-perl/DBD-mysql
-		dev-perl/Net-UPnP
-		dev-perl/LWP-Protocol-https
-		dev-perl/HTTP-Message
-		dev-perl/IO-Socket-INET6
-		>=dev-perl/libwww-perl-5
-	)
-	pulseaudio? ( media-sound/pulseaudio )
-	python? (
-		dev-python/mysql-python
-		dev-python/lxml
-		dev-python/urlgrabber
-	)
-	raop? (
-		dev-libs/openssl:=
-		net-dns/avahi[mdnsresponder-compat]
-	)
-	theora? ( media-libs/libtheora:= media-libs/libogg:= )
-	vaapi? ( x11-libs/libva:= )
-	vdpau? ( x11-libs/libvdpau:= )
-	vorbis? ( >=media-libs/libvorbis-1.0:= media-libs/libogg:= )
-	xml? ( >=dev-libs/libxml2-2.6.0:= )
-	xvid? ( >=media-libs/xvid-1.1.0:= )
-	!media-tv/mythtv-bindings
-	!x11-themes/mythtv-themes
-	media-libs/taglib:=
-	dev-libs/glib:=
-	"
-
-RDEPEND="${COMMON}
-	media-fonts/corefonts
-	media-fonts/dejavu
-	media-fonts/liberation-fonts
-	x11-apps/xinit
-	autostart? (
-		net-dialup/mingetty
-		x11-wm/evilwm
-		x11-apps/xset
-	)
-	dvd? ( media-libs/libdvdcss:= )
-	xmltv? ( >=media-tv/xmltv-0.5.43 )
-	"
-
-DEPEND="${COMMON}
-	dev-lang/yasm
-	x11-proto/xineramaproto
-	x11-proto/xf86vidmodeproto
-	"
-
-S="${WORKDIR}/${MY_P}/mythtv"
-
-MYTHTV_GROUPS="video,audio,tty,uucp"
-
-pkg_setup() {
-	python_set_active_version 2
-	python_pkg_setup
-	enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
-	usermod -a -G ${MYTHTV_GROUPS} mythtv
-}
-
-src_prepare() {
-	[[ -n ${BACKPORTS} ]] && \
-		EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/../patches" \
-			epatch
-
-	# 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/Makefile
-
-	# Fix up the version info since we are using the fixes/${PV} branch
-	echo "SOURCE_VERSION=\"${MYTHTV_VERSION}\"" > "${S}"/VERSION
-	echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
-
-	echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
-
-	epatch "${FILESDIR}/libdir-27.patch"
-
-	epatch_user
-}
-
-src_configure() {
-	local myconf=
-
-	# Setup paths
-	myconf="${myconf} --prefix=${EPREFIX}/usr"
-	myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
-	myconf="${myconf} --libdir-name=$(get_libdir)"
-	myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
-
-	# Audio
-	myconf="${myconf} $(use_enable alsa audio-alsa)"
-	myconf="${myconf} $(use_enable jack audio-jack)"
-	use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
-
-	use altivec    || myconf="${myconf} --disable-altivec"
-	myconf="${myconf} $(use_enable dvb)"
-	myconf="${myconf} $(use_enable ieee1394 firewire)"
-	myconf="${myconf} $(use_enable lirc)"
-	myconf="${myconf} $(use_enable xvid libxvid)"
-	myconf="${myconf} --dvb-path=/usr/include"
-	myconf="${myconf} --enable-xrandr"
-	myconf="${myconf} --enable-xv"
-	myconf="${myconf} --enable-x11"
-	myconf="${myconf} --enable-nonfree"
-	use cec || myconf="${myconf} --disable-libcec"
-	use raop || myconf="${myconf} --disable-libdns-sd"
-	myconf="${myconf} $(use_enable theora libtheora)"
-	myconf="${myconf} $(use_enable vorbis libvorbis)"
-
-	if use hls; then
-		myconf="${myconf} --enable-libmp3lame"
-		myconf="${myconf} --enable-libx264"
-		myconf="${myconf} --enable-libvpx"
-		myconf="${myconf} --enable-libfaac"
-	fi
-
-	if use perl && use python; then
-		myconf="${myconf} --with-bindings=perl,python"
-	elif use perl; then
-		myconf="${myconf} --without-bindings=python"
-		myconf="${myconf} --with-bindings=perl"
-	elif use python; then
-		myconf="${myconf} --without-bindings=perl"
-		myconf="${myconf} --with-bindings=python"
-	else
-		myconf="${myconf} --without-bindings=perl,python"
-	fi
-
-	use python && myconf="${myconf} --python=$(PYTHON)"
-
-	if use debug; then
-		myconf="${myconf} --compile-type=debug"
-	else
-		myconf="${myconf} --compile-type=release"
-		#myconf="${myconf} --enable-debug" does nothing per sphery
-		#myconf="${myconf} --disable-stripping" does nothing per sphery
-	fi
-
-	# Video
-	use vdpau && myconf="${myconf} --enable-vdpau"
-	myconf="${myconf} $(use_enable vaapi)"
-	use crystalhd && myconf="${myconf} --enable-crystalhd"
-
-	# Input
-	use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
-
-	# Clean up DSO load times and other compiler bits
-	myconf="${myconf} --enable-symbol-visibility"
-	myconf="${myconf} --enable-pic"
-
-	# CPU settings
-	for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
-		[ "${i}" = "native" ] && i="host"
-		myconf="${myconf} --cpu=${i}"
-		break
-	done
-
-	if tc-is-cross-compiler ; then
-		myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
-		myconf="${myconf} --cross-prefix=${CHOST}-"
-	fi
-
-	# Build boosters
-	has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
-	has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
-
-	chmod +x ./external/FFmpeg/version.sh
-
-	einfo "Running ./configure ${myconf}"
-	./configure \
-		--cc="$(tc-getCC)" \
-		--cxx="$(tc-getCXX)" \
-		--ar="$(tc-getAR)" \
-		--extra-cflags="${CFLAGS}" \
-		--extra-cxxflags="${CXXFLAGS}" \
-		--extra-ldflags="${LDFLAGS}" \
-		${myconf} || die "configure died"
-}
-
-src_install() {
-	emake INSTALL_ROOT="${D}" install || die "install failed"
-	dodoc AUTHORS UPGRADING README
-
-	insinto /usr/share/mythtv/database
-	doins database/*
-
-	newinitd "${FILESDIR}"/mythbackend.init mythbackend
-	newconfd "${FILESDIR}"/mythbackend.conf mythbackend
-	systemd_dounit "${FILESDIR}"/mythbackend.service
-
-	dodoc keys.txt
-
-	keepdir /etc/mythtv
-	chown -R mythtv "${ED}"/etc/mythtv
-	keepdir /var/log/mythtv
-	chown -R mythtv "${ED}"/var/log/mythtv
-	dodir /var/log/mythtv/old
-
-	insinto /etc/logrotate.d
-	newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
-	insinto /usr/share/mythtv/contrib
-	doins -r contrib/*
-
-	# Install our mythfrontend wrapper which is similar to Mythbuntu's
-	mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
-	newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
-	newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
-
-	if use autostart; then
-		dodir /etc/env.d/
-		echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
-
-		insinto /home/mythtv
-		newins "${FILESDIR}"/bash_profile .bash_profile
-		newins "${FILESDIR}"/xinitrc-r1 .xinitrc
-	fi
-
-	# Make Python files executable
-	find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
-		if [[ ! "${file##*/}" = "__init__.py" ]]; then
-			chmod a+x "${file}"
-		fi
-	done
-
-	# Ensure that Python scripts are executed by Python 2
-	python_convert_shebangs -q -r 2 "${ED}/usr/share/mythtv"
-
-	# Make shell & perl scripts executable
-	find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
-		while read file; do
-		chmod a+x "${file}"
-	done
-}
-
-pkg_preinst() {
-	export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
-}
-
-pkg_postinst() {
-	use python && python_mod_optimize MythTV
-
-	elog "To have this machine operate as recording host for MythTV, "
-	elog "mythbackend must be running. Run the following:"
-	elog "rc-update add mythbackend default"
-	elog
-	elog "Your recordings folder must be owned 'mythtv'. e.g."
-	elog "chown -R mythtv /var/lib/mythtv"
-
-	elog "Want mythfrontend to start automatically?"
-	elog "Set USE=autostart. Details can be found at:"
-	elog "https://dev.gentoo.org/~cardoe/mythtv/autostart.html"
-	elog
-	elog "Note that the systemd unit now restarts by default and logs"
-	elog "to journald via the console at the notice verbosity."
-}
-
-pkg_postrm() {
-	use python && python_mod_cleanup MythTV
-}
-
-pkg_info() {
-	if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
-		"${EROOT}"/usr/bin/mythfrontend --version
-	fi
-}
-
-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."
-	"${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
-}

diff --git a/media-tv/mythtv/mythtv-0.27.3_p20141009.ebuild b/media-tv/mythtv/mythtv-0.27.3_p20141009.ebuild
deleted file mode 100644
index 60f7f10..0000000
--- a/media-tv/mythtv/mythtv-0.27.3_p20141009.ebuild
+++ /dev/null
@@ -1,355 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_DEPEND="python? 2:2.6"
-BACKPORTS="e1d575da2fdde7ae7119972c688b0ddd15e676c4"
-MY_P=${P%_p*}
-
-inherit flag-o-matic multilib eutils python user systemd
-
-MYTHTV_VERSION="v0.27.3"
-MYTHTV_BRANCH="fixes/0.27"
-
-DESCRIPTION="Homebrew PVR project"
-HOMEPAGE="http://www.mythtv.org"
-SRC_URI="https://github.com/MythTV/mythtv/archive/v0.27.3.tar.gz -> mythtv-0.27.3.tar.gz
-	${BACKPORTS:+https://dev.gentoo.org/~rich0/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
-
-SLOT="0"
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~x86"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE="alsa altivec libass autostart bluray cec crystalhd debug dvb dvd \
-egl fftw +hls ieee1394 jack lcd lirc perl pulseaudio python raop +theora \
-vaapi vdpau +vorbis +xml xmltv +xvid ${IUSE_INPUT_DEVICES}"
-
-REQUIRED_USE="
-	bluray? ( xml )
-	theora? ( vorbis )"
-
-COMMON="
-	>=media-libs/freetype-2.0:=
-	sys-libs/zlib:=
-	x11-libs/libX11:=
-	x11-libs/libXext:=
-	x11-libs/libXinerama:=
-	x11-libs/libXv:=
-	x11-libs/libXrandr:=
-	x11-libs/libXxf86vm:=
-	>=dev-qt/qtcore-4.7.2:4=
-	>=dev-qt/qtdbus-4.7.2:4=
-	>=dev-qt/qtgui-4.7.2:4=
-	>=dev-qt/qtscript-4.7.2:4=
-	>=dev-qt/qtsql-4.7.2:4=[mysql]
-	>=dev-qt/qtopengl-4.7.2:4=[egl?]
-	>=dev-qt/qtwebkit-4.7.2:4=
-	x11-misc/wmctrl:=
-	virtual/mysql:=
-	virtual/opengl:=
-	alsa? ( >=media-libs/alsa-lib-1.0.24:= )
-	bluray? (
-		dev-libs/libcdio:=
-		media-libs/libbluray:=
-	)
-	cec? ( dev-libs/libcec:= )
-	dvb? (
-		media-libs/libdvb:=
-		virtual/linuxtv-dvb-headers:=
-	)
-	dvd? ( dev-libs/libcdio:= )
-	egl? ( media-libs/mesa:=[egl] )
-	fftw? ( sci-libs/fftw:3.0= )
-	hls? (
-		media-libs/faac:=
-		media-libs/libvpx:=
-		>=media-libs/x264-0.0.20111220:=
-		>=media-sound/lame-3.93.1
-	)
-	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 )
-	libass? ( >=media-libs/libass-0.9.11:= )
-	lirc? ( app-misc/lirc )
-	perl? (
-		dev-perl/DBD-mysql
-		dev-perl/Net-UPnP
-		dev-perl/LWP-Protocol-https
-		dev-perl/HTTP-Message
-		dev-perl/IO-Socket-INET6
-		>=dev-perl/libwww-perl-5
-	)
-	pulseaudio? ( media-sound/pulseaudio )
-	python? (
-		dev-python/mysql-python
-		dev-python/lxml
-		dev-python/urlgrabber
-	)
-	raop? (
-		dev-libs/openssl:=
-		net-dns/avahi[mdnsresponder-compat]
-	)
-	theora? ( media-libs/libtheora:= media-libs/libogg:= )
-	vaapi? ( x11-libs/libva:= )
-	vdpau? ( x11-libs/libvdpau:= )
-	vorbis? ( >=media-libs/libvorbis-1.0:= media-libs/libogg:= )
-	xml? ( >=dev-libs/libxml2-2.6.0:= )
-	xvid? ( >=media-libs/xvid-1.1.0:= )
-	!media-tv/mythtv-bindings
-	!x11-themes/mythtv-themes
-	media-libs/taglib:=
-	dev-libs/glib:=
-	"
-
-RDEPEND="${COMMON}
-	media-fonts/corefonts
-	media-fonts/dejavu
-	media-fonts/liberation-fonts
-	x11-apps/xinit
-	autostart? (
-		net-dialup/mingetty
-		x11-wm/evilwm
-		x11-apps/xset
-	)
-	dvd? ( media-libs/libdvdcss:= )
-	xmltv? ( >=media-tv/xmltv-0.5.43 )
-	"
-
-DEPEND="${COMMON}
-	dev-lang/yasm
-	x11-proto/xineramaproto
-	x11-proto/xf86vidmodeproto
-	"
-
-S="${WORKDIR}/${MY_P}/mythtv"
-
-MYTHTV_GROUPS="video,audio,tty,uucp"
-
-pkg_setup() {
-	python_set_active_version 2
-	python_pkg_setup
-	enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
-	usermod -a -G ${MYTHTV_GROUPS} mythtv
-}
-
-src_prepare() {
-	[[ -n ${BACKPORTS} ]] && \
-		EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/../patches" \
-			epatch
-
-	# 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/Makefile
-
-	# Fix up the version info since we are using the fixes/${PV} branch
-	echo "SOURCE_VERSION=\"${MYTHTV_VERSION}\"" > "${S}"/VERSION
-	echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
-
-	echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
-
-	epatch "${FILESDIR}/libdir-27.patch"
-
-	epatch_user
-}
-
-src_configure() {
-	local myconf=
-
-	# Setup paths
-	myconf="${myconf} --prefix=${EPREFIX}/usr"
-	myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
-	myconf="${myconf} --libdir-name=$(get_libdir)"
-	myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
-
-	# Audio
-	myconf="${myconf} $(use_enable alsa audio-alsa)"
-	myconf="${myconf} $(use_enable jack audio-jack)"
-	use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
-
-	use altivec    || myconf="${myconf} --disable-altivec"
-	myconf="${myconf} $(use_enable dvb)"
-	myconf="${myconf} $(use_enable ieee1394 firewire)"
-	myconf="${myconf} $(use_enable lirc)"
-	myconf="${myconf} $(use_enable xvid libxvid)"
-	myconf="${myconf} --dvb-path=/usr/include"
-	myconf="${myconf} --enable-xrandr"
-	myconf="${myconf} --enable-xv"
-	myconf="${myconf} --enable-x11"
-	myconf="${myconf} --enable-nonfree"
-	use cec || myconf="${myconf} --disable-libcec"
-	use raop || myconf="${myconf} --disable-libdns-sd"
-	myconf="${myconf} $(use_enable theora libtheora)"
-	myconf="${myconf} $(use_enable vorbis libvorbis)"
-
-	if use hls; then
-		myconf="${myconf} --enable-libmp3lame"
-		myconf="${myconf} --enable-libx264"
-		myconf="${myconf} --enable-libvpx"
-		myconf="${myconf} --enable-libfaac"
-	fi
-
-	myconf="${myconf} $(use_enable libass)"
-
-	if use perl && use python; then
-		myconf="${myconf} --with-bindings=perl,python"
-	elif use perl; then
-		myconf="${myconf} --without-bindings=python"
-		myconf="${myconf} --with-bindings=perl"
-	elif use python; then
-		myconf="${myconf} --without-bindings=perl"
-		myconf="${myconf} --with-bindings=python"
-	else
-		myconf="${myconf} --without-bindings=perl,python"
-	fi
-
-	use python && myconf="${myconf} --python=$(PYTHON)"
-
-	if use debug; then
-		myconf="${myconf} --compile-type=debug"
-	else
-		myconf="${myconf} --compile-type=release"
-		#myconf="${myconf} --enable-debug" does nothing per sphery
-		#myconf="${myconf} --disable-stripping" does nothing per sphery
-	fi
-
-	# Video
-	use vdpau && myconf="${myconf} --enable-vdpau"
-	myconf="${myconf} $(use_enable vaapi)"
-	use crystalhd && myconf="${myconf} --enable-crystalhd"
-
-	# Input
-	use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
-
-	# Clean up DSO load times and other compiler bits
-	myconf="${myconf} --enable-symbol-visibility"
-	myconf="${myconf} --enable-pic"
-
-	# CPU settings
-	for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
-		[ "${i}" = "native" ] && i="host"
-		myconf="${myconf} --cpu=${i}"
-		break
-	done
-
-	if tc-is-cross-compiler ; then
-		myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
-		myconf="${myconf} --cross-prefix=${CHOST}-"
-	fi
-
-	# Build boosters
-	has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
-	has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
-
-	chmod +x ./external/FFmpeg/version.sh
-
-	einfo "Running ./configure ${myconf}"
-	./configure \
-		--cc="$(tc-getCC)" \
-		--cxx="$(tc-getCXX)" \
-		--ar="$(tc-getAR)" \
-		--extra-cflags="${CFLAGS}" \
-		--extra-cxxflags="${CXXFLAGS}" \
-		--extra-ldflags="${LDFLAGS}" \
-		${myconf} || die "configure died"
-}
-
-src_install() {
-	emake INSTALL_ROOT="${D}" install || die "install failed"
-	dodoc AUTHORS UPGRADING README
-
-	insinto /usr/share/mythtv/database
-	doins database/*
-
-	newinitd "${FILESDIR}"/mythbackend.init mythbackend
-	newconfd "${FILESDIR}"/mythbackend.conf mythbackend
-	systemd_dounit "${FILESDIR}"/mythbackend.service
-
-	dodoc keys.txt
-
-	keepdir /etc/mythtv
-	chown -R mythtv "${ED}"/etc/mythtv
-	keepdir /var/log/mythtv
-	chown -R mythtv "${ED}"/var/log/mythtv
-	dodir /var/log/mythtv/old
-
-	insinto /etc/logrotate.d
-	newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
-	insinto /usr/share/mythtv/contrib
-	doins -r contrib/*
-
-	# Install our mythfrontend wrapper which is similar to Mythbuntu's
-	mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
-	newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
-	newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
-
-	if use autostart; then
-		dodir /etc/env.d/
-		echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
-
-		insinto /home/mythtv
-		newins "${FILESDIR}"/bash_profile .bash_profile
-		newins "${FILESDIR}"/xinitrc-r1 .xinitrc
-	fi
-
-	# Make Python files executable
-	find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
-		if [[ ! "${file##*/}" = "__init__.py" ]]; then
-			chmod a+x "${file}"
-		fi
-	done
-
-	# Ensure that Python scripts are executed by Python 2
-	python_convert_shebangs -q -r 2 "${ED}/usr/share/mythtv"
-
-	# Make shell & perl scripts executable
-	find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
-		while read file; do
-		chmod a+x "${file}"
-	done
-}
-
-pkg_preinst() {
-	export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
-}
-
-pkg_postinst() {
-	use python && python_mod_optimize MythTV
-
-	elog "To have this machine operate as recording host for MythTV, "
-	elog "mythbackend must be running. Run the following:"
-	elog "rc-update add mythbackend default"
-	elog
-	elog "Your recordings folder must be owned 'mythtv'. e.g."
-	elog "chown -R mythtv /var/lib/mythtv"
-
-	elog "Want mythfrontend to start automatically?"
-	elog "Set USE=autostart. Details can be found at:"
-	elog "https://dev.gentoo.org/~cardoe/mythtv/autostart.html"
-	elog
-	elog "Note that the systemd unit now restarts by default and logs"
-	elog "to journald via the console at the notice verbosity."
-}
-
-pkg_postrm() {
-	use python && python_mod_cleanup MythTV
-}
-
-pkg_info() {
-	if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
-		"${EROOT}"/usr/bin/mythfrontend --version
-	fi
-}
-
-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."
-	"${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
-}

diff --git a/media-tv/mythtv/mythtv-0.27.4_p20150124.ebuild b/media-tv/mythtv/mythtv-0.27.4_p20150124.ebuild
deleted file mode 100644
index 4a5fb22..0000000
--- a/media-tv/mythtv/mythtv-0.27.4_p20150124.ebuild
+++ /dev/null
@@ -1,355 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_DEPEND="python? 2:2.7"
-BACKPORTS="3b4390396bf09dfe3741508ecf7fc71a004abd01"
-MY_P=${P%_p*}
-
-inherit flag-o-matic multilib eutils python user systemd
-
-MYTHTV_VERSION="v0.27.4"
-MYTHTV_BRANCH="fixes/0.27"
-
-DESCRIPTION="Homebrew PVR project"
-HOMEPAGE="http://www.mythtv.org"
-SRC_URI="https://github.com/MythTV/mythtv/archive/v0.27.4.tar.gz -> mythtv-0.27.4.tar.gz
-	${BACKPORTS:+https://dev.gentoo.org/~rich0/distfiles/${MY_P}-${BACKPORTS}.tar.xz}"
-
-SLOT="0"
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~x86"
-
-IUSE_INPUT_DEVICES="input_devices_joystick"
-IUSE="alsa altivec libass autostart bluray cec crystalhd debug dvb dvd \
-egl fftw +hls ieee1394 jack lcd lirc perl pulseaudio python raop +theora \
-vaapi vdpau +vorbis +xml xmltv +xvid ${IUSE_INPUT_DEVICES}"
-
-REQUIRED_USE="
-	bluray? ( xml )
-	theora? ( vorbis )"
-
-COMMON="
-	>=media-libs/freetype-2.0:=
-	sys-libs/zlib:=
-	x11-libs/libX11:=
-	x11-libs/libXext:=
-	x11-libs/libXinerama:=
-	x11-libs/libXv:=
-	x11-libs/libXrandr:=
-	x11-libs/libXxf86vm:=
-	>=dev-qt/qtcore-4.7.2:4=
-	>=dev-qt/qtdbus-4.7.2:4=
-	>=dev-qt/qtgui-4.7.2:4=
-	>=dev-qt/qtscript-4.7.2:4=
-	>=dev-qt/qtsql-4.7.2:4=[mysql]
-	>=dev-qt/qtopengl-4.7.2:4=[egl?]
-	>=dev-qt/qtwebkit-4.7.2:4=
-	x11-misc/wmctrl:=
-	virtual/mysql:=
-	virtual/opengl:=
-	alsa? ( >=media-libs/alsa-lib-1.0.24:= )
-	bluray? (
-		dev-libs/libcdio:=
-		media-libs/libbluray:=
-	)
-	cec? ( dev-libs/libcec:= )
-	dvb? (
-		media-libs/libdvb:=
-		virtual/linuxtv-dvb-headers:=
-	)
-	dvd? ( dev-libs/libcdio:= )
-	egl? ( media-libs/mesa:=[egl] )
-	fftw? ( sci-libs/fftw:3.0= )
-	hls? (
-		media-libs/faac:=
-		media-libs/libvpx:=
-		>=media-libs/x264-0.0.20111220:=
-		>=media-sound/lame-3.93.1
-	)
-	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 )
-	libass? ( >=media-libs/libass-0.9.11:= )
-	lirc? ( app-misc/lirc )
-	perl? (
-		dev-perl/DBD-mysql
-		dev-perl/Net-UPnP
-		dev-perl/LWP-Protocol-https
-		dev-perl/HTTP-Message
-		dev-perl/IO-Socket-INET6
-		>=dev-perl/libwww-perl-5
-	)
-	pulseaudio? ( media-sound/pulseaudio )
-	python? (
-		dev-python/mysql-python
-		dev-python/lxml
-		dev-python/urlgrabber
-	)
-	raop? (
-		dev-libs/openssl:=
-		net-dns/avahi[mdnsresponder-compat]
-	)
-	theora? ( media-libs/libtheora:= media-libs/libogg:= )
-	vaapi? ( x11-libs/libva:= )
-	vdpau? ( x11-libs/libvdpau:= )
-	vorbis? ( >=media-libs/libvorbis-1.0:= media-libs/libogg:= )
-	xml? ( >=dev-libs/libxml2-2.6.0:= )
-	xvid? ( >=media-libs/xvid-1.1.0:= )
-	!media-tv/mythtv-bindings
-	!x11-themes/mythtv-themes
-	media-libs/taglib:=
-	dev-libs/glib:=
-	"
-
-RDEPEND="${COMMON}
-	media-fonts/corefonts
-	media-fonts/dejavu
-	media-fonts/liberation-fonts
-	x11-apps/xinit
-	autostart? (
-		net-dialup/mingetty
-		x11-wm/evilwm
-		x11-apps/xset
-	)
-	dvd? ( media-libs/libdvdcss:= )
-	xmltv? ( >=media-tv/xmltv-0.5.43 )
-	"
-
-DEPEND="${COMMON}
-	dev-lang/yasm
-	x11-proto/xineramaproto
-	x11-proto/xf86vidmodeproto
-	"
-
-S="${WORKDIR}/${MY_P}/mythtv"
-
-MYTHTV_GROUPS="video,audio,tty,uucp"
-
-pkg_setup() {
-	python_set_active_version 2
-	python_pkg_setup
-	enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
-	usermod -a -G ${MYTHTV_GROUPS} mythtv
-}
-
-src_prepare() {
-	[[ -n ${BACKPORTS} ]] && \
-		EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/../patches" \
-			epatch
-
-	# 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/Makefile
-
-	# Fix up the version info since we are using the fixes/${PV} branch
-	echo "SOURCE_VERSION=\"${MYTHTV_VERSION}\"" > "${S}"/VERSION
-	echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
-
-	echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
-
-	epatch "${FILESDIR}/libdir-27.patch"
-
-	epatch_user
-}
-
-src_configure() {
-	local myconf=
-
-	# Setup paths
-	myconf="${myconf} --prefix=${EPREFIX}/usr"
-	myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
-	myconf="${myconf} --libdir-name=$(get_libdir)"
-	myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
-
-	# Audio
-	myconf="${myconf} $(use_enable alsa audio-alsa)"
-	myconf="${myconf} $(use_enable jack audio-jack)"
-	use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
-
-	use altivec    || myconf="${myconf} --disable-altivec"
-	myconf="${myconf} $(use_enable dvb)"
-	myconf="${myconf} $(use_enable ieee1394 firewire)"
-	myconf="${myconf} $(use_enable lirc)"
-	myconf="${myconf} $(use_enable xvid libxvid)"
-	myconf="${myconf} --dvb-path=/usr/include"
-	myconf="${myconf} --enable-xrandr"
-	myconf="${myconf} --enable-xv"
-	myconf="${myconf} --enable-x11"
-	myconf="${myconf} --enable-nonfree"
-	use cec || myconf="${myconf} --disable-libcec"
-	use raop || myconf="${myconf} --disable-libdns-sd"
-	myconf="${myconf} $(use_enable theora libtheora)"
-	myconf="${myconf} $(use_enable vorbis libvorbis)"
-
-	if use hls; then
-		myconf="${myconf} --enable-libmp3lame"
-		myconf="${myconf} --enable-libx264"
-		myconf="${myconf} --enable-libvpx"
-		myconf="${myconf} --enable-libfaac"
-	fi
-
-	myconf="${myconf} $(use_enable libass)"
-
-	if use perl && use python; then
-		myconf="${myconf} --with-bindings=perl,python"
-	elif use perl; then
-		myconf="${myconf} --without-bindings=python"
-		myconf="${myconf} --with-bindings=perl"
-	elif use python; then
-		myconf="${myconf} --without-bindings=perl"
-		myconf="${myconf} --with-bindings=python"
-	else
-		myconf="${myconf} --without-bindings=perl,python"
-	fi
-
-	use python && myconf="${myconf} --python=$(PYTHON)"
-
-	if use debug; then
-		myconf="${myconf} --compile-type=debug"
-	else
-		myconf="${myconf} --compile-type=release"
-		#myconf="${myconf} --enable-debug" does nothing per sphery
-		#myconf="${myconf} --disable-stripping" does nothing per sphery
-	fi
-
-	# Video
-	use vdpau && myconf="${myconf} --enable-vdpau"
-	myconf="${myconf} $(use_enable vaapi)"
-	use crystalhd && myconf="${myconf} --enable-crystalhd"
-
-	# Input
-	use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
-
-	# Clean up DSO load times and other compiler bits
-	myconf="${myconf} --enable-symbol-visibility"
-	myconf="${myconf} --enable-pic"
-
-	# CPU settings
-	for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
-		[ "${i}" = "native" ] && i="host"
-		myconf="${myconf} --cpu=${i}"
-		break
-	done
-
-	if tc-is-cross-compiler ; then
-		myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
-		myconf="${myconf} --cross-prefix=${CHOST}-"
-	fi
-
-	# Build boosters
-	has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
-	has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
-
-	chmod +x ./external/FFmpeg/version.sh
-
-	einfo "Running ./configure ${myconf}"
-	./configure \
-		--cc="$(tc-getCC)" \
-		--cxx="$(tc-getCXX)" \
-		--ar="$(tc-getAR)" \
-		--extra-cflags="${CFLAGS}" \
-		--extra-cxxflags="${CXXFLAGS}" \
-		--extra-ldflags="${LDFLAGS}" \
-		${myconf} || die "configure died"
-}
-
-src_install() {
-	emake INSTALL_ROOT="${D}" install || die "install failed"
-	dodoc AUTHORS UPGRADING README
-
-	insinto /usr/share/mythtv/database
-	doins database/*
-
-	newinitd "${FILESDIR}"/mythbackend.init mythbackend
-	newconfd "${FILESDIR}"/mythbackend.conf mythbackend
-	systemd_dounit "${FILESDIR}"/mythbackend.service
-
-	dodoc keys.txt
-
-	keepdir /etc/mythtv
-	chown -R mythtv "${ED}"/etc/mythtv
-	keepdir /var/log/mythtv
-	chown -R mythtv "${ED}"/var/log/mythtv
-	dodir /var/log/mythtv/old
-
-	insinto /etc/logrotate.d
-	newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
-
-	insinto /usr/share/mythtv/contrib
-	doins -r contrib/*
-
-	# Install our mythfrontend wrapper which is similar to Mythbuntu's
-	mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
-	newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
-	newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
-
-	if use autostart; then
-		dodir /etc/env.d/
-		echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
-
-		insinto /home/mythtv
-		newins "${FILESDIR}"/bash_profile .bash_profile
-		newins "${FILESDIR}"/xinitrc-r1 .xinitrc
-	fi
-
-	# Make Python files executable
-	find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
-		if [[ ! "${file##*/}" = "__init__.py" ]]; then
-			chmod a+x "${file}"
-		fi
-	done
-
-	# Ensure that Python scripts are executed by Python 2
-	python_convert_shebangs -q -r 2 "${ED}/usr/share/mythtv"
-
-	# Make shell & perl scripts executable
-	find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
-		while read file; do
-		chmod a+x "${file}"
-	done
-}
-
-pkg_preinst() {
-	export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
-}
-
-pkg_postinst() {
-	use python && python_mod_optimize MythTV
-
-	elog "To have this machine operate as recording host for MythTV, "
-	elog "mythbackend must be running. Run the following:"
-	elog "rc-update add mythbackend default"
-	elog
-	elog "Your recordings folder must be owned 'mythtv'. e.g."
-	elog "chown -R mythtv /var/lib/mythtv"
-
-	elog "Want mythfrontend to start automatically?"
-	elog "Set USE=autostart. Details can be found at:"
-	elog "https://dev.gentoo.org/~cardoe/mythtv/autostart.html"
-	elog
-	elog "Note that the systemd unit now restarts by default and logs"
-	elog "to journald via the console at the notice verbosity."
-}
-
-pkg_postrm() {
-	use python && python_mod_cleanup MythTV
-}
-
-pkg_info() {
-	if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
-		"${EROOT}"/usr/bin/mythfrontend --version
-	fi
-}
-
-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."
-	"${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
-}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2015-09-14 14:20 Doug Goldstein
  0 siblings, 0 replies; 13+ messages in thread
From: Doug Goldstein @ 2015-09-14 14:20 UTC (permalink / raw
  To: gentoo-commits

commit:     67fb506813d922889a077e6bd04ebd9277234a1a
Author:     Doug Goldstein <cardoe <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 14 14:19:49 2015 +0000
Commit:     Doug Goldstein <cardoe <AT> gentoo <DOT> org>
CommitDate: Mon Sep 14 14:20:13 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67fb5068

media-tv/mythtv: multiple init script fixes

The new init scripts had a few bugs related to permissions and command line
switches.

Gentoo-Bug: 560142
Gentoo-Bug: 560144

Package-Manager: portage-2.2.20.1
Signed-off-by: Doug Goldstein <cardoe <AT> gentoo.org>

 .../mythtv/files/{mythbackend.init-r1 => mythbackend.init-r2}     | 8 ++++----
 ...-0.27.5_p20150904.ebuild => mythtv-0.27.5_p20150904-r1.ebuild} | 2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/media-tv/mythtv/files/mythbackend.init-r1 b/media-tv/mythtv/files/mythbackend.init-r2
similarity index 86%
rename from media-tv/mythtv/files/mythbackend.init-r1
rename to media-tv/mythtv/files/mythbackend.init-r2
index e7bbeb1..43f53e8 100644
--- a/media-tv/mythtv/files/mythbackend.init-r1
+++ b/media-tv/mythtv/files/mythbackend.init-r2
@@ -38,13 +38,13 @@ start() {
 
 	# Work around any strange permissions that may be on these files.
 	[ "x${MYTHBACKEND_LOGGING}" = "xfiles" ] && \
-		checkpath --dir --owner mythv:video --mode 0664 /var/log/mythtv
-	checkpath --dir --owner mythv:video --mode 0664 /home/mythtv
+		checkpath --directory --owner mythv:video --mode 0775 /var/log/mythtv
+	checkpath --directory --owner mythv:video --mode 0775 /home/mythtv
 
 	ebegin "Starting MythTV Backend"
 	start-stop-daemon --start --quiet --exec /usr/bin/mythbackend \
-                --pidfile /var/run/mythbackend.pid -- \
-		--daemon --pidfile /var/run/mythbackend.pid --user mythtv:video \
+                --pidfile /var/run/mythbackend.pid --user mythtv:video -- \
+		--daemon --pidfile /var/run/mythbackend.pid \
 		--verbose ${MYTHBACKEND_VERBOSE} \
 		${logging} ${MYTHBACKEND_OPTS}
 	eend $?

diff --git a/media-tv/mythtv/mythtv-0.27.5_p20150904.ebuild b/media-tv/mythtv/mythtv-0.27.5_p20150904-r1.ebuild
similarity index 99%
rename from media-tv/mythtv/mythtv-0.27.5_p20150904.ebuild
rename to media-tv/mythtv/mythtv-0.27.5_p20150904-r1.ebuild
index 62926a8..05358ad 100644
--- a/media-tv/mythtv/mythtv-0.27.5_p20150904.ebuild
+++ b/media-tv/mythtv/mythtv-0.27.5_p20150904-r1.ebuild
@@ -275,7 +275,7 @@ src_install() {
 	insinto /usr/share/mythtv/database
 	doins database/*
 
-	newinitd "${FILESDIR}"/mythbackend.init-r1 mythbackend
+	newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
 	newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
 	systemd_dounit "${FILESDIR}"/mythbackend.service
 


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2016-04-16 12:11 Richard Freeman
  0 siblings, 0 replies; 13+ messages in thread
From: Richard Freeman @ 2016-04-16 12:11 UTC (permalink / raw
  To: gentoo-commits

commit:     514d063046bc52bbc3c99ba6ccaff5212a13603a
Author:     Richard Freeman <rich0 <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 11:52:24 2016 +0000
Commit:     Richard Freeman <rich0 <AT> gentoo <DOT> org>
CommitDate: Sat Apr 16 12:05:12 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=514d0630

media-tv/mythtv: Major release to 0.28

Package-Manager: portage-2.2.26

 media-tv/mythtv/Manifest                     |   1 +
 media-tv/mythtv/files/mythbackend.service-28 |  66 +++++
 media-tv/mythtv/mythtv-0.28.ebuild           | 362 +++++++++++++++++++++++++++
 3 files changed, 429 insertions(+)

diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index fd8453c..ce15eb1 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -3,3 +3,4 @@ DIST mythtv-0.27.5-68e51d6fd4fa25e985b21cb3a5b5ca6fce9aca9d.tar.xz 28096 SHA256
 DIST mythtv-0.27.5.tar.gz 85652939 SHA256 7e625f94332effeadfba8e7ae7c98d44a83bfc25b7c59e39adce67dc2f4e1e1b SHA512 b912e010e54271f9321ac1b11d4a31e4093f86c0f2ae3139d4b55085bab142ca3fc6d847d163f6b75aa31320404914c71c094528dc8ee7d70086e56a828b9169 WHIRLPOOL e9ebbbabac6ed53b4ec90537371a63e053bb9a2c0a0e920e43d3d2e475f87bdd0ac5a4604045498e88aaf06b11eb054d50dea7881c87dbd45a36c08309e1b880
 DIST mythtv-0.27.6_p20160318.tar.gz 85676387 SHA256 d0b8c03d95e082e87e0fab8656358e9f3991cd08b2ec5edcbb10a9a91b1e4162 SHA512 7e94d07b4f99a15b978b42d8be11f329a938842b02ad99c9628ab6dda2fa802ca7148c5db9e6f7fae40f44027f55e69f1cdb6879ee83400934025f18ac68468f WHIRLPOOL d0f040c1ecb35e5c526477134d756a67d978aeefbf478b624eaa16e4ca1639e3b8f038507052b7d05e3a18fb85fd4e1eaeeb1a185ccfdf0fb2255fdc657be6c1
 DIST mythtv-0.27.tar.gz 85904162 SHA256 494ebd7ee384e751c05ee0a1b3dcd3618caf72f1e94810381c09c2b5d1c799f0 SHA512 2ea070497a7610b8e1548112d9925a28aeedba819c2d063e88cc63daf69947379ce7213e357c26bf2221f8a8e865c937dee3b9bf2695644f2f1adeadf6d11116 WHIRLPOOL 74c4fade0d0f93a64e5f1da3120358f15f6f8891f53b7c74b41a286369e192790cae87829b79a3a90ce3ca23ede63b3dfa809b514b68cee220432794414b8a47
+DIST mythtv-0.28.tar.gz 104364066 SHA256 9d640ab0551b300dab9b633f969efc6f1987f9bdedbef5997a44ddf97d863171 SHA512 7087fa69b89a7166ddfa96a5a65f48e0ee1858bc150376b2ac2309707b4d1fb9cc544d60b114227284fd0d4891eabded6edc31215fb8f11d1df304fe77ff8f85 WHIRLPOOL f593ab2c232c4f5361b3997d35ba631c845d0f12399a772fdfc296a9e120f5a03a7ba22dbe26b972c522f46a13907fc09b2619e84874cd952095b72df54d53e1

diff --git a/media-tv/mythtv/files/mythbackend.service-28 b/media-tv/mythtv/files/mythbackend.service-28
new file mode 100644
index 0000000..3ab4c9b
--- /dev/null
+++ b/media-tv/mythtv/files/mythbackend.service-28
@@ -0,0 +1,66 @@
+# Do not edit this file, it will be replaced on update
+# If you need to make modifications to this unit file first make a copy in # /etc/systemd/system
+
+# This file is part of the packaging of MythTV #
+# MythTV is free software; view http://www.mythtv.org for more information.
+#
+# It is sometimes necessary to wait for a capture device to finish (hot)plug
+# initialization before the backend starts.  If this is necessary, 
+# create a Wants and After entry for all the capture devices that
+# one wishes to wait to be created before the backend starts using the systemd
+# device name mangling names (/dev/some/thing turns 
+# into dev-some-thing.device).  These normally should  be udev persistent 
+# filename rules to avoid confusion.
+# See the MythTV wiki for udev persistent filename # discussions found at:
+# http://www.mythtv.org/wiki/Device_Filenames_and_udev
+#
+# In order to insure that systemd will create a device unit for the 
+# capture device, one must insure that udev will have the tag "systemd"
+# (i.e. add TAG+="systemd" to the udev rule).
+#
+# The MythTV package ships with a default udev rule file located in: 
+# /lib/udev/rules.d/99-mythbackend.rules
+
+[Unit]
+Description=MythTV backend service
+After=network.target mysqld.service
+# Uncomment the following line if you will be using the mythweb plugin on the 
+# same system as mythbackend.
+#Wants=httpd.service
+
+[Service]
+Type=notify
+
+Environment=MYTHCONFDIR=/etc/mythtv
+# Default setting assumes a system wide install. Otherwise it should be set to 
+# the folder containing the .mythtv subfolder containing the config.xml file 
+# Such as
+#Environment=HOME=/usr/share/mythtv
+# or
+Environment=HOME=/~/.mythtv
+
+# systemd changes execution from the calling user (possibly root) to this user
+# if you have permissions problems or obscure errors try logging in as mythtv 
+# See notes below
+User=mythtv
+
+# Uncomment one of the following...
+# Use sysloging rather than separate logging:
+#ExecStart=/usr/bin/mythbackend --syslog local7 
+
+# If Type=forking you must specify the --daemon and --pidfile options:
+#ExecStart=/usr/bin/mythbackend --daemon --logpath /var/log/mythtv --loglevel crit --pidfile /run/mythtv/mythbackend.pid 
+#PIDFILE=/run/mythtv/mythbackend.pid
+
+# Systemd sends stdout to syslog, and mythbackend has console logging enabled without --daemon.
+# Send stdout to /dev/null so console logging doesn't go to syslog
+#StandardOutput=null
+# Default setting for Type=simple.
+#ExecStart=/usr/bin/mythbackend --logpath /var/log/mythtv --loglevel crit
+ExecStart=/usr/bin/mythbackend --loglevel notice
+
+# Whether systemd will continue over-watch and restart on any halt
+Restart=always
+
+[Install]
+WantedBy=multi-user.target

diff --git a/media-tv/mythtv/mythtv-0.28.ebuild b/media-tv/mythtv/mythtv-0.28.ebuild
new file mode 100644
index 0000000..92a9d3e
--- /dev/null
+++ b/media-tv/mythtv/mythtv-0.28.ebuild
@@ -0,0 +1,362 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+# git diff --relative=mythtv v0.27.6.. > ~/mythtv-0.27.6/patches/mythtv.patch
+BACKPORTS="3543e74534a39c150e956e2f07f50ed9f873a84e"
+MY_P=${P%_p*}
+MY_PV=${PV%_p*}
+
+inherit flag-o-matic multilib eutils python-single-r1 user systemd vcs-snapshot
+
+MYTHTV_BRANCH="fixes/0.28"
+
+DESCRIPTION="Homebrew PVR project"
+HOMEPAGE="http://www.mythtv.org"
+SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0/${PV}"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE="alsa altivec avahi libass autostart bluray cec crystalhd debug dvb dvd \
+egl fftw +hls ieee1394 jack lcd lirc perl pulseaudio python systemd +theora \
+vaapi vdpau +vorbis +wrapper +xml xmltv +xvid ${IUSE_INPUT_DEVICES}"
+
+REQUIRED_USE="
+	bluray? ( xml )
+	python? ( ${PYTHON_REQUIRED_USE} )
+	theora? ( vorbis )"
+
+COMMON="
+	>=media-libs/freetype-2.0:=
+	>=media-sound/lame-3.93.1
+	sys-libs/zlib:=
+	x11-libs/libX11:=
+	x11-libs/libXext:=
+	x11-libs/libXinerama:=
+	x11-libs/libXv:=
+	x11-libs/libXrandr:=
+	x11-libs/libXxf86vm:=
+	dev-qt/qtcore:5=
+	dev-qt/qtdbus:5=
+	dev-qt/qtgui:5=
+	dev-qt/qtscript:5=
+	dev-qt/qtsql:5=[mysql]
+	dev-qt/qtopengl:5=
+	dev-qt/qtwebkit:5=
+	x11-misc/wmctrl:=
+	virtual/mysql
+	virtual/opengl:=
+	alsa? ( >=media-libs/alsa-lib-1.0.24:= )
+	avahi? (
+		dev-libs/openssl:0=
+		net-dns/avahi[mdnsresponder-compat]
+	)
+	bluray? (
+		dev-libs/libcdio:=
+		media-libs/libbluray:=
+		sys-fs/udisks:0
+	)
+	cec? ( dev-libs/libcec:= )
+	dvb? (
+		media-libs/libdvb:=
+		virtual/linuxtv-dvb-headers:=
+	)
+	dvd? (
+		dev-libs/libcdio:=
+		sys-fs/udisks:0
+	)
+	egl? ( media-libs/mesa:=[egl] )
+	fftw? ( sci-libs/fftw:3.0= )
+	hls? (
+		media-libs/faac:=
+		<media-libs/libvpx-1.5.0:=
+		>=media-libs/x264-0.0.20111220:=
+	)
+	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 )
+	libass? ( >=media-libs/libass-0.9.11:= )
+	lirc? ( app-misc/lirc )
+	perl? (
+		dev-perl/DBD-mysql
+		dev-perl/Net-UPnP
+		dev-perl/LWP-Protocol-https
+		dev-perl/HTTP-Message
+		dev-perl/IO-Socket-INET6
+		>=dev-perl/libwww-perl-5
+	)
+	pulseaudio? ( media-sound/pulseaudio )
+	python? (
+		${PYTHON_DEPS}
+		dev-python/mysql-python
+		dev-python/lxml
+		dev-python/urlgrabber
+	)
+	theora? ( media-libs/libtheora:= media-libs/libogg:= )
+	vaapi? ( x11-libs/libva:=[opengl] )
+	vdpau? ( x11-libs/libvdpau:= )
+	vorbis? ( >=media-libs/libvorbis-1.0:= media-libs/libogg:= )
+	xml? ( >=dev-libs/libxml2-2.6.0:= )
+	xvid? ( >=media-libs/xvid-1.1.0:= )
+	!media-tv/mythtv-bindings
+	!x11-themes/mythtv-themes
+	media-libs/taglib:=
+	dev-libs/glib:=
+	systemd? ( sys-apps/systemd:= )
+	"
+
+RDEPEND="${COMMON}
+	media-fonts/corefonts
+	media-fonts/dejavu
+	media-fonts/liberation-fonts
+	x11-apps/xinit
+	autostart? (
+		net-dialup/mingetty
+		x11-wm/evilwm
+		x11-apps/xset
+	)
+	dvd? ( media-libs/libdvdcss:= )
+	xmltv? ( >=media-tv/xmltv-0.5.43 )
+	"
+
+DEPEND="${COMMON}
+	dev-lang/yasm
+	x11-proto/xineramaproto
+	x11-proto/xf86vidmodeproto
+	"
+
+S="${WORKDIR}/${P}/mythtv"
+
+MYTHTV_GROUPS="video,audio,tty,uucp"
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+	enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}
+	usermod -a -G ${MYTHTV_GROUPS} mythtv
+}
+
+src_prepare() {
+	# 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/Makefile
+
+	# Fix up the version info since we are using the fixes/${PV} branch
+	echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
+	echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
+	echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
+	echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
+
+	echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
+
+#	epatch "${FILESDIR}/libdir-27.patch"
+
+	epatch_user
+}
+
+src_configure() {
+	local myconf=
+
+	# Setup paths
+	myconf="${myconf} --prefix=${EPREFIX}/usr"
+	myconf="${myconf} --libdir=${EPREFIX}/usr/$(get_libdir)"
+	myconf="${myconf} --libdir-name=$(get_libdir)"
+	myconf="${myconf} --mandir=${EPREFIX}/usr/share/man"
+
+	# Audio
+	myconf="${myconf} $(use_enable alsa audio-alsa)"
+	myconf="${myconf} $(use_enable jack audio-jack)"
+	use pulseaudio || myconf="${myconf} --disable-audio-pulseoutput"
+
+	use altivec    || myconf="${myconf} --disable-altivec"
+	myconf="${myconf} $(use_enable dvb)"
+	myconf="${myconf} $(use_enable ieee1394 firewire)"
+	myconf="${myconf} $(use_enable lirc)"
+	myconf="${myconf} $(use_enable xvid libxvid)"
+	myconf="${myconf} --dvb-path=/usr/include"
+	myconf="${myconf} --enable-xrandr"
+	myconf="${myconf} --enable-xv"
+	myconf="${myconf} --enable-x11"
+	myconf="${myconf} --enable-nonfree"
+	myconf="${myconf} --enable-libmp3lame"
+	use cec || myconf="${myconf} --disable-libcec"
+	use avahi || myconf="${myconf} --disable-libdns-sd"
+	myconf="${myconf} $(use_enable theora libtheora)"
+	myconf="${myconf} $(use_enable vorbis libvorbis)"
+
+	if use hls; then
+		myconf="${myconf} --enable-libx264"
+		myconf="${myconf} --enable-libvpx"
+		myconf="${myconf} --enable-libfaac"
+	fi
+
+	myconf="${myconf} $(use_enable libass)"
+
+	if use perl && use python; then
+		myconf="${myconf} --with-bindings=perl,python"
+	elif use perl; then
+		myconf="${myconf} --without-bindings=python"
+		myconf="${myconf} --with-bindings=perl"
+	elif use python; then
+		myconf="${myconf} --without-bindings=perl"
+		myconf="${myconf} --with-bindings=python"
+	else
+		myconf="${myconf} --without-bindings=perl,python"
+	fi
+
+	use python && myconf="${myconf} --python=${EPYTHON}"
+
+	if use debug; then
+		myconf="${myconf} --compile-type=debug"
+	else
+		myconf="${myconf} --compile-type=release"
+		#myconf="${myconf} --enable-debug" does nothing per sphery
+		#myconf="${myconf} --disable-stripping" does nothing per sphery
+	fi
+
+	# Video
+	myconf="${myconf} $(use_enable vdpau)"
+	myconf="${myconf} $(use_enable vaapi)"
+	myconf="${myconf} $(use_enable crystalhd)"
+
+	# Input
+	use input_devices_joystick || myconf="${myconf} --disable-joystick-menu"
+
+	# Clean up DSO load times and other compiler bits
+	myconf="${myconf} --enable-symbol-visibility"
+	myconf="${myconf} --enable-pic"
+
+	# CPU settings
+	for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+		[ "${i}" = "native" ] && i="host"
+		myconf="${myconf} --cpu=${i}"
+		break
+	done
+
+	if tc-is-cross-compiler ; then
+		myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
+		myconf="${myconf} --cross-prefix=${CHOST}-"
+	fi
+
+	# Build boosters
+	has distcc ${FEATURES} || myconf="${myconf} --disable-distcc"
+	has ccache ${FEATURES} || myconf="${myconf} --disable-ccache"
+
+	myconf="${myconf} $(use_enable systemd systemd_notify)"
+
+	chmod +x ./external/FFmpeg/version.sh
+
+	einfo "Running ./configure ${myconf}"
+	./configure \
+		--cc="$(tc-getCC)" \
+		--cxx="$(tc-getCXX)" \
+		--ar="$(tc-getAR)" \
+		--extra-cflags="${CFLAGS}" \
+		--extra-cxxflags="${CXXFLAGS}" \
+		--extra-ldflags="${LDFLAGS}" \
+		${myconf} || die "configure died"
+}
+
+src_install() {
+	emake INSTALL_ROOT="${D}" install || die "install failed"
+	dodoc AUTHORS UPGRADING README
+
+	insinto /usr/share/mythtv/database
+	doins database/*
+
+	newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
+	newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+	systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
+
+	dodoc keys.txt
+
+	keepdir /etc/mythtv
+	chown -R mythtv "${ED}"/etc/mythtv
+	keepdir /var/log/mythtv
+	chown -R mythtv "${ED}"/var/log/mythtv
+	dodir /var/log/mythtv/old
+
+	insinto /etc/logrotate.d
+	newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+	insinto /usr/share/mythtv/contrib
+	# Ensure we don't install scripts needing the perl bindings (bug #516968)
+	use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
+	# Ensure we don't install scripts needing the python bindings (bug #516968)
+	use python || find contrib/ -name '*.py' -exec rm -f {} \;
+	doins -r contrib/*
+
+	# Install our mythfrontend wrapper which is similar to Mythbuntu's
+	if use wrapper; then
+		mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real"
+		newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+		newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+	fi
+
+	if use autostart; then
+		dodir /etc/env.d/
+		echo 'CONFIG_PROTECT="/home/mythtv/"' > "${ED}"/etc/env.d/95mythtv
+
+		insinto /home/mythtv
+		newins "${FILESDIR}"/bash_profile .bash_profile
+		newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+	fi
+
+	# Make Python files executable
+	find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
+		if [[ ! "${file##*/}" = "__init__.py" ]]; then
+			chmod a+x "${file}"
+		fi
+	done
+
+	# Ensure that Python scripts are executed by Python 2
+	python_fix_shebang "${ED}/usr/share/mythtv"
+
+	# Make shell & perl scripts executable
+	find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
+		while read file; do
+		chmod a+x "${file}"
+	done
+}
+
+pkg_preinst() {
+	export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}/home/mythtv/"
+}
+
+pkg_postinst() {
+	elog "To have this machine operate as recording host for MythTV, "
+	elog "mythbackend must be running. Run the following:"
+	elog "rc-update add mythbackend default"
+	elog
+	elog "Your recordings folder must be owned 'mythtv'. e.g."
+	elog "chown -R mythtv /var/lib/mythtv"
+
+	elog "Want mythfrontend to start automatically?"
+	elog "Set USE=autostart. Details can be found at:"
+	elog "https://dev.gentoo.org/~cardoe/mythtv/autostart.html"
+	elog
+	elog "Note that the systemd unit now restarts by default and logs"
+	elog "to journald via the console at the notice verbosity."
+}
+
+pkg_info() {
+	if [[ -f "${EROOT}"/usr/bin/mythfrontend ]]; then
+		"${EROOT}"/usr/bin/mythfrontend --version
+	fi
+}
+
+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."
+	"${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2017-03-12 23:19 Michael Palimaka
  0 siblings, 0 replies; 13+ messages in thread
From: Michael Palimaka @ 2017-03-12 23:19 UTC (permalink / raw
  To: gentoo-commits

commit:     0aa8ee4d4cb38a693bdd7c586a6fe888c13df5e1
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 12 23:13:10 2017 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Sun Mar 12 23:18:58 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0aa8ee4d

media-tv/mythtv: add patch to 0.27.6_p20160318-r1 fixing build with libvpx-1.5.0

Gentoo-bug: 600094
Package-Manager: Portage-2.3.4, Repoman-2.3.2

 media-tv/mythtv/files/mythtv-0.27.6-libvpx-1.5.0.patch  | 17 +++++++++++++++++
 ...0160318.ebuild => mythtv-0.27.6_p20160318-r1.ebuild} |  3 ++-
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/media-tv/mythtv/files/mythtv-0.27.6-libvpx-1.5.0.patch b/media-tv/mythtv/files/mythtv-0.27.6-libvpx-1.5.0.patch
new file mode 100644
index 00000000000..578feaae1b0
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-0.27.6-libvpx-1.5.0.patch
@@ -0,0 +1,17 @@
+Gentoo-bug: 600094
+
+--- a/mythtv/external/FFmpeg/libavcodec/libvpxenc.c
++++ b/mythtv/external/FFmpeg/libavcodec/libvpxenc.c
+@@ -87,9 +87,9 @@
+ 
+ /** String mappings for enum vp8e_enc_control_id */
+ static const char *const ctlidstr[] = {
+-    [VP8E_UPD_ENTROPY]           = "VP8E_UPD_ENTROPY",
+-    [VP8E_UPD_REFERENCE]         = "VP8E_UPD_REFERENCE",
+-    [VP8E_USE_REFERENCE]         = "VP8E_USE_REFERENCE",
++//    [VP8E_UPD_ENTROPY]           = "VP8E_UPD_ENTROPY",
++//    [VP8E_UPD_REFERENCE]         = "VP8E_UPD_REFERENCE",
++//    [VP8E_USE_REFERENCE]         = "VP8E_USE_REFERENCE",
+     [VP8E_SET_ROI_MAP]           = "VP8E_SET_ROI_MAP",
+     [VP8E_SET_ACTIVEMAP]         = "VP8E_SET_ACTIVEMAP",
+     [VP8E_SET_SCALEMODE]         = "VP8E_SET_SCALEMODE",

diff --git a/media-tv/mythtv/mythtv-0.27.6_p20160318.ebuild b/media-tv/mythtv/mythtv-0.27.6_p20160318-r1.ebuild
similarity index 99%
rename from media-tv/mythtv/mythtv-0.27.6_p20160318.ebuild
rename to media-tv/mythtv/mythtv-0.27.6_p20160318-r1.ebuild
index 3398c2d376f..aeefe6f87aa 100644
--- a/media-tv/mythtv/mythtv-0.27.6_p20160318.ebuild
+++ b/media-tv/mythtv/mythtv-0.27.6_p20160318-r1.ebuild
@@ -75,7 +75,7 @@ COMMON="
 	fftw? ( sci-libs/fftw:3.0= )
 	hls? (
 		media-libs/faac:=
-		<media-libs/libvpx-1.5.0:=
+		<media-libs/libvpx-1.6.0:=
 		>=media-libs/x264-0.0.20111220:=
 	)
 	ieee1394? (
@@ -158,6 +158,7 @@ src_prepare() {
 	echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
 
 	epatch "${FILESDIR}/libdir-27.patch"
+	epatch "${FILESDIR}/${PN}-0.27.6-libvpx-1.5.0.patch"
 
 	epatch_user
 }


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2017-10-20 21:39 Andreas Hüttel
  0 siblings, 0 replies; 13+ messages in thread
From: Andreas Hüttel @ 2017-10-20 21:39 UTC (permalink / raw
  To: gentoo-commits

commit:     49e135cfc1274442c7f22e8372d053e0d34dc484
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 20 21:38:53 2017 +0000
Commit:     Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Oct 20 21:39:00 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49e135cf

media-tv/mythtv: Fix build with glibc-2.25, bug 604430

Closes: https://bugs.gentoo.org/604430
Package-Manager: Portage-2.3.12, Repoman-2.3.3

 media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch | 29 ++++++++++++++++++++++
 media-tv/mythtv/mythtv-0.28.1-r1.ebuild            |  1 +
 2 files changed, 30 insertions(+)

diff --git a/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch b/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch
new file mode 100644
index 00000000000..343a808076e
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-0.28.1-glibc225.patch
@@ -0,0 +1,29 @@
+From b012ff0f6b284969183863d42a6a14eb77ed0a1d Mon Sep 17 00:00:00 2001
+From: Stuart Auchterlonie <stuarta@mythtv.org>
+Date: Tue, 6 Jun 2017 22:39:03 +0100
+Subject: [PATCH] Refs #13047 - major() and minor() are defined in
+ <sys/sysmacros.h>
+
+On BSD platforms they remain defined in <sys/types.h>
+
+(cherry picked from commit eca27c542b70deb58e50ad4581b2d6f6b2e1d3c2)
+---
+ mythtv/libs/libmythtv/videosource.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/mythtv/libs/libmythtv/videosource.cpp b/mythtv/libs/libmythtv/videosource.cpp
+index 97618adc80..09dd95073d 100644
+--- a/mythtv/libs/libmythtv/videosource.cpp
++++ b/mythtv/libs/libmythtv/videosource.cpp
+@@ -3,7 +3,11 @@
+ // Standard UNIX C headers
+ #include <unistd.h>
+ #include <fcntl.h>
++#if defined(__FreeBSD__) || CONFIG_DARWIN || defined(__OpenBSD__)
+ #include <sys/types.h>
++#else
++#include <sys/sysmacros.h>
++#endif
+ #include <sys/stat.h>
+ 
+ // C++ headers

diff --git a/media-tv/mythtv/mythtv-0.28.1-r1.ebuild b/media-tv/mythtv/mythtv-0.28.1-r1.ebuild
index ac83e415065..4d9566ab953 100644
--- a/media-tv/mythtv/mythtv-0.28.1-r1.ebuild
+++ b/media-tv/mythtv/mythtv-0.28.1-r1.ebuild
@@ -159,6 +159,7 @@ src_prepare() {
 
 	echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
 
+	epatch "${FILESDIR}/${P}-glibc225.patch"
 	epatch_user
 }
 


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2019-08-14 11:15 Andreas Sturmlechner
  0 siblings, 0 replies; 13+ messages in thread
From: Andreas Sturmlechner @ 2019-08-14 11:15 UTC (permalink / raw
  To: gentoo-commits

commit:     c6efb1db19f9073bfd64c4a00e99fde85b05e9e0
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 14 11:12:05 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Aug 14 11:14:42 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c6efb1db

media-tv/mythtv: Fix build with >=media-libs/exiv2-0.27.1

Thanks-to: Amel Hodzic <ilmostro7 <AT> gmail.com>
Closes: https://bugs.gentoo.org/691904
Package-Manager: Portage-2.3.71, Repoman-2.3.17
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../mythtv/files/mythtv-29.1-exiv2-0.27.1.patch     | 21 +++++++++++++++++++++
 media-tv/mythtv/mythtv-29.1-r1.ebuild               |  2 ++
 2 files changed, 23 insertions(+)

diff --git a/media-tv/mythtv/files/mythtv-29.1-exiv2-0.27.1.patch b/media-tv/mythtv/files/mythtv-29.1-exiv2-0.27.1.patch
new file mode 100644
index 00000000000..afdf423355e
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-29.1-exiv2-0.27.1.patch
@@ -0,0 +1,21 @@
+Fix build with exiv2-0.27.1
+Thanks-to: Amel Hodzic <ilmostro7@gmail.com>
+
+--- a/libs/libmythmetadata/imagemetadata.cpp
++++ b/libs/libmythmetadata/imagemetadata.cpp
+@@ -7,14 +7,7 @@ 
+ #include "exitcodes.h"        // for ffprobe
+ 
+ // libexiv2 for Exif metadata
+-//#include <exiv2/exiv2.hpp>
+-// Note: Older versions of Exiv2 don't have the exiv2.hpp include
+-// file.  Using image.hpp instead seems to work.
+-#ifdef _MSC_VER
+-#include <exiv2/src/image.hpp>
+-#else
+-#include <exiv2/image.hpp>
+-#endif
++#include <exiv2/exiv2.hpp>
+ 
+ // To read FFMPEG Metadata
+ extern "C" {

diff --git a/media-tv/mythtv/mythtv-29.1-r1.ebuild b/media-tv/mythtv/mythtv-29.1-r1.ebuild
index 85c778c6135..05fc9479744 100644
--- a/media-tv/mythtv/mythtv-29.1-r1.ebuild
+++ b/media-tv/mythtv/mythtv-29.1-r1.ebuild
@@ -156,6 +156,8 @@ to journald via the console at the notice verbosity.
 
 MYTHTV_GROUPS="video,audio,tty,uucp"
 
+PATCHES=( "${FILESDIR}/${P}-exiv2-0.27.1.patch" ) # bug 691904
+
 pkg_setup() {
 	python-single-r1_pkg_setup
 	enewuser mythtv -1 /bin/bash /home/mythtv ${MYTHTV_GROUPS}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2019-09-20 16:18 Joonas Niilola
  0 siblings, 0 replies; 13+ messages in thread
From: Joonas Niilola @ 2019-09-20 16:18 UTC (permalink / raw
  To: gentoo-commits

commit:     cb34a5497be5bc3642f0fc05b59bab53ca7e0ca1
Author:     Wilson Michaels <thebitpit <AT> eartlink <DOT> net>
AuthorDate: Tue Sep 17 19:53:35 2019 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Fri Sep 20 16:17:51 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cb34a549

media-tv/mythtv: Bump to 30.0_p2019080 on fixes/30 branch

EAPI 7

Signed-off-by: Wilson Michaels <thebitpit <AT> eartlink.net>
Closes: https://github.com/gentoo/gentoo/pull/12818
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 media-tv/mythtv/Manifest                           |   1 +
 ...808-Fix_Dereferencing_type-punned_pointer.patch |  34 ++
 ...-30.0_p20190808-Fix_unitialized_variables.patch |  22 ++
 ...tv-30.0_p20190808-cast_constants_to_short.patch | 365 ++++++++++++++++++
 .../mythtv-30.0_p20190808-respect_LDFLAGS.patch    |  14 +
 media-tv/mythtv/metadata.xml                       |  75 ++--
 media-tv/mythtv/mythtv-30.0_p20190808.ebuild       | 420 +++++++++++++++++++++
 7 files changed, 888 insertions(+), 43 deletions(-)

diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index ab544b3114f..fe458fa1553 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1 +1,2 @@
 DIST mythtv-29.1-r1.tar.gz 105657217 BLAKE2B 9d42464b0c75c2d3a359b528e3f7917cfb281f48451167afc6517caa9702da44fce2d48566fd902ec08af35117232113b4d499e2c9a3cf2ad2634d91cf532ca7 SHA512 0eadc37661d9fa93a63c0f425cd43d43533889b0afcea1478b2645e083ba6c96eebf2eec088db1ed6f0a0727c03b7c90c0c18b83c194d630dda3bac45bca5d87
+DIST mythtv-30.0_p20190808.tar.gz 101208060 BLAKE2B af8966dd6353fc514c9a95083f28e8b7b19f16e1bd5a4f7590a946c306bf16a09f0028c76da975e423136834f8f06d7f2a570b43957ef4ae5e42ee241b579f0a SHA512 c02371c0b2162556e40a560a0fd9cb121f46f2ccedbc2ca74cd03aa9caf2b7ea4bbaa09ae6320eb782f932190f449e7fdd274a6d6ba9676e5fd9b7f5432632a2

diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_Dereferencing_type-punned_pointer.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_Dereferencing_type-punned_pointer.patch
new file mode 100644
index 00000000000..bc0751c887c
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_Dereferencing_type-punned_pointer.patch
@@ -0,0 +1,34 @@
+--- a/libs/libmythfreemheg/Programs.cpp
++++ b/libs/libmythfreemheg/Programs.cpp
+@@ -232,7 +232,10 @@ void MHResidentProgram::CallProgram(bool fIsFork, const MHObjectRef &success, co
+                 for (int i = 0; i < format.Size(); i++)
+                 {
+                     unsigned char ch = format.GetAt(i);
+-                    char buffer[5]; // Largest text is 4 chars for a year + null terminator
++		    // Largest text is 4 chars for a year + null terminator
++		    // But... adding a constant to the value might be 5 chars + null terminator
++		    // Using 6 gets rid of compiler warning
++                    char buffer[6];
+ 
+                     if (ch == '%')
+                     {
+@@ -249,16 +252,16 @@ void MHResidentProgram::CallProgram(bool fIsFork, const MHObjectRef &success, co
+                         switch (ch)
+                         {
+                             case 'Y':
+-                                sprintf(buffer, "%04d", timeStr->tm_year + 1900);
++                                sprintf(buffer, "%04d", (unsigned short)(timeStr->tm_year + 1900));
+                                 break;
+                             case 'y':
+                                 sprintf(buffer, "%02d", timeStr->tm_year % 100);
+                                 break;
+                             case 'X':
+-                                sprintf(buffer, "%02d", timeStr->tm_mon + 1);
++                                sprintf(buffer, "%02d", (unsigned short)(timeStr->tm_mon + 1));
+                                 break;
+                             case 'x':
+-                                sprintf(buffer, "%1d", timeStr->tm_mon + 1);
++                                sprintf(buffer, "%1d", (unsigned short)(timeStr->tm_mon + 1));
+                                 break;
+                             case 'D':
+                                 sprintf(buffer, "%02d", timeStr->tm_mday);

diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_unitialized_variables.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_unitialized_variables.patch
new file mode 100644
index 00000000000..db296242515
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-30.0_p20190808-Fix_unitialized_variables.patch
@@ -0,0 +1,22 @@
+--- a/libs/libmythtv/eitfixup.cpp
++++ b/libs/libmythtv/eitfixup.cpp
+@@ -842,7 +842,7 @@ void EITFixUp::SetUKSubtitle(DBEventEIT &event) const
+ void EITFixUp::FixUK(DBEventEIT &event) const
+ {
+     int position1;
+-    int position2;
++    int position2 = 0;
+     QString strFull;
+ 
+     bool isMovie = event.m_category.startsWith("Movie",Qt::CaseInsensitive) ||
+--- a/libs/libmythui/mythuitext.cpp
++++ b/libs/libmythui/mythuitext.cpp
+@@ -1058,7 +1058,7 @@ int MythUIText::MoveCursor(int lines)
+     int lineCount = 0;
+     int currPos = 0;
+     int layoutStartPos = 0;
+-    int xPos;
++    int xPos = 0;
+ 
+     for (int x = 0; x < m_Layouts.count(); x++)
+     {

diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch
new file mode 100644
index 00000000000..572f4e2b757
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch
@@ -0,0 +1,365 @@
+--- a/libs/libmyth/test/test_audioutils/test_audioutils.h
++++ b/libs/libmyth/test/test_audioutils/test_audioutils.h
+@@ -204,42 +204,48 @@ class TestAudioUtils: public QObject
+             arrays1[i] = j;
+         }
+ 
+-        uint32_t pattern        = 0xbcbcbcbc;
+-        arrays2[offsetshort-4]  = *(short*)&pattern;
+-        arrays2[offsetshort-3]  = *(short*)&pattern;
+-        arrays2[offsetshort-2]  = *(short*)&pattern;
+-        arrays2[offsetshort-1]  = *(short*)&pattern;
+-        arrayf[offsetfloat-4]   = *(float*)&pattern;
+-        arrayf[offsetfloat-3]   = *(float*)&pattern;
+-        arrayf[offsetfloat-2]   = *(float*)&pattern;
+-        arrayf[offsetfloat-1]   = *(float*)&pattern;
+-        arrays2[SAMPLES+offsetshort+0]    = *(short*)&pattern;
+-        arrays2[SAMPLES+offsetshort+1]    = *(short*)&pattern;
+-        arrays2[SAMPLES+offsetshort+2]    = *(short*)&pattern;
+-        arrays2[SAMPLES+offsetshort+3]    = *(short*)&pattern;
+-        arrayf[SAMPLES+offsetfloat+0]     = *(float*)&pattern;
+-        arrayf[SAMPLES+offsetfloat+1]     = *(float*)&pattern;
+-        arrayf[SAMPLES+offsetfloat+2]     = *(float*)&pattern;
+-        arrayf[SAMPLES+offsetfloat+3]     = *(float*)&pattern;
++	const union
++	{
++	    uint32_t pattern;
++	    short shortpattern;
++	    float floatpattern;
++	} pattern = { .pattern = 0xbcbcbcbc };
++
++        arrays2[offsetshort-4]  = *&pattern.shortpattern;
++        arrays2[offsetshort-3]  = *&pattern.shortpattern;
++        arrays2[offsetshort-2]  = *&pattern.shortpattern;
++        arrays2[offsetshort-1]  = *&pattern.shortpattern;
++        arrayf[offsetfloat-4]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-3]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-2]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-1]   = *(float*)&pattern.floatpattern;
++        arrays2[SAMPLES+offsetshort+0]    = *&pattern.shortpattern;
++        arrays2[SAMPLES+offsetshort+1]    = *&pattern.shortpattern;
++        arrays2[SAMPLES+offsetshort+2]    = *&pattern.shortpattern;
++        arrays2[SAMPLES+offsetshort+3]    = *&pattern.shortpattern;
++        arrayf[SAMPLES+offsetfloat+0]     = *(float*)&pattern.floatpattern;
++        arrayf[SAMPLES+offsetfloat+1]     = *(float*)&pattern.floatpattern;
++        arrayf[SAMPLES+offsetfloat+2]     = *(float*)&pattern.floatpattern;
++        arrayf[SAMPLES+offsetfloat+3]     = *(float*)&pattern.floatpattern;
+ 
+         // sanity tests
+         QCOMPARE(SAMPLES*2, SAMPLES * ISIZEOF(arrays1[0]));
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],pattern);
+-        QCOMPARE(*(short*)&arrays2[offsetshort-4],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[offsetshort-3],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[offsetshort-2],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[offsetshort-1],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*(short*)&pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(short*)&arrays2[offsetshort-4],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[offsetshort-3],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[offsetshort-2],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[offsetshort-1],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*&pattern.shortpattern);
+         QCOMPARE(arrayf+4,&arrayf[4]);
+         QCOMPARE(arrays2+4,&arrays2[4]);
+ 
+@@ -248,22 +254,22 @@ class TestAudioUtils: public QObject
+         int val2 = AudioOutputUtil::fromFloat(FORMAT_S16, arrays2+offsetshort, arrayf+offsetfloat, SAMPLES * ISIZEOF(float));
+         QCOMPARE(val2, SAMPLES * ISIZEOF(short));
+ 
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],pattern);
+-        QCOMPARE(*(short*)&arrays2[offsetshort-4],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[offsetshort-3],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[offsetshort-2],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[offsetshort-1],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*(short*)&pattern);
+-        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*(short*)&pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(short*)&arrays2[offsetshort-4],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[offsetshort-3],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[offsetshort-2],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[offsetshort-1],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*&pattern.shortpattern);
++        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*&pattern.shortpattern);
+ 
+         av_free(arrays1);
+         av_free(arrays2);
+@@ -505,42 +511,48 @@ class TestAudioUtils: public QObject
+             arrays1[i] = j;
+         }
+ 
+-        uint32_t pattern        = 0xbcbcbcbc;
+-        arrays2[offsetuchar-4]  = *(uchar*)&pattern;
+-        arrays2[offsetuchar-3]  = *(uchar*)&pattern;
+-        arrays2[offsetuchar-2]  = *(uchar*)&pattern;
+-        arrays2[offsetuchar-1]  = *(uchar*)&pattern;
+-        arrayf[offsetfloat-4]   = *(float*)&pattern;
+-        arrayf[offsetfloat-3]   = *(float*)&pattern;
+-        arrayf[offsetfloat-2]   = *(float*)&pattern;
+-        arrayf[offsetfloat-1]   = *(float*)&pattern;
+-        arrays2[SIZEARRAY+offsetuchar+0]    = *(uchar*)&pattern;
+-        arrays2[SIZEARRAY+offsetuchar+1]    = *(uchar*)&pattern;
+-        arrays2[SIZEARRAY+offsetuchar+2]    = *(uchar*)&pattern;
+-        arrays2[SIZEARRAY+offsetuchar+3]    = *(uchar*)&pattern;
+-        arrayf[SIZEARRAY+offsetfloat+0]     = *(float*)&pattern;
+-        arrayf[SIZEARRAY+offsetfloat+1]     = *(float*)&pattern;
+-        arrayf[SIZEARRAY+offsetfloat+2]     = *(float*)&pattern;
+-        arrayf[SIZEARRAY+offsetfloat+3]     = *(float*)&pattern;
++	const union
++	{
++	    uint32_t pattern;
++	    uchar ucharpattern;
++	    float floatpattern;
++	} pattern = { .pattern = 0xbcbcbcbc };
++
++        arrays2[offsetuchar-4]  = *(uchar*)&pattern.ucharpattern;
++        arrays2[offsetuchar-3]  = *(uchar*)&pattern.ucharpattern;
++        arrays2[offsetuchar-2]  = *(uchar*)&pattern.ucharpattern;
++        arrays2[offsetuchar-1]  = *(uchar*)&pattern.ucharpattern;
++        arrayf[offsetfloat-4]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-3]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-2]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-1]   = *(float*)&pattern.floatpattern;
++        arrays2[SIZEARRAY+offsetuchar+0]    = *(uchar*)&pattern.ucharpattern;
++        arrays2[SIZEARRAY+offsetuchar+1]    = *(uchar*)&pattern.ucharpattern;
++        arrays2[SIZEARRAY+offsetuchar+2]    = *(uchar*)&pattern.ucharpattern;
++        arrays2[SIZEARRAY+offsetuchar+3]    = *(uchar*)&pattern.ucharpattern;
++        arrayf[SIZEARRAY+offsetfloat+0]     = *(float*)&pattern.floatpattern;
++        arrayf[SIZEARRAY+offsetfloat+1]     = *(float*)&pattern.floatpattern;
++        arrayf[SIZEARRAY+offsetfloat+2]     = *(float*)&pattern.floatpattern;
++        arrayf[SIZEARRAY+offsetfloat+3]     = *(float*)&pattern.floatpattern;
+ 
+         // sanity tests
+         QCOMPARE(SIZEARRAY*1, SIZEARRAY * ISIZEOF(arrays1[0]));
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern);
+-        QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern.ucharpattern);
+         QCOMPARE(arrayf+4,&arrayf[4]);
+         QCOMPARE(arrays2+4,&arrays2[4]);
+ 
+@@ -549,22 +561,22 @@ class TestAudioUtils: public QObject
+         int val2 = AudioOutputUtil::fromFloat(FORMAT_U8, arrays2+offsetuchar, arrayf+offsetfloat, SIZEARRAY * ISIZEOF(float));
+         QCOMPARE(val2, SIZEARRAY * ISIZEOF(uchar));
+ 
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern);
+-        QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern);
+-        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern.ucharpattern);
++        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern.ucharpattern);
+ 
+         av_free(arrays1);
+         av_free(arrays2);
+@@ -686,42 +698,48 @@ class TestAudioUtils: public QObject
+             arrays1[i] = j;
+         }
+ 
+-        uint32_t pattern        = 0xbcbcbcbc;
+-        arrays2[offsetint32_t-4]  = *(int32_t*)&pattern;
+-        arrays2[offsetint32_t-3]  = *(int32_t*)&pattern;
+-        arrays2[offsetint32_t-2]  = *(int32_t*)&pattern;
+-        arrays2[offsetint32_t-1]  = *(int32_t*)&pattern;
+-        arrayf[offsetfloat-4]   = *(float*)&pattern;
+-        arrayf[offsetfloat-3]   = *(float*)&pattern;
+-        arrayf[offsetfloat-2]   = *(float*)&pattern;
+-        arrayf[offsetfloat-1]   = *(float*)&pattern;
+-        arrays2[SIZEARRAY+offsetint32_t+0]    = *(int32_t*)&pattern;
+-        arrays2[SIZEARRAY+offsetint32_t+1]    = *(int32_t*)&pattern;
+-        arrays2[SIZEARRAY+offsetint32_t+2]    = *(int32_t*)&pattern;
+-        arrays2[SIZEARRAY+offsetint32_t+3]    = *(int32_t*)&pattern;
+-        arrayf[SIZEARRAY+offsetfloat+0]     = *(float*)&pattern;
+-        arrayf[SIZEARRAY+offsetfloat+1]     = *(float*)&pattern;
+-        arrayf[SIZEARRAY+offsetfloat+2]     = *(float*)&pattern;
+-        arrayf[SIZEARRAY+offsetfloat+3]     = *(float*)&pattern;
++	const union
++	{
++	    uint32_t pattern;
++	    int32_t int32pattern;
++	    float floatpattern;
++	} pattern = { .pattern = 0xbcbcbcbc };
++
++        arrays2[offsetint32_t-4]  = *(int32_t*)&pattern.int32pattern;
++        arrays2[offsetint32_t-3]  = *(int32_t*)&pattern.int32pattern;
++        arrays2[offsetint32_t-2]  = *(int32_t*)&pattern.int32pattern;
++        arrays2[offsetint32_t-1]  = *(int32_t*)&pattern.int32pattern;
++        arrayf[offsetfloat-4]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-3]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-2]   = *(float*)&pattern.floatpattern;
++        arrayf[offsetfloat-1]   = *(float*)&pattern.floatpattern;
++        arrays2[SIZEARRAY+offsetint32_t+0]    = *(int32_t*)&pattern.int32pattern;
++        arrays2[SIZEARRAY+offsetint32_t+1]    = *(int32_t*)&pattern.int32pattern;
++        arrays2[SIZEARRAY+offsetint32_t+2]    = *(int32_t*)&pattern.int32pattern;
++        arrays2[SIZEARRAY+offsetint32_t+3]    = *(int32_t*)&pattern.int32pattern;
++        arrayf[SIZEARRAY+offsetfloat+0]     = *(float*)&pattern.floatpattern;
++        arrayf[SIZEARRAY+offsetfloat+1]     = *(float*)&pattern.floatpattern;
++        arrayf[SIZEARRAY+offsetfloat+2]     = *(float*)&pattern.floatpattern;
++        arrayf[SIZEARRAY+offsetfloat+3]     = *(float*)&pattern.floatpattern;
+ 
+         // sanity tests
+         QCOMPARE(SIZEARRAY*4, SIZEARRAY * ISIZEOF(arrays1[0]));
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern.int32pattern);
+         QCOMPARE(arrayf+4,&arrayf[4]);
+         QCOMPARE(arrays2+4,&arrays2[4]);
+ 
+@@ -730,22 +748,22 @@ class TestAudioUtils: public QObject
+         int val2 = AudioOutputUtil::fromFloat(FORMAT_S32, arrays2+offsetint32_t, arrayf+offsetfloat, SIZEARRAY * ISIZEOF(float));
+         QCOMPARE(val2, SIZEARRAY * ISIZEOF(int32_t));
+ 
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern);
+-        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern);
+-        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern);
++        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern.int32pattern);
++        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern.int32pattern);
+ 
+         av_free(arrays1);
+         av_free(arrays2);

diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-respect_LDFLAGS.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-respect_LDFLAGS.patch
new file mode 100644
index 00000000000..8bfc2796cff
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-30.0_p20190808-respect_LDFLAGS.patch
@@ -0,0 +1,14 @@
+--- a/configure
++++ b/configure
+@@ -7919,9 +7919,9 @@ EOF
+ #echo "endif # FFMPEG_CONFIG_MAK" >> $TMPMAK
+ 
+ # Should be done on all platforms, but for the time being limit it to mac only
+-if enabled darwin; then
++#if enabled darwin; then
+   echo "QMAKE_LFLAGS+=\"$LDFLAGS\"" >> $TMPMAK
+-fi
++#fi
+ 
+ cp_if_changed $TMPH $MYTH_CONFIG_H
+ 

diff --git a/media-tv/mythtv/metadata.xml b/media-tv/mythtv/metadata.xml
index 2c054c79fe6..f6172ecf966 100644
--- a/media-tv/mythtv/metadata.xml
+++ b/media-tv/mythtv/metadata.xml
@@ -1,52 +1,41 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-	<!-- maintainer-needed -->
+	<maintainer type="person">
+		<email>thebitpit@earthlink.net</email>
+		<name>Wilson Michaels</name>
+	</maintainer>
+	<maintainer type="project">
+		<email>proxy-maint@gentoo.org</email>
+		<name>Proxy Maintainers</name>
+	</maintainer>
 	<use>
-		<flag name="alsa">Allows MythTV to directly output sound to ALSA devices,
-		this is needed if you are using ALSA dmix or SPDIF. Note, you will have
-		to physically type your device into the MythTV configuration since it
-		will only give you /dev/dsp devices in the drop down.</flag>
-		<flag name="altivec">Builds ffmpeg's codec libraries with altivec
-		support.</flag>
-		<flag name="autostart">Uses a custom autostart configuration gleaned from
-		experience with MythTV since its early versions and discussed with
-		other MythTV maintainers and users. Does not rely on KDE being installed
-		like most methods do.</flag>
-		<flag name="bluray">Pulls in libbluray for BluRay support.</flag>
-		<flag name="cec">Allows you to control CEC enabled TVs via HDMI. Currently
-		requires a USB based CEC -&gt; HDMI injector between your TV and video
-		card since no graphics drivers support CEC natively.</flag>
-		<flag name="crystalhd">Allows you to utilize a Broadcom CrystalHD hardware
-		based video decoder to improve the performance of video decode.</flag>
-		<flag name="debug">Instructs Qt to use the 'debug' target instead of
-		'release' target. If your MythTV is crashing or you need a backtrace,
-		you need to compile it with this option otherwise the debugging data is
-		useless.</flag>
-		<flag name="egl">Support EGL video output.</flag>
+		<flag name="alsa">Allows MythTV to directly output sound to ALSA devices</flag>
+		<flag name="asi">Support for DVEO ASI recorder</flag>
+		<flag name="autostart">Use a custom autostart configuration</flag>
+		<flag name="bluray">Use the system libbluray for BluRay support</flag>
+		<flag name="cec">Allows control of CEC enabled TVs via HDMI</flag>
+		<flag name="ceton">Ceton InfiniTV 4 a CableCARD-enabled tuner support</flag>
+		<flag name="crystalhd">Broadcom CrystalHD hardware support</flag>
+		<flag name="debug">Instructs Qt to use the 'debug' target</flag>
+		<flag name="egl">EGL video output support</flag>
 		<flag name="fftw">Support visualizations via <pkg>sci-libs/fftw</pkg></flag>
+		<flag name="hdhomerun">Silicondust USA Inc.network-attached tuner support</flag>
+		<flag name="hdpvr">Hauppauge HD-PVR?</flag>
 		<flag name="hls">HTTP Live Streaming support</flag>
-		<flag name="ieee1394">Allows MythTV to communicate and use Firewire enabled
-		Cable boxes. These are typically found in the United States, where such
-		support is required by law. This will also install Firewire test
-		programs and external channel changers if the internal changer does not
-		work.</flag>
-		<flag name="jack">Allows MythTV to use JACK as your sound output device. You
-		will have to manually configure the path to your JACK settings.</flag>
-		<flag name="lcd">Tells MythTV that you have an instance of
-		<pkg>app-misc/lcdproc</pkg> configured on your machine and it should
-		output information such as current time, show name, episode name, etc to
-		that LCD.</flag>
-		<flag name="lirc">Adds LIRC support directly to MythTV allowing for built in
-		control via a LIRC device.</flag>
-		<flag name="mythlogserver">Enable support for syslog and file logging. Not
-		used with systemd.</flag>
-		<flag name="perl">Builds the perl bindings for MythTV. Allows you to write
-		scripts in Perl to control your MythTV setup or communicate with
-		it.</flag>
-		<flag name="wrapper">Use Ubuntu mythtfrontend wrapper.</flag>
-		<flag name="xmltv">Pulls in the <pkg>media-tv/xmltv</pkg> TV listing
-		grabbers for users not using Schedules Direct.</flag>
+		<flag name="ieee1394">Firewire enabled Cable boxe support</flag>
+		<flag name="ivtv">Support kernel driver for the iTVC15 family of MPEG codecs</flag>
+		<flag name="jack">Allows MythTV to use JACK as your sound output device</flag>
+		<flag name="java">BD-J support for Blu-ray discs</flag>
+		<flag name="lcd">Enable use of <pkg>app-misc/lcdproc</pkg> data display</flag>
+		<flag name="lirc">LIRC remote control device support</flag>
+		<flag name="mythlogserver">Enable support for syslog and file logging</flag>
+		<flag name="perl">Build the perl bindings for MythTV</flag>
+		<flag name="vbox">V@Box Communications network-attached tuner devices support</flag>
+		<flag name="vpx">Enable VP8/VP9 support for <pkg>media-libs/libvpx</pkg></flag>
+		<flag name="wrapper">Use Ubuntu mythtfrontend wrapper</flag>
+		<flag name="x265">Enable h265 encoding using x265</flag>
+		<flag name="xmltv">Support <pkg>media-tv/xmltv</pkg> TV listing - not used by Schedules Direct]</flag>
 	</use>
 	<upstream>
 		<remote-id type="github">MythTV/mythtv</remote-id>

diff --git a/media-tv/mythtv/mythtv-30.0_p20190808.ebuild b/media-tv/mythtv/mythtv-30.0_p20190808.ebuild
new file mode 100644
index 00000000000..1e8752cdcda
--- /dev/null
+++ b/media-tv/mythtv/mythtv-30.0_p20190808.ebuild
@@ -0,0 +1,420 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+
+BACKPORTS="5cde0578d84926171b20c8f7e95a101e9b0b9457" # August 8, 2019
+
+MY_P=${P%_p*}
+MY_PV=${PV%_p*}
+
+inherit eutils flag-o-matic python-single-r1 qmake-utils readme.gentoo-r1 systemd vcs-snapshot
+
+MYTHTV_BRANCH="fixes/${P%.*}"
+
+DESCRIPTION="Open Source DVR and media center hub"
+HOMEPAGE="https://www.mythtv.org"
+SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2+"
+KEYWORDS="~amd64 ~x86"
+SLOT="0/${PV}"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE_VIDEO_CAPTURE_DEVICES="v4l ivtv ieee1394 hdpvr hdhomerun vbox ceton"
+IUSE="alsa altivec asi autostart bluray cdda cdr cec crystalhd debug dvd dvb egl exif fftw jack java
+	+lame lcd libass lirc +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx
+	+wrapper x264 x265 +xml xmltv +xvid +X zeroconf
+	${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
+REQUIRED_USE="
+	python? ( ${PYTHON_REQUIRED_USE} )
+	bluray? ( xml )
+	cdr? ( cdda )
+"
+
+# Some of the QA tests fail -- fix in next revision
+RESTRICT="test"
+
+COMMON="
+	acct-user/mythtv
+	dev-libs/glib:2
+	dev-libs/lzo
+	dev-qt/qtcore:5
+	dev-qt/qtdbus:5
+	dev-qt/qtgui:5
+	dev-qt/qtnetwork:5
+	opengl? ( dev-qt/qtopengl:5 )
+	dev-qt/qtscript:5
+	dev-qt/qtsql:5[mysql]
+	dev-qt/qtwebkit:5
+	dev-qt/qtwidgets:5
+	dev-qt/qtxml:5
+	media-gfx/exiv2:=
+	media-libs/freetype:2
+	media-libs/libsamplerate
+	media-libs/taglib
+	lame? ( >=media-sound/lame-3.93.1 )
+	sys-libs/zlib
+	virtual/mysql
+	opengl? ( virtual/opengl )
+	X? (
+		x11-libs/libX11:=
+		x11-libs/libXext:=
+		x11-libs/libXinerama:=
+		x11-libs/libXrandr:=
+		x11-libs/libXv:=
+		x11-libs/libXxf86vm:=
+		x11-misc/wmctrl:=
+	)
+	alsa? ( >=media-libs/alsa-lib-1.0.24 )
+	bluray? (
+		media-libs/libbluray:=
+		dev-libs/libcdio:=
+		sys-fs/udisks:2
+	)
+	cec? ( dev-libs/libcec )
+	dvd? (
+		dev-libs/libcdio:=
+		sys-fs/udisks:2
+	)
+	egl? ( media-libs/mesa[egl] )
+	fftw? ( sci-libs/fftw:3.0=[threads] )
+	hdhomerun? ( media-libs/libhdhomerun )
+	ieee1394? (
+		>=media-libs/libiec61883-1.0.0
+		>=sys-libs/libavc1394-0.5.3
+		>=sys-libs/libraw1394-1.2.0
+	)
+	jack? ( media-sound/jack-audio-connection-kit )
+	lcd? ( app-misc/lcdproc )
+	libass? ( >=media-libs/libass-0.9.11:= )
+	lirc? ( app-misc/lirc )
+	perl? (
+		>=dev-perl/libwww-perl-5
+		dev-perl/DBD-mysql
+		dev-perl/HTTP-Message
+		dev-perl/IO-Socket-INET6
+		dev-perl/LWP-Protocol-https
+		dev-perl/Net-UPnP
+	)
+	pulseaudio? ( media-sound/pulseaudio )
+	python? (
+		${PYTHON_DEPS}
+		dev-python/lxml
+		dev-python/mysql-python
+		dev-python/urlgrabber
+		dev-python/future
+		dev-python/requests-cache
+	)
+	systemd? ( sys-apps/systemd:= )
+	vaapi? ( x11-libs/libva:=[opengl] )
+	vdpau? ( x11-libs/libvdpau )
+	vpx? ( media-libs/libvpx:= )
+	x264? (	>=media-libs/x264-0.0.20111220:= )
+	x265? (	media-libs/x265 )
+	xml? ( >=dev-libs/libxml2-2.6.0 )
+	xvid? ( >=media-libs/xvid-1.1.0 )
+	zeroconf? (
+		dev-libs/openssl:0=
+		net-dns/avahi[mdnsresponder-compat]
+	)
+"
+RDEPEND="${COMMON}
+	media-fonts/corefonts
+	media-fonts/dejavu
+	media-fonts/liberation-fonts
+	x11-apps/xinit
+	autostart? (
+		net-dialup/mingetty
+		x11-apps/xset
+		x11-wm/evilwm
+	)
+	dvd? ( media-libs/libdvdcss )
+	xmltv? ( >=media-tv/xmltv-0.5.43 )
+"
+DEPEND="
+	${COMMON}
+	dev-lang/yasm
+	x11-base/xorg-proto
+"
+
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+	"${FILESDIR}/${P}-respect_LDFLAGS.patch"
+	"${FILESDIR}/${P}-cast_constants_to_short.patch"
+	"${FILESDIR}/${P}-Fix_Dereferencing_type-punned_pointer.patch"
+	"${FILESDIR}/${P}-Fix_unitialized_variables.patch"
+)
+
+# mythtv and mythplugins are separate builds in the github mythtv project
+S="${WORKDIR}/${PF}/mythtv"
+
+DISABLE_AUTOFORMATTING="yes"
+DOC_CONTENTS="
+Creating mythtv MySQL user and mythconverg database if it does not
+already exist. You will be prompted for your MySQL root password.
+
+Mythtv is updated to use correct FHS/Gentoo policy paths.
+Updating mythtv installations may report:
+	* mythtv is in use, cannot update home
+	* There was an error when attempting to update the home directory for mythtv
+	* Please update it manually on your system (as root):
+	*       usermod -d "/var/lib/mythtv" "mythtv"
+This can be ignored. The previous default was "/home/mythtv".
+Use caution if you change the home directory.
+
+To have this machine operate as recording host for MythTV,
+mythbackend must be running. Run the following:
+rc-update add mythbackend default
+
+Your recordings folder must be owned 'mythtv'. e.g.
+chown -R mythtv /var/lib/mythtv
+
+Want mythfrontend to start automatically?
+Set USE=autostart. Details can be found at:
+https://dev.gentoo.org/~cardoe/mythtv/autostart.html
+
+Note that the systemd unit now restarts by default and logs
+to journald via the console at the notice verbosity.
+"
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+	# The acct-user/mythtv package creates/manages the user 'mythtv'
+}
+
+src_prepare() {
+	default
+
+	# 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/Makefile || die "Cannot convert site_perl to vendor_perl!"
+
+	# Fix up the version info since we are using the fixes/${PV} branch
+	echo "SOURCE_VERSION=\"v${MY_PV}\"" > "${S}"/VERSION
+	echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/VERSION
+	echo "SOURCE_VERSION=\"${BACKPORTS}\"" > "${S}"/EXPORTED_VERSION
+	echo "BRANCH=\"${MYTHTV_BRANCH}\"" >> "${S}"/EXPORTED_VERSION
+
+	echo "setting.extra -= -ldconfig" >> "${S}"/programs/mythfrontend/mythfrontend.pro
+}
+
+src_configure() {
+	local -a myconf
+
+	# Setup paths
+	myconf+=(--prefix="${EPREFIX}"/usr)
+	myconf+=(--libdir="${EPREFIX}"/usr/$(get_libdir))
+	myconf+=(--libdir-name=$(get_libdir))
+	myconf+=(--mandir="${EPREFIX}"/usr/share/man)
+
+	if use debug; then
+		myconf+=(--compile-type=debug)
+		myconf+=(--disable-stripping) # FIXME: does not disable for all files, only for some
+		myconf+=(--enable-valgrind) # disables timeouts for valgrind memory debugging
+	else
+		myconf+=(--compile-type=release)
+	fi
+
+	# Build boosters
+	has ccache "${FEATURES}" || myconf+=(--disable-ccache)
+	has distcc "${FEATURES}" || myconf+=(--disable-distcc)
+
+	# CPU settings
+	# Mythtv's configure is borrowed from ffmpeg,
+	# Bug #172723
+	# Try to get cpu type based on CFLAGS.
+	# We need to do this so that features of that CPU will be better used
+	# If they contain an unknown CPU it will not hurt since ffmpeg's configure
+	# will just ignore it.
+	for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+		[ "${i}" = "native" ] && i="host" # bug #273421
+		myconf+=(--cpu="${i}")
+		break
+	done
+	myconf+=($(use_enable altivec))
+
+	# Sound Output Support
+	myconf+=(
+		$(use_enable oss audio-oss)
+		$(use_enable alsa audio-alsa)
+		$(use_enable jack audio-jack)
+		$(use_enable pulseaudio audio-pulseoutput)
+	)
+
+	# Input Support
+	myconf+=(
+		$(use_enable lirc)
+		$(use_enable input_devices_joystick joystick-menu)
+		$(use_enable cec libcec)
+		$(use_enable ieee1394 firewire)
+		$(use_enable hdhomerun)
+		$(use_enable vbox)
+		$(use_enable ceton)
+		$(use_enable v4l v4l2)
+		$(use_enable ivtv)
+		$(use_enable hdpvr)
+		$(use_enable dvb)
+		$(use_enable asi)
+	)
+
+	# Video Output Support
+	myconf+=(
+		$(use_enable X x11)
+		$(use_enable X xnvctrl)
+		$(use_enable X xrandr)
+		$(use_enable X xv)
+	)
+
+	# Hardware accellerators
+	myconf+=(
+		$(use_enable vdpau)
+		$(use_enable crystalhd)
+		$(use_enable vaapi)
+		$(use_enable vaapi vaapi2)
+		$(use_enable opengl opengl-video)
+		$(use_enable opengl opengl-themepainter)
+		$(use_enable libass)
+	)
+
+	# System tools
+	myconf+=(
+		$(use_enable systemd systemd_notify)
+		$(use_enable systemd systemd_journal)
+		$(use_enable xml libxml2)
+		$(use_enable zeroconf libdns-sd)
+	)
+
+	# Bindings
+	if use perl && use python; then
+		myconf+=(--with-bindings=perl,python)
+	elif use perl; then
+		myconf+=(--without-bindings=python)
+		myconf+=(--with-bindings=perl)
+	elif use python; then
+		myconf+=(--without-bindings=perl)
+		myconf+=(--with-bindings=python)
+	else
+		myconf+=(--without-bindings=perl,python)
+	fi
+	use python && myconf+=(--python="${EPYTHON}")
+	myconf+=($(use_enable java bdjava))
+
+	# External codec library options (used for mythffmpeg and streaming transcode)
+	# lame is required for some broadcasts for silence detection of commercials
+	# default enable in IUSE with +lame
+	myconf+=(
+		$(use_enable lame libmp3lame)
+		$(use_enable xvid libxvid)
+		$(use_enable x264 libx264)
+		$(use_enable x265 libx265)
+		$(use_enable vpx libvpx)
+	)
+
+	# Clean up DSO load times and other compiler bits
+	myconf+=(--enable-symbol-visibility)
+	myconf+=(--enable-pic)
+
+	if tc-is-cross-compiler ; then
+		myconf+=(--enable-cross-compile --arch=$(tc-arch-kernel))
+		myconf+=(--cross-prefix="${CHOST}"-)
+	fi
+
+	myconf+=($(use_enable bluray libbluray_external))
+
+	einfo "Running ./configure ${myconf[@]} - THIS MAY TAKE A WHILE."
+	./configure \
+		--cc="$(tc-getCC)" \
+		--cxx="$(tc-getCXX)" \
+		--ar="$(tc-getAR)" \
+		--extra-cflags="${CFLAGS}" \
+		--extra-cxxflags="${CXXFLAGS}" \
+		--extra-ldflags="${LDFLAGS}" \
+		--qmake=$(qt5_get_bindir)/qmake \
+		"${myconf[@]}"
+}
+
+src_install() {
+	emake STRIP="true" INSTALL_ROOT="${D}" install
+	dodoc AUTHORS UPGRADING README
+	readme.gentoo_create_doc
+
+	insinto /usr/share/mythtv/database
+	doins database/*
+
+	newinitd "${FILESDIR}"/mythbackend.init-r2 mythbackend
+	newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+	if use systemd; then
+		systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
+	fi
+
+	dodoc keys.txt
+
+	keepdir /etc/mythtv
+	fowners -R mythtv /etc/mythtv
+	keepdir /var/log/mythtv
+	fowners -R mythtv /var/log/mythtv
+
+	insinto /etc/logrotate.d
+	newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+	insinto /usr/share/mythtv/contrib
+	# Ensure we don't install scripts needing the perl bindings (bug #516968)
+	use perl || find contrib/ -name '*.pl' -exec rm -f {} \;
+	# Ensure we don't install scripts needing the python bindings (bug #516968)
+	use python || find contrib/ -name '*.py' -exec rm -f {} \;
+	doins -r contrib/*
+
+	# Install our mythfrontend wrapper which is similar to Mythbuntu's
+	if use wrapper; then
+		mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
+		newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+		newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+	fi
+
+	if use autostart; then
+		local mythtv_homedir="$( egethome mythtv )"
+
+		echo CONFIG_PROTECT="\"${mythtv_homedir}\"" > "${T}"/95mythtv
+		doenvd "${T}"/95mythtv
+
+		insinto "${mythtv_homedir}"
+		newins "${FILESDIR}"/bash_profile .bash_profile
+		newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+	fi
+
+	# Make Python files executable
+	find "${ED}/usr/share/mythtv" -type f -name '*.py' | while read file; do
+		if [[ ! "${file##*/}" = "__init__.py" ]]; then
+			chmod a+x "${file}" || die "Failed to make python file $(basename ${file}) executable"
+		fi
+	done
+
+	# Ensure that Python scripts are executed by Python 2
+	python_fix_shebang "${ED}/usr/share/mythtv"
+
+	# Make shell & perl scripts executable
+	find "${ED}" -type f -name '*.sh' -o -type f -name '*.pl' | \
+		while read file; do
+		chmod a+x "${file}" || die
+	done
+}
+
+pkg_preinst() {
+	export CONFIG_PROTECT="${CONFIG_PROTECT} ${EROOT}$( egethome mythtv )"
+}
+
+pkg_postinst() {
+	readme.gentoo_print_elog
+}
+
+pkg_info() {
+	return
+}
+
+pkg_config() {
+	"${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2020-11-15 15:31 Joonas Niilola
  0 siblings, 0 replies; 13+ messages in thread
From: Joonas Niilola @ 2020-11-15 15:31 UTC (permalink / raw
  To: gentoo-commits

commit:     e7d274b91f7aa7de97951f9f80ee4e1d021b0e55
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 15 14:25:08 2020 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sun Nov 15 15:31:20 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e7d274b9

media-tv/mythtv: fix SizeViolation issue

Closes: https://bugs.gentoo.org/748195
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 media-tv/mythtv/Manifest                           |   1 +
 ...tv-30.0_p20190808-cast_constants_to_short.patch | 365 ---------------------
 media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild    |   5 +-
 3 files changed, 4 insertions(+), 367 deletions(-)

diff --git a/media-tv/mythtv/Manifest b/media-tv/mythtv/Manifest
index 2cd0c5dfd6b..261a47d69a2 100644
--- a/media-tv/mythtv/Manifest
+++ b/media-tv/mythtv/Manifest
@@ -1,2 +1,3 @@
+DIST mythtv-30.0_p20190808-cast_constants_to_short.patch 24201 BLAKE2B d76e519666914f6c9a510fb0aec493e361e857f51e56bd7d120657f350b0bf5da329a89eb58c9789f8f030c6d08bfe0171750690b76d8c2add807942aa686d59 SHA512 c2724ad248222ac4190412cf68e54ee0b265fdde128996e68a2e178e6debe0180c23f9c7d1878466f9a5689fab8172370c6b31c90aa9a096fb5919ec6e8960fe
 DIST mythtv-30.0_p20190808.tar.gz 101208060 BLAKE2B af8966dd6353fc514c9a95083f28e8b7b19f16e1bd5a4f7590a946c306bf16a09f0028c76da975e423136834f8f06d7f2a570b43957ef4ae5e42ee241b579f0a SHA512 c02371c0b2162556e40a560a0fd9cb121f46f2ccedbc2ca74cd03aa9caf2b7ea4bbaa09ae6320eb782f932190f449e7fdd274a6d6ba9676e5fd9b7f5432632a2
 DIST mythtv-31.0.tar.gz 102552136 BLAKE2B b09b41230eb2cae19d770c3cc59151863e0a56e95a86627473d52613e62f0acf3bd0c4bb37afb340ab874c222899f9d3c219ded470785d27960db9b39d784ceb SHA512 d53817231409934ef37d12739c38cf6936f04f816b0ba1c9738ce99b5b4ff387c70b683ccd84f649ff2f74992b2158829f5f1d1ffe06c8768da1922b90439f6e

diff --git a/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch b/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch
deleted file mode 100644
index 572f4e2b757..00000000000
--- a/media-tv/mythtv/files/mythtv-30.0_p20190808-cast_constants_to_short.patch
+++ /dev/null
@@ -1,365 +0,0 @@
---- a/libs/libmyth/test/test_audioutils/test_audioutils.h
-+++ b/libs/libmyth/test/test_audioutils/test_audioutils.h
-@@ -204,42 +204,48 @@ class TestAudioUtils: public QObject
-             arrays1[i] = j;
-         }
- 
--        uint32_t pattern        = 0xbcbcbcbc;
--        arrays2[offsetshort-4]  = *(short*)&pattern;
--        arrays2[offsetshort-3]  = *(short*)&pattern;
--        arrays2[offsetshort-2]  = *(short*)&pattern;
--        arrays2[offsetshort-1]  = *(short*)&pattern;
--        arrayf[offsetfloat-4]   = *(float*)&pattern;
--        arrayf[offsetfloat-3]   = *(float*)&pattern;
--        arrayf[offsetfloat-2]   = *(float*)&pattern;
--        arrayf[offsetfloat-1]   = *(float*)&pattern;
--        arrays2[SAMPLES+offsetshort+0]    = *(short*)&pattern;
--        arrays2[SAMPLES+offsetshort+1]    = *(short*)&pattern;
--        arrays2[SAMPLES+offsetshort+2]    = *(short*)&pattern;
--        arrays2[SAMPLES+offsetshort+3]    = *(short*)&pattern;
--        arrayf[SAMPLES+offsetfloat+0]     = *(float*)&pattern;
--        arrayf[SAMPLES+offsetfloat+1]     = *(float*)&pattern;
--        arrayf[SAMPLES+offsetfloat+2]     = *(float*)&pattern;
--        arrayf[SAMPLES+offsetfloat+3]     = *(float*)&pattern;
-+	const union
-+	{
-+	    uint32_t pattern;
-+	    short shortpattern;
-+	    float floatpattern;
-+	} pattern = { .pattern = 0xbcbcbcbc };
-+
-+        arrays2[offsetshort-4]  = *&pattern.shortpattern;
-+        arrays2[offsetshort-3]  = *&pattern.shortpattern;
-+        arrays2[offsetshort-2]  = *&pattern.shortpattern;
-+        arrays2[offsetshort-1]  = *&pattern.shortpattern;
-+        arrayf[offsetfloat-4]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-3]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-2]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-1]   = *(float*)&pattern.floatpattern;
-+        arrays2[SAMPLES+offsetshort+0]    = *&pattern.shortpattern;
-+        arrays2[SAMPLES+offsetshort+1]    = *&pattern.shortpattern;
-+        arrays2[SAMPLES+offsetshort+2]    = *&pattern.shortpattern;
-+        arrays2[SAMPLES+offsetshort+3]    = *&pattern.shortpattern;
-+        arrayf[SAMPLES+offsetfloat+0]     = *(float*)&pattern.floatpattern;
-+        arrayf[SAMPLES+offsetfloat+1]     = *(float*)&pattern.floatpattern;
-+        arrayf[SAMPLES+offsetfloat+2]     = *(float*)&pattern.floatpattern;
-+        arrayf[SAMPLES+offsetfloat+3]     = *(float*)&pattern.floatpattern;
- 
-         // sanity tests
-         QCOMPARE(SAMPLES*2, SAMPLES * ISIZEOF(arrays1[0]));
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],pattern);
--        QCOMPARE(*(short*)&arrays2[offsetshort-4],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[offsetshort-3],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[offsetshort-2],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[offsetshort-1],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*(short*)&pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(short*)&arrays2[offsetshort-4],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[offsetshort-3],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[offsetshort-2],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[offsetshort-1],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*&pattern.shortpattern);
-         QCOMPARE(arrayf+4,&arrayf[4]);
-         QCOMPARE(arrays2+4,&arrays2[4]);
- 
-@@ -248,22 +254,22 @@ class TestAudioUtils: public QObject
-         int val2 = AudioOutputUtil::fromFloat(FORMAT_S16, arrays2+offsetshort, arrayf+offsetfloat, SAMPLES * ISIZEOF(float));
-         QCOMPARE(val2, SAMPLES * ISIZEOF(short));
- 
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],pattern);
--        QCOMPARE(*(short*)&arrays2[offsetshort-4],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[offsetshort-3],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[offsetshort-2],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[offsetshort-1],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*(short*)&pattern);
--        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*(short*)&pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+0],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SAMPLES+offsetfloat+3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(short*)&arrays2[offsetshort-4],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[offsetshort-3],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[offsetshort-2],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[offsetshort-1],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+0],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+1],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+2],*&pattern.shortpattern);
-+        QCOMPARE(*(short*)&arrays2[SAMPLES+offsetshort+3],*&pattern.shortpattern);
- 
-         av_free(arrays1);
-         av_free(arrays2);
-@@ -505,42 +511,48 @@ class TestAudioUtils: public QObject
-             arrays1[i] = j;
-         }
- 
--        uint32_t pattern        = 0xbcbcbcbc;
--        arrays2[offsetuchar-4]  = *(uchar*)&pattern;
--        arrays2[offsetuchar-3]  = *(uchar*)&pattern;
--        arrays2[offsetuchar-2]  = *(uchar*)&pattern;
--        arrays2[offsetuchar-1]  = *(uchar*)&pattern;
--        arrayf[offsetfloat-4]   = *(float*)&pattern;
--        arrayf[offsetfloat-3]   = *(float*)&pattern;
--        arrayf[offsetfloat-2]   = *(float*)&pattern;
--        arrayf[offsetfloat-1]   = *(float*)&pattern;
--        arrays2[SIZEARRAY+offsetuchar+0]    = *(uchar*)&pattern;
--        arrays2[SIZEARRAY+offsetuchar+1]    = *(uchar*)&pattern;
--        arrays2[SIZEARRAY+offsetuchar+2]    = *(uchar*)&pattern;
--        arrays2[SIZEARRAY+offsetuchar+3]    = *(uchar*)&pattern;
--        arrayf[SIZEARRAY+offsetfloat+0]     = *(float*)&pattern;
--        arrayf[SIZEARRAY+offsetfloat+1]     = *(float*)&pattern;
--        arrayf[SIZEARRAY+offsetfloat+2]     = *(float*)&pattern;
--        arrayf[SIZEARRAY+offsetfloat+3]     = *(float*)&pattern;
-+	const union
-+	{
-+	    uint32_t pattern;
-+	    uchar ucharpattern;
-+	    float floatpattern;
-+	} pattern = { .pattern = 0xbcbcbcbc };
-+
-+        arrays2[offsetuchar-4]  = *(uchar*)&pattern.ucharpattern;
-+        arrays2[offsetuchar-3]  = *(uchar*)&pattern.ucharpattern;
-+        arrays2[offsetuchar-2]  = *(uchar*)&pattern.ucharpattern;
-+        arrays2[offsetuchar-1]  = *(uchar*)&pattern.ucharpattern;
-+        arrayf[offsetfloat-4]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-3]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-2]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-1]   = *(float*)&pattern.floatpattern;
-+        arrays2[SIZEARRAY+offsetuchar+0]    = *(uchar*)&pattern.ucharpattern;
-+        arrays2[SIZEARRAY+offsetuchar+1]    = *(uchar*)&pattern.ucharpattern;
-+        arrays2[SIZEARRAY+offsetuchar+2]    = *(uchar*)&pattern.ucharpattern;
-+        arrays2[SIZEARRAY+offsetuchar+3]    = *(uchar*)&pattern.ucharpattern;
-+        arrayf[SIZEARRAY+offsetfloat+0]     = *(float*)&pattern.floatpattern;
-+        arrayf[SIZEARRAY+offsetfloat+1]     = *(float*)&pattern.floatpattern;
-+        arrayf[SIZEARRAY+offsetfloat+2]     = *(float*)&pattern.floatpattern;
-+        arrayf[SIZEARRAY+offsetfloat+3]     = *(float*)&pattern.floatpattern;
- 
-         // sanity tests
-         QCOMPARE(SIZEARRAY*1, SIZEARRAY * ISIZEOF(arrays1[0]));
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern);
--        QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern.ucharpattern);
-         QCOMPARE(arrayf+4,&arrayf[4]);
-         QCOMPARE(arrays2+4,&arrays2[4]);
- 
-@@ -549,22 +561,22 @@ class TestAudioUtils: public QObject
-         int val2 = AudioOutputUtil::fromFloat(FORMAT_U8, arrays2+offsetuchar, arrayf+offsetfloat, SIZEARRAY * ISIZEOF(float));
-         QCOMPARE(val2, SIZEARRAY * ISIZEOF(uchar));
- 
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern);
--        QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern);
--        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uchar*)&arrays2[offsetuchar-4],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[offsetuchar-3],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[offsetuchar-2],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[offsetuchar-1],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+0],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+1],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+2],*(uchar*)&pattern.ucharpattern);
-+        QCOMPARE(*(uchar*)&arrays2[SIZEARRAY+offsetuchar+3],*(uchar*)&pattern.ucharpattern);
- 
-         av_free(arrays1);
-         av_free(arrays2);
-@@ -686,42 +698,48 @@ class TestAudioUtils: public QObject
-             arrays1[i] = j;
-         }
- 
--        uint32_t pattern        = 0xbcbcbcbc;
--        arrays2[offsetint32_t-4]  = *(int32_t*)&pattern;
--        arrays2[offsetint32_t-3]  = *(int32_t*)&pattern;
--        arrays2[offsetint32_t-2]  = *(int32_t*)&pattern;
--        arrays2[offsetint32_t-1]  = *(int32_t*)&pattern;
--        arrayf[offsetfloat-4]   = *(float*)&pattern;
--        arrayf[offsetfloat-3]   = *(float*)&pattern;
--        arrayf[offsetfloat-2]   = *(float*)&pattern;
--        arrayf[offsetfloat-1]   = *(float*)&pattern;
--        arrays2[SIZEARRAY+offsetint32_t+0]    = *(int32_t*)&pattern;
--        arrays2[SIZEARRAY+offsetint32_t+1]    = *(int32_t*)&pattern;
--        arrays2[SIZEARRAY+offsetint32_t+2]    = *(int32_t*)&pattern;
--        arrays2[SIZEARRAY+offsetint32_t+3]    = *(int32_t*)&pattern;
--        arrayf[SIZEARRAY+offsetfloat+0]     = *(float*)&pattern;
--        arrayf[SIZEARRAY+offsetfloat+1]     = *(float*)&pattern;
--        arrayf[SIZEARRAY+offsetfloat+2]     = *(float*)&pattern;
--        arrayf[SIZEARRAY+offsetfloat+3]     = *(float*)&pattern;
-+	const union
-+	{
-+	    uint32_t pattern;
-+	    int32_t int32pattern;
-+	    float floatpattern;
-+	} pattern = { .pattern = 0xbcbcbcbc };
-+
-+        arrays2[offsetint32_t-4]  = *(int32_t*)&pattern.int32pattern;
-+        arrays2[offsetint32_t-3]  = *(int32_t*)&pattern.int32pattern;
-+        arrays2[offsetint32_t-2]  = *(int32_t*)&pattern.int32pattern;
-+        arrays2[offsetint32_t-1]  = *(int32_t*)&pattern.int32pattern;
-+        arrayf[offsetfloat-4]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-3]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-2]   = *(float*)&pattern.floatpattern;
-+        arrayf[offsetfloat-1]   = *(float*)&pattern.floatpattern;
-+        arrays2[SIZEARRAY+offsetint32_t+0]    = *(int32_t*)&pattern.int32pattern;
-+        arrays2[SIZEARRAY+offsetint32_t+1]    = *(int32_t*)&pattern.int32pattern;
-+        arrays2[SIZEARRAY+offsetint32_t+2]    = *(int32_t*)&pattern.int32pattern;
-+        arrays2[SIZEARRAY+offsetint32_t+3]    = *(int32_t*)&pattern.int32pattern;
-+        arrayf[SIZEARRAY+offsetfloat+0]     = *(float*)&pattern.floatpattern;
-+        arrayf[SIZEARRAY+offsetfloat+1]     = *(float*)&pattern.floatpattern;
-+        arrayf[SIZEARRAY+offsetfloat+2]     = *(float*)&pattern.floatpattern;
-+        arrayf[SIZEARRAY+offsetfloat+3]     = *(float*)&pattern.floatpattern;
- 
-         // sanity tests
-         QCOMPARE(SIZEARRAY*4, SIZEARRAY * ISIZEOF(arrays1[0]));
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern);
--        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern.int32pattern);
-         QCOMPARE(arrayf+4,&arrayf[4]);
-         QCOMPARE(arrays2+4,&arrays2[4]);
- 
-@@ -730,22 +748,22 @@ class TestAudioUtils: public QObject
-         int val2 = AudioOutputUtil::fromFloat(FORMAT_S32, arrays2+offsetint32_t, arrayf+offsetfloat, SIZEARRAY * ISIZEOF(float));
-         QCOMPARE(val2, SIZEARRAY * ISIZEOF(int32_t));
- 
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],pattern);
--        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],pattern);
--        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern);
--        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-4],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[offsetfloat-1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+0],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+1],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+2],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(uint32_t*)&arrayf[SIZEARRAY+offsetfloat+3],*(uint32_t*)&pattern.pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-4],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-3],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-2],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[offsetint32_t-1],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+0],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+1],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+2],*(int32_t*)&pattern.int32pattern);
-+        QCOMPARE(*(int32_t*)&arrays2[SIZEARRAY+offsetint32_t+3],*(int32_t*)&pattern.int32pattern);
- 
-         av_free(arrays1);
-         av_free(arrays2);

diff --git a/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild b/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild
index 820145e6537..4809398bba7 100644
--- a/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild
+++ b/media-tv/mythtv/mythtv-30.0_p20190808-r3.ebuild
@@ -16,7 +16,8 @@ MYTHTV_BRANCH="fixes/${P%.*}"
 
 DESCRIPTION="Open Source DVR and media center hub"
 HOMEPAGE="https://www.mythtv.org"
-SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/MythTV/mythtv/archive/${BACKPORTS}.tar.gz -> ${P}.tar.gz
+	https://dev.gentoo.org/~juippis/distfiles/tmp/mythtv-30.0_p20190808-cast_constants_to_short.patch"
 
 LICENSE="GPL-2+"
 KEYWORDS="~amd64 ~x86"
@@ -143,7 +144,7 @@ BDEPEND="virtual/pkgconfig"
 
 PATCHES=(
 	"${FILESDIR}/${P}-respect_LDFLAGS.patch"
-	"${FILESDIR}/${P}-cast_constants_to_short.patch"
+	"${DISTDIR}/${P}-cast_constants_to_short.patch"
 	"${FILESDIR}/${P}-Fix_Dereferencing_type-punned_pointer.patch"
 	"${FILESDIR}/${P}-Fix_unitialized_variables.patch"
 	"${FILESDIR}/${PN}-29.1-Fix_create_webbrowser_window.patch"


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2023-04-29  7:08 Sam James
  0 siblings, 0 replies; 13+ messages in thread
From: Sam James @ 2023-04-29  7:08 UTC (permalink / raw
  To: gentoo-commits

commit:     8e6ea2a32454b265ef68be83bbc28b5319061421
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 29 07:03:00 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Apr 29 07:08:35 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e6ea2a3

media-tv/mythtv: fix build w/ gcc 13

Closes: https://bugs.gentoo.org/899770
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-tv/mythtv/files/mythtv-32.0-gcc13.patch | 40 +++++++++++++++++++++++++++
 media-tv/mythtv/mythtv-32.0-r4.ebuild         |  1 +
 2 files changed, 41 insertions(+)

diff --git a/media-tv/mythtv/files/mythtv-32.0-gcc13.patch b/media-tv/mythtv/files/mythtv-32.0-gcc13.patch
new file mode 100644
index 000000000000..5d60da0c72b1
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-32.0-gcc13.patch
@@ -0,0 +1,40 @@
+https://bugs.gentoo.org/899770
+https://github.com/MythTV/mythtv/commit/3b76df2bb45789f075b6b83d6e6b436aebaf2e83
+
+From 3b76df2bb45789f075b6b83d6e6b436aebaf2e83 Mon Sep 17 00:00:00 2001
+From: David Hampton <mythtv@love2code.net>
+Date: Thu, 19 Jan 2023 14:52:28 -0500
+Subject: [PATCH] Assume existence of stdint.h in exiv2.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Based on this commit to exiv2.
+
+    Author: Luis Díaz Más <piponazo@gmail.com>
+    Date:   Wed Sep 16 21:40:05 2020 +0200
+
+        Assume existence of stdint.h
+--- a/external/libexiv2/xmpsdk/include/MD5.h
++++ b/external/libexiv2/xmpsdk/include/MD5.h
+@@ -25,18 +25,7 @@
+ 
+ #include <sys/types.h>
+ 
+-#ifdef _MSC_VER
+-//   _MSC_VER   1600 == Visual Studio 2010
+-# if _MSC_VER < 1600
+-#  ifdef  EXV_HAVE_STDINT_H
+-#   undef EXV_HAVE_STDINT_H
+-#  endif
+-# endif
+-#endif
+-
+-#if defined(EXV_HAVE_STDINT_H) || defined(__MINGW32__) || defined(__MING64__) || defined(__APPLE__)
+-# include <stdint.h>
+-#endif
++#include <cstdint>
+ 
+ /* MSVC doesn't provide C99 types, but it has MS specific variants */
+ #ifdef _MSC_VER
+

diff --git a/media-tv/mythtv/mythtv-32.0-r4.ebuild b/media-tv/mythtv/mythtv-32.0-r4.ebuild
index ce9af87d74fa..80e017be9774 100644
--- a/media-tv/mythtv/mythtv-32.0-r4.ebuild
+++ b/media-tv/mythtv/mythtv-32.0-r4.ebuild
@@ -152,6 +152,7 @@ python_check_deps() {
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-32.0-python-version.patch
+	"${FILESDIR}"/${PN}-32.0-gcc13.patch
 )
 
 DISABLE_AUTOFORMATTING="yes"


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2023-08-28 19:32 Sam James
  0 siblings, 0 replies; 13+ messages in thread
From: Sam James @ 2023-08-28 19:32 UTC (permalink / raw
  To: gentoo-commits

commit:     819e74a51b0bebd35d0fa4ba3009abfe0e05e362
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 28 19:31:56 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 28 19:32:21 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=819e74a5

media-tv/mythtv: fix build w/ binutils-2.41

Closes: https://bugs.gentoo.org/912708
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/mythtv-33.1-ffmpeg-binutils-2.41.patch   | 75 ++++++++++++++++++++++
 media-tv/mythtv/mythtv-33.1.ebuild                 |  1 +
 2 files changed, 76 insertions(+)

diff --git a/media-tv/mythtv/files/mythtv-33.1-ffmpeg-binutils-2.41.patch b/media-tv/mythtv/files/mythtv-33.1-ffmpeg-binutils-2.41.patch
new file mode 100644
index 000000000000..e976d8344a2d
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-33.1-ffmpeg-binutils-2.41.patch
@@ -0,0 +1,75 @@
+https://bugs.gentoo.org/912708
+https://bugs.gentoo.org/911582
+https://trac.ffmpeg.org/ticket/10405
+https://git.videolan.org/?p=ffmpeg.git;a=commit;h=25cd95a9dc3510c3cc0d7aad6f9d83f6a1078c7e
+https://sourceware.org/PR30578
+https://gcc.gnu.org/PR108941
+
+From 25cd95a9dc3510c3cc0d7aad6f9d83f6a1078c7e Mon Sep 17 00:00:00 2001
+From: =?utf8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
+Date: Sun, 16 Jul 2023 18:18:02 +0300
+Subject: [PATCH] avcodec/x86/mathops: clip constants used with shift
+ instructions within inline assembly
+
+Fixes assembling with binutil as >= 2.41
+
+Signed-off-by: James Almer <jamrial@gmail.com>
+(cherry picked from commit effadce6c756247ea8bae32dc13bb3e6f464f0eb)
+--- a/external/FFmpeg/libavcodec/x86/mathops.h
++++ b/external/FFmpeg/libavcodec/x86/mathops.h
+@@ -35,12 +35,20 @@
+ static av_always_inline av_const int MULL(int a, int b, unsigned shift)
+ {
+     int rt, dummy;
++    if (__builtin_constant_p(shift))
+     __asm__ (
+         "imull %3               \n\t"
+         "shrdl %4, %%edx, %%eax \n\t"
+         :"=a"(rt), "=d"(dummy)
+-        :"a"(a), "rm"(b), "ci"((uint8_t)shift)
++        :"a"(a), "rm"(b), "i"(shift & 0x1F)
+     );
++    else
++        __asm__ (
++            "imull %3               \n\t"
++            "shrdl %4, %%edx, %%eax \n\t"
++            :"=a"(rt), "=d"(dummy)
++            :"a"(a), "rm"(b), "c"((uint8_t)shift)
++        );
+     return rt;
+ }
+ 
+@@ -113,19 +121,31 @@ __asm__ volatile(\
+ // avoid +32 for shift optimization (gcc should do that ...)
+ #define NEG_SSR32 NEG_SSR32
+ static inline  int32_t NEG_SSR32( int32_t a, int8_t s){
++    if (__builtin_constant_p(s))
+     __asm__ ("sarl %1, %0\n\t"
+          : "+r" (a)
+-         : "ic" ((uint8_t)(-s))
++         : "i" (-s & 0x1F)
+     );
++    else
++        __asm__ ("sarl %1, %0\n\t"
++               : "+r" (a)
++               : "c" ((uint8_t)(-s))
++        );
+     return a;
+ }
+ 
+ #define NEG_USR32 NEG_USR32
+ static inline uint32_t NEG_USR32(uint32_t a, int8_t s){
++    if (__builtin_constant_p(s))
+     __asm__ ("shrl %1, %0\n\t"
+          : "+r" (a)
+-         : "ic" ((uint8_t)(-s))
++         : "i" (-s & 0x1F)
+     );
++    else
++        __asm__ ("shrl %1, %0\n\t"
++               : "+r" (a)
++               : "c" ((uint8_t)(-s))
++        );
+     return a;
+ }
+ 

diff --git a/media-tv/mythtv/mythtv-33.1.ebuild b/media-tv/mythtv/mythtv-33.1.ebuild
index 1f945c653588..9275d56d64ed 100644
--- a/media-tv/mythtv/mythtv-33.1.ebuild
+++ b/media-tv/mythtv/mythtv-33.1.ebuild
@@ -146,6 +146,7 @@ BDEPEND="
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-33.1-libva.patch
+	"${FILESDIR}"/${PN}-33.1-ffmpeg-binutils-2.41.patch
 )
 
 python_check_deps() {


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2023-09-27  2:40 Sam James
  0 siblings, 0 replies; 13+ messages in thread
From: Sam James @ 2023-09-27  2:40 UTC (permalink / raw
  To: gentoo-commits

commit:     50a6bc2362bac481d07400cf53037fd42f9969dc
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 27 02:37:40 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep 27 02:37:40 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=50a6bc23

media-tv/mythtv: fix build w/ linux-headers-6.5

And add the missing dep on linux-headers (which is how I didn't notice
the failure to begin with).

Closes: https://bugs.gentoo.org/913866
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/mythtv-33.1-linux-headers-6.5.patch      | 30 ++++++++++++++++++++++
 media-tv/mythtv/mythtv-33.1.ebuild                 |  2 ++
 2 files changed, 32 insertions(+)

diff --git a/media-tv/mythtv/files/mythtv-33.1-linux-headers-6.5.patch b/media-tv/mythtv/files/mythtv-33.1-linux-headers-6.5.patch
new file mode 100644
index 000000000000..0ead0d51d665
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-33.1-linux-headers-6.5.patch
@@ -0,0 +1,30 @@
+https://bugs.gentoo.org/913866
+https://github.com/MythTV/mythtv/issues/775
+https://github.com/MythTV/mythtv/commit/7d6c7d605f87b697c7488d1eb4a3246b83e31f01
+
+From 7d6c7d605f87b697c7488d1eb4a3246b83e31f01 Mon Sep 17 00:00:00 2001
+From: David Hampton <mythtv@love2code.net>
+Date: Fri, 21 Jul 2023 00:59:43 -0400
+Subject: [PATCH] Work around Linux kernel header 6.5 using C++ reserved
+ keyword.
+
+Starting with kernel 6.5.0, a rewrite of the linux/ioprio.h header
+file uses the C++ reserved keyword "class" as a variable name.
+Fortunately we can redefine the string "class" for the duration of the
+inclusion without any ill effects.
+--- a/libs/libmythbase/mythmiscutil.cpp
++++ b/libs/libmythbase/mythmiscutil.cpp
+@@ -702,7 +702,12 @@ void myth_yield(void)
+ #include <sys/ptrace.h>
+ #include <sys/syscall.h>
+ #if __has_include(<linux/ioprio.h>)
++// Starting with kernel 6.5.0, the following include uses the C++
++// reserved keyword "class" as a variable name. Fortunately we can
++// redefine it without any ill effects.
++#define class class2
+ #include <linux/ioprio.h>
++#undef class
+ #else
+ static constexpr int8_t IOPRIO_BITS        { 16 };
+ static constexpr int8_t IOPRIO_CLASS_SHIFT { 13 };
+

diff --git a/media-tv/mythtv/mythtv-33.1.ebuild b/media-tv/mythtv/mythtv-33.1.ebuild
index 9275d56d64ed..f8014ccf777f 100644
--- a/media-tv/mythtv/mythtv-33.1.ebuild
+++ b/media-tv/mythtv/mythtv-33.1.ebuild
@@ -117,6 +117,7 @@ RDEPEND="
 DEPEND="
 	${RDEPEND}
 	dev-lang/yasm
+	sys-kernel/linux-headers
 	x11-base/xorg-proto
 	perl? (
 		dev-perl/DBD-mysql
@@ -147,6 +148,7 @@ BDEPEND="
 PATCHES=(
 	"${FILESDIR}"/${PN}-33.1-libva.patch
 	"${FILESDIR}"/${PN}-33.1-ffmpeg-binutils-2.41.patch
+	"${FILESDIR}"/${PN}-33.1-linux-headers-6.5.patch
 )
 
 python_check_deps() {


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2024-01-09  7:22 Sam James
  0 siblings, 0 replies; 13+ messages in thread
From: Sam James @ 2024-01-09  7:22 UTC (permalink / raw
  To: gentoo-commits

commit:     f785d71faf63548afe5e2f6fb4ee03da1c686597
Author:     Eli Schwartz <eschwartz93 <AT> gmail <DOT> com>
AuthorDate: Mon Jan  8 21:08:35 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jan  9 07:22:21 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f785d71f

media-tv/mythtv: drop dependencies on future/simplejson

In particular, "future" is terribly unfortunate python2 stuff that
blocks bumping PYTHON_COMPAT to python3_12.

Fixed upstream in https://github.com/MythTV/mythtv/pull/838 and
backported here.

Closes: https://bugs.gentoo.org/888291
Signed-off-by: Eli Schwartz <eschwartz93 <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-tv/mythtv/files/mythtv-33.1-python3.12.patch | 279 +++++++++++++++
 media-tv/mythtv/mythtv-33.1-r1.ebuild              | 380 +++++++++++++++++++++
 2 files changed, 659 insertions(+)

diff --git a/media-tv/mythtv/files/mythtv-33.1-python3.12.patch b/media-tv/mythtv/files/mythtv-33.1-python3.12.patch
new file mode 100644
index 000000000000..48a97b09623d
--- /dev/null
+++ b/media-tv/mythtv/files/mythtv-33.1-python3.12.patch
@@ -0,0 +1,279 @@
+From f1848eb41bf35d57b63b3a8cb19763c5b4656717 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz93@gmail.com>
+Date: Thu, 4 Jan 2024 16:18:00 -0500
+Subject: [PATCH 1/2] hardwareprofile: remove external dependency on simplejson
+
+This uses the requests module and converts requests responses to json
+using requests' own `.json()` method on responses. For incomprehensible
+reasons, requests has spent about a decade using either simplejson or
+the standard library's json module more or less at will, and returning
+either one or the other exception types. They don't know why they use
+simplejson, we don't know why they use simplejson. In requests 3 (which
+will be released in the Year Of The Linux Desktop or when pigs fly,
+whichever one comes later) simplejson is dropped entirely.
+
+There are innumerable issues discussing the problem on the requests
+bugtracker, with the general consensus being that it's better to
+randomly return either one of two different libraries and two different
+library return types in errors -- because it was historically done that
+way and people might be depending on it. ??????
+
+Bugs:
+
+https://github.com/psf/requests/pull/710
+https://github.com/psf/requests/pull/2516
+https://github.com/psf/requests/issues/3052
+https://github.com/psf/requests/issues/4169
+https://github.com/psf/requests/issues/4842
+https://github.com/psf/requests/issues/5794
+https://github.com/psf/requests/issues/6084
+
+The awkward workaround is to guarantee that requests' silent behavior of
+using simplejson *if it is installed* is forcibly triggered by forcibly
+depending on simplejson, and then catching the simplejson exception.
+
+The better solution here is pretty simple: do not rely on the requests
+module's automatic json conversion, this is as simple as using the
+already-imported json module and calling json.loads() on the retrieved
+content.
+
+Fixes: 1df343e9ab7defa284a73390210a65cf2112f17e
+Reimplements: bb154a843b737cc3ad8c1a45fa04a1a3609aff05
+(cherry picked from commit 6348dc01a45af6ed63c09326ec94cd425db1d6d7)
+---
+ .github/workflows/buildmaster.yml                | 2 +-
+ mythtv/configure                                 | 1 -
+ mythtv/programs/scripts/hardwareprofile/smolt.py | 5 ++---
+ 3 files changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/.github/workflows/buildmaster.yml b/.github/workflows/buildmaster.yml
+index eea6e9fc2a..325cc7da64 100644
+--- a/.github/workflows/buildmaster.yml
++++ b/.github/workflows/buildmaster.yml
+@@ -48,7 +48,7 @@ jobs:
+         sudo apt install ccache qt5-qmake qtscript5-dev nasm libsystemd-dev libfreetype6-dev libmp3lame-dev libx264-dev libx265-dev libxrandr-dev libxml2-dev
+         sudo apt install libavahi-compat-libdnssd-dev libasound2-dev liblzo2-dev libhdhomerun-dev libsamplerate0-dev libva-dev libdrm-dev libvdpau-dev
+         sudo apt install libass-dev libpulse-dev libcec-dev libssl-dev libtag1-dev libbluray-dev libbluray-bdj libgnutls28-dev libqt5webkit5-dev
+-        sudo apt install libvpx-dev python3-mysqldb python3-lxml python3-simplejson python3-future python3-setuptools libdbi-perl libdbd-mysql-perl libnet-upnp-perl
++        sudo apt install libvpx-dev python3-mysqldb python3-lxml python3-future python3-setuptools libdbi-perl libdbd-mysql-perl libnet-upnp-perl
+         sudo apt install libio-socket-inet6-perl libxml-simple-perl libqt5sql5-mysql libwayland-dev qtbase5-private-dev libzip-dev libsoundtouch-dev
+       if: runner.os == 'Linux'
+ 
+diff --git a/mythtv/configure b/mythtv/configure
+index 7e966ef817..3429c208e2 100755
+--- a/mythtv/configure
++++ b/mythtv/configure
+@@ -6555,7 +6555,6 @@ if enabled bindings_python; then
+     check_py_lib MySQLdb       || disable_bindings_python "MySQLdb"
+     check_py_lib lxml          || disable_bindings_python "lxml"
+     check_py_lib requests      || disable_bindings_python "requests"
+-    check_py_lib simplejson    || disable_bindings_python "simplejson"
+     check_py_lib future        || disable_bindings_python "future"
+ fi
+ 
+diff --git a/mythtv/programs/scripts/hardwareprofile/smolt.py b/mythtv/programs/scripts/hardwareprofile/smolt.py
+index 1bcc8060d0..464f068d6f 100644
+--- a/mythtv/programs/scripts/hardwareprofile/smolt.py
++++ b/mythtv/programs/scripts/hardwareprofile/smolt.py
+@@ -50,7 +50,6 @@ except ImportError:
+     from urlparse import urlparse
+ import json
+ from json import JSONEncoder
+-from simplejson import errors as sje
+ import datetime
+ import logging
+ 
+@@ -790,8 +789,8 @@ class _HardwareProfile:
+                 sys.exit(1)
+ 
+             try:
+-                admin_obj = admin_token.json()
+-            except sje.JSONDecodeError:
++                admin_obj = json.loads(admin_token.content)
++            except json.JSONDecodeError:
+                 self.session.close()
+                 error(_('Incorrect server response. Expected a JSON string'))
+                 return (1, None, None)
+-- 
+2.41.0
+
+
+From 13f65c0015d3e0d82d01a1dd5c15afe0ff1e8029 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz93@gmail.com>
+Date: Wed, 13 Dec 2023 23:11:11 -0500
+Subject: [PATCH 2/2] hardwareprofile: remove ancient "future" compatibility
+ library for python2
+
+Ironically, for a package that was intended to provide portability
+between python2 and python3, it is broken with python 3.12. A better
+library to use in all cases is "six".
+
+However, mythtv requires python 3.8 for a while now. Using
+"future.standard_library" is a no-op other than costing a pointless
+import and being troublesome to actually install.
+
+The hacky copy of six.with_metaclass included in "future" is rewritten
+to use the pure python3 form of a metaclass.
+
+(cherry picked from commit 4a1ea331bb2b106e7ae7e7e9bb7970f71b8a84b3)
+---
+ mythtv/configure                                          | 1 -
+ .../scripts/hardwareprofile/MultipartPostHandler.py       | 2 --
+ .../hardwareprofile/distros/mythtv_data/request.py        | 2 --
+ .../scripts/hardwareprofile/distros/mythtv_data/uuiddb.py | 2 --
+ mythtv/programs/scripts/hardwareprofile/hwdata.py         | 8 +++-----
+ mythtv/programs/scripts/hardwareprofile/os_detect.py      | 5 ++---
+ mythtv/programs/scripts/hardwareprofile/request.py        | 2 --
+ mythtv/programs/scripts/hardwareprofile/scan.py           | 2 --
+ mythtv/programs/scripts/hardwareprofile/uuiddb.py         | 2 --
+ 9 files changed, 5 insertions(+), 21 deletions(-)
+
+diff --git a/mythtv/configure b/mythtv/configure
+index 3429c208e2..4bfbbd8c64 100755
+--- a/mythtv/configure
++++ b/mythtv/configure
+@@ -6555,7 +6555,6 @@ if enabled bindings_python; then
+     check_py_lib MySQLdb       || disable_bindings_python "MySQLdb"
+     check_py_lib lxml          || disable_bindings_python "lxml"
+     check_py_lib requests      || disable_bindings_python "requests"
+-    check_py_lib future        || disable_bindings_python "future"
+ fi
+ 
+ # Check for perl dependencies
+diff --git a/mythtv/programs/scripts/hardwareprofile/MultipartPostHandler.py b/mythtv/programs/scripts/hardwareprofile/MultipartPostHandler.py
+index 51619096b8..6ff2443d2e 100644
+--- a/mythtv/programs/scripts/hardwareprofile/MultipartPostHandler.py
++++ b/mythtv/programs/scripts/hardwareprofile/MultipartPostHandler.py
+@@ -41,8 +41,6 @@ Further Example:
+ """
+ from __future__ import print_function
+ 
+-from future import standard_library
+-standard_library.install_aliases()
+ from builtins import object
+ from email.generator import _make_boundary
+ import mimetypes
+diff --git a/mythtv/programs/scripts/hardwareprofile/distros/mythtv_data/request.py b/mythtv/programs/scripts/hardwareprofile/distros/mythtv_data/request.py
+index 2ae4fd3fdd..81362ba8b7 100644
+--- a/mythtv/programs/scripts/hardwareprofile/distros/mythtv_data/request.py
++++ b/mythtv/programs/scripts/hardwareprofile/distros/mythtv_data/request.py
+@@ -21,8 +21,6 @@
+ # providing the base url, user agent, and proxy information.
+ # The object returned is slightly modified, with a shortcut to urlopen.
+ 
+-from future import standard_library
+-standard_library.install_aliases()
+ from builtins import object
+ import urllib.request, urllib.error, urllib.parse
+ import urllib.parse
+diff --git a/mythtv/programs/scripts/hardwareprofile/distros/mythtv_data/uuiddb.py b/mythtv/programs/scripts/hardwareprofile/distros/mythtv_data/uuiddb.py
+index 6960f8705a..9d22556c04 100644
+--- a/mythtv/programs/scripts/hardwareprofile/distros/mythtv_data/uuiddb.py
++++ b/mythtv/programs/scripts/hardwareprofile/distros/mythtv_data/uuiddb.py
+@@ -16,8 +16,6 @@
+ # along with this program; if not, write to the Free Software
+ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+ 
+-from future import standard_library
+-standard_library.install_aliases()
+ from builtins import map
+ from builtins import str
+ from builtins import object
+diff --git a/mythtv/programs/scripts/hardwareprofile/hwdata.py b/mythtv/programs/scripts/hardwareprofile/hwdata.py
+index ba297bf24f..0770d32b96 100644
+--- a/mythtv/programs/scripts/hardwareprofile/hwdata.py
++++ b/mythtv/programs/scripts/hardwareprofile/hwdata.py
+@@ -25,8 +25,6 @@ from __future__ import division
+ from __future__ import absolute_import
+ from builtins import int
+ from builtins import open
+-from future import standard_library
+-standard_library.install_aliases()
+ from builtins import object
+ from smolt_config import get_config_attr
+ 
+@@ -71,9 +69,9 @@ class DeviceMap(object):
+                     pass
+         else:
+             raise Exception('Hardware data file not found.  Please set the location HWDATA_DIR in config.py')
+-         
+-            
+-            
++
++
++
+         vendors = {}
+         curvendor = None
+         curdevice = None
+diff --git a/mythtv/programs/scripts/hardwareprofile/os_detect.py b/mythtv/programs/scripts/hardwareprofile/os_detect.py
+index 7d0edee00e..beabf7d865 100644
+--- a/mythtv/programs/scripts/hardwareprofile/os_detect.py
++++ b/mythtv/programs/scripts/hardwareprofile/os_detect.py
+@@ -26,7 +26,6 @@
+ from __future__ import print_function
+ from builtins import object
+ import os
+-from future.utils import with_metaclass
+ 
+ class OrderedType( type ):
+     # provide global sequencing for OS class and subclasses to ensure
+@@ -37,7 +36,7 @@ class OrderedType( type ):
+         mcs.nextorder += 1
+         return type.__new__(mcs, name, bases, attrs)
+ 
+-class OS( with_metaclass(OrderedType, object) ):
++class OS(metaclass=OrderedType):
+     _requires_func = True
+     def __init__(self, ostype=-1, func=None, inst=None):
+         if callable(ostype):
+@@ -189,7 +188,7 @@ class OSInfoType( type ):
+             # fall through to Unknown
+             return 'Unknown'
+ 
+-class get_os_info( with_metaclass(OSInfoType, object) ):
++class get_os_info(metaclass=OSInfoType):
+     @OS('nt')
+     def windows(self):
+         win_version = {
+diff --git a/mythtv/programs/scripts/hardwareprofile/request.py b/mythtv/programs/scripts/hardwareprofile/request.py
+index 6e6a20b9e7..d6668cef3d 100644
+--- a/mythtv/programs/scripts/hardwareprofile/request.py
++++ b/mythtv/programs/scripts/hardwareprofile/request.py
+@@ -21,8 +21,6 @@
+ # providing the base url, user agent, and proxy information.
+ # The object returned is slightly modified, with a shortcut to urlopen.
+ 
+-from future import standard_library
+-standard_library.install_aliases()
+ from builtins import object
+ 
+ try:
+diff --git a/mythtv/programs/scripts/hardwareprofile/scan.py b/mythtv/programs/scripts/hardwareprofile/scan.py
+index 1389400ece..d100bfe692 100644
+--- a/mythtv/programs/scripts/hardwareprofile/scan.py
++++ b/mythtv/programs/scripts/hardwareprofile/scan.py
+@@ -18,8 +18,6 @@
+ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+ 
+ from __future__ import print_function
+-from future import standard_library
+-standard_library.install_aliases()
+ import smolt
+ import json
+ 
+diff --git a/mythtv/programs/scripts/hardwareprofile/uuiddb.py b/mythtv/programs/scripts/hardwareprofile/uuiddb.py
+index e7ba3891ec..3c2fc16d86 100644
+--- a/mythtv/programs/scripts/hardwareprofile/uuiddb.py
++++ b/mythtv/programs/scripts/hardwareprofile/uuiddb.py
+@@ -16,8 +16,6 @@
+ # along with this program; if not, write to the Free Software
+ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
+ 
+-from future import standard_library
+-standard_library.install_aliases()
+ from builtins import object
+ import configparser
+ import logging
+-- 
+2.41.0
+

diff --git a/media-tv/mythtv/mythtv-33.1-r1.ebuild b/media-tv/mythtv/mythtv-33.1-r1.ebuild
new file mode 100644
index 000000000000..344b691045d3
--- /dev/null
+++ b/media-tv/mythtv/mythtv-33.1-r1.ebuild
@@ -0,0 +1,380 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISABLE_AUTOFORMATTING="yes"
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit edo flag-o-matic java-pkg-opt-2 java-ant-2 python-any-r1
+inherit qmake-utils readme.gentoo-r1 systemd toolchain-funcs user-info
+
+DESCRIPTION="Open Source DVR and media center hub"
+HOMEPAGE="https://www.mythtv.org https://github.com/MythTV/mythtv"
+if [[ ${PV} == *_p* ]] ; then
+	MY_COMMIT="5824c588db24b4e71a7d94e829e6419f71089297"
+	SRC_URI="https://github.com/MythTV/mythtv/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+	# mythtv and mythplugins are separate builds in the github MythTV project
+	S="${WORKDIR}/mythtv-${MY_COMMIT}/mythtv"
+else
+	SRC_URI="https://github.com/MythTV/mythtv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+	# mythtv and mythplugins are separate builds in the github mythtv project
+	S="${WORKDIR}/${P}/mythtv"
+fi
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE_INPUT_DEVICES="input_devices_joystick"
+IUSE_VIDEO_CAPTURE_DEVICES="v4l ieee1394 hdhomerun vbox ceton"
+IUSE="alsa asi autostart cdda cdr cec cpu_flags_ppc_altivec debug dvd dvb exif fftw jack java"
+IUSE+=" +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python raw systemd vaapi vdpau vpx"
+IUSE+=" +wrapper x264 x265 +xml xmltv +xvid +X zeroconf"
+IUSE+=" ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
+REQUIRED_USE="
+	cdr? ( cdda )
+"
+
+RDEPEND="
+	acct-user/mythtv
+	dev-libs/glib:2
+	dev-libs/lzo
+	dev-libs/libzip:=
+	dev-qt/qtcore:5
+	dev-qt/qtdbus:5
+	dev-qt/qtgui:5[jpeg]
+	dev-qt/qtnetwork:5
+	dev-qt/qtscript:5
+	dev-qt/qtsql:5[mysql]
+	dev-qt/qtwidgets:5
+	dev-qt/qtxml:5
+	media-fonts/corefonts
+	media-fonts/dejavu
+	media-fonts/liberation-fonts
+	media-fonts/tex-gyre
+	media-gfx/exiv2:=
+	media-libs/freetype:2
+	media-libs/libbluray:=[java?]
+	media-libs/libsamplerate
+	media-libs/libsoundtouch
+	media-libs/taglib
+	sys-libs/zlib
+	alsa? ( media-libs/alsa-lib )
+	autostart? (
+		net-dialup/mingetty
+		x11-apps/xset
+		x11-wm/evilwm
+	)
+	cec? ( dev-libs/libcec )
+	dvd? (
+		dev-libs/libcdio:=
+		media-libs/libdvdcss
+		sys-fs/udisks:2
+	)
+	fftw? ( sci-libs/fftw:3.0=[threads] )
+	hdhomerun? ( media-libs/libhdhomerun )
+	ieee1394? (
+		media-libs/libiec61883
+		sys-libs/libavc1394
+		sys-libs/libraw1394
+	)
+	jack? ( virtual/jack )
+	lame? ( media-sound/lame )
+	lcd? ( app-misc/lcdproc )
+	libass? ( media-libs/libass:= )
+	lirc? ( app-misc/lirc )
+	nvdec? ( x11-drivers/nvidia-drivers )
+	opengl? ( dev-qt/qtopengl:5 )
+	pulseaudio? ( media-libs/libpulse )
+	systemd? ( sys-apps/systemd:= )
+	vaapi? ( media-libs/libva:= )
+	vdpau? ( x11-libs/libvdpau )
+	vpx? ( media-libs/libvpx:= )
+	x264? (	media-libs/x264:= )
+	X? (
+		x11-apps/xinit
+		x11-libs/libX11:=
+		x11-libs/libXext:=
+		x11-libs/libXinerama:=
+		x11-libs/libXrandr:=
+		x11-libs/libXv:=
+		x11-libs/libXxf86vm:=
+		x11-misc/wmctrl:=
+	)
+	x265? (	media-libs/x265 )
+	xml? ( dev-libs/libxml2:2 )
+	xmltv? (
+		dev-perl/XML-LibXML
+		media-tv/xmltv
+	 )
+	xvid? ( media-libs/xvid )
+	zeroconf? (
+		dev-libs/openssl:=
+		net-dns/avahi[mdnsresponder-compat]
+	)
+"
+DEPEND="
+	${RDEPEND}
+	dev-lang/yasm
+	sys-kernel/linux-headers
+	x11-base/xorg-proto
+	perl? (
+		dev-perl/DBD-mysql
+		dev-perl/DBI
+		dev-perl/HTTP-Message
+		dev-perl/IO-Socket-INET6
+		dev-perl/LWP-Protocol-https
+		dev-perl/Net-UPnP
+		dev-perl/XML-Simple
+	)
+"
+BDEPEND="
+	virtual/pkgconfig
+	opengl? ( virtual/opengl )
+	python? (
+		${PYTHON_DEPS}
+		$(python_gen_any_dep '
+			dev-python/python-dateutil[${PYTHON_USEDEP}]
+			dev-python/lxml[${PYTHON_USEDEP}]
+			dev-python/mysqlclient[${PYTHON_USEDEP}]
+			dev-python/requests-cache[${PYTHON_USEDEP}]
+		')
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-33.1-libva.patch
+	"${FILESDIR}"/${PN}-33.1-ffmpeg-binutils-2.41.patch
+	"${FILESDIR}"/${PN}-33.1-linux-headers-6.5.patch
+	# https://github.com/MythTV/mythtv/pull/824
+	# https://github.com/MythTV/mythtv/pull/838
+	# https://bugs.gentoo.org/888291
+	"${FILESDIR}"/${PN}-33.1-python3.12.patch
+)
+
+python_check_deps() {
+	use python || return 0
+	python_has_version "dev-python/python-dateutil[${PYTHON_USEDEP}]" &&
+	python_has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
+	python_has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
+	python_has_version "dev-python/requests-cache[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+	use python && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+	default
+
+	# Perl bits need to go into vendor_perl and not site_perl
+	sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
+		-i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
+
+}
+
+src_configure() {
+	local -a myconf=()
+
+	# Setup paths
+	myconf+=( --prefix="${EPREFIX}"/usr )
+	myconf+=( --libdir="${EPREFIX}"/usr/$(get_libdir) )
+	myconf+=( --libdir-name=$(get_libdir) )
+	myconf+=( --mandir="${EPREFIX}"/usr/share/man )
+
+	if use debug; then
+		myconf+=( --compile-type=debug )
+		myconf+=( --disable-stripping ) # FIXME: does not disable for all files, only for some
+		myconf+=( --enable-valgrind ) # disables timeouts for valgrind memory debugging
+	else
+		myconf+=( --compile-type=release )
+	fi
+
+	# Build boosters
+	has ccache "${FEATURES}" || myconf+=( --disable-ccache )
+	has distcc "${FEATURES}" || myconf+=( --disable-distcc )
+
+	# CPU settings
+	# Mythtv's configure is borrowed from ffmpeg,
+	# Bug #172723
+	# Try to get cpu type based on CFLAGS.
+	# We need to do this so that features of that CPU will be better used
+	# If they contain an unknown CPU it will not hurt since ffmpeg's configure
+	# will just ignore it.
+	local i
+	for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+		[[ "${i}" == "native" ]] && i="host" # bug #273421
+		myconf+=( --cpu="${i}" )
+		break
+	done
+	myconf+=( $(use_enable cpu_flags_ppc_altivec altivec) )
+
+	# Sound Output Support
+	myconf+=(
+		$(use_enable oss audio-oss)
+
+		$(use_enable alsa audio-alsa)
+		$(use_enable jack audio-jack)
+		$(use_enable pulseaudio audio-pulseoutput)
+	)
+
+	# Input Support
+	myconf+=(
+		$(use_enable lirc)
+		$(use_enable input_devices_joystick joystick-menu)
+		$(use_enable cec libcec)
+		$(use_enable ieee1394 firewire)
+		$(use_enable hdhomerun)
+		$(use_enable vbox)
+		$(use_enable ceton)
+		$(use_enable v4l v4l2)
+		$(use_enable dvb)
+		$(use_enable asi)
+	)
+
+	# Video Output Support
+	myconf+=(
+		$(use_enable X x11)
+	)
+
+	# Hardware accelerators
+	myconf+=(
+		$(use_enable nvdec)
+		$(use_enable vaapi)
+		$(use_enable vdpau)
+		$(use_enable opengl)
+		$(use_enable opengl egl)
+		$(use_enable libass)
+	)
+
+	# System tools
+	myconf+=(
+		$(use_enable systemd systemd_notify)
+		$(use_enable systemd systemd_journal)
+		$(use_enable xml libxml2)
+		$(use_enable zeroconf libdns-sd)
+	)
+
+	# Bindings
+	if use perl && use python; then
+		myconf+=( --with-bindings=perl,python )
+	elif use perl; then
+		myconf+=( --without-bindings=python )
+		myconf+=( --with-bindings=perl )
+	elif use python; then
+		myconf+=( --without-bindings=perl )
+		myconf+=( --with-bindings=python )
+	else
+		myconf+=( --without-bindings=perl,python )
+	fi
+	use python && myconf+=( --python="${EPYTHON}" )
+	myconf+=( $(use_enable java bdjava) )
+
+	# External codec library options (used for mythffmpeg and streaming transcode)
+	# lame is required for some broadcasts for silence detection of commercials
+	# default enable in IUSE with +lame
+	myconf+=(
+		$(use_enable lame libmp3lame)
+		$(use_enable xvid libxvid)
+		$(use_enable x264 libx264)
+		$(use_enable x265 libx265)
+		$(use_enable vpx libvpx)
+	)
+
+	# Clean up DSO load times and other compiler bits
+	myconf+=( --enable-symbol-visibility )
+	myconf+=( --enable-pic )
+
+	if tc-is-cross-compiler ; then
+		myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) )
+		myconf+=( --cross-prefix="${CHOST}"- )
+	fi
+
+	# econf sets these options that are not handled by configure:
+	# --build --host --infodir --localstatedir --sysconfdir
+
+	edo ./configure \
+		--prefix="${EPREFIX}/usr" \
+		--cc="$(tc-getCC)" \
+		--cxx="$(tc-getCXX)" \
+		--ar="$(tc-getAR)" \
+		--optflags="${CFLAGS}" \
+		--extra-cflags="${CFLAGS}" \
+		--extra-cxxflags="${CXXFLAGS}" \
+		--extra-ldflags="${LDFLAGS}" \
+		--qmake="$(qt5_get_bindir)"/qmake \
+		"${myconf[@]}"
+}
+
+src_install() {
+	emake STRIP="true" INSTALL_ROOT="${D}" install
+	use python && python_optimize  # does all packages by default
+	dodoc AUTHORS README
+	readme.gentoo_create_doc
+
+	insinto /usr/share/mythtv/database
+	doins database/*
+
+	newinitd "${FILESDIR}"/mythbackend.init-r3 mythbackend
+	newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
+	if use systemd; then
+		systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
+	fi
+
+	# The acct-user/mythtv package creates/manages the user 'mythtv'
+	keepdir /etc/mythtv
+	fowners -R mythtv /etc/mythtv
+	keepdir /var/log/mythtv
+	fowners -R mythtv /var/log/mythtv
+
+	insinto /etc/logrotate.d
+	newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
+
+	insinto /usr/share/mythtv/contrib
+	# Ensure we don't install scripts needing the perl bindings (bug #516968) Finding none is OK.
+	if ! use perl; then
+		find contrib/ -name '*.pl' -exec rm {} \;
+	fi
+	# Ensure we don't install scripts needing the python bindings (bug #516968) Finding none is OK.
+	if ! use python; then
+		find contrib/ -name '*.py' -exec rm {} \;
+	fi
+	doins -r contrib/*
+
+	# Install our mythfrontend wrapper which is similar to Mythbuntu's
+	if use wrapper; then
+		mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
+		newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
+		newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
+	fi
+
+	if use autostart; then
+		newenvd - 95mythtv <<- _EOF_
+			CONFIG_PROTECT=\"$(egethome mythtv)\"
+		_EOF_
+		insinto $(egethome mythtv)
+		newins "${FILESDIR}"/bash_profile .bash_profile
+		newins "${FILESDIR}"/xinitrc-r1 .xinitrc
+	fi
+
+	# Make Python files executable but not files named "__init__.py"
+	find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
+		-exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
+
+	# Ensure that Python scripts are executed by Python 2
+	use python && python_fix_shebang "${ED}/usr/share/mythtv"
+
+	# Make shell & perl scripts executable
+	find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; || die "Failed to make script executable"
+}
+
+pkg_postinst() {
+	readme.gentoo_print_elog
+}
+
+pkg_config() {
+	if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
+		"${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
+	fi
+}


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/
@ 2024-01-11 12:03 Sam James
  0 siblings, 0 replies; 13+ messages in thread
From: Sam James @ 2024-01-11 12:03 UTC (permalink / raw
  To: gentoo-commits

commit:     ecc8eaf12dc554f02cdf1a7a4e1a7435f88f311d
Author:     Eli Schwartz <eschwartz93 <AT> gmail <DOT> com>
AuthorDate: Wed Jan 10 22:54:26 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jan 11 12:02:27 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecc8eaf1

media-tv/mythtv: fix broken patch

Recreate patch to work when applied with -p2, since ${S} is not the
tarball root.

Fixes: f785d71faf63548afe5e2f6fb4ee03da1c686597
Closes: https://bugs.gentoo.org/921694
Signed-off-by: Eli Schwartz <eschwartz93 <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-tv/mythtv/files/mythtv-33.1-python3.12.patch | 20 +++-----------------
 media-tv/mythtv/mythtv-33.1-r1.ebuild              |  9 +++++----
 2 files changed, 8 insertions(+), 21 deletions(-)

diff --git a/media-tv/mythtv/files/mythtv-33.1-python3.12.patch b/media-tv/mythtv/files/mythtv-33.1-python3.12.patch
index 48a97b09623d..91f72ab13ac3 100644
--- a/media-tv/mythtv/files/mythtv-33.1-python3.12.patch
+++ b/media-tv/mythtv/files/mythtv-33.1-python3.12.patch
@@ -1,4 +1,4 @@
-From f1848eb41bf35d57b63b3a8cb19763c5b4656717 Mon Sep 17 00:00:00 2001
+From ea59f869dcbd73b1d0dca973314604f689b50c34 Mon Sep 17 00:00:00 2001
 From: Eli Schwartz <eschwartz93@gmail.com>
 Date: Thu, 4 Jan 2024 16:18:00 -0500
 Subject: [PATCH 1/2] hardwareprofile: remove external dependency on simplejson
@@ -41,24 +41,10 @@ Fixes: 1df343e9ab7defa284a73390210a65cf2112f17e
 Reimplements: bb154a843b737cc3ad8c1a45fa04a1a3609aff05
 (cherry picked from commit 6348dc01a45af6ed63c09326ec94cd425db1d6d7)
 ---
- .github/workflows/buildmaster.yml                | 2 +-
  mythtv/configure                                 | 1 -
  mythtv/programs/scripts/hardwareprofile/smolt.py | 5 ++---
- 3 files changed, 3 insertions(+), 5 deletions(-)
+ 2 files changed, 2 insertions(+), 4 deletions(-)
 
-diff --git a/.github/workflows/buildmaster.yml b/.github/workflows/buildmaster.yml
-index eea6e9fc2a..325cc7da64 100644
---- a/.github/workflows/buildmaster.yml
-+++ b/.github/workflows/buildmaster.yml
-@@ -48,7 +48,7 @@ jobs:
-         sudo apt install ccache qt5-qmake qtscript5-dev nasm libsystemd-dev libfreetype6-dev libmp3lame-dev libx264-dev libx265-dev libxrandr-dev libxml2-dev
-         sudo apt install libavahi-compat-libdnssd-dev libasound2-dev liblzo2-dev libhdhomerun-dev libsamplerate0-dev libva-dev libdrm-dev libvdpau-dev
-         sudo apt install libass-dev libpulse-dev libcec-dev libssl-dev libtag1-dev libbluray-dev libbluray-bdj libgnutls28-dev libqt5webkit5-dev
--        sudo apt install libvpx-dev python3-mysqldb python3-lxml python3-simplejson python3-future python3-setuptools libdbi-perl libdbd-mysql-perl libnet-upnp-perl
-+        sudo apt install libvpx-dev python3-mysqldb python3-lxml python3-future python3-setuptools libdbi-perl libdbd-mysql-perl libnet-upnp-perl
-         sudo apt install libio-socket-inet6-perl libxml-simple-perl libqt5sql5-mysql libwayland-dev qtbase5-private-dev libzip-dev libsoundtouch-dev
-       if: runner.os == 'Linux'
- 
 diff --git a/mythtv/configure b/mythtv/configure
 index 7e966ef817..3429c208e2 100755
 --- a/mythtv/configure
@@ -98,7 +84,7 @@ index 1bcc8060d0..464f068d6f 100644
 2.41.0
 
 
-From 13f65c0015d3e0d82d01a1dd5c15afe0ff1e8029 Mon Sep 17 00:00:00 2001
+From 7c1dbe7a86dc9b445a1a491f5a849b0eba21aead Mon Sep 17 00:00:00 2001
 From: Eli Schwartz <eschwartz93@gmail.com>
 Date: Wed, 13 Dec 2023 23:11:11 -0500
 Subject: [PATCH 2/2] hardwareprofile: remove ancient "future" compatibility

diff --git a/media-tv/mythtv/mythtv-33.1-r1.ebuild b/media-tv/mythtv/mythtv-33.1-r1.ebuild
index 344b691045d3..d0d9cd8758c6 100644
--- a/media-tv/mythtv/mythtv-33.1-r1.ebuild
+++ b/media-tv/mythtv/mythtv-33.1-r1.ebuild
@@ -147,10 +147,6 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-33.1-libva.patch
 	"${FILESDIR}"/${PN}-33.1-ffmpeg-binutils-2.41.patch
 	"${FILESDIR}"/${PN}-33.1-linux-headers-6.5.patch
-	# https://github.com/MythTV/mythtv/pull/824
-	# https://github.com/MythTV/mythtv/pull/838
-	# https://bugs.gentoo.org/888291
-	"${FILESDIR}"/${PN}-33.1-python3.12.patch
 )
 
 python_check_deps() {
@@ -167,6 +163,11 @@ pkg_setup() {
 
 src_prepare() {
 	default
+	# https://github.com/MythTV/mythtv/pull/824
+	# https://github.com/MythTV/mythtv/pull/838
+	# https://bugs.gentoo.org/888291
+	eapply -p2 "${FILESDIR}"/${PN}-33.1-python3.12.patch
+
 
 	# Perl bits need to go into vendor_perl and not site_perl
 	sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \


^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2024-01-11 12:04 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-12 23:19 [gentoo-commits] repo/gentoo:master commit in: media-tv/mythtv/files/, media-tv/mythtv/ Michael Palimaka
  -- strict thread matches above, loose matches on Subject: below --
2024-01-11 12:03 Sam James
2024-01-09  7:22 Sam James
2023-09-27  2:40 Sam James
2023-08-28 19:32 Sam James
2023-04-29  7:08 Sam James
2020-11-15 15:31 Joonas Niilola
2019-09-20 16:18 Joonas Niilola
2019-08-14 11:15 Andreas Sturmlechner
2017-10-20 21:39 Andreas Hüttel
2016-04-16 12:11 Richard Freeman
2015-09-14 14:20 Doug Goldstein
2015-09-06  3:25 Doug Goldstein

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox