diff options
author | Jörg Bornkessel <hd_brummy@gentoo.org> | 2007-09-12 08:31:37 +0000 |
---|---|---|
committer | Jörg Bornkessel <hd_brummy@gentoo.org> | 2007-09-12 08:31:37 +0000 |
commit | ae0f88c862e2ada753f0cef176217f52bb5f760a (patch) | |
tree | 3178541ba760cbc53dc3f9d9b1662478a074b111 /media-video/vdr | |
parent | media-video:vdr 29 new use-flags for new vdr patchset added (diff) | |
download | gentoo-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/ChangeLog | 13 | ||||
-rw-r--r-- | media-video/vdr/files/digest-vdr-1.4.7-r4 | 6 | ||||
-rw-r--r-- | media-video/vdr/files/extensions-patch-32-plugin-link-error.diff | 21 | ||||
-rw-r--r-- | media-video/vdr/files/vdr-1.4.7-makefile-destdir.diff | 55 | ||||
-rw-r--r-- | media-video/vdr/files/vdr-1.4.7-makefile-install-header.diff | 35 | ||||
-rw-r--r-- | media-video/vdr/files/vdr-add-svdrp-down-0.1.diff | 76 | ||||
-rw-r--r-- | media-video/vdr/files/vdr-set-dumpable.diff | 16 | ||||
-rw-r--r-- | media-video/vdr/vdr-1.4.7-r4.ebuild | 356 |
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 +} |