Merge branch 'master' of github.com:OpenELEC/OpenELEC.tv into openelec-3.2

This commit is contained in:
Stephan Raue 2013-06-21 16:20:31 +02:00
commit 43a0ca39f0
24 changed files with 287 additions and 59 deletions

3
packages/addons/driver/hdhomerun/changelog.txt Normal file → Executable file
View File

@ -1,3 +1,6 @@
3.1.2
new addon settings option to enable suspend/resume driver actions
new addon settings option to enable logging
3.1.1
rebuild for OpenELEC-3.2
3.0.5

View File

0
packages/addons/driver/hdhomerun/icon/icon.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

2
packages/addons/driver/hdhomerun/meta Normal file → Executable file
View File

@ -20,7 +20,7 @@
PKG_NAME="hdhomerun"
PKG_VERSION="3.2"
PKG_REV="1"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.silicondust.com/products/hdhomerun/dvbt/"

3
packages/addons/driver/hdhomerun/settings-default.xml Normal file → Executable file
View File

@ -1,4 +1,7 @@
<settings>
<setting id="PRE_WAIT" value="2" />
<setting id="POST_WAIT" value="1" />
<setting id="USERHDHOMERUN_LOG" value="false" />
<setting id="LIBHDHOMERUN_LOG" value="false" />
<setting id="SUSPEND_DRIVER" value="false" />
</settings>

View File

View File

View File

@ -22,6 +22,18 @@
. /etc/profile
# start locking mechanism - allows only one instance to be run at a time
HDHR_LOCKFILE="/var/lock/userspace-driver-hdhomerun.lck"
HDHR_LOCKFD=99
# obtain an exclusive lock
exlock() { eval "exec $HDHR_LOCKFD>\"$HDHR_LOCKFILE\""; flock -x $HDHR_LOCKFD; }
# drop a lock
unlock() { flock -u $HDHR_LOCKFD; flock -xn $HDHR_LOCKFD && rm -f "$HDHR_LOCKFILE"; }
# end locking mechanism
# exclusive lock
exlock
HDHR_ADDON_DIR="$HOME/.xbmc/addons/driver.dvb.hdhomerun"
HDHR_ADDON_HOME="$HOME/.xbmc/userdata/addon_data/driver.dvb.hdhomerun"
HDHR_ADDON_SETTINGS="$HDHR_ADDON_HOME/settings.xml"
@ -92,7 +104,7 @@ if [ -z "$(pidof userhdhomerun)" ]; then
echo "" >>$DVBHDHOMERUN_CONF_TMP
# remove empty lines at the end of file
sed -i -e ':a' -e '/^\n*$/{$d;N;};/\n$/ba' $DVBHDHOMERUN_CONF_TMP
if [ "$LIBHDHOMERUN_LOG" = "true" ]; then
cat >>$DVBHDHOMERUN_CONF_TMP << EOF
@ -127,7 +139,11 @@ EOF
mkdir -p /var/log/
rm -f /var/log/dvbhdhomerun.log
userhdhomerun -f
if [ "$USERHDHOMERUN_LOG" = "true" ]; then
userhdhomerun -f
else
userhdhomerun -f -d
fi
logger -t HDHomeRun "### Post wait for $POST_WAIT sec ###"
sleep $POST_WAIT
@ -144,3 +160,6 @@ EOF
fi
logger -t HDHomeRun "### HDHomeRun ready ###"
# unlock the lock
unlock

0
packages/addons/driver/hdhomerun/source/default.py Normal file → Executable file
View File

View File

@ -3,7 +3,9 @@
<string id="1000">General</string>
<string id="1020">Pre wait time [sec]</string>
<string id="1030">Post wait time [sec]</string>
<string id="1040">Enable libhdhomerun logging</string>
<string id="1040">Enable userhdhomerun logging</string>
<string id="1050">Enable libhdhomerun logging</string>
<string id="1060">Enable suspend/resume the driver</string>
<string id="9000">Tuner settings</string>
<string id="9005">Enable modifying settings</string>

View File

View File

View File

