mythtv patch updated for Raspberry Pi

This commit is contained in:
2018-09-12 07:53:55 -07:00
parent 88ce98519c
commit 5f8329d944
14 changed files with 1122 additions and 0 deletions

14
media-tv/mythtv/Manifest Normal file
View File

@@ -0,0 +1,14 @@
AUX bash_profile 63 SHA256 9a753f699d07b5f481374d13ea3f2b2439a22f3a9a49b6280cc8d9eebf0b2ca9 SHA512 1338a6871ba04100b3c74f91140be834ee659cb7fcf3aa1bdd251631e47690fae88b8eb80984ff5e35b2a4cf9b3fb1b0be8205fe220c82b19e9d935cc790d5b6 WHIRLPOOL 10220cf7662f150863b47529a90c831407ce93d272d64960cfa727992d0b4dfe2e13de2c62d7a4b27f924526307822fa488d9551f6e8f62a47f63a89dfaee9fe
AUX mythbackend.conf-r1 700 SHA256 7da59cf1e2da944e6f9c549251ffd59a379db1bd95fbc2aa47e311c64972935f SHA512 1e88f58a003cf583c7c1eda4832ffd22223dab7cfbdf87f075c9fbac6735fd5a15c42ff056fa1d9a060e8249c4be5153d05329ea9b838818b495e33d0af788c5 WHIRLPOOL bb194c4dcd92e89ceb43c81b2fc61ab7716d31487616f3826c22372d6881418bf8a80e98b7239b897ffbf2e6cd91fa9ac35303deb5732e19d1c176491a048861
AUX mythbackend.init-r2 2050 SHA256 2307a5794bb0c8ea1294527084224bd0dde6b366b95181491940612fea80ec04 SHA512 8eeb64cf32eaaf3415c4ffae4a72ce365e20d51b5cefac73aced87faeb92503a2c0c2baa4048cfdc521436bf3fab0769122b168d9f18e0b4c0890c329a6b2fc8 WHIRLPOOL e7b607f75b4f68eb07ff13a604d0be8232b5d3c53f67728a93b9d679d44a8e789583f0f4f94b01b8a8ab12058ae458e7e6a2777d28e5c2297ab0a0055eb062c7
AUX mythbackend.service-28 2689 SHA256 25f6083a610d691c6ce933514ae893f83eb45dca8a1e0bc603d90d9213056539 SHA512 945cd721c7114e7c9a334063c6f85de40c2dd8a40271b1755b31881ae2c067b67d34685e1cb2d9b09fdaa9bf58ea2763e4e314b288e53f8bfcef7b6942ce5dd1 WHIRLPOOL 5cc1fb186df853a8c6ea35a3e5dbd54e1abb309f49b4ab2afc31905f0604249ef960a057bc40ed0dd702893a76409735deb3b1bbfd3b9e83311d9d451d74891a
AUX mythfrontend.conf 474 SHA256 8aa8de5df71905490448b7eeb9960599f2c813c8b576e95ff6fcba5986340a3f SHA512 8b3967f5e7d719fefe50b8868dc1b974c3f6337335e7e65799ddb331abe07df0fadb4cb619758fefeaa0c4d0d1dac6f00e0982736cab5acac993bdaced0051c2 WHIRLPOOL a369da19de64fe3cf97a0c346d386de724671aa41cc10c1fef780ce49eeb23c2515e7725e682843ba9f8c142a88e9cbd7b463738e251e039b7ae407ecfd77b04
AUX mythfrontend.wrapper 794 SHA256 db90ac5ff3bec3f2a81f376cc94c553d2cce026fd921bc822a6e3428fd8fa2e0 SHA512 d69676d3b981c76988bbe60277f74028668c851db7db3c37a60ecc95ae18d9f77cd38511fcd3deb95d1f87bf659d7b0bcd7f1dd469801950d28f7b3f6f6947e3 WHIRLPOOL dd47702ed5c130c2c407e1c0b107eac6d9378b0e4635806caed510aba8a38dd65818151eae3bc9ed59055f4f8b1c0c2cb7ddd7f35bdc353bd207ca93979053ae
AUX mythtv-0.28.1-glibc225.patch 927 SHA256 c2e03dbdb5f7161620dbaf83005f13913dcc766e79d8e8785e444e4226b28cbb SHA512 33f80de1044cd8130dfd56f3ea6478c3667cc1698953244b7427a8ee055ffac2051f0f81dacc193271ddcc705c351f6fad86fc0b107accd1c949f8aaa7275a7b WHIRLPOOL e4fce8d8477bd374412046127f4c0abfbc07cbb44ba3e62ffdf202241b51873a1f487a1121380c1386d4ae3bdf3ee1c55d3250df792a2d3a6d17ec39db49f297
AUX mythtv-0.28.1-qt511.patch 11185 SHA256 dd96663527f6b7c8c8788f34b510f002bd4d4f3d6a2d9ea8c4fb285dcebc422b SHA512 1783bae86df7ec48679f67bd876941dc637c5bcdeecb468519293e1217aa4009d90d4254c7cf562adcc165b7652119faad2bd7d19c25e08ce4a951b4cf498331 WHIRLPOOL 3253ca108820103a763ea4fa7d57bbe29b7684581ed5f07e42c06b41dc70183a22eff80956d2c14544aa7048c55e0d8e329d92dab82de83dffde707ce258bda7
AUX mythtv-29.2-freetype_pkgconfig.patch 973 SHA256 e42a5457534b8c13f079199f092668b5421cdb6fe765590846e16cb8d8e69e71 SHA512 bb2985ccf54b58abd47b637e7b177e9e7a0efd04751d47007c8ca3a7fc765ecc577005bb9bc3820cbfccf8ee6d964d82c05bcf03673877854a3a120c48342218 WHIRLPOOL 3d11fcc9e912477ce4ece9791841e2233047a2c6c31c9a29c5b002efcf927cb9b0989f6a876c53b05759d0ad5eda0ef038c0a5aad210d65ace8efe9443583c3c
AUX mythtv.logrotate.d-r4 235 SHA256 322817abac79967e996f9afdd00b8814e38f51954babca910612127b8cfd5891 SHA512 8dd8936599acabfa55ad7efb870de431e03cb86c3c96156c2c0eee6675962dcc527391260f2ba66e3d54c1d41373001ef25c9d2421e83940c686d14b5f29fff7 WHIRLPOOL ea31e6635b0cd6dccc92878c6c1ec477c448ce894835a11e8131f8855c3f42c00cde91e5f4a3b97dd3aa1340a800453d4eb03e3b8db7a24bffdb342be42aa0e7
AUX xinitrc-r1 234 SHA256 0b335cc6d1e22d71f61bacfdcfed6cc450fecf7ff10bdb4bad50fd085bd7b2db SHA512 885adfe395fe553f6d5cf518856be7be9a6bf6073888f8e055271ed7c3d9ad85a162e9e9ff95a68e54047948ac280796c69ef55d0b4e549eb0beabbf0fec1188 WHIRLPOOL 6796d4d83ff200bd36cc02e3765222efd77dd7baa69ed9d6845b7ecb836fcd0b110f7ce644af1e2c4af3f76c4c924f7e69499b0b4f9f511ace31f3f9cc804240
DIST mythtv-0.28.1.tar.gz 104477892 SHA256 73dd4de0de6fe5688c290781b76de6380b256a87159f2c6e3dad66870389da1f SHA512 67a81858cd19b90f519113b234119ecc248366d8545c862d887755f256cddf04d9ca16a7bf67f63e06f7628730e7dbde2a2099ca8aaeb9061b2e55a5a0b7d5e7 WHIRLPOOL 370f3a528438d50d302ab6adadba5089b32749f8127cbf270b85ef16d35ca15026e0947e292920a3dd6acf2ed65de68af8754d985944bd59f3310a42b03551de
EBUILD mythtv-0.28.1-r4.ebuild 10250 SHA256 dc97ad16505e73d050072596f61c74dd9c6298ca144442ab9fe4e6361857569b SHA512 2fe71589d6351bf8d97b2afc421c43811dc822693226d028634457e9509aee748a77a8629d7d39ddc86cd0187a319236035f0dc82f66ae1c570108d11dbd3e0e WHIRLPOOL 67967c7803163a907c7a9535dbcc45aa537a7990863caacb875599b156820f0dc33aec6c98f50192e8b896aaa1fb00c00fc25e24c7efbd9428850496c25178bb
MISC metadata.xml 2986 SHA256 b1e010c75219ee8322684266409e6969a4a69534c342a52a5b6dda6e0de2b9da SHA512 a57d539f1f083bb69aaa0e85622862408e5afbc1eb27bfdf13b319b8104909971698ad7f51cc8978b9f5e5e4ab9e9d73b7907c61d65aba7c21867da7bfb36084 WHIRLPOOL d0b05914bbdc6cf8f817127668f44af24715584e22fbe7f05c9c31a4634ba51c785c5bf916edced420b93db5ef5fb78fca50d7a84c636663fc92f8b93bcb3b26

