summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Reimer2015-08-10 13:38:53 +0200
committerChristopher Reimer2015-08-10 13:38:53 +0200
commit0dc02bca7e855cd73e30d51bb2fbe2c53fe89044 (patch)
treedf0537f7508c3304593c1323dda1b3c1c2e59fda
downloadaur-0dc02bca7e855cd73e30d51bb2fbe2c53fe89044.tar.gz
Sync from VDR4Arch (https://github.com/VDR4Arch/vdr4arch/commit/7f69ddab9523aff9d6ed3ca4c5b511d9ad07e879)
-rw-r--r--.SRCINFO23
-rw-r--r--96daf6c2d483b760d5a8a0d80aa6759af1bfdc70.diff98
-rw-r--r--PKGBUILD58
3 files changed, 179 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..8a346993042f
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,23 @@
+pkgbase = kodi-addon-pvr-vdr-vnsi
+ pkgdesc = PVR add-on for XBMC to add VDR as a TV/PVR Backend
+ pkgver = 1.11.3
+ pkgrel = 1
+ url = https://github.com/kodi-pvr/pvr.vdr.vnsi
+ arch = x86_64
+ arch = i686
+ arch = armv6h
+ arch = armv7h
+ license = GPL2
+ makedepends = cmake
+ makedepends = git
+ makedepends = libplatform
+ depends = kodi
+ source = git+https://github.com/kodi-pvr/pvr.vdr.vnsi.git#commit=95cf85325665fdd04ee0d81a4716bb3b1d7701ed
+ source = git+https://github.com/xbmc/kodi-platform.git
+ source = 96daf6c2d483b760d5a8a0d80aa6759af1bfdc70.diff
+ md5sums = SKIP
+ md5sums = SKIP
+ md5sums = 9091c2a74932df833277bb776e6f55d7
+
+pkgname = kodi-addon-pvr-vdr-vnsi
+
diff --git a/96daf6c2d483b760d5a8a0d80aa6759af1bfdc70.diff b/96daf6c2d483b760d5a8a0d80aa6759af1bfdc70.diff
new file mode 100644
index 000000000000..327bda7620ec
--- /dev/null
+++ b/96daf6c2d483b760d5a8a0d80aa6759af1bfdc70.diff
@@ -0,0 +1,98 @@
+diff --git a/src/VNSIData.cpp b/src/VNSIData.cpp
+index 7c4418c..76c27b8 100644
+--- a/src/VNSIData.cpp
++++ b/src/VNSIData.cpp
+@@ -409,6 +409,9 @@ PVR_ERROR cVNSIData::GetTimerInfo(unsigned int timernumber, PVR_TIMER &tag)
+ return PVR_ERROR_SERVER_ERROR;
+ }
+
++ /* TODO: Implement own timer types to get support for the timer features introduced with PVR API 1.9.7 */
++ tag.iTimerType = PVR_TIMER_TYPE_NONE;
++
+ tag.iClientIndex = vresp->extract_U32();
+ int iActive = vresp->extract_U32();
+ int iRecording = vresp->extract_U32();
+@@ -427,7 +430,6 @@ PVR_ERROR cVNSIData::GetTimerInfo(unsigned int timernumber, PVR_TIMER &tag)
+ tag.endTime = vresp->extract_U32();
+ tag.firstDay = vresp->extract_U32();
+ tag.iWeekdays = vresp->extract_U32();
+- tag.bIsRepeating = tag.iWeekdays == 0 ? false : true;
+ char *strTitle = vresp->extract_String();
+ strncpy(tag.strTitle, strTitle, sizeof(tag.strTitle) - 1);
+ delete[] strTitle;
+@@ -460,6 +462,10 @@ bool cVNSIData::GetTimersList(ADDON_HANDLE handle)
+ {
+ PVR_TIMER tag;
+ memset(&tag, 0, sizeof(tag));
++
++ /* TODO: Implement own timer types to get support for the timer features introduced with PVR API 1.9.7 */
++ tag.iTimerType = PVR_TIMER_TYPE_NONE;
++
+ tag.iClientIndex = vresp->extract_U32();
+ int iActive = vresp->extract_U32();
+ int iRecording = vresp->extract_U32();
+@@ -478,7 +484,6 @@ bool cVNSIData::GetTimersList(ADDON_HANDLE handle)
+ tag.endTime = vresp->extract_U32();
+ tag.firstDay = vresp->extract_U32();
+ tag.iWeekdays = vresp->extract_U32();
+- tag.bIsRepeating = tag.iWeekdays == 0 ? false : true;
+ char *strTitle = vresp->extract_String();
+ strncpy(tag.strTitle, strTitle, sizeof(tag.strTitle) - 1);
+ tag.iMarginStart = 0;
+@@ -546,7 +551,7 @@ PVR_ERROR cVNSIData::AddTimer(const PVR_TIMER &timerinfo)
+ if (!vrp.add_U32(timerinfo.iClientChannelUid)) return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_U32(starttime)) return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_U32(endtime)) return PVR_ERROR_UNKNOWN;
+- if (!vrp.add_U32(timerinfo.bIsRepeating ? timerinfo.firstDay : 0)) return PVR_ERROR_UNKNOWN;
++ if (!vrp.add_U32(timerinfo.iWeekdays != PVR_WEEKDAY_NONE ? timerinfo.firstDay : 0)) return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_U32(timerinfo.iWeekdays))return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_String(path.c_str())) return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_String("")) return PVR_ERROR_UNKNOWN;
+@@ -629,7 +634,7 @@ PVR_ERROR cVNSIData::UpdateTimer(const PVR_TIMER &timerinfo)
+ if (!vrp.add_U32(timerinfo.iClientChannelUid)) return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_U32(starttime)) return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_U32(endtime)) return PVR_ERROR_UNKNOWN;
+- if (!vrp.add_U32(timerinfo.bIsRepeating ? timerinfo.firstDay : 0)) return PVR_ERROR_UNKNOWN;
++ if (!vrp.add_U32(timerinfo.iWeekdays != PVR_WEEKDAY_NONE ? timerinfo.firstDay : 0)) return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_U32(timerinfo.iWeekdays))return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_String(timerinfo.strTitle)) return PVR_ERROR_UNKNOWN;
+ if (!vrp.add_String("")) return PVR_ERROR_UNKNOWN;
+diff --git a/src/client.cpp b/src/client.cpp
+index 8d4c29b..5e72f78 100644
+--- a/src/client.cpp
++++ b/src/client.cpp
+@@ -537,6 +537,12 @@ PVR_ERROR GetChannelGroupMembers(ADDON_HANDLE handle, const PVR_CHANNEL_GROUP &g
+ /*******************************************/
+ /** PVR Timer Functions **/
+
++PVR_ERROR GetTimerTypes(PVR_TIMER_TYPE types[], int *size)
++{
++ /* TODO: Implement this to get support for the timer features introduced with PVR API 1.9.7 */
++ return PVR_ERROR_NOT_IMPLEMENTED;
++}
++
+ int GetTimersAmount(void)
+ {
+ if (!VNSIData)
+@@ -550,6 +556,7 @@ PVR_ERROR GetTimers(ADDON_HANDLE handle)
+ if (!VNSIData)
+ return PVR_ERROR_SERVER_ERROR;
+
++ /* TODO: Change implementation to get support for the timer features introduced with PVR API 1.9.7 */
+ return (VNSIData->GetTimersList(handle) ? PVR_ERROR_NO_ERROR : PVR_ERROR_SERVER_ERROR);
+ }
+
+@@ -561,11 +568,12 @@ PVR_ERROR AddTimer(const PVR_TIMER &timer)
+ return VNSIData->AddTimer(timer);
+ }
+
+-PVR_ERROR DeleteTimer(const PVR_TIMER &timer, bool bForce)
++PVR_ERROR DeleteTimer(const PVR_TIMER &timer, bool bForce, bool /*bDeleteScheduled*/)
+ {
+ if (!VNSIData)
+ return PVR_ERROR_SERVER_ERROR;
+
++ /* TODO: Change implementation to support bDeleteScheduled (introduced with PVR API 1.9.7 */
+ return VNSIData->DeleteTimer(timer, bForce);
+ }
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..1f443c6b16f5
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,58 @@
+# This PKGBUILD is part of the VDR4Arch project [https://github.com/vdr4arch]
+
+# Maintainer: Christopher Reimer <mail+vdr4arch[at]c-reimer[dot]de>
+pkgname=kodi-addon-pvr-vdr-vnsi
+pkgver=1.11.3
+_gitver=95cf85325665fdd04ee0d81a4716bb3b1d7701ed
+pkgrel=1
+url="https://github.com/kodi-pvr/pvr.vdr.vnsi"
+arch=('x86_64' 'i686' 'armv6h' 'armv7h')
+license=('GPL2')
+pkgdesc="PVR add-on for XBMC to add VDR as a TV/PVR Backend"
+depends=('kodi')
+makedepends=('cmake' 'git' 'libplatform')
+source=("git+https://github.com/kodi-pvr/pvr.vdr.vnsi.git#commit=$_gitver"
+ "git+https://github.com/xbmc/kodi-platform.git"
+ "96daf6c2d483b760d5a8a0d80aa6759af1bfdc70.diff")
+md5sums=('SKIP'
+ 'SKIP'
+ '9091c2a74932df833277bb776e6f55d7')
+
+pkgver() {
+ cd "${srcdir}/pvr.vdr.vnsi/pvr.vdr.vnsi"
+ grep ' version' addon.xml | cut -d'"' -f2
+}
+
+prepare() {
+ mkdir -p build-addon build-platform install-platform
+ cd "${srcdir}/pvr.vdr.vnsi"
+ patch -p1 -R -i "$srcdir/96daf6c2d483b760d5a8a0d80aa6759af1bfdc70.diff"
+}
+
+build() {
+ cd build-platform
+ cmake -DCMAKE_INSTALL_PREFIX="/usr" \
+ -DCMAKE_INSTALL_LIBDIR="/usr/lib" \
+ -DCMAKE_INSTALL_LIBDIR_NOARCH="/usr/lib" \
+ -DCMAKE_BUILD_TYPE=Release \
+ ../kodi-platform
+
+ make
+ make DESTDIR="$srcdir/install-platform" install
+ cd ..
+
+ cd build-addon
+
+ cmake -DCMAKE_INSTALL_PREFIX="/usr" \
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib/kodi \
+ -DCMAKE_PREFIX_PATH="$srcdir/install-platform/usr" \
+ -DCMAKE_BUILD_TYPE=Release \
+ ../pvr.vdr.vnsi
+
+ make
+}
+
+package() {
+ cd build-addon
+ make DESTDIR="${pkgdir}" install
+}