@ -4,7 +4,9 @@
<setting type="sep" />
<setting id="PRE_WAIT" type="number" label="1020" default="2" />
<setting id="POST_WAIT" type="number" label="1030" default="1" />
<setting id="LIBHDHOMERUN_LOG" type="bool" label="1040" default="false" />
<setting id="USERHDHOMERUN_LOG" type="bool" label="1040" default="false" />
<setting id="LIBHDHOMERUN_LOG" type="bool" label="1050" default="false" />
<setting id="SUSPEND_DRIVER" type="bool" label="1060" default="false" />
</category>
<category label="9000">
<setting type="sep" />

View File

@ -22,26 +22,42 @@
. /etc/profile
LOCKDIR="/var/lock/"
LOCKFILE="$LOCKDIR/hdhomerun"
HDHR_ADDON_DIR="$HOME/.xbmc/addons/driver.dvb.hdhomerun"
HDHR_ADDON_HOME="$HOME/.xbmc/userdata/addon_data/driver.dvb.hdhomerun"
HDHR_ADDON_SETTINGS="$HDHR_ADDON_HOME/settings.xml"
case "$1" in
hibernate|suspend)
if [ -n "$(pidof userhdhomerun)" ]; then
progress "Shutting down HDHomeRun driver for suspending..."
mkdir -p "$LOCKDIR"
touch "$LOCKFILE"
killall -9 userhdhomerun
fi
;;
if [ ! -f "$HDHR_ADDON_SETTINGS" ]; then
cp $HDHR_ADDON_DIR/settings-default.xml $HDHR_ADDON_SETTINGS
fi
thaw|resume)
if [ -f "$LOCKFILE" ]; then
# driver started within Tvheadend/VDR
rm -f "$LOCKFILE"
fi
;;
mkdir -p /var/config
cat "$HDHR_ADDON_SETTINGS" | awk -F\" '{print $2"=\""$4"\""}' | sed '/^=/d' > /var/config/hdhomerun-addon.conf
. /var/config/hdhomerun-addon.conf
*) exit $NA
;;
esac
if [ "$SUSPEND_DRIVER" = "true" ]; then
LOCKDIR="/var/lock"
LOCKFILE="$LOCKDIR/hdhomerun"
case "$1" in
hibernate|suspend)
if [ -n "$(pidof userhdhomerun)" ]; then
progress "Shutting down HDHomeRun driver for suspending..."
mkdir -p "$LOCKDIR"
touch "$LOCKFILE"
killall -9 userhdhomerun
fi
;;
thaw|resume)
if [ -f "$LOCKFILE" ]; then
# driver started within Tvheadend/VDR
rm -f "$LOCKFILE"
fi
;;
*) exit $NA
;;
esac
else
progress "Suspend/resume of HDHomeRun driver not enabled..."
fi

View File

@ -1,3 +1,5 @@
3.1.2
new addon settings option to enable suspend/resume driver actions
3.1.1
rebuild for OpenELEC-3.2
3.0.6

View File

@ -20,7 +20,7 @@
PKG_NAME="sundtek-mediatv"
PKG_VERSION="3.1"
PKG_REV="1"
PKG_REV="2"
PKG_ARCH="any"
PKG_LICENSE="nonfree"
PKG_SITE="http://support.sundtek.com/"

View File

@ -6,6 +6,7 @@
<setting id="ENABLE_HW_PID_FILTER" value="false" />
<setting id="ENABLE_IR_RECEIVER" value="false" />
<setting id="LOWEST_ADAPTER_NUM" value="0" />
<setting id="SUSPEND_DRIVER" value="true" />
<setting id="ALLOW_NET_USE" value="false" />
<setting id="USE_NET_TUNERS" value="false" />
<setting id="DEVICE1_IP" value="" />

View File

