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