diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-ddci2/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-ddci2/package.mk
new file mode 100644
index 0000000000..5f05a78442
--- /dev/null
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-ddci2/package.mk
@@ -0,0 +1,50 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2017-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="vdr-plugin-ddci2"
+PKG_VERSION="05dd988"
+PKG_SHA256="b8ed2787e9140eb00a68397eaeb14862ba88a6e73480dc3220a098faffb14833"
+PKG_ARCH="any"
+PKG_LICENSE="GPL"
+PKG_SITE="https://github.com/jasmin-j/vdr-plugin-ddci2"
+PKG_URL="https://github.com/jasmin-j/vdr-plugin-ddci2/archive/$PKG_VERSION.tar.gz"
+PKG_DEPENDS_TARGET="toolchain vdr"
+PKG_SECTION="multimedia"
+PKG_SHORTDESC="Support for stand alone CI by Digital Devices."
+PKG_LONGDESC="Support for stand alone CI by Digital Devices."
+PKG_TOOLCHAIN="manual"
+
+make_target() {
+ VDR_DIR=$(get_build_dir vdr)
+ export PKG_CONFIG_PATH=$VDR_DIR:$PKG_CONFIG_PATH
+ export CPLUS_INCLUDE_PATH=$VDR_DIR/include
+
+ make \
+ LIBDIR="." \
+ LOCDIR="./locale" \
+ all
+}
+
+post_make_target() {
+ VDR_DIR=$(get_build_dir vdr)
+ VDR_APIVERSION=`sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$/\1/p' $VDR_DIR/config.h`
+ LIB_NAME=lib${PKG_NAME/-plugin/}
+
+ cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
+ $STRIP libvdr-*.so*
+}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dummydevice/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dummydevice/package.mk
index 7ae984b706..be5a8b84b7 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dummydevice/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dummydevice/package.mk
@@ -1,19 +1,20 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-dummydevice"
@@ -26,8 +27,9 @@ PKG_URL="http://phivdr.dyndns.org/vdr/vdr-dummydevice/${PKG_NAME/-plugin/}-$PKG_
PKG_SOURCE_DIR="dummydevice-${PKG_VERSION}"
PKG_DEPENDS_TARGET="toolchain vdr"
PKG_SECTION="multimedia"
-PKG_SHORTDESC="vdr dummydevice plugin"
-PKG_LONGDESC="vdr dummydevice plugin"
+PKG_SHORTDESC="This plugin can be used to run vdr as recording server without any output devices."
+PKG_LONGDESC="This plugin can be used to run vdr as recording server without any output devices."
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -46,9 +48,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination ${LIB_NAME}.so ${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/package.mk
index 9b3e10b371..a5900196d8 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/package.mk
@@ -1,37 +1,34 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-dvbapi"
-PKG_VERSION="d7c7587"
-PKG_SHA256="2b85a086aedf55246c5e8ee7d41648318cbb77b49d00e638d20b0737e33d9451"
+PKG_VERSION="7d51cc4"
+PKG_SHA256="b16840574802581950343942559797aeccbc4a8fc216901ad0cea42f420bfd7c"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/manio/vdr-plugin-dvbapi"
PKG_URL="https://github.com/manio/vdr-plugin-dvbapi/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain vdr libdvbcsa"
PKG_SECTION="multimedia"
-PKG_SHORTDESC="TV"
-PKG_LONGDESC="TV"
-
-pre_make_target() {
- # dont build parallel
- MAKEFLAGS=-j1
-}
+PKG_SHORTDESC="VDR dvbapi plugin for use with OSCam"
+PKG_LONGDESC="VDR dvbapi plugin for use with OSCam"
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -51,9 +48,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-01_crosscompiling.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-01_crosscompiling.patch
index a249ffc18f..20d3a117f0 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-01_crosscompiling.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-01_crosscompiling.patch
@@ -1,5 +1,3 @@
-diff --git a/Makefile b/Makefile
-index d18b016..278af2b 100644
--- a/Makefile
+++ b/Makefile
@@ -156,7 +156,7 @@ libdvbapi-dvbufs9xx.so: device-ufs9xx.o
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-02-kernel-4.14-support.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-02-kernel-4.14-support.patch
deleted file mode 100644
index e7d288c77c..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-dvbapi/patches/vdr-plugin-dvbapi-02-kernel-4.14-support.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 7d51cc457823156d446d06c6ae40f850958fa735 Mon Sep 17 00:00:00 2001
-From: Mariusz Bialonczyk
-Date: Sat, 25 Nov 2017 18:57:08 +0100
-Subject: [PATCH] Fix compilation for kernels >= 4.14
-
-Closes #122
----
- CA.h | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/CA.h b/CA.h
-index 7130be6..019cd1c 100644
---- a/CA.h
-+++ b/CA.h
-@@ -9,4 +9,12 @@ typedef struct ca_descr_aes {
- unsigned char cw[16];
- } ca_descr_aes_t;
-
-+#ifndef CA_SET_PID /* removed in kernel 4.14 */
-+typedef struct ca_pid {
-+ unsigned int pid;
-+ int index; /* -1 == disable */
-+} ca_pid_t;
-+#define CA_SET_PID _IOW('o', 135, struct ca_pid)
- #endif
-+
-+#endif // __CA_H
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-eepg/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-eepg/package.mk
index c8f3bf2b84..05c89cf8e7 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-eepg/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-eepg/package.mk
@@ -1,32 +1,34 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-eepg"
-PKG_VERSION="9cd9a75"
-PKG_SHA256="b5c21e083a0d78251028de55dfb59b47df9db88cbbb811f39e913c2fb4e63ba6"
+PKG_VERSION="584d766"
+PKG_SHA256="0ad19af6bcfb5f7de05814dfcb4ab18bb4f705fdbe60b11ab7dbf72cf0d85231"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://projects.vdr-developer.org/projects/plg-eepg"
-PKG_URL="http://projects.vdr-developer.org/git/vdr-plugin-eepg.git/snapshot/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_URL="https://github.com/vdr-projects/vdr-plugin-eepg/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain vdr"
PKG_SECTION="multimedia"
PKG_SHORTDESC="vdr-plugin-eepg"
-PKG_LONGDESC="This plugin parses the Extended (2 to 10 day) EPG data which is send by providers on their portal channels. This EEPG data is transmitted in a non-standard format on a non-standard PID."
+PKG_LONGDESC="This plugin parses the Extended (2 to 10 day) EPG data which is send by providers on their portal channels."
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -45,9 +47,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/package.mk
index 5a0897c9f7..83e8e513e5 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/package.mk
@@ -1,32 +1,34 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-epgfixer"
PKG_VERSION="1ad4aaf"
-PKG_SHA256="032f0a0c238208e87c295d5fec04cdcf0fffe041e2245bc678811e1072a95b62"
+PKG_SHA256="b109c1040e54a2499c1d4c650d7f02cdc7b647af2133839af227a8496c58281e"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://projects.vdr-developer.org/projects/plg-epgfixer"
-PKG_URL="http://projects.vdr-developer.org/git/vdr-plugin-epgfixer.git/snapshot/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_URL="https://github.com/vdr-projects/vdr-plugin-epgfixer/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain vdr pcre"
PKG_SECTION="multimedia"
-PKG_SHORTDESC="vdr-plugin-epgfixer"
+PKG_SHORTDESC="Plugin for modifying EPG data using regular expressions."
PKG_LONGDESC="Plugin for modifying EPG data using regular expressions."
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -45,9 +47,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-pkgconfig.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-01-pkgconfig.patch
similarity index 60%
rename from packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-pkgconfig.patch
rename to packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-01-pkgconfig.patch
index 9ba62a07eb..1cf7526792 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-pkgconfig.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-01-pkgconfig.patch
@@ -1,6 +1,5 @@
-diff -Naur vdr-plugin-epgfixer-1ad4aaf/Makefile vdr-plugin-epgfixer-1ad4aaf.patch/Makefile
---- vdr-plugin-epgfixer-1ad4aaf/Makefile 2015-01-01 11:15:50.000000000 +0100
-+++ vdr-plugin-epgfixer-1ad4aaf.patch/Makefile 2016-01-07 04:40:37.742655989 +0100
+--- a/Makefile
++++ b/Makefile
@@ -70,8 +70,8 @@
OBJS = $(PLUGIN).o blacklist.o charset.o config.o epgclone.o epghandler.o regexp.o setup_menu.o tools.o
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-02-VDR-2.3.x-fix.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-02-VDR-2.3.x-fix.patch
new file mode 100644
index 0000000000..e436816cd9
--- /dev/null
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgfixer/patches/vdr-plugin-epgfixer-02-VDR-2.3.x-fix.patch
@@ -0,0 +1,132 @@
+patches taken from https://projects.vdr-developer.org/projects/plg-epgfixer/issues
+
+From: glenvt18
+Date: Tue, 24 May 2016 02:36:55 +0300
+Subject: [PATCH 1/2] Fix compiling against VDR >= 2.3.1
+
+--- a/epgclone.c
++++ b/epgclone.c
+@@ -49,9 +49,16 @@ void cEpgClone::CloneEvent(cEvent *Source, cEvent *Dest) {
+ Dest->SetSeen();
+ tChannelID channelID;
+ if (dest_num) {
++#if VDRVERSNUM >= 20301
++ LOCK_CHANNELS_READ;
++ const cChannel *dest_chan = Channels->GetByNumber(dest_num);
++ if (dest_chan)
++ channelID = Channels->GetByNumber(dest_num)->GetChannelID();
++#else
+ cChannel *dest_chan = Channels.GetByNumber(dest_num);
+ if (dest_chan)
+ channelID = Channels.GetByNumber(dest_num)->GetChannelID();
++#endif
+ else
+ channelID = tChannelID::InvalidID;
+ }
+diff --git a/setup_menu.c b/setup_menu.c
+index 8b60870..fcba6b1 100644
+--- a/setup_menu.c
++++ b/setup_menu.c
+@@ -264,9 +264,21 @@ eOSState cMenuSetupEpgfixer::ProcessKey(eKeys Key)
+ break;
+ case kBlue:
+ Skins.Message(mtInfo, tr("Clearing EPG data..."));
++#if VDRVERSNUM >= 20301
++ {
++ LOCK_TIMERS_WRITE;
++ LOCK_SCHEDULES_WRITE;
++ for (cTimer *Timer = Timers->First(); Timer; Timer = Timers->Next(Timer))
++ Timer->SetEvent(NULL);
++ for (cSchedule *Schedule = Schedules->First(); Schedule; Schedule = Schedules->Next(Schedule))
++ Schedule->Cleanup(INT_MAX);
++ }
++ cEitFilter::SetDisableUntil(time(NULL) + 10);
++#else
+ cEitFilter::SetDisableUntil(time(NULL) + 10);
+ if (cSchedules::ClearAll())
+ cEitFilter::SetDisableUntil(time(NULL) + 10);
++#endif
+ Skins.Message(mtInfo, NULL);
+ state = osContinue;
+ break;
+diff --git a/tools.c b/tools.c
+index 9c9133d..35c4b53 100644
+--- a/tools.c
++++ b/tools.c
+@@ -463,14 +463,26 @@ cAddEventThread::~cAddEventThread(void)
+ void cAddEventThread::Action(void)
+ {
+ SetPriority(19);
+- while (Running() && !LastHandleEvent.TimedOut()) {
++ for (; Running() && !LastHandleEvent.TimedOut(); cCondWait::SleepMs(10)) {
++ if (list->First() == NULL)
++ continue;
+ cAddEventListItem *e = NULL;
++#if VDRVERSNUM >= 20301
++ cStateKey StateKey;
++ cSchedules *schedules = cSchedules::GetSchedulesWrite(StateKey, 10);
++ LOCK_CHANNELS_READ;
++#else
+ cSchedulesLock SchedulesLock(true, 10);
+ cSchedules *schedules = (cSchedules *)cSchedules::Schedules(SchedulesLock);
++#endif
+ Lock();
+ while (schedules && (e = list->First()) != NULL) {
+ tChannelID chanid = e->GetChannelID();
++#if VDRVERSNUM >= 20301
++ const cChannel *chan = Channels->GetByChannelID(chanid);
++#else
+ cChannel *chan = Channels.GetByChannelID(chanid);
++#endif
+ if (!chan) {
+ error("Destination channel %s not found for cloning!", *chanid.ToString());
+ }
+@@ -485,7 +497,10 @@ void cAddEventThread::Action(void)
+ list->Del(e);
+ }
+ Unlock();
+- cCondWait::SleepMs(10);
++#if VDRVERSNUM >= 20301
++ if (schedules)
++ StateKey.Remove();
++#endif
+ }
+ }
+
+@@ -553,7 +568,12 @@ bool cListItem::IsActive(tChannelID ChannelID)
+ bool active = false;
+ if (numchannels > 0) {
+ int i = 0;
++#if VDRVERSNUM >= 20301
++ LOCK_CHANNELS_READ;
++ int channel_number = Channels->GetByChannelID(ChannelID)->Number();
++#else
+ int channel_number = Channels.GetByChannelID(ChannelID)->Number();
++#endif
+ while (i < numchannels) {
+ if ((channel_number == GetChannelNum(i)) ||
+ (GetChannelID(i) && (ChannelID == *GetChannelID(i)))) {
+
+From 12db9aadf7a05cae21bd7d75882b8883ac36205d Mon Sep 17 00:00:00 2001
+From: glenvt18
+Date: Thu, 18 May 2017 06:03:32 +0300
+Subject: [PATCH 2/2] Make compatible with VDR 2.3.4
+
+---
+ epghandler.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/epghandler.h b/epghandler.h
+index de090af..bf65760 100644
+--- a/epghandler.h
++++ b/epghandler.h
+@@ -15,6 +15,9 @@ class cEpgfixerEpgHandler : public cEpgHandler
+ {
+ public:
+ cEpgfixerEpgHandler(void) {};
++#if VDRVERSNUM >= 20304
++ virtual bool BeginSegmentTransfer(const cChannel *Channel, bool Dummy) { return true; }
++#endif
+ virtual bool HandleEvent(cEvent *Event);
+ virtual bool IgnoreChannel(const cChannel *Channel);
+ virtual bool FixEpgBugs(cEvent *Event);
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/package.mk
index c0b6c39c7f..6c82a94e46 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/package.mk
@@ -1,32 +1,34 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-epgsearch"
-PKG_VERSION="0b09f90"
-PKG_SHA256="2f50a784a01ef4c7c868b92b63a82b96296247eb148d757b31514a7887ebb534"
+PKG_VERSION="c7c02e2"
+PKG_SHA256="d8096c261cf94653f7487e7f89c9d38d8c2a5c27a766816b77fe0c49b4a82208"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://winni.vdr-developer.org/epgsearch/"
-PKG_URL="https://projects.vdr-developer.org/git/vdr-plugin-epgsearch.git/snapshot/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_URL="https://github.com/vdr-projects/vdr-plugin-epgsearch/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain vdr"
PKG_SECTION="multimedia"
-PKG_SHORTDESC="vdr-epgsearch"
-PKG_LONGDESC="vdr-epgsearch"
+PKG_SHORTDESC="EPGSearch is a plugin for the Video-Disc-Recorder (VDR)."
+PKG_LONGDESC="EPGSearch is a plugin for the Video-Disc-Recorder (VDR)."
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -45,9 +47,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/patches/vdr-plugin-epgsearch-01-pkgconfig.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/patches/vdr-plugin-epgsearch-01-pkgconfig.patch
index 4da0f3bcde..12a16937a8 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/patches/vdr-plugin-epgsearch-01-pkgconfig.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/patches/vdr-plugin-epgsearch-01-pkgconfig.patch
@@ -1,6 +1,5 @@
-diff -Naur vdr-epgsearch-29c174a/Makefile vdr-epgsearch-29c174a.patch/Makefile
---- vdr-epgsearch-29c174a/Makefile 2014-01-18 16:53:11.000000000 +0100
-+++ vdr-epgsearch-29c174a.patch/Makefile 2016-01-07 04:47:33.004326981 +0100
+--- a/Makefile
++++ b/Makefile
@@ -130,9 +130,8 @@
OBJS = afuzzy.o blacklist.o changrp.o confdloader.o conflictcheck.o conflictcheck_thread.o distance.o $(PLUGIN).o epgsearchcats.o epgsearchcfg.o epgsearchext.o epgsearchsetup.o epgsearchsvdrp.o epgsearchtools.o mail.o md5.o menu_announcelist.o menu_blacklistedit.o menu_blacklists.o menu_commands.o menu_conflictcheck.o menu_deftimercheckmethod.o menu_dirselect.o menu_event.o menu_favorites.o menu_main.o menu_myedittimer.o menu_quicksearch.o menu_recsdone.o menu_search.o menu_searchactions.o menu_searchedit.o menu_searchresults.o menu_searchtemplate.o menu_switchtimers.o menu_templateedit.o menu_timersdone.o menu_whatson.o noannounce.o pending_notifications.o rcfile.o recdone.o recstatus.o searchtimer_thread.o services.o switchtimer.o switchtimer_thread.o templatefile.o timer_thread.o timerdone.o timerstatus.o uservars.o varparser.o
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/patches/vdr-plugin-epgsearch-02_don-t-build-unused-plugins.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/patches/vdr-plugin-epgsearch-02_don-t-build-unused-plugins.patch
index 00e6a9ca8a..a21f4cfb40 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/patches/vdr-plugin-epgsearch-02_don-t-build-unused-plugins.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-epgsearch/patches/vdr-plugin-epgsearch-02_don-t-build-unused-plugins.patch
@@ -1,14 +1,6 @@
-From 61c795e71df00f4d3c22d2be405ceb0eb0e0e49c Mon Sep 17 00:00:00 2001
From: Stefan Saraev
-Date: Fri, 22 Nov 2013 21:45:56 +0200
Subject: [PATCH] don't build unused plugins
----
- Makefile | 6 +++---
- 1 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 118e379..5f15ebe 100644
--- a/Makefile
+++ b/Makefile
@@ -16,9 +16,9 @@
@@ -24,6 +16,4 @@ index 118e379..5f15ebe 100644
### edit this to '0' if you don't want epgsearch to auto config itself
AUTOCONFIG=1
---
-1.7.2.5
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-iptv/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-iptv/package.mk
index da0205cc50..d98b227b38 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-iptv/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-iptv/package.mk
@@ -1,24 +1,25 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-iptv"
-PKG_VERSION="2226be2"
-PKG_SHA256="8c8297a6834cc7104901b256a4b31dfb25f3956ce3c4837c7ffb8ddf0507d09b"
+PKG_VERSION="0fe1cb7"
+PKG_SHA256="34e5c950d6150bbf98ca733a216f67ff56e078dd1db511aee0edc026e431ee6f"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.saunalahti.fi/~rahrenbe/vdr/iptv/"
@@ -27,6 +28,7 @@ PKG_DEPENDS_TARGET="toolchain vdr curl"
PKG_SECTION="multimedia"
PKG_SHORTDESC="vdr-iptv: an IPTV plugin for the Video Disk Recorder (VDR)"
PKG_LONGDESC="vdr-iptv is an IPTV plugin for the Video Disk Recorder (VDR)"
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -45,9 +47,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-iptv/patches/vdr-plugin-iptv-pkgconfig.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-iptv/patches/vdr-plugin-iptv-pkgconfig.patch
index 3ea17f922e..89e45a8cd7 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-iptv/patches/vdr-plugin-iptv-pkgconfig.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-iptv/patches/vdr-plugin-iptv-pkgconfig.patch
@@ -1,6 +1,5 @@
-diff -Naur iptv-2.2.1/Makefile iptv-2.2.1.patch/Makefile
---- iptv-2.2.1/Makefile 2015-04-04 03:20:00.000000000 +0200
-+++ iptv-2.2.1.patch/Makefile 2016-01-07 07:37:31.037078104 +0100
+--- a/Makefile
++++ b/Makefile
@@ -54,7 +54,7 @@
### Libraries
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/package.mk
index 1f1d82c17b..9eba04fa7a 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/package.mk
@@ -1,33 +1,35 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-live"
-PKG_VERSION="0.3.0"
-PKG_SHA256="c200042e51393c247be97e7f4667a1f3f06319d5c8e538adca32fdfac8d178da"
+PKG_VERSION="e582514"
+PKG_SHA256="74deb2ca43ffb5779b3f9ff6f34c8b53898a226fcf92605d7ede0401cb62601c"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://live.vdr-developer.org/en/index.php"
-PKG_URL="http://live.vdr-developer.org/downloads/${PKG_NAME/-plugin/}-${PKG_VERSION}.tar.gz"
-PKG_SOURCE_DIR="live-${PKG_VERSION}"
+PKG_URL="https://github.com/vdr-projects/vdr-plugin-live/archive/$PKG_VERSION.tar.gz"
+PKG_SOURCE_DIR="$PKG_NAME-${PKG_VERSION}*"
PKG_DEPENDS_TARGET="toolchain vdr tntnet pcre:host pcre"
PKG_SECTION="multimedia"
PKG_SHORTDESC="vdr-live: the LIVE Interactive VDR Environment/"
PKG_LONGDESC="vdr-live allows a comfortable operation of VDR and some of its plugins trough a web interface"
+PKG_TOOLCHAIN="manual"
pre_configure_target() {
export CFLAGS="$CFLAGS -fPIC"
@@ -35,18 +37,15 @@ pre_configure_target() {
export LDFLAGS="$LDFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib/iconv"
}
-pre_make_target() {
- # dont build parallel
- MAKEFLAGS=-j1
-}
-
make_target() {
VDR_DIR=$(get_build_dir vdr)
+ export CPLUS_INCLUDE_PATH=$VDR_DIR/include
+ VDR_APIVERSION=`sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$/\1/p' $VDR_DIR/config.h`
+ LIB_NAME=lib${PKG_NAME/-plugin/}
+
make VDRDIR=$VDR_DIR \
LIBDIR="." \
LOCALEDIR="./locale"
-}
-makeinstall_target() {
- : # installation not needed, done by create-addon script
+ cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-04_tntnet-2.2-1.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-04_tntnet-2.2-1.patch
deleted file mode 100644
index 35d1c5a11a..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-04_tntnet-2.2-1.patch
+++ /dev/null
@@ -1,290 +0,0 @@
-commit 042724e30d5690ab67a6c04aea48a16b9a3b085b
-Author: Dieter Hametner
-Date: Fri May 3 01:37:41 2013 +0200
-
- Make LIVE compile and work with Tntnet and cxxtools version 2.2.
- Thanks to Tommi Mäkitalo for his help on resolving the issues.
- This problem was reported by Martin Gansser and by the user 'varas' in
- the bugtracker as bug #1351. This commit fixes that bug.
-
-diff --git a/pages/recordings.ecpp b/pages/recordings.ecpp
-index 51018bb..80f145b 100644
---- a/pages/recordings.ecpp
-+++ b/pages/recordings.ecpp
-@@ -205,7 +205,11 @@ for (recIter = recItems.begin(); recIter != recItems.end(); ++recIter) {
- <& rec_item_dir name=(recItem->Name()) level=(level) &>
- <%cpp>
- #if TNT_HAS_QUERYPARAMS
-+#if TNT_QUERYPARAMS_NO_BOOL
-+ tnt::QueryParams recItemParams(qparam);
-+#else
- tnt::QueryParams recItemParams(qparam, false);
-+#endif
- #else
- cxxtools::QueryParams recItemParams(qparam, false);
- #endif
-diff --git a/tntconfig.cpp b/tntconfig.cpp
-index 3a1fd14..3325776 100644
---- a/tntconfig.cpp
-+++ b/tntconfig.cpp
-@@ -3,7 +3,13 @@
- #include
- #include
- #include
-+#include "tntfeatures.h"
-+#if TNT_LOG_SERINFO
-+#include
-+#include
-+#else
- #include
-+#endif
- #include
- #include
- #include
-@@ -181,19 +187,67 @@ namespace vdrlive {
- #endif
-
- #if TNT_CONFIG_INTERNAL
-+ namespace {
-+ std::string GetResourcePath()
-+ {
-+#if APIVERSNUM > 10729
-+ string resourceDir(Plugin::GetResourceDirectory());
-+ return resourceDir;
-+#else
-+ string configDir(Plugin::GetConfigDirectory());
-+ return configDir;
-+#endif
-+ }
-+
-+ void MapUrl(tnt::Tntnet & app, const char *rule, const char * component, std::string const & instPath, const char * pathInfo, const char * mime_type)
-+ {
-+#if TNT_MAPURL_NAMED_ARGS
-+ tnt::Mapping::args_type argMap;
-+ argMap.insert(std::make_pair("mime-type", mime_type));
-+#endif
-+ app.mapUrl(rule, component)
-+ .setPathInfo(instPath + pathInfo)
-+#if TNT_MAPURL_NAMED_ARGS
-+ .setArgs(argMap);
-+#else
-+ .pushArg(mime_type);
-+#endif
-+ }
-+ }
-+
- void TntConfig::Configure(tnt::Tntnet& app) const
- {
- string const configDir(Plugin::GetConfigDirectory());
--#if APIVERSNUM > 10729
-- string const resourceDir(Plugin::GetResourceDirectory());
--#endif
-
-+#if TNT_LOG_SERINFO
-+ cxxtools::SerializationInfo si;
-+ std::istringstream logXmlConf(
-+ "\n"
-+ " " + LiveSetup().GetTntnetLogLevel() + "\n"
-+ " \n"
-+ " \n"
-+ " cxxtools\n"
-+ " " + LiveSetup().GetTntnetLogLevel() + "\n"
-+ " \n"
-+ " \n"
-+ " tntnet\n"
-+ " " + LiveSetup().GetTntnetLogLevel() + "\n"
-+ " \n"
-+ " \n"
-+ "\n"
-+ );
-+ cxxtools::xml::XmlDeserializer d(logXmlConf);
-+ d.deserialize(si);
-+ log_init(si);
-+#else
- std::istringstream logConf(
- "rootLogger=" + LiveSetup().GetTntnetLogLevel() + "\n"
- "logger.tntnet=" + LiveSetup().GetTntnetLogLevel() + "\n"
- "logger.cxxtools=" + LiveSetup().GetTntnetLogLevel() + "\n"
- );
-+
- log_init(logConf);
-+#endif
-
- // +++ CAUTION +++ CAUTION +++ CAUTION +++ CAUTION +++ CAUTION +++
- // ------------------------------------------------------------------------
-@@ -229,13 +283,12 @@ namespace vdrlive {
-
- // the following selects the theme specific 'theme.css' file
- // inserted by 'tadi' -- verified with above, but not counterchecked yet!
-- app.mapUrl("^/themes/([^/]*)/css.*/(.+\\.css)", "content")
--#if APIVERSNUM > 10729
-- .setPathInfo(resourceDir + "/themes/$1/css/$2")
--#else
-- .setPathInfo(configDir + "/themes/$1/css/$2")
--#endif
-- .pushArg("text/css");
-+ MapUrl(app,
-+ "^/themes/([^/]*)/css.*/(.+\\.css)",
-+ "content",
-+ GetResourcePath(),
-+ "/themes/$1/css/$2",
-+ "text/css");
-
- // the following rules provide a search scheme for images. The first
- // rule where a image is found, terminates the search.
-@@ -243,79 +296,82 @@ namespace vdrlive {
- // 2. /img/.
- // deprecated: 3. . (builtin images)
- // inserted by 'tadi' -- verified with above, but not counterchecked yet!
-- app.mapUrl("^/themes/([^/]*)/img.*/(.+)\\.(.+)", "content")
--#if APIVERSNUM > 10729
-- .setPathInfo(resourceDir + "/themes/$1/img/$2.$3")
--#else
-- .setPathInfo(configDir + "/themes/$1/img/$2.$3")
--#endif
-- .pushArg("image/$3");
-- app.mapUrl("^/themes/([^/]*)/img.*/(.+)\\.(.+)", "content")
--#if APIVERSNUM > 10729
-- .setPathInfo(resourceDir + "/img/$2.$3")
--#else
-- .setPathInfo(configDir + "/img/$2.$3")
--#endif
-- .pushArg("image/$3");
-+ MapUrl(app,
-+ "^/themes/([^/]*)/img.*/(.+)\\.(.+)",
-+ "content",
-+ GetResourcePath(),
-+ "/themes/$1/img/$2.$3",
-+ "image/$3");
-+
-+ MapUrl(app,
-+ "^/themes/([^/]*)/img.*/(.+)\\.(.+)",
-+ "content",
-+ GetResourcePath(),
-+ "/img/$2.$3",
-+ "image/$3");
- // deprecated: file << "MapUrl ^/themes/([^/]*)/img.*/(.+)\\.(.+) $2@" << endl;
-
- // Epg images
- string const epgImgPath(LiveSetup().GetEpgImageDir());
- if (!epgImgPath.empty()) {
- // inserted by 'tadi' -- verified with above, but not counterchecked yet!
-- app.mapUrl("^/epgimages/([^/]*)\\.([^./]+)", "content")
-- .setPathInfo(epgImgPath + "/$1.$2")
-- .pushArg("image/$2");
-+ MapUrl(app,
-+ "^/epgimages/([^/]*)\\.([^./]+)",
-+ "content",
-+ epgImgPath,
-+ "/$1.$2",
-+ "image/$2");
- }
-
- // select additional (not build in) javascript.
- // WARNING: no path components with '.' in the name are allowed. Only
- // the basename may contain dots and must end with '.js'
- // inserted by 'tadi' -- verified with above, but not counterchecked yet!
-- app.mapUrl("^/js(/[^.]*)([^/]*\\.js)", "content")
--#if APIVERSNUM > 10729
-- .setPathInfo(resourceDir + "/js$1$2")
--#else
-- .setPathInfo(configDir + "/js$1$2")
--#endif
-- .pushArg("text/javascript");
-+ MapUrl(app,
-+ "^/js(/[^.]*)([^/]*\\.js)",
-+ "content",
-+ GetResourcePath(),
-+ "/js$1$2",
-+ "text/javascript");
-
- // map to 'css/basename(uri)'
- // inserted by 'tadi' -- verified with above, but not counterchecked yet!
-- app.mapUrl("^/css.*/(.+)", "content")
--#if APIVERSNUM > 10729
-- .setPathInfo(resourceDir + "/css/$1")
--#else
-- .setPathInfo(configDir + "/css/$1")
--#endif
-- .pushArg("text/css");
-+ MapUrl(app,
-+ "^/css.*/(.+)",
-+ "content",
-+ GetResourcePath(),
-+ "/css/$1",
-+ "text/css");
-
- // map to 'img/basename(uri)'
- // inserted by 'tadi' -- verified with above, but not counterchecked yet!
-- app.mapUrl("^/img.*/(.+)\\.([^.]+)", "content")
--#if APIVERSNUM > 10729
-- .setPathInfo(resourceDir + "/img/$1.$2")
--#else
-- .setPathInfo(configDir + "/img/$1.$2")
--#endif
-- .pushArg("image/$2");
-+ MapUrl(app,
-+ "^/img.*/(.+)\\.([^.]+)",
-+ "content",
-+ GetResourcePath(),
-+ "/img/$1.$2",
-+ "image/$2");
-
- // Map favicon.ico into img directory
-- app.mapUrl("^/favicon.ico$", "content")
--#if APIVERSNUM > 10729
-- .setPathInfo(resourceDir + "/img/favicon.ico")
--#else
-- .setPathInfo(configDir + "/img/favicon.ico")
--#endif
-- .pushArg("image/x-icon");
-+ MapUrl(app,
-+ "^/favicon.ico$",
-+ "content",
-+ GetResourcePath(),
-+ "/img/favicon.ico",
-+ "image/x-icon");
-
- // takes first path components without 'extension' when it does not
- // contain '.'
- // modified by 'tadi' -- verified with above, but not counterchecked yet!
- app.mapUrl("^/([^./]+)(.*)?", "$1");
-
-+#if TNT_GLOBAL_TNTCONFIG
-+ tnt::TntConfig::it().sessionTimeout = 86400;
-+ tnt::TntConfig::it().defaultContentType = string("text/html; charset=") + LiveI18n().CharacterEncoding();
-+#else
- tnt::Sessionscope::setDefaultTimeout(86400);
- tnt::HttpReply::setDefaultContentType(string("text/html; charset=") + LiveI18n().CharacterEncoding());
-+#endif
-
- Setup::IpList const& ips = LiveSetup().GetServerIps();
- int port = LiveSetup().GetServerPort();
-diff --git a/tntfeatures.h b/tntfeatures.h
-index 6de1f88..76d3757 100644
---- a/tntfeatures.h
-+++ b/tntfeatures.h
-@@ -17,6 +17,9 @@
- // Query params are now in tntnet and not in cxxtools
- #define TNT_HAS_QUERYPARAMS (TNTVERSION >= 16060)
-
-+// Query params without boolean parameter
-+#define TNT_QUERYPARAMS_NO_BOOL (TNTVERSION >= 22000)
-+
- // One can request the host part of the request url
- #define TNT_HAS_GETHOST (TNTVERSION >= 16060)
-
-@@ -26,4 +29,13 @@
- // version of TNTNET that binds ipv6 addresses with IPV6_V6ONLY flag set to true
- #define TNT_IPV6_V6ONLY (CXXTOOLVER >= 21000)
-
-+// version of TNTNET with properties deserializer for logger configuration args.
-+#define TNT_LOG_SERINFO (CXXTOOLVER >= 22000)
-+
-+// version of TNTNET wich expects name, value mappings for Url-Mapper arguments.
-+#define TNT_MAPURL_NAMED_ARGS (TNTVERSION >= 22000)
-+
-+// version of TNTNET where configuration is global
-+#define TNT_GLOBAL_TNTCONFIG (TNTVERSION >= 22000)
-+
- #endif // VDR_LIVE_TNTFEATURES_H
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-04_tntnet-2.2-2.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-04_tntnet-2.2-2.patch
deleted file mode 100644
index 3b49c6b0a3..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-04_tntnet-2.2-2.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-commit 69f84f95fa875c6f562294b1a6a1ea6f584d3f6c
-Author: Dieter Hametner
-Date: Sat May 4 22:27:09 2013 +0200
-
- With tntnet v2.2 use also the request.getArg() function.
- In the previous commit support for tntnet 2.2 was added. The URL
- mapping changed in that version and allows now named arguments. This
- change makes uses of this feature now.
-
-diff --git a/pages/content.ecpp b/pages/content.ecpp
-index 27d827c..cde092f 100644
---- a/pages/content.ecpp
-+++ b/pages/content.ecpp
-@@ -17,7 +17,11 @@ bool logged_in(false);
-
- string mime("image/png");
- if (request.getArgsCount() > 0) {
-+#if TNT_MAPURL_NAMED_ARGS
-+ mime = request.getArg("mime-type");
-+#else
- mime = request.getArg(0);
-+#endif
- // dsyslog("vdrlive::content found mime arg (%s)", mime.c_str());
- }
- reply.setContentType(mime);
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-05_vdr-2.1.2-buildfix.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-05_vdr-2.1.2-buildfix.patch
deleted file mode 100644
index dd576b9e10..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-05_vdr-2.1.2-buildfix.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-commit 0f8a281027f852ed5968361bcb7420ed242d0476
-Author: Stefan Saraev
-Date: Sat Oct 19 22:15:14 2013 +0300
-
- vdr 2.1.2 buildfix
-
-diff --git a/pages/recordings.ecpp b/pages/recordings.ecpp
-index 80f145b..6da5285 100644
---- a/pages/recordings.ecpp
-+++ b/pages/recordings.ecpp
-@@ -79,7 +79,7 @@ for (deletions_type::const_iterator it = deletions.begin(); it != deletions.end(
- deletions.clear();
-
- int FreeMB, UsedMB;
--int Percent = VideoDiskSpace(&FreeMB, &UsedMB);
-+int Percent = cVideoDirectory::VideoDiskSpace(&FreeMB, &UsedMB);
- int Minutes = int(double(FreeMB) / MB_PER_MINUTE);
- int Hours = Minutes / 60;
- Minutes %= 60;
-diff --git a/recman.cpp b/recman.cpp
-index 6a2fc00..9ed88f0 100644
---- a/recman.cpp
-+++ b/recman.cpp
-@@ -112,7 +112,7 @@ namespace vdrlive {
- if (found == string::npos)
- return false;
-
-- string newname = string(VideoDirectory) + "/" + name + oldname.substr(found);
-+ string newname = string(cVideoDirectory::Name()) + "/" + name + oldname.substr(found);
-
- if (!MoveDirectory(oldname.c_str(), newname.c_str(), copy)) {
- esyslog("[LIVE]: renaming failed from '%s' to '%s'", oldname.c_str(), newname.c_str());
-diff --git a/tntconfig.cpp b/tntconfig.cpp
-index 3325776..161fdc4 100644
---- a/tntconfig.cpp
-+++ b/tntconfig.cpp
-@@ -279,7 +279,7 @@ namespace vdrlive {
- // inserted by 'tadi' -- not verified, not counterchecked yet!
- //app.mapUrl("^/vlc/(.+)", "static@tntnet")
- // .setPathInfo("/$1")
-- // .pushArg(string("DocumentRoot=") + VideoDirectory);
-+ // .pushArg(string("DocumentRoot=") + cVideoDirectory::Name());
-
- // the following selects the theme specific 'theme.css' file
- // inserted by 'tadi' -- verified with above, but not counterchecked yet!
-diff --git a/tools.cpp b/tools.cpp
-index c744d06..cb3529e 100644
---- a/tools.cpp
-+++ b/tools.cpp
-@@ -365,7 +365,7 @@ namespace vdrlive {
- stat(source.c_str(), &st1);
- stat(target.c_str(),&st2);
- if (!copy && (st1.st_dev == st2.st_dev)) {
-- if (!RenameVideoFile(source.c_str(), target.c_str())) {
-+ if (!cVideoDirectory::RenameVideoFile(source.c_str(), target.c_str())) {
- esyslog("[LIVE]: rename failed from %s to %s", source.c_str(), target.c_str());
- return false;
- }
-@@ -461,7 +461,7 @@ namespace vdrlive {
- size_t found = source.find_last_of(delim);
- if (found != std::string::npos) {
- source = source.substr(0, found);
-- while (source != VideoDirectory) {
-+ while (source != cVideoDirectory::Name()) {
- found = source.find_last_of(delim);
- if (found == std::string::npos)
- break;
-@@ -478,7 +478,7 @@ namespace vdrlive {
- size_t found = target.find_last_of(delim);
- if (found != std::string::npos) {
- target = target.substr(0, found);
-- while (target != VideoDirectory) {
-+ while (target != cVideoDirectory::Name()) {
- found = target.find_last_of(delim);
- if (found == std::string::npos)
- break;
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-06_dont-build-i18n.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-06_dont-build-i18n.patch
deleted file mode 100644
index 28ef9af0e0..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-0.3.0-06_dont-build-i18n.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From d95f6d719298b4586fc4b889612423be67b52e88 Mon Sep 17 00:00:00 2001
-From: Stefan Saraev
-Date: Mon, 16 Jun 2014 12:06:29 +0300
-Subject: [PATCH] dont build i18n
-
----
- Makefile | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index ab2f2b5..923d184 100644
---- a/Makefile
-+++ b/Makefile
-@@ -94,7 +94,7 @@ WEBLIBS = pages/libpages.a css/libcss.a javascript/libjavascript.a
-
- ### Default rules:
-
--all: libvdr-$(PLUGIN).so $(I18NTARG)
-+all: libvdr-$(PLUGIN).so
-
- .PHONY: all dist clean subdirs $(SUBDIRS) PAGES
-
---
-1.7.2.5
-
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-01-makefile.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-01-makefile.patch
new file mode 100644
index 0000000000..fab596fa69
--- /dev/null
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-01-makefile.patch
@@ -0,0 +1,36 @@
+--- a/Makefile
++++ b/Makefile
+@@ -11,7 +11,7 @@ PLUGIN := live
+ VERSION := $(shell grep '\#define LIVEVERSION ' setup.h | awk '{ print $$3 }' | sed -e 's/[";]//g')
+
+ ### Check for libpcre c++ wrapper
+-HAVE_LIBPCRECPP := $(shell pcre-config --libs-cpp)
++HAVE_LIBPCRECPP := $(shell pkg-config --libs libpcrecpp libpcre)
+
+ ### The directory environment:
+ # Use package data if installed...otherwise assume we're under the VDR source directory:
+@@ -37,18 +37,18 @@ APIVERSION := $(call PKGCFG,apiversion)
+ include global.mk
+
+ ### Determine tntnet and cxxtools versions:
+-TNTVERSION = $(shell tntnet-config --version | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
+-CXXTOOLVER = $(shell cxxtools-config --version | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
++TNTVERSION = $(shell pkg-config --modversion tntnet | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
++CXXTOOLVER = $(shell pkg-config --modversion cxxtools | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
+
+-CXXFLAGS += $(shell tntnet-config --cxxflags)
+-LIBS += $(shell tntnet-config --libs)
++CXXFLAGS += $(shell pkg-config --cflags tntnet)
++LIBS += $(shell pkg-config --libs tntnet)
+
+ ### Optional configuration features
+ PLUGINFEATURES :=
+ ifneq ($(HAVE_LIBPCRECPP),)
+ PLUGINFEATURES += -DHAVE_LIBPCRECPP
+- CXXFLAGS += $(shell pcre-config --cflags)
+- LIBS += $(HAVE_LIBPCRECPP)
++ CXXFLAGS += $(shell pkg-config --cflags libpcreposix libpcre)
++ LIBS += -Wl,-Bstatic $(HAVE_LIBPCRECPP) -Wl,-Bdynamic
+ endif
+
+ # -Wno-deprecated-declarations .. get rid of warning: ‘template class std::auto_ptr’ is deprecated
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-03-no-i18n.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-03-no-i18n.patch
new file mode 100644
index 0000000000..3d932b8164
--- /dev/null
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-03-no-i18n.patch
@@ -0,0 +1,11 @@
+--- a/Makefile
++++ b/Makefile
+@@ -98,7 +98,7 @@ SUBDIRS := $(WEB_DIR_PAGES) $(WEB_DIR_CSS) $(WEB_DIR_JAVA)
+
+ ### The main target:
+ .PHONY: all
+-all: lib i18n
++all: lib
+ @true
+
+ ### Implicit rules:
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc6.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc6.patch
deleted file mode 100644
index e26503659a..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc6.patch
+++ /dev/null
@@ -1,43 +0,0 @@
---- a/stdext.h.orig 2016-02-07 12:55:05.958100061 +0100
-+++ b/stdext.h 2016-02-07 12:56:49.583375455 +0100
-@@ -3,8 +3,38 @@
-
- #if __GNUC__ >= 4
-
--# include
--# include
-+#if __GNUC__ >= 6
-+
-+#include
-+#include
-+
-+namespace std {
-+namespace tr1 {
-+
-+ using std::bind;
-+ using std::shared_ptr;
-+ using std::weak_ptr;
-+
-+ namespace placeholders {
-+ using std::placeholders::_1;
-+ using std::placeholders::_2;
-+ using std::placeholders::_3;
-+ using std::placeholders::_4;
-+ using std::placeholders::_5;
-+ using std::placeholders::_6;
-+ using std::placeholders::_7;
-+ using std::placeholders::_8;
-+ using std::placeholders::_9;
-+ }
-+} // namespace tr1
-+} // namespace std
-+
-+#else
-+
-+ # include
-+ # include
-+
-+# endif
-
- #else
-
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc7.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc7.patch
deleted file mode 100644
index 5ec265a58e..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc7.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-part of patch from Jasmin Jessich
-https://github.com/jasmin-j/vdr-plugin-live/commit/b86560030911208be738163ecd0e48790c9317a1
-
---- a/pages/multischedule.ecpp 2017-05-11 18:13:21.359696377 +0200
-+++ b/pages/multischedule.ecpp 2017-05-11 18:15:13.777869558 +0200
-@@ -295,7 +295,7 @@
- cChannel* Channel = Channels.GetByNumber( chan );
- if ( ! Channel )
- continue;
-- if ( Channel->GroupSep() || Channel->Name() == '\0' )
-+ if ( Channel->GroupSep() || !Channel->Name() || !*Channel->Name() )
- continue;
- channel_names[ j ] = Channel->Name();
- channel_IDs[ j ] = Channel->GetChannelID();
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-pkgconfig.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-pkgconfig.patch
deleted file mode 100644
index 8f159d514a..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-pkgconfig.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-diff -Naur live-0.3.0/css/Makefile live-0.3.0.patch/css/Makefile
---- live-0.3.0/css/Makefile 2013-04-04 22:16:40.000000000 +0200
-+++ live-0.3.0.patch/css/Makefile 2016-01-07 06:49:35.954078949 +0100
-@@ -4,7 +4,7 @@
-
- ### Additional options to silence TNTNET warnings
- TNTFLAGS ?= -Wno-overloaded-virtual -Wno-unused-function
--TNTVERSION ?= $(shell tntnet-config --version | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-+TNTVERSION ?= $(shell pkg-config --modversion tntnet | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-
- ### The C++ compiler and options:
-
-diff -Naur live-0.3.0/httpd/Makefile live-0.3.0.patch/httpd/Makefile
---- live-0.3.0/httpd/Makefile 2013-04-04 22:16:40.000000000 +0200
-+++ live-0.3.0.patch/httpd/Makefile 2016-01-07 06:51:05.349223371 +0100
-@@ -3,7 +3,7 @@
-
- CXXFLAGS ?= -O2 -Woverloaded-virtual -Wall -fPIC
-
--CXXFLAGS += `tntnet-config --cxxflags`
-+CXXFLAGS += `pkg-config --cflags tntnet`
-
- ### Includes and Defines (add further entries here):
-
-diff -Naur live-0.3.0/javascript/Makefile live-0.3.0.patch/javascript/Makefile
---- live-0.3.0/javascript/Makefile 2013-04-04 22:16:40.000000000 +0200
-+++ live-0.3.0.patch/javascript/Makefile 2016-01-07 06:49:51.561104158 +0100
-@@ -4,7 +4,7 @@
-
- ### Additional options to silence TNTNET warnings
- TNTFLAGS ?= -Wno-overloaded-virtual -Wno-unused-function
--TNTVERSION ?= $(shell tntnet-config --version | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-+TNTVERSION ?= $(shell pkg-config --modversion tntnet | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-
- ### The C++ compiler and options:
-
-diff -Naur live-0.3.0/Makefile live-0.3.0.patch/Makefile
---- live-0.3.0/Makefile 2013-04-04 22:16:40.000000000 +0200
-+++ live-0.3.0.patch/Makefile 2016-01-07 06:48:29.683971910 +0100
-@@ -26,7 +26,7 @@
- LDFLAGS ?= -fPIC -g
-
- ### Check for libpcre c++ wrapper
--HAVE_LIBPCRECPP = $(shell pcre-config --libs-cpp)
-+HAVE_LIBPCRECPP = $(shell pkg-config --libs libpcrecpp libpcre)
-
- ### The directory environment:
-
-@@ -46,18 +46,18 @@
-
- APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
- I18NTARG = $(shell if [ `echo $(APIVERSION) | tr [.] [0]` -ge "10507" ]; then echo "i18n"; fi)
--TNTVERSION = $(shell tntnet-config --version | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
--CXXTOOLVER = $(shell cxxtools-config --version | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-+TNTVERSION = $(shell pkg-config --modversion tntnet | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-+CXXTOOLVER = $(shell pkg-config --modversion cxxtools | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
- TNTVERS7 = $(shell ver=$(TNTVERSION); if [ $$ver -ge "1606" ]; then echo "yes"; fi)
-
--CXXFLAGS += $(shell tntnet-config --cxxflags)
--LIBS += $(shell tntnet-config --libs)
-+CXXFLAGS += $(shell pkg-config --cflags tntnet)
-+LIBS += $(shell pkg-config --libs tntnet)
-
- ### Optional configuration features
- PLUGINFEATURES =
- ifneq ($(HAVE_LIBPCRECPP),)
- PLUGINFEATURES += -DHAVE_LIBPCRECPP
-- CXXFLAGS += $(shell pcre-config --cflags)
-+ CXXFLAGS += $(shell pkg-config --cflags libpcreposix libpcre)
- LIBS += $(HAVE_LIBPCRECPP)
- endif
-
-diff -Naur live-0.3.0/pages/Makefile live-0.3.0.patch/pages/Makefile
---- live-0.3.0/pages/Makefile 2013-04-04 22:16:40.000000000 +0200
-+++ live-0.3.0.patch/pages/Makefile 2016-01-07 06:50:04.234124627 +0100
-@@ -4,8 +4,8 @@
-
- ### Additional options to silence TNTNET warnings
- TNTFLAGS ?= -Wno-overloaded-virtual -Wno-unused-variable
--TNTVERSION ?= $(shell tntnet-config --version | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
--CXXTOOLVER ?= $(shell cxxtools-config --version | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-+TNTVERSION ?= $(shell pkg-config --modversion tntnet | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-+CXXTOOLVER ?= $(shell pkg-config --modversion cxxtools | sed -e's/\.//g' | sed -e's/pre.*//g' | awk '/^..$$/ { print $$1."000"} /^...$$/ { print $$1."00"} /^....$$/ { print $$1."0" } /^.....$$/ { print $$1 }')
-
- ### The C++ compiler and options:
-
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/package.mk
index ebfd88630e..36f89c45fa 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/package.mk
@@ -1,19 +1,20 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-restfulapi"
@@ -27,11 +28,7 @@ PKG_DEPENDS_TARGET="toolchain vdr cxxtools vdr-plugin-wirbelscan"
PKG_SECTION="multimedia"
PKG_SHORTDESC="vdr-plugin-restfulapi: the restful API for the VDR/"
PKG_LONGDESC="vdr-plugin-restfulapi allows to access many internals of the VDR via a restful API"
-
-pre_make_target() {
- # dont build parallel
- MAKEFLAGS=-j1
-}
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -51,9 +48,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-01-pkgconfig.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-01-pkgconfig.patch
new file mode 100644
index 0000000000..cb1d60d43a
--- /dev/null
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-01-pkgconfig.patch
@@ -0,0 +1,11 @@
+--- a/Makefile
++++ b/Makefile
+@@ -51,7 +51,7 @@ SOFILE = libvdr-$(PLUGIN).so
+
+ DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
+
+-LIBS += $(shell cxxtools-config --libs) -lcxxtools-http
++LIBS += $(shell pkg-config --libs cxxtools-http cxxtools)
+ CONFDIR = $(call PKGCFG,configdir)
+ PLGCONFDIR = $(CONFDIR)/plugins/$(PLUGIN)
+
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-02-webapp-path.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-02-webapp-path.patch
new file mode 100644
index 0000000000..c648449ccd
--- /dev/null
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-02-webapp-path.patch
@@ -0,0 +1,11 @@
+--- a/tools.cpp
++++ b/tools.cpp
+@@ -214,7 +214,7 @@ void Settings::initDefault()
+ SetIp((string)"0.0.0.0");
+ SetEpgImageDirectory((string)"/var/cache/vdr/epgimages");
+ SetChannelLogoDirectory((string)"/usr/share/vdr/channel-logos");
+- SetWebappDirectory((string)"/var/lib/vdr/plugins/restfulapi/webapp");
++ SetWebappDirectory((string)"/storage/.kodi/addons/service.multimedia.vdr-addon/res/plugins/restfulapi");
+ SetHeaders((string)"true");
+ webapp_filetypes_filename = "webapp_file_types.conf";
+ }
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-pkgconfig.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-pkgconfig.patch
deleted file mode 100644
index c0c9cf8512..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-restfulapi/patches/vdr-plugin-restfulapi-pkgconfig.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur vdr-plugin-restfulapi-0.2.1.4/Makefile vdr-plugin-restfulapi-0.2.1.4.patch/Makefile
---- vdr-plugin-restfulapi-0.2.1.4/Makefile 2015-03-18 23:12:01.000000000 +0100
-+++ vdr-plugin-restfulapi-0.2.1.4.patch/Makefile 2016-01-07 05:24:24.036888492 +0100
-@@ -49,7 +49,7 @@
-
- DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
-
--LIBS += $(shell cxxtools-config --libs) -lcxxtools-http
-+LIBS += $(shell pkg-config --libs cxxtools-http cxxtools)
- CONFDIR = $(call PKGCFG,configdir)
- PLGCONFDIR = $(CONFDIR)/plugins/$(PLUGIN)
-
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-robotv/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-robotv/package.mk
new file mode 100644
index 0000000000..22401f0993
--- /dev/null
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-robotv/package.mk
@@ -0,0 +1,45 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2017-present Team LibreELEC
+#
+# LibreELEC is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# LibreELEC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="vdr-plugin-robotv"
+PKG_VERSION="50d4bdc"
+PKG_SHA256="062489e55111f0ba2420463cc506865ac59b1c1d080b318cb81d58ec3f4fbd3f"
+PKG_ARCH="any"
+PKG_LICENSE="GPL"
+PKG_SITE="https://github.com/pipelka/roboTV"
+PKG_URL="https://github.com/pipelka/vdr-plugin-robotv/archive/$PKG_VERSION.tar.gz"
+PKG_DEPENDS_TARGET="toolchain vdr avahi"
+PKG_SECTION="multimedia"
+PKG_SHORTDESC="VDR server plugin for roboTV"
+PKG_LONGDESC="RoboTV is a Android TV based frontend for VDR"
+PKG_TOOLCHAIN="cmake"
+
+pre_configure_target() {
+ VDR_DIR=$(get_build_dir vdr)
+ export PKG_CONFIG_PATH=$VDR_DIR:$PKG_CONFIG_PATH
+ export CPLUS_INCLUDE_PATH=$VDR_DIR/include
+ export VDRDIR=$VDR_DIR
+}
+
+post_make_target() {
+ VDR_DIR=$(get_build_dir vdr)
+ VDR_APIVERSION=`sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$/\1/p' $VDR_DIR/config.h`
+ LIB_NAME=lib${PKG_NAME/-plugin/}
+
+ cp --remove-destination $PKG_BUILD/.$TARGET_NAME/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
+}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/package.mk
index 22e83aca4f..63be87bdfe 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/package.mk
@@ -1,24 +1,25 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-satip"
-PKG_VERSION="28cc3ca"
-PKG_SHA256="aa72e457472e81280b20c2e596b1993607254c86d4f8c5611fdd1d524400e32e"
+PKG_VERSION="82cf548"
+PKG_SHA256="f8669aa638e5960ea3d9f6e181beeb997078540be8641a2aaf52cc5badc79c23"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.saunalahti.fi/~rahrenbe/vdr/satip/"
@@ -27,6 +28,7 @@ PKG_DEPENDS_TARGET="toolchain vdr curl tinyxml"
PKG_SECTION="multimedia"
PKG_SHORTDESC="VDR-satip: SAT>IP plugin for VDR"
PKG_LONGDESC="This is an SAT>IP plugin for the Video Disk Recorder (VDR)."
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -46,9 +48,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-01-pkgconfig.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-01-pkgconfig.patch
index c7d7f4a3ab..e0c19f3a8d 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-01-pkgconfig.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-01-pkgconfig.patch
@@ -1,6 +1,5 @@
-diff -Naur satip-2.2.2/Makefile satip-2.2.2.patch/Makefile
---- satip-2.2.2/Makefile 2015-04-26 03:20:00.000000000 +0200
-+++ satip-2.2.2.patch/Makefile 2016-01-07 07:33:20.588462880 +0100
+--- a/Makefile
++++ b/Makefile
@@ -53,7 +53,7 @@
### Libraries
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-streamdev/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-streamdev/package.mk
index edbcc334d6..76db1bad7b 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-streamdev/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-streamdev/package.mk
@@ -1,32 +1,34 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-streamdev"
-PKG_VERSION="fc52e92"
-PKG_SHA256="4c231f0ce9bd2dcf45c330a7c9733e14f02002e4370b3eeff080f614ef227ed3"
+PKG_VERSION="e2a9b97"
+PKG_SHA256="adcc08ac19cf98122576bedf63be3396d8b81ee4196c00df0e25c9fb8b7e11b8"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://projects.vdr-developer.org/projects/plg-streamdev"
-PKG_URL="https://projects.vdr-developer.org/git/vdr-plugin-streamdev.git/snapshot/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_URL="https://github.com/vdr-projects/vdr-plugin-streamdev/archive/$PKG_VERSION.tar.gz"
PKG_DEPENDS_TARGET="toolchain vdr openssl"
PKG_SECTION="multimedia"
-PKG_SHORTDESC="TV"
-PKG_LONGDESC="TV"
+PKG_SHORTDESC="This PlugIn is a VDR implementation of Video Transfer and a basic HTTP Streaming Protocol."
+PKG_LONGDESC="This PlugIn is a VDR implementation of Video Transfer and a basic HTTP Streaming Protocol."
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -45,11 +47,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/server/${LIB_NAME}-server.so $PKG_BUILD/server/${LIB_NAME}-server.so.${VDR_APIVERSION}
cp --remove-destination $PKG_BUILD/client/${LIB_NAME}-client.so $PKG_BUILD/client/${LIB_NAME}-client.so.${VDR_APIVERSION}
-
- $STRIP client/libvdr-*.so*
- $STRIP server/libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-streamdev/patches/vdr-plugin-streamdev-01_4k_hevc_support.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-streamdev/patches/vdr-plugin-streamdev-01_4k_hevc_support.patch
index dcd664cec5..45b97824f6 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-streamdev/patches/vdr-plugin-streamdev-01_4k_hevc_support.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-streamdev/patches/vdr-plugin-streamdev-01_4k_hevc_support.patch
@@ -1,8 +1,7 @@
http://www.vdr-portal.de/board17-developer/board97-vdr-core/p1272182-rfc-h-265-frame-parser/#post1272182
-diff -ur streamdev-160321-1/server/livestreamer.c streamdev-160321/server/livestreamer.c
---- streamdev-160321-1/server/livestreamer.c 2016-03-21 11:41:52.000000000 +0100
-+++ streamdev-160321/server/livestreamer.c 2016-05-03 13:54:07.000000000 +0200
+--- a/server/livestreamer.c
++++ b/server/livestreamer.c
@@ -143,6 +143,8 @@
"ISO/IEC 14496-3 Audio with LATM transport syntax",
"0x12", "0x13", "0x14", "0x15", "0x16", "0x17", "0x18", "0x19", "0x1a",
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-vnsiserver/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-vnsiserver/package.mk
index edc7ecad09..3f3195c516 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-vnsiserver/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-vnsiserver/package.mk
@@ -1,24 +1,25 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-vnsiserver"
-PKG_VERSION="63d8151"
-PKG_SHA256="acc297c0cc9cd117c6de0b9f1fe0d9c02cd4e8e1abb66da4de34747460ec51e0"
+PKG_VERSION="31c8f71"
+PKG_SHA256="0ee419f6821c2cfb0a605a9afadaf2e1ae2a69f49d651a7aab4ea7008e913f11"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/FernetMenta/vdr-plugin-vnsiserver"
@@ -27,6 +28,7 @@ PKG_DEPENDS_TARGET="toolchain vdr"
PKG_SECTION="multimedia"
PKG_SHORTDESC="VDR plugin to handle Kodi clients."
PKG_LONGDESC="VDR plugin to handle Kodi clients."
+PKG_TOOLCHAIN="manual"
make_target() {
VDR_DIR=$(get_build_dir vdr)
@@ -45,9 +47,4 @@ post_make_target() {
LIB_NAME=lib${PKG_NAME/-plugin/}
cp --remove-destination $PKG_BUILD/${LIB_NAME}.so $PKG_BUILD/${LIB_NAME}.so.${VDR_APIVERSION}
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/package.mk
index 23758110c3..359f13bef6 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/package.mk
@@ -1,33 +1,35 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-wirbelscan"
-PKG_VERSION="0.0.9"
-PKG_SHA256="731137512de0047e7514f72b04c4e8f938c773ea7873c9281b5937e7413d2dc9"
+PKG_VERSION="2017.06.04"
+PKG_SHA256="c7a792c794fb98dd7f665e1be2271f4a1a957a26c017043fcd4dd8d8b7fd582b"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://wirbel.htpc-forum.de/wirbelscan/index2.html"
-PKG_URL="http://wirbel.htpc-forum.de/wirbelscan/${PKG_NAME/-plugin/}-$PKG_VERSION.tgz"
+PKG_URL="http://wirbel.htpc-forum.de/wirbelscan/${PKG_NAME/-plugin/}-dev-$PKG_VERSION.tgz"
PKG_SOURCE_DIR="wirbelscan-${PKG_VERSION}"
PKG_DEPENDS_TARGET="toolchain vdr"
PKG_SECTION="multimedia"
-PKG_SHORTDESC="TV"
-PKG_LONGDESC="TV"
+PKG_SHORTDESC="Performs a channel scans for DVB-T, DVB-C and DVB-S"
+PKG_LONGDESC="Performs a channel scans for DVB-T, DVB-C and DVB-S"
+PKG_TOOLCHAIN="manual"
pre_configure_target() {
export CFLAGS="$CFLAGS -fPIC"
@@ -37,11 +39,8 @@ pre_configure_target() {
make_target() {
VDR_DIR=$(get_build_dir vdr)
+ cp backup/Makefile.old Makefile
make VDRDIR=$VDR_DIR \
LIBDIR="." \
LOCALEDIR="./locale"
}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
-}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/patches/vdr-plugin-wirbelscan-01_fix-dvbs-scan.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/patches/vdr-plugin-wirbelscan-01_fix-dvbs-scan.patch
deleted file mode 100644
index 3e978b04cc..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/patches/vdr-plugin-wirbelscan-01_fix-dvbs-scan.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 2b6a0e4b41a082655516c3a276a4d74e7a61cd90 Mon Sep 17 00:00:00 2001
-From: Stefan Saraev
-Date: Mon, 2 Feb 2015 13:22:36 +0200
-Subject: [PATCH] fix dvbs scan
-
-using first channel freq from satellites.dat is not good.
----
- scanner.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/scanner.c b/scanner.c
-index 0c29ac2..25d6f8a 100644
---- a/scanner.c
-+++ b/scanner.c
-@@ -738,7 +738,7 @@ void cScanner::Action(void) {
- break;
- case SCAN_SATELLITE:
- aChannel->SetTransponderData(cSource::FromString(sat_list[this_channellist].source_id),
-- sat_list[this_channellist].items[0].intermediate_frequency,
-+ sat_list[this_channellist].items[channel].intermediate_frequency,
- sat_list[this_channellist].items[channel].symbol_rate,
- *ParamsToString('S',
- GetVDRPolarizationFromDVB(sat_list[this_channellist].items[0].polarization),
---
-1.7.10.4
-
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/patches/vdr-plugin-wirbelscan-02_fix-wirbelscancontrol.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/patches/vdr-plugin-wirbelscan-02_fix-wirbelscancontrol.patch
deleted file mode 100644
index e02eb7ad7d..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscan/patches/vdr-plugin-wirbelscan-02_fix-wirbelscancontrol.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 4708fdeab67cae81ee7211a306c6adf0bed24d3c Mon Sep 17 00:00:00 2001
-From: Stefan Saraev
-Date: Tue, 3 Feb 2015 18:19:17 +0200
-Subject: [PATCH] fix wirbelscancontrol
-
----
- common.c | 2 +-
- extended_frontend.h | 7 +++----
- menusetup.c | 2 +-
- 3 files changed, 5 insertions(+), 6 deletions(-)
-
-diff --git a/common.c b/common.c
-index 04a1e6e..40194d2 100644
---- a/common.c
-+++ b/common.c
-@@ -54,7 +54,7 @@ void cMySetup::InitSystems(void) {
- }
-
- if (DVB_Type >= SCAN_NO_DEVICE || ! systems[DVB_Type]) {
-- for (DVB_Type = scantype_t(SCAN_UNDEFINED + 1); DVB_Type < SCAN_NO_DEVICE; DVB_Type = scantype_t(DVB_Type + 1)) {
-+ for (DVB_Type = scantype_t(SCAN_TERRESTRIAL); DVB_Type < SCAN_NO_DEVICE; DVB_Type = scantype_t(DVB_Type + 1)) {
- if (systems[DVB_Type])
- break;
- }
-diff --git a/extended_frontend.h b/extended_frontend.h
-index 680594e..bcdb11f 100644
---- a/extended_frontend.h
-+++ b/extended_frontend.h
-@@ -152,13 +152,12 @@ typedef enum {
- * 20120107 wirbel
- */
- typedef enum {
-- SCAN_UNDEFINED,
-- SCAN_SATELLITE,
-- SCAN_CABLE,
- SCAN_TERRESTRIAL,
-- SCAN_TERRCABLE_ATSC, /* I dislike this mixture of terr and cable. fix later, as it leads to problems now. */
-+ SCAN_CABLE,
-+ SCAN_SATELLITE,
- SCAN_PVRINPUT,
- SCAN_PVRINPUT_FM,
-+ SCAN_TERRCABLE_ATSC, /* I dislike this mixture of terr and cable. fix later, as it leads to problems now. */
- SCAN_NO_DEVICE,
- SCAN_TRANSPONDER=999
- } scantype_t;
-diff --git a/menusetup.c b/menusetup.c
-index daeccb1..46087be 100644
---- a/menusetup.c
-+++ b/menusetup.c
-@@ -22,7 +22,7 @@
- using namespace COUNTRY;
-
- static const char * ScannerDesc = "wirbelscan scan thread";
--static const char * DVB_Types[] = {"NOTHING","DVB-S/S2","DVB-C","DVB-T/T2","ATSC","pvrinput","pvrinput FM", "no device found"};
-+static const char * DVB_Types[] = {"DVB-T/T2", "DVB-C", "DVB-S/S2", "pvrinput", "pvrinput FM", "ATSC", "no device found"};
-
- cMenuScanning * MenuScanning = NULL; // pointer to actual menu
- cScanner * Scanner = NULL;
---
-1.7.10.4
-
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/package.mk
index ff5574f0eb..d1828e6f39 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/package.mk
@@ -1,19 +1,20 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-wirbelscancontrol"
@@ -26,8 +27,9 @@ PKG_URL="http://wirbel.htpc-forum.de/wirbelscancontrol/${PKG_NAME/-plugin/}-$PKG
PKG_SOURCE_DIR="wirbelscancontrol-${PKG_VERSION}"
PKG_DEPENDS_TARGET="toolchain vdr vdr-plugin-wirbelscan"
PKG_SECTION="multimedia"
-PKG_SHORTDESC="TV"
-PKG_LONGDESC="TV"
+PKG_SHORTDESC="Adds menu entry for wirbelscan at VDR."
+PKG_LONGDESC="Adds menu entry for wirbelscan at VDR."
+PKG_TOOLCHAIN="manual"
pre_configure_target() {
export CFLAGS="$CFLAGS -fPIC"
@@ -46,7 +48,3 @@ make_target() {
LIBDIR="." \
LOCALEDIR="./locale"
}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
-}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/patches/vdr-plugin-wirbelscancontrol-01-dont-build-i18n.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/patches/vdr-plugin-wirbelscancontrol-01-dont-build-i18n.patch
index 09c1a7ac93..e457bbbe7f 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/patches/vdr-plugin-wirbelscancontrol-01-dont-build-i18n.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/patches/vdr-plugin-wirbelscancontrol-01-dont-build-i18n.patch
@@ -1,14 +1,6 @@
-From 60bb89fa8f5d29e72e06c68c0b48a374ac95d522 Mon Sep 17 00:00:00 2001
From: Stefan Saraev
-Date: Mon, 9 Jun 2014 22:04:41 +0300
Subject: [PATCH] dont build i18n
----
- Makefile | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index f3ae479..89e2970 100644
--- a/Makefile
+++ b/Makefile
@@ -73,7 +73,7 @@ UNCRUSTIFY_FILES = $(PLUGIN).c scanmenu.c scanmenu.h
@@ -20,6 +12,4 @@ index f3ae479..89e2970 100644
### Implicit rules:
---
-1.7.2.5
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/patches/vdr-plugin-wirbelscancontrol-02-vdr_2.3.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/patches/vdr-plugin-wirbelscancontrol-02-vdr_2.3.patch
new file mode 100644
index 0000000000..1c2f0379ec
--- /dev/null
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-wirbelscancontrol/patches/vdr-plugin-wirbelscancontrol-02-vdr_2.3.patch
@@ -0,0 +1,59 @@
+--- a/scanmenu.c
++++ b/scanmenu.c
+@@ -255,6 +255,9 @@
+ {
+ eOSState state = cOsdMenu::ProcessKey(Key);
+ int direction = 0;
++#if APIVERSNUM >= 20301
++ LOCK_CHANNELS_READ;
++#endif
+ switch (Key) {
+ case kLeft: direction = -1;
+ break;
+@@ -268,7 +271,11 @@
+ case SETSCAN:
+ osdstatus = SCANNING;
+ start = time(NULL);
++#if APIVERSNUM < 20301
+ channelcount0 = Channels.Count();
++#else
++ channelcount0 = Channels->Count();
++#endif
+ SetHelp(tr("Stop"), NULL, NULL, NULL);
+ TransferSetup();
+ PutCommand(CmdStartScan);
+@@ -655,7 +662,8 @@
+ sbuf = cString::sprintf("%s (%d%% transponders from scan list + %u queued)", buf, status.progress, status.nextTransponders);
+ ProgressBar->SetText(*sbuf);
+
+- if (TV1 && TV2 && TV3 && TV4 && TV5)
++#if APIVERSNUM < 20301
++ if (TV1 && TV2 && TV3 && TV4 && TV5) {
+ switch (Channels.Count() - channelcount0) {
+ default:;
+ case 5: TV5->SetText(Channels.GetByNumber(Channels.Count()-4)->Name());
+@@ -665,8 +673,23 @@
+ case 1: TV1->SetText(Channels.GetByNumber(Channels.Count()-0)->Name());
+ case 0:;
+ }
+-
++ }
+ sbuf = cString::sprintf("%s%d", tr("New channels: "), Channels.Count() - channelcount0);
++#else
++ LOCK_CHANNELS_READ;
++ if (TV1 && TV2 && TV3 && TV4 && TV5) {
++ switch (Channels->Count() - channelcount0) {
++ default:;
++ case 5: TV5->SetText(Channels->GetByNumber(Channels->Count()-4)->Name());
++ case 4: TV4->SetText(Channels->GetByNumber(Channels->Count()-3)->Name());
++ case 3: TV3->SetText(Channels->GetByNumber(Channels->Count()-2)->Name());
++ case 2: TV2->SetText(Channels->GetByNumber(Channels->Count()-1)->Name());
++ case 1: TV1->SetText(Channels->GetByNumber(Channels->Count()-0)->Name());
++ case 0:;
++ }
++ }
++ sbuf = cString::sprintf("%s%d", tr("New channels: "), Channels->Count() - channelcount0);
++#endif
+ if (CH) CH->SetText(*sbuf);
+
+ Display();
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/package.mk
index 4cab94fa61..fbe6b59c22 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/package.mk
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/package.mk
@@ -1,32 +1,34 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-plugin-xmltv2vdr"
-PKG_VERSION="b48e0bec"
-PKG_SHA256="280d6cf45e6727711b43eefffd5f04bac53f456e2e6e6b519990dd7fff03611d"
+PKG_VERSION="ec7bd92"
+PKG_SHA256="eacc91062095563d8adc93873b373ddb34b076a8c0a9e5a86f6220d1d5d892e9"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://projects.vdr-developer.org/projects/plg-xmltv2vdr"
-PKG_URL="http://projects.vdr-developer.org/git/vdr-plugin-xmltv2vdr.git/snapshot/${PKG_NAME}-${PKG_VERSION}.tar.gz"
+PKG_URL="https://github.com/vdr-projects/vdr-plugin-xmltv2vdr/archive/${PKG_VERSION}.tar.gz"
PKG_DEPENDS_TARGET="toolchain vdr sqlite curl libzip libxml2 libxslt enca pcre"
PKG_SECTION="multimedia"
-PKG_SHORTDESC="vdr-xmltv2vdr"
-PKG_LONGDESC="vdr-xmltv2vdr"
+PKG_SHORTDESC="xmltv2vdr imports data in xmltv format"
+PKG_LONGDESC="xmltv2vdr imports data in xmltv format"
+PKG_TOOLCHAIN="manual"
pre_configure_target() {
export CFLAGS="$CFLAGS -fPIC"
@@ -47,9 +49,4 @@ post_make_target() {
make -j1
cd -
$STRIP dist/epgdata2xmltv/epgdata2xmltv
- $STRIP libvdr-*.so*
-}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
}
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/patches/vdr-plugin-xmltv2vdr-01_dont-build-i18n.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/patches/vdr-plugin-xmltv2vdr-01_dont-build-i18n.patch
index 9949e94cb7..643d1f21a6 100644
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/patches/vdr-plugin-xmltv2vdr-01_dont-build-i18n.patch
+++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/patches/vdr-plugin-xmltv2vdr-01_dont-build-i18n.patch
@@ -1,14 +1,6 @@
-From c2121393b05a756266fe728f83eaddbd3755ce13 Mon Sep 17 00:00:00 2001
From: Stefan Saraev
-Date: Mon, 16 Jun 2014 12:14:33 +0300
Subject: [PATCH] dont build i18n
----
- Makefile | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index aa344a4..819b5b0 100644
--- a/Makefile
+++ b/Makefile
@@ -62,7 +62,7 @@ OBJS = $(PLUGIN).o soundex.o extpipe.o parse.o source.o import.o event.o setup.o
@@ -20,6 +12,4 @@ index aa344a4..819b5b0 100644
### Implicit rules:
---
-1.7.2.5
diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/patches/vdr-plugin-xmltv2vdr-gcc6.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/patches/vdr-plugin-xmltv2vdr-gcc6.patch
deleted file mode 100644
index 8b4e7cb19a..0000000000
--- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-xmltv2vdr/patches/vdr-plugin-xmltv2vdr-gcc6.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur a/import.cpp b/import.cpp
---- a/import.cpp 2016-08-23 15:16:10.362347074 +0100
-+++ b/import.cpp 2016-08-23 15:16:22.814431356 +0100
-@@ -250,7 +250,7 @@
- char *cImport::Add2Description(char *description, const char *Name, int Value)
- {
- char *value=NULL;
-- if (asprintf(&value,"%i",Value)==-1) return false;
-+ if (asprintf(&value,"%i",Value)==-1) return NULL;
- description = strcatrealloc(description,Name);
- description = strcatrealloc(description,": ");
- description = strcatrealloc(description,value);
diff --git a/packages/addons/addon-depends/vdr/package.mk b/packages/addons/addon-depends/vdr/package.mk
index 1ec4916f4c..7cd7aadd8f 100644
--- a/packages/addons/addon-depends/vdr/package.mk
+++ b/packages/addons/addon-depends/vdr/package.mk
@@ -1,33 +1,35 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2011 Anthony Nash (nash.ant@gmail.com)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr"
-PKG_VERSION="2.2.0"
-PKG_SHA256="7c259e1ed1f39d93d23df1d5d0f85dd2a1fa9ec1dadff79e5833e2ff3ebf6c4e"
+PKG_VERSION="2.3.8"
+PKG_SHA256="d871170ee90ef2fc6293eefb44262b82b2e1f00f934681c721da7bd30e45bf22"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.tvdr.de"
-PKG_URL="ftp://ftp.tvdr.de/vdr/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_URL="ftp://ftp.tvdr.de/vdr/Developer/$PKG_NAME-$PKG_VERSION.tar.bz2"
PKG_DEPENDS_TARGET="toolchain fontconfig freetype libcap libiconv libjpeg-turbo bzip2"
PKG_SECTION="multimedia"
PKG_SHORTDESC="vdr: A powerful DVB TV application"
PKG_LONGDESC="This project describes how to build your own digital satellite receiver and video disk recorder. It is based mainly on the DVB-S digital satellite receiver card, which used to be available from Fujitsu Siemens and the driver software developed by the LinuxTV project."
+PKG_TOOLCHAIN="manual"
post_unpack() {
rm -rf $PKG_BUILD/PLUGINS/src/skincurses
@@ -54,7 +56,3 @@ make_target() {
make vdr vdr.pc
make include-dir
}
-
-makeinstall_target() {
- : # installation not needed, done by create-addon script
-}
diff --git a/packages/addons/addon-depends/vdr/patches/vdr-10_decrease-channels.conf-autosave-delay.patch b/packages/addons/addon-depends/vdr/patches/vdr-01-decrease-channels.conf-autosave-delay.patch
similarity index 78%
rename from packages/addons/addon-depends/vdr/patches/vdr-10_decrease-channels.conf-autosave-delay.patch
rename to packages/addons/addon-depends/vdr/patches/vdr-01-decrease-channels.conf-autosave-delay.patch
index ecdf5f22bc..7b73d800e2 100644
--- a/packages/addons/addon-depends/vdr/patches/vdr-10_decrease-channels.conf-autosave-delay.patch
+++ b/packages/addons/addon-depends/vdr/patches/vdr-01-decrease-channels.conf-autosave-delay.patch
@@ -1,14 +1,6 @@
-From 973c66c3d4e7418e53932c719b4cb3345b38da9e Mon Sep 17 00:00:00 2001
From: Stefan Saraev
-Date: Sat, 12 Oct 2013 21:40:12 +0300
Subject: [PATCH] decrease channels.conf autosave delay
----
- vdr.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/vdr.c b/vdr.c
-index c63eeca..1fb0c57 100644
--- a/vdr.c
+++ b/vdr.c
@@ -74,7 +74,7 @@
@@ -20,6 +12,4 @@ index c63eeca..1fb0c57 100644
#define DEVICEREADYTIMEOUT 30 // seconds to wait until all devices are ready
#define MENUTIMEOUT 120 // seconds of user inactivity after which an OSD display is closed
#define TIMERCHECKDELTA 10 // seconds between checks for timers that need to see their channel
---
-1.7.2.5
diff --git a/packages/addons/addon-depends/vdr/patches/vdr-01_disable_ca_updates.patch b/packages/addons/addon-depends/vdr/patches/vdr-01_disable_ca_updates.patch
deleted file mode 100644
index 4f41d8ff1d..0000000000
--- a/packages/addons/addon-depends/vdr/patches/vdr-01_disable_ca_updates.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Nru vdr-1.7.15-vanilla/pat.c vdr-1.7.15-disable_ca_updates/pat.c
---- vdr-1.7.15-vanilla/pat.c 2010-06-06 19:11:15.000000000 +0300
-+++ vdr-1.7.15-disable_ca_updates/pat.c 2010-06-06 20:42:47.000000000 +0300
-@@ -490,6 +490,7 @@
- }
- if (Setup.UpdateChannels >= 2) {
- Channel->SetPids(Vpid, Ppid, Vtype, Apids, Atypes, ALangs, Dpids, Dtypes, DLangs, Spids, SLangs, Tpid);
-+ if (!cSource::IsType(Channel->Source(), 'I'))
- Channel->SetCaIds(CaDescriptors->CaIds());
- Channel->SetSubtitlingDescriptors(SubtitlingTypes, CompositionPageIds, AncillaryPageIds);
- }
diff --git a/packages/addons/addon-depends/vdr/patches/vdr-02-disable-logspam.patch b/packages/addons/addon-depends/vdr/patches/vdr-02-disable-logspam.patch
new file mode 100644
index 0000000000..fc08ebea6e
--- /dev/null
+++ b/packages/addons/addon-depends/vdr/patches/vdr-02-disable-logspam.patch
@@ -0,0 +1,29 @@
+remove logspam
+ERROR: no OSD provider available - using dummy OSD!
+
+--- a/osd.c
++++ b/osd.c
+@@ -2027,8 +2027,6 @@ cOsd *cOsdProvider::NewOsd(int Left, int Top, uint Level)
+ }
+ return Osd;
+ }
+- else
+- esyslog("ERROR: no OSD provider available - using dummy OSD!");
+ return new cOsd(Left, Top, 999); // create a dummy cOsd, so that access won't result in a segfault
+ }
+
+--- a/vdr.c
++++ b/vdr.c
+@@ -765,12 +765,6 @@ int main(int argc, char *argv[])
+ Folders.Load(AddDirectory(ConfigDirectory, "folders.conf"));
+ CamResponsesLoad(AddDirectory(ConfigDirectory, "camresponses.conf"), true);
+
+- if (!*cFont::GetFontFileName(Setup.FontOsd)) {
+- const char *msg = "no fonts available - OSD will not show any text!";
+- fprintf(stderr, "vdr: %s\n", msg);
+- esyslog("ERROR: %s", msg);
+- }
+-
+ // Recordings:
+
+ cRecordings::Update();
diff --git a/packages/addons/addon-depends/vdr/patches/vdr-20_Implement-H.265-frame-parser.patch b/packages/addons/addon-depends/vdr/patches/vdr-20_Implement-H.265-frame-parser.patch
deleted file mode 100644
index 444ea47111..0000000000
--- a/packages/addons/addon-depends/vdr/patches/vdr-20_Implement-H.265-frame-parser.patch
+++ /dev/null
@@ -1,148 +0,0 @@
-From ce4d2a08e6448b7bfab68b89a12a156ed3294a63 Mon Sep 17 00:00:00 2001
-From: Thomas Reufer
-Date: Mon, 28 Mar 2016 19:47:14 +0200
-Subject: [PATCH] Implement H.265 frame parser
-
----
- pat.c | 1 +
- remux.c | 84 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
- 2 files changed, 82 insertions(+), 3 deletions(-)
-
-diff --git a/pat.c b/pat.c
-index beb5609..bb7e5ae 100644
---- a/pat.c
-+++ b/pat.c
-@@ -439,6 +439,7 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
- case 1: // STREAMTYPE_11172_VIDEO
- case 2: // STREAMTYPE_13818_VIDEO
- case 0x1B: // H.264
-+ case 0x24: // H.265
- Vpid = esPid;
- Ppid = pmt.getPCRPid();
- Vtype = stream.getStreamType();
-diff --git a/remux.c b/remux.c
-index 6c07efc..fe87160 100644
---- a/remux.c
-+++ b/remux.c
-@@ -708,6 +708,7 @@ void cPatPmtParser::ParsePmt(const uchar *Data, int Length)
- case 0x01: // STREAMTYPE_11172_VIDEO
- case 0x02: // STREAMTYPE_13818_VIDEO
- case 0x1B: // H.264
-+ case 0x24: // H.265
- vpid = stream.getPid();
- vtype = stream.getStreamType();
- ppid = Pmt.getPCRPid();
-@@ -1204,16 +1205,16 @@ private:
- nutSequenceParameterSet = 7,
- nutAccessUnitDelimiter = 9,
- };
-- cTsPayload tsPayload;
- uchar byte; // holds the current byte value in case of bitwise access
- int bit; // the bit index into the current byte (-1 if we're not in bit reading mode)
- int zeroBytes; // the number of consecutive zero bytes (to detect 0x000003)
-- uint32_t scanner;
- // Identifiers written in '_' notation as in "ITU-T H.264":
- bool separate_colour_plane_flag;
- int log2_max_frame_num;
- bool frame_mbs_only_flag;
-- //
-+protected:
-+ cTsPayload tsPayload;
-+ uint32_t scanner;
- bool gotAccessUnitDelimiter;
- bool gotSequenceParameterSet;
- uchar GetByte(bool Raw = false);
-@@ -1430,6 +1431,81 @@ void cH264Parser::ParseSliceHeader(void)
- }
- }
-
-+// --- cH265Parser -----------------------------------------------------------
-+
-+class cH265Parser : public cH264Parser {
-+private:
-+ enum eNalUnitType {
-+ nutSliceSegmentTrailingN = 0,
-+ nutSliceSegmentTrailingR = 1,
-+ nutSliceSegmentTSAN = 2,
-+ nutSliceSegmentTSAR = 3,
-+ nutSliceSegmentSTSAN = 4,
-+ nutSliceSegmentSTSAR = 5,
-+ nutSliceSegmentRADLN = 6,
-+ nutSliceSegmentRADLR = 7,
-+ nutSliceSegmentRASLN = 8,
-+ nutSliceSegmentRASLR = 9,
-+ nutSliceSegmentBLAWLP = 16,
-+ nutSliceSegmentBLAWRADL = 17,
-+ nutSliceSegmentBLANLP = 18,
-+ nutSliceSegmentIDRWRADL = 19,
-+ nutSliceSegmentIDRNLP = 20,
-+ nutSliceSegmentCRANUT = 21,
-+ nutVideoParameterSet = 32,
-+ nutSequenceParameterSet = 33,
-+ nutPictureParameterSet = 34,
-+ nutAccessUnitDelimiter = 35,
-+ nutEndOfSequence = 36,
-+ nutEndOfBitstream = 37,
-+ nutFillerData = 38,
-+ nutPrefixSEI = 39,
-+ nutSuffixSEI = 40,
-+ nutNonVCLRes0 = 41,
-+ nutNonVCLRes3 = 44,
-+ nutUnspecified0 = 48,
-+ nutUnspecified7 = 55,
-+ };
-+public:
-+ cH265Parser(void);
-+ virtual int Parse(const uchar *Data, int Length, int Pid);
-+ };
-+
-+cH265Parser::cH265Parser(void) :
-+ cH264Parser()
-+{
-+}
-+
-+int cH265Parser::Parse(const uchar *Data, int Length, int Pid)
-+{
-+ newFrame = independentFrame = false;
-+ tsPayload.Setup(const_cast(Data), Length, Pid);
-+ if (TsPayloadStart(Data)) {
-+ tsPayload.SkipPesHeader();
-+ scanner = EMPTY_SCANNER;
-+ }
-+ for (;;) {
-+ scanner = (scanner << 8) | GetByte(true);
-+ if ((scanner & 0xFFFFFF00) == 0x00000100) { // NAL unit start
-+ uchar NalUnitType = (scanner >> 1) & 0x3F;
-+ GetByte(); // nuh_layer_id + nuh_temporal_id_plus1
-+ if (NalUnitType <= nutSliceSegmentRASLR || (NalUnitType >= nutSliceSegmentBLAWLP && NalUnitType <= nutSliceSegmentCRANUT)) {
-+ if (NalUnitType == nutSliceSegmentIDRWRADL || NalUnitType == nutSliceSegmentIDRNLP || NalUnitType == nutSliceSegmentCRANUT)
-+ independentFrame = true;
-+ if (GetBit()) { // first_slice_segment_in_pic_flag
-+ newFrame = true;
-+ tsPayload.Statistics();
-+ }
-+ break;
-+ }
-+ }
-+ if (tsPayload.AtPayloadStart() // stop at any new payload start to have the buffer refilled if necessary
-+ || tsPayload.Eof()) // or if we're out of data
-+ break;
-+ }
-+ return tsPayload.Used();
-+}
-+
- // --- cFrameDetector --------------------------------------------------------
-
- cFrameDetector::cFrameDetector(int Pid, int Type)
-@@ -1463,6 +1539,8 @@ void cFrameDetector::SetPid(int Pid, int Type)
- parser = new cMpeg2Parser;
- else if (type == 0x1B)
- parser = new cH264Parser;
-+ else if (type == 0x24)
-+ parser = new cH265Parser;
- else if (type == 0x04 || type == 0x06) // MPEG audio or AC3 audio
- parser = new cAudioParser;
- else if (type != 0)
---
-2.0.5
-
diff --git a/packages/addons/addon-depends/vdr/patches/vdr-30_fix-dvbname-segfault.patch b/packages/addons/addon-depends/vdr/patches/vdr-30_fix-dvbname-segfault.patch
deleted file mode 100644
index acb0392d08..0000000000
--- a/packages/addons/addon-depends/vdr/patches/vdr-30_fix-dvbname-segfault.patch
+++ /dev/null
@@ -1,41 +0,0 @@
---- vdr-2.2.0/dvbdevice.c.org 2015-01-14 13:09:19.000000000 +0100
-+++ vdr-2.2.0/dvbdevice.c 2016-06-25 15:50:40.619609021 +0200
-@@ -1089,6 +1089,17 @@
- NULL
- };
-
-+#define NUMDELIVERYSYSTEMNAMES (sizeof(DeliverySystemNames)/sizeof(*DeliverySystemNames)-1)
-+
-+const char *GetDeliverySystemName(int n)
-+{
-+ if (n < 0 || n >= NUMDELIVERYSYSTEMNAMES)
-+ return DeliverySystemNames[0];
-+
-+ return DeliverySystemNames[n];
-+}
-+
-+
- cDvbDevice::cDvbDevice(int Adapter, int Frontend)
- {
- adapter = Adapter;
-@@ -1185,9 +1196,9 @@
- {
- if (dvbTuner) {
- if (dvbTuner->FrontendType() != SYS_UNDEFINED)
-- return DeliverySystemNames[dvbTuner->FrontendType()];
-+ return GetDeliverySystemName(dvbTuner->FrontendType());
- if (numDeliverySystems)
-- return DeliverySystemNames[deliverySystems[0]]; // to have some reasonable default
-+ return GetDeliverySystemName(deliverySystems[0]); // to have some reasonable default
- }
- return "";
- }
-@@ -1318,7 +1329,7 @@
- if (numDeliverySystems > 0) {
- cString ds("");
- for (int i = 0; i < numDeliverySystems; i++)
-- ds = cString::sprintf("%s%s%s", *ds, i ? "," : "", DeliverySystemNames[deliverySystems[i]]);
-+ ds = cString::sprintf("%s%s%s", *ds, i ? "," : "", GetDeliverySystemName(deliverySystems[i]));
- cString ms("");
- if (frontendInfo.caps & FE_CAN_QPSK) { numModulations++; ms = cString::sprintf("%s%s%s", *ms, **ms ? "," : "", MapToUserString(QPSK, ModulationValues)); }
- if (frontendInfo.caps & FE_CAN_QAM_16) { numModulations++; ms = cString::sprintf("%s%s%s", *ms, **ms ? "," : "", MapToUserString(QAM_16, ModulationValues)); }
diff --git a/packages/addons/addon-depends/vdr/patches/vdr-40_caid-buffer-v3.patch b/packages/addons/addon-depends/vdr/patches/vdr-40_caid-buffer-v3.patch
deleted file mode 100644
index e695ae0fe8..0000000000
--- a/packages/addons/addon-depends/vdr/patches/vdr-40_caid-buffer-v3.patch
+++ /dev/null
@@ -1,153 +0,0 @@
-Description: dynamically resize buffer for caids
-Forwarded: yes
-Author: Lars Hanisch
-
-diff --git a/ci.c b/ci.c
-index ffc7ff7..8bfae23 100644
---- a/ci.c
-+++ b/ci.c
-@@ -25,6 +25,8 @@
- #include "skins.h"
- #include "tools.h"
-
-+#define CAID_BUFSIZE 1024
-+
- // Set these to 'true' for debug output:
- static bool DumpTPDUDataTransfer = false;
- static bool DebugProtocol = false;
-@@ -763,9 +765,12 @@ private:
- int transponder;
- int programNumber;
- int caSystemIds[MAXCASYSTEMIDS + 1]; // list is zero terminated!
-+ uint8_t *caDescriptors;
-+ int caBufSize;
- void AddCaDescriptors(int Length, const uint8_t *Data);
- public:
- cCiCaPmt(uint8_t CmdId, int Source, int Transponder, int ProgramNumber, const int *CaSystemIds);
-+ ~cCiCaPmt(void);
- uint8_t CmdId(void) { return cmdId; }
- void SetListManagement(uint8_t ListManagement);
- uint8_t ListManagement(void) { return capmt[0]; }
-@@ -784,8 +789,15 @@ cCiCaPmt::cCiCaPmt(uint8_t CmdId, int Source, int Transponder, int ProgramNumber
- caSystemIds[i] = CaSystemIds[i];
- }
- caSystemIds[i] = 0;
-- uint8_t caDescriptors[512];
-- int caDescriptorsLength = GetCaDescriptors(source, transponder, programNumber, caSystemIds, sizeof(caDescriptors), caDescriptors, 0);
-+ caBufSize = CAID_BUFSIZE;
-+ caDescriptors = new uint8_t[caBufSize];
-+ int caDescriptorsLength = GetCaDescriptors(source, transponder, programNumber, caSystemIds, caBufSize, caDescriptors, 0);
-+ if (caDescriptorsLength < 0) {
-+ delete [] caDescriptors;
-+ caBufSize = -caDescriptorsLength + 8;
-+ caDescriptors = new uint8_t[caBufSize];
-+ caDescriptorsLength = GetCaDescriptors(source, transponder, programNumber, caSystemIds, caBufSize, caDescriptors, 0);
-+ }
- length = 0;
- capmt[length++] = CPLM_ONLY;
- capmt[length++] = (ProgramNumber >> 8) & 0xFF;
-@@ -797,6 +809,11 @@ cCiCaPmt::cCiCaPmt(uint8_t CmdId, int Source, int Transponder, int ProgramNumber
- AddCaDescriptors(caDescriptorsLength, caDescriptors);
- }
-
-+cCiCaPmt::~cCiCaPmt(void)
-+{
-+ delete [] caDescriptors;
-+}
-+
- void cCiCaPmt::SetListManagement(uint8_t ListManagement)
- {
- capmt[0] = ListManagement;
-@@ -805,21 +822,34 @@ void cCiCaPmt::SetListManagement(uint8_t ListManagement)
- void cCiCaPmt::AddPid(int Pid, uint8_t StreamType)
- {
- if (Pid) {
-- uint8_t caDescriptors[512];
-- int caDescriptorsLength = GetCaDescriptors(source, transponder, programNumber, caSystemIds, sizeof(caDescriptors), caDescriptors, Pid);
-- //XXX buffer overflow check???
-- capmt[length++] = StreamType;
-- capmt[length++] = (Pid >> 8) & 0xFF;
-- capmt[length++] = Pid & 0xFF;
-- esInfoLengthPos = length;
-- capmt[length++] = 0x00; // ES_info_length H (at ES level)
-- capmt[length++] = 0x00; // ES_info_length L
-- AddCaDescriptors(caDescriptorsLength, caDescriptors);
-+ int caDescriptorsLength = GetCaDescriptors(source, transponder, programNumber, caSystemIds, caBufSize, caDescriptors, Pid);
-+ if (caDescriptorsLength < 0) {
-+ delete [] caDescriptors;
-+ caBufSize = -caDescriptorsLength + 8;
-+ caDescriptors = new uint8_t[caBufSize];
-+ caDescriptorsLength = GetCaDescriptors(source, transponder, programNumber, caSystemIds, caBufSize, caDescriptors, Pid);
-+ }
-+ if (length + 5 < int(sizeof(capmt))) {
-+ capmt[length++] = StreamType;
-+ capmt[length++] = (Pid >> 8) & 0xFF;
-+ capmt[length++] = Pid & 0xFF;
-+ esInfoLengthPos = length;
-+ capmt[length++] = 0x00; // ES_info_length H (at ES level)
-+ capmt[length++] = 0x00; // ES_info_length L
-+ AddCaDescriptors(caDescriptorsLength, caDescriptors);
-+ }
-+ else
-+ esyslog("ERROR: buffer overflow in CA descriptor");
- }
- }
-
- void cCiCaPmt::AddCaDescriptors(int Length, const uint8_t *Data)
- {
-+ if (Length < 0) {
-+ dsyslog("DEBUG: calling AddCaDescriptors with Length %d", Length);
-+ return;
-+ }
-+
- if (esInfoLengthPos) {
- if (length + Length < int(sizeof(capmt))) {
- if (Length || cmdId == CPCI_QUERY) {
-diff --git a/pat.c b/pat.c
-index 98d306e..9dfbc62 100644
---- a/pat.c
-+++ b/pat.c
-@@ -165,21 +165,25 @@ int cCaDescriptors::GetCaDescriptors(const int *CaSystemIds, int BufSize, uchar
- return 0;
- if (BufSize > 0 && Data) {
- int length = 0;
-+ bool tooSmall = false;
- for (cCaDescriptor *d = caDescriptors.First(); d; d = caDescriptors.Next(d)) {
- if (EsPid < 0 || d->EsPid() == EsPid) {
- const int *caids = CaSystemIds;
- do {
- if (*caids == 0xFFFF || d->CaSystem() == *caids) {
-- if (length + d->Length() <= BufSize) {
-+ if (length + d->Length() <= BufSize)
- memcpy(Data + length, d->Data(), d->Length());
-- length += d->Length();
-- }
- else
-- return -1;
-+ tooSmall = true;
-+ length += d->Length();
- }
- } while (*++caids);
- }
- }
-+ if (tooSmall) {
-+ dsyslog("DEBUG: buffer for ca-descriptors too small (%d, needed %d)", BufSize, length);
-+ return -length;
-+ }
- return length;
- }
- return -1;
-diff --git a/pat.h b/pat.h
-index 19e60dc..8bf0738 100644
---- a/pat.h
-+++ b/pat.h
-@@ -45,7 +45,7 @@ int GetCaDescriptors(int Source, int Transponder, int ServiceId, const int *CaSy
- ///< are copied that match one of the given CA system IDs (or all of them, if CaSystemIds
- ///< is 0xFFFF).
- ///< Returns the number of bytes copied into Data (0 if no CA descriptors are
-- ///< available), or -1 if BufSize was too small to hold all CA descriptors.
-+ ///< available), or -(NeededBufSize) if BufSize was too small to hold all CA descriptors.
-
- int GetCaPids(int Source, int Transponder, int ServiceId, const int *CaSystemIds, int BufSize, int *Pids);
- ///< Gets all CA pids for a given channel.
-
diff --git a/packages/addons/addon-depends/vdr/patches/vdr-50_gcc-fixes.patch b/packages/addons/addon-depends/vdr/patches/vdr-50_gcc-fixes.patch
deleted file mode 100644
index 2cfe643cd0..0000000000
--- a/packages/addons/addon-depends/vdr/patches/vdr-50_gcc-fixes.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-Backport from 2.3.3
-
-diff -Naur vdr-2.2.0/diseqc.c vdr-2.2.0.fixed/diseqc.c
---- vdr-2.2.0/diseqc.c 2015-01-26 13:02:14.000000000 +0100
-+++ vdr-2.2.0.fixed/diseqc.c 2017-05-11 17:47:26.770740387 +0200
-@@ -253,10 +253,10 @@
- return result;
- }
-
--uint cDiseqc::SetScrFrequency(uint SatFrequency, const cScr *Scr, uint8_t *Codes) const
-+int cDiseqc::SetScrFrequency(int SatFrequency, const cScr *Scr, uint8_t *Codes) const
- {
- if ((Codes[0] & 0xF0) == 0x70 ) { // EN50607 aka JESS
-- uint t = SatFrequency == 0 ? 0 : (SatFrequency - 100);
-+ int t = SatFrequency == 0 ? 0 : (SatFrequency - 100);
- if (t < 2048 && Scr->Channel() >= 0 && Scr->Channel() < 32) {
- Codes[1] = t >> 8 | Scr->Channel() << 3;
- Codes[2] = t;
-@@ -266,7 +266,7 @@
- }
- }
- else { // EN50494 aka Unicable
-- uint t = SatFrequency == 0 ? 0 : (SatFrequency + Scr->UserBand() + 2) / 4 - 350; // '+ 2' together with '/ 4' results in rounding!
-+ int t = SatFrequency == 0 ? 0 : (SatFrequency + Scr->UserBand() + 2) / 4 - 350; // '+ 2' together with '/ 4' results in rounding!
- if (t < 1024 && Scr->Channel() >= 0 && Scr->Channel() < 8) {
- Codes[3] = t >> 8 | (t == 0 ? 0 : scrBank << 2) | Scr->Channel() << 5;
- Codes[4] = t;
-@@ -399,7 +399,7 @@
- return NULL;
- }
-
--cDiseqc::eDiseqcActions cDiseqc::Execute(const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, uint *Frequency) const
-+cDiseqc::eDiseqcActions cDiseqc::Execute(const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, int *Frequency) const
- {
- if (!*CurrentAction)
- *CurrentAction = commands;
-diff -Naur vdr-2.2.0/diseqc.h vdr-2.2.0.fixed/diseqc.h
---- vdr-2.2.0/diseqc.h 2013-06-12 13:52:17.000000000 +0200
-+++ vdr-2.2.0.fixed/diseqc.h 2017-05-11 17:46:02.381565779 +0200
-@@ -86,7 +86,7 @@
- mutable int scrBank;
- char *commands;
- bool parsing;
-- uint SetScrFrequency(uint SatFrequency, const cScr *Scr, uint8_t *Codes) const;
-+ int SetScrFrequency(int SatFrequency, const cScr *Scr, uint8_t *Codes) const;
- int SetScrPin(const cScr *Scr, uint8_t *Codes) const;
- const char *Wait(const char *s) const;
- const char *GetPosition(const char *s) const;
-@@ -96,7 +96,7 @@
- cDiseqc(void);
- ~cDiseqc();
- bool Parse(const char *s);
-- eDiseqcActions Execute(const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, uint *Frequency) const;
-+ eDiseqcActions Execute(const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, int *Frequency) const;
- ///< Parses the DiSEqC commands and returns the appropriate action code
- ///< with every call. CurrentAction must be the address of a character pointer,
- ///< which is initialized to NULL. This pointer is used internally while parsing
-diff -Naur vdr-2.2.0/dvbdevice.c vdr-2.2.0.fixed/dvbdevice.c
---- vdr-2.2.0/dvbdevice.c 2017-05-11 17:49:21.744005466 +0200
-+++ vdr-2.2.0.fixed/dvbdevice.c 2017-05-11 17:40:40.052025008 +0200
-@@ -329,7 +329,7 @@
- void ClearEventQueue(void) const;
- bool GetFrontendStatus(fe_status_t &Status) const;
- cPositioner *GetPositioner(void);
-- void ExecuteDiseqc(const cDiseqc *Diseqc, unsigned int *Frequency);
-+ void ExecuteDiseqc(const cDiseqc *Diseqc, int *Frequency);
- void ResetToneAndVoltage(void);
- bool SetFrontend(void);
- virtual void Action(void);
-@@ -696,7 +696,7 @@
- return positioner;
- }
-
--void cDvbTuner::ExecuteDiseqc(const cDiseqc *Diseqc, unsigned int *Frequency)
-+void cDvbTuner::ExecuteDiseqc(const cDiseqc *Diseqc, int *Frequency)
- {
- if (!lnbPowerTurnedOn) {
- CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_13)); // must explicitly turn on LNB power
-@@ -806,7 +806,7 @@
-
- SETCMD(DTV_DELIVERY_SYSTEM, frontendType);
- if (frontendType == SYS_DVBS || frontendType == SYS_DVBS2) {
-- unsigned int frequency = channel.Frequency();
-+ int frequency = channel.Frequency();
- if (Setup.DiSEqC) {
- if (const cDiseqc *diseqc = Diseqcs.Get(device->CardIndex() + 1, channel.Source(), frequency, dtp.Polarization(), &scr)) {
- frequency -= diseqc->Lof();
-@@ -829,7 +829,7 @@
- }
- else {
- int tone = SEC_TONE_OFF;
-- if (frequency < (unsigned int)Setup.LnbSLOF) {
-+ if (frequency < Setup.LnbSLOF) {
- frequency -= Setup.LnbFrequLo;
- tone = SEC_TONE_OFF;
- }
-diff -Naur vdr-2.2.0/remux.c vdr-2.2.0.fixed/remux.c
---- vdr-2.2.0/remux.c 2017-05-11 17:49:21.740005437 +0200
-+++ vdr-2.2.0.fixed/remux.c 2017-05-11 17:38:29.322690063 +0200
-@@ -1627,7 +1627,7 @@
- Div += parser->IFrameTemporalReferenceOffset();
- if (Div <= 0)
- Div = 1;
-- uint32_t Delta = ptsValues[0] / Div;
-+ int Delta = ptsValues[0] / Div;
- // determine frame info:
- if (isVideo) {
- if (abs(Delta - 3600) <= 1)
diff --git a/packages/addons/service/vdr-addon/changelog.txt b/packages/addons/service/vdr-addon/changelog.txt
index ac0ad4c6a6..7654f1abd3 100644
--- a/packages/addons/service/vdr-addon/changelog.txt
+++ b/packages/addons/service/vdr-addon/changelog.txt
@@ -1,3 +1,9 @@
+107
+- add robotv plugin
+- add DDCI2 plugin
+- update VDR to 2.3.8
+- update all addons
+
106
- update Sat>IP plugin to 28cc3ca
- update VNSI to 63d8151
diff --git a/packages/addons/service/vdr-addon/package.mk b/packages/addons/service/vdr-addon/package.mk
index 87b24ee99e..25cab23b3a 100644
--- a/packages/addons/service/vdr-addon/package.mk
+++ b/packages/addons/service/vdr-addon/package.mk
@@ -1,33 +1,36 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2011 Anthony Nash (nash.ant@gmail.com)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
PKG_NAME="vdr-addon"
-PKG_VERSION="2.2"
-PKG_REV="106"
+PKG_VERSION="2.3"
+PKG_REV="107"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="https://libreelec.tv"
PKG_URL=""
-PKG_DEPENDS_TARGET="toolchain vdr vdr-plugin-dummydevice vdr-plugin-dvbapi vdr-plugin-eepg vdr-plugin-epgfixer vdr-plugin-epgsearch vdr-plugin-iptv vdr-plugin-live vdr-plugin-restfulapi vdr-plugin-satip vdr-plugin-streamdev vdr-plugin-vnsiserver vdr-plugin-wirbelscan vdr-plugin-wirbelscancontrol vdr-plugin-xmltv2vdr"
+PKG_DEPENDS_TARGET="toolchain vdr vdr-plugin-ddci2 vdr-plugin-dummydevice vdr-plugin-dvbapi vdr-plugin-eepg vdr-plugin-epgfixer \
+ vdr-plugin-epgsearch vdr-plugin-iptv vdr-plugin-live vdr-plugin-restfulapi vdr-plugin-robotv vdr-plugin-satip \
+ vdr-plugin-streamdev vdr-plugin-vnsiserver vdr-plugin-wirbelscan vdr-plugin-wirbelscancontrol vdr-plugin-xmltv2vdr"
PKG_SECTION="service.multimedia"
PKG_SHORTDESC="VDR: a TV streaming server for Linux"
-PKG_LONGDESC="VDR (2.2.0) is a TV streaming server for Linux supporting DVB-S/S2, DVB-C, DVB-T/T2, IPTV and SAT>IP"
+PKG_LONGDESC="VDR (2.3.x) is a TV streaming server for Linux supporting DVB-S/S2, DVB-C, DVB-T/T2, IPTV and SAT>IP"
PKG_TOOLCHAIN="manual"
PKG_IS_ADDON="yes"
@@ -79,6 +82,8 @@ addon() {
cp -PR $(get_build_dir vdr-plugin-satip)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
cp -PR $VDR_PLUGIN_EPGFIXER_DIR/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
cp -PR $VDR_PLUGIN_RESTFULAPI_DIR/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
+ cp -PR $(get_build_dir vdr-plugin-robotv)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
+ cp -PR $(get_build_dir vdr-plugin-ddci2)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/eepg
diff --git a/packages/addons/service/vdr-addon/source/bin/vdr.start b/packages/addons/service/vdr-addon/source/bin/vdr.start
old mode 100755
new mode 100644
index f357c190f8..160161a8aa
--- a/packages/addons/service/vdr-addon/source/bin/vdr.start
+++ b/packages/addons/service/vdr-addon/source/bin/vdr.start
@@ -1,21 +1,22 @@
#!/bin/sh
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2016-present Team LibreELEC
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
. /etc/profile
@@ -48,7 +49,7 @@ ADDON_CACHE_DIR="$ADDON_HOME/cache"
mkdir -p $ADDON_CACHE_DIR
VDR_ARG="-g /tmp --no-kbd"
-if [ "$DEBUG" = "yes" ]; then
+if [ "$DEBUG" = "yes" -o "$ENABLE_VDR_DEBUG" == "true" ]; then
VDR_ARG="$VDR_ARG --log=3"
else
VDR_ARG="$VDR_ARG --log=1"
@@ -108,8 +109,13 @@ fi
if [ "$ENABLE_EPGSEARCH" == "true" ] ; then
VDR_ARG="$VDR_ARG -P epgsearch"
fi
-if [ "$ENABLE_DUMMYDEVICE" == "true" ] ; then
+if [ "$ENABLE_DUMMYDEVICE" == "true" \
+ -o ! \( -d /dev/dvb/adapter0 -o "$WAIT_FOR_FEINIT" == "true" \
+ -o "$ENABLE_SATIP" == "true" \
+ -o "$ENABLE_STREAMDEV_CLIENT" == "true" \) ] ; then
VDR_ARG="$VDR_ARG -P dummydevice"
+else
+ VNSI_ARG=" -d"
fi
if [ "$ENABLE_SATIP" == "true" ] ; then
VDR_ARG="$VDR_ARG -P 'satip -d $SATIP_NUM_DEVICES'"
@@ -130,6 +136,12 @@ if [ "$ENABLE_XMLTV2VDR" == "true" ] ; then
cp $source /var/lib/epgsources
done
fi
+if [ "$ENABLE_ROBOTV" == "true" ] ; then
+ VDR_ARG="$VDR_ARG -P robotv"
+fi
+if [ "$ENABLE_DDCI2" == "true" ] ; then
+ VDR_ARG="$VDR_ARG -P ddci2"
+fi
if [ ! -d "$ADDON_HOME/epgimages" ]; then
mkdir -p "$ADDON_HOME/epgimages"
@@ -144,7 +156,7 @@ RESTFULAPI_ARGS="$RESTFULAPI_ARGS --channellogos=\"$ADDON_HOME/channellogos\""
VDR_ARG="$VDR_ARG -P 'restfulapi $RESTFULAPI_ARGS'"
# vnsi last
-VDR_ARG="$VDR_ARG -P vnsiserver"
+VDR_ARG="$VDR_ARG -P 'vnsiserver$VNSI_ARG'"
cd $ADDON_DIR/config
mkdir -p $ADDON_CONFIG_DIR
@@ -178,4 +190,10 @@ if [ "$WAIT_FOR_FEINIT" == "true" ] ; then
fi
fix_config
+
+if [ "$ENABLE_VDR_DEBUG" == "true" ] ; then
+ /usr/bin/journalctl -b -0 -f -u service.multimedia.vdr-addon > $ADDON_LOG_FILE &
+ sleep 1
+fi
+
eval LANG=en_US.UTF-8 VDR_CHARSET_OVERRIDE="$VDR_CHARSET_OVERRIDE" exec vdr.bin $VDR_ARG
diff --git a/packages/addons/service/vdr-addon/source/default.py b/packages/addons/service/vdr-addon/source/default.py
index cd40a7231e..a75b598442 100644
--- a/packages/addons/service/vdr-addon/source/default.py
+++ b/packages/addons/service/vdr-addon/source/default.py
@@ -1,17 +1,35 @@
################################################################################
-# This file is part of OpenELEC - http://www.openelec.tv
-# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2018-present Team LibreELEC
#
-# OpenELEC is free software: you can redistribute it and/or modify
+# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
-# OpenELEC is distributed in the hope that it will be useful,
+# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with OpenELEC. If not, see .
+# along with LibreELEC. If not, see .
################################################################################
+
+import subprocess
+import xbmc
+import xbmcaddon
+
+
+class Monitor(xbmc.Monitor):
+
+ def __init__(self, *args, **kwargs):
+ xbmc.Monitor.__init__(self)
+ self.id = xbmcaddon.Addon().getAddonInfo('id')
+
+ def onSettingsChanged(self):
+ subprocess.call(['systemctl', 'restart', self.id])
+
+
+if __name__ == "__main__":
+ Monitor().waitForAbort()
diff --git a/packages/addons/service/vdr-addon/source/resources/language/English/strings.po b/packages/addons/service/vdr-addon/source/resources/language/English/strings.po
new file mode 100644
index 0000000000..5edca1b8fc
--- /dev/null
+++ b/packages/addons/service/vdr-addon/source/resources/language/English/strings.po
@@ -0,0 +1,150 @@
+# Kodi Media Center language file
+# Addon Name: vdr-addon
+# Addon id: service.multimedia.vdr-addon
+# Addon Provider: Team LibreELEC
+msgid ""
+msgstr ""
+
+msgctxt "#30000"
+msgid "DVB"
+msgstr ""
+
+msgctxt "#30001"
+msgid "PLUGINS"
+msgstr ""
+
+msgctxt "#30002"
+msgid "VDR"
+msgstr ""
+
+msgctxt "#30003"
+msgid "DVB Configuration"
+msgstr ""
+
+msgctxt "#30004"
+msgid "Unload DVB modules before suspend"
+msgstr ""
+
+msgctxt "#30005"
+msgid "Wait for frontend initialization"
+msgstr ""
+
+msgctxt "#30006"
+msgid "Number of adapters to wait for"
+msgstr ""
+
+msgctxt "#30007"
+msgid "Enable charset override"
+msgstr ""
+
+msgctxt "#30008"
+msgid "- charset"
+msgstr ""
+
+msgctxt "#30009"
+msgid "Plugin Configuration"
+msgstr ""
+
+msgctxt "#30010"
+msgid "Enable plugin: iptv"
+msgstr ""
+
+msgctxt "#30011"
+msgid "Enable plugin: streamdev-client"
+msgstr ""
+
+msgctxt "#30012"
+msgid "Enable plugin: streamdev-server"
+msgstr ""
+
+msgctxt "#30013"
+msgid "Enable plugin: dvbapi (softcam)"
+msgstr ""
+
+msgctxt "#30014"
+msgid "Enable plugin: live"
+msgstr ""
+
+msgctxt "#30015"
+msgid "- listen on ip"
+msgstr ""
+
+msgctxt "#30016"
+msgid "- listen on port"
+msgstr ""
+
+msgctxt "#30017"
+msgid "Enable plugin: epgsearch"
+msgstr ""
+
+msgctxt "#30018"
+msgid "Enable plugin: xmltv2vdr"
+msgstr ""
+
+msgctxt "#30019"
+msgid "Enable plugin: extended EPG"
+msgstr ""
+
+msgctxt "#30020"
+msgid "Enable plugin: dummydevice"
+msgstr ""
+
+msgctxt "#30021"
+msgid "Enable plugin: satip"
+msgstr ""
+
+msgctxt "#30022"
+msgid "Enable plugin: epgfixer"
+msgstr ""
+
+msgctxt "#30023"
+msgid "VDR Configuration"
+msgstr ""
+
+msgctxt "#30024"
+msgid "VDR Video Dir"
+msgstr ""
+
+msgctxt "#30025"
+msgid "Enable external recdmd"
+msgstr ""
+
+msgctxt "#30026"
+msgid "External recdmd path"
+msgstr ""
+
+msgctxt "#30027"
+msgid "- number of devices"
+msgstr ""
+
+msgctxt "#30028"
+msgid "restfulapi plugin options"
+msgstr ""
+
+msgctxt "#30029"
+msgid "- listen on ip"
+msgstr ""
+
+msgctxt "#30030"
+msgid "- listen on port"
+msgstr ""
+
+msgctxt "#30031"
+msgid "Enable plugin: roboTV"
+msgstr ""
+
+msgctxt "#30032"
+msgid "Enable plugin: DDCI2"
+msgstr ""
+
+msgctxt "#30033"
+msgid "DEBUG"
+msgstr ""
+
+msgctxt "#30034"
+msgid "VDR Debugging"
+msgstr ""
+
+msgctxt "#30035"
+msgid "Enable Debug Log"
+msgstr ""
diff --git a/packages/addons/service/vdr-addon/source/resources/language/English/strings.xml b/packages/addons/service/vdr-addon/source/resources/language/English/strings.xml
deleted file mode 100644
index 6f92edaaaf..0000000000
--- a/packages/addons/service/vdr-addon/source/resources/language/English/strings.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
- DVB
- Plugins
- VDR
- DVB Configuration
- Unload DVB modules before suspend
- Wait for frontend initialization
- Number of adapters to wait for
- Enable charset override
- - charset
- Plugin Configuration
- Enable plugin: iptv
- Enable plugin: streamdev-client
- Enable plugin: streamdev-server
- Enable softcam (dvbapi)
- Enable plugin: live
- - listen on ip
- - listen on port
- Enable plugin: epgsearch
- Enable plugin: xmltv2vdr
- Enable plugin: extended EPG
- Enable plugin: dummydevice
- Enable plugin: satip
- Enable plugin: epgfixer
- VDR Configuration
- VDR Video Dir
- Enable external recdmd
- External recdmd path
- - number of devices
- restfulapi plugin options
- - listen on ip
- - listen on port
-
diff --git a/packages/addons/service/vdr-addon/source/resources/settings.xml b/packages/addons/service/vdr-addon/source/resources/settings.xml
index 557a281dd4..3064f6e059 100644
--- a/packages/addons/service/vdr-addon/source/resources/settings.xml
+++ b/packages/addons/service/vdr-addon/source/resources/settings.xml
@@ -1,43 +1,49 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packages/addons/service/vdr-addon/source/settings-default.xml b/packages/addons/service/vdr-addon/source/settings-default.xml
index 52afb13f0d..12427ef3bd 100644
--- a/packages/addons/service/vdr-addon/source/settings-default.xml
+++ b/packages/addons/service/vdr-addon/source/settings-default.xml
@@ -1,27 +1,30 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ false
+ true
+ false
+ false
+ false
+ false
+
+ 1
+ 0.0.0.0
+ 8008
+ 1
+
+ 127.0.0.1
+ 8002
+ 1
+ /storage/videos
+ false
diff --git a/packages/addons/service/vdr-addon/source/system.d/service.multimedia.vdr-addon.service b/packages/addons/service/vdr-addon/source/system.d/service.multimedia.vdr-addon.service
index bfbb96b8c7..0c353f1ae3 100644
--- a/packages/addons/service/vdr-addon/source/system.d/service.multimedia.vdr-addon.service
+++ b/packages/addons/service/vdr-addon/source/system.d/service.multimedia.vdr-addon.service
@@ -4,7 +4,7 @@ After=graphical.target
[Service]
ExecStart=/bin/sh -c "exec sh /storage/.kodi/addons/service.multimedia.vdr-addon/bin/vdr.start"
-TimeoutStopSec=2
+TimeoutStopSec=4
Restart=always
RestartSec=2
StartLimitInterval=0