mirror of
https://github.com/libretro/Lakka.git
synced 2024-11-23 07:49:52 +00:00
Merge remote-tracking branch 'upstream/master' into lakka
Conflicts: CHANGELOG packages/network/samba/default.d/samba.conf scripts/mkimage
This commit is contained in:
commit
ed4086257e
2
.gitignore
vendored
2
.gitignore
vendored
@ -26,3 +26,5 @@ mkpkg-temp
|
||||
# backup files
|
||||
*.orig
|
||||
|
||||
# crap
|
||||
.DS_Store
|
||||
|
14
CHANGELOG
14
CHANGELOG
@ -1 +1,13 @@
|
||||
Lakka (Initial release)
|
||||
Lakka CHANGELOG
|
||||
===============
|
||||
|
||||
To view recent changes/commits to the project (master branch) please visit:
|
||||
|
||||
https://github.com/Niouby/Lakka/commits/master
|
||||
|
||||
To compare commits between versions use a formatted URL like:
|
||||
|
||||
https://github.com/Niouby/Lakka/compare/3.2.3...3.2.4
|
||||
|
||||
If you have questions on differences between releases please ask them in the
|
||||
IRC support channel.
|
||||
|
@ -35,6 +35,13 @@ Feature requests are great, but they usually end up lying around the issue
|
||||
tracker indefinitely. Sending a pull request is a much better way of getting a
|
||||
particular feature into OpenELEC.
|
||||
|
||||
### Reporting build failures
|
||||
|
||||
As buildsystem / core packages (toolchain) / random libraries change from time to time, it is required
|
||||
that you always do a clean build (make clean) before reporting build failures. Also make sure that you
|
||||
have a clean, unmodified git clone, we can't fix bugs caused by you failed to merge / rebase on
|
||||
your own fork.
|
||||
|
||||
### Pull Requests
|
||||
|
||||
- **Create topic branches**. Don't ask us to pull from your master branch.
|
||||
|
5
Makefile
5
Makefile
@ -1,6 +1,6 @@
|
||||
BUILD_DIRS=build.*
|
||||
|
||||
all: system
|
||||
all: release
|
||||
|
||||
system:
|
||||
./scripts/image
|
||||
@ -11,6 +11,9 @@ release:
|
||||
image:
|
||||
./scripts/image mkimage
|
||||
|
||||
image-efi:
|
||||
./scripts/image mkimage efi
|
||||
|
||||
noobs:
|
||||
./scripts/image noobs
|
||||
|
||||
|
7
TODO
7
TODO
@ -4,7 +4,6 @@ ncurses-5.8/5.9:
|
||||
irserver:
|
||||
- rework irserver/init.d for systemd
|
||||
|
||||
nettle/gmp
|
||||
- ffmpeg shared build fails with gmp/nettle static (-fPIC?)
|
||||
so try-build gmp/nettle as static-only libs once xbmc/ffmpeg
|
||||
is static linked and we drop ffmpeg package (or build it static)
|
||||
settings addon:
|
||||
- remove ps3 sleep? should be fixed in bluez 5.13/5.14
|
||||
- move LCDd to services
|
||||
|
@ -205,7 +205,7 @@ fix_module_depends() {
|
||||
# Usage: enable_service <unit> [target]
|
||||
enable_service () {
|
||||
local unit="$1"
|
||||
local unit_dir="/lib/systemd/system"
|
||||
local unit_dir="/usr/lib/systemd/system"
|
||||
local target="$2"
|
||||
local target_dir=$INSTALL
|
||||
|
||||
@ -363,7 +363,6 @@ show_config() {
|
||||
config_message="$config_message\n $dashes$dashes"
|
||||
|
||||
config_message="$config_message\n - OEM Support:\t\t\t\t $OEM_SUPPORT"
|
||||
config_message="$config_message\n - Default Hostname:\t\t\t $HOSTNAME"
|
||||
config_message="$config_message\n - Default ROOT Password:\t\t $ROOT_PASSWORD"
|
||||
config_message="$config_message\n - Bootloader:\t\t\t\t $BOOTLOADER"
|
||||
if [ "$BOOTLOADER" = "u-boot" ]; then
|
||||
|
@ -1,32 +1,16 @@
|
||||
if [ "$OPTIMIZATIONS" = fast ];then
|
||||
GCC_OPTIM="-Ofast"
|
||||
GCC_OPTIM="$GCC_OPTIM -fexcess-precision=fast"
|
||||
LD_OPTIM="-Wl,--as-needed"
|
||||
fi
|
||||
|
||||
if [ "$OPTIMIZATIONS" = speed ];then
|
||||
GCC_OPTIM="$GCC_OPTIM -O3"
|
||||
GCC_OPTIM="$GCC_OPTIM -fexcess-precision=fast"
|
||||
GCC_OPTIM="$GCC_OPTIM -ffast-math"
|
||||
LD_OPTIM="-Wl,--as-needed"
|
||||
fi
|
||||
|
||||
if [ "$OPTIMIZATIONS" = normal ];then
|
||||
GCC_OPTIM="$GCC_OPTIM -O2"
|
||||
GCC_OPTIM="-O2"
|
||||
LD_OPTIM=""
|
||||
fi
|
||||
|
||||
if [ "$OPTIMIZATIONS" = size ];then
|
||||
GCC_OPTIM="$GCC_OPTIM -Os"
|
||||
GCC_OPTIM="$GCC_OPTIM -fexcess-precision=fast"
|
||||
GCC_OPTIM="$GCC_OPTIM -ffast-math"
|
||||
GCC_OPTIM="-Os -fexcess-precision=fast -ffast-math"
|
||||
LD_OPTIM="-Wl,--as-needed"
|
||||
fi
|
||||
|
||||
if [ "$LTO_SUPPORT" = yes ];then
|
||||
GCC_OPTIM="$GCC_OPTIM -flto"
|
||||
LD_OPTIM="$LD_OPTIM -fuse-linker-plugin"
|
||||
LD_OPTIM="$LD_OPTIM -flto"
|
||||
LD_OPTIM="$LD_OPTIM -fuse-linker-plugin -flto"
|
||||
fi
|
||||
|
||||
if [ "$GOLD_SUPPORT" = yes ];then
|
||||
|
12
config/path
12
config/path
@ -1,5 +1,7 @@
|
||||
set -e
|
||||
|
||||
. config/functions
|
||||
|
||||
# setup initial directorys (relative to root)
|
||||
CONFIG=config
|
||||
SCRIPTS=scripts
|
||||
@ -51,7 +53,10 @@ SED="sed -i"
|
||||
PKG_LICENSE="unknown"
|
||||
PKG_SITE=""
|
||||
PKG_URL=""
|
||||
PKG_DEPENDS=""
|
||||
PKG_DEPENDS_TARGET=""
|
||||
PKG_DEPENDS_HOST=""
|
||||
PKG_DEPENDS_INIT=""
|
||||
PKG_DEPENDS_BOOTSTRAP=""
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION=""
|
||||
PKG_SHORTDESC="$1 (autogenerated)"
|
||||
@ -150,7 +155,6 @@ if [ -z "$LD_LIBRARY_PATH" -o "$LD_LIBRARY_PATH" = "${LD_LIBRARY_PATH#$ROOT/$TOO
|
||||
fi
|
||||
|
||||
VERSION_SUFFIX=$TARGET_ARCH
|
||||
. config/functions
|
||||
|
||||
check_path
|
||||
check_config
|
||||
@ -189,3 +193,7 @@ BUILD_INDENT_SIZE=4
|
||||
|
||||
# multilib? nah
|
||||
unset CONFIG_SITE
|
||||
|
||||
# meh suse
|
||||
unset PYTHONSTARTUP
|
||||
unset PYTHONPATH
|
||||
|
4
packages/3rdparty/lib/libzip/package.mk
vendored
4
packages/3rdparty/lib/libzip/package.mk
vendored
@ -17,12 +17,12 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="libzip"
|
||||
PKG_VERSION="0.10.1"
|
||||
PKG_VERSION="0.11.2"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.nih.at/libzip/"
|
||||
PKG_URL="http://www.nih.at/libzip/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
|
||||
PKG_URL="http://www.nih.at/libzip/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SHORTDESC="libzip"
|
||||
|
@ -46,6 +46,10 @@ make_target() {
|
||||
LOCALEDIR="./locale"
|
||||
}
|
||||
|
||||
post_make_target() {
|
||||
$STRIP libvdr-*.so*
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
||||
|
55
packages/3rdparty/multimedia/vdr-dummydevice/package.mk
vendored
Normal file
55
packages/3rdparty/multimedia/vdr-dummydevice/package.mk
vendored
Normal file
@ -0,0 +1,55 @@
|
||||
################################################################################
|
||||
# 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 <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-dummydevice"
|
||||
PKG_VERSION="2.0.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.vdr-wiki.de/wiki/index.php/Dummydevice-plugin"
|
||||
PKG_URL="http://phivdr.dyndns.org/vdr/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tgz"
|
||||
PKG_SOURCE_DIR="dummydevice-${PKG_VERSION}"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="vdr dummydevice plugin"
|
||||
PKG_LONGDESC="vdr dummydevice plugin"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC"
|
||||
export LDFLAGS="$LDFLAGS -fPIC"
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
LIBDIR="." \
|
||||
LOCALEDIR="./locale"
|
||||
}
|
||||
|
||||
post_make_target() {
|
||||
$STRIP libvdr-*.so*
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
46
packages/3rdparty/multimedia/vdr-dummydevice/patches/vdr-dummydevice-01_makefile.patch
vendored
Normal file
46
packages/3rdparty/multimedia/vdr-dummydevice/patches/vdr-dummydevice-01_makefile.patch
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index dc959f1..5cb2315 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -15,22 +15,15 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri
|
||||
|
||||
### The directory environment:
|
||||
|
||||
-# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell pkg-config --variable=$(1) vdr || pkg-config --variable=$(1) ../../../vdr.pc))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-PLGCFG = $(call PKGCFG,plgcfg)
|
||||
-#
|
||||
TMPDIR ?= /tmp
|
||||
|
||||
### The compiler options:
|
||||
|
||||
-export CFLAGS = $(call PKGCFG,cflags)
|
||||
-export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
+include $(VDRDIR)/Make.global
|
||||
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
||||
|
||||
### Allow user defined options to overwrite defaults:
|
||||
|
||||
@@ -47,7 +40,7 @@ SOFILE = libvdr-$(PLUGIN).so
|
||||
|
||||
### Includes and Defines (add further entries here):
|
||||
|
||||
-INCLUDES +=
|
||||
+INCLUDES += -I$(VDRDIR)/include
|
||||
|
||||
DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
||||
|
||||
@@ -103,6 +96,7 @@ install-i18n: $(I18Nmsgs)
|
||||
|
||||
$(SOFILE): $(OBJS)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
install-lib: $(SOFILE)
|
||||
install -D $^ $(DESTDIR)$(LIBDIR)/$^.$(APIVERSION)
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-iptv"
|
||||
PKG_VERSION="2.0.2"
|
||||
PKG_VERSION="2.1.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-plugin-dvbapi"
|
||||
PKG_VERSION="4d9de95"
|
||||
PKG_VERSION="a9b738e"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
|
@ -1,13 +1,13 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index ebe9d76..ef2d2e5 100644
|
||||
index a49dda6..873e73d 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -15,18 +15,11 @@ VERSION = $(shell grep 'static const char \*VERSION *=' DVBAPI.h | awk '{ print
|
||||
@@ -16,18 +16,11 @@ GITTAG = $(shell git describe --always 2>/dev/null)
|
||||
|
||||
### The directory environment:
|
||||
|
||||
-# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell pkg-config --variable=$(1) vdr || pkg-config --variable=$(1) ../../../vdr.pc))
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-PLGCFG = $(call PKGCFG,plgcfg)
|
||||
@ -22,56 +22,29 @@ index ebe9d76..ef2d2e5 100644
|
||||
|
||||
### Allow user defined options to overwrite defaults:
|
||||
|
||||
@@ -34,33 +27,7 @@ export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
@@ -35,7 +28,7 @@ export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
-ifeq ($(strip $(APIVERSION)),)
|
||||
-APIVERSION = $(shell grep 'define APIVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g')
|
||||
-NOCONFIG := 1
|
||||
-endif
|
||||
-
|
||||
-# backward compatibility with VDR version < 1.7.34
|
||||
-API1733 := $(shell if [ "$(APIVERSION)" \< "1.7.34" ]; then echo true; fi; )
|
||||
-
|
||||
-ifdef API1733
|
||||
-
|
||||
-VDRSRC = $(VDRDIR)
|
||||
-ifeq ($(strip $(VDRSRC)),)
|
||||
-VDRSRC := ../../..
|
||||
-endif
|
||||
-LIBDIR = $(VDRSRC)/PLUGINS/lib
|
||||
-
|
||||
-ifndef NOCONFIG
|
||||
-CXXFLAGS = $(call PKGCFG,cflags)
|
||||
-CXXFLAGS += -fPIC
|
||||
-else
|
||||
--include $(VDRSRC)/Make.global
|
||||
--include $(VDRSRC)/Make.config
|
||||
-endif
|
||||
-
|
||||
-export CXXFLAGS
|
||||
-endif
|
||||
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
||||
|
||||
### The name of the distribution archive:
|
||||
|
||||
@@ -73,9 +40,7 @@ SOFILE = libvdr-$(PLUGIN).so
|
||||
@@ -48,7 +41,7 @@ SOFILE = libvdr-$(PLUGIN).so
|
||||
|
||||
### Includes and Defines (add further entries here):
|
||||
|
||||
-ifdef API1733
|
||||
INCLUDES += -I$(VDRSRC)/include
|
||||
-endif
|
||||
-INCLUDES +=
|
||||
+INCLUDES += -I$(VDRDIR)/include
|
||||
|
||||
DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
||||
|
||||
@@ -145,6 +110,7 @@ $(DEPFILE): Makefile
|
||||
@@ -122,6 +115,7 @@ install-i18n: $(I18Nmsgs)
|
||||
|
||||
$(SOFILE): $(OBJS) $(FFDECSA)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) $(DECSALIB) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
libdvbapi-dvbsddevice.so: device-sd.o
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $< -o $@
|
||||
ifndef LIBDVBCSA
|
||||
$(FFDECSA): $(FFDECSADIR)/*.c $(FFDECSADIR)/*.h
|
||||
|
@ -1,13 +0,0 @@
|
||||
diff --git a/device-tmpl.cpp b/device-tmpl.cpp
|
||||
index 158324b..4d9f862 100644
|
||||
--- a/device-tmpl.cpp
|
||||
+++ b/device-tmpl.cpp
|
||||
@@ -71,7 +71,7 @@ SCDEVICE::SCDEVICE(cScDevicePlugin *DevPlugin, int Adapter, int Frontend, int ca
|
||||
fd_dvr = -1;
|
||||
|
||||
int n = Adapter;
|
||||
- softcsa = (fd_ca < 0);
|
||||
+ softcsa = true;
|
||||
if (softcsa)
|
||||
{
|
||||
if (HasDecoder())
|
51
packages/3rdparty/multimedia/vdr-plugin-eepg/package.mk
vendored
Normal file
51
packages/3rdparty/multimedia/vdr-plugin-eepg/package.mk
vendored
Normal file
@ -0,0 +1,51 @@
|
||||
################################################################################
|
||||
# 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 <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-plugin-eepg"
|
||||
PKG_VERSION="69b47ba"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://projects.vdr-developer.org/projects/plg-eepg"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain vdr"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="multimedia"
|
||||
PKG_SHORTDESC="vdr-plugin-eepg"
|
||||
PKG_LONGDESC="This plugin parses the Extended (2 to 10 day) EPG data which is send by providers on their portal channels. This EEPG data is transmitted in a non-standard format on a non-standard PID."
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC"
|
||||
export LDFLAGS="$LDFLAGS -fPIC"
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
LIBDIR="." \
|
||||
LOCALEDIR="./locale"
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # installation not needed, done by create-addon script
|
||||
}
|
34
packages/3rdparty/multimedia/vdr-plugin-eepg/patches/vdr-plugin-eepg-01_makefile.patch
vendored
Normal file
34
packages/3rdparty/multimedia/vdr-plugin-eepg/patches/vdr-plugin-eepg-01_makefile.patch
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
--- vdr-plugin-eepg-master/Makefile 2014-03-11 15:44:36.675368020 +0000
|
||||
+++ vdr-plugin-eepg-master/Makefile 2014-03-11 15:51:02.065495474 +0000
|
||||
@@ -31,21 +31,16 @@
|
||||
### The directory environment:
|
||||
|
||||
# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-PLGCFG = $(call PKGCFG,plgcfg)
|
||||
#
|
||||
TMPDIR ?= /tmp
|
||||
|
||||
### The compiler options:
|
||||
|
||||
-export CFLAGS = $(call PKGCFG,cflags)
|
||||
-export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
+include $(VDRDIR)/Make.global
|
||||
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
||||
|
||||
### Allow user defined options to overwrite defaults:
|
||||
|
||||
@@ -119,6 +114,7 @@
|
||||
|
||||
$(SOFILE): $(OBJS)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
install-lib: $(SOFILE)
|
||||
install -D $^ $(DESTDIR)$(LIBDIR)/$^.$(APIVERSION)
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-plugin-vnsiserver"
|
||||
PKG_VERSION="af29425"
|
||||
PKG_VERSION="e5f02b6"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
|
@ -50,6 +50,8 @@ post_make_target() {
|
||||
cd dist/epgdata2xmltv
|
||||
make -j1
|
||||
cd -
|
||||
$STRIP dist/epgdata2xmltv/epgdata2xmltv
|
||||
$STRIP libvdr-*.so*
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr-plugin-xvdr"
|
||||
PKG_VERSION="6249892"
|
||||
PKG_VERSION="7f49bfa"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
@ -33,6 +33,12 @@ PKG_IS_ADDON="no"
|
||||
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS -fPIC"
|
||||
export CXXFLAGS="$CXXFLAGS -fPIC"
|
||||
export LDFLAGS="$LDFLAGS -fPIC"
|
||||
}
|
||||
|
||||
make_target() {
|
||||
VDR_DIR=$(get_build_dir vdr)
|
||||
make VDRDIR=$VDR_DIR \
|
||||
|
59
packages/3rdparty/multimedia/vdr-plugin-xvdr/patches/vdr-plugin-xvdr-01_makefile.patch
vendored
Normal file
59
packages/3rdparty/multimedia/vdr-plugin-xvdr/patches/vdr-plugin-xvdr-01_makefile.patch
vendored
Normal file
@ -0,0 +1,59 @@
|
||||
From 08b08a02a8e93e9b11594e2e846ec2b1a316d314 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Wed, 12 Feb 2014 20:32:03 +0200
|
||||
Subject: [PATCH] makefile
|
||||
|
||||
---
|
||||
Makefile | 15 ++++-----------
|
||||
1 files changed, 4 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index da54323..81ba0e7 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -15,23 +15,15 @@ VERSION = $(shell grep 'static const char \*VERSION *=' src/xvdr/xvdr.h | awk '{
|
||||
|
||||
### The directory environment:
|
||||
|
||||
-# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell pkg-config --variable=$(1) vdr || pkg-config --variable=$(1) ../../../vdr.pc))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-PLGCFG = $(call PKGCFG,plgcfg)
|
||||
-CFGDIR = $(call PKGCFG,configdir)/plugins/$(PLUGIN)
|
||||
-#
|
||||
TMPDIR ?= /tmp
|
||||
|
||||
### The compiler options:
|
||||
|
||||
-export CFLAGS = $(call PKGCFG,cflags)
|
||||
-export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
+include $(VDRDIR)/Make.global
|
||||
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
||||
|
||||
### Allow user defined options to overwrite defaults:
|
||||
|
||||
@@ -48,7 +40,7 @@ SOFILE = libvdr-$(PLUGIN).so
|
||||
|
||||
### Includes and Defines (add further entries here):
|
||||
|
||||
-INCLUDES += -I./src -I./src/vdr
|
||||
+INCLUDES += -I./src -I./src/vdr -I$(VDRDIR)/include
|
||||
|
||||
ifdef DEBUG
|
||||
INCLUDES += -DDEBUG
|
||||
@@ -136,6 +128,7 @@ install-i18n: $(I18Nmsgs)
|
||||
|
||||
$(SOFILE): $(OBJS)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) -o $@
|
||||
+ @cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
install-lib: $(SOFILE)
|
||||
install -D $^ $(DESTDIR)$(LIBDIR)/$^.$(APIVERSION)
|
||||
--
|
||||
1.7.2.5
|
||||
|
@ -1,79 +0,0 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 06a49a2..ab037bd 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -16,45 +16,46 @@ VERSION = $(shell grep 'static const char \*VERSION *=' src/xvdr/xvdr.h | awk '{
|
||||
### The directory environment:
|
||||
|
||||
# Use package data if installed...otherwise assume we're under the VDR source directory:
|
||||
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell pkg-config --variable=$(1) vdr || pkg-config --variable=$(1) ../../../vdr.pc))
|
||||
-LIBDIR = $(call PKGCFG,libdir)
|
||||
-LOCDIR = $(call PKGCFG,locdir)
|
||||
-PLGCFG = $(call PKGCFG,plgcfg)
|
||||
-CFGDIR = $(call PKGCFG,configdir)/plugins/$(PLUGIN)
|
||||
#
|
||||
TMPDIR ?= /tmp
|
||||
|
||||
### The compiler options:
|
||||
|
||||
-export CFLAGS = $(call PKGCFG,cflags)
|
||||
-export CXXFLAGS = $(call PKGCFG,cxxflags)
|
||||
+OPTLEVEL ?= 2
|
||||
+CXXFLAGS = -O$(OPTLEVEL) -g -Wall -Woverloaded-virtual -fPIC -DPIC
|
||||
|
||||
### The version number of VDR's plugin API:
|
||||
|
||||
-APIVERSION = $(call PKGCFG,apiversion)
|
||||
+#DVBDIR = ../../../../DVB
|
||||
+#VDRDIR = ../../..
|
||||
+#LIBDIR = ../../lib
|
||||
+#TMPDIR = /tmp
|
||||
|
||||
### Allow user defined options to overwrite defaults:
|
||||
|
||||
--include $(PLGCFG)
|
||||
+-include $(VDRDIR)/Make.config
|
||||
+-include $(VDRDIR)/Make.global
|
||||
|
||||
### The name of the distribution archive:
|
||||
|
||||
ARCHIVE = $(PLUGIN)-$(VERSION)
|
||||
PACKAGE = vdr-$(ARCHIVE)
|
||||
|
||||
+APIVERSION = $(shell grep 'define APIVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g')
|
||||
+
|
||||
### The name of the shared object file:
|
||||
|
||||
SOFILE = libvdr-$(PLUGIN).so
|
||||
|
||||
### Includes and Defines (add further entries here):
|
||||
|
||||
-INCLUDES += -I./src
|
||||
+INCLUDES += -I$(VDRDIR)/include -I$(DVBDIR)/include -I$(VDRDIR) -I./src -I.
|
||||
|
||||
ifdef DEBUG
|
||||
INCLUDES += -DDEBUG
|
||||
endif
|
||||
|
||||
-DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"' -DXVDR_VERSION='"$(VERSION)"'
|
||||
+DEFINES += -DPLUGIN_NAME_I18N='"$(PLUGIN)"' -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DXVDR_VERSION='"$(VERSION)"'
|
||||
|
||||
### The object files (add further files here):
|
||||
|
||||
@@ -103,7 +104,7 @@ all: $(SOFILE) i18n
|
||||
MAKEDEP = $(CXX) -MM -MG
|
||||
DEPFILE = .dependencies
|
||||
$(DEPFILE): Makefile
|
||||
- @$(MAKEDEP) $(CXXFLAGS) $(DEFINES) $(INCLUDES) $(OBJS:%.o=%.c) > $@
|
||||
+ @$(MAKEDEP) $(DEFINES) $(INCLUDES) $(OBJS:%.o=%.c) > $@
|
||||
|
||||
-include $(DEPFILE)
|
||||
|
||||
@@ -137,6 +138,7 @@ install-i18n: $(I18Nmsgs)
|
||||
|
||||
$(SOFILE): $(OBJS)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -shared $(OBJS) -o $@
|
||||
+ @cp $@ $(LIBDIR)/$@.$(APIVERSION)
|
||||
|
||||
install-lib: $(SOFILE)
|
||||
install -D $^ $(DESTDIR)$(LIBDIR)/$^.$(APIVERSION)
|
@ -1,32 +0,0 @@
|
||||
commit 45b2e4ce57e345a9b9344d5b8d8f46155b872a27
|
||||
Author: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Sat Oct 19 21:48:49 2013 +0300
|
||||
|
||||
vdr 2.1.2 buildfix
|
||||
|
||||
diff --git a/src/config/config.c b/src/config/config.c
|
||||
index e058e96..1aaf9b8 100644
|
||||
--- a/src/config/config.c
|
||||
+++ b/src/config/config.c
|
||||
@@ -45,7 +45,7 @@ cXVDRServerConfig::cXVDRServerConfig()
|
||||
}
|
||||
|
||||
void cXVDRServerConfig::Load() {
|
||||
- cLiveQueue::SetTimeShiftDir(VideoDirectory);
|
||||
+ cLiveQueue::SetTimeShiftDir(cVideoDirectory::Name());
|
||||
cRecordingsCache::GetInstance().LoadResumeData();
|
||||
|
||||
if(!cConfig<cSetupLine>::Load(AddDirectory(ConfigDirectory, GENERAL_CONFIG_FILE), true, false))
|
||||
diff --git a/src/xvdr/xvdrclient.c b/src/xvdr/xvdrclient.c
|
||||
index a1a9460..e15dd8f 100644
|
||||
--- a/src/xvdr/xvdrclient.c
|
||||
+++ b/src/xvdr/xvdrclient.c
|
||||
@@ -1385,7 +1385,7 @@ bool cXVDRClient::processTIMER_Update() /* OPCODE 85 */
|
||||
bool cXVDRClient::processRECORDINGS_GetDiskSpace() /* OPCODE 100 */
|
||||
{
|
||||
int FreeMB;
|
||||
- int Percent = VideoDiskSpace(&FreeMB);
|
||||
+ int Percent = cVideoDirectory::VideoDiskSpace(&FreeMB);
|
||||
int Total = (FreeMB / (100 - Percent)) * 100;
|
||||
|
||||
m_resp->put_U32(Total);
|
73
packages/3rdparty/multimedia/vdr-sc/patches/vdr-sc-03_vdr-2.1.4.patch
vendored
Normal file
73
packages/3rdparty/multimedia/vdr-sc/patches/vdr-sc-03_vdr-2.1.4.patch
vendored
Normal file
@ -0,0 +1,73 @@
|
||||
## source: http://overlays.gentoo.org/svn/proj/vdr/vdr-devel/media-plugins/vdr-sc/files/
|
||||
|
||||
diff -r 29b7b5f231c8 cam.c
|
||||
--- a/cam.c Sat Jul 21 20:51:33 2012 +0200
|
||||
+++ b/cam.c Wed Jan 08 16:47:38 2014 +0400
|
||||
@@ -1841,7 +1841,7 @@
|
||||
cScCamSlot(cCam *Cam, const char *DevId, int Slot);
|
||||
void Process(const unsigned char *data, int len);
|
||||
eModuleStatus Status(void);
|
||||
- bool Reset(bool log=true);
|
||||
+ bool ResetSlot(bool log=true);
|
||||
cCiFrame *Frame(void) { return &frame; }
|
||||
};
|
||||
|
||||
@@ -1853,7 +1853,7 @@
|
||||
cam=Cam; devId=DevId; slot=Slot;
|
||||
version=0; caids[0]=0; doReply=false; lastStatus=msReset;
|
||||
frame.SetRb(&rb);
|
||||
- Reset(false);
|
||||
+ ResetSlot(false);
|
||||
}
|
||||
|
||||
eModuleStatus cScCamSlot::Status(void)
|
||||
@@ -1876,7 +1876,7 @@
|
||||
return status;
|
||||
}
|
||||
|
||||
-bool cScCamSlot::Reset(bool log)
|
||||
+bool cScCamSlot::ResetSlot(bool log)
|
||||
{
|
||||
reset=true; resetTimer.Set(SLOT_RESET_TIME);
|
||||
rb.Clear();
|
||||
@@ -1890,7 +1890,7 @@
|
||||
bool dr=cam->IsSoftCSA(false) || ScSetup.ConcurrentFF>0;
|
||||
if(dr!=doReply && !IsDecrypting()) {
|
||||
PRINTF(L_CORE_CI,"%s.%d: doReply changed, reset triggered",devId,slot);
|
||||
- Reset(false);
|
||||
+ ResetSlot(false);
|
||||
doReply=dr;
|
||||
}
|
||||
if(checkTimer.TimedOut()) {
|
||||
@@ -2330,7 +2330,7 @@
|
||||
{
|
||||
cMutexLock lock(&ciMutex);
|
||||
PRINTF(L_CORE_CI,"%s: reset of slot %d requested",devId,Slot);
|
||||
- return slots[Slot] ? slots[Slot]->Reset():false;
|
||||
+ return slots[Slot] ? slots[Slot]->ResetSlot():false;
|
||||
}
|
||||
|
||||
eModuleStatus cCam::ModuleStatus(int Slot)
|
||||
--- a/device-tmpl.c 2012-07-21 20:51:33.000000000 +0200
|
||||
+++ b/device-tmpl.c 2014-01-26 13:51:59.000000000 +0100
|
||||
@@ -41,7 +41,6 @@
|
||||
#endif //!SASC
|
||||
protected:
|
||||
#ifndef SASC
|
||||
- virtual bool Ready(void);
|
||||
virtual bool SetPid(cPidHandle *Handle, int Type, bool On);
|
||||
virtual bool SetChannelDevice(const cChannel *Channel, bool LiveView);
|
||||
virtual bool OpenDvr(void);
|
||||
@@ -164,12 +163,6 @@
|
||||
return cam || hwciadapter;
|
||||
}
|
||||
|
||||
-bool SCDEVICE::Ready(void)
|
||||
-{
|
||||
- return (cam ? cam->Ready():true) &&
|
||||
- (hwciadapter ? hwciadapter->Ready():true);
|
||||
-}
|
||||
-
|
||||
bool SCDEVICE::SetPid(cPidHandle *Handle, int Type, bool On)
|
||||
{
|
||||
if(cam) cam->SetPid(Type,Handle->pid,On);
|
2
packages/3rdparty/multimedia/vdr/package.mk
vendored
2
packages/3rdparty/multimedia/vdr/package.mk
vendored
@ -18,7 +18,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vdr"
|
||||
PKG_VERSION="2.1.3"
|
||||
PKG_VERSION="2.1.5"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
|
@ -88,7 +88,7 @@ makeinstall_target() {
|
||||
|
||||
post_install() {
|
||||
# link default.target to retroarch.target
|
||||
ln -sf retroarch.target $INSTALL/lib/systemd/system/default.target
|
||||
ln -sf retroarch.target $INSTALL/usr/lib/systemd/system/default.target
|
||||
|
||||
enable_service retroarch.service
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/Niouby/OpenELEC.tv"
|
||||
PKG_URL=""
|
||||
PKG_DEPENDS="RetroArch mupen64plus vecx snes9x-next dosbox dinothawr prboom mednafen-pce fba pcsx_rearmed scummvm handy picodrive pocketsnes genesis-plus-gx nxengine fceu-next gambatte stella imame4all vbam mednafen-gba vba-next meteor nestopia quicknes libretro-ffmpeg retroarch-joypad-autoconfig core-info"
|
||||
PKG_DEPENDS_TARGET="RetroArch mupen64plus vecx snes9x-next dosbox dinothawr prboom mednafen-pce fba pcsx_rearmed scummvm handy picodrive pocketsnes genesis-plus-gx nxengine fceu-next gambatte stella imame4all vbam mednafen-gba vba-next meteor nestopia quicknes libretro-ffmpeg retroarch-joypad-autoconfig core-info"
|
||||
PKG_BUILD_DEPENDS=""
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="virtual"
|
||||
@ -36,5 +36,5 @@ PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
if [ "$SAMBA_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS="$PKG_DEPENDS samba"
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET samba"
|
||||
fi
|
||||
|
@ -1,3 +1,11 @@
|
||||
4.1.5
|
||||
dont touch /storage/.profile
|
||||
4.1.4
|
||||
enable hw pid filter by default
|
||||
4.1.3
|
||||
include driver bin/libs
|
||||
4.1.2
|
||||
clean up. sorry. no analog tv anymore.
|
||||
4.1.1
|
||||
clean up
|
||||
4.1.0
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
PKG_NAME="sundtek-mediatv"
|
||||
PKG_VERSION="4.1"
|
||||
PKG_REV="1"
|
||||
PKG_REV="5"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="nonfree"
|
||||
PKG_SITE="http://support.sundtek.com/"
|
||||
@ -33,7 +33,25 @@ PKG_ADDON_TYPE="xbmc.python.script"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
make_target() {
|
||||
: # nothing to do here
|
||||
mkdir -p $ROOT/$PKG_BUILD
|
||||
cd $ROOT/$PKG_BUILD
|
||||
|
||||
case $TARGET_ARCH in
|
||||
i386)
|
||||
INSTALLER_URL="http://sundtek.de/media/netinst/32bit/installer.tar.gz"
|
||||
;;
|
||||
x86_64)
|
||||
INSTALLER_URL="http://sundtek.de/media/netinst/64bit/installer.tar.gz"
|
||||
;;
|
||||
arm)
|
||||
INSTALLER_URL="http://sundtek.de/media/netinst/armsysvhf/installer.tar.gz"
|
||||
;;
|
||||
esac
|
||||
wget -O installer.tar.gz $INSTALLER_URL
|
||||
tar -xzf installer.tar.gz
|
||||
# we run this via wrapper
|
||||
mv opt/bin/mediaclient opt/bin/mediaclient.bin
|
||||
chmod 755 opt/bin/*
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
@ -44,4 +62,6 @@ addon() {
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/
|
||||
cp -P $PKG_DIR/config/* $ADDON_BUILD/$PKG_ADDON_ID/config/
|
||||
cp -P $PKG_DIR/settings-default.xml $ADDON_BUILD/$PKG_ADDON_ID/
|
||||
cp -Pa $PKG_BUILD/opt/bin $ADDON_BUILD/$PKG_ADDON_ID/
|
||||
cp -Pa $PKG_BUILD/opt/lib $ADDON_BUILD/$PKG_ADDON_ID/
|
||||
}
|
||||
|
@ -1,9 +1,7 @@
|
||||
<settings>
|
||||
<setting id="AUTO_UPDATE" value="false" />
|
||||
<setting id="ANALOG_TV" value="false" />
|
||||
<setting id="SETTLE_TIME" value="0" />
|
||||
<setting id="RUN_USER_SCRIPT" value="false" />
|
||||
<setting id="ENABLE_HW_PID_FILTER" value="false" />
|
||||
<setting id="ENABLE_HW_PID_FILTER" value="true" />
|
||||
<setting id="ENABLE_IR_RECEIVER" value="false" />
|
||||
<setting id="LOWEST_ADAPTER_NUM" value="0" />
|
||||
<setting id="SUSPEND_DRIVER" value="true" />
|
||||
|
2
packages/addons/driver/sundtek-mediatv/source/bin/mediaclient
Executable file
2
packages/addons/driver/sundtek-mediatv/source/bin/mediaclient
Executable file
@ -0,0 +1,2 @@
|
||||
#!/bin/sh
|
||||
LD_PRELOAD=/storage/.xbmc/addons/driver.dvb.sundtek-mediatv/lib/libmediaclient.so exec mediaclient.bin "$@"
|
@ -73,112 +73,8 @@ mkdir -p /var/config
|
||||
cat "$SUNDTEK_ADDON_SETTINGS" | awk -F\" '{print $2"=\""$4"\""}' | sed '/^=/d' > /var/config/sundtek-addon.conf
|
||||
. /var/config/sundtek-addon.conf
|
||||
|
||||
if [ "$AUTO_UPDATE" = "true" -a -f $SUNDTEK_ADDON_DIR/bin/mediasrv ]; then
|
||||
logger -t Sundtek "### Checking for new Sundtek binary installer ###"
|
||||
touch $SUNDTEK_ADDON_HOME/driver-version.txt
|
||||
wget -O /tmp/sundtek-driver-version.txt http://sundtek.de/media/latest.phtml
|
||||
md5_1=$(md5sum -b /tmp/sundtek-driver-version.txt | awk '{print $1}')
|
||||
md5_2=$(md5sum -b $SUNDTEK_ADDON_HOME/driver-version.txt | awk '{print $1}')
|
||||
if [ "$md5_1" != "$md5_2" ]; then
|
||||
logger -t Sundtek "### Updating Sundtek binary installer ###"
|
||||
rm -f $SUNDTEK_ADDON_DIR/bin/mediasrv
|
||||
fi
|
||||
|
||||
rm -f /tmp/sundtek-driver-version.txt
|
||||
fi
|
||||
|
||||
if [ ! -f $SUNDTEK_ADDON_DIR/bin/mediasrv ]; then
|
||||
# remove renamed addon if exist
|
||||
rm -fr "$HOME/.xbmc/addons/driver.dvb.sundtek"
|
||||
rm -fr "$HOME/userdata/addon_data/driver.dvb.sundtek"
|
||||
|
||||
logger -t Sundtek "### Downloading installer ###"
|
||||
cd $SUNDTEK_ADDON_DIR
|
||||
mkdir -p bin lib tmp
|
||||
cd tmp/
|
||||
|
||||
ARCH=$(sed -n 's|.*\.\([^-]*\)-.*|\1|p' /etc/release | tr -d '\n')
|
||||
if [ "$ARCH" = "x86_64" ]; then
|
||||
INSTALLER_URL="http://sundtek.de/media/netinst/64bit/installer.tar.gz"
|
||||
elif [ "$ARCH" = "i386" ]; then
|
||||
INSTALLER_URL="http://sundtek.de/media/netinst/32bit/installer.tar.gz"
|
||||
elif [ "$ARCH" = "arm" ]; then
|
||||
INSTALLER_URL="http://sundtek.de/media/netinst/armsysvhf/installer.tar.gz"
|
||||
|
||||
# enable HW PID filter on RPi by default
|
||||
sed -i 's|^use_hwpidfilter=.*|use_hwpidfilter=on|g' $SUNDTEK_ADDON_DIR/config/sundtek.conf
|
||||
sed -i 's|^use_hwpidfilter=.*|use_hwpidfilter=on|g' $SUNDTEK_ADDON_HOME/sundtek.conf
|
||||
sed -i 's|.*id="ENABLE_HW_PID_FILTER".*|<setting id="ENABLE_HW_PID_FILTER" value="true" />|' $SUNDTEK_ADDON_DIR/settings-default.xml
|
||||
sed -i 's|.*id="ENABLE_HW_PID_FILTER".*|<setting id="ENABLE_HW_PID_FILTER" value="true" />|' $SUNDTEK_ADDON_SETTINGS
|
||||
else
|
||||
logger -t Sundtek "### Unsupported architecture ###"
|
||||
cd ..
|
||||
rm -fr tmp/
|
||||
exit 1
|
||||
fi
|
||||
|
||||
wget -O installer.tar.gz $INSTALLER_URL
|
||||
wget -O ../driver-version.txt http://sundtek.de/media/latest.phtml
|
||||
logger -t Sundtek "### Extracting installer ###"
|
||||
tar -xzf installer.tar.gz
|
||||
if [ $? -ne 0 ]; then
|
||||
logger -t Sundtek "### Installer damaged ###"
|
||||
cd ..
|
||||
rm -fr tmp/
|
||||
exit 2
|
||||
fi
|
||||
|
||||
cp -Pa opt/bin/* ../bin/
|
||||
cp -Pa opt/lib/* ../lib/
|
||||
cp ../driver-version.txt $SUNDTEK_ADDON_HOME/
|
||||
cd ..
|
||||
rm -fr tmp/
|
||||
logger -t Sundtek "### Installer finished ###"
|
||||
|
||||
cat "$SUNDTEK_ADDON_SETTINGS" | awk -F\" '{print $2"=\""$4"\""}' | sed '/^=/d' > /var/config/sundtek-addon.conf
|
||||
. /var/config/sundtek-addon.conf
|
||||
fi
|
||||
|
||||
if [ ! -f $SUNDTEK_ADDON_HOME/driver-version.txt ]; then
|
||||
cp $SUNDTEK_ADDON_DIR/driver-version.txt $SUNDTEK_ADDON_HOME/
|
||||
fi
|
||||
|
||||
# enable to install same addon package version again
|
||||
#rm -f /storage/.xbmc/addons/packages/driver.dvb.sundtek*
|
||||
|
||||
# add alias for /opt/bin/mediaclient
|
||||
alias_set="$(grep libmediaclient.so /storage/.profile 2>/dev/null)"
|
||||
if [ -z "$alias_set" ]; then
|
||||
echo "" >>/storage/.profile
|
||||
echo "[ -f /storage/.xbmc/addons/driver.dvb.sundtek-mediatv/lib/libmediaclient.so ] && export LD_PRELOAD=/storage/.xbmc/addons/driver.dvb.sundtek-mediatv/lib/libmediaclient.so" >>/storage/.profile
|
||||
echo "" >>/storage/.profile
|
||||
else
|
||||
# fix name
|
||||
sed -i 's|/driver.dvb.sundtek/|/driver.dvb.sundtek-mediatv/|g' /storage/.profile
|
||||
fi
|
||||
|
||||
export LD_PRELOAD=$SUNDTEK_ADDON_DIR/lib/libmediaclient.so
|
||||
|
||||
if [ "$ANALOG_TV" = "true" -a ! -f "$SUNDTEK_ADDON_DIR/bin/plugins/lib/libavcodec.so.54.12.100" ]; then
|
||||
logger -t Sundtek "### Downloading missing ffmpeg libraries ###"
|
||||
cd $SUNDTEK_ADDON_DIR/bin
|
||||
mkdir -p plugins/
|
||||
cd plugins/
|
||||
|
||||
ARCH=$(sed -n 's|.*\.\([^-]*\)-.*|\1|p' /etc/release | tr -d '\n')
|
||||
wget -O sundtek-ffmpeg-analog_tv-lib.tgz http://dl.dropbox.com/u/8224157/public/sundtek/sundtek-ffmpeg-analog_tv-lib-$ARCH.tgz
|
||||
|
||||
logger -t Sundtek "### Extracting ffmpeg libraries ###"
|
||||
tar -xzf sundtek-ffmpeg-analog_tv-lib.tgz
|
||||
if [ $? -ne 0 ]; then
|
||||
logger -t Sundtek "### Ffmpeg library archive damaged ###"
|
||||
rm -f sundtek-ffmpeg-analog_tv-lib.tgz
|
||||
exit 2
|
||||
fi
|
||||
|
||||
rm -f sundtek-ffmpeg-analog_tv-lib.tgz
|
||||
fi
|
||||
|
||||
if [ -z "$(pidof mediasrv)" ]; then
|
||||
rm -f /var/log/mediasrv.log
|
||||
rm -f /var/log/mediaclient.log
|
||||
@ -324,12 +220,6 @@ if [ -z "$(pidof mediasrv)" ]; then
|
||||
sleep $SETTLE_TIME
|
||||
fi
|
||||
|
||||
if [ "$ANALOG_TV" = "true" ]; then
|
||||
logger -t Sundtek "### Switching to analog TV mode ###"
|
||||
#rm -fr /dev/dvb/
|
||||
mediaclient --disable-dvb=/dev/dvb/adapter0
|
||||
fi
|
||||
|
||||
if [ "$RUN_USER_SCRIPT" = "true" -a -f "$SUNDTEK_ADDON_HOME/userscript.sh" ]; then
|
||||
logger -t Sundtek "### Running user script $SUNDTEK_ADDON_HOME/userscript.sh ###"
|
||||
cat $SUNDTEK_ADDON_HOME/userscript.sh | dos2unix >/var/run/sundtek-userscript.sh
|
||||
@ -339,7 +229,7 @@ if [ -z "$(pidof mediasrv)" ]; then
|
||||
# save adapter serial number in background
|
||||
sleep 5
|
||||
serial_number_old=$(cat $SUNDTEK_ADDON_HOME/adapters.txt 2>/dev/null)
|
||||
serial_number_new=$(mediaclient -e | awk '/device / {print $0} /ID:/ {print $2}')
|
||||
serial_number_new=$(mediaclient.bin -e | awk '/device / {print $0} /ID:/ {print $2}')
|
||||
if [ "$serial_number_old" != "$serial_number_new" ]; then
|
||||
echo "$serial_number_new" >$SUNDTEK_ADDON_HOME/adapters.txt
|
||||
fi
|
||||
|
@ -25,7 +25,7 @@ __cwd__ = __settings__.getAddonInfo('path')
|
||||
__resources_lib__ = xbmc.translatePath(os.path.join(__cwd__, 'resources', 'lib'))
|
||||
__settings_xml__ = xbmc.translatePath(os.path.join(__cwd__, 'resources', 'settings.xml'))
|
||||
|
||||
__mediaclient__ = xbmc.translatePath(os.path.join(__cwd__, 'bin', 'mediaclient'))
|
||||
__mediaclient__ = xbmc.translatePath(os.path.join(__cwd__, 'bin', 'mediaclient.bin'))
|
||||
__ld_preload__ = xbmc.translatePath(os.path.join(__cwd__, 'lib', 'libmediaclient.so'))
|
||||
__mediaclient_e__ = 'LD_PRELOAD=' + __ld_preload__ + ' ' + __mediaclient__ + ' -e'
|
||||
|
||||
|
@ -1,8 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||
<strings>
|
||||
<string id="1000">General</string>
|
||||
<string id="1011">Auto update binary driver</string>
|
||||
<string id="1012">Enable analog TV</string>
|
||||
<string id="1014">Extra delay [sec]</string>
|
||||
<string id="1015">Run user script</string>
|
||||
<string id="1030">Enable hardware PID filter</string>
|
||||
|
@ -2,11 +2,9 @@
|
||||
<settings>
|
||||
<category label="1000" >
|
||||
<setting type="sep" />
|
||||
<setting id="AUTO_UPDATE" type="bool" label="1011" default="false" />
|
||||
<setting id="ANALOG_TV" type="bool" label="1012" default="false" enable="false" />
|
||||
<setting id="SETTLE_TIME" type="number" label="1014" default="0" />
|
||||
<setting id="RUN_USER_SCRIPT" type="bool" label="1015" default="false" />
|
||||
<setting id="ENABLE_HW_PID_FILTER" type="bool" label="1030" default="false" />
|
||||
<setting id="ENABLE_HW_PID_FILTER" type="bool" label="1030" default="true" />
|
||||
<setting id="ENABLE_IR_RECEIVER" type="bool" label="1035" default="false" />
|
||||
<setting id="LOWEST_ADAPTER_NUM" type="number" label="1040" default="0" />
|
||||
<setting id="SUSPEND_DRIVER" type="bool" label="1050" default="true" />
|
||||
|
@ -0,0 +1,55 @@
|
||||
################################################################################
|
||||
# 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="repository.unofficial.addon.pro"
|
||||
PKG_VERSION="4.1.2"
|
||||
PKG_REV="2"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://unofficial.addon.pro"
|
||||
PKG_URL=""
|
||||
PKG_DEPENDS_TARGET=""
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION=""
|
||||
PKG_SHORTDESC="Unfficial OpenELEC.tv Add-on Repository"
|
||||
PKG_LONGDESC="Unfficial OpenELEC.tv Add-on Repository"
|
||||
|
||||
PKG_IS_ADDON="yes"
|
||||
PKG_ADDON_TYPE="xbmc.addon.repository"
|
||||
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
PKG_MAINTAINER="unofficial.addon.pro"
|
||||
|
||||
make_target() {
|
||||
$SED -e "s|@ADDON_VERSION@|$ADDON_VERSION|g" \
|
||||
-e "s|@PROJECT@|$PROJECT|g" \
|
||||
-e "s|@ARCH@|$ARCH|g" \
|
||||
-i addon.xml
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
: # nop
|
||||
}
|
||||
|
||||
addon() {
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID
|
||||
cp -R $PKG_BUILD/* $ADDON_BUILD/$PKG_ADDON_ID
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="repository.unofficial.addon.pro"
|
||||
name="Unofficial [COLOR FF757677]Open[/COLOR][COLOR FF8ABEE2]ELEC[/COLOR] Mediacenter OS Add-ons"
|
||||
version="4.1.2"
|
||||
provider-name="unofficial.addon.pro">
|
||||
<extension point="xbmc.addon.repository"
|
||||
name="Unofficial OpenELEC.tv Add-on Repository">
|
||||
<info>http://unofficial.addon.pro/addons/@ADDON_VERSION@/@PROJECT@/@ARCH@/addons.xml</info>
|
||||
<checksum>http://unofficial.addon.pro/addons/@ADDON_VERSION@/@PROJECT@/@ARCH@/addons.xml.md5</checksum>
|
||||
<datadir zip="true">http://unofficial.addon.pro/addons/@ADDON_VERSION@/@PROJECT@/@ARCH@</datadir>
|
||||
</extension>
|
||||
<extension point="xbmc.addon.metadata">
|
||||
<summary>Unofficial addon repository for OpenELEC</summary>
|
||||
<description>
|
||||
[COLOR orange]Use with care. There will be NO end user support for addons in this repository[/COLOR]
|
||||
</description>
|
||||
<disclaimer>This is an unofficial addon repository. please don't ask for support in openelec forum / irc channel</disclaimer>
|
||||
<platform>all</platform>
|
||||
</extension>
|
||||
</addon>
|
@ -0,0 +1,17 @@
|
||||
4.1.2
|
||||
- fix typo in repository name
|
||||
|
||||
4.1.1
|
||||
- bump
|
||||
|
||||
4.1.0
|
||||
- rebuild for addon api bump
|
||||
|
||||
4.0.0
|
||||
- rebuild for OpenELEC-4.0
|
||||
|
||||
1.0.1
|
||||
- use generic/i386 addons for atv
|
||||
|
||||
1.0.0
|
||||
- initial release
|
Binary file not shown.
After Width: | Height: | Size: 45 KiB |
@ -1,3 +1,6 @@
|
||||
4.1.2
|
||||
- fix issues with "wait for frontend init". thanks @sraue
|
||||
|
||||
4.1.1
|
||||
- rebuild to fix curl/gnutls/ssl
|
||||
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
PKG_NAME="tvheadend"
|
||||
PKG_VERSION="3.4.27"
|
||||
PKG_REV="1"
|
||||
PKG_REV="2"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.lonelycoder.com/hts/tvheadend_overview.html"
|
||||
|
@ -73,10 +73,13 @@ for driver_dvb in $(find /storage/.xbmc/addons/driver.dvb.*/bin/userspace-driver
|
||||
done
|
||||
|
||||
# (wait for) at least 1 adapter (xbmc allows to set 0)
|
||||
# xbmc allows "numeric" type field to be empty. lets handle thaat
|
||||
[ "$NUM_ADAPTERS" = "" ] && NUM_ADAPTERS=1
|
||||
# 0 does not make sense. should be 1 or more
|
||||
[ $NUM_ADAPTERS -lt 1 ] && NUM_ADAPTERS=1
|
||||
if [ "$WAIT_FOR_FEINIT" == "true" ] ; then
|
||||
while [ true ] ; do
|
||||
if [ -e /dev/dvb/adapter$((NUM_ADAPTERS-1))/frontend* ] ; then
|
||||
if [ -e /dev/dvb/adapter$((NUM_ADAPTERS-1))/frontend0 ] ; then
|
||||
break
|
||||
fi
|
||||
sleep 1
|
||||
|
@ -1,3 +1,18 @@
|
||||
4.1.5
|
||||
- fix issues with "wait for frontend init". thanks @sraue
|
||||
|
||||
4.1.4
|
||||
- add plugin 'vdr-plugin-eepg'
|
||||
- update to vdr-plugin-xvdr-4a9d95e
|
||||
- update to vdr-plugin-dvbapi-a9b738e
|
||||
|
||||
4.1.3
|
||||
- update to vdr-2.1.5
|
||||
- update to vdr-iptv-2.1.0
|
||||
- update to vdr-plugin-vnsiserver-e5f02b6
|
||||
- update to vdr-plugin-dvbapi-a3b4a5a
|
||||
- update to vdr-plugin-xvdr-7d6ebb7
|
||||
|
||||
4.1.2
|
||||
- update to vdr-2.1.3
|
||||
- update to vdr-iptv-2.0.1
|
||||
|
@ -19,12 +19,12 @@
|
||||
|
||||
PKG_NAME="vdr-addon"
|
||||
PKG_VERSION="4.1"
|
||||
PKG_REV="2"
|
||||
PKG_REV="5"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.openelec.tv"
|
||||
PKG_URL=""
|
||||
PKG_DEPENDS_TARGET="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_DEPENDS_TARGET="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 vdr-plugin-eepg"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="service.multimedia"
|
||||
PKG_SHORTDESC="vdr: A powerful DVB TV application"
|
||||
@ -76,6 +76,7 @@ addon() {
|
||||
cp -PR $(get_build_dir vdr-wirbelscan)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $(get_build_dir vdr-wirbelscancontrol)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $(get_build_dir vdr-plugin-dvbapi)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $(get_build_dir vdr-plugin-eepg)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $VDR_SC_DIR/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $VDR_SC_DIR/systems/*/libsc*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $VDR_PLUGIN_STREAMVEV_DIR/server/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
@ -84,6 +85,9 @@ addon() {
|
||||
cp -PR $(get_build_dir vdr-control)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $(get_build_dir vdr-epgsearch)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $VDR_PLUGIN_XMLTV2VDR/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
cp -PR $(get_build_dir vdr-dummydevice)/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin
|
||||
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/eepg
|
||||
|
||||
mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/xvdr
|
||||
cp -PR $VDR_PLUGIN_XVDR_DIR/xvdr/allowed_hosts.conf $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/xvdr
|
||||
|
@ -22,14 +22,6 @@
|
||||
|
||||
oe_setup_addon service.multimedia.vdr-addon
|
||||
|
||||
check_tmpfs_mount() {
|
||||
grep " /var/run/vdr " /proc/mounts >/dev/null
|
||||
if [ $? -ne 0 ] ; then
|
||||
mkdir -p /var/run/vdr
|
||||
mount -t tmpfs -o size=10% tmpfs /var/run/vdr
|
||||
fi
|
||||
}
|
||||
|
||||
fix_config() {
|
||||
if [ -f "$ADDON_CONFIG_DIR/setup.conf" ]; then
|
||||
sed -i -e '/^$/d' $ADDON_CONFIG_DIR/setup.conf
|
||||
@ -57,18 +49,6 @@ if [ ! -f "$ADDON_CACHE_DIR" ]; then
|
||||
mkdir -p $ADDON_CACHE_DIR
|
||||
fi
|
||||
|
||||
#handle epgsources
|
||||
mkdir -p /var/lib/epgsources
|
||||
mkdir -p $ADDON_HOME/config/epgsources
|
||||
for source in `find $ADDON_DIR/config/epgsources -type f`; do
|
||||
if [ ! -e $ADDON_HOME/config/epgsources/`basename $source` ] ; then
|
||||
cp $source $ADDON_HOME/config/epgsources/
|
||||
fi
|
||||
done
|
||||
for source in `find $ADDON_HOME/config/epgsources -type f`; do
|
||||
cp $source /var/lib/epgsources
|
||||
done
|
||||
|
||||
VDR_ARG="-g /tmp --no-kbd"
|
||||
if [ "$DEBUG" = "yes" ]; then
|
||||
VDR_ARG="$VDR_ARG --log=3"
|
||||
@ -96,12 +76,11 @@ if [ "$ENABLE_EXTERNAL_RECCMD" == "true" ] ; then
|
||||
fi
|
||||
fi
|
||||
|
||||
VDR_ARG="$VDR_ARG -P $PVR_PLUGIN"
|
||||
VDR_ARG="$VDR_ARG -P wirbelscan -P wirbelscancontrol"
|
||||
|
||||
# keep softcam first
|
||||
if [ "$ENABLE_SOFTCAM" == "true" ] ; then
|
||||
VDR_ARG="$VDR_ARG -P $SOFTCAM_PLUGIN"
|
||||
fi
|
||||
VDR_ARG="$VDR_ARG -P wirbelscan -P wirbelscancontrol"
|
||||
if [ "$ENABLE_IPTV" == "true" ] ; then
|
||||
VDR_ARG="$VDR_ARG -P iptv"
|
||||
fi
|
||||
@ -117,12 +96,33 @@ fi
|
||||
if [ "$ENABLE_CONTROL" == "true" ] ; then
|
||||
VDR_ARG="$VDR_ARG -P 'control -p $CONTROL_PORT'"
|
||||
fi
|
||||
if [ "$ENABLE_EEPG" == "true" ] ; then
|
||||
VDR_ARG="$VDR_ARG -P eepg"
|
||||
fi
|
||||
if [ "$ENABLE_EPGSEARCH" == "true" ] ; then
|
||||
VDR_ARG="$VDR_ARG -P epgsearch"
|
||||
fi
|
||||
if [ "$ENABLE_DUMMYDEVICE" == "true" ] ; then
|
||||
VDR_ARG="$VDR_ARG -P dummydevice"
|
||||
fi
|
||||
if [ "$ENABLE_XMLTV2VDR" == "true" ] ; then
|
||||
VDR_ARG="$VDR_ARG -P 'xmltv2vdr --epgfile=$ADDON_CACHE_DIR/epg.db'"
|
||||
# xmltv2vdr needs /var/run/vdr
|
||||
grep -q " /var/run/vdr " /proc/mounts || ( mkdir -p /var/run/vdr && mount -t tmpfs -o size=10% tmpfs /var/run/vdr )
|
||||
#handle epgsources
|
||||
mkdir -p /var/lib/epgsources
|
||||
mkdir -p $ADDON_HOME/config/epgsources
|
||||
for source in `find $ADDON_DIR/config/epgsources -type f`; do
|
||||
if [ ! -e $ADDON_HOME/config/epgsources/`basename $source` ] ; then
|
||||
cp $source $ADDON_HOME/config/epgsources/
|
||||
fi
|
||||
done
|
||||
for source in `find $ADDON_HOME/config/epgsources -type f`; do
|
||||
cp $source /var/lib/epgsources
|
||||
done
|
||||
fi
|
||||
# vnsi/xvdr last
|
||||
VDR_ARG="$VDR_ARG -P $PVR_PLUGIN"
|
||||
|
||||
cd $ADDON_DIR/config
|
||||
mkdir -p $ADDON_CONFIG_DIR
|
||||
@ -146,16 +146,18 @@ for driver_dvb in $(find /storage/.xbmc/addons/driver.dvb.*/bin/userspace-driver
|
||||
done
|
||||
|
||||
# (wait for) at least 1 adapter (xbmc allows to set 0)
|
||||
# xbmc allows "numeric" type field to be empty. lets handle thaat
|
||||
[ "$NUM_ADAPTERS" = "" ] && NUM_ADAPTERS=1
|
||||
# 0 does not make sense. should be 1 or more
|
||||
[ $NUM_ADAPTERS -lt 1 ] && NUM_ADAPTERS=1
|
||||
if [ "$WAIT_FOR_FEINIT" == "true" ] ; then
|
||||
while [ true ] ; do
|
||||
if [ -e /dev/dvb/adapter$((NUM_ADAPTERS-1))/frontend* ] ; then
|
||||
if [ -e /dev/dvb/adapter$((NUM_ADAPTERS-1))/frontend0 ] ; then
|
||||
break
|
||||
fi
|
||||
sleep 1
|
||||
done
|
||||
fi
|
||||
|
||||
check_tmpfs_mount
|
||||
fix_config
|
||||
eval LANG=en_US.UTF-8 exec vdr.bin $VDR_ARG
|
||||
|
@ -20,6 +20,8 @@
|
||||
<string id="1043">control: listen on port</string>
|
||||
<string id="1044">Enable plugin: epgsearch</string>
|
||||
<string id="1045">Enable plugin: xmltv2vdr</string>
|
||||
<string id="1046">Enable plugin: extended EPG</string>
|
||||
<string id="1047">Enable plugin: dummydevice</string>
|
||||
<string id="1051">VDR Configuration</string>
|
||||
<string id="1052">VDR Video Dir</string>
|
||||
<string id="1053">PVR plugin</string>
|
||||
|
@ -27,8 +27,10 @@
|
||||
<setting id="LIVE_PORT" type="number" label="1040" values="" enable="!eq(-2,false)" default="8008"/>
|
||||
<setting id="ENABLE_CONTROL" type="bool" label="1042" default="false" />
|
||||
<setting id="CONTROL_PORT" type="number" label="1043" values="" enable="!eq(-1,false)" default="2002"/>
|
||||
<setting id="ENABLE_EEPG" type="bool" label="1046" default="false" />
|
||||
<setting id="ENABLE_EPGSEARCH" type="bool" label="1044" default="false" />
|
||||
<setting id="ENABLE_XMLTV2VDR" type="bool" label="1045" default="false" />
|
||||
<setting id="ENABLE_DUMMYDEVICE" type="bool" label="1047" default="false" />
|
||||
<setting type="sep" />
|
||||
<setting id="ENABLE_SOFTCAM" type="bool" label="1036" default="true" />
|
||||
<setting id="SOFTCAM_PLUGIN" type="labelenum" label="1037" values="sc|dvbapi" enable="!eq(-1,false)" default="sc" />
|
||||
|
@ -13,8 +13,10 @@
|
||||
<setting id="LIVE_PORT" value="8008" />
|
||||
<setting id="ENABLE_CONTROL" value="false" />
|
||||
<setting id="CONTROL_PORT" value="2002" />
|
||||
<setting id="ENABLE_EEPG" value="false" />
|
||||
<setting id="ENABLE_EPGSEARCH" value="false" />
|
||||
<setting id="ENABLE_XMLTV2VDR" value="false" />
|
||||
<setting id="ENABLE_DUMMYDEVICE" value="false" />
|
||||
<setting id="SOFTCAM_PLUGIN" value="sc" />
|
||||
<setting id="ENABLE_EXTERNAL_RECCMD" value="false" />
|
||||
<setting id="EXTERNAL_RECCMD_PATH" value="" />
|
||||
|
@ -46,11 +46,12 @@ post_makeinstall_target() {
|
||||
rm -rf $INSTALL/lib $INSTALL/var
|
||||
rm -rf $INSTALL/usr/share/alsa/speaker-test
|
||||
rm -rf $INSTALL/usr/share/sounds
|
||||
rm -rf $INSTALL/usr/lib/systemd/system
|
||||
|
||||
for i in aconnect alsaucm amidi aplaymidi arecord arecordmidi aseqdump aseqnet iecset; do
|
||||
rm -rf $INSTALL/usr/bin/$i
|
||||
done
|
||||
|
||||
mkdir -p $INSTALL/lib/udev
|
||||
cp $PKG_DIR/scripts/soundconfig $INSTALL/lib/udev
|
||||
mkdir -p $INSTALL/usr/lib/udev
|
||||
cp $PKG_DIR/scripts/soundconfig $INSTALL/usr/lib/udev
|
||||
}
|
||||
|
53
packages/audio/espeak/package.mk
Normal file
53
packages/audio/espeak/package.mk
Normal file
@ -0,0 +1,53 @@
|
||||
################################################################################
|
||||
# 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 <http://www.gnu.org/licenses/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="espeak"
|
||||
PKG_VERSION="1.48.04-source"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://espeak.sourceforge.net/"
|
||||
PKG_URL="http://downloads.sourceforge.net/$PKG_NAME/$PKG_NAME-$PKG_VERSION.zip"
|
||||
PKG_SOURCE_DIR="$PKG_NAME/$PKG_NAME-$PKG_VERSION"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="audio"
|
||||
PKG_SHORTDESC="Text to Speech engine for English, with support for other languages"
|
||||
PKG_LONGDESC="Text to Speech engine for English, with support for other languages"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_make_target() {
|
||||
cp src/portaudio19.h src/portaudio.h
|
||||
}
|
||||
|
||||
make_target() {
|
||||
make -C src \
|
||||
CXXFLAGS="$CXXFLAGS" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
AUDIO=""
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
make -C src \
|
||||
CXXFLAGS="$CXXFLAGS" \
|
||||
LDFLAGS="$LDFLAGS" \
|
||||
AUDIO="" \
|
||||
DESTDIR=$INSTALL install
|
||||
}
|
23
packages/audio/espeak/patches/espeak-1.47-ftbs-ld-libm.patch
Normal file
23
packages/audio/espeak/patches/espeak-1.47-ftbs-ld-libm.patch
Normal file
@ -0,0 +1,23 @@
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index f04b4c4..b8d4b19 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -83,15 +83,15 @@ libespeak_SOURCES = speak_lib.cpp compiledict.cpp dictionary.cpp intonation.cpp
|
||||
|
||||
SRCS1=$(speak_SOURCES)
|
||||
OBJS1=$(patsubst %.cpp,%.o,$(SRCS1))
|
||||
-LIBS1=-lstdc++ $(LIB_AUDIO) -lpthread $(EXTRA_LIBS)
|
||||
+LIBS1=-lstdc++ -lm $(LIB_AUDIO) -lpthread $(EXTRA_LIBS)
|
||||
|
||||
SRCS2=$(libespeak_SOURCES)
|
||||
OBJS2=$(patsubst %.cpp,x_%.o,$(SRCS2))
|
||||
-LIBS2=-lstdc++ $(LIB_AUDIO) -lpthread
|
||||
+LIBS2=-lstdc++ -lm $(LIB_AUDIO) -lpthread
|
||||
|
||||
SRCS3 = espeak.cpp
|
||||
OBJS3=$(patsubst %.cpp,%.o,$(SRCS3))
|
||||
-LIBS3=-lstdc++ -L . -lespeak
|
||||
+LIBS3=-lstdc++ -lm -L . -lespeak
|
||||
|
||||
CXXFLAGS=-O2
|
||||
|
23
packages/audio/espeak/patches/espeak-1.47-wav-close.patch
Normal file
23
packages/audio/espeak/patches/espeak-1.47-wav-close.patch
Normal file
@ -0,0 +1,23 @@
|
||||
diff --git a/src/espeak.cpp b/src/espeak.cpp
|
||||
index 00f93c1..4ad42e8 100644
|
||||
--- a/src/espeak.cpp
|
||||
+++ b/src/espeak.cpp
|
||||
@@ -281,10 +281,7 @@ static int SynthCallback(short *wav, int numsamples, espeak_EVENT *events)
|
||||
if(quiet) return(0); // -q quiet mode
|
||||
|
||||
if(wav == NULL)
|
||||
- {
|
||||
- CloseWavFile();
|
||||
return(0);
|
||||
- }
|
||||
|
||||
while(events->type != 0)
|
||||
{
|
||||
@@ -805,5 +802,7 @@ int main (int argc, char **argv)
|
||||
|
||||
if(f_phonemes_out != stdout)
|
||||
fclose(f_phonemes_out); // needed for WinCE
|
||||
+ CloseWavFile();
|
||||
+ espeak_Terminate();
|
||||
return(0);
|
||||
}
|
@ -33,4 +33,4 @@ PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="yes"
|
||||
|
||||
# package specific configure options
|
||||
PKG_CONFIGURE_OPTS_TARGET="--with-ogg=$SYSROOT_PREFIX/usr"
|
||||
PKG_CONFIGURE_OPTS_TARGET="--with-ogg=$SYSROOT_PREFIX/usr --disable-oggtest --disable-docs --disable-examples"
|
||||
|
@ -19,12 +19,12 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="pulseaudio"
|
||||
PKG_VERSION="4.99.2"
|
||||
PKG_VERSION="5.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://pulseaudio.org/"
|
||||
PKG_URL="http://cgit.freedesktop.org/pulseaudio/pulseaudio/snapshot/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
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 libsamplerate speex dbus systemd openssl libcap"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="audio"
|
||||
@ -41,8 +41,6 @@ else
|
||||
PULSEAUDIO_BLUETOOTH="--disable-bluez5"
|
||||
fi
|
||||
|
||||
export GIT_DESCRIBE_FOR_BUILD="4.0"
|
||||
|
||||
# package specific configure options
|
||||
PKG_CONFIGURE_OPTS_TARGET="--disable-silent-rules \
|
||||
--disable-nls \
|
||||
|
@ -32,6 +32,8 @@ PKG_LONGDESC="XZ Utils is free general-purpose data compression software with hi
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
# never build shared or k0p happens when building
|
||||
# on fedora due to host selinux/liblzma
|
||||
PKG_CONFIGURE_OPTS_HOST="--disable-shared --enable-static \
|
||||
--disable-lzmadec \
|
||||
--disable-lzmainfo \
|
||||
@ -39,4 +41,3 @@ PKG_CONFIGURE_OPTS_HOST="--disable-shared --enable-static \
|
||||
--disable-scripts \
|
||||
--disable-nls"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--disable-shared --enable-static"
|
||||
|
@ -17,12 +17,12 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="sqlite"
|
||||
PKG_VERSION="autoconf-3080002"
|
||||
PKG_VERSION="autoconf-3080401"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="PublicDomain"
|
||||
PKG_SITE="http://www.sqlite.org/"
|
||||
PKG_URL="http://sqlite.org/2013/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_URL="http://sqlite.org/2014/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="database"
|
||||
@ -61,7 +61,7 @@ PKG_AUTORECONF="yes"
|
||||
# SQLITE_MAX_MMAP_SIZE can be modified at start-time using the
|
||||
# sqlite3_config(SQLITE_CONFIG_MMAP_SIZE) call, or at run-time using the
|
||||
# mmap_size pragma.
|
||||
CFLAGS="$CFLAGS -DSQLITE_DEFAULT_MMAP_SIZE=268435456"
|
||||
CFLAGS="$CFLAGS -DSQLITE_TEMP_STORE=3 -DSQLITE_DEFAULT_MMAP_SIZE=268435456"
|
||||
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--enable-static \
|
||||
|
@ -0,0 +1,22 @@
|
||||
diff --git a/sqlite3.c b/sqlite3.c
|
||||
index d0057a6..63b80c7 100644
|
||||
--- a/sqlite3.c
|
||||
+++ b/sqlite3.c
|
||||
@@ -28278,7 +28278,7 @@ static void unixRemapfile(
|
||||
pNew = osMremap(pOrig, nReuse, nNew, MREMAP_MAYMOVE);
|
||||
zErr = "mremap";
|
||||
#else
|
||||
- pNew = osMmap(pReq, nNew-nReuse, flags, MAP_SHARED, h, nReuse);
|
||||
+ pNew = osMmap(pReq, nNew-nReuse, flags, MAP_SHARED | MAP_POPULATE, h, nReuse);
|
||||
if( pNew!=MAP_FAILED ){
|
||||
if( pNew!=pReq ){
|
||||
osMunmap(pNew, nNew - nReuse);
|
||||
@@ -28297,7 +28297,7 @@ static void unixRemapfile(
|
||||
|
||||
/* If pNew is still NULL, try to create an entirely new mapping. */
|
||||
if( pNew==0 ){
|
||||
- pNew = osMmap(0, nNew, flags, MAP_SHARED, h, 0);
|
||||
+ pNew = osMmap(0, nNew, flags, MAP_SHARED | MAP_POPULATE, h, 0);
|
||||
}
|
||||
|
||||
if( pNew==MAP_FAILED ){
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="gdb"
|
||||
PKG_VERSION="7.6"
|
||||
PKG_VERSION="7.7"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
@ -49,6 +49,10 @@ PKG_CONFIGURE_OPTS_TARGET="bash_cv_have_mbstate_t=set \
|
||||
--disable-tui \
|
||||
--disable-libada \
|
||||
--without-lzma \
|
||||
--disable-libquadmath \
|
||||
--disable-libquadmath-support \
|
||||
--enable-libada \
|
||||
--enable-libssp \
|
||||
--disable-werror"
|
||||
|
||||
post_makeinstall_target() {
|
||||
|
@ -33,7 +33,7 @@ PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
configure_host() {
|
||||
../configure --no-qt-gui
|
||||
../configure --no-qt-gui -- -DBUILD_CursesDialog=0
|
||||
}
|
||||
|
||||
makeinstall_host() {
|
||||
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="eglibc"
|
||||
PKG_VERSION="2.18-23911"
|
||||
PKG_VERSION="2.19-25249"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
|
@ -1,25 +0,0 @@
|
||||
From: Carlos O'Donell <carlos@redhat.com>
|
||||
Date: Thu, 29 Aug 2013 04:17:33 +0000 (-0400)
|
||||
Subject: ARM: Pass dl_hwcap to IFUNC resolver.
|
||||
X-Git-Url: https://sourceware.org/git/?p=glibc.git;a=commitdiff_plain;h=d0721e703d222c01a9e8c329311c4fb01dac6972;hp=3a3092398356c90788479fa75524a491e9d860cd
|
||||
|
||||
ARM: Pass dl_hwcap to IFUNC resolver.
|
||||
|
||||
For REL relocs pass dl_hwcap to the IFUNC resolver
|
||||
as is required by the IFUNC API (bug 15905).
|
||||
---
|
||||
|
||||
diff --git a/ports/sysdeps/arm/dl-machine.h b/ports/sysdeps/arm/dl-machine.h
|
||||
index d251527..85dba67 100644
|
||||
--- a/ports/sysdeps/arm/dl-machine.h
|
||||
+++ b/ports/sysdeps/arm/dl-machine.h
|
||||
@@ -503,7 +503,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
|
||||
break;
|
||||
case R_ARM_IRELATIVE:
|
||||
value = map->l_addr + *reloc_addr;
|
||||
- value = ((Elf32_Addr (*) (void)) value) ();
|
||||
+ value = ((Elf32_Addr (*) (int)) value) (GLRO(dl_hwcap));
|
||||
*reloc_addr = value;
|
||||
break;
|
||||
#endif
|
||||
|
@ -1,281 +0,0 @@
|
||||
diff --git a/manual/conf.texi b/manual/conf.texi
|
||||
index 7eb8b36..c720063 100644
|
||||
--- a/manual/conf.texi
|
||||
+++ b/manual/conf.texi
|
||||
@@ -1149,6 +1149,9 @@ typed ahead as input. @xref{I/O Queues}.
|
||||
@deftypevr Macro int NAME_MAX
|
||||
The uniform system limit (if any) for the length of a file name component, not
|
||||
including the terminating null character.
|
||||
+
|
||||
+@strong{Portability Note:} On some systems, @theglibc{} defines
|
||||
+@code{NAME_MAX}, but does not actually enforce this limit.
|
||||
@end deftypevr
|
||||
|
||||
@comment limits.h
|
||||
@@ -1157,6 +1160,9 @@ including the terminating null character.
|
||||
The uniform system limit (if any) for the length of an entire file name (that
|
||||
is, the argument given to system calls such as @code{open}), including the
|
||||
terminating null character.
|
||||
+
|
||||
+@strong{Portability Note:} @Theglibc{} does not enforce this limit
|
||||
+even if @code{PATH_MAX} is defined.
|
||||
@end deftypevr
|
||||
|
||||
@cindex limits, pipe buffer size
|
||||
@@ -1476,6 +1482,9 @@ Inquire about the value of @code{POSIX_REC_MIN_XFER_SIZE}.
|
||||
Inquire about the value of @code{POSIX_REC_XFER_ALIGN}.
|
||||
@end table
|
||||
|
||||
+@strong{Portability Note:} On some systems, @theglibc{} does not
|
||||
+enforce @code{_PC_NAME_MAX} or @code{_PC_PATH_MAX} limits.
|
||||
+
|
||||
@node Utility Limits
|
||||
@section Utility Program Capacity Limits
|
||||
|
||||
diff --git a/manual/filesys.texi b/manual/filesys.texi
|
||||
index 1df9cf2..814c210 100644
|
||||
--- a/manual/filesys.texi
|
||||
+++ b/manual/filesys.texi
|
||||
@@ -444,9 +444,9 @@ symbols are declared in the header file @file{dirent.h}.
|
||||
@comment POSIX.1
|
||||
@deftypefun {struct dirent *} readdir (DIR *@var{dirstream})
|
||||
This function reads the next entry from the directory. It normally
|
||||
-returns a pointer to a structure containing information about the file.
|
||||
-This structure is statically allocated and can be rewritten by a
|
||||
-subsequent call.
|
||||
+returns a pointer to a structure containing information about the
|
||||
+file. This structure is associated with the @var{dirstream} handle
|
||||
+and can be rewritten by a subsequent call.
|
||||
|
||||
@strong{Portability Note:} On some systems @code{readdir} may not
|
||||
return entries for @file{.} and @file{..}, even though these are always
|
||||
@@ -461,19 +461,61 @@ conditions are defined for this function:
|
||||
The @var{dirstream} argument is not valid.
|
||||
@end table
|
||||
|
||||
-@code{readdir} is not thread safe. Multiple threads using
|
||||
-@code{readdir} on the same @var{dirstream} may overwrite the return
|
||||
-value. Use @code{readdir_r} when this is critical.
|
||||
+To distinguish between an end-of-directory condition or an error, you
|
||||
+must set @code{errno} to zero before calling @code{readdir}. To avoid
|
||||
+entering an infinite loop, you should stop reading from the directory
|
||||
+after the first error.
|
||||
+
|
||||
+In POSIX.1-2008, @code{readdir} is not thread-safe. In @theglibc{}
|
||||
+implementation, it is safe to call @code{readdir} concurrently on
|
||||
+different @var{dirstream}s, but multiple threads accessing the same
|
||||
+@var{dirstream} result in undefined behavior. @code{readdir_r} is a
|
||||
+fully thread-safe alternative, but suffers from poor portability (see
|
||||
+below). It is recommended that you use @code{readdir}, with external
|
||||
+locking if multiple threads access the same @var{dirstream}.
|
||||
@end deftypefun
|
||||
|
||||
@comment dirent.h
|
||||
@comment GNU
|
||||
@deftypefun int readdir_r (DIR *@var{dirstream}, struct dirent *@var{entry}, struct dirent **@var{result})
|
||||
-This function is the reentrant version of @code{readdir}. Like
|
||||
-@code{readdir} it returns the next entry from the directory. But to
|
||||
-prevent conflicts between simultaneously running threads the result is
|
||||
-not stored in statically allocated memory. Instead the argument
|
||||
-@var{entry} points to a place to store the result.
|
||||
+This function is a version of @code{readdir} which performs internal
|
||||
+locking. Like @code{readdir} it returns the next entry from the
|
||||
+directory. To prevent conflicts between simultaneously running
|
||||
+threads the result is stored inside the @var{entry} object.
|
||||
+
|
||||
+@strong{Portability Note:} It is recommended to use @code{readdir}
|
||||
+instead of @code{readdir_r} for the following reasons:
|
||||
+
|
||||
+@itemize @bullet
|
||||
+@item
|
||||
+On systems which do not define @code{NAME_MAX}, it may not be possible
|
||||
+to use @code{readdir_r} safely because the caller does not specify the
|
||||
+length of the buffer for the directory entry.
|
||||
+
|
||||
+@item
|
||||
+On some systems, @code{readdir_r} cannot read directory entries with
|
||||
+very long names. If such a name is encountered, @theglibc{}
|
||||
+implementation of @code{readdir_r} returns with an error code of
|
||||
+@code{ENAMETOOLONG} after the final directory entry has been read. On
|
||||
+other systems, @code{readdir_r} may return successfully, but the
|
||||
+@code{d_name} member may not be NUL-terminated or may be truncated.
|
||||
+
|
||||
+@item
|
||||
+POSIX-1.2008 does not guarantee that @code{readdir} is thread-safe,
|
||||
+even when access to the same @var{dirstream} is serialized. But in
|
||||
+current implementations (including @theglibc{}), it is safe to call
|
||||
+@code{readdir} concurrently on different @var{dirstream}s, so there is
|
||||
+no need to use @code{readdir_r} in most multi-threaded programs. In
|
||||
+the rare case that multiple threads need to read from the same
|
||||
+@var{dirstream}, it is still better to use @code{readdir} and external
|
||||
+synchronization.
|
||||
+
|
||||
+@item
|
||||
+It is expected that future versions of POSIX will obsolete
|
||||
+@code{readdir_r} and mandate the level of thread safety for
|
||||
+@code{readdir} which is provided by @theglibc{} and other
|
||||
+implementations today.
|
||||
+@end itemize
|
||||
|
||||
Normally @code{readdir_r} returns zero and sets @code{*@var{result}}
|
||||
to @var{entry}. If there are no more entries in the directory or an
|
||||
@@ -481,15 +523,6 @@ error is detected, @code{readdir_r} sets @code{*@var{result}} to a
|
||||
null pointer and returns a nonzero error code, also stored in
|
||||
@code{errno}, as described for @code{readdir}.
|
||||
|
||||
-@strong{Portability Note:} On some systems @code{readdir_r} may not
|
||||
-return a NUL terminated string for the file name, even when there is no
|
||||
-@code{d_reclen} field in @code{struct dirent} and the file
|
||||
-name is the maximum allowed size. Modern systems all have the
|
||||
-@code{d_reclen} field, and on old systems multi-threading is not
|
||||
-critical. In any case there is no such problem with the @code{readdir}
|
||||
-function, so that even on systems without the @code{d_reclen} member one
|
||||
-could use multiple threads by using external locking.
|
||||
-
|
||||
It is also important to look at the definition of the @code{struct
|
||||
dirent} type. Simply passing a pointer to an object of this type for
|
||||
the second parameter of @code{readdir_r} might not be enough. Some
|
||||
diff --git a/sysdeps/posix/dirstream.h b/sysdeps/posix/dirstream.h
|
||||
index a7a074d..8e8570d 100644
|
||||
--- a/sysdeps/posix/dirstream.h
|
||||
+++ b/sysdeps/posix/dirstream.h
|
||||
@@ -39,6 +39,8 @@ struct __dirstream
|
||||
|
||||
off_t filepos; /* Position of next entry to read. */
|
||||
|
||||
+ int errcode; /* Delayed error code. */
|
||||
+
|
||||
/* Directory block. */
|
||||
char data[0] __attribute__ ((aligned (__alignof__ (void*))));
|
||||
};
|
||||
diff --git a/sysdeps/posix/opendir.c b/sysdeps/posix/opendir.c
|
||||
index ddfc3a7..fc05b0f 100644
|
||||
--- a/sysdeps/posix/opendir.c
|
||||
+++ b/sysdeps/posix/opendir.c
|
||||
@@ -231,6 +231,7 @@ __alloc_dir (int fd, bool close_fd, int flags, const struct stat64 *statp)
|
||||
dirp->size = 0;
|
||||
dirp->offset = 0;
|
||||
dirp->filepos = 0;
|
||||
+ dirp->errcode = 0;
|
||||
|
||||
return dirp;
|
||||
}
|
||||
diff --git a/sysdeps/posix/readdir_r.c b/sysdeps/posix/readdir_r.c
|
||||
index b5a8e2e..8ed5c3f 100644
|
||||
--- a/sysdeps/posix/readdir_r.c
|
||||
+++ b/sysdeps/posix/readdir_r.c
|
||||
@@ -40,6 +40,7 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result)
|
||||
DIRENT_TYPE *dp;
|
||||
size_t reclen;
|
||||
const int saved_errno = errno;
|
||||
+ int ret;
|
||||
|
||||
__libc_lock_lock (dirp->lock);
|
||||
|
||||
@@ -70,10 +71,10 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result)
|
||||
bytes = 0;
|
||||
__set_errno (saved_errno);
|
||||
}
|
||||
+ if (bytes < 0)
|
||||
+ dirp->errcode = errno;
|
||||
|
||||
dp = NULL;
|
||||
- /* Reclen != 0 signals that an error occurred. */
|
||||
- reclen = bytes != 0;
|
||||
break;
|
||||
}
|
||||
dirp->size = (size_t) bytes;
|
||||
@@ -106,29 +107,46 @@ __READDIR_R (DIR *dirp, DIRENT_TYPE *entry, DIRENT_TYPE **result)
|
||||
dirp->filepos += reclen;
|
||||
#endif
|
||||
|
||||
- /* Skip deleted files. */
|
||||
+#ifdef NAME_MAX
|
||||
+ if (reclen > offsetof (DIRENT_TYPE, d_name) + NAME_MAX + 1)
|
||||
+ {
|
||||
+ /* The record is very long. It could still fit into the
|
||||
+ caller-supplied buffer if we can skip padding at the
|
||||
+ end. */
|
||||
+ size_t namelen = _D_EXACT_NAMLEN (dp);
|
||||
+ if (namelen <= NAME_MAX)
|
||||
+ reclen = offsetof (DIRENT_TYPE, d_name) + namelen + 1;
|
||||
+ else
|
||||
+ {
|
||||
+ /* The name is too long. Ignore this file. */
|
||||
+ dirp->errcode = ENAMETOOLONG;
|
||||
+ dp->d_ino = 0;
|
||||
+ continue;
|
||||
+ }
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
+ /* Skip deleted and ignored files. */
|
||||
}
|
||||
while (dp->d_ino == 0);
|
||||
|
||||
if (dp != NULL)
|
||||
{
|
||||
-#ifdef GETDENTS_64BIT_ALIGNED
|
||||
- /* The d_reclen value might include padding which is not part of
|
||||
- the DIRENT_TYPE data structure. */
|
||||
- reclen = MIN (reclen,
|
||||
- offsetof (DIRENT_TYPE, d_name) + sizeof (dp->d_name));
|
||||
-#endif
|
||||
*result = memcpy (entry, dp, reclen);
|
||||
-#ifdef GETDENTS_64BIT_ALIGNED
|
||||
+#ifdef _DIRENT_HAVE_D_RECLEN
|
||||
entry->d_reclen = reclen;
|
||||
#endif
|
||||
+ ret = 0;
|
||||
}
|
||||
else
|
||||
- *result = NULL;
|
||||
+ {
|
||||
+ *result = NULL;
|
||||
+ ret = dirp->errcode;
|
||||
+ }
|
||||
|
||||
__libc_lock_unlock (dirp->lock);
|
||||
|
||||
- return dp != NULL ? 0 : reclen ? errno : 0;
|
||||
+ return ret;
|
||||
}
|
||||
|
||||
#ifdef __READDIR_R_ALIAS
|
||||
diff --git a/sysdeps/posix/rewinddir.c b/sysdeps/posix/rewinddir.c
|
||||
index 2935a8e..d4991ad 100644
|
||||
--- a/sysdeps/posix/rewinddir.c
|
||||
+++ b/sysdeps/posix/rewinddir.c
|
||||
@@ -33,6 +33,7 @@ rewinddir (dirp)
|
||||
dirp->filepos = 0;
|
||||
dirp->offset = 0;
|
||||
dirp->size = 0;
|
||||
+ dirp->errcode = 0;
|
||||
#ifndef NOT_IN_libc
|
||||
__libc_lock_unlock (dirp->lock);
|
||||
#endif
|
||||
diff --git a/sysdeps/unix/sysv/linux/i386/readdir64_r.c b/sysdeps/unix/sysv/linux/i386/readdir64_r.c
|
||||
index 8ebbcfd..a7d114e 100644
|
||||
--- a/sysdeps/unix/sysv/linux/i386/readdir64_r.c
|
||||
+++ b/sysdeps/unix/sysv/linux/i386/readdir64_r.c
|
||||
@@ -18,7 +18,6 @@
|
||||
#define __READDIR_R __readdir64_r
|
||||
#define __GETDENTS __getdents64
|
||||
#define DIRENT_TYPE struct dirent64
|
||||
-#define GETDENTS_64BIT_ALIGNED 1
|
||||
|
||||
#include <sysdeps/posix/readdir_r.c>
|
||||
|
||||
diff --git a/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c b/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c
|
||||
index 5ed8e95..290f2c8 100644
|
||||
--- a/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c
|
||||
+++ b/sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c
|
||||
@@ -1,5 +1,4 @@
|
||||
#define readdir64_r __no_readdir64_r_decl
|
||||
-#define GETDENTS_64BIT_ALIGNED 1
|
||||
#include <sysdeps/posix/readdir_r.c>
|
||||
#undef readdir64_r
|
||||
weak_alias (__readdir_r, readdir64_r)
|
||||
--
|
||||
1.8.3.4
|
||||
|
@ -1,14 +0,0 @@
|
||||
diff --git a/sysdeps/x86_64/multiarch/strstr.c b/sysdeps/x86_64/multiarch/strstr.c
|
||||
index cd63b68..03d8b9a 100644
|
||||
--- a/sysdeps/x86_64/multiarch/strstr.c
|
||||
+++ b/sysdeps/x86_64/multiarch/strstr.c
|
||||
@@ -86,7 +86,7 @@
|
||||
/* Simple replacement of movdqu to address 4KB boundary cross issue.
|
||||
If EOS occurs within less than 16B before 4KB boundary, we don't
|
||||
cross to next page. */
|
||||
-static __m128i
|
||||
+static inline __m128i
|
||||
__m128i_strloadu (const unsigned char * p, __m128i zero)
|
||||
{
|
||||
if (__builtin_expect ((int) ((size_t) p & 0xfff) > 0xff0, 0))
|
||||
|
@ -32,7 +32,8 @@ PKG_LONGDESC="This is the GNU gettext package. It is interesting for authors or
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
PKG_CONFIGURE_OPTS_HOST="--disable-rpath \
|
||||
PKG_CONFIGURE_OPTS_HOST="--enable-static --disable-shared \
|
||||
--disable-rpath \
|
||||
--with-gnu-ld \
|
||||
--disable-java \
|
||||
--disable-native-java \
|
||||
|
@ -37,6 +37,8 @@ PKG_CONFIGURE_OPTS_HOST="--with-gnu-ld \
|
||||
--with-libiconv=no \
|
||||
--enable-debug=no \
|
||||
--disable-man \
|
||||
--disable-dtrace \
|
||||
--disable-systemtap \
|
||||
--disable-rebuilds \
|
||||
--disable-gtk-doc"
|
||||
|
||||
|
@ -33,3 +33,7 @@ PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
export CC=$LOCAL_CC
|
||||
|
||||
post_makeinstall_host() {
|
||||
ln -sf make $ROOT/$TOOLCHAIN/bin/gmake
|
||||
}
|
||||
|
@ -17,13 +17,13 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="Mesa"
|
||||
PKG_VERSION="10.0.2"
|
||||
PKG_VERSION="10.1.0"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="OSS"
|
||||
PKG_SITE="http://www.mesa3d.org/"
|
||||
PKG_URL="ftp://freedesktop.org/pub/mesa/$PKG_VERSION/MesaLib-$PKG_VERSION.tar.bz2"
|
||||
PKG_DEPENDS_TARGET="toolchain Python:host makedepend:host libxml2:host expat glproto dri2proto libdrm libXext libXdamage libXfixes libXxf86vm libxcb libX11 systemd"
|
||||
PKG_URL="ftp://freedesktop.org/pub/mesa/10.1/MesaLib-$PKG_VERSION.tar.bz2"
|
||||
PKG_DEPENDS_TARGET="toolchain Python:host makedepend:host libxml2:host expat glproto dri2proto libdrm libXext libXdamage libXfixes libXxf86vm libxcb libX11 systemd dri3proto libxshmfence"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="graphics"
|
||||
PKG_SHORTDESC="mesa: 3-D graphics library with OpenGL API"
|
||||
@ -77,6 +77,7 @@ PKG_CONFIGURE_OPTS_TARGET="CC_FOR_BUILD=$HOST_CC \
|
||||
--disable-gles2 \
|
||||
--disable-openvg \
|
||||
--enable-dri \
|
||||
--enable-dri3 \
|
||||
--enable-glx \
|
||||
--disable-osmesa \
|
||||
--enable-egl --with-egl-platforms=x11,drm \
|
||||
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="bcm2835-driver"
|
||||
PKG_VERSION="f46e6d9"
|
||||
PKG_VERSION="11886b8"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="nonfree"
|
||||
|
@ -48,7 +48,7 @@ configure_target() {
|
||||
DRM_CONFIG=`echo $DRM_CONFIG | sed -e 's/disable-libkms/enable-libkms/'` && \
|
||||
DRM_CONFIG=`echo $DRM_CONFIG | sed -e 's/disable-intel/enable-intel/'`
|
||||
|
||||
[ "$drv" = "r200" -o "$drv" = "r300" -o "$drv" = "r600" -o "$drv" = "radeon" ] && \
|
||||
[ "$drv" = "r200" -o "$drv" = "r300" -o "$drv" = "r600" -o "$drv" = "radeonsi" ] && \
|
||||
DRM_CONFIG=`echo $DRM_CONFIG | sed -e 's/disable-libkms/enable-libkms/'` && \
|
||||
DRM_CONFIG=`echo $DRM_CONFIG | sed -e 's/disable-radeon/enable-radeon/'`
|
||||
|
||||
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="libpng"
|
||||
PKG_VERSION="1.6.8"
|
||||
PKG_VERSION="1.6.10"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="OSS"
|
||||
|
@ -158,4 +158,11 @@ post_makeinstall_target() {
|
||||
echo "the issue in most cases"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# k0p
|
||||
rm -rf $INSTALL/usr/bin/2to3
|
||||
rm -rf $INSTALL/usr/bin/idle
|
||||
rm -rf $INSTALL/usr/bin/pydoc
|
||||
rm -rf $INSTALL/usr/bin/smtpd.py
|
||||
rm -rf $INSTALL/usr/bin/python*-config
|
||||
}
|
||||
|
@ -20,6 +20,7 @@
|
||||
|
||||
PKG_NAME="media_build"
|
||||
PKG_VERSION="1c8936d"
|
||||
MEDIA_BUILD_VERSION="2014-02-08"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
@ -44,7 +45,7 @@ make_target() {
|
||||
wget http://www.linuxtv.org/downloads/firmware/dvb-firmwares.tar.bz2 -O dvb-firmwares.tar.bz2.tmp
|
||||
cd v4l/firmware/; tar xvfj ../../dvb-firmwares.tar.bz2.tmp
|
||||
cd ../..
|
||||
$SED -i -e "/^LATEST_TAR/s/-LATEST/-2014-01-16/g" linux/Makefile
|
||||
$SED -i -e "/^LATEST_TAR/s/-LATEST/-$MEDIA_BUILD_VERSION/g" linux/Makefile
|
||||
|
||||
make VER=$KERNEL_VER SRCDIR=$(kernel_path) -C linux/ download
|
||||
make VER=$KERNEL_VER SRCDIR=$(kernel_path) -C linux/ untar
|
||||
|
12
packages/linux-drivers/tbs-linux-drivers/README.unsupported
Normal file
12
packages/linux-drivers/tbs-linux-drivers/README.unsupported
Normal file
@ -0,0 +1,12 @@
|
||||
This driver contains a binary blob, is utterly broken,
|
||||
breaks too much hardware that works without it,
|
||||
and is there only to make self-builders happy.
|
||||
|
||||
You are free to use it but there will be no support at all.
|
||||
Please dont ask us to include it in release builds by default.
|
||||
|
||||
To be absolutely clear there will be
|
||||
|
||||
=== NO SUPPORT ===
|
||||
|
||||
on this driver.
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="vboxguest"
|
||||
PKG_VERSION="4.3.4"
|
||||
PKG_VERSION="4.3.8"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="dvb-firmware"
|
||||
PKG_VERSION="0.0.36"
|
||||
PKG_VERSION="0.0.38"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="Free-to-use"
|
||||
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="misc-firmware"
|
||||
PKG_VERSION="0.0.6"
|
||||
PKG_VERSION="0.0.9"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="Free-to-use"
|
||||
|
@ -17,7 +17,7 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="wlan-firmware"
|
||||
PKG_VERSION="0.0.14"
|
||||
PKG_VERSION="0.0.17"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="Free-to-use"
|
||||
|
@ -23,7 +23,7 @@ case "$LINUX" in
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
;;
|
||||
*)
|
||||
PKG_VERSION="3.13.1"
|
||||
PKG_VERSION="3.13.6"
|
||||
PKG_URL="http://www.kernel.org/pub/linux/kernel/v3.x/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
;;
|
||||
esac
|
||||
@ -32,7 +32,7 @@ PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.kernel.org"
|
||||
PKG_DEPENDS_HOST="ccache:host"
|
||||
PKG_DEPENDS_TARGET="toolchain cpio:host kmod:host pciutils xz wireless-regdb"
|
||||
PKG_DEPENDS_TARGET="toolchain cpio:host kmod:host pciutils xz:host wireless-regdb"
|
||||
PKG_DEPENDS_INIT="toolchain"
|
||||
PKG_NEED_UNPACK="$LINUX_DEPENDS"
|
||||
PKG_PRIORITY="optional"
|
||||
@ -50,7 +50,7 @@ fi
|
||||
PKG_MAKE_OPTS_HOST="ARCH=$TARGET_ARCH headers_check"
|
||||
|
||||
if [ "$BOOTLOADER" = "u-boot" ]; then
|
||||
KERNEL_IMAGE="uImage"
|
||||
KERNEL_IMAGE="$KERNEL_UBOOT_TARGET"
|
||||
else
|
||||
KERNEL_IMAGE="bzImage"
|
||||
fi
|
||||
@ -133,7 +133,13 @@ make_target() {
|
||||
$SCRIPTS/install initramfs
|
||||
)
|
||||
|
||||
LDFLAGS="" make $KERNEL_IMAGE
|
||||
LDFLAGS="" make $KERNEL_IMAGE $KERNEL_MAKE_EXTRACMD
|
||||
|
||||
if [ "$BOOTLOADER" = "u-boot" -a -n "$KERNEL_UBOOT_EXTRA_TARGET" ]; then
|
||||
for extra_target in "$KERNEL_UBOOT_EXTRA_TARGET"; do
|
||||
LDFLAGS="" make $extra_target
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "$PERF_SUPPORT" = "yes" -a "$DEVTOOLS" = "yes" ]; then
|
||||
( cd tools/perf
|
||||
@ -164,6 +170,13 @@ make_target() {
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
if [ "$BOOTLOADER" = "u-boot" ]; then
|
||||
mkdir -p $INSTALL/usr/share/u-boot
|
||||
for dtb in arch/arm/boot/dts/*.dtb; do
|
||||
cp $dtb $INSTALL/usr/share/u-boot
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "$PERF_SUPPORT" = "yes" -a "$DEVTOOLS" = "yes" ]; then
|
||||
mkdir -p $INSTALL/usr/bin
|
||||
cp -P tools/perf/perf $INSTALL/usr/bin/
|
||||
|
@ -1,32 +0,0 @@
|
||||
From b091ef6be8a4d8f3c04c2ff15f6d20364438e8fc Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
|
||||
Date: Thu, 30 Jan 2014 18:54:24 +0100
|
||||
Subject: [PATCH] drm/radeon: fix UVD IRQ support on SI
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Otherwise decoding isn't really useable.
|
||||
|
||||
Signed-off-by: Christian König <christian.koenig@amd.com>
|
||||
---
|
||||
drivers/gpu/drm/radeon/si.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/radeon/si.c b/drivers/gpu/drm/radeon/si.c
|
||||
index 07ce587..a22df95 100644
|
||||
--- a/drivers/gpu/drm/radeon/si.c
|
||||
+++ b/drivers/gpu/drm/radeon/si.c
|
||||
@@ -6334,6 +6334,10 @@ restart_ih:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
+ case 124: /* UVD */
|
||||
+ DRM_DEBUG("IH: UVD int: 0x%08x\n", src_data);
|
||||
+ radeon_fence_process(rdev, R600_RING_TYPE_UVD_INDEX);
|
||||
+ break;
|
||||
case 146:
|
||||
case 147:
|
||||
addr = RREG32(VM_CONTEXT1_PROTECTION_FAULT_ADDR);
|
||||
--
|
||||
1.8.1.2
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user