View File

@@ -0,0 +1,4 @@
# .bash_profile
case "`tty`" in
*tty8) startx; logout ;;
esac

View File

@@ -0,0 +1,18 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# Accepts any valid combination of logging options to mythbackend
# To get a valid list run: /usr/bin/mythbackend -v help
#MYTHBACKEND_VERBOSE="general"
# Configures where mythbackend logs
# Valid values:
# * files - logs each individual daemon in /var/log/mythtv (default)
# * database - logs into the database
# * syslog FACILITY - logs to syslog using FACILITY (see syslog(3))
# * console - logs only to the console (no mythlogserver)
#MYTHBACKEND_LOGGING="files"
# Allows you to pass specific startup options to mythbackend
# e.g. --noupnp
#MYTHBACKEND_OPTS=""

View File

@@ -0,0 +1,72 @@
#!/sbin/openrc-run
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
description="MythTV backend recording daemon"
extra_started_commands="resched upnprebuild"
description_resched="Forces the recording scheduler to update"
description_upnprebuild="Rebuilds the UPnP media cache"
MYTHBACKEND_OPTS=${MYTHBACKEND_OPTS:-"${MYTHBACKEND_OPTS}"}
MYTHBACKEND_VERBOSE=${MYTHBACKEND_VERBOSE:-"general"}
MYTHBACKEND_LOGGING=${MYTHBACKEND_LOGGING:-"files"}
name="MythTV backend"
command="/usr/bin/mythbackend"
pidfile="/run/mythtv/mythbackend.pid"
start_stop_daemon_args="--pidfile ${pidfile} --user mythtv:video"
command_args="--daemon --pidfile ${pidfile} --verbose ${MYTHBACKEND_VERBOSE} ${MYTHBACKEND_OPTS}"
depend() {
# mythbackend doesn't need to run on the same machine that
# mysql runs on. so its use for that reason
use logger net.lo mysql LCDd
}
start_pre() {
case "${MYTHBACKEND_LOGGING}" in
database) logging="--enable-dblog" ;;
syslog\ *) logging="--${MYTHBACKEND_LOGGING}" ;;
files) logging="--logpath /var/log/mythtv" ;;
console) logging="--nologserver" ;;
*)
eerror "Invalid MYTHBACKEND_LOGGING value"
exit 1
;;
esac
#fixes for bug #101308
unset DISPLAY
unset SESSION_MANAGER
# Work around any strange permissions that may be on these files.
[ "x${MYTHBACKEND_LOGGING}" = "xfiles" ] && \
checkpath --directory --owner mythtv:video --mode 0755 /var/log/mythtv
checkpath --directory --owner mythtv:video --mode 0775 /home/mythtv
checkpath --directory --owner mythtv:video --mode 0750 /run/mythtv
}
start() {
ebegin "Starting ${name}"
start-stop-daemon --start ${start_stop_daemon_args} --exec ${command} \
-- ${command_args} ${logging}
eend $?
}
stop() {
ebegin "Stopping ${name}"
start-stop-daemon --stop --retry 10 --progress --pidfile ${pidfile}
eend $?
}
resched() {
ebegin "Updating the recording scheduler"
${command} --resched
eend $?
}
upnprebuild() {
ebegin "Rebuilding UPnP media cache"
${command} --upnprebuild
eend $?
}