@ -22,6 +22,18 @@
. /etc/profile
# start locking mechanism - allows only one instance to be run at a time
SUNDTEK_LOCKFILE="/var/lock/userspace-driver-sundtek.lck"
SUNDTEK_LOCKFD=99
# obtain an exclusive lock
exlock() { eval "exec $SUNDTEK_LOCKFD>\"$SUNDTEK_LOCKFILE\""; flock -x $SUNDTEK_LOCKFD; }
# drop a lock
unlock() { flock -u $SUNDTEK_LOCKFD; flock -xn $SUNDTEK_LOCKFD && rm -f "$SUNDTEK_LOCKFILE"; }
# end locking mechanism
# exclusive lock
exlock
net_tuner_num_fix() {
local num=$1
@ -337,3 +349,6 @@ if [ -z "$(pidof mediasrv)" ]; then
fi
logger -t Sundtek "### Sundtek ready ###"
# unlock the lock
unlock

View File

@ -8,6 +8,7 @@
<string id="1030">Enable hardware PID filter</string>
<string id="1035">Enable IR receiver</string>
<string id="1040">Lowest adapter number (/dev/dvb/adapterX/)</string>
<string id="1050">Enable suspend/resume the driver</string>
<string id="2000">Networking</string>
<string id="2005">Share local tuner over network</string>

View File

@ -9,6 +9,7 @@
<setting id="ENABLE_HW_PID_FILTER" type="bool" label="1030" default="false" />
<setting id="ENABLE_IR_RECEIVER" type="bool" label="1035" default="false" />
<setting id="LOWEST_ADAPTER_NUM" type="number" label="1040" default="0" />
<setting id="SUSPEND_DRIVER" type="bool" label="1050" default="true" />
</category>
<category label="2000" >
<setting type="sep" />

View File

@ -22,26 +22,42 @@
. /etc/profile
LOCKDIR="/var/lock/"
LOCKFILE="$LOCKDIR/sundtek-mediatv"
SUNDTEK_ADDON_DIR="$HOME/.xbmc/addons/driver.dvb.sundtek-mediatv"
SUNDTEK_ADDON_HOME="$HOME/.xbmc/userdata/addon_data/driver.dvb.sundtek-mediatv"
SUNDTEK_ADDON_SETTINGS="$SUNDTEK_ADDON_HOME/settings.xml"
case "$1" in
hibernate|suspend)
if [ -n "$(pidof mediasrv)" ]; then
progress "Shutting down Sundtek DVB driver for suspending..."
mkdir -p "$LOCKDIR"
touch "$LOCKFILE"
killall -9 mediasrv
fi
;;
if [ ! -f "$SUNDTEK_ADDON_SETTINGS" ]; then
cp $SUNDTEK_ADDON_DIR/settings-default.xml $SUNDTEK_ADDON_SETTINGS
fi
thaw|resume)
if [ -f "$LOCKFILE" ]; then
# driver started within Tvheadend/VDR
rm -f "$LOCKFILE"
fi
;;
mkdir -p /var/config
cat "$SUNDTEK_ADDON_SETTINGS" | awk -F\" '{print $2"=\""$4"\""}' | sed '/^=/d' > /var/config/sundtek-addon.conf
. /var/config/sundtek-addon.conf
*) exit $NA
;;
esac
if [ "$SUSPEND_DRIVER" = "true" ]; then
LOCKDIR="/var/lock/"
LOCKFILE="$LOCKDIR/sundtek-mediatv"
case "$1" in
hibernate|suspend)
if [ -n "$(pidof mediasrv)" ]; then
progress "Shutting down Sundtek DVB driver for suspending..."
mkdir -p "$LOCKDIR"
touch "$LOCKFILE"
killall -9 mediasrv
fi
;;
thaw|resume)
if [ -f "$LOCKFILE" ]; then
# driver started within Tvheadend/VDR
rm -f "$LOCKFILE"
fi
;;
*) exit $NA
;;
esac
else
progress "Suspend/resume of Sundtek driver not enabled..."
fi

View File

