5 |
5 |
|
6 |
6 |
PYTHON_COMPAT=( python3_{9..11} )
|
7 |
7 |
|
8 |
|
inherit linux-info python-any-r1 systemd toolchain-funcs
|
|
8 |
inherit git-r3 linux-info python-any-r1 systemd toolchain-funcs
|
9 |
9 |
|
10 |
10 |
DESCRIPTION="Tvheadend is a TV streaming server and digital video recorder"
|
11 |
11 |
HOMEPAGE="https://tvheadend.org/"
|
12 |
|
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
12 |
EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
|
13 |
13 |
|
14 |
14 |
LICENSE="GPL-3"
|
15 |
15 |
SLOT="0"
|
16 |
|
KEYWORDS="amd64 arm arm64 x86"
|
|
16 |
KEYWORDS=""
|
17 |
17 |
|
18 |
|
IUSE="+capmt +constcw +cwc dbus debug dvbcsa dvben50221 +dvb +ffmpeg hdhomerun +imagecache +inotify iptv satip systemd +timeshift uriparser xmltv zeroconf zlib"
|
|
18 |
IUSE="dbus debug +ddci dvbcsa +dvb +ffmpeg hdhomerun +imagecache +inotify iptv opus satip systemd +timeshift uriparser vpx x264 x265 xmltv zeroconf zlib"
|
19 |
19 |
|
20 |
20 |
BDEPEND="
|
21 |
21 |
${PYTHON_DEPS}
|
22 |
22 |
sys-devel/gettext
|
23 |
23 |
virtual/pkgconfig
|
24 |
24 |
"
|
25 |
|
# <ffmpeg-5 dep for bug #834399, https://github.com/tvheadend/tvheadend/pull/1460
|
|
25 |
|
26 |
26 |
RDEPEND="
|
27 |
27 |
acct-user/tvheadend
|
28 |
28 |
virtual/libiconv
|
29 |
29 |
dbus? ( sys-apps/dbus )
|
30 |
30 |
dvbcsa? ( media-libs/libdvbcsa )
|
31 |
|
dvben50221? ( media-tv/linuxtv-dvb-apps )
|
32 |
|
ffmpeg? ( <media-video/ffmpeg-5:= )
|
|
31 |
ffmpeg? ( <media-video/ffmpeg-5:=[opus?,vpx?,x264?,x265?] )
|
33 |
32 |
hdhomerun? ( media-libs/libhdhomerun )
|
34 |
33 |
dev-libs/openssl:0=
|
35 |
34 |
uriparser? ( dev-libs/uriparser )
|
... | ... | |
37 |
36 |
zlib? ( sys-libs/zlib )
|
38 |
37 |
"
|
39 |
38 |
|
|
39 |
# ffmpeg sub-dependencies needed for headers only. Check under
|
|
40 |
# src/transcoding/codec/codecs/libs for include statements.
|
|
41 |
|
40 |
42 |
DEPEND="
|
41 |
43 |
${RDEPEND}
|
42 |
44 |
dvb? ( virtual/linuxtv-dvb-headers )
|
|
45 |
ffmpeg? (
|
|
46 |
opus? ( media-libs/opus )
|
|
47 |
vpx? ( media-libs/libvpx )
|
|
48 |
x264? ( media-libs/x264 )
|
|
49 |
x265? ( media-libs/x265 )
|
|
50 |
)
|
43 |
51 |
"
|
44 |
52 |
|
45 |
53 |
RDEPEND+="
|
... | ... | |
47 |
55 |
xmltv? ( media-tv/xmltv )
|
48 |
56 |
"
|
49 |
57 |
|
50 |
|
REQUIRED_USE="dvbcsa? ( || ( capmt constcw cwc dvben50221 ) )"
|
|
58 |
REQUIRED_USE="
|
|
59 |
ddci? ( dvb )
|
|
60 |
"
|
51 |
61 |
|
52 |
62 |
# Some patches from:
|
53 |
63 |
# https://github.com/rpmfusion/tvheadend
|
54 |
64 |
|
55 |
65 |
PATCHES=(
|
56 |
66 |
"${FILESDIR}"/${PN}-4.0.9-use_system_queue.patch
|
57 |
|
"${FILESDIR}"/${PN}-4.2.{1,8}-hdhomerun.patch
|
|
67 |
"${FILESDIR}"/${PN}-4.3-hdhomerun.patch
|
58 |
68 |
"${FILESDIR}"/${PN}-4.2.2-dtv_scan_tables.patch
|
59 |
69 |
"${FILESDIR}"/${PN}-4.2.7-python3.patch
|
60 |
|
"${FILESDIR}"/${PN}-4.2.8-gcc9.patch
|
61 |
|
"${FILESDIR}"/${PN}-4.2.8-no-dvb-fix.patch
|
62 |
|
"${FILESDIR}"/${PN}-4.2.8-fno-common.patch
|
63 |
70 |
)
|
64 |
71 |
|
65 |
72 |
DOCS=( README.md )
|
... | ... | |
71 |
78 |
CONFIG_CHECK="~INOTIFY_USER" linux-info_pkg_setup
|
72 |
79 |
}
|
73 |
80 |
|
|
81 |
# We unconditionally enable codecs that do not require additional
|
|
82 |
# dependencies when building tvheadend. If support is missing from
|
|
83 |
# ffmpeg at runtime then tvheadend will simply disable these codecs.
|
|
84 |
|
|
85 |
# It is not necessary to specific all the --disable-*-static options as
|
|
86 |
# most of them only take effect when --enable-ffmpeg_static is given.
|
|
87 |
|
74 |
88 |
src_configure() {
|
75 |
89 |
CC="$(tc-getCC)" \
|
76 |
90 |
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
|
... | ... | |
80 |
94 |
--disable-dvbscan \
|
81 |
95 |
--disable-ffmpeg_static \
|
82 |
96 |
--disable-hdhomerun_static \
|
|
97 |
--enable-libfdkaac \
|
|
98 |
--enable-libtheora \
|
|
99 |
--enable-libvorbis \
|
83 |
100 |
--nowerror \
|
84 |
|
$(use_enable capmt) \
|
85 |
|
$(use_enable constcw) \
|
86 |
|
$(use_enable cwc) \
|
87 |
101 |
$(use_enable dbus dbus_1) \
|
88 |
102 |
$(use_enable debug trace) \
|
|
103 |
$(use_enable ddci) \
|
89 |
104 |
$(use_enable dvb linuxdvb) \
|
90 |
105 |
$(use_enable dvbcsa) \
|
91 |
|
$(use_enable dvben50221) \
|
|
106 |
$(use_enable dvbcsa capmt) \
|
|
107 |
$(use_enable dvbcsa cccam) \
|
|
108 |
$(use_enable dvbcsa constcw) \
|
|
109 |
$(use_enable dvbcsa cwc) \
|
92 |
110 |
$(use_enable ffmpeg libav) \
|
93 |
111 |
$(use_enable hdhomerun hdhomerun_client) \
|
94 |
112 |
$(use_enable imagecache) \
|
95 |
113 |
$(use_enable inotify) \
|
96 |
114 |
$(use_enable iptv) \
|
|
115 |
$(use_enable opus libopus) \
|
97 |
116 |
$(use_enable satip satip_server) \
|
98 |
117 |
$(use_enable satip satip_client) \
|
99 |
118 |
$(use_enable systemd libsystemd_daemon) \
|
100 |
119 |
$(use_enable timeshift) \
|
101 |
120 |
$(use_enable uriparser) \
|
|
121 |
$(use_enable vpx libvpx) \
|
|
122 |
$(use_enable x264 libx264) \
|
|
123 |
$(use_enable x265 libx265) \
|
102 |
124 |
$(use_enable zeroconf avahi) \
|
103 |
125 |
$(use_enable zlib)
|
104 |
126 |
}
|