View File

@@ -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

View File

@@ -0,0 +1,12 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# Should 'mythfrontend' really execute mythwelcome instead?
# Default: false
MYTHWELCOME=false
# Options to pass to mythfrontend or mythwelcome based on the above setting
# Note: If you have mythwelcome enabled, it does not pass arguments to
# mythfrontend. You must configure this inside mythwelcome
# Default: --syslog local7
MYTHFRONTEND_OPTS="--syslog local7"

View File

@@ -0,0 +1,29 @@
#!/bin/sh
# Based on Mythbuntu's script
# Check if the frontend is already running,
# if it is bring it to the foreground.
# This is to prevent multiple frontends from running
/usr/bin/pgrep mythfrontend.real 2>&1 > /dev/null && \
/usr/bin/wmctrl -a "MythTV Frontend" 2> /dev/null && \
exit 0
# Check if you're part of the video group
if [ -n "$(groups | grep -v video)" ]; then
echo "'$USER' is not part of the 'video' group." >&2
echo "For best results add '$USER' to the 'video' group." >&2
fi
if [ -e /etc/conf.d/mythfrontend ]; then
. /etc/conf.d/mythfrontend
fi
if [ "x${MYTHWELCOME}" = "xtrue" ]; then
exec /usr/bin/mythwelcome ${MYTHFRONTEND_OPTS} "$@"
RET=$?
else
exec /usr/bin/mythfrontend.real ${MYTHFRONTEND_OPTS} "$@"
RET=$?
fi
exit ${RET}

