summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJörg Bornkessel <hd_brummy@gentoo.org>2007-09-12 08:31:37 +0000
committerJörg Bornkessel <hd_brummy@gentoo.org>2007-09-12 08:31:37 +0000
commitae0f88c862e2ada753f0cef176217f52bb5f760a (patch)
tree3178541ba760cbc53dc3f9d9b1662478a074b111 /media-video/vdr
parentmedia-video:vdr 29 new use-flags for new vdr patchset added (diff)
downloadgentoo-2-ae0f88c862e2ada753f0cef176217f52bb5f760a.tar.gz
gentoo-2-ae0f88c862e2ada753f0cef176217f52bb5f760a.tar.bz2
gentoo-2-ae0f88c862e2ada753f0cef176217f52bb5f760a.zip
versions bump; new patchset handling and a lot of new use-flags up from this version
(Portage version: 2.1.2.12)
Diffstat (limited to 'media-video/vdr')
-rw-r--r--media-video/vdr/ChangeLog13
-rw-r--r--media-video/vdr/files/digest-vdr-1.4.7-r46
-rw-r--r--media-video/vdr/files/extensions-patch-32-plugin-link-error.diff21
-rw-r--r--media-video/vdr/files/vdr-1.4.7-makefile-destdir.diff55
-rw-r--r--media-video/vdr/files/vdr-1.4.7-makefile-install-header.diff35
-rw-r--r--media-video/vdr/files/vdr-add-svdrp-down-0.1.diff76
-rw-r--r--media-video/vdr/files/vdr-set-dumpable.diff16
-rw-r--r--media-video/vdr/vdr-1.4.7-r4.ebuild356
8 files changed, 577 insertions, 1 deletions
diff --git a/media-video/vdr/ChangeLog b/media-video/vdr/ChangeLog
index dcc37dbc9dc3..db2e64d09b5d 100644
--- a/media-video/vdr/ChangeLog
+++ b/media-video/vdr/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for media-video/vdr
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/vdr/ChangeLog,v 1.85 2007/09/11 19:06:48 zzam Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/vdr/ChangeLog,v 1.86 2007/09/12 08:31:36 hd_brummy Exp $
+
+*vdr-1.4.7-r4 (12 Sep 2007)
+
+ 12 Sep 2007; Joerg Bornkessel <hd_brummy@gentoo.org>
+ +files/vdr-add-svdrp-down-0.1.diff,
+ +files/vdr-1.4.7-makefile-destdir.diff,
+ +files/vdr-1.4.7-makefile-install-header.diff,
+ +files/extensions-patch-32-plugin-link-error.diff,
+ +files/vdr-set-dumpable.diff, +vdr-1.4.7-r4.ebuild:
+ versions bump; new patchset handling and a lot of new use-flags up from this
+ version
11 Sep 2007; Matthias Schwarzott <zzam@gentoo.org> vdr-1.4.6.ebuild:
Marked stable on x86.
diff --git a/media-video/vdr/files/digest-vdr-1.4.7-r4 b/media-video/vdr/files/digest-vdr-1.4.7-r4
new file mode 100644
index 000000000000..1e76514e6361
--- /dev/null
+++ b/media-video/vdr/files/digest-vdr-1.4.7-r4
@@ -0,0 +1,6 @@
+MD5 7888a22b1fa0c8bd7b5922c57c164cbe VDR-Extensions-Patch-32.tar.bz2 217019
+RMD160 43ec5662a51885589ecc37594b3806342b8e1698 VDR-Extensions-Patch-32.tar.bz2 217019
+SHA256 7d2caea7b47cc8eeb86b2539fea1dfeae1d0ec32d5162756f59c0ec6efb45ab1 VDR-Extensions-Patch-32.tar.bz2 217019
+MD5 81be33a0edb93288ca3d235a04107ec4 vdr-1.4.7.tar.bz2 560888
+RMD160 0e7a0d1cf133ee5e168afb6e2374e2ee6c229fcf vdr-1.4.7.tar.bz2 560888
+SHA256 9e9f3687efc135d890cf8d70068221e661fea21d1efd7d8dc74bc4e810d4a464 vdr-1.4.7.tar.bz2 560888
diff --git a/media-video/vdr/files/extensions-patch-32-plugin-link-error.diff b/media-video/vdr/files/extensions-patch-32-plugin-link-error.diff
new file mode 100644
index 000000000000..ff3a021881d2
--- /dev/null
+++ b/media-video/vdr/files/extensions-patch-32-plugin-link-error.diff
@@ -0,0 +1,21 @@
+--- vdr-1.4.7_extensions.diff 2007-06-24 12:12:15.000000000 +0200
++++ vdr-1.4.7_extensions-linking.diff 2007-07-05 12:51:06.000000000 +0200
+@@ -7987,6 +7987,18 @@
+ dlls.Add(new cDll(buffer, Args));
+ free(buffer);
+ free(s);
++@@ -328,7 +336,11 @@ bool cPluginManager::LoadPlugins(bool Lo
++ {
++ for (cDll *dll = dlls.First(); dll; dll = dlls.Next(dll)) {
++ if (!dll->Load(Log))
+++#ifdef USE_PLUGINMISSING
+++ ;
+++#else
++ return false;
+++#endif /* PLUGINMISSING */
++ }
++ return true;
++ }
+ diff -ruN vdr-1.4.7/rcontroller.c vdr-1.4.7-extensions/rcontroller.c
+ --- vdr-1.4.7/rcontroller.c 1970-01-01 01:00:00.000000000 +0100
+ +++ vdr-1.4.7-extensions/rcontroller.c 2007-06-24 12:25:13.000000000 +0200
diff --git a/media-video/vdr/files/vdr-1.4.7-makefile-destdir.diff b/media-video/vdr/files/vdr-1.4.7-makefile-destdir.diff
new file mode 100644
index 000000000000..c01a18967cb1
--- /dev/null
+++ b/media-video/vdr/files/vdr-1.4.7-makefile-destdir.diff
@@ -0,0 +1,55 @@
+Index: vdr-1.4.7/Makefile
+===================================================================
+--- vdr-1.4.7.orig/Makefile
++++ vdr-1.4.7/Makefile
+@@ -24,6 +24,7 @@ PLUGINDIR= ./PLUGINS
+ PLUGINLIBDIR= $(PLUGINDIR)/lib
+
+ VIDEODIR = /video
++CONFDIR = $(VIDEODIR)
+
+ DOXYGEN = /usr/bin/doxygen
+ DOXYFILE = Doxyfile
+@@ -200,30 +201,31 @@ install: install-bin install-conf instal
+ # VDR binary:
+
+ install-bin: vdr
+- @mkdir -p $(BINDIR)
+- @cp --remove-destination vdr runvdr $(BINDIR)
++ @mkdir -p $(DESTDIR)$(BINDIR)
++ @cp --remove-destination vdr runvdr svdrpsend.pl $(DESTDIR)$(BINDIR)
+
+ # Configuration files:
+
+ install-conf:
+- @if [ ! -d $(VIDEODIR) ]; then\
+- mkdir -p $(VIDEODIR);\
+- cp *.conf $(VIDEODIR);\
++ @mkdir -p $(DESTDIR)$(VIDEODIR)
++ @if [ ! -d $(DESTDIR)$(CONFDIR) ]; then\
++ mkdir -p $(DESTDIR)$(CONFDIR);\
++ cp *.conf $(DESTDIR)$(CONFDIR);\
+ fi
+
+ # Documentation:
+
+ install-doc:
+- @mkdir -p $(MANDIR)/man1
+- @mkdir -p $(MANDIR)/man5
+- @gzip -c vdr.1 > $(MANDIR)/man1/vdr.1.gz
+- @gzip -c vdr.5 > $(MANDIR)/man5/vdr.5.gz
++ @mkdir -p $(DESTDIR)$(MANDIR)/man1
++ @mkdir -p $(DESTDIR)$(MANDIR)/man5
++ @gzip -c vdr.1 > $(DESTDIR)$(MANDIR)/man1/vdr.1.gz
++ @gzip -c vdr.5 > $(DESTDIR)$(MANDIR)/man5/vdr.5.gz
+
+ # Plugins:
+
+ install-plugins: plugins
+- @mkdir -p $(PLUGINLIBDIR)
+- @cp --remove-destination $(PLUGINDIR)/lib/lib*-*.so.$(APIVERSION) $(PLUGINLIBDIR)
++ @mkdir -p $(DESTDIR)$(PLUGINLIBDIR)
++ @cp --remove-destination $(PLUGINDIR)/lib/lib*-*.so.$(APIVERSION) $(DESTDIR)$(PLUGINLIBDIR)
+
+ # Source documentation:
+
diff --git a/media-video/vdr/files/vdr-1.4.7-makefile-install-header.diff b/media-video/vdr/files/vdr-1.4.7-makefile-install-header.diff
new file mode 100644
index 000000000000..9f6e8eb42bc5
--- /dev/null
+++ b/media-video/vdr/files/vdr-1.4.7-makefile-install-header.diff
@@ -0,0 +1,35 @@
+Index: vdr-1.4.7/Makefile
+===================================================================
+--- vdr-1.4.7.orig/Makefile
++++ vdr-1.4.7/Makefile
+@@ -19,6 +19,7 @@ MANDIR = /usr/local/man
+ BINDIR = /usr/local/bin
+ LIBS = -ljpeg -lpthread -ldl -lcap
+ INCLUDES =
++HEADERDIR = /usr/local/include
+
+ PLUGINDIR= ./PLUGINS
+ PLUGINLIBDIR= $(PLUGINDIR)/lib
+@@ -196,7 +197,7 @@ clean-plugins:
+
+ # Install the files:
+
+-install: install-bin install-conf install-doc install-plugins
++install: install-bin install-conf install-doc install-plugins install-header
+
+ # VDR binary:
+
+@@ -227,6 +228,13 @@ install-plugins: plugins
+ @mkdir -p $(DESTDIR)$(PLUGINLIBDIR)
+ @cp --remove-destination $(PLUGINDIR)/lib/lib*-*.so.$(APIVERSION) $(DESTDIR)$(PLUGINLIBDIR)
+
++# Header files:
++
++install-header:
++ @mkdir -p $(DESTDIR)$(HEADERDIR)/vdr $(DESTDIR)$(HEADERDIR)/vdr/libsi
++ @cp *.h Make.config $(DESTDIR)$(HEADERDIR)/vdr
++ @cp libsi/*.h $(DESTDIR)$(HEADERDIR)/vdr/libsi
++
+ # Source documentation:
+
+ srcdoc:
diff --git a/media-video/vdr/files/vdr-add-svdrp-down-0.1.diff b/media-video/vdr/files/vdr-add-svdrp-down-0.1.diff
new file mode 100644
index 000000000000..e8d7d63fc458
--- /dev/null
+++ b/media-video/vdr/files/vdr-add-svdrp-down-0.1.diff
@@ -0,0 +1,76 @@
+Written by Matthias Schwarzott <zzam@gentoo.org>
+
+
+GENTOO_USE: !shutdown_rewrite
+GENTOO_CAP: CAP_SHUTDOWN_SVDRP
+
+diff -ru --exclude='*.o' vdr-1.3.36-orig/svdrp.c vdr-1.3.36/svdrp.c
+--- vdr-1.3.36-orig/svdrp.c 2005-12-29 00:02:26.000000000 +0100
++++ vdr-1.3.36/svdrp.c 2005-12-29 00:18:45.000000000 +0100
+@@ -293,6 +293,9 @@
+ " Updates a timer. Settings must be in the same format as returned\n"
+ " by the LSTT command. If a timer with the same channel, day, start\n"
+ " and stop time does not yet exists, it will be created.",
++ "DOWN [ <minutes> ]\n"
++ " Starts an automatic shutdown (with 5 minutes waiting time) in given\n"
++ " minutes or now if no number was given.",
+ "VOLU [ <number> | + | - | mute ]\n"
+ " Set the audio volume to the given number (which is limited to the range\n"
+ " 0...255). If the special options '+' or '-' are given, the volume will\n"
+@@ -1342,6 +1345,16 @@
+ Reply(501, "Missing timer settings");
+ }
+
++extern time_t LastActivity;
++void cSVDRP::CmdDOWN(const char *Option)
++{
++ if (isnumber(Option))
++ LastActivity = time(NULL) - Setup.MinUserInactivity*60 + strtol(Option, NULL, 10)*60;
++ else
++ LastActivity = time(NULL) - Setup.MinUserInactivity*60;
++ Reply(250, "Automatic shutdown triggered");
++}
++
+ void cSVDRP::CmdVOLU(const char *Option)
+ {
+ if (*Option) {
+@@ -1413,6 +1426,7 @@
+ else if (CMD("STAT")) CmdSTAT(s);
+ else if (CMD("UPDT")) CmdUPDT(s);
+ else if (CMD("VOLU")) CmdVOLU(s);
++ else if (CMD("DOWN")) CmdDOWN(s);
+ else if (CMD("QUIT")) Close(true);
+ else Reply(500, "Command unrecognized: \"%s\"", Cmd);
+ }
+diff -ru --exclude='*.o' vdr-1.3.36-orig/svdrp.h vdr-1.3.36/svdrp.h
+--- vdr-1.3.36-orig/svdrp.h 2005-12-29 00:02:26.000000000 +0100
++++ vdr-1.3.36/svdrp.h 2005-12-30 02:28:08.000000000 +0100
+@@ -59,6 +59,7 @@
+ void CmdDELC(const char *Option);
+ void CmdDELR(const char *Option);
+ void CmdDELT(const char *Option);
++ void CmdDOWN(const char *Option);
+ void CmdEDIT(const char *Option);
+ void CmdGRAB(const char *Option);
+ void CmdHELP(const char *Option);
+diff -ru --exclude='*.o' vdr-1.3.36-orig/vdr.c vdr-1.3.36/vdr.c
+--- vdr-1.3.36-orig/vdr.c 2005-12-29 00:02:26.000000000 +0100
++++ vdr-1.3.36/vdr.c 2005-12-29 00:09:49.000000000 +0100
+@@ -89,6 +89,8 @@
+ exit(1);
+ }
+
++time_t LastActivity;
++
+ int main(int argc, char *argv[])
+ {
+ // Save terminal settings:
+@@ -395,7 +397,7 @@
+ int PreviousChannel[2] = { 1, 1 };
+ int PreviousChannelIndex = 0;
+ time_t LastChannelChanged = time(NULL);
+- time_t LastActivity = 0;
++ LastActivity = 0; // now being a global variable
+ time_t LastCamMenu = 0;
+ int MaxLatencyTime = 0;
+ bool ForceShutdown = false;
diff --git a/media-video/vdr/files/vdr-set-dumpable.diff b/media-video/vdr/files/vdr-set-dumpable.diff
new file mode 100644
index 000000000000..251eda35891a
--- /dev/null
+++ b/media-video/vdr/files/vdr-set-dumpable.diff
@@ -0,0 +1,16 @@
+Patch by Matthias Schwarzott <zzam@gentoo.org>
+
+diff -ru vdr-1.4.3-vanilla/vdr.c vdr-1.4.3/vdr.c
+--- vdr-1.4.3-vanilla/vdr.c 2006-10-12 18:04:50.000000000 +0200
++++ vdr-1.4.3/vdr.c 2006-10-12 18:05:41.000000000 +0200
+@@ -103,8 +103,8 @@
+ fprintf(stderr, "vdr: cannot set user id %u: %s\n", (unsigned int)user->pw_uid, strerror(errno));
+ return false;
+ }
+- if (prctl(PR_SET_DUMPABLE, 2, 0, 0, 0) < 0) {
+- fprintf(stderr, "vdr: warning - cannot set dumpable: %s\n", strerror(errno));
++ if (prctl(PR_SET_DUMPABLE, 1, 0, 0, 0) < 0) {
++ esyslog("vdr: warning - cannot set dumpable: %s", strerror(errno));
+ // always non-fatal, and will not work with kernel < 2.6.13
+ }
+ }
diff --git a/media-video/vdr/vdr-1.4.7-r4.ebuild b/media-video/vdr/vdr-1.4.7-r4.ebuild
new file mode 100644
index 000000000000..84476e16ce10
--- /dev/null
+++ b/media-video/vdr/vdr-1.4.7-r4.ebuild
@@ -0,0 +1,356 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/vdr/vdr-1.4.7-r4.ebuild,v 1.1 2007/09/12 08:31:36 hd_brummy Exp $
+
+inherit eutils flag-o-matic multilib
+
+IUSE_EXTENSIONS="cmdctrl cmdsubmenu cutterlimit cutterqueue cuttime ddepgentry
+ dolbyinrec dvbplayer dvbsetup dvdarchive dvdchapjump graphtft
+ jumpplay liemikuutio livebuffer lnbshare mainmenuhooks noepg osdmaxitems pinplugin
+ rotor settime setup sortrecords sourcecaps submenu
+ subtitles switchtimer timercmd timerinfo validinput wareagleicon yaepg
+ syncearly dvlfriendlyfnames dvlrecscriptaddon dvlvidprefer hardlinkcutter"
+
+IUSE="debug vanilla ${IUSE_EXTENSIONS}"
+
+EXT_V="32"
+EXT_P=VDR-Extensions-Patch-${EXT_V}
+EXT_DIR=${WORKDIR}/${EXT_P}/
+# Set if != $PV
+#EXT_VDR_PV=1.5.3
+
+DESCRIPTION="Video Disk Recorder - turns a pc into a powerful set top box for DVB"
+HOMEPAGE="http://www.cadsoft.de/vdr/"
+SRC_URI="ftp://ftp.cadsoft.de/vdr/${P}.tar.bz2
+ http://www.zulu-entertainment.de/files/patches/${EXT_P}.tar.bz2"
+
+KEYWORDS="~amd64 ~ppc ~x86"
+SLOT="0"
+LICENSE="GPL-2"
+
+
+DEPEND="media-libs/jpeg
+ sys-apps/gawk
+ media-tv/linuxtv-dvb-headers
+ sys-libs/libcap
+ dev-util/unifdef"
+
+RDEPEND="${DEPEND}
+ dev-lang/perl
+ media-tv/vdrplugin-rebuild
+ >=media-tv/gentoo-vdr-scripts-0.3.5"
+
+# pull in vdr-setup to get the xml files, else menu will not work
+PDEPEND="setup? ( >=media-plugins/vdr-setup-0.3.1-r1 )"
+
+# Relevant Pathes for vdr on gentoo
+DVB_DIR=/usr/include
+CONF_DIR=/etc/vdr
+CAP_FILE=${S}/capabilities.sh
+CAPS="# Capabilities of the vdr-executable for use by startscript etc."
+
+pkg_setup() {
+ use debug && append-flags -g
+ PLUGIN_LIBDIR="/usr/$(get_libdir)/vdr/plugins"
+}
+
+add_cap() {
+ while [ "$1" ]; do
+ CAPS="${CAPS}\n$1=1"
+ shift
+ done
+}
+
+enable_patch() {
+ local patch
+ while [ "$1" ]; do
+ patch="$1"
+ echo "$patch = 1" >> Make.config
+ shift
+ done
+}
+
+extensions_add_make_conf()
+{
+ # copy all ifdef for extensions-patch to Make.config
+ sed -e '1,/need to touch the following:/d' \
+ -e '/ifdef DVBDIR/,/^$/d' \
+ Make.config.template >> Make.config
+}
+
+extensions_all_defines() {
+ # extract all possible settings for extensions-patch
+ sed -e '/^#\?[A-Z].*= 1/!d' -e 's/^#\?//' -e 's/ .*//' \
+ Make.config.template \
+ | sort \
+ | tr '[:upper:]' '[:lower:]'
+}
+
+extensions_all_defines_unset() {
+ # extract all possible settings for extensions-patch
+ # and convert them to -U... for unifdef
+ sed -e '/^#\?[A-Z].*= 1/!d' -e 's/^#\?/-UUSE_/' -e 's/ .*//' \
+ Make.config.template \
+ | tr '\n' ' '
+}
+
+do_unifdef() {
+ ebegin "Unifdef sources"
+ local mf="Makefile.get"
+ cat <<'EOT' > $mf
+include Makefile
+show_def:
+ @echo $(DEFINES)
+show_src_files:
+ @echo $(OBJS:%.o=%.c)
+EOT
+
+ local DEFINES=$(extensions_all_defines_unset)
+
+ local RAW_DEFINES=$(make -f "$mf" show_def)
+ local VDR_SRC_FILES="$(make -f "$mf" show_src_files)"
+ local KEEP_FILES="genfontfile.c $(echo font*.c)"
+ rm "$mf"
+
+ local def
+ for def in $RAW_DEFINES; do
+ case "${def}" in
+ -DUSE*)
+ DEFINES="${DEFINES} ${def}"
+ ;;
+ esac
+ done
+
+ local f
+ for f in *.c; do
+
+ # Removing the src files the Makefile does not use for compiling vdr
+ if ! has $f ${VDR_SRC_FILES} ${KEEP_FILES}; then
+ rm -f ${f} ${f%.c}.h
+ continue
+ fi
+
+ unifdef ${DEFINES} "$f" > "tmp.$f"
+ mv "tmp.$f" "$f"
+ done
+ for f in *.h; do
+ unifdef ${DEFINES} "$f" > "tmp.$f"
+ mv "tmp.$f" "$f"
+ done
+ eend 0
+}
+
+src_unpack() {
+
+ unpack ${A}
+ cd ${S}
+
+ ebegin "Changing pathes for gentoo"
+
+ sed \
+ -e 's-ConfigDirectory = VideoDirectory;-ConfigDirectory = CONFDIR;-' \
+ -i vdr.c
+
+ cat > Make.config <<-EOT
+ #
+ # Generated by ebuild ${PF}
+ #
+ BINDIR = /usr/bin
+ MANDIR = /usr/share/man
+ DVBDIR = ${DVB_DIR}
+ PLUGINLIBDIR = ${PLUGIN_LIBDIR}
+ CONFDIR = ${CONF_DIR}
+ VIDEODIR = /var/vdr/video
+ HEADERDIR = /usr/include
+
+ DEFINES += -DCONFDIR=\"\$(CONFDIR)\"
+
+ EOT
+ eend 0
+
+ epatch "${FILESDIR}"/vdr-1.4.7-makefile-destdir.diff
+ epatch "${FILESDIR}"/vdr-1.4.7-makefile-install-header.diff
+
+ sed -i Makefile \
+ -e 's/runvdr//' \
+ -e 's/ install-plugins//'
+
+ if ! use vanilla; then
+
+ # changes to extensions-patch to be applicable to vdr-$PV
+ cd "${EXT_DIR}"
+ local LOCAL_EXT_CHANGES="${FILESDIR}/extensions-patch-${EXT_V}-vdr-${PV}.diff"
+ if [[ -f "${LOCAL_EXT_CHANGES}" ]]; then
+ epatch "${LOCAL_EXT_CHANGES}"
+ fi
+ epatch "${FILESDIR}/extensions-patch-32-plugin-link-error.diff"
+
+ cd "${S}"
+ epatch "${EXT_DIR}/${PN}-${EXT_VDR_PV:-${PV}}_extensions.diff"
+ #epatch "${FILESDIR}/${P}-gentoo-hardlinkcutter.diff"
+
+ epatch "${FILESDIR}/vdr-add-svdrp-down-0.1.diff"
+ add_cap CAP_SHUTDOWN_SVDRP
+
+ epatch "${FILESDIR}/vdr-set-dumpable.diff"
+
+ # This allows us to start even if some plugin does not exist
+ # or is not loadable.
+ enable_patch PLUGINMISSING
+
+ # Patch necessary for media-plugins/vdr-reelchannelscan
+ # it does not change anything when plugin is not used
+ enable_patch CHANNELSCAN
+
+ if [[ -n ${VDR_MAINTAINER_MODE} ]]; then
+ einfo "Doing maintainer checks:"
+
+ # these patches we do not support
+ # (or have them already hard enabled)
+ local IGNORE_PATCHES="channelscan pluginapi pluginmissing"
+
+ extensions_all_defines > ${T}/new.IUSE
+ echo $IUSE_EXTENSIONS $IGNORE_PATCHES|tr ' ' '\n' |sort > ${T}/old.IUSE
+ local DIFFS=$(diff -u ${T}/old.IUSE ${T}/new.IUSE|grep '^[+-][^+-]')
+ if [[ -z ${DIFFS} ]]; then
+ einfo "IUSE_EXTENSIONS is up to date."
+ else
+ ewarn "IUSE differences!"
+ local diff
+ for diff in $DIFFS; do
+ ewarn "$diff"
+ done
+ fi
+ fi
+
+ ebegin "Enabling selected patches"
+ local flag
+ for flag in $IUSE_EXTENSIONS; do
+ FLAG_UP=$(echo $flag|tr '[:lower:]' '[:upper:]')
+ use $flag && enable_patch ${FLAG_UP}
+ done
+ eend 0
+
+ extensions_add_make_conf
+
+ ebegin "Make fonts"
+ emake font >/dev/null
+ eend $? "make fonts failed"
+
+ ebegin "Make depend"
+ emake .dependencies >/dev/null
+ eend $? "make depend failed"
+
+ do_unifdef
+ fi
+
+ # apply local patches defined by variable VDR_LOCAL_PATCHES_DIR
+ if test -n "${VDR_LOCAL_PATCHES_DIR}"; then
+ local dir_tmp_var
+ local LOCALPATCHES_SUBDIR=${PV}
+ for dir_tmp_var in allversions-fallback ${PV%_p*} ${PV} ; do
+ if [[ -d ${VDR_LOCAL_PATCHES_DIR}/${dir_tmp_var} ]]; then
+ LOCALPATCHES_SUBDIR="${dir_tmp_var}"
+ fi
+ done
+
+ echo
+ if [[ ${LOCALPATCHES_SUBDIR} == ${PV} ]]; then
+ einfo "Applying local patches"
+ else
+ einfo "Applying local patches (Using subdirectory: ${LOCALPATCHES_SUBDIR})"
+ fi
+
+ for LOCALPATCH in ${VDR_LOCAL_PATCHES_DIR}/${LOCALPATCHES_SUBDIR}/*.{diff,patch}; do
+ test -f "${LOCALPATCH}" && epatch "${LOCALPATCH}"
+ done
+ fi
+
+ if [[ -n "${VDRSOURCE_DIR}" ]]; then
+ cp -r ${S} ${T}/source-tree
+ fi
+
+
+ if ! use vanilla; then
+ add_cap CAP_IRCTRL_RUNTIME_PARAM \
+ CAP_VFAT_RUNTIME_PARAM \
+ CAP_CHUID
+
+ echo -e ${CAPS} > ${CAP_FILE}
+ fi
+}
+
+src_install() {
+ emake install DESTDIR="${D}"
+
+ keepdir ${CONF_DIR}/plugins
+ keepdir ${CONF_DIR}/themes
+
+ keepdir "${PLUGIN_LIBDIR}"
+
+ dohtml *.html
+ dodoc MANUAL INSTALL README* HISTORY*
+ dodoc TODO-enAIO-rm CONTRIBUTORS
+ newdoc ${EXT_DIR}/README README.extensions-patch
+
+ insinto /usr/share/vdr
+ doins ${CAP_FILE}
+
+ if [[ -n "${VDRSOURCE_DIR}" ]]; then
+ einfo "Installing sources"
+ insinto ${VDRSOURCE_DIR}/${P}
+ doins -r ${T}/source-tree/*
+ keepdir ${VDRSOURCE_DIR}/${P}/PLUGINS/lib
+ fi
+
+ if use setup; then
+ insinto /usr/share/vdr/setup
+ doins ${S}/menu.c
+ fi
+ chown -R vdr:vdr ${D}/${CONF_DIR}
+}
+
+pkg_postinst() {
+ elog "It is a good idea to run vdrplugin-rebuild now"
+ if has_version "<media-video/vdr-1.3.36-r3"; then
+ ewarn "Upgrade Info:"
+ ewarn
+ ewarn "If you had used the use-flags lirc, rcu or vfat"
+ ewarn "then, you now have to enable the associated functionality"
+ ewarn "in /etc/conf.d/vdr"
+ ewarn
+ ewarn "vfat is now set with VFAT_FILENAMES."
+ ewarn "lirc/rcu are now set with IR_CTRL."
+ ebeep
+ fi
+
+ if use setup; then
+ if ! has_version media-plugins/vdr-setup || \
+ ! egrep -q '^setup$' "${ROOT}/etc/conf.d/vdr.plugins"; then
+
+ echo
+ ewarn "You have compiled media-video/vdr with USE=\"setup\""
+ ewarn "It is very important to emerge media-plugins/vdr-setup now!"
+ ewarn "and you have to loaded it in /etc/conf.d/vdr.plugins"
+ fi
+ fi
+
+ local keysfound=0
+ local key
+ local warn_keys="JumpFwd JumpRew JumpFwdSlow JumpRewSlow"
+ local remote_file=${ROOT}/etc/vdr/remote.conf
+
+ if [[ -e ${remote_file} ]]; then
+ for key in ${warn_keys}; do
+ if grep -q -i "\.${key} " "${remote_file}"; then
+ keysfound=1
+ break
+ fi
+ done
+ if [[ ${keysfound} == 1 ]]; then
+ ewarn "Your /etc/vdr/remote.conf contains keys which are no longer usable"
+ ewarn "Please remove these keys or vdr will not start:"
+ ewarn "# ${warn_keys}"
+ fi
+ fi
+}