diff --git a/TODO b/TODO index d2339f1b51..ab56f78c75 100644 --- a/TODO +++ b/TODO @@ -1,21 +1,9 @@ ncurses-5.8/5.9: - segfaults in nano and dialog -> using ncurses-5.7 -intel-gpu-tools: - - remove this package after gotham. - not needed anymore as xbmc has "use limited - color space" option - timezone-data: - fix tzdata-setup for gotham. now there is no in guisettings.xml or ping Montellese -systemd: - - fix graphical.target/xorg deps mess - irserver: - rework irserver/init.d for systemd - -RTL8192CU: - - add CONFIG_RTL8192CU to all kernel configs - and test removing this package diff --git a/packages/3rdparty/multimedia/rotorng/meta b/packages/3rdparty/multimedia/rotorng/meta deleted file mode 100644 index 3321fb6451..0000000000 --- a/packages/3rdparty/multimedia/rotorng/meta +++ /dev/null @@ -1,37 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -PKG_NAME="rotorng" -PKG_VERSION="0.3.1" -PKG_REV="1" -PKG_ARCH="any" -PKG_LICENSE="GPL" -PKG_SITE="http://projects.vdr-developer.org/projects/plg-rotor-ng" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr" -PKG_PRIORITY="optional" -PKG_URL="http://projects.vdr-developer.org/attachments/download/1088/rotorng-${PKG_VERSION}.tar.gz" -PKG_SECTION="multimedia" -PKG_SHORTDESC="Next generation of a VDR plugin design to drive a diseqc rotor" -PKG_LONGDESC="Next generation of a VDR plugin design to drive a diseqc rotor" - -PKG_IS_ADDON="no" - -PKG_AUTORECONF="no" diff --git a/packages/3rdparty/multimedia/rotorng/patches/rotorng-makefile.patch b/packages/3rdparty/multimedia/rotorng/patches/rotorng-makefile.patch deleted file mode 100644 index c420b026af..0000000000 --- a/packages/3rdparty/multimedia/rotorng/patches/rotorng-makefile.patch +++ /dev/null @@ -1,32 +0,0 @@ -diff --git a/Makefile b/Makefile -index 9d62d04..5519a07 100644 ---- a/Makefile -+++ b/Makefile -@@ -17,7 +17,6 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri - - ### The C++ compiler and options: - --CXX ?= g++ - CXXFLAGS ?= -O2 -Wall -Woverloaded-virtual -Wno-parentheses -fpermissive - - ### Make sure that the necessary options are included -@@ -27,7 +26,6 @@ CXXFLAGS ?= -O2 -Wall -Woverloaded-virtual -Wno-parentheses -fpermissive - ### The directory environment: - - DVBDIR = ../../../../DVB --VDRDIR = ../../.. - LIBDIR = ../../lib - TMPDIR = /tmp - -@@ -37,11 +35,7 @@ TMPDIR = /tmp - - ### The version number of VDR (taken from VDR's "config.h"): - --VDRVERSION = $(shell grep 'define VDRVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g') - APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h) --ifeq ($(strip $(APIVERSION)),) -- APIVERSION = $(VDRVERSION) --endif - - ### The name of the distribution archive: - diff --git a/packages/3rdparty/multimedia/vdr-control/build b/packages/3rdparty/multimedia/vdr-control/build deleted file mode 100755 index 040e514757..0000000000 --- a/packages/3rdparty/multimedia/vdr-control/build +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -cd $PKG_BUILD - PWD=`pwd` - make VDRDIR="$PWD/../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" diff --git a/packages/3rdparty/multimedia/vdr-control/meta b/packages/3rdparty/multimedia/vdr-control/package.mk similarity index 75% rename from packages/3rdparty/multimedia/vdr-control/meta rename to packages/3rdparty/multimedia/vdr-control/package.mk index c145cd4648..7df387e01a 100644 --- a/packages/3rdparty/multimedia/vdr-control/meta +++ b/packages/3rdparty/multimedia/vdr-control/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://ricomp.de/vdr/" PKG_URL="http://ricomp.de/vdr/${PKG_NAME}-${PKG_VERSION}.tgz" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="vdr control plugin" @@ -35,3 +35,18 @@ PKG_LONGDESC="vdr control plugin" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-epgsearch/build b/packages/3rdparty/multimedia/vdr-epgsearch/build deleted file mode 100755 index 7badf7b984..0000000000 --- a/packages/3rdparty/multimedia/vdr-epgsearch/build +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" -CXXFLAGS="$CXXFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" -LDFLAGS="$LDFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" - -cd $PKG_BUILD - PWD=`pwd` - make VDRDIR="$PWD/../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" diff --git a/packages/3rdparty/multimedia/vdr-epgsearch/meta b/packages/3rdparty/multimedia/vdr-epgsearch/package.mk similarity index 70% rename from packages/3rdparty/multimedia/vdr-epgsearch/meta rename to packages/3rdparty/multimedia/vdr-epgsearch/package.mk index 19190b9af7..75145b3a91 100644 --- a/packages/3rdparty/multimedia/vdr-epgsearch/meta +++ b/packages/3rdparty/multimedia/vdr-epgsearch/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://winni.vdr-developer.org/epgsearch/" PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="vdr-epgsearch" @@ -35,3 +35,18 @@ PKG_LONGDESC="vdr-epgsearch" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" + export CXXFLAGS="$CXXFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" + export LDFLAGS="$LDFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-iptv/build b/packages/3rdparty/multimedia/vdr-iptv/build deleted file mode 100755 index deb8d5474d..0000000000 --- a/packages/3rdparty/multimedia/vdr-iptv/build +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -cd $PKG_BUILD -make VDRDIR="../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" diff --git a/packages/3rdparty/multimedia/vdr-iptv/meta b/packages/3rdparty/multimedia/vdr-iptv/package.mk similarity index 77% rename from packages/3rdparty/multimedia/vdr-iptv/meta rename to packages/3rdparty/multimedia/vdr-iptv/package.mk index 9ba25f6bd3..063315c860 100644 --- a/packages/3rdparty/multimedia/vdr-iptv/meta +++ b/packages/3rdparty/multimedia/vdr-iptv/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.saunalahti.fi/~rahrenbe/vdr/iptv/" PKG_URL="http://www.saunalahti.fi/~rahrenbe/vdr/iptv/files/$PKG_NAME-$PKG_VERSION.tgz" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr curl" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr curl" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="vdr-iptv: an IPTV plugin for the Video Disk Recorder (VDR)" @@ -35,3 +35,18 @@ PKG_LONGDESC="vdr-iptv is an IPTV plugin for the Video Disk Recorder (VDR)" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-live/build b/packages/3rdparty/multimedia/vdr-live/build deleted file mode 100755 index 9369d73d59..0000000000 --- a/packages/3rdparty/multimedia/vdr-live/build +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" -CXXFLAGS="$CXXFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" -LDFLAGS="$LDFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" - -# dont build parallel - MAKEFLAGS=-j1 - -cd $PKG_BUILD - PWD=`pwd` - make VDRDIR="$PWD/../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" diff --git a/packages/3rdparty/multimedia/vdr-live/meta b/packages/3rdparty/multimedia/vdr-live/package.mk similarity index 69% rename from packages/3rdparty/multimedia/vdr-live/meta rename to packages/3rdparty/multimedia/vdr-live/package.mk index 42e21bd1df..916f8b1533 100644 --- a/packages/3rdparty/multimedia/vdr-live/meta +++ b/packages/3rdparty/multimedia/vdr-live/package.mk @@ -25,8 +25,8 @@ 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}-${PKG_VERSION}.tar.gz" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr tntnet pcre-host pcre" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr tntnet pcre-host pcre" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="vdr-live: the LIVE Interactive VDR Environment/" @@ -35,3 +35,23 @@ PKG_LONGDESC="vdr-live allows a comfortable operation of VDR and some of its plu PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" + export CXXFLAGS="$CXXFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" + export LDFLAGS="$LDFLAGS -fPIC -L$SYSROOT_PREFIX/usr/lib -L$SYSROOT_PREFIX/lib" +} + +pre_make_target() { + # dont build parallel + MAKEFLAGS=-j1 +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/build b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/build deleted file mode 100755 index 5ec4a893df..0000000000 --- a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/build +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -# dont build parallel - MAKEFLAGS=-j1 - -cd $PKG_BUILD - make VDRDIR="../$VDR_DIR" \ - VDRSRC="../$VDR_DIR" \ - LIBDIR="." \ - LOCALEDIR="./locale" \ - LIBDVBCSA=1 \ - CSAFLAGS="$CFLAGS -Wall -fomit-frame-pointer -fexpensive-optimizations -funroll-loops" - diff --git a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/meta b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/package.mk similarity index 65% rename from packages/3rdparty/multimedia/vdr-plugin-dvbapi/meta rename to packages/3rdparty/multimedia/vdr-plugin-dvbapi/package.mk index b16aa2705a..aad7542bb9 100644 --- a/packages/3rdparty/multimedia/vdr-plugin-dvbapi/meta +++ b/packages/3rdparty/multimedia/vdr-plugin-dvbapi/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="https://github.com/manio/vdr-plugin-dvbapi" PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" -PKG_DEPENDS="vdr openssl" -PKG_BUILD_DEPENDS="toolchain vdr openssl libdvbcsa" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr openssl libdvbcsa" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="TV" @@ -35,3 +35,26 @@ PKG_LONGDESC="TV" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + VDRSRC=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\" \ + LIBDVBCSA=1" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" + export CSAFLAGS="$CFLAGS -Wall -fomit-frame-pointer -fexpensive-optimizations -funroll-loops" +} + +pre_make_target() { + # dont build parallel + MAKEFLAGS=-j1 +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-plugin-streamdev/build b/packages/3rdparty/multimedia/vdr-plugin-streamdev/build deleted file mode 100755 index b31436f613..0000000000 --- a/packages/3rdparty/multimedia/vdr-plugin-streamdev/build +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -cd $PKG_BUILD - PWD=`pwd` - make VDRDIR="$PWD/../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" diff --git a/packages/3rdparty/multimedia/vdr-plugin-streamdev/meta b/packages/3rdparty/multimedia/vdr-plugin-streamdev/package.mk similarity index 75% rename from packages/3rdparty/multimedia/vdr-plugin-streamdev/meta rename to packages/3rdparty/multimedia/vdr-plugin-streamdev/package.mk index 8aff611637..2cbf748ac3 100644 --- a/packages/3rdparty/multimedia/vdr-plugin-streamdev/meta +++ b/packages/3rdparty/multimedia/vdr-plugin-streamdev/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://projects.vdr-developer.org/projects/show/plg-streamdev" PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" -PKG_DEPENDS="vdr openssl" -PKG_BUILD_DEPENDS="toolchain vdr openssl" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr openssl" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="TV" @@ -35,3 +35,19 @@ PKG_LONGDESC="TV" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} + diff --git a/packages/3rdparty/multimedia/vdr-plugin-vnsiserver/build b/packages/3rdparty/multimedia/vdr-plugin-vnsiserver/build deleted file mode 100755 index 4b0a4d920a..0000000000 --- a/packages/3rdparty/multimedia/vdr-plugin-vnsiserver/build +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -cd $PKG_BUILD - make VDRDIR="../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" - diff --git a/packages/3rdparty/multimedia/vdr-plugin-vnsiserver/meta b/packages/3rdparty/multimedia/vdr-plugin-vnsiserver/package.mk similarity index 76% rename from packages/3rdparty/multimedia/vdr-plugin-vnsiserver/meta rename to packages/3rdparty/multimedia/vdr-plugin-vnsiserver/package.mk index 7564791186..e1ce4071b9 100644 --- a/packages/3rdparty/multimedia/vdr-plugin-vnsiserver/meta +++ b/packages/3rdparty/multimedia/vdr-plugin-vnsiserver/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="https://github.com/opdenkamp/xbmc-pvr-addons/tree/master/addons/pvr.vdr.vnsi/vdr-plugin-vnsiserver" PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="TV" @@ -35,3 +35,17 @@ PKG_LONGDESC="TV" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/build b/packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/build deleted file mode 100755 index c44b374a1f..0000000000 --- a/packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/build +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -cd $PKG_BUILD - PWD=`pwd` - make VDRDIR="$PWD/../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" - cd dist/epgdata2xmltv - make -j1 - diff --git a/packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/meta b/packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/package.mk similarity index 72% rename from packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/meta rename to packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/package.mk index 426cd0893e..e777cff437 100644 --- a/packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/meta +++ b/packages/3rdparty/multimedia/vdr-plugin-xmltv2vdr/package.mk @@ -25,8 +25,8 @@ 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_DEPENDS="vdr curl libxml2" -PKG_BUILD_DEPENDS="toolchain vdr sqlite curl libzip libxml2 libxslt enca pcre" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr sqlite curl libzip libxml2 libxslt enca pcre" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="vdr-xmltv2vdr" @@ -35,3 +35,24 @@ PKG_LONGDESC="vdr-xmltv2vdr" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" +} + +post_make_target() { + cd dist/epgdata2xmltv + make -j1 + cd - +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-plugin-xvdr/build b/packages/3rdparty/multimedia/vdr-plugin-xvdr/build deleted file mode 100755 index 7519ca69b0..0000000000 --- a/packages/3rdparty/multimedia/vdr-plugin-xvdr/build +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -cd $PKG_BUILD - make VDRDIR="../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" - diff --git a/packages/3rdparty/multimedia/vdr-plugin-xvdr/meta b/packages/3rdparty/multimedia/vdr-plugin-xvdr/package.mk similarity index 81% rename from packages/3rdparty/multimedia/vdr-plugin-xvdr/meta rename to packages/3rdparty/multimedia/vdr-plugin-xvdr/package.mk index e3a1a993c5..aca1ceb0eb 100644 --- a/packages/3rdparty/multimedia/vdr-plugin-xvdr/meta +++ b/packages/3rdparty/multimedia/vdr-plugin-xvdr/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="https://github.com/pipelka/vdr-plugin-xvdr" PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="TV" @@ -35,3 +35,12 @@ PKG_LONGDESC="TV" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-sc/build b/packages/3rdparty/multimedia/vdr-sc/build deleted file mode 100755 index dcc777ec26..0000000000 --- a/packages/3rdparty/multimedia/vdr-sc/build +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -# vdr-sc fails building with LTO support - strip_lto - -# dont build parallel - MAKEFLAGS=-j1 - -cd $PKG_BUILD - make VDRDIR="../$VDR_DIR" \ - LIBDIR="." \ - LOCALEDIR="./locale" \ - CSAFLAGS="$CFLAGS -Wall -fomit-frame-pointer -fexpensive-optimizations -funroll-loops" - diff --git a/packages/3rdparty/multimedia/vdr-sc/meta b/packages/3rdparty/multimedia/vdr-sc/package.mk similarity index 66% rename from packages/3rdparty/multimedia/vdr-sc/meta rename to packages/3rdparty/multimedia/vdr-sc/package.mk index db0d93f17f..c9be34e33c 100644 --- a/packages/3rdparty/multimedia/vdr-sc/meta +++ b/packages/3rdparty/multimedia/vdr-sc/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://85.17.209.13:6100/" PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" -PKG_DEPENDS="vdr openssl" -PKG_BUILD_DEPENDS="toolchain vdr openssl" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr openssl" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="TV" @@ -35,3 +35,26 @@ PKG_LONGDESC="TV" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_make_target() { + # dont build parallel + MAKEFLAGS=-j1 +} + +pre_configure_target() { + # vdr-sc fails building with LTO support + strip_lto + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" + export CSAFLAGS="$CFLAGS -Wall -fomit-frame-pointer -fexpensive-optimizations -funroll-loops" +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr-wirbelscan/build b/packages/3rdparty/multimedia/vdr-wirbelscan/build deleted file mode 100755 index 470986dae0..0000000000 --- a/packages/3rdparty/multimedia/vdr-wirbelscan/build +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -cd $PKG_BUILD -make VDRDIR="../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" - diff --git a/packages/3rdparty/multimedia/vdr-wirbelscan/meta b/packages/3rdparty/multimedia/vdr-wirbelscan/package.mk similarity index 75% rename from packages/3rdparty/multimedia/vdr-wirbelscan/meta rename to packages/3rdparty/multimedia/vdr-wirbelscan/package.mk index 63634870e6..777715974f 100644 --- a/packages/3rdparty/multimedia/vdr-wirbelscan/meta +++ b/packages/3rdparty/multimedia/vdr-wirbelscan/package.mk @@ -25,8 +25,8 @@ 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-$PKG_VERSION.tgz" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="TV" @@ -35,3 +35,19 @@ PKG_LONGDESC="TV" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} + diff --git a/packages/3rdparty/multimedia/vdr-wirbelscancontrol/build b/packages/3rdparty/multimedia/vdr-wirbelscancontrol/build deleted file mode 100755 index 7e4f905b96..0000000000 --- a/packages/3rdparty/multimedia/vdr-wirbelscancontrol/build +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -cd $PKG_BUILD -ln -sf ../vdr-wirbelscan-[0-9]*/wirbelscan_services.h - -make VDRDIR="../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" - diff --git a/packages/3rdparty/multimedia/vdr-wirbelscancontrol/meta b/packages/3rdparty/multimedia/vdr-wirbelscancontrol/package.mk similarity index 71% rename from packages/3rdparty/multimedia/vdr-wirbelscancontrol/meta rename to packages/3rdparty/multimedia/vdr-wirbelscancontrol/package.mk index e01d2b3a95..e6b0352eb3 100644 --- a/packages/3rdparty/multimedia/vdr-wirbelscancontrol/meta +++ b/packages/3rdparty/multimedia/vdr-wirbelscancontrol/package.mk @@ -25,8 +25,8 @@ PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://wirbel.htpc-forum.de/wirbelscancontrol/index2.html" PKG_URL="http://wirbel.htpc-forum.de/wirbelscancontrol/$PKG_NAME-$PKG_VERSION.tgz" -PKG_DEPENDS="vdr" -PKG_BUILD_DEPENDS="toolchain vdr vdr-wirbelscan" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS_TARGET="toolchain vdr vdr-wirbelscan" PKG_PRIORITY="optional" PKG_SECTION="multimedia" PKG_SHORTDESC="TV" @@ -35,3 +35,22 @@ PKG_LONGDESC="TV" PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +VDR_DIR=$(basename $BUILD/vdr-[0-9]*) +PKG_MAKE_OPTS_TARGET="VDRDIR=$ROOT/$BUILD/$VDR_DIR \ + LIBDIR=\".\" \ + LOCALEDIR=\"./locale\"" + +pre_configure_target() { + export CFLAGS="$CFLAGS -fPIC" + export CXXFLAGS="$CXXFLAGS -fPIC" + export LDFLAGS="$LDFLAGS -fPIC" +} + +pre_build_target() { + ln -sf $ROOT/$BUILD/vdr-wirbelscan-[0-9]*/wirbelscan_services.h $PKG_BUILD +} + +makeinstall_target() { + : # installation not needed, done by create-addon script +} diff --git a/packages/3rdparty/multimedia/vdr/build b/packages/3rdparty/multimedia/vdr/build deleted file mode 100755 index 752ead02d0..0000000000 --- a/packages/3rdparty/multimedia/vdr/build +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# Copyright (C) 2011 Anthony Nash (nash.ant@gmail.com) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -LDFLAGS=`echo $LDFLAGS | sed -e "s|-Wl,--as-needed||"` - -cd $PKG_BUILD - -cat > Make.config < Make.config < -Origin: extracted from the rotor plugin 0.1.4-vdr1.5 - -Index: b/device.h -=================================================================== ---- a/device.h -+++ b/device.h -@@ -24,6 +24,8 @@ - #include "spu.h" - #include "thread.h" - #include "tools.h" -+#include -+#include - - #define MAXDEVICES 16 // the maximum number of devices in the system - #define MAXPIDHANDLES 64 // the maximum number of different PIDs per device -@@ -337,6 +339,7 @@ - virtual bool HasProgramme(void) const; - ///< Returns true if the device is currently showing any programme to - ///< the user, either through replaying or live. -+ virtual bool SendDiseqcCmd(dvb_diseqc_master_cmd cmd) {return false;} - - // PID handle facilities - -Index: b/dvbdevice.c -=================================================================== ---- a/dvbdevice.c -+++ b/dvbdevice.c -@@ -283,6 +283,7 @@ - private: - static cMutex bondMutex; - enum eTunerStatus { tsIdle, tsSet, tsTuned, tsLocked }; -+ bool SendDiseqc; - int frontendType; - const cDvbDevice *device; - int fd_frontend; -@@ -299,6 +300,7 @@ - cMutex mutex; - cCondVar locked; - cCondVar newSet; -+ dvb_diseqc_master_cmd diseqc_cmd; - cDvbTuner *bondedTuner; - bool bondedMaster; - bool SetFrontendType(const cChannel *Channel); -@@ -325,12 +327,16 @@ - bool Locked(int TimeoutMs = 0); - int GetSignalStrength(void) const; - int GetSignalQuality(void) const; -+ bool SendDiseqcCmd(dvb_diseqc_master_cmd cmd); -+private: -+ int GetCurrentDeliverySystem(void); - }; - - cMutex cDvbTuner::bondMutex; - - cDvbTuner::cDvbTuner(const cDvbDevice *Device, int Fd_Frontend, int Adapter, int Frontend) - { -+ SendDiseqc = false; - frontendType = SYS_UNDEFINED; - device = Device; - fd_frontend = Fd_Frontend; -@@ -653,6 +659,35 @@ - return -1; - } - -+int cDvbTuner::GetCurrentDeliverySystem() -+{ -+ dtv_property Frontend[1]; -+ memset(&Frontend, 0, sizeof(Frontend)); -+ dtv_properties CmdSeq; -+ memset(&CmdSeq, 0, sizeof(CmdSeq)); -+ CmdSeq.props = Frontend; -+ Frontend[0].cmd = DTV_DELIVERY_SYSTEM; -+ Frontend[0].u.data = 0; -+ if (ioctl(fd_frontend, FE_GET_PROPERTY, &CmdSeq) < 0) { -+ esyslog("ERROR: frontend %d/%d: %m", adapter, frontend); -+ return SYS_UNDEFINED; -+ } -+ return Frontend[0].u.data; -+} -+ -+bool cDvbTuner::SendDiseqcCmd(dvb_diseqc_master_cmd cmd) -+{ -+ cMutexLock MutexLock(&mutex); -+ int frontendType = GetCurrentDeliverySystem(); -+ if ((frontendType != SYS_DVBS && frontendType != SYS_DVBS2) || SendDiseqc) -+ return false; -+ diseqc_cmd=cmd; -+ SendDiseqc=true; -+ newSet.Broadcast(); -+ return true; -+} -+ -+ - static unsigned int FrequencyToHz(unsigned int f) - { - while (f && f < 1000000) -@@ -874,6 +909,10 @@ - if (GetFrontendStatus(NewStatus)) - Status = NewStatus; - cMutexLock MutexLock(&mutex); -+ if (SendDiseqc) { -+ CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_MASTER_CMD, &diseqc_cmd)); -+ SendDiseqc=false; -+ } - int WaitTime = 1000; - switch (tunerStatus) { - case tsIdle: -@@ -1571,6 +1610,11 @@ - return dvbTuner ? dvbTuner->Locked(TimeoutMs) : false; - } - -+bool cDvbDevice::SendDiseqcCmd(dvb_diseqc_master_cmd cmd) -+{ -+ return dvbTuner->SendDiseqcCmd(cmd); -+} -+ - void cDvbDevice::SetTransferModeForDolbyDigital(int Mode) - { - setTransferModeForDolbyDigital = Mode; -Index: b/dvbdevice.h -=================================================================== ---- a/dvbdevice.h -+++ b/dvbdevice.h -@@ -196,6 +196,7 @@ - virtual bool SetChannelDevice(const cChannel *Channel, bool LiveView); - public: - virtual bool HasLock(int TimeoutMs = 0) const; -+ virtual bool SendDiseqcCmd(dvb_diseqc_master_cmd cmd); - - // PID handle facilities - diff --git a/packages/addons/service/multimedia/vdr-addon/addon b/packages/addons/service/multimedia/vdr-addon/addon index eb4fbcc89e..e518598b0d 100755 --- a/packages/addons/service/multimedia/vdr-addon/addon +++ b/packages/addons/service/multimedia/vdr-addon/addon @@ -40,7 +40,6 @@ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/res/plugins/live cp -PR $BUILD/vdr-live-*/live/* $ADDON_BUILD/$PKG_ADDON_ID/res/plugins/live mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins - cp $BUILD/rotorng-[0-9]*/examples/rotorng.conf $ADDON_BUILD/$PKG_ADDON_ID/config/plugins mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/epgsources/ cp $BUILD/vdr-plugin-xmltv2vdr*/dist/epgdata2xmltv/epgdata2xmltv.dist $ADDON_BUILD/$PKG_ADDON_ID/config/epgsources/epgdata2xmltv @@ -57,7 +56,6 @@ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-plugin-streamdev-*/server/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-plugin-streamdev-*/client/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-live-*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin - cp -PR $BUILD/rotorng-*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-control-*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-epgsearch*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-plugin-xmltv2vdr*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin diff --git a/packages/addons/service/multimedia/vdr-addon/changelog.txt b/packages/addons/service/multimedia/vdr-addon/changelog.txt index 2c7f163a57..8c1b288580 100644 --- a/packages/addons/service/multimedia/vdr-addon/changelog.txt +++ b/packages/addons/service/multimedia/vdr-addon/changelog.txt @@ -1,3 +1,7 @@ +4.0.1 +- update to vdr-2.1.1 +- remove rotorng. dish positioner is now implemented in vdr + 4.0.0 - update to vdr-2.0.3 - update to vdr-plugin-vnsiserver-cd5023b diff --git a/packages/addons/service/multimedia/vdr-addon/config/settings.xml b/packages/addons/service/multimedia/vdr-addon/config/settings.xml index 0638f63c8c..bacfd254f4 100644 --- a/packages/addons/service/multimedia/vdr-addon/config/settings.xml +++ b/packages/addons/service/multimedia/vdr-addon/config/settings.xml @@ -14,7 +14,6 @@ - diff --git a/packages/addons/service/multimedia/vdr-addon/meta b/packages/addons/service/multimedia/vdr-addon/meta index 3bb7960356..722aabf79f 100644 --- a/packages/addons/service/multimedia/vdr-addon/meta +++ b/packages/addons/service/multimedia/vdr-addon/meta @@ -20,14 +20,14 @@ ################################################################################ PKG_NAME="vdr-addon" -PKG_VERSION="3.1" -PKG_REV="0" +PKG_VERSION="4.0" +PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.openelec.tv" PKG_URL="" PKG_DEPENDS="" -PKG_BUILD_DEPENDS="toolchain attr libcap vdr vdr-plugin-xvdr vdr-plugin-vnsiserver vdr-iptv vdr-wirbelscan vdr-wirbelscancontrol vdr-sc vdr-plugin-dvbapi vdr-plugin-streamdev vdr-live rotorng vdr-control vdr-epgsearch vdr-plugin-xmltv2vdr" +PKG_BUILD_DEPENDS="toolchain attr libcap vdr vdr-plugin-xvdr vdr-plugin-vnsiserver vdr-iptv vdr-wirbelscan vdr-wirbelscancontrol vdr-sc vdr-plugin-dvbapi vdr-plugin-streamdev vdr-live vdr-control vdr-epgsearch vdr-plugin-xmltv2vdr" PKG_PRIORITY="optional" PKG_SECTION="service.multimedia" PKG_SHORTDESC="vdr: A powerful DVB TV application" diff --git a/packages/addons/service/multimedia/vdr-addon/source/bin/vdr b/packages/addons/service/multimedia/vdr-addon/source/bin/vdr deleted file mode 100755 index 779d30f836..0000000000 --- a/packages/addons/service/multimedia/vdr-addon/source/bin/vdr +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. /etc/profile - -ADDON_DIR="$HOME/.xbmc/addons/service.multimedia.vdr-addon" -LD_LIBRARY_PATH="$ADDON_DIR/lib:$LD_LIBRARY_PATH" vdr.bin $@ diff --git a/packages/addons/service/multimedia/vdr-addon/source/bin/vdr.start b/packages/addons/service/multimedia/vdr-addon/source/bin/vdr.start index f42af44147..d737061b93 100755 --- a/packages/addons/service/multimedia/vdr-addon/source/bin/vdr.start +++ b/packages/addons/service/multimedia/vdr-addon/source/bin/vdr.start @@ -129,9 +129,6 @@ fi if [ "$ENABLE_LIVE" == "true" ] ; then VDR_ARG="$VDR_ARG -P 'live -i $LIVE_IP -p $LIVE_PORT'" fi -if [ "$ENABLE_ROTORNG" == "true" ] ; then - VDR_ARG="$VDR_ARG -P rotorng" -fi if [ "$ENABLE_CONTROL" == "true" ] ; then VDR_ARG="$VDR_ARG -P 'control -p $CONTROL_PORT'" fi diff --git a/packages/addons/service/multimedia/vdr-addon/source/resources/language/English/strings.xml b/packages/addons/service/multimedia/vdr-addon/source/resources/language/English/strings.xml index 8a11574686..7c1087978f 100644 --- a/packages/addons/service/multimedia/vdr-addon/source/resources/language/English/strings.xml +++ b/packages/addons/service/multimedia/vdr-addon/source/resources/language/English/strings.xml @@ -17,7 +17,6 @@ Enable plugin: live live: listen on ip live: listen on port - Enable plugin: rotorng Enable plugin: control control: listen on port Enable plugin: epgsearch diff --git a/packages/addons/service/multimedia/vdr-addon/source/resources/settings.xml b/packages/addons/service/multimedia/vdr-addon/source/resources/settings.xml index 4102f16afb..f7384ac93c 100644 --- a/packages/addons/service/multimedia/vdr-addon/source/resources/settings.xml +++ b/packages/addons/service/multimedia/vdr-addon/source/resources/settings.xml @@ -25,7 +25,6 @@ - diff --git a/packages/devel/llvm/patches/llvm-3.3-fix-rpath.patch b/packages/devel/llvm/patches/llvm-3.3-fix-rpath.patch new file mode 100644 index 0000000000..0bf8e4ffdb --- /dev/null +++ b/packages/devel/llvm/patches/llvm-3.3-fix-rpath.patch @@ -0,0 +1,24 @@ +commit 59c7f0369a67e1aecf365c92186bc5b45e0efcba +Author: Stefan Saraev +Date: Mon Oct 14 22:03:43 2013 +0300 + + fix rpath + +diff --git a/Makefile.rules b/Makefile.rules +index f0c542b..fc5fe64 100644 +--- a/Makefile.rules ++++ b/Makefile.rules +@@ -639,11 +639,10 @@ endif + ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW)) + ifneq ($(HOST_OS), Darwin) + ifdef TOOLNAME +- LD.Flags += $(RPATH) -Wl,'$$ORIGIN/../lib' + ifdef EXAMPLE_TOOL +- LD.Flags += $(RPATH) -Wl,$(ExmplDir) $(DynamicFlag) ++ LD.Flags += $(DynamicFlag) + else +- LD.Flags += $(RPATH) -Wl,$(ToolDir) $(DynamicFlag) ++ LD.Flags += $(DynamicFlag) + endif + endif + else diff --git a/packages/linux/patches/3.11.5/linux-706-Sitecom-N300.patch b/packages/linux/patches/3.11.5/linux-706-Sitecom-N300.patch new file mode 100644 index 0000000000..9f52eeb2d5 --- /dev/null +++ b/packages/linux/patches/3.11.5/linux-706-Sitecom-N300.patch @@ -0,0 +1,11 @@ +diff -Naur linux-3.10.16/drivers/staging/rtl8712/usb_intf.c linux-3.10.16.patch/drivers/staging/rtl8712/usb_intf.c +--- linux-3.10.16/drivers/staging/rtl8712/usb_intf.c 2013-10-14 01:08:56.000000000 +0200 ++++ linux-3.10.16.patch/drivers/staging/rtl8712/usb_intf.c 2013-10-16 13:27:44.032951265 +0200 +@@ -92,6 +92,7 @@ + {USB_DEVICE(0x0DF6, 0x005B)}, + {USB_DEVICE(0x0DF6, 0x005D)}, + {USB_DEVICE(0x0DF6, 0x0063)}, ++ {USB_DEVICE(0x0DF6, 0x006C)}, + /* Sweex */ + {USB_DEVICE(0x177F, 0x0154)}, + /* Thinkware */ diff --git a/packages/mediacenter/service.openelec.settings/meta b/packages/mediacenter/service.openelec.settings/meta index 186fc1e7d5..2e1f6b1e01 100644 --- a/packages/mediacenter/service.openelec.settings/meta +++ b/packages/mediacenter/service.openelec.settings/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="service.openelec.settings" -PKG_VERSION="0.3.4" +PKG_VERSION="0.3.5" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="prop." diff --git a/packages/mediacenter/xbmc-addon-xvdr/patches/frodo-acd4e14/xbmc-addon-xvdr-fix-scrambled-hd-channel-scan.patch b/packages/mediacenter/xbmc-addon-xvdr/patches/frodo-acd4e14/xbmc-addon-xvdr-fix-scrambled-hd-channel-scan.patch deleted file mode 100644 index dd87a04bcb..0000000000 --- a/packages/mediacenter/xbmc-addon-xvdr/patches/frodo-acd4e14/xbmc-addon-xvdr-fix-scrambled-hd-channel-scan.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 7c1bae9cc4819ed9148354fd878824b40bd7a6a5 Mon Sep 17 00:00:00 2001 -From: Stefan Saraev -Date: Sun, 6 Oct 2013 17:48:50 +0300 -Subject: [PATCH] fix scrambled/hd channel scan - -from wirbelscan: - #define SCAN_TV ( 1 << 0 ) - #define SCAN_RADIO ( 1 << 1 ) - #define SCAN_FTA ( 1 << 2 ) - #define SCAN_SCRAMBLED ( 1 << 3 ) - #define SCAN_HD ( 1 << 4 ) ---- - src/libxvdr/include/xvdr/dataset.h | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/libxvdr/include/xvdr/dataset.h b/src/libxvdr/include/xvdr/dataset.h -index 53b0540..36d9a94 100644 ---- a/src/libxvdr/include/xvdr/dataset.h -+++ b/src/libxvdr/include/xvdr/dataset.h -@@ -287,8 +287,8 @@ public: - FLAG_TV = 1, - FLAG_RADIO = 2, - FLAG_FTA = 4, -- FLAG_SCRAMBLED = 16, -- FLAG_HDTV = 32 -+ FLAG_SCRAMBLED = 8, -+ FLAG_HDTV = 16 - } Flags; - - Verbosity verbosity; --- -1.7.2.5 - diff --git a/packages/mediacenter/xbmc/config/repository.openelec.tv/addon.xml b/packages/mediacenter/xbmc/config/repository.openelec.tv/addon.xml index 0fbebf8f1a..7b21ca7f12 100644 --- a/packages/mediacenter/xbmc/config/repository.openelec.tv/addon.xml +++ b/packages/mediacenter/xbmc/config/repository.openelec.tv/addon.xml @@ -1,7 +1,7 @@  diff --git a/packages/mediacenter/xbmc/package.mk b/packages/mediacenter/xbmc/package.mk index 6948fb7c76..6d52bc74fb 100644 --- a/packages/mediacenter/xbmc/package.mk +++ b/packages/mediacenter/xbmc/package.mk @@ -453,6 +453,7 @@ post_makeinstall_target() { rm -rf $INSTALL/usr/share/xbmc/addons/visualization.dxspectrum rm -rf $INSTALL/usr/share/xbmc/addons/visualization.itunes rm -rf $INSTALL/usr/share/xbmc/addons/visualization.milkdrop + rm -rf $INSTALL/usr/share/xbmc/addons/service.xbmc.versioncheck rm -rf $INSTALL/usr/share/xsessions mkdir -p $INSTALL/usr/share/xbmc/addons diff --git a/packages/mediacenter/xbmc/profile.d/02-xbmc-addon-path.conf b/packages/mediacenter/xbmc/profile.d/02-xbmc-addon-path.conf deleted file mode 100644 index 23f1e1f2f0..0000000000 --- a/packages/mediacenter/xbmc/profile.d/02-xbmc-addon-path.conf +++ /dev/null @@ -1,39 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ -# Core (PATH) environment variables. -# -# This file contains non-OpenELEC evironment variables as well as OpenELEC -# evironment variables that are not user defined. -################################################################################ - -# hack: add addons to $PATH - for addon in /storage/.xbmc/addons/*/bin; do - if [ -d "$addon" ] ; then - PATH="$PATH:$addon" - fi - done - - for sys in /usr/lib/xbmc/addons/*/bin; do - if [ -d "$sys" ] ; then - PATH="$PATH:$sys" - fi - done - -export PATH diff --git a/packages/mediacenter/xbmc/profile.d/02-xbmc-library-path.conf b/packages/mediacenter/xbmc/profile.d/02-xbmc-library-path.conf deleted file mode 100644 index cbecaa784d..0000000000 --- a/packages/mediacenter/xbmc/profile.d/02-xbmc-library-path.conf +++ /dev/null @@ -1,43 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# Added by Adam Boeglin: adamrb@gmail.com -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ -# Core (PATH) environment variables. -# -# This file contains non-OpenELEC evironment variables as well as OpenELEC -# evironment variables that are not user defined. -################################################################################ - -LD_LIBRARY_PATH="/usr/lib:/lib" - -# hack: add addons to $LD_LIBRARY_PATH - for addon in /storage/.xbmc/addons/*/lib; do - if [ -d "$addon" ] ; then - LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$addon" - fi - done - - for sys in /usr/lib/xbmc/addons/*/lib; do - if [ -d "$sys" ] ; then - LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$sys" - fi - done - -export LD_LIBRARY_PATH diff --git a/packages/sysutils/busybox/profile.d/00-path-variable.conf b/packages/mediacenter/xbmc/profile.d/02-xbmc.conf similarity index 68% rename from packages/sysutils/busybox/profile.d/00-path-variable.conf rename to packages/mediacenter/xbmc/profile.d/02-xbmc.conf index 0866b8bc0a..7cc843c7fe 100644 --- a/packages/sysutils/busybox/profile.d/00-path-variable.conf +++ b/packages/mediacenter/xbmc/profile.d/02-xbmc.conf @@ -17,12 +17,22 @@ # the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. # http://www.gnu.org/copyleft/gpl.html ################################################################################ -# Core (PATH) environment variables. -# -# This file contains non-OpenELEC evironment variables as well as OpenELEC -# evironment variables that are not user defined. -################################################################################ - -PATH="/bin:/sbin:/usr/bin:/usr/sbin" +# PATH +for addon in /storage/.xbmc/addons/*/bin; do + [ -d "$addon" ] && PATH="$PATH:$addon" +done +for sys in /usr/lib/xbmc/addons/*/bin; do + [ -d "$sys" ] && PATH="$PATH:$sys" +done export PATH + +# LD_LIBRARY_PATH +LD_LIBRARY_PATH="/usr/lib:/lib" +for addon in /storage/.xbmc/addons/*/lib; do + [ -d "$addon" ] && LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$addon" +done +for sys in /usr/lib/xbmc/addons/*/lib; do + [ -d "$sys" ] && LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$sys" +done +export LD_LIBRARY_PATH diff --git a/packages/mediacenter/xbmc/profile.d/91-xbmc-startdelay.conf b/packages/mediacenter/xbmc/profile.d/91-xbmc-startdelay.conf deleted file mode 100644 index dccfb87280..0000000000 --- a/packages/mediacenter/xbmc/profile.d/91-xbmc-startdelay.conf +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ -# Mediacenter environment variables. -# -# This file contains non-OpenELEC evironment variables as well as OpenELEC -# evironment variables that are not user defined. -################################################################################ - -if [ -z "$XBMC_STARTDELAY" ]; then - XBMC_STARTDELAY="1000000" -fi diff --git a/packages/mediacenter/xbmc/profile.d/92-xbmc-gputype.conf b/packages/mediacenter/xbmc/profile.d/92-xbmc-gputype.conf deleted file mode 100644 index 775cb74d2a..0000000000 --- a/packages/mediacenter/xbmc/profile.d/92-xbmc-gputype.conf +++ /dev/null @@ -1,36 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ -# Mediacenter environment variables. -# -# This file contains non-OpenELEC evironment variables as well as OpenELEC -# evironment variables that are not user defined. -################################################################################ - -GPUTYPE="OTHER" - -if [ -x /usr/bin/lspci ]; then - GPUDEVICE=$(lspci -n | grep 0300) - - [ "$(echo $GPUDEVICE | grep 8086)" ] && GPUTYPE="INTEL" # 8086 == INTEL - [ "$(echo $GPUDEVICE | grep 10de)" ] && GPUTYPE="NVIDIA" # 10de == NVIDIA - [ "$(echo $GPUDEVICE | grep 1002)" ] && GPUTYPE="AMD" # 1002 == AMD -fi - -export GPUTYPE diff --git a/packages/mediacenter/xbmc/scripts/xbmc-sources b/packages/mediacenter/xbmc/scripts/xbmc-sources index 513496dd25..eccea1e62d 100755 --- a/packages/mediacenter/xbmc/scripts/xbmc-sources +++ b/packages/mediacenter/xbmc/scripts/xbmc-sources @@ -88,6 +88,11 @@ EOF # # Always sync to vblank + if [ -x /usr/bin/lspci ]; then + GPUDEVICE=$(lspci -n | grep 0300) + [ "$(echo $GPUDEVICE | grep 10de)" ] && GPUTYPE="NVIDIA" # 10de == NVIDIA + [ "$(echo $GPUDEVICE | grep 1002)" ] && GPUTYPE="AMD" # 1002 == AMD + fi if [ "$GPUTYPE" = "NVIDIA" -o "$GPUTYPE" = "AMD" ] ; then cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF diff --git a/packages/network/avahi/system.d/avahi-daemon.service b/packages/network/avahi/system.d/avahi-daemon.service index 25d69cdec6..af5e8ee151 100644 --- a/packages/network/avahi/system.d/avahi-daemon.service +++ b/packages/network/avahi/system.d/avahi-daemon.service @@ -9,6 +9,7 @@ ConditionPathExists=/storage/.cache/services/avahi.conf EnvironmentFile=-/run/openelec/debug/avahi.conf ExecStart=/usr/sbin/avahi-daemon -s $AVAHI_DEBUG ExecReload=/usr/sbin/avahi-daemon -r +TimeoutStopSec=1s [Install] WantedBy=multi-user.target diff --git a/packages/network/bluez/package.mk b/packages/network/bluez/package.mk index 107f100021..4ad9b1d5f1 100644 --- a/packages/network/bluez/package.mk +++ b/packages/network/bluez/package.mk @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="bluez" -PKG_VERSION="5.8" +PKG_VERSION="5.10" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" @@ -59,6 +59,7 @@ PKG_CONFIGURE_OPTS_TARGET="--disable-dependency-tracking \ --enable-tools \ --enable-datafiles \ --disable-experimental \ + --enable-playstation-peripheral \ --with-gnu-ld \ $BLUEZ_CONFIG \ storagedir=/storage/.cache/bluetooth" diff --git a/packages/network/bluez/patches/bluez-logitech.patch b/packages/network/bluez/patches/bluez-logitech.patch deleted file mode 100644 index 3c2c297095..0000000000 --- a/packages/network/bluez/patches/bluez-logitech.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur bluez-5.8/tools/hid2hci.rules bluez-5.8.patch/tools/hid2hci.rules ---- bluez-5.8/tools/hid2hci.rules 2012-12-24 18:46:55.000000000 +0100 -+++ bluez-5.8.patch/tools/hid2hci.rules 2013-09-23 15:34:52.148848897 +0200 -@@ -11,7 +11,7 @@ - RUN+="hid2hci --method=dell --devpath=%p", ENV{HID2HCI_SWITCH}="1" - - # Logitech devices --KERNEL=="hiddev*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \ -+KERNEL=="hiddev*|hidraw*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \ - RUN+="hid2hci --method=logitech-hid --devpath=%p" - - ENV{DEVTYPE}!="usb_device", GOTO="hid2hci_end" diff --git a/packages/network/bluez/patches/bluez-playstation-peripheral-pugin-v5.x.patch b/packages/network/bluez/patches/bluez-playstation-peripheral-pugin-v5.x.patch new file mode 100644 index 0000000000..222f0239b7 --- /dev/null +++ b/packages/network/bluez/patches/bluez-playstation-peripheral-pugin-v5.x.patch @@ -0,0 +1,1028 @@ +From 76986f1d8d356ddd6a1c31190627ecbe8ab1d773 Mon Sep 17 00:00:00 2001 +From: Antonio Ospite +Date: Mon, 19 Sep 2011 18:15:40 +0200 +Subject: [PATCH 1/5] adapter: add a btd_adapter_get_default_address() call +X-Face: z*RaLf`X<@C75u6Ig9}{oW$H;1_\2t5)({*|jhM/Vb;]yA5\I~93>J<_`<4)A{':UrE + +Add a new btd_* call to get the default adapter address as a string. + +This is meant to be used, for instance, by _external_ plugins which want +to know the default adapter address for some reason (e.g. to send it to +a device for some custom pairing scheme like in the case of Playstation +peripherals). + +External plugins can only use symbols marked as "global" in +src/bluetooth.ver, this patch avoids making global these symbols: + + adapter_get_address + bt_malloc + ba2str +--- + src/adapter.c | 17 +++++++++++++++++ + src/adapter.h | 1 + + 2 files changed, 18 insertions(+) + +diff --git a/src/adapter.c b/src/adapter.c +index 1250966..a7a2530 100644 +--- a/src/adapter.c ++++ b/src/adapter.c +@@ -224,6 +224,23 @@ struct btd_adapter *btd_adapter_get_default(void) + return NULL; + } + ++char *btd_adapter_get_default_address(void) ++{ ++ struct btd_adapter *adapter; ++ char *str; ++ ++ adapter = btd_adapter_get_default(); ++ if (adapter == NULL) ++ return NULL; ++ ++ str = bt_malloc(18); ++ if (str == NULL) ++ return NULL; ++ ++ ba2str(adapter_get_address(adapter), str); ++ return str; ++} ++ + bool btd_adapter_is_default(struct btd_adapter *adapter) + { + if (!adapter) +diff --git a/src/adapter.h b/src/adapter.h +index 2de8730..ed99b55 100644 +--- a/src/adapter.h ++++ b/src/adapter.h +@@ -38,6 +38,7 @@ + struct btd_adapter; + + struct btd_adapter *btd_adapter_get_default(void); ++char *btd_adapter_get_default_address(void); + bool btd_adapter_is_default(struct btd_adapter *adapter); + uint16_t btd_adapter_get_index(struct btd_adapter *adapter); + +-- +1.7.10.4 + + +From 2321b3b669de2edc3a9be2e1980c4b1f5312e176 Mon Sep 17 00:00:00 2001 +From: Antonio Ospite +Date: Mon, 19 Sep 2011 18:13:57 +0200 +Subject: [PATCH 2/5] adapter: add a btd_create_stored_device() call +X-Face: z*RaLf`X<@C75u6Ig9}{oW$H;1_\2t5)({*|jhM/Vb;]yA5\I~93>J<_`<4)A{':UrE + +Add a new btd_* call to add a new device to the database of known +devices. + +This is particularly useful to register Bluetooth devices using +a non-Bluetooth mechanism (e.g. USB-pairing in the case of Playstation +peripherals). + +The interface uses a btd_ prefix and relies only on native C types in +order to be more easily used by _external_ plugins. + +External plugins can only use symbols marked as "global" in +src/bluetooth.ver, this patch avoids making global these symbols: + + store_sdp_record + str2ba + adapter_get_device + device_set_name + device_set_temporary + device_set_trusted +--- + src/adapter.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ + src/adapter.h | 11 +++++++++++ + 2 files changed, 63 insertions(+) + +diff --git a/src/adapter.c b/src/adapter.c +index a7a2530..ea3a739 100644 +--- a/src/adapter.c ++++ b/src/adapter.c +@@ -6318,3 +6318,55 @@ void adapter_shutdown(void) + if (!adapter_remaining) + btd_exit(); + } ++ ++int btd_create_stored_device(char *adapter_address, ++ char *device_address, ++ char *name, ++ uint16_t vendor_id_source, ++ uint16_t vendor_id, ++ uint16_t product_id, ++ uint16_t version_id, ++ const char *uuid, ++ char *sdp_record, ++ bool trusted) ++{ ++ struct btd_adapter *adapter; ++ struct btd_device *device; ++ bdaddr_t dst; ++ int ret = 0; ++ ++ store_sdp_record(adapter_address, device_address, 0x10000, sdp_record); ++ ++ str2ba(device_address, &dst); ++ ++ adapter = btd_adapter_get_default(); ++ if (adapter == NULL) { ++ DBG("Failed to get the adapter"); ++ ret = -EPERM; ++ goto out; ++ } ++ ++ /* This will create the device if necessary */ ++ device = adapter_get_device(adapter, &dst, BDADDR_BREDR); ++ if (device == NULL) { ++ DBG("Failed to get the device"); ++ ret = -ENODEV; ++ goto out; ++ } ++ ++ if (name) ++ device_set_name(device, name); ++ ++ btd_device_set_pnpid(device, vendor_id_source, ++ vendor_id, product_id, version_id); ++ ++ if (uuid) ++ btd_device_add_uuid(device, uuid); ++ ++ device_set_temporary(device, FALSE); ++ ++ if (trusted) ++ device_set_trusted(device, TRUE); ++out: ++ return ret; ++} +diff --git a/src/adapter.h b/src/adapter.h +index ed99b55..2abc9ce 100644 +--- a/src/adapter.h ++++ b/src/adapter.h +@@ -214,3 +214,14 @@ gboolean btd_adapter_check_oob_handler(struct btd_adapter *adapter); + void btd_adapter_for_each_device(struct btd_adapter *adapter, + void (*cb)(struct btd_device *device, void *data), + void *data); ++ ++int btd_create_stored_device(char *adapter_address, ++ char *device_address, ++ char *name, ++ uint16_t vendor_id_source, ++ uint16_t vendor_id, ++ uint16_t product_id, ++ uint16_t version_id, ++ const char *uuid, ++ char *sdp_record, ++ bool trusted); +-- +1.7.10.4 + + +From bbdb42cb551fc8600025e2832cf6bf08fc51337e Mon Sep 17 00:00:00 2001 +From: Antonio Ospite +Date: Wed, 5 May 2010 13:43:09 +0200 +Subject: [PATCH 3/5] Add playstation-peripheral plugin: USB pairing and LEDs + settings +X-Face: z*RaLf`X<@C75u6Ig9}{oW$H;1_\2t5)({*|jhM/Vb;]yA5\I~93>J<_`<4)A{':UrE + +Add a plugin which handles the connection of a Playstation peripheral, +when a new hidraw device is connected the plugin: + + - Filters udev events, and select the Playstation peripheral + - Sets the Master bluetooth address in the peripheral (USB pairing) + - Sets LEDs to match the joystick system number if needed + (for USB and BT) + - Adds the device to the database of the current default + adapter (BT association) + +Signed-off-by: Bastien Nocera +Signed-off-by: Antonio Ospite +--- + Makefile.am | 7 + + configure.ac | 10 + + plugins/playstation-peripheral-hid.c | 263 ++++++++++++++++++++++ + plugins/playstation-peripheral-hid.h | 10 + + plugins/playstation-peripheral.c | 401 ++++++++++++++++++++++++++++++++++ + 5 files changed, 691 insertions(+) + create mode 100644 plugins/playstation-peripheral-hid.c + create mode 100644 plugins/playstation-peripheral-hid.h + create mode 100644 plugins/playstation-peripheral.c + +diff --git a/Makefile.am b/Makefile.am +index 9d570fb..a78a8ba 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -112,6 +112,13 @@ builtin_nodist = + + include Makefile.plugins + ++if PLAYSTATION_PERIPHERAL_PLUGIN ++plugin_LTLIBRARIES += plugins/playstation-peripheral.la ++plugins_playstation_peripheral_la_SOURCES = plugins/playstation-peripheral.c plugins/playstation-peripheral-hid.c ++plugins_playstation_peripheral_la_LDFLAGS = -module -avoid-version -no-undefined @UDEV_LIBS@ ++plugins_playstation_peripheral_la_CFLAGS = -fvisibility=hidden @DBUS_CFLAGS@ @GLIB_CFLAGS@ @UDEV_CFLAGS@ ++endif ++ + if MAINTAINER_MODE + plugin_LTLIBRARIES += plugins/external-dummy.la + plugins_external_dummy_la_SOURCES = plugins/external-dummy.c +diff --git a/configure.ac b/configure.ac +index f3c58be..7e0cc0c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -229,6 +229,16 @@ AC_ARG_ENABLE(experimental, AC_HELP_STRING([--enable-experimental], + [enable_experimental=${enableval}]) + AM_CONDITIONAL(EXPERIMENTAL, test "${enable_experimental}" = "yes") + ++AC_ARG_ENABLE(playstation_peripheral, AC_HELP_STRING([--enable-playstation-peripheral], ++ [enable playstation-peripheral plugin]), ++ [enable_playstation_peripheral=${enableval}]) ++ ++if (test "${enble_playstation_peripheral}" != "no" && test "${enable_udev}" != "no"); then ++ AC_DEFINE(HAVE_PLAYSTATION_PERIPHERAL_PLUGIN, 1, [Define to 1 if you have playstation-peripheral plugin.]) ++fi ++ ++AM_CONDITIONAL(PLAYSTATION_PERIPHERAL_PLUGIN, test "${enable_playstation_peripheral}" != "no" && test "${enable_udev}" != "no") ++ + if (test "${prefix}" = "NONE"); then + dnl no prefix and no localstatedir, so default to /var + if (test "$localstatedir" = '${prefix}/var'); then +diff --git a/plugins/playstation-peripheral-hid.c b/plugins/playstation-peripheral-hid.c +new file mode 100644 +index 0000000..9c5e530 +--- /dev/null ++++ b/plugins/playstation-peripheral-hid.c +@@ -0,0 +1,263 @@ ++/* ++ * playstation peripheral plugin: lowlevel hid functions ++ * ++ * Copyright (C) 2011 Antonio Ospite ++ * ++ * ++ * This program 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. ++ * ++ * This program 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 this program; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ++ * ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++ ++#include "log.h" ++#include "playstation-peripheral-hid.h" ++ ++/* Fallback definitions to compile with older headers */ ++#ifndef HIDIOCGFEATURE ++#define HIDIOCGFEATURE(len) _IOC(_IOC_WRITE|_IOC_READ, 'H', 0x07, len) ++#endif ++ ++#ifndef HIDIOCSFEATURE ++#define HIDIOCSFEATURE(len) _IOC(_IOC_WRITE|_IOC_READ, 'H', 0x06, len) ++#endif ++ ++#define BDADDR_STR_SIZE 18 /* strlen("00:00:00:00:00:00") + 1 */ ++ ++#define LED_1 (0x01 << 1) ++#define LED_2 (0x01 << 2) ++#define LED_3 (0x01 << 3) ++#define LED_4 (0x01 << 4) ++ ++#define LED_STATUS_OFF 0 ++#define LED_STATUS_ON 1 ++ ++/* Usb cable pairing section */ ++static unsigned char *get_feature_report(int fd, uint8_t report_number, ++ unsigned int len) ++{ ++ unsigned char *buf; ++ int ret; ++ ++ buf = calloc(len, sizeof(*buf)); ++ if (buf == NULL) { ++ error("%s:%s() calloc failed", __FILE__, __func__); ++ return NULL; ++ } ++ ++ buf[0] = report_number; ++ ++ ret = ioctl(fd, HIDIOCGFEATURE(len), buf); ++ if (ret < 0) { ++ error("%s:%s() HIDIOCGFEATURE ret = %d", ++ __FILE__, __func__, ret); ++ free(buf); ++ return NULL; ++ } ++ ++ return buf; ++} ++ ++static int set_feature_report(int fd, uint8_t *report, int len) ++{ ++ int ret; ++ ++ ret = ioctl(fd, HIDIOCSFEATURE(len), report); ++ if (ret < 0) ++ error("%s:%s() HIDIOCSFEATURE failed, ret = %d", ++ __FILE__, __func__, ret); ++ ++ return ret; ++} ++ ++char *sixaxis_get_device_bdaddr(int fd) ++{ ++ unsigned char *buf; ++ char *address; ++ ++ buf = get_feature_report(fd, 0xf2, 18); ++ if (buf == NULL) { ++ error("%s:%s() cannot get feature report", __FILE__, __func__); ++ return NULL; ++ } ++ ++ address = calloc(BDADDR_STR_SIZE, sizeof(*address)); ++ if (address == NULL) { ++ error("%s:%s() calloc failed", __FILE__, __func__); ++ free(buf); ++ return NULL; ++ } ++ ++ snprintf(address, BDADDR_STR_SIZE, ++ "%02X:%02X:%02X:%02X:%02X:%02X", ++ buf[4], buf[5], buf[6], buf[7], buf[8], buf[9]); ++ ++ free(buf); ++ return address; ++} ++ ++char *sixaxis_get_master_bdaddr(int fd) ++{ ++ unsigned char *buf; ++ char *address; ++ ++ buf = get_feature_report(fd, 0xf5, 8); ++ if (buf == NULL) { ++ error("%s:%s() cannot get feature report", __FILE__, __func__); ++ return NULL; ++ } ++ ++ address = calloc(BDADDR_STR_SIZE, sizeof(*address)); ++ if (address == NULL) { ++ error("%s:%s() calloc failed", __FILE__, __func__); ++ free(buf); ++ return NULL; ++ } ++ ++ snprintf(address, BDADDR_STR_SIZE, ++ "%02X:%02X:%02X:%02X:%02X:%02X", ++ buf[2], buf[3], buf[4], buf[5], buf[6], buf[7]); ++ ++ free(buf); ++ return address; ++} ++ ++int sixaxis_set_master_bdaddr(int fd, char *adapter_bdaddr) ++{ ++ uint8_t *report; ++ uint8_t addr[6]; ++ int ret; ++ ++ ret = sscanf(adapter_bdaddr, ++ "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx", ++ &addr[0], &addr[1], &addr[2], ++ &addr[3], &addr[4], &addr[5]); ++ if (ret != 6) { ++ error("%s:%s() Parsing the bt address failed", ++ __FILE__, __func__); ++ return -EINVAL; ++ } ++ ++ report = malloc(8); ++ if (report == NULL) { ++ error("%s:%s() malloc failed", __FILE__, __func__); ++ return -ENOMEM; ++ } ++ ++ report[0] = 0xf5; ++ report[1] = 0x01; ++ ++ report[2] = addr[0]; ++ report[3] = addr[1]; ++ report[4] = addr[2]; ++ report[5] = addr[3]; ++ report[6] = addr[4]; ++ report[7] = addr[5]; ++ ++ ret = set_feature_report(fd, report, 8); ++ if (ret < 0) { ++ error("%s:%s() cannot set feature report", ++ __FILE__, __func__); ++ goto out; ++ } ++ ++ DBG("New Master Bluetooth address: %s", adapter_bdaddr); ++ ++out: ++ free(report); ++ return ret; ++} ++ ++ ++/* Led setting section */ ++static int set_leds(int fd, unsigned char leds_status[4]) ++{ ++ int ret; ++ ++ /* ++ * the total time the led is active (0xff means forever) ++ * | duty_length: how long a cycle is in deciseconds: ++ * | | (0 means "blink very fast") ++ * | | ??? (Maybe a phase shift or duty_length multiplier?) ++ * | | | % of duty_length led is off (0xff means 100%) ++ * | | | | % of duty_length led is on (0xff is 100%) ++ * | | | | | ++ * 0xff, 0x27, 0x10, 0x00, 0x32, ++ */ ++ unsigned char leds_report[] = { ++ 0x01, ++ 0x00, 0x00, 0x00, 0x00, 0x00, /* rumble values TBD */ ++ 0x00, 0x00, 0x00, 0x00, 0x1e, /* LED_1=0x02, LED_2=0x04 ... */ ++ 0xff, 0x27, 0x10, 0x00, 0x32, /* LED_4 */ ++ 0xff, 0x27, 0x10, 0x00, 0x32, /* LED_3 */ ++ 0xff, 0x27, 0x10, 0x00, 0x32, /* LED_2 */ ++ 0xff, 0x27, 0x10, 0x00, 0x32, /* LED_1 */ ++ 0x00, 0x00, 0x00, 0x00, 0x00, ++ }; ++ ++ int leds = 0; ++ if (leds_status[0]) ++ leds |= LED_1; ++ if (leds_status[1]) ++ leds |= LED_2; ++ if (leds_status[2]) ++ leds |= LED_3; ++ if (leds_status[3]) ++ leds |= LED_4; ++ ++ leds_report[10] = leds; ++ ++ ret = write(fd, leds_report, sizeof(leds_report)); ++ if (ret < (ssize_t) sizeof(leds_report)) ++ error("%s:%s() Unable to write to hidraw device", ++ __FILE__, __func__); ++ ++ return ret; ++} ++ ++int set_controller_number(int fd, unsigned int n) ++{ ++ unsigned char leds_status[4] = {0, 0, 0, 0}; ++ ++ switch (n) { ++ case 0: ++ break; ++ case 1: ++ case 2: ++ case 3: ++ case 4: ++ leds_status[n - 1] = LED_STATUS_ON; ++ break; ++ case 5: ++ case 6: ++ case 7: ++ leds_status[4 - 1] = LED_STATUS_ON; ++ leds_status[n - 4 - 1] = LED_STATUS_ON; ++ break; ++ default: ++ error("%s:%s() Only 7 controllers supported for now", ++ __FILE__, __func__); ++ return -1; ++ } ++ ++ return set_leds(fd, leds_status); ++} +diff --git a/plugins/playstation-peripheral-hid.h b/plugins/playstation-peripheral-hid.h +new file mode 100644 +index 0000000..ade8fa0 +--- /dev/null ++++ b/plugins/playstation-peripheral-hid.h +@@ -0,0 +1,10 @@ ++#ifndef __PLAYSTATION_PERIPHERAL_HID_H ++#define __PLAYSTATION_PERIPHERAL_HID_H ++ ++char *sixaxis_get_device_bdaddr(int fd); ++char *sixaxis_get_master_bdaddr(int fd); ++int sixaxis_set_master_bdaddr(int fd, char *adapter_bdaddr); ++ ++int set_controller_number(int fd, unsigned int n); ++ ++#endif /* __PLAYSTATION_PERIPHERAL_HID_H */ +diff --git a/plugins/playstation-peripheral.c b/plugins/playstation-peripheral.c +new file mode 100644 +index 0000000..9238e92 +--- /dev/null ++++ b/plugins/playstation-peripheral.c +@@ -0,0 +1,401 @@ ++/* ++ * playstation peripheral plugin: support for Playstation peripherals ++ * ++ * Copyright (C) 2009 Bastien Nocera ++ * Copyright (C) 2011 Antonio Ospite ++ * ++ * ++ * This program 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. ++ * ++ * This program 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 this program; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ++ * ++ */ ++ ++/* ++ * In the following this terminology is used: ++ * ++ * - peripheral: a Playstation peripheral (Sixaxis, DS3, headset, etc.) ++ * - controller: an input peripheral ++ * - adapter: the bluetooth dongle on the host system. ++ * - adapter_bdaddr: the bdaddr of the bluetooth adapter. ++ * - device_bdaddr: the bdaddr of the Playstation peripheral. ++ * - master_bdaddr: the bdaddr of the adapter to be configured into the ++ * Playstation peripheral ++ * ++ * WHAT we need the plugin to do: ++ * ++ * - When a device is connected via USB: ++ * + Fetch the (default) adapter bdaddr (from BlueZ) and store it into ++ * the device ++ * + Fetch the device bdaddr (from the device via USB/HID) and make the ++ * device _trusted_ by the adapter (is "trusted" the correct term ++ * here? Or maybe this is more like a "static association"? Are the ++ * term "trusted" and "associated" in bluetooth context defined ++ * anywhere?) ++ * ++ * - When the device is connected via BT: ++ * + Nothing! It should work automatically. ++ * ++ * - Set LEDs when possible. ++ * ++ * WHY we need that: ++ * ++ * Playstation peripherals require/support USB cable pairing. ++ * ++ * It is required in the sense that devices will talk only to adapters ++ * they know. ++ * ++ * It is supported in the sense that this mechanism is optional on _some_ ++ * devices like the PS3 Keypad. ++ * ++ * On the PS3 these cable paired devices can be used via BT without ++ * further association steps once they have been connected ++ * _at_least_once_ via USB to a certain host (with a certain BT adapter ++ * that is), we would like to have the same behavior with BlueZ. ++ */ ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#define LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE 1 ++#include ++ ++#include "plugin.h" ++#include "log.h" ++#include "adapter.h" ++#include "device.h" ++#include "storage.h" ++#include "sdp_lib.h" ++ ++#include "playstation-peripheral-hid.h" ++ ++struct playstation_peripheral { ++ uint16_t vendor_id; ++ uint16_t product_id; ++ char *name; ++ char *sdp_record; ++ char *uuid; ++ ++ /* device specific callbacks to get master/device bdaddr and set ++ * master bdaddr ++ */ ++ char * (*get_device_bdaddr)(int); ++ char * (*get_master_bdaddr)(int); ++ int (*set_master_bdaddr) (int, char *); ++}; ++ ++static struct playstation_peripheral peripherals[] = { ++ { ++ .vendor_id = 0x054c, ++ .product_id = 0x0268, ++ .name = "PLAYSTATION(R)3 Controller", ++ .sdp_record = "3601920900000A000100000900013503191124090004350D35061901000900113503190011090006350909656E09006A0901000900093508350619112409010009000D350F350D350619010009001335031900110901002513576972656C65737320436F6E74726F6C6C65720901012513576972656C65737320436F6E74726F6C6C6572090102251B536F6E7920436F6D707574657220456E7465727461696E6D656E740902000901000902010901000902020800090203082109020428010902052801090206359A35980822259405010904A101A102850175089501150026FF00810375019513150025013500450105091901291381027501950D0600FF8103150026FF0005010901A10075089504350046FF0009300931093209358102C0050175089527090181027508953009019102750895300901B102C0A1028502750895300901B102C0A10285EE750895300901B102C0A10285EF750895300901B102C0C0090207350835060904090901000902082800090209280109020A280109020B09010009020C093E8009020D280009020E2800", ++ .uuid = "00001124-0000-1000-8000-00805f9b34fb", ++ .get_device_bdaddr = sixaxis_get_device_bdaddr, ++ .get_master_bdaddr = sixaxis_get_master_bdaddr, ++ .set_master_bdaddr = sixaxis_set_master_bdaddr, ++ }, ++}; ++ ++static struct udev *ctx; ++static struct udev_monitor *monitor; ++static guint watch_id; ++ ++static int create_peripheral_association(char *adapter_address, ++ char *device_address, ++ struct playstation_peripheral *peripheral) ++{ ++ return btd_create_stored_device(adapter_address, device_address, ++ peripheral->name, ++ 0x0002, /* VersionIDSource = USB Implementer's Forum */ ++ peripheral->vendor_id, ++ peripheral->product_id, ++ 0, /* version is hardcoded to 0 for now */ ++ peripheral->uuid, ++ peripheral->sdp_record, ++ 1); ++} ++ ++static int peripheral_pair(int fd, char *adapter_bdaddr, ++ struct playstation_peripheral *peripheral) ++{ ++ char *device_bdaddr; ++ char *master_bdaddr; ++ int ret = 0; ++ ++ master_bdaddr = peripheral->get_master_bdaddr(fd); ++ if (master_bdaddr == NULL) { ++ DBG("Failed to get the Old master Bluetooth address from the device"); ++ return -EPERM; ++ } ++ ++ /* Only set the master bdaddr when needed, this is how the PS3 does ++ * it, perhaps to avoid unnecessary writes to some eeprom. ++ */ ++ if (g_strcmp0(master_bdaddr, adapter_bdaddr) != 0) { ++ DBG("Old master Bluetooth address was: %s", master_bdaddr); ++ ret = peripheral->set_master_bdaddr(fd, adapter_bdaddr); ++ if (ret < 0) { ++ DBG("Failed to set the master Bluetooth address"); ++ free(master_bdaddr); ++ return ret; ++ } ++ } ++ ++ device_bdaddr = peripheral->get_device_bdaddr(fd); ++ if (device_bdaddr == NULL) { ++ DBG("Failed to get the Bluetooth address from the device"); ++ free(master_bdaddr); ++ return -EPERM; ++ } ++ ++ DBG("Device bdaddr %s", device_bdaddr); ++ ++ ret = create_peripheral_association(adapter_bdaddr, device_bdaddr, peripheral); ++ ++ free(device_bdaddr); ++ free(master_bdaddr); ++ return ret; ++} ++ ++static inline struct playstation_peripheral *find_playstation_peripheral(const char *hid_id) ++{ ++ unsigned int array_size = sizeof(peripherals)/sizeof(peripherals[0]); ++ unsigned int i; ++ int ret; ++ uint16_t protocol; ++ uint16_t vendor_id; ++ uint16_t product_id; ++ ++ ret = sscanf(hid_id, "%hx:%hx:%hx", &protocol, &vendor_id, &product_id); ++ if (ret != 3) { ++ error("%s:%s() Parsing HID_ID failed", ++ __FILE__, __func__); ++ return NULL; ++ } ++ ++ for (i = 0; i < array_size; i++) { ++ if (peripherals[i].vendor_id == vendor_id && ++ peripherals[i].product_id == product_id) ++ return &peripherals[i]; ++ } ++ ++ return NULL; ++} ++ ++static inline int is_usb_peripheral(const char *hid_id) ++{ ++ int ret; ++ uint16_t protocol; ++ uint16_t vendor_id; ++ uint16_t product_id; ++ ++ ret = sscanf(hid_id, "%hx:%hx:%hx", &protocol, &vendor_id, &product_id); ++ if (ret != 3) { ++ error("%s:%s() Parsing HID_ID failed", ++ __FILE__, __func__); ++ return 0; ++ } ++ ++ DBG("%hx:%hx:%hx", protocol, vendor_id, product_id); ++ return (protocol == 3); ++} ++ ++static void handle_device_plug(struct udev_device *udevice) ++{ ++ struct udev_device *hid_parent; ++ struct udev_enumerate *enumerate; ++ struct udev_list_entry *devices, *dev_list_entry; ++ const char *hid_id; ++ const char *hid_phys; ++ const char *hidraw_node; ++ unsigned char is_usb = FALSE; ++ int js_num = 0; ++ int fd; ++ struct playstation_peripheral *peripheral; ++ ++ hid_parent = udev_device_get_parent_with_subsystem_devtype(udevice, ++ "hid", NULL); ++ if (!hid_parent) { ++ error("%s:%s() cannot get parent hid device", ++ __FILE__, __func__); ++ return; ++ } ++ ++ hid_id = udev_device_get_property_value(hid_parent, "HID_ID"); ++ DBG("HID_ID: %s", hid_id); ++ ++ peripheral = find_playstation_peripheral(hid_id); ++ if (!peripheral) { ++ error("No supported peripheral found"); ++ return; ++ } ++ ++ DBG("Found a Playstation peripheral: %s", peripheral->name); ++ ++ hidraw_node = udev_device_get_devnode(udevice); ++ ++ /* looking for joysticks */ ++ hid_phys = udev_device_get_property_value(hid_parent, "HID_PHYS"); ++ ++ enumerate = udev_enumerate_new(udev_device_get_udev(udevice)); ++ udev_enumerate_add_match_sysname(enumerate, "js*"); ++ udev_enumerate_scan_devices(enumerate); ++ ++ devices = udev_enumerate_get_list_entry(enumerate); ++ udev_list_entry_foreach(dev_list_entry, devices) { ++ const char *devname; ++ struct udev_device *js_dev; ++ struct udev_device *input_parent; ++ const char *input_phys; ++ ++ devname = udev_list_entry_get_name(dev_list_entry); ++ js_dev = udev_device_new_from_syspath(udev_device_get_udev(udevice), ++ devname); ++ ++ input_parent = udev_device_get_parent_with_subsystem_devtype(js_dev, ++ "input", NULL); ++ if (!input_parent) { ++ error("%s:%s() cannot get parent input device.", ++ __FILE__, __func__); ++ continue; ++ } ++ ++ /* check this is the joystick relative to ++ * the hidraw device above */ ++ input_phys = udev_device_get_sysattr_value(input_parent, ++ "phys"); ++ if (g_strcmp0(input_phys, hid_phys) == 0) { ++ js_num = atoi(udev_device_get_sysnum(js_dev)) + 1; ++ DBG("joypad device_num: %d", js_num); ++ DBG("hidraw_node: %s", hidraw_node); ++ } ++ ++ udev_device_unref(js_dev); ++ } ++ ++ udev_enumerate_unref(enumerate); ++ ++ fd = open(hidraw_node, O_RDWR); ++ if (fd < 0) { ++ error("%s:%s() hidraw open", __FILE__, __func__); ++ return; ++ } ++ ++ is_usb = is_usb_peripheral(hid_id); ++ if (is_usb) { ++ char *adapter_bdaddr; ++ ++ adapter_bdaddr = btd_adapter_get_default_address(); ++ if (adapter_bdaddr == NULL) { ++ error("No adapters, exiting"); ++ return; ++ } ++ ++ DBG("Adapter bdaddr %s", adapter_bdaddr); ++ ++ peripheral_pair(fd, adapter_bdaddr, peripheral); ++ free(adapter_bdaddr); ++ } ++ ++ if (js_num > 0) ++ set_controller_number(fd, js_num); ++ ++ close(fd); ++} ++ ++static gboolean device_event_idle(struct udev_device *udevice) ++{ ++ handle_device_plug(udevice); ++ udev_device_unref(udevice); ++ return FALSE; ++} ++ ++static gboolean monitor_event(GIOChannel *source, GIOCondition condition, ++ gpointer data) ++{ ++ struct udev_device *udevice; ++ ++ udevice = udev_monitor_receive_device(monitor); ++ if (udevice == NULL) ++ goto out; ++ if (g_strcmp0(udev_device_get_action(udevice), "add") != 0) { ++ udev_device_unref(udevice); ++ goto out; ++ } ++ ++ /* Give UDEV some time to load kernel modules */ ++ g_timeout_add_seconds(1, (GSourceFunc) device_event_idle, udevice); ++ ++out: ++ return TRUE; ++} ++ ++static int playstation_peripheral_init(void) ++{ ++ GIOChannel *channel; ++ ++ DBG("Setup Playstation peripheral plugin"); ++ ++ ctx = udev_new(); ++ monitor = udev_monitor_new_from_netlink(ctx, "udev"); ++ if (monitor == NULL) { ++ error("%s:%s() Could not get udev monitor", ++ __FILE__, __func__); ++ return -1; ++ } ++ ++ /* Listen for newly connected hidraw interfaces */ ++ udev_monitor_filter_add_match_subsystem_devtype(monitor, ++ "hidraw", NULL); ++ udev_monitor_enable_receiving(monitor); ++ ++ channel = g_io_channel_unix_new(udev_monitor_get_fd(monitor)); ++ watch_id = g_io_add_watch(channel, G_IO_IN, monitor_event, NULL); ++ g_io_channel_unref(channel); ++ ++ return 0; ++} ++ ++static void playstation_peripheral_exit(void) ++{ ++ DBG("Cleanup Playstation peripheral plugin"); ++ ++ if (watch_id != 0) { ++ g_source_remove(watch_id); ++ watch_id = 0; ++ } ++ if (monitor != NULL) { ++ udev_monitor_unref(monitor); ++ monitor = NULL; ++ } ++ if (ctx != NULL) { ++ udev_unref(ctx); ++ ctx = NULL; ++ } ++} ++ ++BLUETOOTH_PLUGIN_DEFINE(playstation_peripheral, VERSION, ++ BLUETOOTH_PLUGIN_PRIORITY_DEFAULT, ++ playstation_peripheral_init, ++ playstation_peripheral_exit) +-- +1.7.10.4 + + +From 0b2c7efd2105f793170a8d0b90eaf49647315afb Mon Sep 17 00:00:00 2001 +From: Antonio Ospite +Date: Fri, 5 Aug 2011 13:06:27 +0200 +Subject: [PATCH 4/5] XXX: plugins/playstation-peripheral: Wait for the PS + button before setting the LEDs +X-Face: z*RaLf`X<@C75u6Ig9}{oW$H;1_\2t5)({*|jhM/Vb;]yA5\I~93>J<_`<4)A{':UrE + +Wait for actual input events, that is PS button has been pressed, before +setting the LEDs to indicate the controller number. +This makes setting LEDs look like on the PS3. + +NOTE: This change is experimental, the logic is too simple and can fail when +multiple peripherals are handled. Don't squash it into other commits. +--- + plugins/playstation-peripheral.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/plugins/playstation-peripheral.c b/plugins/playstation-peripheral.c +index 9238e92..c7d4bdf 100644 +--- a/plugins/playstation-peripheral.c ++++ b/plugins/playstation-peripheral.c +@@ -318,8 +318,16 @@ static void handle_device_plug(struct udev_device *udevice) + free(adapter_bdaddr); + } + +- if (js_num > 0) ++ if (js_num > 0) { ++ char c; ++ ++ /* wait for events before setting leds */ ++ if (read(fd, &c, 1) != 1) ++ error("%s:%s(): read error: %s", __FILE__, __func__, ++ strerror(errno)); ++ + set_controller_number(fd, js_num); ++ } + + close(fd); + } +-- +1.7.10.4 + + +From 8e72267e7af9fb223a6089e36d627d66b66924f9 Mon Sep 17 00:00:00 2001 +From: Antonio Ospite +Date: Mon, 10 Oct 2011 22:40:49 +0200 +Subject: [PATCH 5/5] XXX Add src/bluetoothd to plugins_playstation_peripheral + dependencies +X-Face: z*RaLf`X<@C75u6Ig9}{oW$H;1_\2t5)({*|jhM/Vb;]yA5\I~93>J<_`<4)A{':UrE + +NOTE: this change can be useful during development when we change bluez code +but it is probably overkill for the final submission. Don't squash it into +other commits. +--- + Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile.am b/Makefile.am +index a78a8ba..a14d678 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -114,6 +114,7 @@ include Makefile.plugins + + if PLAYSTATION_PERIPHERAL_PLUGIN + plugin_LTLIBRARIES += plugins/playstation-peripheral.la ++plugins_playstation_peripheral_la_DEPENDENCIES = src/bluetoothd + plugins_playstation_peripheral_la_SOURCES = plugins/playstation-peripheral.c plugins/playstation-peripheral-hid.c + plugins_playstation_peripheral_la_LDFLAGS = -module -avoid-version -no-undefined @UDEV_LIBS@ + plugins_playstation_peripheral_la_CFLAGS = -fvisibility=hidden @DBUS_CFLAGS@ @GLIB_CFLAGS@ @UDEV_CFLAGS@ +-- +1.7.10.4 + diff --git a/packages/network/bluez/patches/bluez-work-around-Logitech-diNovo-Edge-keyboard-firmware-i.patch b/packages/network/bluez/patches/bluez-work-around-Logitech-diNovo-Edge-keyboard-firmware-i.patch new file mode 100644 index 0000000000..e583320ecc --- /dev/null +++ b/packages/network/bluez/patches/bluez-work-around-Logitech-diNovo-Edge-keyboard-firmware-i.patch @@ -0,0 +1,29 @@ +From aa73bf5039dfd2cf0a52dd6fd22501d955cc1a00 Mon Sep 17 00:00:00 2001 +From: Tommy +Date: Thu, 10 Jan 2013 09:18:43 +0100 +Subject: [PATCH] work around Logitech diNovo Edge keyboard firmware issue + +https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/269851 +--- + tools/hid2hci.rules | 5 ++++- + 1 files changed, 4 insertions(+), 1 deletions(-) + +diff --git a/tools/hid2hci.rules b/tools/hid2hci.rules +index db6bb03..7db4572 100644 +--- a/tools/hid2hci.rules ++++ b/tools/hid2hci.rules +@@ -11,7 +11,10 @@ ATTR{bInterfaceClass}=="03", ATTR{bInterfaceSubClass}=="01", ATTR{bInterfaceProt + RUN+="hid2hci --method=dell --devpath=%p", ENV{HID2HCI_SWITCH}="1" + + # Logitech devices +-KERNEL=="hiddev*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[34bc]", \ ++KERNEL=="hiddev*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c70[345abce]|c71[3bc]", \ ++ RUN+="hid2hci --method=logitech-hid --devpath=%p" ++# Logitech, Inc. diNovo Edge Keyboard ++KERNEL=="hidraw*", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c714", \ + RUN+="hid2hci --method=logitech-hid --devpath=%p" + + ENV{DEVTYPE}!="usb_device", GOTO="hid2hci_end" +-- +1.8.0.1 + diff --git a/packages/network/bluez/system.d/bluetooth.service b/packages/network/bluez/system.d/bluetooth.service index 78f5be01b0..0c1c19f9c6 100644 --- a/packages/network/bluez/system.d/bluetooth.service +++ b/packages/network/bluez/system.d/bluetooth.service @@ -11,6 +11,7 @@ EnvironmentFile=-/run/openelec/debug/bluez.conf ExecStart=/usr/lib/bluetooth/bluetoothd $BLUEZ_ARGS $BLUEZ_DEBUG CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_RAW LimitNPROC=1 +TimeoutStopSec=1s [Install] WantedBy=bluetooth.target diff --git a/packages/network/bluez/system.d/obex.service b/packages/network/bluez/system.d/obex.service index 2ebffe880f..5a568d10c2 100644 --- a/packages/network/bluez/system.d/obex.service +++ b/packages/network/bluez/system.d/obex.service @@ -11,6 +11,7 @@ EnvironmentFile=/storage/.cache/services/obexd.conf EnvironmentFile=-/run/openelec/debug/obexd.conf ExecStartPre=/bin/sh -c 'mkdir -p $OBEXD_ROOT' ExecStart=/usr/lib/bluetooth/obexd -r $OBEXD_ROOT $OBEXD_DEBUG +TimeoutStopSec=1s [Install] WantedBy=bluetooth.target diff --git a/packages/network/openssh/system.d/sshd.service b/packages/network/openssh/system.d/sshd.service index b41aade5a1..d19b9971ae 100644 --- a/packages/network/openssh/system.d/sshd.service +++ b/packages/network/openssh/system.d/sshd.service @@ -9,6 +9,7 @@ EnvironmentFile=-/storage/.cache/services/sshd.conf ExecStartPre=/usr/sbin/sshd-keygen ExecStart=/usr/sbin/sshd -D $SSH_ARGS ExecReload=/bin/kill -HUP $MAINPID +TimeoutStopSec=1s [Install] WantedBy=multi-user.target diff --git a/packages/network/rpcbind/system.d/rpcbind.service b/packages/network/rpcbind/system.d/rpcbind.service index 59464ee99e..13c0aa264c 100644 --- a/packages/network/rpcbind/system.d/rpcbind.service +++ b/packages/network/rpcbind/system.d/rpcbind.service @@ -6,6 +6,7 @@ After=syslog.target network.target [Service] Type=forking ExecStart=/usr/bin/rpcbind +TimeoutStopSec=1s [Install] WantedBy=multi-user.target diff --git a/packages/network/samba/system.d.opt/nmbd.service b/packages/network/samba/system.d.opt/nmbd.service index a4a48261d2..35711a0185 100644 --- a/packages/network/samba/system.d.opt/nmbd.service +++ b/packages/network/samba/system.d.opt/nmbd.service @@ -11,6 +11,7 @@ Type=forking PIDFile=/var/run/nmbd-smb.conf.pid ExecStart=/usr/bin/nmbd --configfile=/run/samba/smb.conf ExecReload=/bin/kill -HUP $MAINPID +TimeoutStopSec=1s [Install] WantedBy=multi-user.target diff --git a/packages/network/samba/system.d.opt/smbd.service b/packages/network/samba/system.d.opt/smbd.service index deb5aeccd6..6d8185ea10 100644 --- a/packages/network/samba/system.d.opt/smbd.service +++ b/packages/network/samba/system.d.opt/smbd.service @@ -12,6 +12,7 @@ PIDFile=/var/run/smbd-smb.conf.pid LimitNOFILE=16384 ExecStart=/usr/bin/smbd --configfile=/run/samba/smb.conf ExecReload=/bin/kill -HUP $MAINPID +TimeoutStopSec=1s [Install] WantedBy=multi-user.target diff --git a/packages/3rdparty/multimedia/rotorng/build b/packages/sysutils/busybox/profile.d/00-busybox.conf old mode 100755 new mode 100644 similarity index 76% rename from packages/3rdparty/multimedia/rotorng/build rename to packages/sysutils/busybox/profile.d/00-busybox.conf index 3f344636d8..2e4aaa23f4 --- a/packages/3rdparty/multimedia/rotorng/build +++ b/packages/sysutils/busybox/profile.d/00-busybox.conf @@ -1,5 +1,3 @@ -#!/bin/sh - ################################################################################ # This file is part of OpenELEC - http://www.openelec.tv # Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) @@ -20,14 +18,17 @@ # http://www.gnu.org/copyleft/gpl.html ################################################################################ -. config/options $1 - -VDR_DIR=`basename $BUILD/vdr-[0-9]*` - -CFLAGS="$CFLAGS -fPIC" -CXXFLAGS="$CXXFLAGS -fPIC" -LDFLAGS="$LDFLAGS -fPIC" - -cd $PKG_BUILD - -make VDRDIR="../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" +export HOME="/storage" +export PATH="/bin:/sbin:/usr/bin:/usr/sbin" +export HOSTNAME=`cat /etc/hostname` +export PS1="\[\e[1;32m\]\h\[\e[1;32m\]:\[\e[1;34m\]\w \[\e[0m\]\\$ " +case "$TERM" in + linux|nxterm|screen|vt100|vt100-am|xterm|xterm-color) + ;; + "") + export TERM="linux" + ;; + *) + export TERM="xterm" + ;; +esac diff --git a/packages/sysutils/busybox/profile.d/00-home-path.conf b/packages/sysutils/busybox/profile.d/00-home-path.conf deleted file mode 100644 index 3ca6cd73d9..0000000000 --- a/packages/sysutils/busybox/profile.d/00-home-path.conf +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ -# Core (PATH) environment variables. -# -# This file contains non-OpenELEC evironment variables as well as OpenELEC -# evironment variables that are not user defined. -################################################################################ - -HOME="/storage" - -export HOME diff --git a/packages/sysutils/busybox/profile.d/01-hostname.conf b/packages/sysutils/busybox/profile.d/01-hostname.conf deleted file mode 100644 index 069a85f65f..0000000000 --- a/packages/sysutils/busybox/profile.d/01-hostname.conf +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ -# Core (Shell) environment variables. -# -# This file contains non-OpenELEC evironment variables as well as OpenELEC -# evironment variables that are not user defined. -################################################################################ - -HOSTNAME=`cat /etc/hostname` - -export HOSTNAME diff --git a/packages/sysutils/busybox/profile.d/02-shell.conf b/packages/sysutils/busybox/profile.d/02-shell.conf deleted file mode 100644 index 2bab1c6eab..0000000000 --- a/packages/sysutils/busybox/profile.d/02-shell.conf +++ /dev/null @@ -1,46 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ -# Core (Shell) environment variables. -# -# This file contains non-OpenELEC evironment variables as well as OpenELEC -# evironment variables that are not user defined. -################################################################################ - -PS1="\[\e[1;32m\]\h\[\e[1;32m\]:\[\e[1;34m\]\w \[\e[0m\]\\$ " -export PS1 - -case "$TERM" in - - # Do nothing when TERM already set (e.g. by SSH) and known - (linux|nxterm|screen|vt100|vt100-am|xterm|xterm-color) - ;; - - # Default to "linux" when unset - ("") - TERM="linux" - ;; - - # Default to "xterm" when unknown - (*) - TERM="xterm" - ;; - -esac -export TERM diff --git a/packages/sysutils/busybox/system.d.opt/cron.service b/packages/sysutils/busybox/system.d.opt/cron.service index 39a8edeedd..90fdd084ae 100644 --- a/packages/sysutils/busybox/system.d.opt/cron.service +++ b/packages/sysutils/busybox/system.d.opt/cron.service @@ -9,6 +9,7 @@ ConditionPathExists=/storage/.cache/services/crond.conf ExecStartPre=/bin/sh -c 'mkdir -p /storage/.cache/cron/crontabs' ExecStart=/sbin/crond -f -S KillMode=process +TimeoutStopSec=1s [Install] WantedBy=multi-user.target diff --git a/packages/sysutils/remote/eventlircd/system.d/eventlircd.service b/packages/sysutils/remote/eventlircd/system.d/eventlircd.service index f0ee23ecdd..100ca8852b 100644 --- a/packages/sysutils/remote/eventlircd/system.d/eventlircd.service +++ b/packages/sysutils/remote/eventlircd/system.d/eventlircd.service @@ -4,6 +4,7 @@ Description=Eventlirc server daemon [Service] ExecStart=/usr/sbin/eventlircd -f --evmap=/etc/eventlircd.d --socket=/var/run/lirc/lircd --release=_UP KillMode=process +TimeoutStopSec=1s [Install] WantedBy=multi-user.target diff --git a/packages/sysutils/systemd/patches/systemd-02_order-remote-mounts-from-mountinfo-before-remote-.patch b/packages/sysutils/systemd/patches/systemd-02_order-remote-mounts-from-mountinfo-before-remote-.patch new file mode 100644 index 0000000000..e1baf85d86 --- /dev/null +++ b/packages/sysutils/systemd/patches/systemd-02_order-remote-mounts-from-mountinfo-before-remote-.patch @@ -0,0 +1,38 @@ +From 77009452cfd25208509b14ea985e81fdf9f7d40e Mon Sep 17 00:00:00 2001 +From: Zbigniew Jędrzejewski-Szmek +Date: Fri, 04 Oct 2013 02:15:08 +0000 +Subject: systemd: order remote mounts from mountinfo before remote-fs.target + +Usually the network is stopped before filesystems are umounted. +Ordering network filesystems before remote-fs.target means that their +unmounting will be performed earlier, and can terminate sucessfully. + +https://bugs.freedesktop.org/show_bug.cgi?id=70002 +--- +(limited to 'src/core/mount.c') + +diff --git a/src/core/mount.c b/src/core/mount.c +index 3d46557..93bfa99 100644 +--- a/src/core/mount.c ++++ b/src/core/mount.c +@@ -1440,6 +1440,9 @@ static int mount_add_one( + + u = manager_get_unit(m, e); + if (!u) { ++ const char* const target = ++ fstype_is_network(fstype) ? SPECIAL_REMOTE_FS_TARGET : SPECIAL_LOCAL_FS_TARGET; ++ + delete = true; + + u = unit_new(m, sizeof(Mount)); +@@ -1466,7 +1469,7 @@ static int mount_add_one( + goto fail; + } + +- r = unit_add_dependency_by_name(u, UNIT_BEFORE, SPECIAL_LOCAL_FS_TARGET, NULL, true); ++ r = unit_add_dependency_by_name(u, UNIT_BEFORE, target, NULL, true); + if (r < 0) + goto fail; + +-- +cgit v0.9.0.2-2-gbebe diff --git a/packages/unofficial b/packages/unofficial index 91337e2a39..7eb47552b3 160000 --- a/packages/unofficial +++ b/packages/unofficial @@ -1 +1 @@ -Subproject commit 91337e2a39c4cd84eaad4b74cf4562aa82e17d7c +Subproject commit 7eb47552b34e77dd3c32678bef8e2e8ca5ca3497 diff --git a/packages/x11/driver/xf86-video-intel/package.mk b/packages/x11/driver/xf86-video-intel/package.mk index dc8076af68..2ac5a34ed1 100644 --- a/packages/x11/driver/xf86-video-intel/package.mk +++ b/packages/x11/driver/xf86-video-intel/package.mk @@ -25,7 +25,7 @@ PKG_ARCH="i386 x86_64" PKG_LICENSE="OSS" PKG_SITE="http://intellinuxgraphics.org/" PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/$PKG_NAME-$PKG_VERSION.tar.bz2" -PKG_DEPENDS="libXcomposite systemd intel-gpu-tools" +PKG_DEPENDS="libXcomposite systemd" PKG_BUILD_DEPENDS_TARGET="toolchain libXcomposite util-macros fontsproto systemd xorg-server" PKG_PRIORITY="optional" PKG_SECTION="x11/driver" diff --git a/packages/x11/other/dwm/system.d/windowmanager.service b/packages/x11/other/dwm/system.d/windowmanager.service index b662738721..d9afdcea39 100644 --- a/packages/x11/other/dwm/system.d/windowmanager.service +++ b/packages/x11/other/dwm/system.d/windowmanager.service @@ -11,6 +11,7 @@ KillMode=process Restart=always RestartSec=1 StartLimitInterval=0 +TimeoutStopSec=1s [Install] WantedBy=graphical.target diff --git a/packages/x11/other/intel-gpu-tools/build b/packages/x11/other/intel-gpu-tools/build deleted file mode 100755 index db6860a4ff..0000000000 --- a/packages/x11/other/intel-gpu-tools/build +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -cd $PKG_BUILD -mkdir -p m4 && do_autoreconf - -./configure --host=$TARGET_NAME \ - --build=$HOST_NAME \ - --prefix=/usr \ - --disable-nouveau \ - -make diff --git a/packages/x11/other/intel-gpu-tools/install b/packages/x11/other/intel-gpu-tools/install deleted file mode 100755 index 21f521f3bd..0000000000 --- a/packages/x11/other/intel-gpu-tools/install +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -mkdir -p $INSTALL/usr/bin - cp -R $PKG_BUILD/tools/intel_reg_write $INSTALL/usr/bin - cp -P $PKG_DIR/scripts/set-intel-color-space $INSTALL/usr/bin diff --git a/packages/x11/other/intel-gpu-tools/meta b/packages/x11/other/intel-gpu-tools/meta deleted file mode 100644 index e4c11845a8..0000000000 --- a/packages/x11/other/intel-gpu-tools/meta +++ /dev/null @@ -1,37 +0,0 @@ -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -PKG_NAME="intel-gpu-tools" -PKG_VERSION="1.2" -PKG_REV="1" -PKG_ARCH="i386 x86_64" -PKG_LICENSE="OSS" -PKG_SITE="http://xorg.freedesktop.org" -#PKG_URL="http://xorg.freedesktop.org/archive/individual/app/$PKG_NAME-$PKG_VERSION.tar.gz" -PKG_URL="http://cgit.freedesktop.org/xorg/app/intel-gpu-tools/snapshot/$PKG_NAME-$PKG_VERSION.tar.gz" -PKG_DEPENDS="libdrm" -PKG_BUILD_DEPENDS="toolchain libdrm" -PKG_PRIORITY="optional" -PKG_SECTION="x11/other" -PKG_SHORTDESC="tools for debugging the Intel graphics driver" -PKG_LONGDESC="tools for debugging the Intel graphics driver" -PKG_IS_ADDON="no" - -PKG_AUTORECONF="no" diff --git a/packages/x11/other/intel-gpu-tools/patches/intel-gpu-tools-1.2-disable-cairo.patch b/packages/x11/other/intel-gpu-tools/patches/intel-gpu-tools-1.2-disable-cairo.patch deleted file mode 100644 index fe85571c64..0000000000 --- a/packages/x11/other/intel-gpu-tools/patches/intel-gpu-tools-1.2-disable-cairo.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/Makefile.am b/Makefile.am -index 6cd724c..9e77183 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -19,7 +19,7 @@ - # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - --SUBDIRS = lib man tools scripts tests benchmarks demos -+SUBDIRS = lib man tools scripts benchmarks demos - - if BUILD_SHADER_DEBUGGER - SUBDIRS += debugger -diff --git a/configure.ac b/configure.ac -index 94d54a6..236904a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -57,7 +57,6 @@ PKG_CHECK_MODULES(DRM, [libdrm_intel >= 2.4.31 libdrm]) - PKG_CHECK_MODULES(PCIACCESS, [pciaccess >= 0.10]) - - # for testdisplay --PKG_CHECK_MODULES(CAIRO, cairo) - PKG_CHECK_MODULES(LIBUDEV, [libudev], [udev=yes], [udev=no]) - if test x"$udev" = xyes; then - AC_DEFINE(HAVE_UDEV,1,[Enable udev-based monitor hotplug detection]) diff --git a/packages/x11/other/intel-gpu-tools/scripts/set-intel-color-space b/packages/x11/other/intel-gpu-tools/scripts/set-intel-color-space deleted file mode 100755 index c09fac667a..0000000000 --- a/packages/x11/other/intel-gpu-tools/scripts/set-intel-color-space +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -################################################################################ -# Copyright (C) 2009-2010 OpenELEC.tv -# http://www.openelec.tv -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ -# Enable Limited or RGB full on intel Computers -# Usage: -# Set Limited mode: -# ./set-intel-color-space limited -# Set Full mode: -# ./set-intel-color-space full -################################################################################ - -if [ $# -gt 0 ] ; then - OUTPUT=`xrandr -display :0 -q | sed '/ connected/!d;s/ .*//;q'` - if [ "$1" = "limited" ] ; then - # limited modes - intel_reg_write 0x70008 0xC0000000 - intel_reg_write 0x70180 0xD8004400 - xrandr --output $OUTPUT --set "Broadcast RGB" "Limited 16:235" - elif [ "$1" == "full" ] ; then - # reset old mode - xrandr --output $OUTPUT --set "Broadcast RGB" "Limited 16:235" - intel_reg_write 0x70008 0xC4002000 - intel_reg_write 0x70180 0xDA004400 - # set new mode - xrandr --output $OUTPUT --set "Broadcast RGB" "Full" - intel_reg_write 0x70180 0xDA004400 - fi -else - echo "Usage: $0 limited | full" -fi diff --git a/packages/x11/other/ratpoison/system.d/windowmanager.service b/packages/x11/other/ratpoison/system.d/windowmanager.service index 3cfa6f011c..e2175655be 100644 --- a/packages/x11/other/ratpoison/system.d/windowmanager.service +++ b/packages/x11/other/ratpoison/system.d/windowmanager.service @@ -11,6 +11,7 @@ KillMode=process Restart=always RestartSec=1 StartLimitInterval=0 +TimeoutStopSec=1s [Install] WantedBy=graphical.target