View File

@@ -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
--- mythtv/libs/libmythtv/videosource.cpp.old
+++ 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

View File

@@ -0,0 +1,405 @@
--- a/configure
+++ b/configure
@@ -5907,7 +5907,7 @@
enabled pic && enable_weak_pic
is_qmake5(){
- $1 --version 2>&1 | egrep -q -e "Qt version 5\.[2-9]\.[0-9]"
+ $1 --version 2>&1 | egrep -q -e 'Qt version 5\.(([1-9][0-9]+)|[2-9])\.[0-9]'
}
# qmake-qt5 /usr/lib64/qt5/bin/qmake /usr/lib/x86_64-linux-gnu/qt5/bin/qmake
--- a/libs/libmythbase/libmythbase.pro
+++ b/libs/libmythbase/libmythbase.pro
@@ -154,7 +154,7 @@
QT += xml sql network
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/libs/libmyth/libmyth.pro
+++ b/libs/libmyth/libmyth.pro
@@ -1,7 +1,7 @@
include ( ../../settings.pro )
QT += network xml sql script
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
android: QT += androidextras
}
@@ -169,7 +169,7 @@
SOURCES += mediamonitor-unix.cpp
HEADERS += mediamonitor-unix.h
!android {
- contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+ contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
using_qtdbus: QT += dbus
} else {
using_qtdbus: CONFIG += qdbus
--- a/libs/libmyth/test/test_audioconvert/test_audioconvert.pro
+++ b/libs/libmyth/test/test_audioconvert/test_audioconvert.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmyth/test/test_audioutils/test_audioutils.pro
+++ b/libs/libmyth/test/test_audioutils/test_audioutils.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmyth/test/test_programinfo/test_programinfo.pro
+++ b/libs/libmyth/test/test_programinfo/test_programinfo.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythbase/test/test_mythsystem/test_mythsystem.pro
+++ b/libs/libmythbase/test/test_mythsystem/test_mythsystem.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythbase/test/test_mythsystemlegacy/test_mythsystemlegacy.pro
+++ b/libs/libmythbase/test/test_mythsystemlegacy/test_mythsystemlegacy.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythbase/test/test_mythtimer/test_mythtimer.pro
+++ b/libs/libmythbase/test/test_mythtimer/test_mythtimer.pro
@@ -3,7 +3,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythbase/test/test_template/test_template.pro
+++ b/libs/libmythbase/test/test_template/test_template.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythmetadata/libmythmetadata.pro
+++ b/libs/libmythmetadata/libmythmetadata.pro
@@ -1,7 +1,7 @@
include ( ../../settings.pro )
QT += network xml sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/libs/libmythmetadata/test/test_videometadata/test_videometadata.pro
+++ b/libs/libmythmetadata/test/test_videometadata/test_videometadata.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythprotoserver/libmythprotoserver.pro
+++ b/libs/libmythprotoserver/libmythprotoserver.pro
@@ -1,7 +1,7 @@
include ( ../../settings.pro )
QT += network sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/libs/libmythtv/libmythtv.pro
+++ b/libs/libmythtv/libmythtv.pro
@@ -1,7 +1,7 @@
include ( ../../settings.pro )
QT += network xml sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/libs/libmythtv/test/test_copyframes/test_copyframes.pro
+++ b/libs/libmythtv/test/test_copyframes/test_copyframes.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythtv/test/test_eitfixups/test_eitfixups.pro
+++ b/libs/libmythtv/test/test_eitfixups/test_eitfixups.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythtv/test/test_iptvrecorder/test_iptvrecorder.pro
+++ b/libs/libmythtv/test/test_iptvrecorder/test_iptvrecorder.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythtv/test/test_mpegtables/test_mpegtables.pro
+++ b/libs/libmythtv/test/test_mpegtables/test_mpegtables.pro
@@ -5,7 +5,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
CONFIG += qtestlib
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += testlib
}
--- a/libs/libmythui/libmythui.pro
+++ b/libs/libmythui/libmythui.pro
@@ -4,7 +4,7 @@
contains(QT_VERSION, ^4\\.[0-9]\\..*) {
QT += webkit
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
QT += webkitwidgets
android: QT += androidextras
--- a/programs/mythavtest/mythavtest.pro
+++ b/programs/mythavtest/mythavtest.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro )
QT += network xml sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythbackend/mythbackend.pro
+++ b/programs/mythbackend/mythbackend.pro
@@ -10,7 +10,7 @@
# need the following for QUrl::addQueryItem
DEFINES += QT_DISABLE_DEPRECATED_BEFORE
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythccextractor/mythccextractor.pro
+++ b/programs/mythccextractor/mythccextractor.pro
@@ -2,7 +2,7 @@
include ( ../programs-libs.pro )
QT += sql network
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythcommflag/mythcommflag.pro
+++ b/programs/mythcommflag/mythcommflag.pro
@@ -2,7 +2,7 @@
include (../../version.pro)
include ( ../programs-libs.pro )
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythfilerecorder/mythfilerecorder.pro
+++ b/programs/mythfilerecorder/mythfilerecorder.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro )
QT += network xml sql script
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythfilldatabase/mythfilldatabase.pro
+++ b/programs/mythfilldatabase/mythfilldatabase.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro )
QT += network xml sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythfrontend/mythfrontend.pro
+++ b/programs/mythfrontend/mythfrontend.pro
@@ -11,7 +11,7 @@
QT += webkit
using_qtdbus: CONFIG += qdbus
}
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
QT += webkitwidgets
using_qtdbus: QT += dbus
--- a/programs/mythjobqueue/mythjobqueue.pro
+++ b/programs/mythjobqueue/mythjobqueue.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro)
QT += sql network
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythlcdserver/mythlcdserver.pro
+++ b/programs/mythlcdserver/mythlcdserver.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro )
QT += network xml sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
using_opengl:QT += opengl
--- a/programs/mythlogserver/mythlogserver.pro
+++ b/programs/mythlogserver/mythlogserver.pro
@@ -2,7 +2,7 @@
include ( ../programs-libs.pro )
QT += sql network
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythmediaserver/mythmediaserver.pro
+++ b/programs/mythmediaserver/mythmediaserver.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro )
QT += network sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythpreviewgen/mythpreviewgen.pro
+++ b/programs/mythpreviewgen/mythpreviewgen.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro )
QT += network sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythscreenwizard/mythscreenwizard.pro
+++ b/programs/mythscreenwizard/mythscreenwizard.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro)
QT += sql network
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythtranscode/mythtranscode.pro
+++ b/programs/mythtranscode/mythtranscode.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro)
QT += network xml sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythtv-setup/mythtv-setup.pro
+++ b/programs/mythtv-setup/mythtv-setup.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro )
QT += network xml sql
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythutil/mythutil.pro
+++ b/programs/mythutil/mythutil.pro
@@ -3,7 +3,7 @@
include ( ../programs-libs.pro )
QT += network sql xml
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}
--- a/programs/mythwelcome/mythwelcome.pro
+++ b/programs/mythwelcome/mythwelcome.pro
@@ -3,7 +3,7 @@
include (../programs-libs.pro)
QT += xml sql network
-contains(QT_VERSION, ^5\\.[0-9]\\..*) {
+contains(QT_VERSION, ^5\\.(([1-9][0-9]+)|[0-9])\\..*) {
QT += widgets
}

View File

@@ -0,0 +1,28 @@
From 8cbb51a829ca4602da75c359bc598130c19264c4 Mon Sep 17 00:00:00 2001
From: Peter Bennett <pbennett@mythtv.org>
Date: Wed, 9 May 2018 19:17:12 -0400
Subject: [PATCH] configure: new version of freetype2 does not support
freetype-config
freetype2 v2.9.1 uses only pkgconfig and removes support for freetype-config
Fixes #13262
---
mythtv/configure | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mythtv/configure b/mythtv/configure
index 8b55291685b..a378fc44dde 100755
--- a/mythtv/configure
+++ b/mythtv/configure
@@ -7406,8 +7406,8 @@ if enabled darwin_da; then
fi
if enabled freetype2; then
- echo "FREETYPE_CFLAGS=`freetype-config --cflags`" >> $TMPMAK
- echo "FREETYPE_LIBS=`freetype-config --libs`" >> $TMPMAK
+ echo "FREETYPE_CFLAGS=$($pkg_config --cflags $pkg_config_flags freetype2)" >> $TMPMAK
+ echo "FREETYPE_LIBS=$($pkg_config --libs $pkg_config_flags freetype2)" >> $TMPMAK
fi
if test $target_os = darwin; then

View File

@@ -0,0 +1,14 @@
/var/log/mythtv/*.log {
weekly
rotate 8
missingok
ifempty
nocreate
nocompress
sharedscripts
olddir /var/log/mythtv/old
lastaction
killall -HUP mythlogserver
find /var/log/mythtv/old -type f -mtime +30 -delete
endscript
}

View File

@@ -0,0 +1,8 @@
# .xinitrc
[ -x /usr/bin/nvidia-settings ] && /usr/bin/nvidia-settings -l
/usr/bin/xset s noblank
/usr/bin/xset s off
/usr/bin/xset -dpms
/usr/bin/evilwm &
# Configure arguments via /etc/conf.d/mythfrontend
exec /usr/bin/mythfrontend

View File

@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<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="fftw">Support visualizations via <pkg>sci-libs/fftw</pkg></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>
</use>
<upstream>
<remote-id type="github">MythTV/mythtv</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,369 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
# git diff --relative=mythtv v0.27.6.. > ~/mythtv-0.27.6/patches/mythtv.patch
BACKPORTS="03f44039848bd09444ff4baa8dc158bd61454079"
MY_P=${P%_p*}
MY_PV=${PV%_p*}
inherit flag-o-matic python-single-r1 qmake-utils user readme.gentoo-r1 systemd vcs-snapshot
MYTHTV_BRANCH="fixes/0.28"
DESCRIPTION="Homebrew PVR project"
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="alsa altivec autostart bluray cec crystalhd debug dvb dvd egl fftw +hls \
ieee1394 jack lcd libass lirc +mythlogserver perl pulseaudio python systemd +theora \
vaapi vdpau +vorbis +wrapper +xml xmltv +xvid zeroconf ${IUSE_INPUT_DEVICES}"
REQUIRED_USE="${PYTHON_REQUIRED_USE}
bluray? ( xml )
theora? ( vorbis )"
COMMON="
dev-libs/glib:2
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtgui:5
dev-qt/qtnetwork:5
dev-qt/qtscript:5
dev-qt/qtsql:5[mysql]
dev-qt/qtopengl:5
dev-qt/qtwebkit:5
dev-qt/qtwidgets:5
dev-qt/qtxml:5
media-gfx/exiv2:=
media-libs/freetype:2
media-libs/taglib
>=media-sound/lame-3.93.1
sys-libs/zlib
virtual/mysql
virtual/opengl
x11-libs/libX11
x11-libs/libXext
x11-libs/libXinerama
x11-libs/libXv
x11-libs/libXrandr
x11-libs/libXxf86vm
x11-misc/wmctrl
alsa? ( >=media-libs/alsa-lib-1.0.24 )
bluray? (
dev-libs/libcdio:=
media-libs/libbluray:=
sys-fs/udisks:2
)
cec? ( dev-libs/libcec )
dvb? (
virtual/linuxtv-dvb-headers
)
dvd? (
dev-libs/libcdio:=
sys-fs/udisks:2
)
egl? ( media-libs/mesa[egl] )
fftw? ( sci-libs/fftw:3.0= )
hls? (
media-libs/faac
<media-libs/libvpx-1.7.0:=
>=media-libs/x264-0.0.20111220:=
)
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
)
systemd? ( sys-apps/systemd:= )
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 )
zeroconf? (
dev-libs/openssl:0=
net-dns/avahi[mdnsresponder-compat]
)
"
RDEPEND="${COMMON}
!media-tv/mythtv-bindings
!x11-themes/mythtv-themes
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
virtual/pkgconfig
x11-base/xorg-proto
"
S="${WORKDIR}/${P}/mythtv"
DISABLE_AUTOFORMATTING="yes"
DOC_CONTENTS="
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.
"
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() {
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
# 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
eapply "${FILESDIR}/${P}-glibc225.patch"
eapply -p2 "${FILESDIR}/${PN}-29.2-freetype_pkgconfig.patch" #658534
eapply "${FILESDIR}/${P}-qt511.patch"
}
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 zeroconf || 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" # FIXME: does not disable for all files, only for some
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)"
use systemd || myconf="${myconf} $(use_enable mythlogserver)"
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}" \
--qmake=$(qt5_get_bindir)/qmake \
${myconf} || die "configure died"
}
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
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() {
readme.gentoo_print_elog
}
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
}