Gentoo Archives: gentoo-commits

From: "Jörg Bornkessel" <hd_brummy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/vdr/, media-video/vdr/files/
Date: Thu, 11 Feb 2021 17:20:43
Message-Id: 1613064019.3f50eab87a6bef5bc45fc1754f35db7b769bcdba.hd_brummy@gentoo
1 commit: 3f50eab87a6bef5bc45fc1754f35db7b769bcdba
2 Author: Joerg Bornkessel <hd_brummy <AT> gentoo <DOT> org>
3 AuthorDate: Thu Feb 11 16:55:00 2021 +0000
4 Commit: Jörg Bornkessel <hd_brummy <AT> gentoo <DOT> org>
5 CommitDate: Thu Feb 11 17:20:19 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f50eab8
7
8 media-video/vdr: version bump
9
10 temp droped use-flag permashift, pinplugin
11 as we do not have a addopted patch from plugins upstream yet
12
13 Package-Manager: Portage-3.0.14, Repoman-3.0.2
14 Signed-off-by: Joerg Bornkessel <hd_brummy <AT> gentoo.org>
15
16 media-video/vdr/Manifest | 2 +
17 media-video/vdr/files/vdr-2.4.6_gentoo.patch | 66 +++++++
18 .../vdr/files/vdr-2.4.6_makefile-variables.patch | 40 ++++
19 .../vdr/files/vdr-2.4.6_remove_plugins.patch | 24 +++
20 media-video/vdr/vdr-2.4.6.ebuild | 202 +++++++++++++++++++++
21 5 files changed, 334 insertions(+)
22
23 diff --git a/media-video/vdr/Manifest b/media-video/vdr/Manifest
24 index 715cb3e5d65..43de58b6f2e 100644
25 --- a/media-video/vdr/Manifest
26 +++ b/media-video/vdr/Manifest
27 @@ -6,4 +6,6 @@ DIST vdr-2.4.0-ttxtsubs.patch.bz2 16721 BLAKE2B d5c3da713cd82ed8c3baccd1336d2834
28 DIST vdr-2.4.1.tar.bz2 940623 BLAKE2B 6fa7858e1c0fc25d3332d20347b30515276fc2b54905f32109dfa7f59e4e0c8a83687be405fac063a673c89d77e191f62162b1bd0ed6ee179d32a27f73076fb3 SHA512 b851ebf626de1a6aea11ee9c0cd87d78ebebdc34128925d2027a7030db1262064edb8818566a87ce22d37a9bd2b4f0b4ff1aad8dd251061d9ff972ffe0cf022d
29 DIST vdr-2.4.1_mainmenuhook-1.0.1.patch.bz2 1463 BLAKE2B 2be3597a273a92d02be0d072e3d74b39275cbbe17d22e570f416d42c46b53f43209498e569142a2cc357e5f7176d2454cb2a86d0822b29cca913eab2ae9cc27f SHA512 9d3eb501fa06ff5b03361ef65c8ddeeba5f37493cc0edc2d4f54e200e48e17607957fa95bd1540f028bc9a98ad6f42b4d38cf79e9ce971de36bed30def108759
30 DIST vdr-2.4.1_pinplugin.patch.bz2 8641 BLAKE2B 339bb23ed0f505087bdbbefb192824d5def37bb00c4d5dc300f545c7951f11504115d058c157d1964f5f32e483e668675e13254465b5acce76cfdcf07faae216 SHA512 f402fa51314ad6c34439f71b7cb81e1ca51e0fa3b120a1fdaee119c2dd1b13174db2e666bf5e6204aa28e4acef8f6bd6e3ab8324793c3484eafb16dc8cf808d5
31 +DIST vdr-2.4.6.tar.bz2 951272 BLAKE2B 52e92eb7e5fdc9bb9209cbef61f8db47e2e9a4750c75bc5b4f88069f95e54faac6b1af5b4c77a6a53990d8f083b6ff8ddeb33418386081c128617217129374fd SHA512 bed8b7740a97b681cf4273c01b6ce80046c1e5914c06d12cffc46fdca615331d0e97771ec09697cf72897583fcf272d83b6bf188ef476715cd0c0c5fd4c5e9d4
32 +DIST vdr-2.4.6_ttxtsubs.patch.bz2 14964 BLAKE2B b07e26077fe5af02df00b3580031615390ba6b3ea1c5a6e9c91f5e6d1964da7114e0ad939a9e4de640a97f5a887c45f6c8b5793a4da9341c7c238993a997c87c SHA512 cd60496b4a8a2dbed209dcf6645c0a6886091c5d5fca791a5ff3ec9fdf7f6c3f2c9a99976636aa985257b9baef10439e75f844f58f3f0a25d5ebcd361ec552ae
33 DIST vdr-menuorg-2.3.x.diff 8852 BLAKE2B 19b98d51a69f52ecda5500f51ef1741a8397953b20c490055eab0393da5f56ff9598c3e1e8ed8b915f5877e08deeb9ba7a9ef8d9356ad3a1fa12e3778869174a SHA512 7b41c3a529858a4953a57f21619ea01864e140cc1755ee0b03caf1c4de41e80c3f805653502bc8d39d02a4dfcddf720acd4a8c8bd91f4871eef31d86e8e915c0
34
35 diff --git a/media-video/vdr/files/vdr-2.4.6_gentoo.patch b/media-video/vdr/files/vdr-2.4.6_gentoo.patch
36 new file mode 100644
37 index 00000000000..6ecd2ccfd43
38 --- /dev/null
39 +++ b/media-video/vdr/files/vdr-2.4.6_gentoo.patch
40 @@ -0,0 +1,66 @@
41 +this patch will disable some handling in the core Makefile
42 +as we use for Linux FHS a different handling in gentoo
43 +demoplugins from core vdr install disabled
44 +support from Linguas variable
45 +
46 +Signed-off-by: Joerg Bornkessel <hd_brummy@g.o> 2021/Feb/11
47 +diff -Naur vdr-2.4.6.orig/Makefile vdr-2.4.6/Makefile
48 +--- vdr-2.4.6.orig/Makefile 2020-06-27 11:13:04.000000000 +0200
49 ++++ vdr-2.4.6/Makefile 2020-08-08 18:16:02.519719542 +0200
50 +@@ -193,7 +193,7 @@
51 +
52 + PODIR = po
53 + LOCALEDIR = locale
54 +-I18Npo = $(wildcard $(PODIR)/*.po)
55 ++I18Npo = $(foreach dir,$(LINGUAS),$(wildcard $(PODIR)/$(dir)*.po))
56 + I18Nmo = $(addsuffix .mo, $(foreach file, $(I18Npo), $(basename $(file))))
57 + I18Nmsgs = $(addprefix $(LOCALEDIR)/, $(addsuffix /LC_MESSAGES/vdr.mo, $(notdir $(foreach file, $(I18Npo), $(basename $(file))))))
58 + I18Npot = $(PODIR)/vdr.pot
59 +@@ -220,7 +220,7 @@
60 +
61 + install-i18n: i18n
62 + @mkdir -p $(DESTDIR)$(LOCDIR)
63 +- cp -r $(LOCALEDIR)/* $(DESTDIR)$(LOCDIR)
64 ++ @(cd $(LOCALEDIR); for linguas in $(LINGUAS); do [ "$$linguas" = "en" ] && continue; cp -r --parents $$linguas* $(DESTDIR)$(LOCDIR); done)
65 +
66 + # The 'include' directory (for plugins):
67 +
68 +@@ -294,12 +294,11 @@
69 +
70 + install-dirs:
71 + @mkdir -p $(DESTDIR)$(VIDEODIR)
72 +- @mkdir -p $(DESTDIR)$(CONFDIR)
73 + @mkdir -p $(DESTDIR)$(ARGSDIR)
74 +- @mkdir -p $(DESTDIR)$(CACHEDIR)
75 + @mkdir -p $(DESTDIR)$(RESDIR)
76 +
77 + install-conf: install-dirs
78 ++ @mkdir -p $(DESTDIR)$(CONFDIR)
79 + @cp -pn *.conf $(DESTDIR)$(CONFDIR)
80 +
81 + # Documentation:
82 +@@ -307,9 +306,9 @@
83 + install-doc:
84 + @mkdir -p $(DESTDIR)$(MANDIR)/man1
85 + @mkdir -p $(DESTDIR)$(MANDIR)/man5
86 +- @gzip -c vdr.1 > $(DESTDIR)$(MANDIR)/man1/vdr.1.gz
87 +- @gzip -c vdr.5 > $(DESTDIR)$(MANDIR)/man5/vdr.5.gz
88 +- @gzip -c svdrpsend.1 > $(DESTDIR)$(MANDIR)/man1/svdrpsend.1.gz
89 ++ @cp vdr.1 $(DESTDIR)$(MANDIR)/man1/
90 ++ @cp vdr.5 $(DESTDIR)$(MANDIR)/man5/
91 ++ @cp svdrpsend.1 $(DESTDIR)$(MANDIR)/man1/
92 +
93 + # Plugins:
94 +
95 +@@ -326,8 +325,9 @@
96 + # Includes:
97 +
98 + install-includes: include-dir
99 +- @mkdir -p $(DESTDIR)$(INCDIR)
100 +- @cp -pLR include/vdr include/libsi $(DESTDIR)$(INCDIR)
101 ++ @mkdir -p $(DESTDIR)$(INCDIR)/vdr $(DESTDIR)$(INCDIR)/vdr/libsi
102 ++ @cp -pLR include/vdr $(DESTDIR)$(INCDIR)
103 ++ @cp -pLR include/libsi Make.config $(DESTDIR)$(INCDIR)/vdr
104 +
105 + # pkg-config file:
106 +
107
108 diff --git a/media-video/vdr/files/vdr-2.4.6_makefile-variables.patch b/media-video/vdr/files/vdr-2.4.6_makefile-variables.patch
109 new file mode 100644
110 index 00000000000..0731b91443c
111 --- /dev/null
112 +++ b/media-video/vdr/files/vdr-2.4.6_makefile-variables.patch
113 @@ -0,0 +1,40 @@
114 +we change some variables in the Makefile
115 +for a better handling in gentoo ebuild
116 +
117 +Signed-off-by: Joerg Bornkessel <hd_brummy@g.o> 2021/Feb/11
118 +diff -Naur vdr-2.4.6.orig/Makefile vdr-2.4.6/Makefile
119 +--- vdr-2.4.6.orig/Makefile 2020-06-27 11:13:04.000000000 +0200
120 ++++ vdr-2.4.6/Makefile 2020-08-08 18:16:02.519719542 +0200
121 +@@ -65,7 +65,7 @@
122 +
123 + # Output control
124 +
125 +-ifdef VERBOSE
126 ++ifeq ($(VERBOSE),1)
127 + Q =
128 + else
129 + Q = @
130 +@@ -100,7 +100,7 @@
131 + ifdef HDRDIR
132 + HDRDIR := -I$(HDRDIR)
133 + endif
134 +-ifndef NO_KBD
135 ++ifeq ($(USE_KBD),1)
136 + DEFINES += -DREMOTE_KBD
137 + endif
138 + ifdef REMOTE
139 +@@ -109,12 +109,12 @@
140 + ifdef VDR_USER
141 + DEFINES += -DVDR_USER=\"$(VDR_USER)\"
142 + endif
143 +-ifdef BIDI
144 ++ifeq ($(BIDI),1)
145 + INCLUDES += $(shell $(PKG_CONFIG) --cflags fribidi)
146 + DEFINES += -DBIDI
147 + LIBS += $(shell $(PKG_CONFIG) --libs fribidi)
148 + endif
149 +-ifdef SDNOTIFY
150 ++ifeq ($(SDNOTIFY),1)
151 + INCLUDES += $(shell $(PKG_CONFIG) --silence-errors --cflags libsystemd-daemon || $(PKG_CONFIG) --cflags libsystemd)
152 + DEFINES += -DSDNOTIFY
153 + LIBS += $(shell $(PKG_CONFIG) --silence-errors --libs libsystemd-daemon || $(PKG_CONFIG) --libs libsystemd)
154
155 diff --git a/media-video/vdr/files/vdr-2.4.6_remove_plugins.patch b/media-video/vdr/files/vdr-2.4.6_remove_plugins.patch
156 new file mode 100644
157 index 00000000000..d2571ea687c
158 --- /dev/null
159 +++ b/media-video/vdr/files/vdr-2.4.6_remove_plugins.patch
160 @@ -0,0 +1,24 @@
161 +we do not install any plugins from core vdr
162 +
163 +Signed-off-by: Joerg Bornkessel <hd_brummy@g.o> 2021/Feb/11
164 +diff -Naur vdr-2.4.6.orig/Makefile vdr-2.4.6/Makefile
165 +--- vdr-2.4.6.orig/Makefile 2020-06-27 11:13:04.000000000 +0200
166 ++++ vdr-2.4.6/Makefile 2020-08-08 18:16:02.519719542 +0200
167 +@@ -136,7 +136,7 @@
168 + VDRVERSION = $(shell sed -ne '/define VDRVERSION/s/^.*"\(.*\)".*$$/\1/p' config.h)
169 + APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' config.h)
170 +
171 +-all: vdr i18n plugins
172 ++all: vdr i18n
173 +
174 + # Implicit rules:
175 +
176 +@@ -282,7 +282,7 @@
177 +
178 + # Install the files (note that 'install-pc' must be first!):
179 +
180 +-install: install-pc install-bin install-conf install-doc install-plugins install-i18n install-includes
181 ++install: install-pc install-bin install-conf install-doc install-i18n install-includes
182 +
183 + # VDR binary:
184 +
185
186 diff --git a/media-video/vdr/vdr-2.4.6.ebuild b/media-video/vdr/vdr-2.4.6.ebuild
187 new file mode 100644
188 index 00000000000..b8ba1b702c6
189 --- /dev/null
190 +++ b/media-video/vdr/vdr-2.4.6.ebuild
191 @@ -0,0 +1,202 @@
192 +# Copyright 2021 Gentoo Authors
193 +# Distributed under the terms of the GNU General Public License v2
194 +
195 +EAPI=7
196 +
197 +inherit flag-o-matic multilib toolchain-funcs
198 +
199 +DESCRIPTION="Video Disk Recorder - turns a pc into a powerful set top box for DVB"
200 +HOMEPAGE="http://www.tvdr.de/"
201 +SRC_URI="ftp://ftp.tvdr.de/vdr/${P}.tar.bz2
202 + mainmenuhooks? ( http://vdr.websitec.de/download/${PN}/${PN}-2.4.1/${PN}-2.4.1_mainmenuhook-1.0.1.patch.bz2 )
203 + menuorg? ( https://projects.vdr-developer.org/projects/plg-menuorg/repository/revisions/master/raw/vdr-patch/vdr-menuorg-2.3.x.diff )
204 + naludump? ( http://www.udo-richter.de/vdr/files/vdr-2.1.5-naludump-0.1.diff )
205 + ttxtsubs? ( http://vdr.websitec.de/download/${PN}/${P}/${P}_ttxtsubs.patch.bz2 )"
206 +
207 +LICENSE="GPL-2+"
208 +SLOT="0"
209 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
210 +IUSE="bidi debug demoplugins html keyboard mainmenuhooks menuorg naludump systemd ttxtsubs verbose"
211 +# use-flag permashift, pinplugin tmp droped
212 +COMMON_DEPEND="
213 + virtual/jpeg:*
214 + sys-libs/libcap
215 + >=media-libs/fontconfig-2.4.2
216 + >=media-libs/freetype-2"
217 +DEPEND="${COMMON_DEPEND}
218 + >=virtual/linuxtv-dvb-headers-5.3"
219 +RDEPEND="${COMMON_DEPEND}
220 + dev-lang/perl
221 + media-tv/gentoo-vdr-scripts
222 + media-fonts/corefonts
223 + bidi? ( dev-libs/fribidi )
224 + systemd? ( sys-apps/systemd )"
225 +BDEPEND="sys-devel/gettext"
226 +
227 +# permashift, pinplugin tmp droped
228 +#REQUIRED_USE="pinplugin? ( !mainmenuhooks )"
229 +# permashift? ( !naludump !pinplugin )"
230 +
231 +CONF_DIR="/etc/vdr"
232 +CAP_FILE="${S}/capabilities.sh"
233 +CAPS="# Capabilities of the vdr-executable for use by startscript etc."
234 +
235 +pkg_setup() {
236 + use debug && append-flags -g
237 +
238 + PLUGIN_LIBDIR="/usr/$(get_libdir)/vdr/plugins"
239 +
240 + # use the corrected DIR /var/lib/vdr/* for acct/{user,group) handling
241 + if has_version ">=media-tv/gentoo-vdr-scripts-3.0_rc1"; then
242 + VIDEO_DIR="/var/lib/vdr/video"
243 + else
244 + VIDEO_DIR="/var/vdr/video"
245 + fi
246 +
247 + tc-export CC CXX AR
248 +}
249 +
250 +add_cap() {
251 + local arg
252 + for arg; do
253 + CAPS="${CAPS}\n${arg}=1"
254 + done
255 +}
256 +
257 +lang_po() {
258 + LING_PO=$( ls ${S}/po | sed -e "s:.po::g" | cut -d_ -f1 | tr \\\012 ' ' )
259 +}
260 +
261 +src_configure() {
262 + # support languages, written from right to left
263 + export "BIDI=$(usex bidi 1 0)"
264 + # systemd notification support
265 + export "SDNOTIFY=$(usex systemd 1 0)"
266 + # with/without keyboard
267 + export "USE_KBD=$(usex keyboard 1 0)"
268 + # detailed compile output for debug
269 + export "VERBOSE=$(usex verbose 1 0)"
270 +}
271 +
272 +src_prepare() {
273 + # apply maintenance-patches
274 + ebegin "Changing paths for gentoo"
275 +
276 + local DVBDIR=/usr/include
277 + local i
278 + for i in ${DVB_HEADER_PATH} /usr/include/v4l-dvb-hg /usr/include; do
279 + [[ -d ${i} ]] || continue
280 + if [[ -f ${i}/linux/dvb/dmx.h ]]; then
281 + einfo "Found DVB header files in ${i}"
282 + DVBDIR=${i}
283 + break
284 + fi
285 + done
286 +
287 + # checking for s2api headers
288 + local api_version
289 + api_version=$(awk -F' ' '/define DVB_API_VERSION / {print $3}' "${DVBDIR}"/linux/dvb/version.h)
290 + api_version=${api_version}*$(awk -F' ' '/define DVB_API_VERSION_MINOR / {print $3}' "${DVBDIR}"/linux/dvb/version.h)
291 +
292 + if [[ ${api_version:-0} -lt 5*3 ]]; then
293 + eerror "DVB header files do not contain s2api support or too old for ${P}"
294 + eerror "You cannot compile VDR against old dvb-header"
295 + die "DVB headers too old"
296 + fi
297 +
298 + cat > Make.config <<-EOT || die "cannot write to Make.config"
299 + #
300 + # Generated by ebuild ${PF}
301 + #
302 + PREFIX = /usr
303 + DVBDIR = ${DVBDIR}
304 + PLUGINLIBDIR = ${PLUGIN_LIBDIR}
305 + CONFDIR = ${CONF_DIR}
306 + ARGSDIR = \$(CONFDIR)/conf.d
307 + VIDEODIR = ${VIDEO_DIR}
308 + LOCDIR = \$(PREFIX)/share/locale
309 + INCDIR = \$(PREFIX)/include
310 +
311 + DEFINES += -DCONFDIR=\"\$(CONFDIR)\"
312 + INCLUDES += -I\$(DVBDIR)
313 +
314 + # >=vdr-1.7.36-r1; parameter only used for compiletime on vdr
315 + # PLUGINLIBDIR (plugin Makefile old) = LIBDIR (plugin Makefile new)
316 + LIBDIR = ${PLUGIN_LIBDIR}
317 + PCDIR = /usr/$(get_libdir)/pkgconfig
318 +
319 + EOT
320 + eend 0
321 +
322 + eapply "${FILESDIR}/${P}_gentoo.patch"
323 + use demoplugins || eapply "${FILESDIR}/vdr-2.4_remove_plugins.patch"
324 + eapply "${FILESDIR}/${P}_makefile-variables.patch"
325 +
326 + use naludump && eapply "${DISTDIR}/${PN}-2.1.5-naludump-0.1.diff"
327 +# tmp droped, use permashift && eapply "${DISTDIR}/${PN}-2.4-patch-for-permashift.diff"
328 +# tmp droped, use pinplugin && eapply "${WORKDIR}/${PN}-2.4.1_pinplugin.patch"
329 + use ttxtsubs && eapply "${WORKDIR}/${P}_ttxtsubs.patch"
330 + use menuorg && eapply "${DISTDIR}/vdr-menuorg-2.3.x.diff"
331 + use mainmenuhooks && eapply "${WORKDIR}/${PN}-2.4.1_mainmenuhook-1.0.1.patch"
332 +
333 + add_cap CAP_UTF8 \
334 + CAP_IRCTRL_RUNTIME_PARAM \
335 + CAP_VFAT_RUNTIME_PARAM \
336 + CAP_CHUID \
337 + CAP_SHUTDOWN_AUTO_RETRY
338 +
339 + echo -e ${CAPS} > "${CAP_FILE}" || die "cannot write to CAP_FILE"
340 +
341 + # LINGUAS support
342 + einfo "\n \t VDR supports the LINGUAS values"
343 +
344 + lang_po
345 +
346 + einfo "\t Please set one of this values in your sytem make.conf"
347 + einfo "\t LINGUAS=\"${LING_PO}\"\n"
348 +
349 + if [[ -z ${LINGUAS} ]]; then
350 + einfo "\n \t No values in LINGUAS="
351 + einfo "\t You will get only english text on OSD \n"
352 + fi
353 +
354 + strip-linguas ${LING_PO} en
355 +
356 + default
357 +}
358 +
359 +src_install() {
360 + # trick the makefile to not create a VIDEODIR by supplying it with an
361 + # existing directory
362 + emake VIDEODIR="/" DESTDIR="${ED}" install
363 +
364 + keepdir "${PLUGIN_LIBDIR}"
365 +
366 + # backup for plugins they don't be able to create this dir
367 + keepdir "${CONF_DIR}/plugins"
368 +
369 + if use html; then
370 + local HTML_DOCS=( *.html )
371 + fi
372 + local DOCS=( MANUAL INSTALL README* HISTORY CONTRIBUTORS UPDATE-2* )
373 + einstalldocs
374 +
375 + insinto /usr/share/vdr
376 + doins "${CAP_FILE}"
377 +
378 + fowners vdr:vdr "${CONF_DIR}" -R
379 +}
380 +
381 +pkg_postinst() {
382 + elog "Please read the /usr/share/doc/${PF}/UPDATE-2.4"
383 + elog "for major changes in this version\n"
384 +
385 + elog "It is a good idea to run vdrplugin-rebuild now.\n"
386 +
387 + elog "To get nice symbols in OSD we recommend to install"
388 + elog "\t1. emerge media-fonts/vdrsymbols-ttf"
389 + elog "\t2. select font VDRSymbolsSans in Setup\n"
390 +
391 + elog "To get an idea how to proceed now, have a look at our vdr-guide:"
392 + elog "\thttps://wiki.gentoo.org/wiki/VDR"
393 +}