Gentoo Archives: gentoo-commits

From: "Matthias Schwarzott (zzam)" <zzam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in media-video/vdr: ChangeLog vdr-1.4.7-r12.ebuild
Date: Sun, 29 Jun 2008 13:32:47
Message-Id: E1KCx1F-0000Oz-Jm@stork.gentoo.org
1 zzam 08/06/29 13:32:41
2
3 Modified: ChangeLog
4 Added: vdr-1.4.7-r12.ebuild
5 Log:
6 Added use-flag shutdown_rewrite to use the new shutdown code of vdr-1.5 and newer.
7 (Portage version: 2.2_rc1/cvs/Linux 2.6.25-tuxonice-r4 i686)
8
9 Revision Changes Path
10 1.118 media-video/vdr/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-video/vdr/ChangeLog?rev=1.118&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-video/vdr/ChangeLog?rev=1.118&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-video/vdr/ChangeLog?r1=1.117&r2=1.118
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/media-video/vdr/ChangeLog,v
19 retrieving revision 1.117
20 retrieving revision 1.118
21 diff -u -r1.117 -r1.118
22 --- ChangeLog 27 Jun 2008 13:09:00 -0000 1.117
23 +++ ChangeLog 29 Jun 2008 13:32:41 -0000 1.118
24 @@ -1,6 +1,12 @@
25 # ChangeLog for media-video/vdr
26 # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/media-video/vdr/ChangeLog,v 1.117 2008/06/27 13:09:00 zzam Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/media-video/vdr/ChangeLog,v 1.118 2008/06/29 13:32:41 zzam Exp $
29 +
30 +*vdr-1.4.7-r12 (29 Jun 2008)
31 +
32 + 29 Jun 2008; Matthias Schwarzott <zzam@g.o> +vdr-1.4.7-r12.ebuild:
33 + Added use-flag shutdown_rewrite to use the new shutdown code of vdr-1.5
34 + and newer.
35
36 *vdr-1.4.7-r11 (27 Jun 2008)
37
38
39
40
41 1.1 media-video/vdr/vdr-1.4.7-r12.ebuild
42
43 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-video/vdr/vdr-1.4.7-r12.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-video/vdr/vdr-1.4.7-r12.ebuild?rev=1.1&content-type=text/plain
45
46 Index: vdr-1.4.7-r12.ebuild
47 ===================================================================
48 # Copyright 1999-2008 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/media-video/vdr/vdr-1.4.7-r12.ebuild,v 1.1 2008/06/29 13:32:41 zzam Exp $
51
52 inherit eutils flag-o-matic multilib
53
54 IUSE_EXTENSIONS="cmdctrl cmdsubmenu cutterlimit cutterqueue cuttime ddepgentry
55 dolbyinrec dvbplayer dvbsetup dvdarchive dvdchapjump graphtft iptv
56 jumpplay liemikuutio livebuffer lnbshare mainmenuhooks menuorg noepg osdmaxitems pinplugin
57 rotor settime setup sortrecords sourcecaps submenu
58 subtitles switchtimer timercmd timerinfo validinput wareagleicon yaepg
59 syncearly dvlfriendlyfnames dvlrecscriptaddon dvlvidprefer hardlinkcutter
60 volctrl lircsettings deltimeshiftrec"
61
62 IUSE="debug vanilla shutdown_rewrite ${IUSE_EXTENSIONS}"
63
64 EXT_V="54"
65 EXT_P=VDR-Extensions-Patch-"${EXT_V}"
66 EXT_DIR="${WORKDIR}/${EXT_P}/"
67 # Set if != $PV
68 #EXT_VDR_PV=1.5.3
69
70 DESCRIPTION="Video Disk Recorder - turns a pc into a powerful set top box for DVB"
71 HOMEPAGE="http://www.cadsoft.de/vdr/"
72 SRC_URI="ftp://ftp.cadsoft.de/vdr/${P}.tar.bz2
73 http://www.zulu-entertainment.de/files/patches/${EXT_P}.tar.bz2"
74
75 #http://dev.gentoo.org/~zzam/extensions-patch/${EXT_P}.tar.bz2"
76
77 KEYWORDS="~amd64 ~ppc ~x86"
78 SLOT="0"
79 LICENSE="GPL-2"
80
81 COMMON_DEPEND="media-libs/jpeg
82 sys-libs/libcap"
83
84 DEPEND="${COMMON_DEPEND}
85 media-tv/linuxtv-dvb-headers
86 dev-util/unifdef"
87
88 RDEPEND="${COMMON_DEPEND}
89 dev-lang/perl
90 || ( >=media-tv/gentoo-vdr-scripts-0.4.2 media-tv/vdrplugin-rebuild )
91 >=media-tv/gentoo-vdr-scripts-0.3.5"
92
93 # pull in vdr-setup to get the xml files, else menu will not work
94 PDEPEND="setup? ( >=media-plugins/vdr-setup-0.3.1-r1 )"
95
96 # Relevant Pathes for vdr on gentoo
97 DVB_DIR=/usr/include
98 CONF_DIR=/etc/vdr
99 CAP_FILE="${S}"/capabilities.sh
100 CAPS="# Capabilities of the vdr-executable for use by startscript etc."
101
102 pkg_setup() {
103 check_menu_flags
104
105 use debug && append-flags -g
106 PLUGIN_LIBDIR="/usr/$(get_libdir)/vdr/plugins"
107 }
108
109 check_menu_flags () {
110
111 count=0
112
113 for flag in menuorg setup submenu; do
114 use $flag && count=$((count+1))
115 done
116
117 if [ $count -gt 1 ] ; then
118 echo
119 eerror "Please use only one of these USE-Flags"
120 eerror "submenu setup menuorg"
121 die "multiple menu manipulation"
122 fi
123 }
124
125 add_cap() {
126 local arg
127 for arg; do
128 CAPS="${CAPS}\n${arg}=1"
129 done
130 }
131
132 enable_patch() {
133 local arg ARG_UPPER
134 for arg; do
135 ARG_UPPER=$(echo $arg|tr '[:lower:]' '[:upper:]')
136 echo "${ARG_UPPER} = 1" >> Make.config
137 done
138 }
139
140 extensions_add_make_conf()
141 {
142 # copy all ifdef for extensions-patch to Make.config
143 sed -e '1,/need to touch the following:/d' \
144 -e '/ifdef DVBDIR/,/^$/d' \
145 Make.config.template >> Make.config
146 }
147
148 extensions_all_defines() {
149 # extract all possible settings for extensions-patch
150 sed -e '/^#\?[A-Z].*= 1/!d' -e 's/^#\?//' -e 's/ .*//' \
151 Make.config.template \
152 | sort \
153 | tr '[:upper:]' '[:lower:]'
154 }
155
156 extensions_all_defines_unset() {
157 # extract all possible settings for extensions-patch
158 # and convert them to -U... for unifdef
159 sed -e '/^#\?[A-Z].*= 1/!d' -e 's/^#\?/-UUSE_/' -e 's/ .*//' \
160 Make.config.template \
161 | tr '\n' ' '
162 }
163
164 do_unifdef() {
165 ebegin "Unifdef sources"
166 local mf="Makefile.get"
167 cat <<'EOT' > $mf
168 include Makefile
169 show_def:
170 @echo $(DEFINES)
171 show_src_files:
172 @echo $(OBJS:%.o=%.c)
173 EOT
174
175 local DEFINES=$(extensions_all_defines_unset)
176
177 local RAW_DEFINES=$(make -f "$mf" show_def)
178 local VDR_SRC_FILES="$(make -f "$mf" show_src_files)"
179 local KEEP_FILES="genfontfile.c $(echo font*.c)"
180 rm "$mf"
181
182 local def
183 for def in $RAW_DEFINES; do
184 case "${def}" in
185 -DUSE*)
186 DEFINES="${DEFINES} ${def}"
187 ;;
188 esac
189 done
190
191 local f
192 for f in *.c; do
193
194 # Removing the src files the Makefile does not use for compiling vdr
195 if ! has $f ${VDR_SRC_FILES} ${KEEP_FILES}; then
196 rm -f ${f} ${f%.c}.h
197 continue
198 fi
199
200 unifdef ${DEFINES} "$f" > "tmp.$f"
201 mv "tmp.$f" "$f"
202 done
203 for f in *.h; do
204 unifdef ${DEFINES} "$f" > "tmp.$f"
205 mv "tmp.$f" "$f"
206 [[ -s $f ]] || rm "$f"
207 done
208 eend 0
209 }
210
211 src_unpack() {
212
213 unpack ${A}
214 cd "${S}"
215
216 ebegin "Changing pathes for gentoo"
217
218 sed \
219 -e 's-ConfigDirectory = VideoDirectory;-ConfigDirectory = CONFDIR;-' \
220 -i vdr.c
221
222 cat > Make.config <<-EOT
223 #
224 # Generated by ebuild ${PF}
225 #
226 BINDIR = /usr/bin
227 MANDIR = /usr/share/man
228 DVBDIR = ${DVB_DIR}
229 PLUGINLIBDIR = ${PLUGIN_LIBDIR}
230 CONFDIR = ${CONF_DIR}
231 VIDEODIR = /var/vdr/video
232 HEADERDIR = /usr/include
233
234 DEFINES += -DCONFDIR=\"\$(CONFDIR)\"
235
236 EOT
237 eend 0
238
239 epatch "${FILESDIR}"/vdr-1.4.7-makefile-destdir.diff
240 epatch "${FILESDIR}"/vdr-1.4.7-makefile-install-header.diff
241
242 sed -i Makefile \
243 -e 's/runvdr//' \
244 -e 's/ install-plugins//'
245
246 if ! use vanilla; then
247
248 cd "${S}"
249 local fname="${PN}-${EXT_VDR_PV:-${PV}}_extensions.diff"
250 epatch "${EXT_DIR}/${fname}"
251
252 if use shutdown_rewrite; then
253 epatch "${EXT_DIR}/vdr-1.4.7-ext44_shutdown-rewrite.diff"
254 add_cap CAP_SHUTDOWN_AUTO_RETRY
255 else
256 epatch "${FILESDIR}/vdr-add-svdrp-down-0.1.diff"
257 add_cap CAP_SHUTDOWN_SVDRP
258 fi
259
260 epatch "${FILESDIR}/vdr-set-dumpable.diff"
261
262 # This allows us to start even if some plugin does not exist
263 # or is not loadable.
264 enable_patch PLUGINMISSING
265
266 # Patch necessary for media-plugins/vdr-reelchannelscan
267 # it does not change anything when plugin is not used
268 enable_patch CHANNELSCAN
269
270 if [[ -n ${VDR_MAINTAINER_MODE} ]]; then
271 einfo "Doing maintainer checks:"
272
273 # these patches we do not support
274 # (or have them already hard enabled)
275 local IGNORE_PATCHES="channelscan pluginapi pluginmissing"
276
277 extensions_all_defines > "${T}"/new.IUSE
278 echo $IUSE_EXTENSIONS $IGNORE_PATCHES|tr ' ' '\n' |sort > "${T}"/old.IUSE
279 local DIFFS=$(diff -u "${T}"/old.IUSE "${T}"/new.IUSE|grep '^[+-][^+-]')
280 if [[ -z ${DIFFS} ]]; then
281 einfo "IUSE_EXTENSIONS is up to date."
282 else
283 ewarn "IUSE differences!"
284 local diff
285 for diff in $DIFFS; do
286 ewarn "$diff"
287 done
288 fi
289 fi
290
291 ebegin "Enabling selected patches"
292 local flag
293 for flag in $IUSE_EXTENSIONS; do
294 use $flag && enable_patch ${flag}
295 done
296 eend 0
297
298 extensions_add_make_conf
299
300 ebegin "Make depend"
301 emake .dependencies >/dev/null || die "make depend failed"
302 eend 0
303
304 do_unifdef
305
306 use iptv && sed -i sources.conf -e 's/^#P/P/'
307 fi
308
309 # apply local patches defined by variable VDR_LOCAL_PATCHES_DIR
310 if test -n "${VDR_LOCAL_PATCHES_DIR}"; then
311 local dir_tmp_var
312 local LOCALPATCHES_SUBDIR=${PV}
313 for dir_tmp_var in allversions-fallback ${PV%_p*} ${PV} ; do
314 if [[ -d ${VDR_LOCAL_PATCHES_DIR}/${dir_tmp_var} ]]; then
315 LOCALPATCHES_SUBDIR="${dir_tmp_var}"
316 fi
317 done
318
319 echo
320 if [[ ${LOCALPATCHES_SUBDIR} == ${PV} ]]; then
321 einfo "Applying local patches"
322 else
323 einfo "Applying local patches (Using subdirectory: ${LOCALPATCHES_SUBDIR})"
324 fi
325
326 for LOCALPATCH in ${VDR_LOCAL_PATCHES_DIR}/${LOCALPATCHES_SUBDIR}/*.{diff,patch}; do
327 test -f "${LOCALPATCH}" && epatch "${LOCALPATCH}"
328 done
329 fi
330
331 if [[ -n "${VDRSOURCE_DIR}" ]]; then
332 cp -r "${S}" "${T}"/source-tree
333 fi
334
335 if ! use vanilla; then
336 add_cap CAP_IRCTRL_RUNTIME_PARAM \
337 CAP_VFAT_RUNTIME_PARAM \
338 CAP_CHUID
339
340 echo -e ${CAPS} > "${CAP_FILE}"
341 fi
342 }
343
344 src_install() {
345 # trick makefile not to create a videodir by supplying it with an existing
346 # directory
347 emake install DESTDIR="${D}" VIDEODIR="/" || die "emake install failed"
348
349 keepdir "${CONF_DIR}"/plugins
350 keepdir "${CONF_DIR}"/themes
351
352 keepdir "${PLUGIN_LIBDIR}"
353
354 dohtml *.html
355 dodoc MANUAL INSTALL README* HISTORY* CONTRIBUTORS
356
357 cd "${EXT_DIR}/docs" || die "Could not cd into extensions-patch doc dir."
358
359 local f
360 rm *vdr-1.5* 2>/dev/null
361 for f in *; do
362 [[ -f ${f} ]] || continue
363 newdoc "${f}" "${f}".ExtensionsPatch || die "Could not install extensions-patch doc ${f}"
364 done
365
366 cd "${S}"
367
368 insinto /usr/share/vdr
369 doins "${CAP_FILE}"
370
371 if [[ -n "${VDRSOURCE_DIR}" ]]; then
372 einfo "Installing sources"
373 insinto "${VDRSOURCE_DIR}/${P}"
374 doins -r "${T}"/source-tree/*
375 keepdir "${VDRSOURCE_DIR}/${P}"/PLUGINS/lib
376 fi
377
378 if use setup; then
379 insinto /usr/share/vdr/setup
380 doins "${S}/menu.c"
381 fi
382 chown -R vdr:vdr "${D}/${CONF_DIR}"
383 }
384
385 pkg_preinst() {
386 has_version "<${CATEGORY}/${PN}-1.3.36-r3"
387 previous_less_than_1_3_36_r3=$?
388 }
389
390 pkg_postinst() {
391 elog "It is a good idea to run vdrplugin-rebuild now."
392 if [[ $previous_less_than_1_3_36_r3 = 0 ]] ; then
393 ewarn "Upgrade Info:"
394 ewarn
395 ewarn "If you had used the use-flags lirc, rcu or vfat"
396 ewarn "then, you now have to enable the associated functionality"
397 ewarn "in /etc/conf.d/vdr"
398 ewarn
399 ewarn "vfat is now set with VFAT_FILENAMES."
400 ewarn "lirc/rcu are now set with IR_CTRL."
401 ebeep
402 fi
403
404 if use setup; then
405 if ! has_version media-plugins/vdr-setup || \
406 ! egrep -q '^setup$' "${ROOT}/etc/conf.d/vdr.plugins"; then
407
408 echo
409 ewarn "You have compiled media-video/vdr with USE=\"setup\""
410 ewarn "It is very important to emerge media-plugins/vdr-setup now!"
411 ewarn "and you have to loaded it in /etc/conf.d/vdr.plugins"
412 fi
413 fi
414
415 local keysfound=0
416 local key
417 local warn_keys="JumpFwd JumpRew JumpFwdSlow JumpRewSlow"
418 local remote_file="${ROOT}"/etc/vdr/remote.conf
419
420 if [[ -e ${remote_file} ]]; then
421 for key in ${warn_keys}; do
422 if grep -q -i "\.${key} " "${remote_file}"; then
423 keysfound=1
424 break
425 fi
426 done
427 if [[ ${keysfound} == 1 ]]; then
428 ewarn "Your /etc/vdr/remote.conf contains keys which are no longer usable"
429 ewarn "Please remove these keys or vdr will not start:"
430 ewarn "# ${warn_keys}"
431 fi
432 fi
433 elog "To get an idea how to proceed now, have a look at our vdr-guide:"
434 elog "\thttp://www.gentoo.org/doc/en/vdr-guide.xml"
435 }
436
437
438
439 --
440 gentoo-commits@l.g.o mailing list