@ -0,0 +1,159 @@
From b0dd079bee34969dade531ec33bc933cf5565964 Mon Sep 17 00:00:00 2001
From: Daniel Meyerholt <dxm523@gmail.com>
Date: Wed, 19 Jun 2013 18:55:54 +0200
Subject: [PATCH] Update xbmc addon headers
---
src/xvdr/XBMCAddon.cpp | 2 +-
src/xvdr/include/DVDDemuxPacket.h | 2 +-
src/xvdr/include/xbmc_addon_dll.h | 2 +-
src/xvdr/include/xbmc_epg_types.h | 2 +-
src/xvdr/include/xbmc_pvr_dll.h | 3 ++-
src/xvdr/include/xbmc_pvr_types.h | 25 ++++++++++++++++++++-----
6 files changed, 26 insertions(+), 10 deletions(-)
diff --git a/src/xvdr/XBMCAddon.cpp b/src/xvdr/XBMCAddon.cpp
index 60bfbe8..23c89a0 100644
--- a/src/xvdr/XBMCAddon.cpp
+++ b/src/xvdr/XBMCAddon.cpp
@@ -828,7 +828,7 @@ int GetRecordingLastPlayedPosition(const PVR_RECORDING &recording)
return mClient->GetRecordingLastPosition(recording.strRecordingId);
}
-PVR_ERROR CallMenuHook(const PVR_MENUHOOK &menuhook) {
+PVR_ERROR CallMenuHook(const PVR_MENUHOOK &menuhook, const PVR_MENUHOOK_DATA &item) {
switch(menuhook.iHookId) {
case XVDR_HOOK_SETTINGS_CHANNELSCAN:
DialogChannelScan();
diff --git a/src/xvdr/include/DVDDemuxPacket.h b/src/xvdr/include/DVDDemuxPacket.h
index 7d9967e..cf3c1e0 100644
--- a/src/xvdr/include/DVDDemuxPacket.h
+++ b/src/xvdr/include/DVDDemuxPacket.h
@@ -1,7 +1,7 @@
#pragma once
/*
- * Copyright (C) 2012 Team XBMC
+ * Copyright (C) 2012-2013 Team XBMC
* http://www.xbmc.org
*
* This Program is free software; you can redistribute it and/or modify
diff --git a/src/xvdr/include/xbmc_addon_dll.h b/src/xvdr/include/xbmc_addon_dll.h
index 9402623..12d3d91 100644
--- a/src/xvdr/include/xbmc_addon_dll.h
+++ b/src/xvdr/include/xbmc_addon_dll.h
@@ -21,7 +21,7 @@
*
*/
-#ifdef _WIN32
+#ifdef TARGET_WINDOWS
#include <windows.h>
#else
#ifndef __cdecl
diff --git a/src/xvdr/include/xbmc_epg_types.h b/src/xvdr/include/xbmc_epg_types.h
index 2284dda..c486be4 100644
--- a/src/xvdr/include/xbmc_epg_types.h
+++ b/src/xvdr/include/xbmc_epg_types.h
@@ -26,7 +26,7 @@
#undef PRAGMA_PACK_BEGIN
#undef PRAGMA_PACK_END
-#if defined(__GNUC__) && !defined(__MINGW32__)
+#if defined(__GNUC__)
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
#define ATTRIBUTE_PACKED __attribute__ ((packed))
#define PRAGMA_PACK 0
diff --git a/src/xvdr/include/xbmc_pvr_dll.h b/src/xvdr/include/xbmc_pvr_dll.h
index a40022b..5ef7b95 100644
--- a/src/xvdr/include/xbmc_pvr_dll.h
+++ b/src/xvdr/include/xbmc_pvr_dll.h
@@ -108,10 +108,11 @@
* Call one of the menu hooks (if supported).
* Supported PVR_MENUHOOK instances have to be added in ADDON_Create(), by calling AddMenuHook() on the callback.
* @param menuhook The hook to call.
+ * @param item The selected item for which the hook was called.
* @return PVR_ERROR_NO_ERROR if the hook was called successfully.
* @remarks Optional. Return PVR_ERROR_NOT_IMPLEMENTED if this add-on won't provide this function.
*/
- PVR_ERROR CallMenuHook(const PVR_MENUHOOK& menuhook);
+ PVR_ERROR CallMenuHook(const PVR_MENUHOOK& menuhook, const PVR_MENUHOOK_DATA &item);
//@}
/*! @name PVR EPG methods
diff --git a/src/xvdr/include/xbmc_pvr_types.h b/src/xvdr/include/xbmc_pvr_types.h
index a8193ed..1fb0c6c 100644
--- a/src/xvdr/include/xbmc_pvr_types.h
+++ b/src/xvdr/include/xbmc_pvr_types.h
@@ -22,7 +22,7 @@
#ifndef __PVRCLIENT_TYPES_H__
#define __PVRCLIENT_TYPES_H__
-#ifdef _WIN32
+#ifdef TARGET_WINDOWS
#include <windows.h>
#else
#ifndef __cdecl
@@ -52,7 +52,7 @@
#undef PRAGMA_PACK_BEGIN
#undef PRAGMA_PACK_END
-#if defined(__GNUC__) && !defined(__MINGW32__)
+#if defined(__GNUC__)
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
#define ATTRIBUTE_PACKED __attribute__ ((packed))
#define PRAGMA_PACK 0
@@ -74,10 +74,10 @@
#define PVR_STREAM_MAX_STREAMS 20
/* current PVR API version */
-#define XBMC_PVR_API_VERSION "1.7.0"
+#define XBMC_PVR_API_VERSION "1.8.0"
/* min. PVR API version */
-#define XBMC_PVR_MIN_API_VERSION "1.7.0"
+#define XBMC_PVR_MIN_API_VERSION "1.8.0"
#ifdef __cplusplus
extern "C" {
@@ -121,6 +121,7 @@
*/
typedef enum
{
+ PVR_MENUHOOK_UNKNOWN =-1, /*!< @brief unknown menu hook */
PVR_MENUHOOK_ALL = 0, /*!< @brief all categories */
PVR_MENUHOOK_CHANNEL = 1, /*!< @brief for channels */
PVR_MENUHOOK_TIMER = 2, /*!< @brief for timers */
@@ -310,6 +311,20 @@
} ATTRIBUTE_PACKED PVR_EDL_ENTRY;
/*!
+ * @brief PVR menu hook data
+ */
+ typedef struct PVR_MENUHOOK_DATA
+ {
+ PVR_MENUHOOK_CAT cat;
+ union data {
+ int iEpgUid;
+ PVR_CHANNEL channel;
+ PVR_TIMER timer;
+ PVR_RECORDING recording;
+ } data;
+ } ATTRIBUTE_PACKED PVR_MENUHOOK_DATA;
+
+ /*!
* @brief Structure to transfer the methods from xbmc_pvr_dll.h to XBMC
*/
typedef struct PVRClient
@@ -324,7 +339,7 @@
const char* (__cdecl* GetBackendVersion)(void);
const char* (__cdecl* GetConnectionString)(void);
PVR_ERROR (__cdecl* GetDriveSpace)(long long*, long long*);
- PVR_ERROR (__cdecl* MenuHook)(const PVR_MENUHOOK&);
+ PVR_ERROR (__cdecl* MenuHook)(const PVR_MENUHOOK&, const PVR_MENUHOOK_DATA&);
PVR_ERROR (__cdecl* GetEpg)(ADDON_HANDLE, const PVR_CHANNEL&, time_t, time_t);
int (__cdecl* GetChannelGroupsAmount)(void);
PVR_ERROR (__cdecl* GetChannelGroups)(ADDON_HANDLE, bool);
--
1.8.1.6

View File

@ -19,7 +19,7 @@
################################################################################
PKG_NAME="openvpn"
PKG_VERSION="2.3.0"
PKG_VERSION="2.3.2"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"

View File

@ -1,12 +0,0 @@
diff -Naur openvpn-2.3.0/configure.ac openvpn-2.3.0.patch/configure.ac
--- openvpn-2.3.0/configure.ac 2012-11-29 21:47:57.000000000 +0100
+++ openvpn-2.3.0.patch/configure.ac 2013-01-16 03:36:51.567034700 +0100
@@ -32,7 +32,7 @@
AC_DEFINE([OPENVPN_VERSION_RESOURCE], [PRODUCT_VERSION_RESOURCE], [Version in windows resource format])
AC_CONFIG_AUX_DIR([.])
-AM_CONFIG_HEADER([config.h])
+AC_CONFIG_HEADERS([config.h])
AC_CONFIG_SRCDIR([src/openvpn/syshead.h])
AC_CONFIG_MACRO_DIR([m4])
AM_INIT_AUTOMAKE