diff --git a/config/functions b/config/functions index 986b7c2498..75469dcc41 100644 --- a/config/functions +++ b/config/functions @@ -343,6 +343,7 @@ show_config() { config_message="$config_message\n $dashes$dashes" config_message="$config_message\n - ALSA support:\t\t\t $ALSA_SUPPORT" + config_message="$config_message\n - Pulseaudio support:\t\t\t $PULSEAUDIO_SUPPORT" config_message="$config_message\n - Bluetooth support:\t\t\t $BLUETOOTH_SUPPORT" config_message="$config_message\n - LCD drivers:\t\t\t\t $LCD_DRIVER" diff --git a/distributions/OpenELEC/options b/distributions/OpenELEC/options index f3416a9f4a..0bcdf39d6e 100644 --- a/distributions/OpenELEC/options +++ b/distributions/OpenELEC/options @@ -31,6 +31,9 @@ # install extra subtitle Fonts for KODI (yes / no) KODI_EXTRA_FONTS="yes" +# build and install PulseAudio support (yes / no) + PULSEAUDIO_SUPPORT="no" + # build and install espeak support (yes / no) ESPEAK_SUPPORT="yes" diff --git a/distributions/OpenELEC/splash/splash-1024.png b/distributions/OpenELEC/splash/splash-1024.png index 3808b24153..1bc7efd8fa 100644 Binary files a/distributions/OpenELEC/splash/splash-1024.png and b/distributions/OpenELEC/splash/splash-1024.png differ diff --git a/distributions/OpenELEC/splash/splash-full.png b/distributions/OpenELEC/splash/splash-full.png index d79c6b57a6..e7330e728e 100644 Binary files a/distributions/OpenELEC/splash/splash-full.png and b/distributions/OpenELEC/splash/splash-full.png differ diff --git a/packages/audio/libsndfile/package.mk b/packages/audio/libsndfile/package.mk new file mode 100644 index 0000000000..5eb769fc51 --- /dev/null +++ b/packages/audio/libsndfile/package.mk @@ -0,0 +1,50 @@ +################################################################################ +# 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="libsndfile" +PKG_VERSION="1.0.25" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="LGPL" +PKG_SITE="http://www.mega-nerd.com/libsndfile/" +PKG_URL="http://www.mega-nerd.com/$PKG_NAME/files/$PKG_NAME-$PKG_VERSION.tar.gz" +PKG_DEPENDS_TARGET="toolchain alsa-lib flac libvorbis libogg" +PKG_PRIORITY="optional" +PKG_SECTION="audio" +PKG_SHORTDESC="libsndfile: A library for accessing various audio file formats" +PKG_LONGDESC="libsndfile is a C library for reading and writing sound files such as AIFF, AU, WAV, and others through one standard interface. It can currently read/write 8, 16, 24 and 32-bit PCM files as well as 32 and 64-bit floating point WAV files and a number of compressed formats. It compiles and runs on *nix, MacOS, and Win32." + +PKG_IS_ADDON="no" +PKG_AUTORECONF="yes" + +# package specific configure options +PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared \ + --disable-silent-rules \ + --disable-sqlite \ + --enable-alsa \ + --enable-external-libs \ + --disable-experimental \ + --disable-test-coverage \ + --enable-largefile \ + --with-gnu-ld" + +post_makeinstall_target() { + rm -rf $INSTALL/usr/bin +} diff --git a/packages/audio/libsndfile/patches/libsndfile-1.0.25-configure.patch b/packages/audio/libsndfile/patches/libsndfile-1.0.25-configure.patch new file mode 100644 index 0000000000..ece79a7d2b --- /dev/null +++ b/packages/audio/libsndfile/patches/libsndfile-1.0.25-configure.patch @@ -0,0 +1,25 @@ +diff -Naur libsndfile-1.0.25-old/configure.ac libsndfile-1.0.25-new/configure.ac +--- libsndfile-1.0.25-old/configure.ac 2011-07-13 01:59:57.000000000 -0700 ++++ libsndfile-1.0.25-new/configure.ac 2011-07-13 17:04:14.000000000 -0700 +@@ -18,9 +18,6 @@ + AM_INIT_AUTOMAKE($PACKAGE_NAME,$PACKAGE_VERSION) + AM_SILENT_RULES([yes]) + +-dnl Add parameters for aclocal +-AC_SUBST(ACLOCAL_AMFLAGS, "-I M4") +- + AC_LANG([C]) + + AC_PROG_CC +diff -Naur libsndfile-1.0.25-old/Makefile.am libsndfile-1.0.25-new/Makefile.am +--- libsndfile-1.0.25-old/Makefile.am 2011-07-07 02:47:24.000000000 -0700 ++++ libsndfile-1.0.25-new/Makefile.am 2011-07-13 17:04:14.000000000 -0700 +@@ -2,6 +2,8 @@ + + DISTCHECK_CONFIGURE_FLAGS = --enable-gcc-werror + ++ACLOCAL_AMFLAGS = -I M4 ++ + if BUILD_OCTAVE_MOD + octave_dir = Octave + endif diff --git a/packages/audio/pulseaudio/config/system.pa b/packages/audio/pulseaudio/config/system.pa new file mode 100644 index 0000000000..303370dd97 --- /dev/null +++ b/packages/audio/pulseaudio/config/system.pa @@ -0,0 +1,74 @@ +#!/usr/bin/pulseaudio -nF +# +# This file is part of PulseAudio. +# +# PulseAudio is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# PulseAudio 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 Lesser General Public License +# along with PulseAudio; if not, see . + +# This startup script is used only if PulseAudio is started in system +# mode. + +### Automatically load driver modules depending on the hardware available +.ifexists module-udev-detect.so +load-module module-udev-detect +.else +### Use the static hardware detection module (for systems that lack udev/hal support) +load-module module-detect +.endif + +### Load several protocols +.ifexists module-esound-protocol-unix.so +load-module module-esound-protocol-unix +.endif +load-module module-native-protocol-unix + +### Automatically restore the volume of streams and devices +load-module module-stream-restore +load-module module-device-restore + +### Automatically restore the default sink/source when changed by the user +### during runtime +### NOTE: This should be loaded as early as possible so that subsequent modules +### that look up the default sink/source get the right value +load-module module-default-device-restore + +### Automatically move streams to the default sink if the sink they are +### connected to dies, similar for sources +load-module module-rescue-streams + +### Make sure we always have a sink around, even if it is a null sink. +load-module module-always-sink + +### Automatically suspend sinks/sources that become idle for too long +load-module module-suspend-on-idle + +### Enable positioned event sounds +load-module module-position-event-sounds + +### Automatically load modules for bluetooth +.ifexists module-bluetooth-policy.so + load-module module-bluetooth-policy +.endif + +.ifexists module-bluetooth-discover.so + load-module module-bluetooth-discover +.endif + +.ifexists module-zeroconf-publish.so + load-module module-zeroconf-publish + load-module module-zeroconf-discover +.endif + +load-module module-native-protocol-tcp auth-anonymous=1 +load-module module-switch-on-connect + diff --git a/packages/audio/pulseaudio/package.mk b/packages/audio/pulseaudio/package.mk new file mode 100644 index 0000000000..9f23d4b21a --- /dev/null +++ b/packages/audio/pulseaudio/package.mk @@ -0,0 +1,128 @@ +################################################################################ +# 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="pulseaudio" +PKG_VERSION="7.0" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://pulseaudio.org/" +PKG_URL="http://www.freedesktop.org/software/pulseaudio/releases/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_DEPENDS_TARGET="toolchain libtool json-c alsa-lib libsndfile soxr dbus systemd libressl libcap" +PKG_PRIORITY="optional" +PKG_SECTION="audio" +PKG_SHORTDESC="pulseaudio: Yet another sound server for Unix" +PKG_LONGDESC="PulseAudio is a sound server for Linux and other Unix-like operating systems. It is intended to be an improved drop-in replacement for the Enlightened Sound Daemon (esound or esd). In addition to the features esound provides, PulseAudio has an extensible plugin architecture, support for more than one sink per source, better low-latency behavior, the ability to be embedded into other software, a completely asynchronous C API, a simple command line interface for reconfiguring the daemon while running, flexible and implicit sample type conversion and resampling, and a "Zero-Copy" architecture." + +PKG_IS_ADDON="no" + +# broken +PKG_AUTORECONF="no" + +if [ "$BLUETOOTH_SUPPORT" = "yes" ]; then + PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET sbc" + PULSEAUDIO_BLUETOOTH="--enable-bluez5" +else + PULSEAUDIO_BLUETOOTH="--disable-bluez5" +fi + +if [ "$AVAHI_DAEMON" = "yes" ]; then + PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET avahi" + PULSEAUDIO_AVAHI="--enable-avahi" +else + PULSEAUDIO_AVAHI="--disable-avahi" +fi + +# package specific configure options +PKG_CONFIGURE_OPTS_TARGET="--disable-silent-rules \ + --disable-nls \ + --enable-largefile \ + --disable-rpath \ + --disable-x11 \ + --disable-tests \ + --disable-samplerate \ + --disable-oss-output \ + --disable-oss-wrapper \ + --disable-coreaudio-output \ + --enable-alsa \ + --disable-esound \ + --disable-solaris \ + --disable-waveout \ + --disable-glib2 \ + --disable-gtk3 \ + --disable-gconf \ + $PULSEAUDIO_AVAHI \ + --disable-jack \ + --disable-asyncns \ + --disable-tcpwrap \ + --disable-lirc \ + --enable-dbus \ + --disable-bluez4 \ + $PULSEAUDIO_BLUETOOTH \ + --disable-bluez5-ofono-headset \ + --disable-bluez5-native-headset \ + --enable-udev \ + --disable-hal-compat \ + --enable-ipv6 \ + --enable-openssl \ + --disable-xen \ + --disable-orc \ + --disable-manpages \ + --disable-per-user-esound-socket \ + --disable-default-build-tests \ + --disable-legacy-database-entry-format \ + --with-system-user=root \ + --with-system-group=root \ + --with-access-group=root \ + --without-caps \ + --without-fftw \ + --without-speex \ + --with-soxr \ + --with-module-dir=/usr/lib/pulse" + +post_makeinstall_target() { +# add_user pulse x 499 498 "PulseAudio System Daemon" "/var/run/pulse" "/bin/sh" +# add_group pulse 498 +# add_group pulse-access 497 + + sed -e 's%user="pulse"%user="root"%g' -i $INSTALL/etc/dbus-1/system.d/pulseaudio-system.conf + + rm -rf $INSTALL/usr/bin/esdcompat + rm -rf $INSTALL/usr/include + rm -rf $INSTALL/usr/lib/cmake + rm -rf $INSTALL/usr/lib/pkgconfig + rm -rf $INSTALL/usr/lib/systemd + rm -rf $INSTALL/usr/share/vala + rm -rf $INSTALL/usr/share/zsh + rm -rf $INSTALL/usr/share/bash-completion + + cp $PKG_DIR/config/system.pa $INSTALL/etc/pulse/ + + # Remove unwanted symlinks + for file in $INSTALL/*; do + if [ -L "$file" ]; then + rm $file + fi + done +} + +post_install() { + enable_service pulseaudio.service +} diff --git a/packages/audio/pulseaudio/patches/pulseaudio-0900.01-never-append-dirty-to-server-module-version.patch b/packages/audio/pulseaudio/patches/pulseaudio-0900.01-never-append-dirty-to-server-module-version.patch new file mode 100644 index 0000000000..8bea8d95fb --- /dev/null +++ b/packages/audio/pulseaudio/patches/pulseaudio-0900.01-never-append-dirty-to-server-module-version.patch @@ -0,0 +1,24 @@ +From c9d7dcaa87f9ada49d75483a7c604dba27a0d71a Mon Sep 17 00:00:00 2001 +From: Stefan Saraev +Date: Tue, 7 Jan 2014 13:22:48 +0200 +Subject: [PATCH] never append -dirty to server/module version + +--- + git-version-gen | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/git-version-gen b/git-version-gen +index 9d65b80..fcf11fd 100755 +--- a/git-version-gen ++++ b/git-version-gen +@@ -152,6 +152,7 @@ v=`echo "$v" |sed 's/^v//'` + git status > /dev/null 2>&1 + + dirty=`sh -c 'git diff-index --name-only HEAD' 2>/dev/null` || dirty= ++dirty= + case "$dirty" in + '') ;; + *) # Append the suffix only if there isn't one already. +-- +1.7.2.5 + diff --git a/packages/audio/pulseaudio/patches/pulseaudio-0900.02-check_uid.patch b/packages/audio/pulseaudio/patches/pulseaudio-0900.02-check_uid.patch new file mode 100644 index 0000000000..a54ede3b8a --- /dev/null +++ b/packages/audio/pulseaudio/patches/pulseaudio-0900.02-check_uid.patch @@ -0,0 +1,13 @@ +--- pulseaudio-4.0.orig/src/pulsecore/core-util.c 2014-01-12 23:31:26.281525000 -0800 ++++ pulseaudio-4.0/src/pulsecore/core-util.c 2014-01-12 23:32:32.977118803 -0800 +@@ -1524,10 +1524,6 @@ + if (stat(p, &st) < 0) + return -errno; + +-#ifdef HAVE_GETUID +- if (st.st_uid != getuid()) +- return -EACCES; +-#endif + + return 0; + } \ No newline at end of file diff --git a/packages/audio/pulseaudio/profile.d/04-pulseaudio.conf b/packages/audio/pulseaudio/profile.d/04-pulseaudio.conf new file mode 100644 index 0000000000..0c72f573cb --- /dev/null +++ b/packages/audio/pulseaudio/profile.d/04-pulseaudio.conf @@ -0,0 +1 @@ +export SDL_AUDIODRIVER=pulse diff --git a/packages/audio/pulseaudio/system.d/pulseaudio.service b/packages/audio/pulseaudio/system.d/pulseaudio.service new file mode 100644 index 0000000000..e0b774248c --- /dev/null +++ b/packages/audio/pulseaudio/system.d/pulseaudio.service @@ -0,0 +1,15 @@ +[Unit] +Description=PulseAudio Sound System +After=syslog.target local-fs.target +Requires=bluetooth.service + +[Service] +Type=forking +ExecStart=/usr/bin/pulseaudio --start --daemonize --log-level=0 +TimeoutStopSec=5 +Restart=always +RestartSec=2 +StartLimitInterval=0 + +[Install] +WantedBy=multi-user.target diff --git a/packages/audio/sbc/package.mk b/packages/audio/sbc/package.mk new file mode 100644 index 0000000000..4594ec4ea9 --- /dev/null +++ b/packages/audio/sbc/package.mk @@ -0,0 +1,36 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) +# +# OpenELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# OpenELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC. If not, see . +################################################################################ + +PKG_NAME="sbc" +PKG_VERSION="1.3" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://www.bluez.org/" +PKG_URL="http://www.kernel.org/pub/linux/bluetooth/sbc-$PKG_VERSION.tar.gz" +PKG_DEPENDS_TARGET="toolchain" +PKG_PRIORITY="optional" +PKG_SECTION="network" +PKG_SHORTDESC="sbc: standalone SBC library" +PKG_LONGDESC="standalone SBC library" + +PKG_IS_ADDON="no" +PKG_AUTORECONF="yes" + +PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared \ + --disable-tools --disable-tester" diff --git a/packages/audio/soxr/package.mk b/packages/audio/soxr/package.mk new file mode 100644 index 0000000000..e2b4ce25ce --- /dev/null +++ b/packages/audio/soxr/package.mk @@ -0,0 +1,54 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) +# +# OpenELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# OpenELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC. If not, see . +################################################################################ + +PKG_NAME="soxr" +PKG_VERSION="0.1.2" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="LGPL" +PKG_SITE="http://sourceforge.net/p/soxr/wiki/Home/" +PKG_URL="$SOURCEFORGE_SRC/soxr/$PKG_NAME-$PKG_VERSION-Source.tar.xz" +PKG_SOURCE_DIR="$PKG_NAME-$PKG_VERSION-Source" +PKG_DEPENDS_TARGET="toolchain cmake:host" +PKG_PRIORITY="optional" +PKG_SECTION="audio" +PKG_SHORTDESC="soxr: a library which performs one-dimensional sample-rate conversion." +PKG_LONGDESC="The SoX Resampler library performs one-dimensional sample-rate conversion. it may be used, for example, to resample PCM-encoded audio." + +PKG_IS_ADDON="no" +PKG_AUTORECONF="no" + +# package specific configure options +configure_target() { + cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DHAVE_WORDS_BIGENDIAN_EXITCODE=1 \ + -DBUILD_TESTS=0 \ + -DBUILD_EXAMPLES=1 \ + -DBUILD_SHARED_LIBS=OFF .. +} + +#post_makeinstall_target() { +# rm -rf $INSTALL/usr/bin +# # pkgconf hack +# $SED "s:\(['=\" ]\)/usr:\\1$SYSROOT_PREFIX/usr:g" $SYSROOT_PREFIX/usr/bin/taglib-config +# $SED "s:\([':\" ]\)-I/usr:\\1-I$SYSROOT_PREFIX/usr:g" $SYSROOT_PREFIX/usr/lib/pkgconfig/taglib.pc +# $SED "s:\([':\" ]\)-L/usr:\\1-L$SYSROOT_PREFIX/usr:g" $SYSROOT_PREFIX/usr/lib/pkgconfig/taglib.pc +# $SED "s:\([':\" ]\)-I/usr:\\1-I$SYSROOT_PREFIX/usr:g" $SYSROOT_PREFIX/usr/lib/pkgconfig/taglib_c.pc +# $SED "s:\([':\" ]\)-L/usr:\\1-L$SYSROOT_PREFIX/usr:g" $SYSROOT_PREFIX/usr/lib/pkgconfig/taglib_c.pc +#} diff --git a/packages/databases/sqlite/package.mk b/packages/databases/sqlite/package.mk index 044496f7f1..91aac2cbe0 100644 --- a/packages/databases/sqlite/package.mk +++ b/packages/databases/sqlite/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="sqlite" -PKG_VERSION="autoconf-3081101" +PKG_VERSION="autoconf-3090000" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="PublicDomain" @@ -74,7 +74,3 @@ PKG_CONFIGURE_OPTS_TARGET="--enable-static \ --enable-threadsafe \ --enable-dynamic-extensions \ --with-gnu-ld" - -post_makeinstall_target() { - rm -rf $INSTALL/usr/bin -} diff --git a/packages/devel/json-c/package.mk b/packages/devel/json-c/package.mk new file mode 100644 index 0000000000..5380e12b60 --- /dev/null +++ b/packages/devel/json-c/package.mk @@ -0,0 +1,39 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) +#      Copyright (C) 2010-2011 Roman Weber (roman@openelec.tv) +# +# OpenELEC is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 2 of the License, or +# (at your option) any later version. +# +# OpenELEC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC. If not, see . +################################################################################ + +PKG_NAME="json-c" +PKG_VERSION="0645020" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="https://github.com/json-c/json-c/wiki" +PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_DEPENDS_TARGET="toolchain" +PKG_PRIORITY="optional" +PKG_SECTION="accessibility" +PKG_SHORTDESC="json-c" +PKG_LONGDESC="JSON-C implements a reference counting object model that allows you to easily construct JSON objects in C, output them as JSON formatted strings and parse JSON formatted strings back into the C representation of JSON objects" + +PKG_IS_ADDON="no" +PKG_AUTORECONF="yes" + +PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_realloc_0_nonnull=yes \ + ac_cv_func_malloc_0_nonnull=yes \ + --enable-static --disable-shared \ + --disable-oldname-compat" diff --git a/packages/mediacenter/kodi-theme-Confluence/package.mk b/packages/mediacenter/kodi-theme-Confluence/package.mk index c656111496..9ff0ad839c 100644 --- a/packages/mediacenter/kodi-theme-Confluence/package.mk +++ b/packages/mediacenter/kodi-theme-Confluence/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="kodi-theme-Confluence" -PKG_VERSION="15.2-rc3-9efd358" +PKG_VERSION="15.2-02e7013" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi/package.mk b/packages/mediacenter/kodi/package.mk index 99e4c17bfa..20c37e4e35 100644 --- a/packages/mediacenter/kodi/package.mk +++ b/packages/mediacenter/kodi/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="kodi" -PKG_VERSION="15.2-rc3-9efd358" +PKG_VERSION="15.2-02e7013" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" @@ -73,6 +73,14 @@ else KODI_ALSA="--disable-alsa" fi +if [ "$PULSEAUDIO_SUPPORT" = yes ]; then +# for PulseAudio support + PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET pulseaudio" + KODI_PULSEAUDIO="--enable-pulse" +else + KODI_PULSEAUDIO="--disable-pulse" +fi + if [ "$ESPEAK_SUPPORT" = yes ]; then # for espeak support PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET espeak" @@ -254,7 +262,7 @@ PKG_CONFIGURE_OPTS_TARGET="gl_cv_func_gettimeofday_clobber=no \ $KODI_XORG \ --disable-ccache \ $KODI_ALSA \ - --disable-pulse \ + $KODI_PULSEAUDIO \ --enable-rtmp \ $KODI_SAMBA \ $KODI_NFS \ diff --git a/packages/mediacenter/kodi/patches/kodi-999.31-PR7916.patch b/packages/mediacenter/kodi/patches/kodi-999.31-PR7916.patch new file mode 100644 index 0000000000..1d58470410 --- /dev/null +++ b/packages/mediacenter/kodi/patches/kodi-999.31-PR7916.patch @@ -0,0 +1,83 @@ +From 85e12bd9bf7bd61a9411bae415b679c9c3e54c7e Mon Sep 17 00:00:00 2001 +From: Stefan Saraev +Date: Fri, 28 Aug 2015 19:50:39 +0300 +Subject: [PATCH 1/2] [input] added KEY_MENU to linux input + +--- + xbmc/input/linux/LinuxInputDevices.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/xbmc/input/linux/LinuxInputDevices.cpp b/xbmc/input/linux/LinuxInputDevices.cpp +index 2610825..0b9a2c7 100644 +--- a/xbmc/input/linux/LinuxInputDevices.cpp ++++ b/xbmc/input/linux/LinuxInputDevices.cpp +@@ -233,6 +233,7 @@ KeyMap keyMap[] = { + { KEY_COMPOSE , XBMCK_LSUPER }, + { KEY_STOP , XBMCK_MEDIA_STOP }, + { KEY_HELP , XBMCK_HELP }, ++ { KEY_MENU , XBMCK_MENU }, + { KEY_CLOSECD , XBMCK_EJECT }, + { KEY_EJECTCD , XBMCK_EJECT }, + { KEY_EJECTCLOSECD , XBMCK_EJECT }, + +From 50e216d48b6550a75d1573453bf4ed880953aa18 Mon Sep 17 00:00:00 2001 +From: Stefan Saraev +Date: Fri, 28 Aug 2015 20:11:20 +0300 +Subject: [PATCH 2/2] [keymap] improve 'menu' keymaps + +--- + system/keymaps/keyboard.xml | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/system/keymaps/keyboard.xml b/system/keymaps/keyboard.xml +index e258295..7310072 100644 +--- a/system/keymaps/keyboard.xml ++++ b/system/keymaps/keyboard.xml +@@ -266,6 +266,7 @@ + OSD + OSD + OSD ++ OSD + Info + CodecInfo + AspectRatio +@@ -301,6 +302,7 @@ + Back + Back + OSD ++ OSD + + + +@@ -320,6 +322,7 @@ + OSD + OSD + OSD ++ OSD + Info +

ActivateWindow(VisualisationPresetList)

+ Addon.Default.OpenSettings(xbmc.player.musicviz) +@@ -342,6 +345,7 @@ + SkipNext + SkipPrevious + Back ++ Back + Info + CodecInfo +

ActivateWindow(VisualisationPresetList)

+@@ -418,6 +422,7 @@ + + + Back ++ Back + Back + Info + CodecInfo +@@ -428,6 +433,7 @@ + BigStepForward + BigStepBack + OSD ++ OSD + Info + CodecInfo + AspectRatio diff --git a/packages/mediacenter/kodi/patches/kodi-999.32-KEY_ZOOM.patch b/packages/mediacenter/kodi/patches/kodi-999.32-KEY_ZOOM.patch new file mode 100644 index 0000000000..11f72ae78d --- /dev/null +++ b/packages/mediacenter/kodi/patches/kodi-999.32-KEY_ZOOM.patch @@ -0,0 +1,63 @@ +diff -Naur kodi-15.2-02e7013/system/keymaps/keyboard.xml kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml +--- kodi-15.2-02e7013/system/keymaps/keyboard.xml 2015-10-21 23:41:22.816835383 +0200 ++++ kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml 2015-10-21 23:45:30.468434393 +0200 +@@ -261,6 +261,7 @@ + Info + CodecInfo + AspectRatio ++ AspectRatio + ShowSubtitles + SubtitleAlign + NextSubtitle +@@ -428,6 +429,7 @@ + Info + CodecInfo + AspectRatio ++ AspectRatio + ShowSubtitles + NextSubtitle + AudioDelay +diff -Naur kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp +--- kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-21 23:41:22.815835358 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-21 23:43:12.144171466 +0200 +@@ -253,6 +253,7 @@ + { KEY_PRINT , XBMCK_PRINT }, + { KEY_QUESTION , XBMCK_HELP }, + { KEY_BACK , XBMCK_BACKSPACE }, ++ { KEY_ZOOM , XBMCK_ZOOM }, + // The Little Black Box Remote Additions + { 384 , XBMCK_LEFT }, // Red + { 378 , XBMCK_RIGHT }, // Green +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_keysym.h kodi-15.2-02e7013.patch/xbmc/input/XBMC_keysym.h +--- kodi-15.2-02e7013/xbmc/input/XBMC_keysym.h 2015-10-20 23:51:46.000000000 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_keysym.h 2015-10-22 10:28:02.144619319 +0200 +@@ -224,6 +224,7 @@ + XBMCK_GREEN = 0x148, + XBMCK_YELLOW = 0x149, + XBMCK_BLUE = 0x14a, ++ XBMCK_ZOOM = 0x14b, + + // Add any other keys here + +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_keytable.cpp kodi-15.2-02e7013.patch/xbmc/input/XBMC_keytable.cpp +--- kodi-15.2-02e7013/xbmc/input/XBMC_keytable.cpp 2015-10-20 23:51:46.000000000 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_keytable.cpp 2015-10-22 10:32:56.784811569 +0200 +@@ -238,6 +238,7 @@ + , { XBMCK_GREEN, 0, 0, XBMCVK_GREEN, "green" } + , { XBMCK_YELLOW, 0, 0, XBMCVK_YELLOW, "yellow" } + , { XBMCK_BLUE, 0, 0, XBMCVK_BLUE, "blue" } ++, { XBMCK_ZOOM, 0, 0, XBMCVK_ZOOM, "zoom" } + }; + + static int XBMCKeyTableSize = sizeof(XBMCKeyTable)/sizeof(XBMCKEYTABLE); +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_vkeys.h kodi-15.2-02e7013.patch/xbmc/input/XBMC_vkeys.h +--- kodi-15.2-02e7013/xbmc/input/XBMC_vkeys.h 2015-10-20 23:51:46.000000000 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_vkeys.h 2015-10-22 10:33:50.039123956 +0200 +@@ -216,6 +216,7 @@ + XBMCVK_GREEN = 0xE4, + XBMCVK_YELLOW = 0xE5, + XBMCVK_BLUE = 0xE6, ++ XBMCVK_ZOOM = 0xE7, + + XBMCVK_LAST = 0xFF + } XBMCVKey; diff --git a/packages/mediacenter/kodi/patches/kodi-999.33-KEY_TEXT.patch b/packages/mediacenter/kodi/patches/kodi-999.33-KEY_TEXT.patch new file mode 100644 index 0000000000..59007a46c6 --- /dev/null +++ b/packages/mediacenter/kodi/patches/kodi-999.33-KEY_TEXT.patch @@ -0,0 +1,95 @@ +diff -Naur kodi-15.2-02e7013/system/keymaps/keyboard.xml kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml +--- kodi-15.2-02e7013/system/keymaps/keyboard.xml 2015-10-22 12:34:25.400782034 +0200 ++++ kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml 2015-10-22 12:41:46.849456385 +0200 +@@ -273,6 +273,7 @@ + Fullscreen + Playlist + ActivateWindow(Teletext) ++ ActivateWindow(Teletext) + SubtitleShiftUp + SubtitleShiftDown + SkipNext +@@ -318,6 +319,7 @@ + Info +

ActivateWindow(VisualisationPresetList)

+ Addon.Default.OpenSettings(xbmc.player.musicviz) ++ Addon.Default.OpenSettings(xbmc.player.musicviz) + ActivateWindow(MusicPlaylist) + StepBack + StepForward +@@ -342,6 +344,7 @@ + CodecInfo +

ActivateWindow(VisualisationPresetList)

+ Addon.Default.OpenSettings(xbmc.player.musicviz) ++ Addon.Default.OpenSettings(xbmc.player.musicviz) + ActivateWindow(MusicPlaylist) +
+ +@@ -356,6 +359,7 @@ + CodecInfo +

ActivateWindow(VisualisationPresetList)

+ Back ++ Back + ActivateWindow(MusicPlaylist) + + +@@ -370,6 +374,7 @@ + CodecInfo +

Back

+ Back ++ Back + ActivateWindow(MusicPlaylist) + + +@@ -519,6 +524,7 @@ + + + Back ++ Back + + + +diff -Naur kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp +--- kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-22 12:34:25.083781548 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-22 12:38:11.522120520 +0200 +@@ -254,6 +254,7 @@ + { KEY_QUESTION , XBMCK_HELP }, + { KEY_BACK , XBMCK_BACKSPACE }, + { KEY_ZOOM , XBMCK_ZOOM }, ++ { KEY_TEXT , XBMCK_TEXT }, + // The Little Black Box Remote Additions + { 384 , XBMCK_LEFT }, // Red + { 378 , XBMCK_RIGHT }, // Green +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_keysym.h kodi-15.2-02e7013.patch/xbmc/input/XBMC_keysym.h +--- kodi-15.2-02e7013/xbmc/input/XBMC_keysym.h 2015-10-22 12:34:25.082781547 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_keysym.h 2015-10-22 12:37:47.986085419 +0200 +@@ -225,6 +225,7 @@ + XBMCK_YELLOW = 0x149, + XBMCK_BLUE = 0x14a, + XBMCK_ZOOM = 0x14b, ++ XBMCK_TEXT = 0x14c, + + // Add any other keys here + +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_keytable.cpp kodi-15.2-02e7013.patch/xbmc/input/XBMC_keytable.cpp +--- kodi-15.2-02e7013/xbmc/input/XBMC_keytable.cpp 2015-10-22 12:34:25.085781551 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_keytable.cpp 2015-10-22 12:38:35.907157920 +0200 +@@ -239,6 +239,7 @@ + , { XBMCK_YELLOW, 0, 0, XBMCVK_YELLOW, "yellow" } + , { XBMCK_BLUE, 0, 0, XBMCVK_BLUE, "blue" } + , { XBMCK_ZOOM, 0, 0, XBMCVK_ZOOM, "zoom" } ++, { XBMCK_TEXT, 0, 0, XBMCVK_TEXT, "text" } + }; + + static int XBMCKeyTableSize = sizeof(XBMCKeyTable)/sizeof(XBMCKEYTABLE); +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_vkeys.h kodi-15.2-02e7013.patch/xbmc/input/XBMC_vkeys.h +--- kodi-15.2-02e7013/xbmc/input/XBMC_vkeys.h 2015-10-22 12:34:25.083781548 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_vkeys.h 2015-10-22 12:39:09.033208840 +0200 +@@ -217,6 +217,7 @@ + XBMCVK_YELLOW = 0xE5, + XBMCVK_BLUE = 0xE6, + XBMCVK_ZOOM = 0xE7, ++ XBMCVK_TEXT = 0xE8, + + XBMCVK_LAST = 0xFF + } XBMCVKey; diff --git a/packages/mediacenter/kodi/patches/kodi-999.34-KEY_FAVORITES.patch b/packages/mediacenter/kodi/patches/kodi-999.34-KEY_FAVORITES.patch new file mode 100644 index 0000000000..163000b436 --- /dev/null +++ b/packages/mediacenter/kodi/patches/kodi-999.34-KEY_FAVORITES.patch @@ -0,0 +1,55 @@ +diff -Naur kodi-15.2-02e7013/system/keymaps/keyboard.xml kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml +--- kodi-15.2-02e7013/system/keymaps/keyboard.xml 2015-10-23 11:58:14.088175555 +0200 ++++ kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml 2015-10-23 12:05:41.104997901 +0200 +@@ -111,6 +111,7 @@ + + + ActivateWindow(Favourites) ++ ActivateWindow(Favourites) + ActivateWindow(Home) + Mute + VolumeDown +diff -Naur kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp +--- kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-23 11:58:13.830175091 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-23 12:02:55.616691348 +0200 +@@ -255,6 +255,7 @@ + { KEY_BACK , XBMCK_BACKSPACE }, + { KEY_ZOOM , XBMCK_ZOOM }, + { KEY_TEXT , XBMCK_TEXT }, ++ { KEY_FAVORITES , XBMCK_FAVORITES }, + // The Little Black Box Remote Additions + { 384 , XBMCK_LEFT }, // Red + { 378 , XBMCK_RIGHT }, // Green +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_keysym.h kodi-15.2-02e7013.patch/xbmc/input/XBMC_keysym.h +--- kodi-15.2-02e7013/xbmc/input/XBMC_keysym.h 2015-10-23 11:58:13.830175091 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_keysym.h 2015-10-23 12:00:49.718459512 +0200 +@@ -226,6 +226,7 @@ + XBMCK_BLUE = 0x14a, + XBMCK_ZOOM = 0x14b, + XBMCK_TEXT = 0x14c, ++ XBMCK_FAVORITES = 0x14d, + + // Add any other keys here + +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_keytable.cpp kodi-15.2-02e7013.patch/xbmc/input/XBMC_keytable.cpp +--- kodi-15.2-02e7013/xbmc/input/XBMC_keytable.cpp 2015-10-23 11:58:13.832175095 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_keytable.cpp 2015-10-23 12:02:00.186589235 +0200 +@@ -240,6 +240,7 @@ + , { XBMCK_BLUE, 0, 0, XBMCVK_BLUE, "blue" } + , { XBMCK_ZOOM, 0, 0, XBMCVK_ZOOM, "zoom" } + , { XBMCK_TEXT, 0, 0, XBMCVK_TEXT, "text" } ++, { XBMCK_FAVORITES, 0, 0, XBMCVK_FAVORITES, "favorites" } + }; + + static int XBMCKeyTableSize = sizeof(XBMCKeyTable)/sizeof(XBMCKEYTABLE); +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_vkeys.h kodi-15.2-02e7013.patch/xbmc/input/XBMC_vkeys.h +--- kodi-15.2-02e7013/xbmc/input/XBMC_vkeys.h 2015-10-23 11:58:13.831175093 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_vkeys.h 2015-10-23 12:04:24.224856326 +0200 +@@ -218,6 +218,7 @@ + XBMCVK_BLUE = 0xE6, + XBMCVK_ZOOM = 0xE7, + XBMCVK_TEXT = 0xE8, ++ XBMCVK_FAVORITES = 0xE9, + + XBMCVK_LAST = 0xFF + } XBMCVKey; diff --git a/packages/mediacenter/kodi/patches/kodi-999.35-color_keys.patch b/packages/mediacenter/kodi/patches/kodi-999.35-color_keys.patch new file mode 100644 index 0000000000..cf1770c7ba --- /dev/null +++ b/packages/mediacenter/kodi/patches/kodi-999.35-color_keys.patch @@ -0,0 +1,96 @@ +diff -Naur kodi-15.2-02e7013/system/keymaps/keyboard.xml kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml +--- kodi-15.2-02e7013/system/keymaps/keyboard.xml 2015-10-23 12:07:37.075186539 +0200 ++++ kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml 2015-10-23 14:36:39.556246298 +0200 +@@ -104,6 +104,11 @@ + ActivateWindow(RadioChannels) + ActivateWindow(TVRecordings) + ActivateWindow(TVTimers) ++ ++ ActivateWindow(TVChannels) ++ ActivateWindow(MyVideos) ++ ActivateWindow(MyMusic) ++ ActivateWindow(MyPictures) + + Back + +@@ -184,12 +189,20 @@ + + Delete + Rename ++ Red ++ Green ++ Yellow ++ Blue + + + + + Delete + Rename ++ Red ++ Green ++ Yellow ++ Blue + + + +@@ -201,12 +214,20 @@ + + Delete + Rename ++ Red ++ Green ++ Yellow ++ Blue + + + + + Delete + Rename ++ Red ++ Green ++ Yellow ++ Blue + + + +@@ -526,6 +547,10 @@ + + Back + Back ++ Red ++ Green ++ Yellow ++ Blue + + + +@@ -597,9 +622,13 @@ + + + Red ++ Red + Green ++ Green + Yellow ++ Yellow + Blue ++ Blue + + + +diff -Naur kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp +--- kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-23 12:07:36.796186034 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-23 14:42:02.251577960 +0200 +@@ -256,6 +256,10 @@ + { KEY_ZOOM , XBMCK_ZOOM }, + { KEY_TEXT , XBMCK_TEXT }, + { KEY_FAVORITES , XBMCK_FAVORITES }, ++ { KEY_RED , XBMCK_RED }, ++ { KEY_GREEN , XBMCK_GREEN }, ++ { KEY_YELLOW , XBMCK_YELLOW }, ++ { KEY_BLUE , XBMCK_BLUE }, + // The Little Black Box Remote Additions + { 384 , XBMCK_LEFT }, // Red + { 378 , XBMCK_RIGHT }, // Green diff --git a/packages/mediacenter/kodi/patches/kodi-999.36-KEY_HOMEPAGE.patch b/packages/mediacenter/kodi/patches/kodi-999.36-KEY_HOMEPAGE.patch new file mode 100644 index 0000000000..d4b3e863ca --- /dev/null +++ b/packages/mediacenter/kodi/patches/kodi-999.36-KEY_HOMEPAGE.patch @@ -0,0 +1,62 @@ +diff -Naur kodi-15.2-02e7013/system/keymaps/keyboard.xml kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml +--- kodi-15.2-02e7013/system/keymaps/keyboard.xml 2015-10-24 10:47:31.423447515 +0200 ++++ kodi-15.2-02e7013.patch/system/keymaps/keyboard.xml 2015-10-24 10:51:32.346473050 +0200 +@@ -118,6 +118,7 @@ + ActivateWindow(Favourites) + ActivateWindow(Favourites) + ActivateWindow(Home) ++ ActivateWindow(Home) + Mute + VolumeDown + VolumeUp +diff -Naur kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp +--- kodi-15.2-02e7013/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-24 10:47:31.179446989 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/linux/LinuxInputDevices.cpp 2015-10-24 10:49:34.162165486 +0200 +@@ -260,13 +260,12 @@ + { KEY_GREEN , XBMCK_GREEN }, + { KEY_YELLOW , XBMCK_YELLOW }, + { KEY_BLUE , XBMCK_BLUE }, ++ { KEY_HOMEPAGE , XBMCK_HOMEPAGE }, + // The Little Black Box Remote Additions + { 384 , XBMCK_LEFT }, // Red + { 378 , XBMCK_RIGHT }, // Green + { 381 , XBMCK_UP }, // Yellow + { 366 , XBMCK_DOWN }, // Blue +- // Rii i7 Home button / wetek openelec remote (code 172) +- { KEY_HOMEPAGE , XBMCK_HOME }, + }; + + typedef enum +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_keysym.h kodi-15.2-02e7013.patch/xbmc/input/XBMC_keysym.h +--- kodi-15.2-02e7013/xbmc/input/XBMC_keysym.h 2015-10-24 10:47:31.179446989 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_keysym.h 2015-10-24 10:48:22.081558452 +0200 +@@ -227,6 +227,7 @@ + XBMCK_ZOOM = 0x14b, + XBMCK_TEXT = 0x14c, + XBMCK_FAVORITES = 0x14d, ++ XBMCK_HOMEPAGE = 0x14e, + + // Add any other keys here + +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_keytable.cpp kodi-15.2-02e7013.patch/xbmc/input/XBMC_keytable.cpp +--- kodi-15.2-02e7013/xbmc/input/XBMC_keytable.cpp 2015-10-24 10:47:31.181446993 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_keytable.cpp 2015-10-24 10:48:59.169880939 +0200 +@@ -241,6 +241,7 @@ + , { XBMCK_ZOOM, 0, 0, XBMCVK_ZOOM, "zoom" } + , { XBMCK_TEXT, 0, 0, XBMCVK_TEXT, "text" } + , { XBMCK_FAVORITES, 0, 0, XBMCVK_FAVORITES, "favorites" } ++, { XBMCK_HOMEPAGE , 0, 0, XBMCVK_HOMEPAGE, "homepage" } + }; + + static int XBMCKeyTableSize = sizeof(XBMCKeyTable)/sizeof(XBMCKEYTABLE); +diff -Naur kodi-15.2-02e7013/xbmc/input/XBMC_vkeys.h kodi-15.2-02e7013.patch/xbmc/input/XBMC_vkeys.h +--- kodi-15.2-02e7013/xbmc/input/XBMC_vkeys.h 2015-10-24 10:47:31.180446991 +0200 ++++ kodi-15.2-02e7013.patch/xbmc/input/XBMC_vkeys.h 2015-10-24 10:50:25.548276428 +0200 +@@ -219,6 +219,7 @@ + XBMCVK_ZOOM = 0xE7, + XBMCVK_TEXT = 0xE8, + XBMCVK_FAVORITES = 0xE9, ++ XBMCVK_HOMEPAGE = 0xEA, + + XBMCVK_LAST = 0xFF + } XBMCVKey; diff --git a/packages/multimedia/SDL2/package.mk b/packages/multimedia/SDL2/package.mk index c982935d6f..17759d6da8 100644 --- a/packages/multimedia/SDL2/package.mk +++ b/packages/multimedia/SDL2/package.mk @@ -55,7 +55,6 @@ PKG_CONFIGURE_OPTS_TARGET="--disable-shared --enable-static \ --with-alsa-prefix=$SYSROOT_PREFIX/usr/lib \ --with-alsa-inc-prefix=$SYSROOT_PREFIX/usr/include \ --disable-esd --disable-esdtest --disable-esd-shared \ - --disable-pulseaudio --disable-pulseaudio-shared \ --disable-arts --disable-arts-shared \ --disable-nas --enable-nas-shared \ --disable-sndio --enable-sndio-shared \ @@ -103,6 +102,14 @@ else PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET --disable-video-opengl --disable-video-opengles" fi +if [ "$PULSEAUDIO_SUPPORT" = yes ]; then + PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET pulseaudio" + + PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET --enable-pulseaudio --enable-pulseaudio-shared" +else + PKG_CONFIGURE_OPTS_TARGET="$PKG_CONFIGURE_OPTS_TARGET --disable-pulseaudio --disable-pulseaudio-shared" +fi + pre_make_target() { # dont build parallel MAKEFLAGS=-j1 diff --git a/packages/sysutils/dosfstools/package.mk b/packages/sysutils/dosfstools/package.mk index 238504e512..2249dd23e2 100644 --- a/packages/sysutils/dosfstools/package.mk +++ b/packages/sysutils/dosfstools/package.mk @@ -40,9 +40,25 @@ make_init() { : # reuse make_target() } +pre_build_host() { + mkdir -p $PKG_BUILD/.$HOST_NAME + cp -RP $PKG_BUILD/* $PKG_BUILD/.$HOST_NAME +} + +make_host() { + cd $ROOT/$PKG_BUILD/.$HOST_NAME + make PREFIX=/usr +} + makeinstall_init() { mkdir -p $INSTALL/sbin cp fsck.fat $INSTALL/sbin ln -sf fsck.fat $INSTALL/sbin/fsck.msdos ln -sf fsck.fat $INSTALL/sbin/fsck.vfat } + +makeinstall_host() { + mkdir -p $ROOT/$TOOLCHAIN/sbin + cp mkfs.fat $ROOT/$TOOLCHAIN/sbin + ln -sf mkfs.fat $ROOT/$TOOLCHAIN/sbin/mkfs.vfat +} diff --git a/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-control b/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-control index 88d051794d..92d07ec0ad 100755 --- a/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-control +++ b/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-control @@ -18,11 +18,11 @@ # along with OpenELEC. If not, see . ################################################################################ -. /etc/profile +. /usr/lib/openelec/imx6-system-type if [ "$SYSTEM_TYPE" != "matrix" ]; then echo "Only for TBS Matrix system." - exit 1 + exit 12 fi fan_on() { diff --git a/packages/sysutils/imx6-soc-fan/package.mk b/packages/sysutils/imx6-soc-fan/package.mk index f7a2797720..6b9f440957 100644 --- a/packages/sysutils/imx6-soc-fan/package.mk +++ b/packages/sysutils/imx6-soc-fan/package.mk @@ -23,7 +23,7 @@ PKG_ARCH="arm" PKG_LICENSE="GPL" PKG_SITE="http://www.openelec.tv/" PKG_URL="" -PKG_DEPENDS_TARGET="" +PKG_DEPENDS_TARGET="imx6-status-led" PKG_PRIORITY="optional" PKG_SECTION="system" PKG_SHORTDESC="i.MX6 SoC fan monitor" @@ -37,9 +37,13 @@ make_target() { makeinstall_target() { mkdir -p $INSTALL/usr/config - cp -PR $PKG_DIR/config/* $INSTALL/usr/config + cp $PKG_DIR/config/* $INSTALL/usr/config + mkdir -p $INSTALL/usr/bin - cp -PR $PKG_DIR/bin/* $INSTALL/usr/bin + cp $PKG_DIR/bin/* $INSTALL/usr/bin + + mkdir -p $INSTALL/usr/lib/openelec + cp $PKG_DIR/scripts/* $INSTALL/usr/lib/openelec } post_install() { diff --git a/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-monitor b/packages/sysutils/imx6-soc-fan/scripts/imx6-soc-fan-monitor similarity index 97% rename from packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-monitor rename to packages/sysutils/imx6-soc-fan/scripts/imx6-soc-fan-monitor index ee7e7e8088..c27fa246a2 100755 --- a/packages/sysutils/imx6-soc-fan/bin/imx6-soc-fan-monitor +++ b/packages/sysutils/imx6-soc-fan/scripts/imx6-soc-fan-monitor @@ -18,11 +18,11 @@ # along with OpenELEC. If not, see . ################################################################################ -. /etc/profile +. /usr/lib/openelec/imx6-system-type if [ "$SYSTEM_TYPE" != "matrix" ]; then echo "Only for TBS Matrix system." - exit 1 + exit 12 fi debug_echo() { diff --git a/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service b/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service index c88407a688..5311b9ab5f 100644 --- a/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service +++ b/packages/sysutils/imx6-soc-fan/system.d/imx6-soc-fan-monitor.service @@ -2,7 +2,12 @@ Description=i.MX6 SoC fan monitor service [Service] -ExecStart=/usr/bin/imx6-soc-fan-monitor +ExecStart=/bin/sh -c "exec /bin/sh /usr/lib/openelec/imx6-soc-fan-monitor" +RestartPreventExitStatus=12 +TimeoutStopSec=5 +Restart=always +RestartSec=60 +StartLimitInterval=0 [Install] WantedBy=multi-user.target diff --git a/packages/sysutils/imx6-status-led/package.mk b/packages/sysutils/imx6-status-led/package.mk index 1eb9424486..7b89e4c5ee 100644 --- a/packages/sysutils/imx6-status-led/package.mk +++ b/packages/sysutils/imx6-status-led/package.mk @@ -36,8 +36,8 @@ make_target() { } makeinstall_target() { - mkdir -p $INSTALL/usr/bin - cp -PR $PKG_DIR/bin/* $INSTALL/usr/bin + mkdir -p $INSTALL/usr/lib/openelec + cp $PKG_DIR/scripts/* $INSTALL/usr/lib/openelec } post_install() { diff --git a/packages/sysutils/imx6-status-led/bin/imx6-status-led b/packages/sysutils/imx6-status-led/scripts/imx6-status-led similarity index 85% rename from packages/sysutils/imx6-status-led/bin/imx6-status-led rename to packages/sysutils/imx6-status-led/scripts/imx6-status-led index fb1af9f557..46e08d58cb 100755 --- a/packages/sysutils/imx6-status-led/bin/imx6-status-led +++ b/packages/sysutils/imx6-status-led/scripts/imx6-status-led @@ -18,7 +18,7 @@ # along with OpenELEC. If not, see . ################################################################################ -. /etc/profile +. /usr/lib/openelec/imx6-system-type case "$1" in "on") @@ -28,22 +28,21 @@ case "$1" in TRIGGER=heartbeat ;; *) - TRIGGER="" + exit 0 ;; esac case "$SYSTEM_TYPE" in "matrix") - LED=/sys/class/leds/red/trigger + LED="/sys/class/leds/red/trigger" ;; "cuboxi") - LED=/sys/class/leds/imx6\:red\:front/trigger + LED="/sys/class/leds/imx6:red:front/trigger" ;; *) - LED="" + exit 0 ;; esac -if [ -n "$TRIGGER" -a -n "$LED" ]; then - echo $TRIGGER > $LED -fi +echo "$TRIGGER" > "$LED" + diff --git a/packages/sysutils/imx6-status-led/profile.d/01-system_type.conf b/packages/sysutils/imx6-status-led/scripts/imx6-system-type old mode 100644 new mode 100755 similarity index 91% rename from packages/sysutils/imx6-status-led/profile.d/01-system_type.conf rename to packages/sysutils/imx6-status-led/scripts/imx6-system-type index c7ffb66634..9da8729e8a --- a/packages/sysutils/imx6-status-led/profile.d/01-system_type.conf +++ b/packages/sysutils/imx6-status-led/scripts/imx6-system-type @@ -42,9 +42,3 @@ case "$SYSTEM_TYPE" in export SYSTEM_TYPE="undef" ;; esac - -# don't make from initramfs (no touch there) -if [ -e /bin/touch ]; then - mkdir -p /var/run - touch /var/run/system_type_$SYSTEM_TYPE -fi diff --git a/packages/sysutils/imx6-status-led/system.d/imx6-status-led.service b/packages/sysutils/imx6-status-led/system.d/imx6-status-led.service index ab51a5e49c..f04bd3eafe 100644 --- a/packages/sysutils/imx6-status-led/system.d/imx6-status-led.service +++ b/packages/sysutils/imx6-status-led/system.d/imx6-status-led.service @@ -1,11 +1,11 @@ [Unit] -Description=i.MX6 status LED service +Description=i.MX6 status led After=kodi.service [Service] Type=oneshot -ExecStart=-/bin/sh -c "/usr/bin/imx6-status-led on" -ExecStop=-/bin/sh -c "/usr/bin/imx6-status-led heartbeat" +ExecStart=-/bin/sh -c "/usr/lib/openelec/imx6-status-led on" +ExecStop=-/bin/sh -c "/usr/lib/openelec/imx6-status-led heartbeat" RemainAfterExit=yes [Install] diff --git a/packages/tools/u-boot/scripts/update.sh b/packages/tools/u-boot/scripts/update.sh index c9ac4c4436..71a5582a94 100755 --- a/packages/tools/u-boot/scripts/update.sh +++ b/packages/tools/u-boot/scripts/update.sh @@ -32,11 +32,9 @@ if [ -z "$BOOT_DISK" ]; then esac fi -# we don't have mounted /etc in initramfs so just load system type -if [ -f $SYSTEM_ROOT/etc/profile.d/01-system_type.conf ]; then - . $SYSTEM_ROOT/etc/profile.d/01-system_type.conf -else - SYSTEM_TYPE="" +SYSTEM_TYPE="" +if [ -f $SYSTEM_ROOT/usr/lib/openelec/imx6-system-type ]; then + . $SYSTEM_ROOT/usr/lib/openelec/imx6-system-type fi # mount $BOOT_ROOT r/w diff --git a/packages/wayland/libinput/package.mk b/packages/wayland/libinput/package.mk index 3ab9baeb36..8bedc0c60b 100644 --- a/packages/wayland/libinput/package.mk +++ b/packages/wayland/libinput/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="libinput" -PKG_VERSION="1.0.1" +PKG_VERSION="1.0.2" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/x11/driver/xf86-video-nvidia-legacy/package.mk b/packages/x11/driver/xf86-video-nvidia-legacy/package.mk index ab2f06994b..3e3009984a 100644 --- a/packages/x11/driver/xf86-video-nvidia-legacy/package.mk +++ b/packages/x11/driver/xf86-video-nvidia-legacy/package.mk @@ -17,7 +17,7 @@ ################################################################################ PKG_NAME="xf86-video-nvidia-legacy" -PKG_VERSION="304.125" +PKG_VERSION="304.128" PKG_REV="1" PKG_ARCH="x86_64" PKG_LICENSE="nonfree" diff --git a/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0001-kernel-3.19.patch b/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0001-kernel-3.19.patch deleted file mode 100644 index 02036168dd..0000000000 --- a/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0001-kernel-3.19.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -Naur xf86-video-nvidia-legacy-304.125/kernel/nv.c xf86-video-nvidia-legacy-304.125.patch/kernel/nv.c ---- xf86-video-nvidia-legacy-304.125/kernel/nv.c 2014-12-02 04:55:59.000000000 +0100 -+++ xf86-video-nvidia-legacy-304.125.patch/kernel/nv.c 2015-02-11 19:07:09.844431593 +0100 -@@ -17,7 +17,7 @@ - #include "rmil.h" - - #if defined(MODULE_LICENSE) --MODULE_LICENSE("NVIDIA"); -+MODULE_LICENSE("GPL\0NVIDIA"); - #endif - #if defined(MODULE_INFO) - MODULE_INFO(supported, "external"); -@@ -2026,7 +2026,7 @@ - unsigned long i_arg - ) - { -- return nv_kern_ioctl(file->f_dentry->d_inode, file, cmd, i_arg); -+ return nv_kern_ioctl(file->f_path.dentry->d_inode, file, cmd, i_arg); - } - - long nv_kern_compat_ioctl( -@@ -2035,7 +2035,7 @@ - unsigned long i_arg - ) - { -- return nv_kern_ioctl(file->f_dentry->d_inode, file, cmd, i_arg); -+ return nv_kern_ioctl(file->f_path.dentry->d_inode, file, cmd, i_arg); - } - - /* diff --git a/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0002-kernel-4.0.patch b/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0002-kernel-4.0.patch deleted file mode 100644 index f0d0dbb561..0000000000 --- a/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0002-kernel-4.0.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -Naur NVIDIA-Linux-x86_64-340.76-no-compat32/kernel/nv-pat.c NVIDIA-Linux-x86_64-340.76-no-compat32.patch/kernel/nv-pat.c ---- NVIDIA-Linux-x86_64-340.76-no-compat32/kernel/nv-pat.c 2015-01-22 20:01:16.000000000 +0100 -+++ NVIDIA-Linux-x86_64-340.76-no-compat32.patch/kernel/nv-pat.c 2015-04-04 19:16:01.931219988 +0200 -@@ -35,8 +35,13 @@ - unsigned long cr0 = read_cr0(); - write_cr0(((cr0 & (0xdfffffff)) | 0x40000000)); - wbinvd(); -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 20, 0) - *cr4 = read_cr4(); - if (*cr4 & 0x80) write_cr4(*cr4 & ~0x80); -+#else -+ *cr4 = __read_cr4(); -+ if (*cr4 & 0x80) __write_cr4(*cr4 & ~0x80); -+#endif - __flush_tlb(); - } - -@@ -46,7 +51,11 @@ - wbinvd(); - __flush_tlb(); - write_cr0((cr0 & 0x9fffffff)); -+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 20, 0) - if (cr4 & 0x80) write_cr4(cr4); -+#else -+ if (cr4 & 0x80) __write_cr4(cr4); -+#endif - } - - static int nv_determine_pat_mode(void) diff --git a/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0003-kernel-4.3rc5.patch b/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0003-kernel-4.3rc5.patch new file mode 100644 index 0000000000..bc9732e2ec --- /dev/null +++ b/packages/x11/driver/xf86-video-nvidia-legacy/patches/xf86-video-nvidia-legacy-0003-kernel-4.3rc5.patch @@ -0,0 +1,28 @@ +--- a/kernel/nv-procfs.c 2015-10-18 04:32:24.214891836 +0100 ++++ b/kernel/nv-procfs.c 2015-10-18 04:33:01.611081468 +0100 +@@ -607,7 +607,12 @@ + registry_keys = ((nvl != NULL) ? + nvl->registry_keys : nv_registry_keys); + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,3,0) + return seq_printf(s, "Binary: \"%s\"\n", registry_keys); ++#else ++ seq_printf(s, "Binary: \"%s\"\n", registry_keys); ++ return 0; ++#endif + } + + static ssize_t +@@ -674,7 +679,12 @@ + void *v + ) + { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4,3,0) + return seq_puts(s, s->private); ++#else ++ seq_puts(s, s->private); ++ return 0; ++#endif + } + + NV_DEFINE_PROCFS_SINGLE_FILE(text_file); diff --git a/projects/WeTek_Play/filesystem/usr/share/kodi/system/keymaps/wetek-remote.xml b/projects/WeTek_Play/filesystem/usr/share/kodi/system/keymaps/wetek-remote.xml deleted file mode 100644 index 17f64df4d4..0000000000 --- a/projects/WeTek_Play/filesystem/usr/share/kodi/system/keymaps/wetek-remote.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - ContextMenu - ContextMenu - AspectRatio - AspectRatio - XBMC.ActivateWindow(Home) - XBMC.ActivateWindow(Home) - ActivateWindowAndFocus(MyPVR, 31,0, 10,0) - FullScreen - Screenshot - - - diff --git a/projects/WeTek_Play/initramfs/platform_init b/projects/WeTek_Play/initramfs/platform_init index 5f36b62914..5e32a6847f 100755 --- a/projects/WeTek_Play/initramfs/platform_init +++ b/projects/WeTek_Play/initramfs/platform_init @@ -49,7 +49,7 @@ echo 0 > /sys/class/graphics/fb0/free_scale # Set framebuffer geometry to match the resolution case "$hdmimode" in 720*) - fbset -fb /dev/fb0 -g 1280 720 1280 1440 32 + fbset -fb /dev/fb0 -g 1280 720 1920 2160 32 ;; 1080*) fbset -fb /dev/fb0 -g 1920 1080 1920 2160 32 @@ -61,14 +61,15 @@ echo rm default > /sys/class/vfm/map echo add default decoder ppmgr deinterlace amvideo > /sys/class/vfm/map # Boot with performance governor, then switch to the governor specified in the kernel command line -for cpufreq in /sys/devices/system/cpu/cpu[0-9]*/cpufreq; do - if [ -n "$scaling_governor" ]; then - echo "$scaling_governor" > "$cpufreq/scaling_governor" - fi - if [ -n "$scaling_min_freq" ]; then - echo "$scaling_min_freq" > "$cpufreq/scaling_min_freq" - fi - if [ -n "$scaling_max_freq" ]; then - echo "$scaling_max_freq" > "$cpufreq/scaling_max_freq" - fi -done +# Assume SMP uses shared cpufreq policy for all CPUs +cpufreq="/sys/devices/system/cpu/cpu0/cpufreq" +if [ -n "$scaling_governor" ]; then + echo "$scaling_governor" > "$cpufreq/scaling_governor" +fi +if [ -n "$scaling_min_freq" ]; then + echo "$scaling_min_freq" > "$cpufreq/scaling_min_freq" +fi +if [ -n "$scaling_max_freq" ]; then + echo "$scaling_max_freq" > "$cpufreq/scaling_max_freq" + echo "$scaling_max_freq" > "$cpufreq/scaling_dflt_freq" +fi diff --git a/projects/WeTek_Play/linux/linux.arm.conf b/projects/WeTek_Play/linux/linux.arm.conf index a398d6a5da..3d3e446488 100644 --- a/projects/WeTek_Play/linux/linux.arm.conf +++ b/projects/WeTek_Play/linux/linux.arm.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 3.10.89 Kernel Configuration +# Linux/arm 3.10.90 Kernel Configuration # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -2856,6 +2856,7 @@ CONFIG_DRAGONRISE_FF=y # CONFIG_HID_EMS_FF is not set # CONFIG_HID_ELECOM is not set CONFIG_HID_EZKEY=y +CONFIG_HID_HBGIC=y # CONFIG_HID_HOLTEK is not set # CONFIG_HID_KEYTOUCH is not set CONFIG_HID_KYE=y diff --git a/projects/WeTek_Play/patches/kodi/0015-aml-Add-some-key-mappings-for-HDMI-CEC.patch b/projects/WeTek_Play/patches/kodi/0015-aml-Add-some-key-mappings-for-HDMI-CEC.patch deleted file mode 100644 index 246281fa23..0000000000 --- a/projects/WeTek_Play/patches/kodi/0015-aml-Add-some-key-mappings-for-HDMI-CEC.patch +++ /dev/null @@ -1,28 +0,0 @@ -From f8aeb55bea64fde80a63a88d5d7bad8fd2dde3d9 Mon Sep 17 00:00:00 2001 -From: Alex Deryskyba -Date: Sun, 2 Nov 2014 15:54:29 +0200 -Subject: [PATCH 15/17] [aml] Add some key mappings for HDMI CEC - ---- - xbmc/input/linux/LinuxInputDevices.cpp | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/xbmc/input/linux/LinuxInputDevices.cpp b/xbmc/input/linux/LinuxInputDevices.cpp -index 0b0f7ae..c84930f 100644 ---- a/xbmc/input/linux/LinuxInputDevices.cpp -+++ b/xbmc/input/linux/LinuxInputDevices.cpp -@@ -250,6 +250,11 @@ KeyMap keyMap[] = { - { KEY_PRINT , XBMCK_PRINT }, - { KEY_QUESTION , XBMCK_HELP }, - { KEY_BACK , XBMCK_BACKSPACE }, -+ { KEY_SELECT , XBMCK_RETURN }, -+ { KEY_RED , XBMCK_TAB }, -+ { KEY_GREEN , XBMCK_z }, -+ { KEY_YELLOW , XBMCK_i }, -+ { KEY_BLUE , XBMCK_c }, - // The Little Black Box Remote Additions - { 384 , XBMCK_LEFT }, // Red - { 378 , XBMCK_RIGHT }, // Green --- -1.7.10.4 - diff --git a/projects/WeTek_Play/patches/linux/linux-054-hbgic-remote-0.2.patch b/projects/WeTek_Play/patches/linux/linux-054-hbgic-remote-0.2.patch new file mode 100644 index 0000000000..647081e159 --- /dev/null +++ b/projects/WeTek_Play/patches/linux/linux-054-hbgic-remote-0.2.patch @@ -0,0 +1,159 @@ +diff -Naur linux-amlogic-3.10-9df7905/drivers/hid/hid-core.c linux-amlogic-3.10-9df7905.patch/drivers/hid/hid-core.c +--- linux-amlogic-3.10-9df7905/drivers/hid/hid-core.c 2015-10-06 22:39:16.000000000 +0200 ++++ linux-amlogic-3.10-9df7905.patch/drivers/hid/hid-core.c 2015-10-15 17:00:49.982041731 +0200 +@@ -1678,6 +1678,7 @@ + { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE) }, + { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE_2) }, + { HID_USB_DEVICE(USB_VENDOR_ID_GYRATION, USB_DEVICE_ID_GYRATION_REMOTE_3) }, ++ { HID_USB_DEVICE(USB_VENDOR_ID_HBGIC, USB_DEVICE_ID_HBGIC_KEYBOARD) }, + { HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK, USB_DEVICE_ID_HOLTEK_ON_LINE_GRIP) }, + { HID_USB_DEVICE(USB_VENDOR_ID_HOLTEK_ALT, USB_DEVICE_ID_HOLTEK_ALT_KEYBOARD) }, + { HID_USB_DEVICE(USB_VENDOR_ID_JESS2, USB_DEVICE_ID_JESS2_COLOR_RUMBLE_PAD) }, +diff -Naur linux-amlogic-3.10-9df7905/drivers/hid/hid-hbgic-kbd.c linux-amlogic-3.10-9df7905.patch/drivers/hid/hid-hbgic-kbd.c +--- linux-amlogic-3.10-9df7905/drivers/hid/hid-hbgic-kbd.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-amlogic-3.10-9df7905.patch/drivers/hid/hid-hbgic-kbd.c 2015-10-15 16:57:28.067700413 +0200 +@@ -0,0 +1,103 @@ ++/* ++ * HID driver for "HBGIC Technology Co., Ltd. USB Keyboard Mouse" remotes ++ * ++ * Copyright (c) 2015 Stephan Raue ++ * ++ */ ++ ++/* ++ * 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. ++ */ ++ ++#include ++#include ++#include ++#include ++ ++#include "hid-ids.h" ++ ++#define hbgic_map_key(c) set_bit(EV_REP, hi->input->evbit); \ ++ hid_map_usage_clear(hi, usage, bit, max, EV_KEY, (c)) ++ ++static int hbgic_input_mapping(struct hid_device *hdev, ++ struct hid_input *hi, struct hid_field *field, struct hid_usage *usage, ++ unsigned long **bit, int *max) ++{ ++ switch (usage->hid) { ++ case 0x00070029: hbgic_map_key(KEY_BACK); break; ++ case 0x0007002a: hbgic_map_key(KEY_BACK); break; ++ case 0x0007003a: hbgic_map_key(KEY_BACK); break; ++ case 0x0007003b: hbgic_map_key(KEY_HOME); break; ++ case 0x0007003c: hbgic_map_key(KEY_HOMEPAGE); break; ++ case 0x0007003d: hbgic_map_key(KEY_MENU); break; ++ case 0x0007003e: hbgic_map_key(KEY_ZOOM); break; ++ case 0x0007003f: hbgic_map_key(KEY_FAVORITES); break; ++ case 0x00070040: hbgic_map_key(KEY_MENU); break; ++ case 0x00070041: hbgic_map_key(KEY_RED); break; ++ case 0x00070042: hbgic_map_key(KEY_GREEN); break; ++ case 0x00070043: hbgic_map_key(KEY_YELLOW); break; ++ case 0x00070044: hbgic_map_key(KEY_TEXT); break; ++ case 0x0007004a: hbgic_map_key(KEY_HOMEPAGE); break; ++ case 0x000700f1: hbgic_map_key(KEY_BACK); break; ++ case 0x000c00e2: hbgic_map_key(KEY_MUTE); break; ++ case 0x000c019e: hbgic_map_key(KEY_MUTE); break; ++ case 0x000c01c2: hbgic_map_key(KEY_BLUE); break; ++ case 0x000c0204: hbgic_map_key(KEY_FAVORITES); break; ++ default: ++ return 0; ++ } ++ return 1; ++} ++ ++static int hbgic_probe(struct hid_device *hdev, ++ const struct hid_device_id *id) ++{ ++ int ret; ++ /* Connect only to hid input (not hiddev & hidraw)*/ ++ unsigned int cmask = HID_CONNECT_HIDINPUT; ++ ++ ret = hid_parse(hdev); ++ if (ret) { ++ dev_err(&hdev->dev, "parse failed\n"); ++ goto err_free; ++ } ++ ++ ret = hid_hw_start(hdev, cmask); ++ if (ret) { ++ dev_err(&hdev->dev, "hw start failed\n"); ++ goto err_free; ++ } ++ ++ return 0; ++err_free: ++ return ret; ++} ++ ++static const struct hid_device_id hbgic_devices[] = { ++ { HID_USB_DEVICE(USB_VENDOR_ID_HBGIC,USB_DEVICE_ID_HBGIC_KEYBOARD) }, ++ { } ++}; ++MODULE_DEVICE_TABLE(hid, hbgic_devices); ++ ++static struct hid_driver hbgic_driver = { ++ .name = "hbgic", ++ .id_table = hbgic_devices, ++ .input_mapping = hbgic_input_mapping, ++ .probe = hbgic_probe, ++}; ++ ++static int __init hbgic_init(void) ++{ ++ return hid_register_driver(&hbgic_driver); ++} ++ ++static void __exit hbgic_exit(void) ++{ ++ hid_unregister_driver(&hbgic_driver); ++} ++ ++module_init(hbgic_init); ++module_exit(hbgic_exit); ++MODULE_LICENSE("GPL"); +diff -Naur linux-amlogic-3.10-9df7905/drivers/hid/hid-ids.h linux-amlogic-3.10-9df7905.patch/drivers/hid/hid-ids.h +--- linux-amlogic-3.10-9df7905/drivers/hid/hid-ids.h 2015-10-15 14:26:12.536907873 +0200 ++++ linux-amlogic-3.10-9df7905.patch/drivers/hid/hid-ids.h 2015-10-15 16:57:28.068700414 +0200 +@@ -443,6 +443,9 @@ + #define USB_VENDOR_ID_ION 0x15e4 + #define USB_DEVICE_ID_ICADE 0x0132 + ++#define USB_VENDOR_ID_HBGIC 0x2252 ++#define USB_DEVICE_ID_HBGIC_KEYBOARD 0x0106 ++ + #define USB_VENDOR_ID_HOLTEK 0x1241 + #define USB_DEVICE_ID_HOLTEK_ON_LINE_GRIP 0x5015 + +diff -Naur linux-amlogic-3.10-9df7905/drivers/hid/Kconfig linux-amlogic-3.10-9df7905.patch/drivers/hid/Kconfig +--- linux-amlogic-3.10-9df7905/drivers/hid/Kconfig 2015-10-15 14:26:12.537907875 +0200 ++++ linux-amlogic-3.10-9df7905.patch/drivers/hid/Kconfig 2015-10-15 16:57:28.457701048 +0200 +@@ -224,6 +224,12 @@ + ---help--- + Support for Ezkey BTC 8193 keyboard. + ++config HID_HBGIC ++ tristate "HBGIC Technology remote control" ++ depends on USB_HID ++ ---help--- ++ Say Y here if you have a HBGIC Technology (2252:0106) remote ++ + config HID_HOLTEK + tristate "Holtek HID devices" + depends on USB_HID +diff -Naur linux-amlogic-3.10-9df7905/drivers/hid/Makefile linux-amlogic-3.10-9df7905.patch/drivers/hid/Makefile +--- linux-amlogic-3.10-9df7905/drivers/hid/Makefile 2015-10-15 14:26:12.538907876 +0200 ++++ linux-amlogic-3.10-9df7905.patch/drivers/hid/Makefile 2015-10-15 16:57:28.458701050 +0200 +@@ -50,6 +50,7 @@ + obj-$(CONFIG_HID_ELECOM) += hid-elecom.o + obj-$(CONFIG_HID_EZKEY) += hid-ezkey.o + obj-$(CONFIG_HID_GYRATION) += hid-gyration.o ++obj-$(CONFIG_HID_HBGIC) += hid-hbgic-kbd.o + obj-$(CONFIG_HID_HOLTEK) += hid-holtek-kbd.o + obj-$(CONFIG_HID_HOLTEK) += hid-holtekff.o + obj-$(CONFIG_HID_HYPERV_MOUSE) += hid-hyperv.o diff --git a/projects/WeTek_Play/splash/splash-full.png b/projects/WeTek_Play/splash/splash-full.png index 124241f4fd..36ec92afbf 100644 Binary files a/projects/WeTek_Play/splash/splash-full.png and b/projects/WeTek_Play/splash/splash-full.png differ diff --git a/projects/imx6/bootloader/uEnv-udoo.txt b/projects/imx6/bootloader/uEnv-udoo.txt index 848863b361..f640b83628 100644 --- a/projects/imx6/bootloader/uEnv-udoo.txt +++ b/projects/imx6/bootloader/uEnv-udoo.txt @@ -5,14 +5,14 @@ video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 # 7" LVDS #video=mxcfb0:dev=ldb,800x480M@60,if=RGB666,bpp=32 # 15.6" LVDS -#video=mxcfb0:dev=ldb,1368x768M@60,if=RGB24,bpp=32 +#video=mxcfb0:dev=ldb,1366x768M@60,if=RGB24,bpp=32 -# enable serial console -#console_arg=console=ttymxc1,115200 -# or make boot more quiet +# make boot more quiet console_arg=quiet morequiet -# or having quiet console -#console_arg=console=ttymxc1,115200 quiet morequiet +# or having quiet and console +#console_arg=console=ttymxc0,115200 quiet morequiet +# show messages too +#console_arg=console=ttymxc0,115200 no_console_suspend=1 # enable ssh #ssh_arg=ssh diff --git a/projects/imx6/filesystem/usr/lib/systemd/system/serial-console.service b/projects/imx6/filesystem/usr/lib/systemd/system/serial-console.service new file mode 100644 index 0000000000..9e0ca3617a --- /dev/null +++ b/projects/imx6/filesystem/usr/lib/systemd/system/serial-console.service @@ -0,0 +1,22 @@ +[Unit] +Description=Debug Shell on /dev/ttymxc0 +DefaultDependencies=no +ConditionKernelCommandLine=console=ttymxc0,115200 + +[Service] +WorkingDirectory=/storage +Environment="ENV=/etc/profile" +ExecStart=/bin/sh +Restart=always +RestartSec=0 +StandardInput=tty +TTYPath=/dev/ttymxc0 +TTYReset=yes +TTYVHangup=yes +KillMode=process +IgnoreSIGPIPE=no +# bash ignores SIGTERM +KillSignal=SIGHUP + +[Install] +WantedBy=sysinit.target diff --git a/projects/imx6/patches/linux/linux-331-udoo-device_tree.patch b/projects/imx6/patches/linux/linux-331-udoo-device_tree.patch old mode 100644 new mode 100755 index 8cf49e3c76..c29ca66baa --- a/projects/imx6/patches/linux/linux-331-udoo-device_tree.patch +++ b/projects/imx6/patches/linux/linux-331-udoo-device_tree.patch @@ -145,7 +145,7 @@ new file mode 100644 index 0000000..f9ce5ca --- /dev/null +++ b/arch/arm/boot/dts/imx6qdl-udoo.dtsi -@@ -0,0 +1,443 @@ +@@ -0,0 +1,445 @@ +/* + * Copyright 2013 Freescale Semiconductor, Inc. + * @@ -172,6 +172,8 @@ index 0000000..f9ce5ca + mxcfb2 = &mxcfb3; + mxcfb3 = &mxcfb4; + ssi0 = &ssi1; ++ serial0 = &uart2; // console on ttymxc0 ++ serial1 = &uart1; + }; + + memory { diff --git a/scripts/build b/scripts/build index 4fd9300253..e7439ed1ea 100755 --- a/scripts/build +++ b/scripts/build @@ -57,7 +57,7 @@ STAMP_DEPENDS="$PKG_DIR $PKG_NEED_UNPACK $PROJECT_DIR/$PROJECT/patches/$PKG_NAME if [ -f $STAMP ] ; then . $STAMP - PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1) + PKG_DEEPMD5=$(find $STAMP_DEPENDS -exec md5sum {} \; 2>/dev/null | sort | md5sum | cut -d" " -f1) if [ ! "$PKG_DEEPMD5" = "$STAMP_PKG_DEEPMD5" ] ; then rm -f $STAMP fi @@ -365,7 +365,7 @@ if [ ! -f $STAMP ]; then $SED "s:\(['= ]\)/usr:\\1$SYSROOT_PREFIX/usr:g" $i; \ done - PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1) + PKG_DEEPMD5=$(find $STAMP_DEPENDS -exec md5sum {} \; 2>/dev/null | sort | md5sum | cut -d" " -f1) for i in PKG_NAME PKG_DEEPMD5; do eval val=\$$i echo "STAMP_$i=\"$val\"" >> $STAMP diff --git a/scripts/checkdeps b/scripts/checkdeps index 1a5ff04fa0..5844777820 100755 --- a/scripts/checkdeps +++ b/scripts/checkdeps @@ -28,8 +28,8 @@ if [ -f /etc/os-release ]; then DISTRO=$(grep ^ID= /etc/os-release | cut -d "=" -f 2 | tr A-Z a-z) fi -deps="wget bash bc gcc sed patch tar bzip2 gzip perl gawk md5deep gperf zip unzip diff makeinfo" -deps_pkg="wget bash bc gcc sed patch tar bzip2 gzip perl gawk md5deep gperf zip unzip diffutils texinfo" +deps="wget bash bc gcc sed patch tar bzip2 gzip perl gawk gperf zip unzip diff makeinfo" +deps_pkg="wget bash bc gcc sed patch tar bzip2 gzip perl gawk gperf zip unzip diffutils texinfo" files="/usr/include/stdio.h /usr/include/ncurses.h" files_pkg="libc6-dev libncurses5-dev" @@ -44,10 +44,10 @@ case "$DISTRO" in ;; gentoo) deps="$deps g++ mkfontscale mkfontdir bdftopcf xsltproc java" - deps_pkg="$deps_pkg g++ mkfontscale mkfontdir bdftopcf libxslt jre" + deps_pkg="$deps_pkg gcc[cxx] mkfontscale mkfontdir bdftopcf libxslt virtual/jre" + files_pkg="glibc ncurses" ;; arch) - # md5deep is only available in the aur deps="$deps g++ mkfontscale mkfontdir bdftopcf xsltproc java" deps_pkg="$deps_pkg g++ xorg-mkfontscale xorg-mkfontdir xorg-bdftopcf libxslt java-runtime-common" ;; diff --git a/scripts/image b/scripts/image index 93361f0bc9..3175e3be6b 100755 --- a/scripts/image +++ b/scripts/image @@ -25,6 +25,7 @@ show_config $SCRIPTS/checkdeps $SCRIPTS/build toolchain $SCRIPTS/build squashfs:host +$SCRIPTS/build dosfstools:host $SCRIPTS/build fakeroot:host $SCRIPTS/build kmod:host @@ -268,7 +269,7 @@ fi # only for matrix system or all? (one tar for all updates?) if [ "$PROJECT" == "imx6" -a "$SYSTEM" == "matrix" ]; then $SCRIPTS/unpack imx6-mfgtool2-tbs-matrix - + mkdir -p $RELEASE_DIR/MfgTool2-TBS-Matrix cp -PR $BUILD/imx6-mfgtool2-tbs-matrix-*/imx6-mfgtool2-tbs-matrix-*/* $RELEASE_DIR/MfgTool2-TBS-Matrix fi diff --git a/scripts/skip_unpack b/scripts/skip_unpack index b3005cc684..3c9660bada 100755 --- a/scripts/skip_unpack +++ b/scripts/skip_unpack @@ -38,7 +38,7 @@ if [ -f $STAMP ] ; then rm -f $STAMP STAMP_DEPENDS="$PKG_DIR $PKG_NEED_UNPACK $PROJECT_DIR/$PROJECT/patches/$PKG_NAME" - PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1) + PKG_DEEPMD5=$(find $STAMP_DEPENDS -exec md5sum {} \; 2>/dev/null | sort | md5sum | cut -d" " -f1) for i in PKG_NAME PKG_DEEPMD5; do eval val=\$$i echo "STAMP_$i=\"$val\"" >> $STAMP diff --git a/scripts/unpack b/scripts/unpack index 47452dc76c..79d0c2e725 100755 --- a/scripts/unpack +++ b/scripts/unpack @@ -44,7 +44,7 @@ for i in $BUILD/$1-*; do if [ -d $i -a -f "$i/.openelec-unpack" ] ; then . "$i/.openelec-unpack" if [ "$STAMP_PKG_NAME" = "$1" ]; then - PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1) + PKG_DEEPMD5=$(find $STAMP_DEPENDS -exec md5sum {} \; 2>/dev/null | sort | md5sum | cut -d" " -f1) if [ ! "$PKG_DEEPMD5" = "$STAMP_PKG_DEEPMD5" ] ; then $SCRIPTS/clean $1 fi @@ -149,7 +149,7 @@ done rm -f $STAMPS/$1/build_* -PKG_DEEPMD5=$(md5deep -r $STAMP_DEPENDS 2>/dev/null | sort | md5sum | cut -d" " -f1) +PKG_DEEPMD5=$(find $STAMP_DEPENDS -exec md5sum {} \; 2>/dev/null | sort | md5sum | cut -d" " -f1) for i in PKG_NAME PKG_DEEPMD5; do eval val=\$$i echo "STAMP_$i=\"$val\"" >> $STAMP diff --git a/tools/mkpkg/mkpkg_json-c b/tools/mkpkg/mkpkg_json-c new file mode 100755 index 0000000000..f8c8155878 --- /dev/null +++ b/tools/mkpkg/mkpkg_json-c @@ -0,0 +1,43 @@ +#!/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 +################################################################################ + +echo "getting sources..." + if [ ! -d json-c.git ]; then + git clone https://github.com/json-c/json-c.git json-c.git + fi + + cd json-c.git + git pull + GIT_REV=`git log -n1 --format=%h` + cd .. + +echo "copying sources..." + rm -rf json-c-$GIT_REV + cp -R json-c.git json-c-$GIT_REV + +echo "cleaning sources..." + rm -rf json-c-$GIT_REV/.git + +echo "packing sources..." + tar cvJf json-c-$GIT_REV.tar.xz json-c-$GIT_REV + +echo "remove temporary sourcedir..." + rm -rf json-c-$GIT_REV