mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
xbmc-master: move to package 'xbmc'
Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
parent
6ef1a1748b
commit
f327a73c25
@ -1,23 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<advancedsettings>
|
||||
<showexitbutton>false</showexitbutton>
|
||||
<cputempcommand>cputemp</cputempcommand>
|
||||
<gputempcommand>gputemp</gputempcommand>
|
||||
<video>
|
||||
<latency>
|
||||
<delay>0</delay>
|
||||
<refresh>
|
||||
<min>23</min>
|
||||
<max>24</max>
|
||||
<delay>175</delay>
|
||||
</refresh>
|
||||
</latency>
|
||||
<busydialogdelayms>750</busydialogdelayms>
|
||||
</video>
|
||||
<samba>
|
||||
<clienttimeout>30</clienttimeout>
|
||||
</samba>
|
||||
<network>
|
||||
<readbufferfactor>4.0</readbufferfactor>
|
||||
</network>
|
||||
</advancedsettings>
|
@ -1,49 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<settings>
|
||||
<section id="system">
|
||||
<category id="videoscreen">
|
||||
<group id="1">
|
||||
<setting id="videoscreen.screen">
|
||||
<visible>false</visible>
|
||||
</setting>
|
||||
</group>
|
||||
</category>
|
||||
</section>
|
||||
|
||||
<section id="services">
|
||||
<category id="airplay">
|
||||
<group id="1">
|
||||
<setting id="services.airplay">
|
||||
<default>true</default>
|
||||
</setting>
|
||||
</group>
|
||||
</category>
|
||||
|
||||
<category id="zeroconf">
|
||||
<group id="1">
|
||||
<setting id="services.zeroconf">
|
||||
<default>true</default>
|
||||
</setting>
|
||||
</group>
|
||||
</category>
|
||||
|
||||
<category id="webserver">
|
||||
<group id="1">
|
||||
<setting id="services.webserver">
|
||||
<default>true</default>
|
||||
</setting>
|
||||
</group>
|
||||
</category>
|
||||
</section>
|
||||
|
||||
<section id="pvr">
|
||||
<category id="pvrpowermanagement">
|
||||
<group id="2">
|
||||
<setting id="pvrpowermanagement.setwakeupcmd" type="string" label="19245" help="">
|
||||
<default>/usr/bin/setwakeup.sh</default>
|
||||
</setting>
|
||||
</group>
|
||||
</category>
|
||||
</section>
|
||||
|
||||
</settings>
|
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<addon id="os.openelec.tv" version="@OS_VERSION@" provider-name="OpenELEC.tv">
|
||||
<requires>
|
||||
<import addon="xbmc.addon" version="12.0"/>
|
||||
</requires>
|
||||
</addon>
|
@ -1,17 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="repository.openelec.tv"
|
||||
name="[COLOR FF757677]Open[/COLOR][COLOR FF8ABEE2]ELEC[/COLOR] Mediacenter OS Add-ons"
|
||||
version="4.0.0"
|
||||
provider-name="Team [COLOR FF757677]Open[/COLOR][COLOR FF8ABEE2]ELEC[/COLOR]">
|
||||
<extension point="xbmc.addon.repository"
|
||||
name="Official OpenELEC.tv Add-on Repository">
|
||||
<info>@ADDON_URL@/addons.xml</info>
|
||||
<checksum>@ADDON_URL@/addons.xml.md5</checksum>
|
||||
<datadir zip="true">@ADDON_URL@</datadir>
|
||||
</extension>
|
||||
<extension point="xbmc.addon.metadata">
|
||||
<summary>Install Add-ons, Plugins, Games and Programs from [COLOR FF757677]Open[/COLOR][COLOR FF8ABEE2]ELEC[/COLOR]</summary>
|
||||
<description>Download and install Add-ons, Plugins, Games and Programs from the Official [COLOR FF757677]Open[/COLOR][COLOR FF8ABEE2]ELEC[/COLOR] addon repository.[CR] By using the official Repository you will be able to take advantage of our extensive file mirror service to help get you faster downloads from a region close to you.[CR] All addons on this repository have under gone basic testing, if you find a broken or not working addon please report it to [COLOR FF757677]Open[/COLOR][COLOR FF8ABEE2]ELEC[/COLOR] so we can take any action needed.</description>
|
||||
<platform>all</platform>
|
||||
</extension>
|
||||
</addon>
|
Binary file not shown.
Before Width: | Height: | Size: 45 KiB |
@ -1 +0,0 @@
|
||||
XBMC_DEBUG="--debug"
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,517 +0,0 @@
|
||||
################################################################################
|
||||
# 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="xbmc-master"
|
||||
PKG_VERSION="14-67f025d"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.xbmc.org"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain boost Python zlib bzip2 systemd pciutils lzo pcre swig:host libass enca curl rtmpdump fontconfig fribidi tinyxml libjpeg-turbo libpng tiff freetype jasper libogg libcdio libmodplug libmpeg2 taglib libxml2 libxslt yajl sqlite libvorbis ffmpeg xbmc-master:host"
|
||||
PKG_DEPENDS_HOST="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="mediacenter"
|
||||
PKG_SHORTDESC="xbmc: XBMC Mediacenter"
|
||||
PKG_LONGDESC="XBMC Media Center (which was formerly named Xbox Media Center) is a free and open source cross-platform media player and home entertainment system software with a 10-foot user interface designed for the living-room TV. Its graphical user interface allows the user to easily manage video, photos, podcasts, and music from a computer, optical disk, local network, and the internet using a remote control."
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
# for dbus support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET dbus"
|
||||
|
||||
# needed for hosttools (Texturepacker)
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET lzo:host SDL:host SDL_image:host"
|
||||
|
||||
if [ "$DISPLAYSERVER" = "x11" ]; then
|
||||
# for libX11 support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libX11 libXext"
|
||||
# for libXrandr support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libXrandr"
|
||||
XBMC_XORG="--enable-x11 --enable-xrandr"
|
||||
else
|
||||
XBMC_XORG="--disable-x11 --disable-xrandr"
|
||||
fi
|
||||
|
||||
if [ "$OPENGL" = "Mesa" ]; then
|
||||
# for OpenGL (GLX) support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET Mesa glu glew"
|
||||
XBMC_OPENGL="--enable-gl"
|
||||
else
|
||||
XBMC_OPENGL="--disable-gl"
|
||||
fi
|
||||
|
||||
if [ "$OPENGLES_SUPPORT" = yes ]; then
|
||||
# for OpenGL-ES support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $OPENGLES"
|
||||
XBMC_OPENGLES="--enable-gles"
|
||||
else
|
||||
XBMC_OPENGLES="--disable-gles"
|
||||
fi
|
||||
|
||||
if [ "$SDL_SUPPORT" = yes ]; then
|
||||
# for SDL support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET SDL SDL_image"
|
||||
XBMC_SDL="--enable-sdl"
|
||||
else
|
||||
XBMC_SDL="--disable-sdl"
|
||||
fi
|
||||
|
||||
if [ "$ALSA_SUPPORT" = yes ]; then
|
||||
# for ALSA support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET alsa-lib"
|
||||
XBMC_ALSA="--enable-alsa"
|
||||
else
|
||||
XBMC_ALSA="--disable-alsa"
|
||||
fi
|
||||
|
||||
if [ "$PULSEAUDIO_SUPPORT" = yes ]; then
|
||||
# for PulseAudio support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET pulseaudio"
|
||||
XBMC_PULSEAUDIO="--enable-pulse"
|
||||
else
|
||||
XBMC_PULSEAUDIO="--disable-pulse"
|
||||
fi
|
||||
|
||||
if [ "$ESPEAK_SUPPORT" = yes ]; then
|
||||
# for espeak support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET espeak"
|
||||
fi
|
||||
|
||||
if [ "$CEC_SUPPORT" = yes ]; then
|
||||
# for CEC support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libcec"
|
||||
XBMC_CEC="--enable-libcec"
|
||||
else
|
||||
XBMC_CEC="--disable-libcec"
|
||||
fi
|
||||
|
||||
if [ "$XBMC_SCR_RSXS" = yes ]; then
|
||||
# for RSXS Screensaver support
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libXt libXmu"
|
||||
XBMC_RSXS="--enable-rsxs"
|
||||
# fix build of RSXS Screensaver support if not using libiconv
|
||||
export jm_cv_func_gettimeofday_clobber=no
|
||||
else
|
||||
XBMC_RSXS="--disable-rsxs"
|
||||
fi
|
||||
|
||||
if [ "$XBMC_VIS_PROJECTM" = yes ]; then
|
||||
# for ProjectM Visualisation support
|
||||
XBMC_PROJECTM="--enable-projectm"
|
||||
else
|
||||
XBMC_PROJECTM="--disable-projectm"
|
||||
fi
|
||||
|
||||
if [ "$XBMC_VIS_GOOM" = yes ]; then
|
||||
# for GOOM Visualisation support
|
||||
XBMC_GOOM="--enable-goom"
|
||||
else
|
||||
XBMC_GOOM="--disable-goom"
|
||||
fi
|
||||
|
||||
if [ "$XBMC_VIS_WAVEFORM" = yes ]; then
|
||||
# for Waveform Visualisation support
|
||||
XBMC_WAVEFORM="--enable-waveform"
|
||||
else
|
||||
XBMC_WAVEFORM="--disable-waveform"
|
||||
fi
|
||||
|
||||
if [ "$XBMC_VIS_SPECTRUM" = yes ]; then
|
||||
# for Spectrum Visualisation support
|
||||
XBMC_SPECTRUM="--enable-spectrum"
|
||||
else
|
||||
XBMC_SPECTRUM="--disable-spectrum"
|
||||
fi
|
||||
|
||||
if [ "$XBMC_VIS_FISHBMC" = yes ]; then
|
||||
# for FishBMC Visualisation support
|
||||
XBMC_FISHBMC="--enable-fishbmc"
|
||||
else
|
||||
XBMC_FISHBMC="--disable-fishbmc"
|
||||
fi
|
||||
|
||||
if [ "$JOYSTICK_SUPPORT" = yes ]; then
|
||||
# for Joystick support
|
||||
XBMC_JOYSTICK="--enable-joystick"
|
||||
else
|
||||
XBMC_JOYSTICK="--disable-joystick"
|
||||
fi
|
||||
|
||||
if [ "$OPTICAL_DRIVE_SUPPORT" = yes ]; then
|
||||
XBMC_OPTICAL="--enable-optical-drive"
|
||||
else
|
||||
XBMC_OPTICAL="--disable-optical-drive"
|
||||
fi
|
||||
|
||||
if [ "$NONFREE_SUPPORT" = yes ]; then
|
||||
# for non-free support
|
||||
XBMC_NONFREE="--enable-non-free"
|
||||
else
|
||||
XBMC_NONFREE="--disable-non-free"
|
||||
fi
|
||||
|
||||
if [ "$DVDCSS_SUPPORT" = yes ]; then
|
||||
XBMC_DVDCSS="--enable-dvdcss"
|
||||
else
|
||||
XBMC_DVDCSS="--disable-dvdcss"
|
||||
fi
|
||||
|
||||
if [ "$FAAC_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET faac"
|
||||
fi
|
||||
|
||||
if [ "$BLURAY_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libbluray"
|
||||
XBMC_BLURAY="--enable-libbluray"
|
||||
else
|
||||
XBMC_BLURAY="--disable-libbluray"
|
||||
fi
|
||||
|
||||
if [ "$AVAHI_DAEMON" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET avahi nss-mdns"
|
||||
XBMC_AVAHI="--enable-avahi"
|
||||
else
|
||||
XBMC_AVAHI="--disable-avahi"
|
||||
fi
|
||||
|
||||
if [ "$MYSQL_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET mysql"
|
||||
XBMC_MYSQL="--enable-mysql"
|
||||
else
|
||||
XBMC_MYSQL="--disable-mysql"
|
||||
fi
|
||||
|
||||
if [ "$AIRPLAY_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libplist"
|
||||
XBMC_AIRPLAY="--enable-airplay"
|
||||
else
|
||||
XBMC_AIRPLAY="--disable-airplay"
|
||||
fi
|
||||
|
||||
if [ "$AIRTUNES_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libshairplay"
|
||||
XBMC_AIRTUNES="--enable-airtunes"
|
||||
else
|
||||
XBMC_AIRTUNES="--disable-airtunes"
|
||||
fi
|
||||
|
||||
if [ "$NFS_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libnfs"
|
||||
XBMC_NFS="--enable-nfs"
|
||||
else
|
||||
XBMC_NFS="--disable-nfs"
|
||||
fi
|
||||
|
||||
if [ "$AFP_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET afpfs-ng"
|
||||
XBMC_AFP="--enable-afpclient"
|
||||
else
|
||||
XBMC_AFP="--disable-afpclient"
|
||||
fi
|
||||
|
||||
if [ "$SAMBA_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET samba"
|
||||
XBMC_SAMBA="--enable-samba"
|
||||
else
|
||||
XBMC_SAMBA="--disable-samba"
|
||||
fi
|
||||
|
||||
if [ "$WEBSERVER" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libmicrohttpd"
|
||||
XBMC_WEBSERVER="--enable-webserver"
|
||||
else
|
||||
XBMC_WEBSERVER="--disable-webserver"
|
||||
fi
|
||||
|
||||
if [ "$UPNP_SUPPORT" = yes ]; then
|
||||
XBMC_UPNP="--enable-upnp"
|
||||
else
|
||||
XBMC_UPNP="--disable-upnp"
|
||||
fi
|
||||
|
||||
if [ "$SSHLIB_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libssh"
|
||||
XBMC_SSH="--enable-ssh"
|
||||
else
|
||||
XBMC_SSH="--disable-ssh"
|
||||
fi
|
||||
|
||||
if [ ! "$XBMCPLAYER_DRIVER" = default ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $XBMCPLAYER_DRIVER"
|
||||
|
||||
if [ "$XBMCPLAYER_DRIVER" = bcm2835-driver ]; then
|
||||
XBMC_OPENMAX="--enable-openmax"
|
||||
XBMC_PLAYER="--enable-player=omxplayer"
|
||||
XBMC_CODEC="--with-platform=raspberry-pi"
|
||||
BCM2835_INCLUDES="-I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads/ \
|
||||
-I$SYSROOT_PREFIX/usr/include/interface/vmcs_host/linux"
|
||||
XBMC_CFLAGS="$XBMC_CFLAGS $BCM2835_INCLUDES"
|
||||
XBMC_CXXFLAGS="$XBMC_CXXFLAGS $BCM2835_INCLUDES"
|
||||
elif [ "$XBMCPLAYER_DRIVER" = libfslvpuwrap ]; then
|
||||
XBMC_CODEC="--enable-codec=imxvpu"
|
||||
else
|
||||
XBMC_OPENMAX="--disable-openmax"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$VDPAU" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libvdpau"
|
||||
XBMC_VDPAU="--enable-vdpau"
|
||||
else
|
||||
XBMC_VDPAU="--disable-vdpau"
|
||||
fi
|
||||
|
||||
if [ "$VAAPI" = yes ]; then
|
||||
# configure GPU drivers and dependencies:
|
||||
get_graphicdrivers
|
||||
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $LIBVA"
|
||||
XBMC_VAAPI="--enable-vaapi"
|
||||
else
|
||||
XBMC_VAAPI="--disable-vaapi"
|
||||
fi
|
||||
|
||||
if [ "$CRYSTALHD" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET crystalhd"
|
||||
XBMC_CRYSTALHD="--enable-crystalhd"
|
||||
else
|
||||
XBMC_CRYSTALHD="--disable-crystalhd"
|
||||
fi
|
||||
|
||||
export CXX_FOR_BUILD="$HOST_CXX"
|
||||
export CC_FOR_BUILD="$HOST_CC"
|
||||
export CXXFLAGS_FOR_BUILD="$HOST_CXXFLAGS"
|
||||
export CFLAGS_FOR_BUILD="$HOST_CFLAGS"
|
||||
export LDFLAGS_FOR_BUILD="$HOST_LDFLAGS"
|
||||
|
||||
export PYTHON_VERSION="2.7"
|
||||
export PYTHON_CPPFLAGS="-I$SYSROOT_PREFIX/usr/include/python$PYTHON_VERSION"
|
||||
export PYTHON_LDFLAGS="-L$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION -lpython$PYTHON_VERSION"
|
||||
export PYTHON_SITE_PKG="$SYSROOT_PREFIX/usr/lib/python$PYTHON_VERSION/site-packages"
|
||||
export ac_python_version="$PYTHON_VERSION"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="gl_cv_func_gettimeofday_clobber=no \
|
||||
ac_cv_lib_bluetooth_hci_devid=no \
|
||||
--disable-debug \
|
||||
--disable-optimizations \
|
||||
$XBMC_OPENGL \
|
||||
$XBMC_OPENGLES \
|
||||
$XBMC_SDL \
|
||||
$XBMC_OPENMAX \
|
||||
$XBMC_VDPAU \
|
||||
$XBMC_VAAPI \
|
||||
$XBMC_CRYSTALHD \
|
||||
--disable-vtbdecoder \
|
||||
--disable-tegra \
|
||||
--disable-profiling \
|
||||
$XBMC_JOYSTICK \
|
||||
$XBMC_CEC \
|
||||
--enable-udev \
|
||||
--disable-libusb \
|
||||
$XBMC_GOOM \
|
||||
$XBMC_RSXS \
|
||||
$XBMC_PROJECTM \
|
||||
$XBMC_WAVEFORM \
|
||||
$XBMC_SPECTRUM \
|
||||
$XBMC_FISHBMC \
|
||||
$XBMC_XORG \
|
||||
--disable-ccache \
|
||||
$XBMC_ALSA \
|
||||
$XBMC_PULSEAUDIO \
|
||||
--enable-rtmp \
|
||||
$XBMC_SAMBA \
|
||||
$XBMC_NFS \
|
||||
$XBMC_AFP \
|
||||
--enable-libvorbisenc \
|
||||
--disable-libcap \
|
||||
$XBMC_DVDCSS \
|
||||
--disable-mid \
|
||||
--disable-hal \
|
||||
$XBMC_AVAHI \
|
||||
$XBMC_UPNP \
|
||||
$XBMC_MYSQL \
|
||||
$XBMC_SSH \
|
||||
$XBMC_AIRPLAY \
|
||||
$XBMC_AIRTUNES \
|
||||
$XBMC_NONFREE \
|
||||
--disable-asap-codec \
|
||||
$XBMC_WEBSERVER \
|
||||
$XBMC_OPTICAL \
|
||||
$XBMC_BLURAY \
|
||||
--enable-texturepacker \
|
||||
$XBMC_CODEC \
|
||||
$XBMC_PLAYER"
|
||||
|
||||
pre_configure_host() {
|
||||
# xbmc fails to build in subdirs
|
||||
cd $ROOT/$PKG_BUILD
|
||||
rm -rf .$HOST_NAME
|
||||
}
|
||||
|
||||
make_host() {
|
||||
make -C tools/depends/native/JsonSchemaBuilder
|
||||
}
|
||||
|
||||
makeinstall_host() {
|
||||
cp -PR tools/depends/native/JsonSchemaBuilder/native/JsonSchemaBuilder $ROOT/$TOOLCHAIN/bin
|
||||
}
|
||||
|
||||
pre_build_target() {
|
||||
# adding fake Makefile for stripped skin
|
||||
mkdir -p $PKG_BUILD/addons/skin.confluence/media
|
||||
touch $PKG_BUILD/addons/skin.confluence/media/Makefile.in
|
||||
|
||||
# autoreconf
|
||||
BOOTSTRAP_STANDALONE=1 make -C $PKG_BUILD -f bootstrap.mk
|
||||
}
|
||||
|
||||
pre_configure_target() {
|
||||
# xbmc fails to build in subdirs
|
||||
cd $ROOT/$PKG_BUILD
|
||||
rm -rf .$TARGET_NAME
|
||||
|
||||
# xbmc fails to build with LTO optimization if build without GOLD support
|
||||
[ ! "$GOLD_SUPPORT" = "yes" ] && strip_lto
|
||||
|
||||
# Todo: XBMC segfaults on exit when building with LTO support
|
||||
strip_lto
|
||||
|
||||
export CFLAGS="$CFLAGS $XBMC_CFLAGS"
|
||||
export CXXFLAGS="$CXXFLAGS $XBMC_CXXFLAGS"
|
||||
export LIBS="$LIBS -lz"
|
||||
|
||||
export JSON_BUILDER=$ROOT/$TOOLCHAIN/bin/JsonSchemaBuilder
|
||||
}
|
||||
|
||||
make_target() {
|
||||
# setup skin dir from default skin
|
||||
SKIN_DIR="skin.`tolower $SKIN_DEFAULT`"
|
||||
|
||||
# setup default skin inside the sources
|
||||
sed -i -e "s|skin.confluence|$SKIN_DIR|g" $ROOT/$PKG_BUILD/xbmc/settings/Settings.h
|
||||
|
||||
make externals
|
||||
make xbmc.bin
|
||||
|
||||
if [ "$DISPLAYSERVER" = "x11" ]; then
|
||||
make xbmc-xrandr
|
||||
fi
|
||||
|
||||
make -C tools/TexturePacker
|
||||
cp -PR tools/TexturePacker/TexturePacker $ROOT/$TOOLCHAIN/bin
|
||||
}
|
||||
|
||||
post_makeinstall_target() {
|
||||
rm -rf $INSTALL/usr/bin/xbmc
|
||||
rm -rf $INSTALL/usr/bin/xbmc-standalone
|
||||
rm -rf $INSTALL/usr/lib/xbmc/*.cmake
|
||||
|
||||
mkdir -p $INSTALL/usr/lib/xbmc
|
||||
cp $PKG_DIR/scripts/xbmc-config $INSTALL/usr/lib/xbmc
|
||||
cp $PKG_DIR/scripts/xbmc-hacks $INSTALL/usr/lib/xbmc
|
||||
cp $PKG_DIR/scripts/xbmc-sources $INSTALL/usr/lib/xbmc
|
||||
|
||||
mkdir -p $INSTALL/usr/lib/openelec
|
||||
cp $PKG_DIR/scripts/systemd-addon-wrapper $INSTALL/usr/lib/openelec
|
||||
|
||||
mkdir -p $INSTALL/usr/bin
|
||||
cp $PKG_DIR/scripts/cputemp $INSTALL/usr/bin
|
||||
ln -sf cputemp $INSTALL/usr/bin/gputemp
|
||||
cp $PKG_DIR/scripts/setwakeup.sh $INSTALL/usr/bin
|
||||
cp tools/EventClients/Clients/XBMC\ Send/xbmc-send.py $INSTALL/usr/bin/xbmc-send
|
||||
|
||||
if [ ! "$DISPLAYSERVER" = "x11" ]; then
|
||||
rm -rf $INSTALL/usr/lib/xbmc/xbmc-xrandr
|
||||
fi
|
||||
|
||||
if [ ! "$XBMC_SCR_RSXS" = yes ]; then
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/screensaver.rsxs.*
|
||||
fi
|
||||
|
||||
if [ ! "$XBMC_VIS_PROJECTM" = yes ]; then
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/visualization.projectm
|
||||
fi
|
||||
|
||||
rm -rf $INSTALL/usr/share/applications
|
||||
rm -rf $INSTALL/usr/share/icons
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/repository.pvr-*
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/script.module.pysqlite
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/script.module.simplejson
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/visualization.dxspectrum
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/visualization.itunes
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/visualization.milkdrop
|
||||
rm -rf $INSTALL/usr/share/xbmc/addons/service.xbmc.versioncheck
|
||||
rm -rf $INSTALL/usr/share/xsessions
|
||||
|
||||
mkdir -p $INSTALL/usr/share/xbmc/addons
|
||||
cp -R $PKG_DIR/config/os.openelec.tv $INSTALL/usr/share/xbmc/addons
|
||||
$SED "s|@OS_VERSION@|$OS_VERSION|g" -i $INSTALL/usr/share/xbmc/addons/os.openelec.tv/addon.xml
|
||||
cp -R $PKG_DIR/config/repository.openelec.tv $INSTALL/usr/share/xbmc/addons
|
||||
$SED "s|@ADDON_URL@|$ADDON_URL|g" -i $INSTALL/usr/share/xbmc/addons/repository.openelec.tv/addon.xml
|
||||
|
||||
mkdir -p $INSTALL/usr/lib/python"$PYTHON_VERSION"/site-packages/xbmc
|
||||
cp -R tools/EventClients/lib/python/* $INSTALL/usr/lib/python"$PYTHON_VERSION"/site-packages/xbmc
|
||||
|
||||
# install project specific configs
|
||||
mkdir -p $INSTALL/usr/share/xbmc/config
|
||||
if [ -f $PROJECT_DIR/$PROJECT/xbmc/guisettings.xml ]; then
|
||||
cp -R $PROJECT_DIR/$PROJECT/xbmc/guisettings.xml $INSTALL/usr/share/xbmc/config
|
||||
fi
|
||||
|
||||
if [ -f $PROJECT_DIR/$PROJECT/xbmc/sources.xml ]; then
|
||||
cp -R $PROJECT_DIR/$PROJECT/xbmc/sources.xml $INSTALL/usr/share/xbmc/config
|
||||
fi
|
||||
|
||||
mkdir -p $INSTALL/usr/share/xbmc/system/
|
||||
if [ -f $PROJECT_DIR/$PROJECT/xbmc/advancedsettings.xml ]; then
|
||||
cp $PROJECT_DIR/$PROJECT/xbmc/advancedsettings.xml $INSTALL/usr/share/xbmc/system/
|
||||
else
|
||||
cp $PKG_DIR/config/advancedsettings.xml $INSTALL/usr/share/xbmc/system/
|
||||
fi
|
||||
|
||||
mkdir -p $INSTALL/usr/share/xbmc/system/settings
|
||||
if [ -f $PROJECT_DIR/$PROJECT/xbmc/appliance.xml ]; then
|
||||
cp $PROJECT_DIR/$PROJECT/xbmc/appliance.xml $INSTALL/usr/share/xbmc/system/settings
|
||||
else
|
||||
cp $PKG_DIR/config/appliance.xml $INSTALL/usr/share/xbmc/system/settings
|
||||
fi
|
||||
|
||||
if [ "$XBMC_EXTRA_FONTS" = yes ]; then
|
||||
mkdir -p $INSTALL/usr/share/xbmc/media/Fonts
|
||||
cp $PKG_DIR/fonts/*.ttf $INSTALL/usr/share/xbmc/media/Fonts
|
||||
fi
|
||||
}
|
||||
|
||||
post_install() {
|
||||
# link default.target to xbmc.target
|
||||
ln -sf xbmc.target $INSTALL/usr/lib/systemd/system/default.target
|
||||
|
||||
enable_service xbmc-autostart.service
|
||||
enable_service xbmc-cleanlogs.service
|
||||
enable_service xbmc-config.service
|
||||
enable_service xbmc-hacks.service
|
||||
enable_service xbmc-sources.service
|
||||
enable_service xbmc-halt.service
|
||||
enable_service xbmc-poweroff.service
|
||||
enable_service xbmc-reboot.service
|
||||
enable_service xbmc-waitonnetwork.service
|
||||
enable_service xbmc.service
|
||||
enable_service xbmc-lirc-suspend.service
|
||||
}
|
@ -1,338 +0,0 @@
|
||||
diff -Naur xbmc-master-14-5ec51aa.orig/system/keymaps/joystick.Ouya.Controller.xml xbmc-master-14-5ec51aa/system/keymaps/joystick.Ouya.Controller.xml
|
||||
--- xbmc-master-14-5ec51aa.orig/system/keymaps/joystick.Ouya.Controller.xml 1969-12-31 16:00:00.000000000 -0800
|
||||
+++ xbmc-master-14-5ec51aa/system/keymaps/joystick.Ouya.Controller.xml 2014-06-06 16:31:54.812044875 -0700
|
||||
@@ -0,0 +1,334 @@
|
||||
+<!-- Joystick Name: OUYA Game Controller -->
|
||||
+<!-- created by: N3MIS15 on the xbmc forum -->
|
||||
+<!-- http://forum.xbmc.org/showthread.php?tid=173516 -->
|
||||
+
|
||||
+<!-- Button Mappings in OpenELEC: -->
|
||||
+<!-- -->
|
||||
+<!-- ID Button -->
|
||||
+<!-- -->
|
||||
+<!-- 1 O -->
|
||||
+<!-- 2 U -->
|
||||
+<!-- 3 Y -->
|
||||
+<!-- 4 A -->
|
||||
+<!-- 5 Left Sholder -->
|
||||
+<!-- 6 Right Sholder -->
|
||||
+<!-- 7 Left Stick Button -->
|
||||
+<!-- 8 Right Stick Button -->
|
||||
+<!-- 9 D-Pad Up -->
|
||||
+<!-- 10 D-Pad Down -->
|
||||
+<!-- 11 D-Pad Left -->
|
||||
+<!-- 12 D-Pad Right -->
|
||||
+
|
||||
+<!-- Axis Mappings: -->
|
||||
+<!-- -->
|
||||
+<!-- ID Button -->
|
||||
+<!-- -->
|
||||
+<!-- 1 Left Stick L/R -->
|
||||
+<!-- 2 Left Stick U/D -->
|
||||
+<!-- 3 limit +1 Left Trigger Pressed -->
|
||||
+<!-- 3 limit -1 Left Trigger Depressed -->
|
||||
+<!-- 4 Right Stick L/R -->
|
||||
+<!-- 5 Right Stick U/D -->
|
||||
+<!-- 6 limit +1 Right Trigger Pressed -->
|
||||
+<!-- 6 limit -1 Right Trigger Depressed -->
|
||||
+
|
||||
+<keymap>
|
||||
+
|
||||
+ <global>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="1">Select</button>
|
||||
+ <button id="2">ContextMenu</button>
|
||||
+ <button id="3">FullScreen</button>
|
||||
+ <button id="4">Back</button>
|
||||
+ <button id="5">Queue</button>
|
||||
+ <button id="6">Playlist</button>
|
||||
+ <button id="7">PreviousMenu</button>
|
||||
+ <button id="8">XBMC.ActivateWindow(Home)</button>
|
||||
+ <button id="9">Up</button>
|
||||
+ <button id="10">Down</button>
|
||||
+ <button id="11">Left</button>
|
||||
+ <button id="12">Right</button>
|
||||
+ <axis id="4" limit="-1">AnalogSeekBack</axis>
|
||||
+ <axis id="4" limit="+1">AnalogSeekForward</axis>
|
||||
+ <axis id="2" limit="-1">ScrollUp</axis>
|
||||
+ <axis id="2" limit="+1">ScrollDown</axis>
|
||||
+ </joystick>
|
||||
+ </global>
|
||||
+
|
||||
+ <Home>
|
||||
+ </Home>
|
||||
+
|
||||
+ <MyFiles>
|
||||
+ </MyFiles>
|
||||
+
|
||||
+ <MyMusicPlaylist>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="5">Delete</button>
|
||||
+ </joystick>
|
||||
+ </MyMusicPlaylist>
|
||||
+
|
||||
+ <MyMusicFiles>
|
||||
+ </MyMusicFiles>
|
||||
+
|
||||
+ <MyMusicLibrary>
|
||||
+ </MyMusicLibrary>
|
||||
+
|
||||
+ <FullscreenVideo>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="1">Pause</button>
|
||||
+ <button id="2">OSD</button>
|
||||
+ <button id="4">Stop</button>
|
||||
+ <button id="5">AspectRatio</button>
|
||||
+ <button id="6">ShowSubtitles</button>
|
||||
+ <button id="7">SmallStepBack</button>
|
||||
+ <button id="8">Info</button>
|
||||
+ <button id="9">BigStepForward</button>
|
||||
+ <button id="10">BigStepBack</button>
|
||||
+ <button id="11">StepBack</button>
|
||||
+ <button id="12">StepForward</button>
|
||||
+ </joystick>
|
||||
+ </FullscreenVideo>
|
||||
+
|
||||
+ <FullscreenLiveTV>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="9">ChannelUp</button>
|
||||
+ <button id="10">ChannelDown</button>
|
||||
+ <button id="11">PreviousChannelGroup</button>
|
||||
+ <button id="12">NextChannelGroup</button>
|
||||
+ </joystick>
|
||||
+ </FullscreenLiveTV>
|
||||
+
|
||||
+ <FullscreenInfo>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="2">OSD</button>
|
||||
+ <button id="4">Close</button>
|
||||
+ <button id="8">Close</button>
|
||||
+ <axis id="3" limit="+1">AnalogRewind</axis>
|
||||
+ <axis id="3" limit="-1">AnalogFastForward</axis>
|
||||
+ </joystick>
|
||||
+ </FullscreenInfo>
|
||||
+
|
||||
+ <PlayerControls>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="2">Close</button>
|
||||
+ <button id="7">Close</button>
|
||||
+ <button id="8">Close</button>
|
||||
+ </joystick>
|
||||
+ </PlayerControls>
|
||||
+
|
||||
+ <Visualisation>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="1">Pause</button>
|
||||
+ <button id="4">Stop</button>
|
||||
+ <button id="2">XBMC.ActivateWindow(MusicOSD)</button>
|
||||
+ <button id="5">XBMC.ActivateWindow(VisualisationPresetList)</button>
|
||||
+ <button id="6">Info</button>
|
||||
+ <button id="8">XBMC.ActivateWindow(MusicOSD)</button>
|
||||
+ <button id="9">SkipNext</button>
|
||||
+ <button id="10">SkipPrevious</button>
|
||||
+ <button id="11">PreviousPreset</button>
|
||||
+ <button id="12">NextPreset</button>
|
||||
+ <axis id="3" limit="+1">AnalogRewind</axis>
|
||||
+ <axis id="6" limit="+1">AnalogFastForward</axis>
|
||||
+ </joystick>
|
||||
+ </Visualisation>
|
||||
+
|
||||
+ <MusicOSD>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Close</button>
|
||||
+ <button id="6">Info</button>
|
||||
+ </joystick>
|
||||
+ </MusicOSD>
|
||||
+
|
||||
+ <VisualisationSettings>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Close</button>
|
||||
+ </joystick>
|
||||
+ </VisualisationSettings>
|
||||
+
|
||||
+ <VisualisationPresetList>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Close</button>
|
||||
+ </joystick>
|
||||
+ </VisualisationPresetList>
|
||||
+
|
||||
+ <SlideShow>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="1">Pause</button>
|
||||
+ <button id="4">Stop</button>
|
||||
+ <button id="3">ZoomNormal</button>
|
||||
+ <button id="5">Rotate</button>
|
||||
+ <button id="6">CodecInfo</button>
|
||||
+ <button id="11">PreviousPicture</button>
|
||||
+ <button id="12">NextPicture</button>
|
||||
+ <axis id="1">AnalogMove</axis>
|
||||
+ <axis id="2">AnalogMove</axis>
|
||||
+ <axis id="3" limit="+1">ZoomOut</axis>
|
||||
+ <axis id="6" limit="+1">ZoomIn</axis>
|
||||
+ </joystick>
|
||||
+ </SlideShow>
|
||||
+
|
||||
+ <ScreenCalibration>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="2">ResetCalibration</button>
|
||||
+ <button id="5">NextResolution</button>
|
||||
+ <button id="6">NextCalibration</button>
|
||||
+ </joystick>
|
||||
+ </ScreenCalibration>
|
||||
+
|
||||
+ <GUICalibration>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="2">ResetCalibration</button>
|
||||
+ <button id="5">NextResolution</button>
|
||||
+ <button id="6">NextCalibration</button>
|
||||
+ </joystick>
|
||||
+ </GUICalibration>
|
||||
+
|
||||
+ <VideoOSD>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="2">Close</button>
|
||||
+ </joystick>
|
||||
+ </VideoOSD>
|
||||
+
|
||||
+ <VideoMenu>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Stop</button>
|
||||
+ <button id="2">OSD</button>
|
||||
+ <button id="5">AspectRatio</button>
|
||||
+ <button id="8">Info</button>
|
||||
+ </joystick>
|
||||
+ </VideoMenu>
|
||||
+
|
||||
+ <OSDVideoSettings>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="5">AspectRatio</button>
|
||||
+ <button id="2">Close</button>
|
||||
+ </joystick>
|
||||
+ </OSDVideoSettings>
|
||||
+
|
||||
+ <OSDAudioSettings>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="5">AspectRatio</button>
|
||||
+ <button id="2">Close</button>
|
||||
+ </joystick>
|
||||
+ </OSDAudioSettings>
|
||||
+
|
||||
+ <VideoBookmarks>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="5">Delete</button>
|
||||
+ </joystick>
|
||||
+ </VideoBookmarks>
|
||||
+
|
||||
+ <MyVideoLibrary>
|
||||
+ </MyVideoLibrary>
|
||||
+
|
||||
+ <MyVideoFiles>
|
||||
+ </MyVideoFiles>
|
||||
+
|
||||
+ <MyVideoPlaylist>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="5">Delete</button>
|
||||
+ </joystick>
|
||||
+ </MyVideoPlaylist>
|
||||
+
|
||||
+ <VirtualKeyboard>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">BackSpace</button>
|
||||
+ <button id="3">Symbols</button>
|
||||
+ <button id="5">Shift</button>
|
||||
+ <button id="7">Enter</button>
|
||||
+ <axis id="3" limit="+1">CursorLeft</axis>
|
||||
+ <axis id="6" limit="+1">CursorRight</axis>
|
||||
+ </joystick>
|
||||
+ </VirtualKeyboard>
|
||||
+
|
||||
+ <ContextMenu>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="2">Close</button>
|
||||
+ <button id="4">Close</button>
|
||||
+ </joystick>
|
||||
+ </ContextMenu>
|
||||
+
|
||||
+ <Scripts>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="2">Info</button>
|
||||
+ </joystick>
|
||||
+ </Scripts>
|
||||
+
|
||||
+ <Settings>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">PreviousMenu</button>
|
||||
+ </joystick>
|
||||
+ </Settings>
|
||||
+
|
||||
+ <AddonInformation>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Close</button>
|
||||
+ </joystick>
|
||||
+ </AddonInformation>
|
||||
+
|
||||
+ <AddonSettings>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Close</button>
|
||||
+ </joystick>
|
||||
+ </AddonSettings>
|
||||
+
|
||||
+ <TextViewer>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Close</button>
|
||||
+ </joystick>
|
||||
+ </TextViewer>
|
||||
+
|
||||
+ <shutdownmenu>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">PreviousMenu</button>
|
||||
+ <button id="7">PreviousMenu</button>
|
||||
+ </joystick>
|
||||
+ </shutdownmenu>
|
||||
+
|
||||
+ <submenu>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">PreviousMenu</button>
|
||||
+ </joystick>
|
||||
+ </submenu>
|
||||
+
|
||||
+ <MusicInformation>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Close</button>
|
||||
+ </joystick>
|
||||
+ </MusicInformation>
|
||||
+
|
||||
+ <MovieInformation>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">Close</button>
|
||||
+ </joystick>
|
||||
+ </MovieInformation>
|
||||
+
|
||||
+ <NumericInput>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">BackSpace</button>
|
||||
+ <button id="7">Enter</button>
|
||||
+ </joystick>
|
||||
+ </NumericInput>
|
||||
+
|
||||
+ <GamepadInput>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="7">Stop</button>
|
||||
+ </joystick>
|
||||
+ </GamepadInput>
|
||||
+
|
||||
+ <LockSettings>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">PreviousMenu</button>
|
||||
+ <button id="7">Close</button>
|
||||
+ </joystick>
|
||||
+ </LockSettings>
|
||||
+
|
||||
+ <ProfileSettings>
|
||||
+ <joystick name="OUYA Game Controller">
|
||||
+ <button id="4">PreviousMenu</button>
|
||||
+ <button id="7">Close</button>
|
||||
+ </joystick>
|
||||
+ </ProfileSettings>
|
||||
+
|
||||
+</keymap>
|
@ -1,328 +0,0 @@
|
||||
diff -Naur xbmc-master-14-5ec51aa.orig/system/keymaps/joystick.PS4.Controller.xml xbmc-master-14-5ec51aa/system/keymaps/joystick.PS4.Controller.xml
|
||||
--- xbmc-master-14-5ec51aa.orig/system/keymaps/joystick.PS4.Controller.xml 1969-12-31 16:00:00.000000000 -0800
|
||||
+++ xbmc-master-14-5ec51aa/system/keymaps/joystick.PS4.Controller.xml 2014-06-06 16:53:33.786191904 -0700
|
||||
@@ -0,0 +1,324 @@
|
||||
+<!-- Joystick Name: Wireless Controller (PS4) -->
|
||||
+
|
||||
+<!-- Button Mappings: -->
|
||||
+<!-- -->
|
||||
+<!-- ID Button -->
|
||||
+<!-- -->
|
||||
+<!-- 1 Square -->
|
||||
+<!-- 2 Cross -->
|
||||
+<!-- 3 Circle -->
|
||||
+<!-- 4 Triangle -->
|
||||
+<!-- 5 L1 -->
|
||||
+<!-- 6 R1 -->
|
||||
+<!-- 7 L2 -->
|
||||
+<!-- 8 R2 -->
|
||||
+<!-- 9 Share (not used) -->
|
||||
+<!-- 10 Options (not used) -->
|
||||
+<!-- 11 L3 -->
|
||||
+<!-- 12 R3 -->
|
||||
+<!-- 13 PS Button (not used) -->
|
||||
+
|
||||
+<!-- Hat Mappings: -->
|
||||
+<!-- -->
|
||||
+<!-- ID Button -->
|
||||
+<!-- -->
|
||||
+<!-- 1 up D-Pad Up -->
|
||||
+<!-- 1 down D-Pad Down -->
|
||||
+<!-- 1 left D-Pad Left -->
|
||||
+<!-- 1 right D-Pad Right -->
|
||||
+
|
||||
+<!-- Axis Mappings: -->
|
||||
+<!-- -->
|
||||
+<!-- ID Button -->
|
||||
+<!-- -->
|
||||
+<!-- 1 Left Stick L/R -->
|
||||
+<!-- 2 Left Stick U/D -->
|
||||
+<!-- 3 Right Stick L/R -->
|
||||
+<!-- 4 Right Stick U/D -->
|
||||
+
|
||||
+<keymap>
|
||||
+
|
||||
+ <global>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="2">Select</button>
|
||||
+ <button id="1">ContextMenu</button>
|
||||
+ <button id="4">FullScreen</button>
|
||||
+ <button id="3">Back</button>
|
||||
+ <button id="5">Queue</button>
|
||||
+ <button id="6">Playlist</button>
|
||||
+ <button id="11">PreviousMenu</button>
|
||||
+ <button id="12">XBMC.ActivateWindow(Home)</button>
|
||||
+ <hat id="1" position="left">Left</hat>
|
||||
+ <hat id="1" position="right">Right</hat>
|
||||
+ <hat id="1" position="up">Up</hat>
|
||||
+ <hat id="1" position="down">Down</hat>
|
||||
+ <axis limit="+1" id="3">AnalogSeekForward</axis>
|
||||
+ <axis limit="-1" id="3">AnalogSeekBack</axis>
|
||||
+ <axis limit="-1" id="2">ScrollUp</axis>
|
||||
+ <axis limit="+1" id="2">ScrollDown</axis>
|
||||
+ </joystick>
|
||||
+ </global>
|
||||
+
|
||||
+ <Home>
|
||||
+ </Home>
|
||||
+
|
||||
+ <MyFiles>
|
||||
+ </MyFiles>
|
||||
+
|
||||
+ <MyMusicPlaylist>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="5">Delete</button>
|
||||
+ </joystick>
|
||||
+ </MyMusicPlaylist>
|
||||
+
|
||||
+ <MyMusicFiles>
|
||||
+ </MyMusicFiles>
|
||||
+
|
||||
+ <MyMusicLibrary>
|
||||
+ </MyMusicLibrary>
|
||||
+
|
||||
+ <FullscreenVideo>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="2">Pause</button>
|
||||
+ <button id="1">OSD</button>
|
||||
+ <button id="3">Stop</button>
|
||||
+ <button id="5">AspectRatio</button>
|
||||
+ <button id="6">ShowSubtitles</button>
|
||||
+ <button id="11">SmallStepBack</button>
|
||||
+ <button id="12">Info</button>
|
||||
+ <hat id="1" position="left">StepBack</hat>
|
||||
+ <hat id="1" position="right">StepForward</hat>
|
||||
+ <hat id="1" position="up">BigStepForward</hat>
|
||||
+ <hat id="1" position="down">BigStepBack</hat>
|
||||
+ </joystick>
|
||||
+ </FullscreenVideo>
|
||||
+
|
||||
+ <FullscreenLiveTV>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <hat id="1" position="up">ChannelUp</hat>
|
||||
+ <hat id="1" position="down">ChannelDown</hat>
|
||||
+ <hat id="1" position="left">PreviousChannelGroup</hat>
|
||||
+ <hat id="1" position="right">NextChannelGroup</hat>
|
||||
+ </joystick>
|
||||
+ </FullscreenLiveTV>
|
||||
+
|
||||
+ <FullscreenInfo>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="1">OSD</button>
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </FullscreenInfo>
|
||||
+
|
||||
+ <PlayerControls>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </PlayerControls>
|
||||
+
|
||||
+ <Visualisation>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="2">Pause</button>
|
||||
+ <button id="3">Stop</button>
|
||||
+ <button id="1">XBMC.ActivateWindow(MusicOSD)</button>
|
||||
+ <button id="12">Info</button>
|
||||
+ <button id="6">SkipNext</button>
|
||||
+ <button id="5">SkipPrevious</button>
|
||||
+ <button id="7">PreviousPreset</button>
|
||||
+ <button id="8">NextPreset</button>
|
||||
+ </joystick>
|
||||
+ </Visualisation>
|
||||
+
|
||||
+ <MusicOSD>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ <button id="12">Info</button>
|
||||
+ </joystick>
|
||||
+ </MusicOSD>
|
||||
+
|
||||
+ <VisualisationSettings>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </VisualisationSettings>
|
||||
+
|
||||
+ <VisualisationPresetList>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </VisualisationPresetList>
|
||||
+
|
||||
+ <SlideShow>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="2">Pause</button>
|
||||
+ <button id="3">Stop</button>
|
||||
+ <button id="4">ZoomNormal</button>
|
||||
+ <button id="5">Rotate</button>
|
||||
+ <button id="6">CodecInfo</button>
|
||||
+ <hat id="1" position="left">PreviousPicture</hat>
|
||||
+ <hat id="1" position="right">NextPicture</hat>
|
||||
+ <axis id="1">AnalogMove</axis>
|
||||
+ <axis id="2">AnalogMove</axis>
|
||||
+ <button id="7">ZoomOut</button>
|
||||
+ <button id="8">ZoomIn</button>
|
||||
+ </joystick>
|
||||
+ </SlideShow>
|
||||
+
|
||||
+ <ScreenCalibration>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="2">ResetCalibration</button>
|
||||
+ <button id="5">NextResolution</button>
|
||||
+ <button id="6">NextCalibration</button>
|
||||
+ </joystick>
|
||||
+ </ScreenCalibration>
|
||||
+
|
||||
+ <GUICalibration>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="2">ResetCalibration</button>
|
||||
+ <button id="5">NextResolution</button>
|
||||
+ <button id="6">NextCalibration</button>
|
||||
+ </joystick>
|
||||
+ </GUICalibration>
|
||||
+
|
||||
+ <VideoOSD>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="2">Close</button>
|
||||
+ </joystick>
|
||||
+ </VideoOSD>
|
||||
+
|
||||
+ <VideoMenu>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Stop</button>
|
||||
+ <button id="2">OSD</button>
|
||||
+ <button id="5">AspectRatio</button>
|
||||
+ <button id="12">Info</button>
|
||||
+ </joystick>
|
||||
+ </VideoMenu>
|
||||
+
|
||||
+ <OSDVideoSettings>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="5">AspectRatio</button>
|
||||
+ <button id="2">Close</button>
|
||||
+ </joystick>
|
||||
+ </OSDVideoSettings>
|
||||
+
|
||||
+ <OSDAudioSettings>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="5">AspectRatio</button>
|
||||
+ <button id="2">Close</button>
|
||||
+ </joystick>
|
||||
+ </OSDAudioSettings>
|
||||
+
|
||||
+ <VideoBookmarks>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="5">Delete</button>
|
||||
+ </joystick>
|
||||
+ </VideoBookmarks>
|
||||
+
|
||||
+ <MyVideoLibrary>
|
||||
+ </MyVideoLibrary>
|
||||
+
|
||||
+ <MyVideoFiles>
|
||||
+ </MyVideoFiles>
|
||||
+
|
||||
+ <MyVideoPlaylist>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="5">Delete</button>
|
||||
+ </joystick>
|
||||
+ </MyVideoPlaylist>
|
||||
+
|
||||
+ <VirtualKeyboard>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">BackSpace</button>
|
||||
+ <button id="4">Symbols</button>
|
||||
+ <button id="5">Shift</button>
|
||||
+ <button id="11">Enter</button>
|
||||
+ <button id="7">CursorLeft</button>
|
||||
+ <button id="8">CursorRight</button>
|
||||
+ </joystick>
|
||||
+ </VirtualKeyboard>
|
||||
+
|
||||
+ <ContextMenu>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </ContextMenu>
|
||||
+
|
||||
+ <Scripts>
|
||||
+ </Scripts>
|
||||
+
|
||||
+ <Settings>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">PreviousMenu</button>
|
||||
+ </joystick>
|
||||
+ </Settings>
|
||||
+
|
||||
+ <AddonInformation>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </AddonInformation>
|
||||
+
|
||||
+ <AddonSettings>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </AddonSettings>
|
||||
+
|
||||
+ <TextViewer>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </TextViewer>
|
||||
+
|
||||
+ <shutdownmenu>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">PreviousMenu</button>
|
||||
+ </joystick>
|
||||
+ </shutdownmenu>
|
||||
+
|
||||
+ <submenu>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">PreviousMenu</button>
|
||||
+ </joystick>
|
||||
+ </submenu>
|
||||
+
|
||||
+ <MusicInformation>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </MusicInformation>
|
||||
+
|
||||
+ <MovieInformation>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">Close</button>
|
||||
+ </joystick>
|
||||
+ </MovieInformation>
|
||||
+
|
||||
+ <NumericInput>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">BackSpace</button>
|
||||
+ <button id="11">Enter</button>
|
||||
+ </joystick>
|
||||
+ </NumericInput>
|
||||
+
|
||||
+ <GamepadInput>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="11">Stop</button>
|
||||
+ </joystick>
|
||||
+ </GamepadInput>
|
||||
+
|
||||
+ <LockSettings>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">PreviousMenu</button>
|
||||
+ <button id="11">Close</button>
|
||||
+ </joystick>
|
||||
+ </LockSettings>
|
||||
+
|
||||
+ <ProfileSettings>
|
||||
+ <joystick name="Wireless Controller">
|
||||
+ <button id="3">PreviousMenu</button>
|
||||
+ <button id="11">Close</button>
|
||||
+ </joystick>
|
||||
+ </ProfileSettings>
|
||||
+
|
||||
+</keymap>
|
@ -1,73 +0,0 @@
|
||||
diff -Naur xbmc-master-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh
|
||||
--- xbmc-master-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh 2014-05-01 17:54:59.643325427 +0200
|
||||
@@ -56,17 +56,17 @@
|
||||
fi
|
||||
|
||||
if test "$echo_cflags" = "yes"; then
|
||||
- echo -I$prefix/include $dvdread_cflags $extracflags $threadcflags
|
||||
+ echo $dvdread_cflags $extracflags $threadcflags
|
||||
fi
|
||||
|
||||
if test "$echo_minicflags" = "yes"; then
|
||||
- echo -I$prefix/include -I$prefix/include/dvdnav $extracflags $threadcflags
|
||||
+ echo $extracflags $threadcflags
|
||||
fi
|
||||
|
||||
if test "$echo_libs" = "yes"; then
|
||||
- echo -L$libdir -ldvdnav $dvdread_libs $threadlib
|
||||
+ echo -ldvdnav $dvdread_libs $threadlib
|
||||
fi
|
||||
|
||||
if test "$echo_minilibs" = "yes"; then
|
||||
- echo -L$libdir -ldvdnavmini $threadlib
|
||||
+ echo -ldvdnavmini $threadlib
|
||||
fi
|
||||
diff -Naur xbmc-master-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in
|
||||
--- xbmc-master-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in 2014-05-01 17:56:12.030447794 +0200
|
||||
@@ -7,5 +7,5 @@
|
||||
Description: DVD Navigation mini library
|
||||
Version: @VERSION@
|
||||
|
||||
-Cflags: -I${includedir} @DVDREAD_CFLAGS@ @THREAD_CFLAGS@
|
||||
-Libs: -L${libdir} -ldvdnav @THREAD_LIBS@
|
||||
+Cflags: @DVDREAD_CFLAGS@ @THREAD_CFLAGS@
|
||||
+Libs: -ldvdnav @THREAD_LIBS@
|
||||
diff -Naur xbmc-master-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnav.pc.in xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnav.pc.in
|
||||
--- xbmc-master-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnav.pc.in 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnav.pc.in 2014-05-01 17:55:50.427406667 +0200
|
||||
@@ -8,5 +8,5 @@
|
||||
Version: @VERSION@
|
||||
|
||||
Requires.private: dvdread >= 4.1.2
|
||||
-Cflags: -I${includedir} @THREAD_CFLAGS@
|
||||
-Libs: -L${libdir} -ldvdnav @THREAD_LIBS@
|
||||
+Cflags: @THREAD_CFLAGS@
|
||||
+Libs: -ldvdnav @THREAD_LIBS@
|
||||
diff -Naur xbmc-master-14-088e9fa/lib/libdvd/libdvdread/misc/dvdread-config.sh xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdread/misc/dvdread-config.sh
|
||||
--- xbmc-master-14-088e9fa/lib/libdvd/libdvdread/misc/dvdread-config.sh 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdread/misc/dvdread-config.sh 2014-05-01 17:56:55.745553577 +0200
|
||||
@@ -48,9 +48,9 @@
|
||||
fi
|
||||
|
||||
if test "$echo_cflags" = "yes"; then
|
||||
- echo -I$prefix/include $extracflags
|
||||
+ echo $extracflags
|
||||
fi
|
||||
|
||||
if test "$echo_libs" = "yes"; then
|
||||
- echo -L$libdir $dvdreadlib
|
||||
+ echo $dvdreadlib
|
||||
fi
|
||||
diff -Naur xbmc-master-14-088e9fa/lib/libdvd/libdvdread/misc/dvdread.pc.in xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdread/misc/dvdread.pc.in
|
||||
--- xbmc-master-14-088e9fa/lib/libdvd/libdvdread/misc/dvdread.pc.in 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-master-14-088e9fa.patch/lib/libdvd/libdvdread/misc/dvdread.pc.in 2014-05-01 17:57:28.731937685 +0200
|
||||
@@ -7,5 +7,5 @@
|
||||
Description: Low level DVD access library
|
||||
Version: @VERSION@
|
||||
|
||||
-Cflags: -I${includedir}
|
||||
-Libs: -L${libdir} -ldvdread
|
||||
+Cflags: -I.
|
||||
+Libs: -ldvdread
|
@ -1,12 +0,0 @@
|
||||
diff -Naur xbmc-30a9070/system/keymaps/keyboard.xml xbmc-30a9070.patch/system/keymaps/keyboard.xml
|
||||
--- xbmc-30a9070/system/keymaps/keyboard.xml 2011-07-28 06:20:13.000000000 +0200
|
||||
+++ xbmc-30a9070.patch/system/keymaps/keyboard.xml 2011-07-28 09:39:57.210973380 +0200
|
||||
@@ -90,7 +90,7 @@
|
||||
<numpadseven>Number7</numpadseven>
|
||||
<numpadeight>Number8</numpadeight>
|
||||
<numpadnine>Number9</numpadnine>
|
||||
- <backslash>ToggleFullScreen</backslash>
|
||||
+ <!-- <backslash>ToggleFullScreen</backslash> -->
|
||||
<home>FirstPage</home>
|
||||
<end>LastPage</end>
|
||||
<!-- Multimedia keyboard keys -->
|
@ -1,61 +0,0 @@
|
||||
From 1716ffbf57a8d812f3bc7b26752e867066c36c44 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Sat, 7 Jun 2014 12:40:57 +0300
|
||||
Subject: [PATCH] disable online check
|
||||
|
||||
---
|
||||
xbmc/GUIInfoManager.cpp | 1 -
|
||||
xbmc/utils/SystemInfo.cpp | 5 +----
|
||||
xbmc/windows/GUIWindowSystemInfo.cpp | 1 -
|
||||
3 files changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/xbmc/GUIInfoManager.cpp b/xbmc/GUIInfoManager.cpp
|
||||
index 456c733..0c20ae2 100644
|
||||
--- a/xbmc/GUIInfoManager.cpp
|
||||
+++ b/xbmc/GUIInfoManager.cpp
|
||||
@@ -273,7 +273,6 @@ const infomap system_labels[] = {{ "hasnetwork", SYSTEM_ETHERNET_LINK_ACT
|
||||
{ "currentwindow", SYSTEM_CURRENT_WINDOW },
|
||||
{ "currentcontrol", SYSTEM_CURRENT_CONTROL },
|
||||
{ "dvdlabel", SYSTEM_DVD_LABEL },
|
||||
- { "internetstate", SYSTEM_INTERNET_STATE },
|
||||
{ "osversioninfo", SYSTEM_OS_VERSION_INFO },
|
||||
{ "kernelversion", SYSTEM_OS_VERSION_INFO }, // old, not correct name
|
||||
{ "uptime", SYSTEM_UPTIME },
|
||||
diff --git a/xbmc/utils/SystemInfo.cpp b/xbmc/utils/SystemInfo.cpp
|
||||
index 55ed760..aefeb70 100644
|
||||
--- a/xbmc/utils/SystemInfo.cpp
|
||||
+++ b/xbmc/utils/SystemInfo.cpp
|
||||
@@ -240,7 +240,6 @@ bool CSysInfoJob::DoWork()
|
||||
{
|
||||
m_info.systemUptime = GetSystemUpTime(false);
|
||||
m_info.systemTotalUptime = GetSystemUpTime(true);
|
||||
- m_info.internetState = GetInternetState();
|
||||
m_info.videoEncoder = GetVideoEncoder();
|
||||
m_info.cpuFrequency = GetCPUFreqInfo();
|
||||
m_info.osVersionInfo = CSysInfo::GetOsPrettyNameWithVersion() + " (kernel: " + CSysInfo::GetKernelName() + " " + CSysInfo::GetKernelVersionFull() + ")";
|
||||
@@ -963,9 +962,7 @@ int CSysInfo::GetXbmcBitness(void)
|
||||
|
||||
bool CSysInfo::HasInternet()
|
||||
{
|
||||
- if (m_info.internetState != CSysData::UNKNOWN)
|
||||
- return m_info.internetState == CSysData::CONNECTED;
|
||||
- return (m_info.internetState = CSysInfoJob::GetInternetState()) == CSysData::CONNECTED;
|
||||
+ return m_info.internetState == CSysData::UNKNOWN;
|
||||
}
|
||||
|
||||
CStdString CSysInfo::GetHddSpaceInfo(int drive, bool shortText)
|
||||
diff --git a/xbmc/windows/GUIWindowSystemInfo.cpp b/xbmc/windows/GUIWindowSystemInfo.cpp
|
||||
index 03a23e3..1528939 100644
|
||||
--- a/xbmc/windows/GUIWindowSystemInfo.cpp
|
||||
+++ b/xbmc/windows/GUIWindowSystemInfo.cpp
|
||||
@@ -126,7 +126,6 @@ void CGUIWindowSystemInfo::FrameMove()
|
||||
SetControlLabel(i++, "%s: %s", 13160, NETWORK_GATEWAY_ADDRESS);
|
||||
SetControlLabel(i++, "%s: %s", 13161, NETWORK_DNS1_ADDRESS);
|
||||
SetControlLabel(i++, "%s: %s", 20307, NETWORK_DNS2_ADDRESS);
|
||||
- SetControlLabel(i++, "%s %s", 13295, SYSTEM_INTERNET_STATE);
|
||||
}
|
||||
else if (m_section == CONTROL_BT_VIDEO)
|
||||
{
|
||||
--
|
||||
1.9.1
|
||||
|
@ -1,39 +0,0 @@
|
||||
From 855160db446fe0059f072b207d53c15ba18d952f Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Thu, 17 Apr 2014 12:12:50 +0300
|
||||
Subject: [PATCH] use udevil to umount
|
||||
|
||||
---
|
||||
xbmc/linux/PosixMountProvider.cpp | 2 +-
|
||||
xbmc/storage/linux/UDevProvider.cpp | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/xbmc/linux/PosixMountProvider.cpp b/xbmc/linux/PosixMountProvider.cpp
|
||||
index 2339709..7001563 100644
|
||||
--- a/xbmc/linux/PosixMountProvider.cpp
|
||||
+++ b/xbmc/linux/PosixMountProvider.cpp
|
||||
@@ -131,7 +131,7 @@ bool CPosixMountProvider::Eject(CStdString mountpath)
|
||||
{
|
||||
// just go ahead and try to umount the disk
|
||||
// if it does umount, life is good, if not, no loss.
|
||||
- std::string cmd = "umount \"" + mountpath + "\"";
|
||||
+ std::string cmd = "udevil umount \"" + mountpath + "\"";
|
||||
int status = system(cmd.c_str());
|
||||
|
||||
if (status == 0)
|
||||
diff --git a/xbmc/storage/linux/UDevProvider.cpp b/xbmc/storage/linux/UDevProvider.cpp
|
||||
index 73aa408..8bd02b6 100644
|
||||
--- a/xbmc/storage/linux/UDevProvider.cpp
|
||||
+++ b/xbmc/storage/linux/UDevProvider.cpp
|
||||
@@ -183,7 +183,7 @@ bool CUDevProvider::Eject(CStdString mountpath)
|
||||
{
|
||||
// just go ahead and try to umount the disk
|
||||
// if it does umount, life is good, if not, no loss.
|
||||
- std::string cmd = "umount \"" + mountpath + "\"";
|
||||
+ std::string cmd = "udevil umount \"" + mountpath + "\"";
|
||||
int status = system(cmd.c_str());
|
||||
|
||||
if (status == 0)
|
||||
--
|
||||
1.9.1
|
||||
|
@ -1,18 +0,0 @@
|
||||
diff --git a/xbmc/interfaces/python/XBPython.cpp b/xbmc/interfaces/python/XBPython.cpp
|
||||
index 01a129e..07b4878 100644
|
||||
--- a/xbmc/interfaces/python/XBPython.cpp
|
||||
+++ b/xbmc/interfaces/python/XBPython.cpp
|
||||
@@ -445,10 +445,9 @@ bool XBPython::InitializeEngine()
|
||||
// at http://docs.python.org/using/cmdline.html#environment-variables
|
||||
|
||||
#if !defined(TARGET_WINDOWS) && !defined(TARGET_ANDROID)
|
||||
- /* PYTHONOPTIMIZE is set off intentionally when using external Python.
|
||||
- Reason for this is because we cannot be sure what version of Python
|
||||
- was used to compile the various Python object files (i.e. .pyo,
|
||||
- .pyc, etc.). */
|
||||
+ // Required for python to find optimized code (pyo) files
|
||||
+ setenv("PYTHONOPTIMIZE", "1", 1);
|
||||
+
|
||||
// check if we are running as real xbmc.app or just binary
|
||||
if (!CUtil::GetFrameworksPath(true).empty())
|
||||
{
|
@ -1,11 +0,0 @@
|
||||
diff -Naur xbmc-12.0.7/userdata/RssFeeds.xml xbmc-12.0.7.patch/userdata/RssFeeds.xml
|
||||
--- xbmc-12.0.7/userdata/RssFeeds.xml 2013-03-15 14:25:26.000000000 +0100
|
||||
+++ xbmc-12.0.7.patch/userdata/RssFeeds.xml 2013-03-15 14:40:54.695338102 +0100
|
||||
@@ -3,6 +3,7 @@
|
||||
<!-- RSS feeds. To have multiple feeds, just add a feed to the set. You can also have multiple sets. !-->
|
||||
<!-- To use different sets in your skin, each must be called from skin with a unique id. !-->
|
||||
<set id="1">
|
||||
+ <feed updateinterval="30">http://feeds.openelec.tv/news</feed>
|
||||
<feed updateinterval="30">http://feeds.xbmc.org/xbmc</feed>
|
||||
</set>
|
||||
</rssfeeds>
|
@ -1,458 +0,0 @@
|
||||
From 0c2eaf5082a30fb06bad553775e805a745d59ee2 Mon Sep 17 00:00:00 2001
|
||||
From: theuni <theuni-nospam@xbmc.org>
|
||||
Date: Tue, 22 Jan 2013 04:09:07 -0500
|
||||
Subject: [PATCH] depends: mark our wrapped functions as used
|
||||
|
||||
otherwise they get stripped when enabling dead code stripping
|
||||
---
|
||||
xbmc/cores/DllLoader/exports/wrapper.c | 138 ++++++++++++++++-----------------
|
||||
1 file changed, 69 insertions(+), 69 deletions(-)
|
||||
|
||||
diff -Naur xbmc-f81d56e/xbmc/cores/DllLoader/exports/wrapper.c xbmc-f81d56e.patch/xbmc/cores/DllLoader/exports/wrapper.c
|
||||
--- xbmc-f81d56e/xbmc/cores/DllLoader/exports/wrapper.c 2013-05-18 12:30:19.000000000 +0200
|
||||
+++ xbmc-f81d56e.patch/xbmc/cores/DllLoader/exports/wrapper.c 2013-05-18 16:55:55.222087716 +0200
|
||||
@@ -115,7 +115,7 @@
|
||||
int dll_setvbuf(FILE *stream, char *buf, int type, size_t size);
|
||||
struct mntent *dll_getmntent(FILE *fp);
|
||||
|
||||
-void *__wrap_dlopen(const char *filename, int flag)
|
||||
+__attribute__((used)) void *__wrap_dlopen(const char *filename, int flag)
|
||||
{
|
||||
#if defined(TARGET_ANDROID)
|
||||
return dll_dlopen(filename, flag);
|
||||
@@ -124,213 +124,213 @@
|
||||
#endif
|
||||
}
|
||||
|
||||
-FILE *__wrap_popen(const char *command, const char *mode)
|
||||
+__attribute__((used)) FILE *__wrap_popen(const char *command, const char *mode)
|
||||
{
|
||||
return dll_popen(command, mode);
|
||||
}
|
||||
|
||||
-void* __wrap_calloc( size_t num, size_t size )
|
||||
+__attribute__((used)) void* __wrap_calloc( size_t num, size_t size )
|
||||
{
|
||||
return dllcalloc(num, size);
|
||||
}
|
||||
|
||||
-void* __wrap_malloc(size_t size)
|
||||
+__attribute__((used)) void* __wrap_malloc(size_t size)
|
||||
{
|
||||
return dllmalloc(size);
|
||||
}
|
||||
|
||||
-void* __wrap_realloc( void *memblock, size_t size )
|
||||
+__attribute__((used)) void* __wrap_realloc( void *memblock, size_t size )
|
||||
{
|
||||
return dllrealloc(memblock, size);
|
||||
}
|
||||
|
||||
-void __wrap_free( void* pPtr )
|
||||
+__attribute__((used)) void __wrap_free( void* pPtr )
|
||||
{
|
||||
dllfree(pPtr);
|
||||
}
|
||||
|
||||
-int __wrap_open(const char *file, int oflag, ...)
|
||||
+__attribute__((used)) int __wrap_open(const char *file, int oflag, ...)
|
||||
{
|
||||
return dll_open(file, oflag);
|
||||
}
|
||||
|
||||
-int __wrap_open64(const char *file, int oflag, ...)
|
||||
+__attribute__((used)) int __wrap_open64(const char *file, int oflag, ...)
|
||||
{
|
||||
return dll_open(file, oflag);
|
||||
}
|
||||
|
||||
-int __wrap_close(int fd)
|
||||
+__attribute__((used)) int __wrap_close(int fd)
|
||||
{
|
||||
return dll_close(fd);
|
||||
}
|
||||
|
||||
-ssize_t __wrap_write(int fd, const void *buf, size_t count)
|
||||
+__attribute__((used)) ssize_t __wrap_write(int fd, const void *buf, size_t count)
|
||||
{
|
||||
return dll_write(fd, buf, count);
|
||||
}
|
||||
|
||||
-ssize_t __wrap_read(int fd, void *buf, size_t count)
|
||||
+__attribute__((used)) ssize_t __wrap_read(int fd, void *buf, size_t count)
|
||||
{
|
||||
return dll_read(fd, buf, count);
|
||||
}
|
||||
|
||||
-__off_t __wrap_lseek(int fildes, __off_t offset, int whence)
|
||||
+__attribute__((used)) __off_t __wrap_lseek(int fildes, __off_t offset, int whence)
|
||||
{
|
||||
return dll_lseek(fildes, offset, whence);
|
||||
}
|
||||
|
||||
-__off64_t __wrap_lseek64(int fildes, __off64_t offset, int whence)
|
||||
+__attribute__((used)) __off64_t __wrap_lseek64(int fildes, __off64_t offset, int whence)
|
||||
{
|
||||
__off64_t seekRes = dll_lseeki64(fildes, offset, whence);
|
||||
return seekRes;
|
||||
}
|
||||
|
||||
-int __wrap_fclose(FILE *fp)
|
||||
+__attribute__((used)) int __wrap_fclose(FILE *fp)
|
||||
{
|
||||
return dll_fclose(fp);
|
||||
}
|
||||
|
||||
-int __wrap_ferror(FILE *stream)
|
||||
+__attribute__((used)) int __wrap_ferror(FILE *stream)
|
||||
{
|
||||
return dll_ferror(stream);
|
||||
}
|
||||
|
||||
-void __wrap_clearerr(FILE *stream)
|
||||
+__attribute__((used)) void __wrap_clearerr(FILE *stream)
|
||||
{
|
||||
return dll_clearerr(stream);
|
||||
}
|
||||
|
||||
-int __wrap_feof(FILE *stream)
|
||||
+__attribute__((used)) int __wrap_feof(FILE *stream)
|
||||
{
|
||||
return dll_feof(stream);
|
||||
}
|
||||
|
||||
-int __wrap_fileno(FILE *stream)
|
||||
+__attribute__((used)) int __wrap_fileno(FILE *stream)
|
||||
{
|
||||
return dll_fileno(stream);
|
||||
}
|
||||
|
||||
-FILE *__wrap_fopen(const char *path, const char *mode)
|
||||
+__attribute__((used)) FILE *__wrap_fopen(const char *path, const char *mode)
|
||||
{
|
||||
return dll_fopen(path, mode);
|
||||
}
|
||||
|
||||
-FILE *__wrap_fopen64(const char *path, const char *mode)
|
||||
+__attribute__((used)) FILE *__wrap_fopen64(const char *path, const char *mode)
|
||||
{
|
||||
return dll_fopen(path, mode);
|
||||
}
|
||||
|
||||
-FILE *__wrap_fdopen(int fildes, const char *mode)
|
||||
+__attribute__((used)) FILE *__wrap_fdopen(int fildes, const char *mode)
|
||||
{
|
||||
return dll_fdopen(fildes, mode);
|
||||
}
|
||||
|
||||
-FILE *__wrap_freopen(const char *path, const char *mode, FILE *stream)
|
||||
+__attribute__((used)) FILE *__wrap_freopen(const char *path, const char *mode, FILE *stream)
|
||||
{
|
||||
return dll_freopen(path, mode, stream);
|
||||
}
|
||||
|
||||
-size_t __wrap_fread(void *ptr, size_t size, size_t nmemb, FILE *stream)
|
||||
+__attribute__((used)) size_t __wrap_fread(void *ptr, size_t size, size_t nmemb, FILE *stream)
|
||||
{
|
||||
return dll_fread(ptr, size, nmemb, stream);
|
||||
}
|
||||
|
||||
-size_t __wrap_fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)
|
||||
+__attribute__((used)) size_t __wrap_fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)
|
||||
{
|
||||
return dll_fwrite(ptr, size, nmemb, stream);
|
||||
}
|
||||
|
||||
-int __wrap_fflush(FILE *stream)
|
||||
+__attribute__((used)) int __wrap_fflush(FILE *stream)
|
||||
{
|
||||
return dll_fflush(stream);
|
||||
}
|
||||
|
||||
-int __wrap_fputc(int c, FILE *stream)
|
||||
+__attribute__((used)) int __wrap_fputc(int c, FILE *stream)
|
||||
{
|
||||
return dll_fputc(c, stream);
|
||||
}
|
||||
|
||||
-int __wrap_fputs(const char *s, FILE *stream)
|
||||
+__attribute__((used)) int __wrap_fputs(const char *s, FILE *stream)
|
||||
{
|
||||
return dll_fputs(s, stream);
|
||||
}
|
||||
|
||||
-int __wrap__IO_putc(int c, FILE *stream)
|
||||
+__attribute__((used)) int __wrap__IO_putc(int c, FILE *stream)
|
||||
{
|
||||
return dll_putc(c, stream);
|
||||
}
|
||||
|
||||
-int __wrap_fseek(FILE *stream, long offset, int whence)
|
||||
+__attribute__((used)) int __wrap_fseek(FILE *stream, long offset, int whence)
|
||||
{
|
||||
return dll_fseek(stream, offset, whence);
|
||||
}
|
||||
|
||||
-int __wrap_fseeko64(FILE *stream, off64_t offset, int whence)
|
||||
+__attribute__((used)) int __wrap_fseeko64(FILE *stream, off64_t offset, int whence)
|
||||
{
|
||||
return dll_fseek64(stream, offset, whence);
|
||||
}
|
||||
|
||||
-long __wrap_ftell(FILE *stream)
|
||||
+__attribute__((used)) long __wrap_ftell(FILE *stream)
|
||||
{
|
||||
return dll_ftell(stream);
|
||||
}
|
||||
|
||||
-off64_t __wrap_ftello64(FILE *stream)
|
||||
+__attribute__((used)) off64_t __wrap_ftello64(FILE *stream)
|
||||
{
|
||||
return dll_ftell64(stream);
|
||||
}
|
||||
|
||||
-void __wrap_rewind(FILE *stream)
|
||||
+__attribute__((used)) void __wrap_rewind(FILE *stream)
|
||||
{
|
||||
dll_rewind(stream);
|
||||
}
|
||||
|
||||
-int __wrap_fgetpos(FILE *stream, fpos_t *pos)
|
||||
+__attribute__((used)) int __wrap_fgetpos(FILE *stream, fpos_t *pos)
|
||||
{
|
||||
return dll_fgetpos(stream, pos);
|
||||
}
|
||||
|
||||
-int __wrap_fgetpos64(FILE *stream, fpos64_t *pos)
|
||||
+__attribute__((used)) int __wrap_fgetpos64(FILE *stream, fpos64_t *pos)
|
||||
{
|
||||
return dll_fgetpos64(stream, pos);
|
||||
}
|
||||
|
||||
-int __wrap_fsetpos(FILE *stream, fpos_t *pos)
|
||||
+__attribute__((used)) int __wrap_fsetpos(FILE *stream, fpos_t *pos)
|
||||
{
|
||||
return dll_fsetpos(stream, pos);
|
||||
}
|
||||
|
||||
-int __wrap_fsetpos64(FILE *stream, fpos64_t *pos)
|
||||
+__attribute__((used)) int __wrap_fsetpos64(FILE *stream, fpos64_t *pos)
|
||||
{
|
||||
return dll_fsetpos64(stream, pos);
|
||||
}
|
||||
|
||||
-DIR * __wrap_opendir(const char *name)
|
||||
+__attribute__((used)) DIR * __wrap_opendir(const char *name)
|
||||
{
|
||||
return dll_opendir(name);
|
||||
}
|
||||
|
||||
-struct dirent * __wrap_readdir(DIR* dirp)
|
||||
+__attribute__((used)) struct dirent * __wrap_readdir(DIR* dirp)
|
||||
{
|
||||
return dll_readdir(dirp);
|
||||
}
|
||||
|
||||
-struct dirent * __wrap_readdir64(DIR* dirp)
|
||||
+__attribute__((used)) struct dirent * __wrap_readdir64(DIR* dirp)
|
||||
{
|
||||
return dll_readdir(dirp);
|
||||
}
|
||||
|
||||
-int __wrap_closedir(DIR* dirp)
|
||||
+__attribute__((used)) int __wrap_closedir(DIR* dirp)
|
||||
{
|
||||
return dll_closedir(dirp);
|
||||
}
|
||||
|
||||
-void __wrap_rewinddir(DIR* dirp)
|
||||
+__attribute__((used)) void __wrap_rewinddir(DIR* dirp)
|
||||
{
|
||||
dll_rewinddir(dirp);
|
||||
}
|
||||
|
||||
-int __wrap_fprintf(FILE *stream, const char *format, ...)
|
||||
+__attribute__((used)) int __wrap_fprintf(FILE *stream, const char *format, ...)
|
||||
{
|
||||
int res;
|
||||
va_list va;
|
||||
@@ -340,12 +340,12 @@
|
||||
return res;
|
||||
}
|
||||
|
||||
-int __wrap_vfprintf(FILE *stream, const char *format, va_list ap)
|
||||
+__attribute__((used)) int __wrap_vfprintf(FILE *stream, const char *format, va_list ap)
|
||||
{
|
||||
return dll_vfprintf(stream, format, ap);
|
||||
}
|
||||
|
||||
-int __wrap_printf(const char *format, ...)
|
||||
+__attribute__((used)) int __wrap_printf(const char *format, ...)
|
||||
{
|
||||
int res;
|
||||
va_list va;
|
||||
@@ -355,42 +355,42 @@
|
||||
return res;
|
||||
}
|
||||
|
||||
-int __wrap_fgetc(FILE *stream)
|
||||
+__attribute__((used)) int __wrap_fgetc(FILE *stream)
|
||||
{
|
||||
return dll_fgetc(stream);
|
||||
}
|
||||
|
||||
-char *__wrap_fgets(char *s, int size, FILE *stream)
|
||||
+__attribute__((used)) char *__wrap_fgets(char *s, int size, FILE *stream)
|
||||
{
|
||||
return dll_fgets(s, size, stream);
|
||||
}
|
||||
|
||||
-int __wrap__IO_getc(FILE *stream)
|
||||
+__attribute__((used)) int __wrap__IO_getc(FILE *stream)
|
||||
{
|
||||
return dll_getc(stream);
|
||||
}
|
||||
|
||||
-int __wrap__IO_getc_unlocked(FILE *stream)
|
||||
+__attribute__((used)) int __wrap__IO_getc_unlocked(FILE *stream)
|
||||
{
|
||||
return dll_getc(stream);
|
||||
}
|
||||
|
||||
-int __wrap_getc_unlocked(FILE *stream)
|
||||
+__attribute__((used)) int __wrap_getc_unlocked(FILE *stream)
|
||||
{
|
||||
return dll_getc(stream);
|
||||
}
|
||||
|
||||
-int __wrap_ungetc(int c, FILE *stream)
|
||||
+__attribute__((used)) int __wrap_ungetc(int c, FILE *stream)
|
||||
{
|
||||
return dll_ungetc(c, stream);
|
||||
}
|
||||
|
||||
-int __wrap_getc(FILE *stream)
|
||||
+__attribute__((used)) int __wrap_getc(FILE *stream)
|
||||
{
|
||||
return dll_getc(stream);
|
||||
}
|
||||
|
||||
-int __wrap_ioctl(int d, unsigned long int request, ...)
|
||||
+__attribute__((used)) int __wrap_ioctl(int d, unsigned long int request, ...)
|
||||
{
|
||||
int res;
|
||||
va_list va;
|
||||
@@ -400,57 +400,57 @@
|
||||
return res;
|
||||
}
|
||||
|
||||
-int __wrap__stat(const char *path, struct _stat *buffer)
|
||||
+__attribute__((used)) int __wrap__stat(const char *path, struct _stat *buffer)
|
||||
{
|
||||
return dll_stat(path, buffer);
|
||||
}
|
||||
|
||||
-int __wrap_stat(const char *path, struct _stat *buffer)
|
||||
+__attribute__((used)) int __wrap_stat(const char *path, struct _stat *buffer)
|
||||
{
|
||||
return dll_stat(path, buffer);
|
||||
}
|
||||
|
||||
-int __wrap___xstat64(int __ver, const char *__filename, struct stat64 *__stat_buf)
|
||||
+__attribute__((used)) int __wrap___xstat64(int __ver, const char *__filename, struct stat64 *__stat_buf)
|
||||
{
|
||||
return dll_stat64(__filename, __stat_buf);
|
||||
}
|
||||
|
||||
-int __wrap___lxstat64(int __ver, const char *__filename, struct stat64 *__stat_buf)
|
||||
+__attribute__((used)) int __wrap___lxstat64(int __ver, const char *__filename, struct stat64 *__stat_buf)
|
||||
{
|
||||
return dll_stat64(__filename, __stat_buf);
|
||||
}
|
||||
|
||||
-void __wrap_flockfile(FILE *file)
|
||||
+__attribute__((used)) void __wrap_flockfile(FILE *file)
|
||||
{
|
||||
dll_flockfile(file);
|
||||
}
|
||||
|
||||
-int __wrap_ftrylockfile(FILE *file)
|
||||
+__attribute__((used)) int __wrap_ftrylockfile(FILE *file)
|
||||
{
|
||||
return dll_ftrylockfile(file);
|
||||
}
|
||||
|
||||
-void __wrap_funlockfile(FILE *file)
|
||||
+__attribute__((used)) void __wrap_funlockfile(FILE *file)
|
||||
{
|
||||
dll_funlockfile(file);
|
||||
}
|
||||
|
||||
-int __wrap___fxstat64(int ver, int fd, struct stat64 *buf)
|
||||
+__attribute__((used)) int __wrap___fxstat64(int ver, int fd, struct stat64 *buf)
|
||||
{
|
||||
return dll_fstat64(fd, buf);
|
||||
}
|
||||
|
||||
-int __wrap_fstat(int fd, struct _stat *buf)
|
||||
+__attribute__((used)) int __wrap_fstat(int fd, struct _stat *buf)
|
||||
{
|
||||
return dll_fstat(fd, buf);
|
||||
}
|
||||
|
||||
-int __wrap_setvbuf(FILE *stream, char *buf, int type, size_t size)
|
||||
+__attribute__((used)) int __wrap_setvbuf(FILE *stream, char *buf, int type, size_t size)
|
||||
{
|
||||
return dll_setvbuf(stream, buf, type, size);
|
||||
}
|
||||
|
||||
-struct mntent *__wrap_getmntent(FILE *fp)
|
||||
+__attribute__((used)) struct mntent *__wrap_getmntent(FILE *fp)
|
||||
{
|
||||
#ifdef _LINUX
|
||||
return dll_getmntent(fp);
|
||||
@@ -464,12 +464,12 @@
|
||||
// thing to actually call our wrapped functions.
|
||||
#if _FORTIFY_SOURCE > 1
|
||||
|
||||
-size_t __wrap___fread_chk(void * ptr, size_t ptrlen, size_t size, size_t n, FILE * stream)
|
||||
+__attribute__((used)) size_t __wrap___fread_chk(void * ptr, size_t ptrlen, size_t size, size_t n, FILE * stream)
|
||||
{
|
||||
return dll_fread(ptr, size, n, stream);
|
||||
}
|
||||
|
||||
-int __wrap___printf_chk(int flag, const char *format, ...)
|
||||
+__attribute__((used)) int __wrap___printf_chk(int flag, const char *format, ...)
|
||||
{
|
||||
int res;
|
||||
va_list va;
|
||||
@@ -479,12 +479,12 @@
|
||||
return res;
|
||||
}
|
||||
|
||||
-int __wrap___vfprintf_chk(FILE* stream, int flag, const char *format, _G_va_list ap)
|
||||
+__attribute__((used)) int __wrap___vfprintf_chk(FILE* stream, int flag, const char *format, _G_va_list ap)
|
||||
{
|
||||
return dll_vfprintf(stream, format, ap);
|
||||
}
|
||||
|
||||
-int __wrap___fprintf_chk(FILE * stream, int flag, const char *format, ...)
|
||||
+__attribute__((used)) int __wrap___fprintf_chk(FILE * stream, int flag, const char *format, ...)
|
||||
{
|
||||
int res;
|
||||
va_list va;
|
||||
@@ -494,12 +494,12 @@
|
||||
return res;
|
||||
}
|
||||
|
||||
-char *__wrap___fgets_chk(char *s, size_t size, int n, FILE *stream)
|
||||
+__attribute__((used)) char *__wrap___fgets_chk(char *s, size_t size, int n, FILE *stream)
|
||||
{
|
||||
return dll_fgets(s, n, stream);
|
||||
}
|
||||
|
||||
-size_t __wrap___read_chk(int fd, void *buf, size_t nbytes, size_t buflen)
|
||||
+__attribute__((used)) size_t __wrap___read_chk(int fd, void *buf, size_t nbytes, size_t buflen)
|
||||
{
|
||||
return dll_read(fd, buf, nbytes);
|
||||
}
|
@ -1,29 +0,0 @@
|
||||
From 4f6188bc2bcee52ab3a150fff336b58c11f8928a Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Sat, 22 Mar 2014 22:18:28 +0200
|
||||
Subject: [PATCH] dont set _NET_WM_STATE_FULLSCREEN
|
||||
|
||||
---
|
||||
xbmc/windowing/X11/WinSystemX11.cpp | 6 ------
|
||||
1 files changed, 0 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/xbmc/windowing/X11/WinSystemX11.cpp b/xbmc/windowing/X11/WinSystemX11.cpp
|
||||
index c95f4ec..d12e050 100644
|
||||
--- a/xbmc/windowing/X11/WinSystemX11.cpp
|
||||
+++ b/xbmc/windowing/X11/WinSystemX11.cpp
|
||||
@@ -903,12 +903,6 @@ bool CWinSystemX11::SetWindow(int width, int height, bool fullscreen, const std:
|
||||
InputOutput, vi->visual,
|
||||
mask, &swa);
|
||||
|
||||
- if (fullscreen && hasWM)
|
||||
- {
|
||||
- Atom fs = XInternAtom(m_dpy, "_NET_WM_STATE_FULLSCREEN", True);
|
||||
- XChangeProperty(m_dpy, m_mainWindow, XInternAtom(m_dpy, "_NET_WM_STATE", True), XA_ATOM, 32, PropModeReplace, (unsigned char *) &fs, 1);
|
||||
- }
|
||||
-
|
||||
// define invisible cursor
|
||||
Pixmap bitmapNoData;
|
||||
XColor black;
|
||||
--
|
||||
1.7.2.5
|
||||
|
@ -1,18 +0,0 @@
|
||||
commit 17807066bc04cd28bba89fd176d4d0f69ead9728
|
||||
Author: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Sat Oct 12 16:18:50 2013 +0300
|
||||
|
||||
disable minimize
|
||||
|
||||
diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
|
||||
index b5d40c0..18bea9d 100644
|
||||
--- a/xbmc/Application.cpp
|
||||
+++ b/xbmc/Application.cpp
|
||||
@@ -5448,7 +5448,6 @@ bool CApplication::SwitchToFullScreen()
|
||||
|
||||
void CApplication::Minimize()
|
||||
{
|
||||
- g_Windowing.Minimize();
|
||||
}
|
||||
|
||||
PLAYERCOREID CApplication::GetCurrentPlayer()
|
@ -1,26 +0,0 @@
|
||||
From 25be1b385303a8114d7e227ffab52a22de42ccd1 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Tue, 26 Nov 2013 20:53:08 +0200
|
||||
Subject: [PATCH] run tzdata-setup on timezone change
|
||||
|
||||
---
|
||||
xbmc/linux/LinuxTimezone.cpp | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/xbmc/linux/LinuxTimezone.cpp b/xbmc/linux/LinuxTimezone.cpp
|
||||
index be7bce6..4000181 100644
|
||||
--- a/xbmc/linux/LinuxTimezone.cpp
|
||||
+++ b/xbmc/linux/LinuxTimezone.cpp
|
||||
@@ -158,6 +158,9 @@ void CLinuxTimezone::OnSettingChanged(const CSetting *setting)
|
||||
const std::string &settingId = setting->GetId();
|
||||
if (settingId == "locale.timezone")
|
||||
{
|
||||
+ const std::string cmd = std::string("sh /usr/lib/openelec/tzdata-setup ") + ((CSettingString*)setting)->GetValue().c_str();
|
||||
+ system(cmd.c_str());
|
||||
+
|
||||
SetTimezone(((CSettingString*)setting)->GetValue());
|
||||
|
||||
CDateTime::ResetTimezoneBias();
|
||||
--
|
||||
1.8.3.2
|
||||
|
@ -1,97 +0,0 @@
|
||||
From 9c1dea43c9b9b66c48d057d3c0e44cd4a807e4dc Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Fri, 20 Dec 2013 00:36:34 +0200
|
||||
Subject: [PATCH] service addons: use a wrapper to setup systemd
|
||||
|
||||
---
|
||||
xbmc/addons/AddonDatabase.cpp | 3 +++
|
||||
xbmc/addons/AddonInstaller.cpp | 10 ++++++++++
|
||||
xbmc/addons/AddonInstaller.h | 2 ++
|
||||
3 files changed, 15 insertions(+)
|
||||
|
||||
diff --git a/xbmc/addons/AddonDatabase.cpp b/xbmc/addons/AddonDatabase.cpp
|
||||
index 4202363..105749f 100644
|
||||
--- a/xbmc/addons/AddonDatabase.cpp
|
||||
+++ b/xbmc/addons/AddonDatabase.cpp
|
||||
@@ -20,6 +20,7 @@
|
||||
|
||||
#include "AddonDatabase.h"
|
||||
#include "addons/AddonManager.h"
|
||||
+#include "addons/AddonInstaller.h"
|
||||
#include "utils/log.h"
|
||||
#include "utils/Variant.h"
|
||||
#include "utils/StringUtils.h"
|
||||
@@ -581,6 +582,7 @@ bool CAddonDatabase::DisableAddon(const CStdString &addonID, bool disable /* = t
|
||||
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(addon);
|
||||
if (service)
|
||||
service->Stop();
|
||||
+ CAddonInstaller::Get().CallOEWrapper(addonID, true);
|
||||
}
|
||||
// restart the pvr manager when disabling a pvr add-on with the pvr manager enabled
|
||||
else if (CAddonMgr::Get().GetAddon(addonID, addon, ADDON_PVRDLL, false) && addon &&
|
||||
@@ -601,6 +603,7 @@ bool CAddonDatabase::DisableAddon(const CStdString &addonID, bool disable /* = t
|
||||
// If the addon is a service, start it
|
||||
if (CAddonMgr::Get().GetAddon(addonID, addon, ADDON_SERVICE, false) && addon && disabled)
|
||||
{
|
||||
+ CAddonInstaller::Get().CallOEWrapper(addonID, false);
|
||||
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(addon);
|
||||
if (service)
|
||||
service->Start();
|
||||
diff --git a/xbmc/addons/AddonInstaller.cpp b/xbmc/addons/AddonInstaller.cpp
|
||||
index 8c9f241..d2f4610 100644
|
||||
--- a/xbmc/addons/AddonInstaller.cpp
|
||||
+++ b/xbmc/addons/AddonInstaller.cpp
|
||||
@@ -70,6 +70,13 @@ CAddonInstaller &CAddonInstaller::Get()
|
||||
return addonInstaller;
|
||||
}
|
||||
|
||||
+void CAddonInstaller::CallOEWrapper(const std::string& ID, bool disable)
|
||||
+{
|
||||
+ char cmd[255];
|
||||
+ snprintf(cmd, sizeof(cmd), "/usr/lib/openelec/systemd-addon-wrapper %s %d", ID.c_str(), disable);
|
||||
+ system(cmd);
|
||||
+}
|
||||
+
|
||||
void CAddonInstaller::OnJobComplete(unsigned int jobID, bool success, CJob* job)
|
||||
{
|
||||
if (success)
|
||||
@@ -586,6 +593,7 @@ bool CAddonInstallJob::OnPreInstall()
|
||||
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(addon);
|
||||
if (service)
|
||||
service->Stop();
|
||||
+ CAddonInstaller::Get().CallOEWrapper(m_addon->ID(), true);
|
||||
CAddonMgr::Get().RemoveAddon(m_addon->ID()); // remove it
|
||||
return running;
|
||||
}
|
||||
@@ -713,6 +721,7 @@ void CAddonInstallJob::OnPostInstall(bool reloadAddon)
|
||||
AddonPtr addon;
|
||||
CAddonMgr::Get().GetAddon(m_addon->ID(), addon);
|
||||
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(addon);
|
||||
+ CAddonInstaller::Get().CallOEWrapper(m_addon->ID(), false);
|
||||
if (service)
|
||||
service->Start();
|
||||
}
|
||||
@@ -794,6 +803,7 @@ bool CAddonUnInstallJob::DoWork()
|
||||
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(m_addon);
|
||||
if (service)
|
||||
service->Stop();
|
||||
+ CAddonInstaller::Get().CallOEWrapper(m_addon->ID(), true);
|
||||
}
|
||||
|
||||
AddonPtr repoPtr = CAddonInstallJob::GetRepoForAddon(m_addon);
|
||||
diff --git a/xbmc/addons/AddonInstaller.h b/xbmc/addons/AddonInstaller.h
|
||||
index 39cab93..2938c7f 100644
|
||||
--- a/xbmc/addons/AddonInstaller.h
|
||||
+++ b/xbmc/addons/AddonInstaller.h
|
||||
@@ -29,6 +29,8 @@ class CAddonInstaller : public IJobCallback
|
||||
public:
|
||||
static CAddonInstaller &Get();
|
||||
|
||||
+ void CallOEWrapper(const std::string& ID, bool disable);
|
||||
+
|
||||
bool IsDownloading() const;
|
||||
void GetInstallList(ADDON::VECADDONS &addons) const;
|
||||
bool GetProgress(const CStdString &addonID, unsigned int &percent) const;
|
||||
--
|
||||
1.8.3.2
|
||||
|
@ -1,169 +0,0 @@
|
||||
From dbc86891d089a2a871be5a8663e8a5a9a1cffb53 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Thu, 5 Jun 2014 18:50:04 +0300
|
||||
Subject: [PATCH] handle SIGTERM
|
||||
|
||||
In some situations, due to deadlocks or crashes, xbmc fails to exit properly in
|
||||
CApplication::Stop(), so g_powerManager.Reboot() / g_powerManager.Powerdown() never gets
|
||||
called, that's a big no-no for openelec as our users can't shutdown or reboot.
|
||||
There are few addons reported to cause this behaviour: trakkt.tv, watchdog, weather.underground.
|
||||
|
||||
I've also noticed that sometimes new threads (FileCache ??) get started AFTER
|
||||
CApplication::Stop() is called, delaying shutdown with 1+ minute (2 curl timeoouts?).
|
||||
The problem seems to be in CJobManager::CancelJobs() but I am too lame to understand where,
|
||||
why, and how to fix it.
|
||||
|
||||
To me, it seems best to let systemd handle it. systemd sends SIGTERM, then waits
|
||||
TimeoutStopSec=xx seconds then sends SIGKILL,s so dont call g_application.Stop() from
|
||||
ApplicationMessenger as it can not be trusted. save the requested exitcode instead
|
||||
(that's required for CEC to switch off the tv) and do it from a simple SIGTERM handler instead.
|
||||
|
||||
CEC thread has enough time (5 seconds in xbmc.service) to switch of the TV after receiving OnQuit.
|
||||
As a side "effect", now guisettings.xml will ALWAYS be saved, even if shutdown / rebooot
|
||||
is requested externaly (ssh, 3rdparty script).
|
||||
---
|
||||
xbmc/Application.cpp | 10 ++++++++--
|
||||
xbmc/Application.h | 1 +
|
||||
xbmc/ApplicationMessenger.cpp | 6 ++++--
|
||||
xbmc/XBApplicationEx.cpp | 1 +
|
||||
xbmc/XBApplicationEx.h | 1 +
|
||||
xbmc/main/main.cpp | 15 +++++++++++++++
|
||||
6 files changed, 30 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
|
||||
index 7f1b764..4441969 100644
|
||||
--- a/xbmc/Application.cpp
|
||||
+++ b/xbmc/Application.cpp
|
||||
@@ -3493,11 +3493,18 @@ bool CApplication::Cleanup()
|
||||
}
|
||||
}
|
||||
|
||||
+void CApplication::SetExitCode(int exitCode)
|
||||
+{
|
||||
+ // save it for CEC
|
||||
+ m_ExitCode = exitCode;
|
||||
+ m_ExitCodeSet = true;
|
||||
+}
|
||||
+
|
||||
void CApplication::Stop(int exitCode)
|
||||
{
|
||||
try
|
||||
{
|
||||
- CVariant vExitCode(exitCode);
|
||||
+ CVariant vExitCode(m_ExitCode);
|
||||
CAnnouncementManager::Get().Announce(System, "xbmc", "OnQuit", vExitCode);
|
||||
|
||||
SaveFileState(true);
|
||||
@@ -3521,7 +3528,6 @@ void CApplication::Stop(int exitCode)
|
||||
|
||||
m_bStop = true;
|
||||
m_AppFocused = false;
|
||||
- m_ExitCode = exitCode;
|
||||
CLog::Log(LOGNOTICE, "stop all");
|
||||
|
||||
// cancel any jobs from the jobmanager
|
||||
diff --git a/xbmc/Application.h b/xbmc/Application.h
|
||||
index 2243f15..97fb316 100644
|
||||
--- a/xbmc/Application.h
|
||||
+++ b/xbmc/Application.h
|
||||
@@ -149,6 +149,7 @@ public:
|
||||
void StartPVRManager(bool bOpenPVRWindow = false);
|
||||
void StopPVRManager();
|
||||
bool IsCurrentThread() const;
|
||||
+ void SetExitCode(int exitCode);
|
||||
void Stop(int exitCode);
|
||||
void RestartApp();
|
||||
void UnloadSkin(bool forReload = false);
|
||||
diff --git a/xbmc/ApplicationMessenger.cpp b/xbmc/ApplicationMessenger.cpp
|
||||
index 3524e89..54a15da 100644
|
||||
--- a/xbmc/ApplicationMessenger.cpp
|
||||
+++ b/xbmc/ApplicationMessenger.cpp
|
||||
@@ -259,13 +259,14 @@ void CApplicationMessenger::ProcessMessage(ThreadMessage *pMsg)
|
||||
|
||||
case TMSG_POWERDOWN:
|
||||
{
|
||||
- g_application.Stop(EXITCODE_POWERDOWN);
|
||||
+ g_application.SetExitCode(EXITCODE_POWERDOWN);
|
||||
g_powerManager.Powerdown();
|
||||
}
|
||||
break;
|
||||
|
||||
case TMSG_QUIT:
|
||||
{
|
||||
+ g_application.SetExitCode(EXITCODE_QUIT);
|
||||
g_application.Stop(EXITCODE_QUIT);
|
||||
}
|
||||
break;
|
||||
@@ -287,7 +288,7 @@ void CApplicationMessenger::ProcessMessage(ThreadMessage *pMsg)
|
||||
case TMSG_RESTART:
|
||||
case TMSG_RESET:
|
||||
{
|
||||
- g_application.Stop(EXITCODE_REBOOT);
|
||||
+ g_application.SetExitCode(EXITCODE_REBOOT);
|
||||
g_powerManager.Reboot();
|
||||
}
|
||||
break;
|
||||
@@ -295,6 +296,7 @@ void CApplicationMessenger::ProcessMessage(ThreadMessage *pMsg)
|
||||
case TMSG_RESTARTAPP:
|
||||
{
|
||||
#if defined(TARGET_WINDOWS) || defined(TARGET_LINUX)
|
||||
+ g_application.SetExitCode(EXITCODE_RESTARTAPP);
|
||||
g_application.Stop(EXITCODE_RESTARTAPP);
|
||||
#endif
|
||||
}
|
||||
diff --git a/xbmc/XBApplicationEx.cpp b/xbmc/XBApplicationEx.cpp
|
||||
index ad6a145..6058938 100644
|
||||
--- a/xbmc/XBApplicationEx.cpp
|
||||
+++ b/xbmc/XBApplicationEx.cpp
|
||||
@@ -40,6 +40,7 @@ CXBApplicationEx::CXBApplicationEx()
|
||||
m_bStop = false;
|
||||
m_AppFocused = true;
|
||||
m_ExitCode = EXITCODE_QUIT;
|
||||
+ m_ExitCodeSet = false;
|
||||
m_renderGUI = false;
|
||||
}
|
||||
|
||||
diff --git a/xbmc/XBApplicationEx.h b/xbmc/XBApplicationEx.h
|
||||
index c46cba1..ed3f35f 100644
|
||||
--- a/xbmc/XBApplicationEx.h
|
||||
+++ b/xbmc/XBApplicationEx.h
|
||||
@@ -40,6 +40,7 @@ public:
|
||||
// Variables for timing
|
||||
bool m_bStop;
|
||||
int m_ExitCode;
|
||||
+ bool m_ExitCodeSet;
|
||||
bool m_AppFocused;
|
||||
bool m_renderGUI;
|
||||
|
||||
diff --git a/xbmc/main/main.cpp b/xbmc/main/main.cpp
|
||||
index ec86426..ad8fe6e 100644
|
||||
--- a/xbmc/main/main.cpp
|
||||
+++ b/xbmc/main/main.cpp
|
||||
@@ -40,9 +40,24 @@
|
||||
#include "input/linux/LIRC.h"
|
||||
#endif
|
||||
#include "XbmcContext.h"
|
||||
+#include "Application.h"
|
||||
+
|
||||
+void xbmc_term_handler(int signum)
|
||||
+{
|
||||
+ CLog::Log(LOGINFO, "Received SIGTERM...");
|
||||
+ if (!g_application.m_ExitCodeSet)
|
||||
+ g_application.SetExitCode(EXITCODE_RESTARTAPP);
|
||||
+ g_application.Stop(EXITCODE_RESTARTAPP);
|
||||
+}
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
+ // SIGTERM handler
|
||||
+ struct sigaction action;
|
||||
+ memset(&action, 0, sizeof(struct sigaction));
|
||||
+ action.sa_handler = xbmc_term_handler;
|
||||
+ sigaction(SIGTERM, &action, NULL);
|
||||
+
|
||||
// set up some xbmc specific relationships
|
||||
XBMC::Context context;
|
||||
|
||||
--
|
||||
1.9.1
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff -Naur xbmc-13.alpha-536cf62/system/settings/settings.xml xbmc-13.alpha-536cf62.patch/system/settings/settings.xml
|
||||
--- xbmc-13.alpha-536cf62/system/settings/settings.xml 2014-01-29 18:31:46.000000000 +0100
|
||||
+++ xbmc-13.alpha-536cf62.patch/system/settings/settings.xml 2014-01-31 13:12:46.789297639 +0100
|
||||
@@ -91,7 +91,7 @@
|
||||
</group>
|
||||
<group id="2">
|
||||
<setting id="lookandfeel.enablerssfeeds" type="boolean" label="13305" help="36111">
|
||||
- <level>1</level>
|
||||
+ <level>0</level>
|
||||
<default>true</default>
|
||||
<control type="toggle" />
|
||||
</setting>
|
@ -1,29 +0,0 @@
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
# PATH
|
||||
for addon in /storage/.xbmc/addons/*/bin /usr/lib/xbmc/addons/*/bin; do
|
||||
[ -d "$addon" ] && PATH="$PATH:$addon"
|
||||
done
|
||||
export PATH
|
||||
|
||||
# LD_LIBRARY_PATH
|
||||
for addon in /storage/.xbmc/addons/*/lib /usr/lib/xbmc/addons/*/lib; do
|
||||
[ -d "$addon" ] && LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$addon"
|
||||
done
|
||||
export LD_LIBRARY_PATH
|
@ -1,40 +0,0 @@
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
oe_setup_addon() {
|
||||
if [ ! -z $1 ] ; then
|
||||
DEF="/storage/.xbmc/addons/$1/settings-default.xml"
|
||||
CUR="/storage/.xbmc/userdata/addon_data/$1/settings.xml"
|
||||
|
||||
# export some useful variables
|
||||
ADDON_DIR="$HOME/.xbmc/addons/$1"
|
||||
ADDON_HOME="$HOME/.xbmc/userdata/addon_data/$1"
|
||||
ADDON_LOG_FILE="$ADDON_HOME/service.log"
|
||||
|
||||
[ ! -d $ADDON_HOME ] && mkdir -p $ADDON_HOME
|
||||
|
||||
# copy defaults
|
||||
if [ -f "$DEF" -a ! -f "$CUR" ] ; then
|
||||
cp "$DEF" "$CUR"
|
||||
fi
|
||||
|
||||
# parse config
|
||||
[ -f "$DEF" ] && eval $(cat "$DEF" | awk -F\" '{print $2"=\""$4"\""}' | sed '/^=/d')
|
||||
[ -f "$CUR" ] && eval $(cat "$CUR" | awk -F\" '{print $2"=\""$4"\""}' | sed '/^=/d')
|
||||
fi
|
||||
}
|
@ -1,67 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
# inspired by
|
||||
# https://github.com/xtranophilist/gnome-shell-extension-cpu-temperature/blob/master/extension.js
|
||||
|
||||
TEMP=0
|
||||
|
||||
if [ $(basename "$0") = "gputemp" -o "$1" = "gpu" ]; then
|
||||
if which lspci >/dev/null; then
|
||||
if lspci -n | grep 0300 | grep -q 10de; then
|
||||
[ -x /usr/bin/nvidia-smi ] && TEMP=`/usr/bin/nvidia-smi -q -x | grep '<gpu_temp>' | awk '{ print $1 }' | sed 's,<gpu_temp>,,g'`
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$1" = "cpu" -o "$TEMP" = "0" ]; then
|
||||
if [ -f /sys/class/hwmon/hwmon1/temp1_input ]; then
|
||||
# used on Asus systems (ie. AT5IONT-I)
|
||||
TEMP=`cat /sys/class/hwmon/hwmon1/temp1_input`
|
||||
elif [ -f /sys/devices/platform/coretemp.0/temp1_input ]; then
|
||||
# used with coretemp
|
||||
TEMP=`cat /sys/devices/platform/coretemp.0/temp1_input`
|
||||
elif [ -f /sys/devices/platform/coretemp.0/temp2_input ]; then
|
||||
# used with coretemp
|
||||
TEMP=`cat /sys/devices/platform/coretemp.0/temp2_input`
|
||||
elif [ -f /sys/bus/acpi/devices/LNXTHERM\:00/thermal_zone/temp ]; then
|
||||
# used on some intel systems
|
||||
TEMP=`cat /sys/bus/acpi/devices/LNXTHERM\:00/thermal_zone/temp`
|
||||
elif [ -f /sys/devices/virtual/thermal/thermal_zone0/temp ]; then
|
||||
# used on some intel systems
|
||||
TEMP=`cat /sys/devices/virtual/thermal/thermal_zone0/temp`
|
||||
elif [ -f /sys/class/hwmon/hwmon0/temp1_input ]; then
|
||||
# hwmon for new 2.6.39, 3.0 linux kernels
|
||||
TEMP=`cat /sys/class/hwmon/hwmon0/temp1_input`
|
||||
elif [ -f /sys/class/hwmon/hwmon0/device/temp1_input ]; then
|
||||
# used on AMD systems
|
||||
TEMP=`cat /sys/class/hwmon/hwmon0/device/temp1_input`
|
||||
elif [ -f /sys/class/hwmon/hwmon0/device/temp2_input ]; then
|
||||
# used on ION systems
|
||||
TEMP=`cat /sys/class/hwmon/hwmon0/device/temp2_input`
|
||||
elif [ -f /sys/class/thermal/thermal_zone0/temp ]; then
|
||||
# used on RaspberryPi
|
||||
TEMP=`cat /sys/class/thermal/thermal_zone0/temp`
|
||||
fi
|
||||
|
||||
TEMP="$(( $TEMP / 1000 ))"
|
||||
fi
|
||||
|
||||
echo "${TEMP} C"
|
@ -1,26 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
if [ -f /sys/class/rtc/rtc0/wakealarm ]; then
|
||||
logger -t setwakeup.sh "### Setting system wakeup time ###"
|
||||
echo 0 > /sys/class/rtc/rtc0/wakealarm
|
||||
echo $1 > /sys/class/rtc/rtc0/wakealarm
|
||||
logger -t setwakeup.sh "### $(cat /proc/driver/rtc) ###"
|
||||
fi
|
@ -1,34 +0,0 @@
|
||||
#!/bin/sh
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
if [ ! -d /storage/.config/system.d ] ; then
|
||||
mkdir -p /storage/.config/system.d
|
||||
fi
|
||||
|
||||
if [ -f "/storage/.xbmc/addons/$1/system.d/$1.service" ] ; then
|
||||
if [ $2 -eq 1 ] ; then
|
||||
# disable = true: cleanup
|
||||
systemctl stop "$1.service"
|
||||
systemctl disable "/storage/.xbmc/addons/$1/system.d/$1.service"
|
||||
else
|
||||
# disable = false: setup
|
||||
systemctl enable "/storage/.xbmc/addons/$1/system.d/$1.service"
|
||||
systemctl start "$1.service"
|
||||
fi
|
||||
fi
|
@ -1,26 +0,0 @@
|
||||
#!/bin/sh
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
if [ -e /run/lirc/lircd.irtrans ]; then
|
||||
XBMC_ARGS="--lircdev /run/lirc/lircd.irtrans"
|
||||
else
|
||||
XBMC_ARGS="--lircdev /run/lirc/lircd"
|
||||
fi
|
||||
|
||||
echo "XBMC_ARGS=\"$XBMC_ARGS\"" > /run/openelec/xbmc.conf
|
@ -1,27 +0,0 @@
|
||||
#!/bin/sh
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
# hack: make addon-bins executable
|
||||
chmod +x /storage/.xbmc/addons/*/bin/*
|
||||
|
||||
# hack: update RSSnews.xml in userdata
|
||||
if [ -f /storage/.xbmc/userdata/RssFeeds.xml ]; then
|
||||
sed -e "s,http://openelec.tv/news?format=feed&type=rss,http://feeds.openelec.tv/news,g" \
|
||||
-i /storage/.xbmc/userdata/RssFeeds.xml
|
||||
fi
|
@ -1,85 +0,0 @@
|
||||
#!/bin/sh
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
. /etc/profile
|
||||
|
||||
#
|
||||
# setup XBMC sources
|
||||
#
|
||||
|
||||
if [ ! -f $HOME/.xbmc/userdata/sources.xml ]; then
|
||||
if [ -f /usr/share/xbmc/config/sources.xml ]; then
|
||||
# include project specific sources
|
||||
cp /usr/share/xbmc/config/sources.xml $HOME/.xbmc/userdata
|
||||
else
|
||||
cat > $HOME/.xbmc/userdata/sources.xml << EOF
|
||||
<sources>
|
||||
<video>
|
||||
<default pathversion="1"></default>
|
||||
<source>
|
||||
<name>Videos</name>
|
||||
<path pathversion="1">$HOME/videos/</path>
|
||||
</source>
|
||||
<source>
|
||||
<name>TV Shows</name>
|
||||
<path pathversion="1">$HOME/tvshows/</path>
|
||||
</source>
|
||||
</video>
|
||||
<music>
|
||||
<default pathversion="1"></default>
|
||||
<source>
|
||||
<name>Music</name>
|
||||
<path pathversion="1">$HOME/music/</path>
|
||||
</source>
|
||||
</music>
|
||||
<pictures>
|
||||
<default pathversion="1"></default>
|
||||
<source>
|
||||
<name>Pictures</name>
|
||||
<path pathversion="1">$HOME/pictures/</path>
|
||||
</source>
|
||||
</pictures>
|
||||
</sources>
|
||||
EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
#
|
||||
# common setup guisettings
|
||||
#
|
||||
|
||||
if [ ! -f $HOME/.xbmc/userdata/guisettings.xml ] ; then
|
||||
echo "<settings>" > $HOME/.xbmc/userdata/guisettings.xml
|
||||
|
||||
cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF
|
||||
<debug>
|
||||
<screenshotpath pathversion="1">$HOME/screenshots/</screenshotpath>
|
||||
</debug>
|
||||
EOF
|
||||
|
||||
#
|
||||
# include project specific options
|
||||
#
|
||||
|
||||
if [ -f /usr/share/xbmc/config/guisettings.xml ]; then
|
||||
cat /usr/share/xbmc/config/guisettings.xml >> $HOME/.xbmc/userdata/guisettings.xml
|
||||
fi
|
||||
|
||||
echo "</settings>" >> $HOME/.xbmc/userdata/guisettings.xml
|
||||
fi
|
@ -1,30 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
. /etc/profile
|
||||
|
||||
# see https://wiki.archlinux.org/index.php/Power_Management#Hooks_in_.2Fusr.2Flib.2Fsystemd.2Fsystem-sleep
|
||||
|
||||
for script in $HOME/.xbmc/addons/*/sleep.d/*.power; do
|
||||
progress "running addon sleep script $script ($@)..."
|
||||
sh $script $@
|
||||
done
|
||||
|
||||
exit 0
|
@ -1,32 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# This file is part of OpenELEC - http://www.openelec.tv
|
||||
# Copyright (C) 2009-2013 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/>.
|
||||
################################################################################
|
||||
|
||||
. /etc/profile
|
||||
|
||||
# see https://wiki.archlinux.org/index.php/Power_Management#Hooks_in_.2Fusr.2Flib.2Fsystemd.2Fsystem-sleep
|
||||
|
||||
for script in $HOME/.config/sleep.d/*.power; do
|
||||
if [ -f $script ]; then
|
||||
progress "running custom sleep script $script ($@)..."
|
||||
sh $script $@
|
||||
fi
|
||||
done
|
||||
|
||||
exit 0
|
@ -1,46 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
. /etc/profile
|
||||
|
||||
run_scripts()
|
||||
{
|
||||
list_scripts $1
|
||||
for script in $SCRIPTS ; do
|
||||
progress "running sleep script $script ($1)..."
|
||||
sh /usr/lib/systemd/system-sleep.serial/$script $1
|
||||
done
|
||||
}
|
||||
|
||||
list_scripts()
|
||||
{
|
||||
case $1 in
|
||||
pre)
|
||||
SCRIPTS=$(ls /usr/lib/systemd/system-sleep.serial/ | sort)
|
||||
;;
|
||||
post)
|
||||
SCRIPTS=$(ls /usr/lib/systemd/system-sleep.serial/ | sort -r)
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
run_scripts $1
|
||||
|
||||
exit 0
|
Binary file not shown.
Before Width: | Height: | Size: 71 KiB |
Binary file not shown.
Before Width: | Height: | Size: 93 KiB |
@ -1,13 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC user autostart script
|
||||
Before=xbmc.service
|
||||
After=graphical.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment=HOME=/storage
|
||||
ExecStart=-/bin/sh -c ". /etc/profile; exec /bin/sh /storage/.config/autostart.sh"
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=xbmc.service
|
@ -1,13 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC clean debug logs
|
||||
ConditionKernelCommandLine=!debugging
|
||||
ConditionPathExists=!/storage/.cache/debug.openelec
|
||||
Before=xbmc.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=-/bin/sh -c 'rm -rf /storage/.xbmc/userdata/addon_data/*/*.log /storage/.xbmc/userdata/addon_data/*/log/*'
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=xbmc.service
|
@ -1,12 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC configfile writer
|
||||
Before=xbmc.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment=HOME=/storage
|
||||
ExecStart=/usr/lib/xbmc/xbmc-config
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=xbmc.service
|
@ -1,12 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC hacks
|
||||
Before=xbmc.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment=HOME=/storage
|
||||
ExecStart=/usr/lib/xbmc/xbmc-hacks
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=xbmc.service
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC halt script
|
||||
After=xbmc.service
|
||||
Before=systemd-halt.service
|
||||
DefaultDependencies=no
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment=HOME=/storage
|
||||
ExecStart=-/bin/sh /storage/.config/shutdown.sh halt
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=halt.target
|
@ -1,13 +0,0 @@
|
||||
[Unit]
|
||||
Description=LIRC sleep hook
|
||||
Before=sleep.target
|
||||
StopWhenUnneeded=yes
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
ExecStart=-/usr/bin/xbmc-send --host=127.0.0.1 -a "LIRC.Stop"
|
||||
ExecStop=-/usr/bin/xbmc-send --host=127.0.0.1 -a "LIRC.Start"
|
||||
|
||||
[Install]
|
||||
WantedBy=sleep.target
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC poweroff script
|
||||
After=xbmc.service
|
||||
Before=systemd-poweroff.service
|
||||
DefaultDependencies=no
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment=HOME=/storage
|
||||
ExecStart=-/bin/sh /storage/.config/shutdown.sh poweroff
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=poweroff.target
|
@ -1,14 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC reboot script
|
||||
After=xbmc.service
|
||||
Before=systemd-reboot.service
|
||||
DefaultDependencies=no
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment=HOME=/storage
|
||||
ExecStart=-/bin/sh /storage/.config/shutdown.sh reboot
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=reboot.target
|
@ -1,12 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC sources Setup
|
||||
Before=xbmc.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
Environment=HOME=/storage
|
||||
ExecStart=/usr/lib/xbmc/xbmc-sources
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=xbmc.service
|
@ -1,17 +0,0 @@
|
||||
[Unit]
|
||||
Description=Wait on network
|
||||
After=connman.service
|
||||
Before=xorg.service fbset.service
|
||||
|
||||
ConditionPathExists=/storage/.cache/openelec/network_wait
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
EnvironmentFile=/storage/.cache/openelec/network_wait
|
||||
ExecStartPre=/bin/sh -c 'echo "waiting on Network to come online ... (max. $WAIT_NETWORK_TIME sec.)"
|
||||
ExecStart=/usr/bin/cm-online ${WAIT_NETWORK_TIME}
|
||||
StandardOutput=tty
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=xbmc.service
|
@ -1,21 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC Media Center
|
||||
After=graphical.target
|
||||
Requires=graphical.target
|
||||
|
||||
[Service]
|
||||
Environment=DISPLAY=:0.0
|
||||
Environment=SDL_MOUSE_RELATIVE=0
|
||||
Environment=HOME=/storage
|
||||
EnvironmentFile=-/run/openelec/xbmc.conf
|
||||
EnvironmentFile=-/run/openelec/debug/xbmc.conf
|
||||
ExecStart=/bin/sh -c ". /etc/profile; exec /usr/lib/xbmc/xbmc.bin --standalone -fs $XBMC_ARGS $XBMC_DEBUG"
|
||||
# keep KillMode=process unless there is no good reason to switch to cgroup
|
||||
KillMode=process
|
||||
TimeoutStopSec=5
|
||||
Restart=always
|
||||
RestartSec=2
|
||||
StartLimitInterval=0
|
||||
|
||||
[Install]
|
||||
WantedBy=xbmc.target
|
@ -1,9 +0,0 @@
|
||||
[Unit]
|
||||
Description=XBMC Mediacenter Interface
|
||||
Requires=multi-user.target graphical.target
|
||||
After=graphical.target
|
||||
Conflicts=rescue.target
|
||||
AllowIsolate=yes
|
||||
|
||||
[Install]
|
||||
Alias=default.target
|
@ -17,13 +17,14 @@
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="xbmc"
|
||||
PKG_VERSION="13-6d3bb09"
|
||||
PKG_VERSION="14-67f025d"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.xbmc.org"
|
||||
PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain boost Python zlib bzip2 systemd pciutils lzo pcre swig:host libass enca curl rtmpdump fontconfig fribidi gnutls tinyxml libjpeg-turbo libpng tiff freetype jasper libmad libsamplerate libogg libcdio libmodplug flac libmpeg2 taglib libxml2 libxslt yajl sqlite libvorbis"
|
||||
PKG_DEPENDS_TARGET="toolchain boost Python zlib bzip2 systemd pciutils lzo pcre swig:host libass enca curl rtmpdump fontconfig fribidi tinyxml libjpeg-turbo libpng tiff freetype jasper libogg libcdio libmodplug libmpeg2 taglib libxml2 libxslt yajl sqlite libvorbis ffmpeg xbmc:host"
|
||||
PKG_DEPENDS_HOST="toolchain"
|
||||
PKG_PRIORITY="optional"
|
||||
PKG_SECTION="mediacenter"
|
||||
PKG_SHORTDESC="xbmc: XBMC Mediacenter"
|
||||
@ -176,13 +177,6 @@ if [ "$FAAC_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET faac"
|
||||
fi
|
||||
|
||||
if [ "$ENCODER_LAME" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET lame"
|
||||
XBMC_LAMEENC="--enable-libmp3lame"
|
||||
else
|
||||
XBMC_LAMEENC="--disable-libmp3lame"
|
||||
fi
|
||||
|
||||
if [ "$BLURAY_SUPPORT" = yes ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libbluray"
|
||||
XBMC_BLURAY="--enable-libbluray"
|
||||
@ -301,11 +295,6 @@ else
|
||||
XBMC_CRYSTALHD="--disable-crystalhd"
|
||||
fi
|
||||
|
||||
if [ "$TARGET_ARCH" = "i386" -o "$TARGET_ARCH" = "x86_64" ]; then
|
||||
# TODO: hack to for including FM patch on x86, rework this in OpenELEC-5.0
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET ffmpeg"
|
||||
fi
|
||||
|
||||
export CXX_FOR_BUILD="$HOST_CXX"
|
||||
export CC_FOR_BUILD="$HOST_CC"
|
||||
export CXXFLAGS_FOR_BUILD="$HOST_CXXFLAGS"
|
||||
@ -320,8 +309,6 @@ export ac_python_version="$PYTHON_VERSION"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="gl_cv_func_gettimeofday_clobber=no \
|
||||
ac_cv_lib_bluetooth_hci_devid=no \
|
||||
--with-arch=$TARGET_ARCH \
|
||||
--with-cpu=$TARGET_CPU \
|
||||
--disable-debug \
|
||||
--disable-optimizations \
|
||||
$XBMC_OPENGL \
|
||||
@ -331,8 +318,6 @@ PKG_CONFIGURE_OPTS_TARGET="gl_cv_func_gettimeofday_clobber=no \
|
||||
$XBMC_VDPAU \
|
||||
$XBMC_VAAPI \
|
||||
$XBMC_CRYSTALHD \
|
||||
--disable-xvba \
|
||||
--disable-vdadecoder \
|
||||
--disable-vtbdecoder \
|
||||
--disable-tegra \
|
||||
--disable-profiling \
|
||||
@ -356,8 +341,6 @@ PKG_CONFIGURE_OPTS_TARGET="gl_cv_func_gettimeofday_clobber=no \
|
||||
$XBMC_AFP \
|
||||
--enable-libvorbisenc \
|
||||
--disable-libcap \
|
||||
--enable-ffmpeg-libvorbis \
|
||||
$XBMC_LAMEENC \
|
||||
$XBMC_DVDCSS \
|
||||
--disable-mid \
|
||||
--disable-hal \
|
||||
@ -372,11 +355,24 @@ PKG_CONFIGURE_OPTS_TARGET="gl_cv_func_gettimeofday_clobber=no \
|
||||
$XBMC_WEBSERVER \
|
||||
$XBMC_OPTICAL \
|
||||
$XBMC_BLURAY \
|
||||
--enable-texturepacker --with-texturepacker-root="$ROOT/$TOOLCHAIN" \
|
||||
--disable-external-libraries \
|
||||
--enable-texturepacker \
|
||||
$XBMC_CODEC \
|
||||
$XBMC_PLAYER"
|
||||
|
||||
pre_configure_host() {
|
||||
# xbmc fails to build in subdirs
|
||||
cd $ROOT/$PKG_BUILD
|
||||
rm -rf .$HOST_NAME
|
||||
}
|
||||
|
||||
make_host() {
|
||||
make -C tools/depends/native/JsonSchemaBuilder
|
||||
}
|
||||
|
||||
makeinstall_host() {
|
||||
cp -PR tools/depends/native/JsonSchemaBuilder/native/JsonSchemaBuilder $ROOT/$TOOLCHAIN/bin
|
||||
}
|
||||
|
||||
pre_build_target() {
|
||||
# adding fake Makefile for stripped skin
|
||||
mkdir -p $PKG_BUILD/addons/skin.confluence/media
|
||||
@ -400,6 +396,8 @@ pre_configure_target() {
|
||||
export CFLAGS="$CFLAGS $XBMC_CFLAGS"
|
||||
export CXXFLAGS="$CXXFLAGS $XBMC_CXXFLAGS"
|
||||
export LIBS="$LIBS -lz"
|
||||
|
||||
export JSON_BUILDER=$ROOT/$TOOLCHAIN/bin/JsonSchemaBuilder
|
||||
}
|
||||
|
||||
make_target() {
|
||||
@ -516,5 +514,4 @@ post_install() {
|
||||
enable_service xbmc-waitonnetwork.service
|
||||
enable_service xbmc.service
|
||||
enable_service xbmc-lirc-suspend.service
|
||||
enable_service display-manager.service
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,13 +0,0 @@
|
||||
diff --git a/xbmc/windowing/WinEventsX11.cpp b/xbmc/windowing/WinEventsX11.cpp
|
||||
index a5b4ba2..3586a6a 100644
|
||||
--- a/xbmc/windowing/WinEventsX11.cpp
|
||||
+++ b/xbmc/windowing/WinEventsX11.cpp
|
||||
@@ -731,7 +731,7 @@ XBMCKey CWinEventsX11Imp::LookupXbmcKeySym(KeySym keysym)
|
||||
|
||||
// try ascii mappings
|
||||
if (keysym>>8 == 0x00)
|
||||
- return (XBMCKey)(keysym & 0xFF);
|
||||
+ return (XBMCKey)tolower(keysym & 0xFF);
|
||||
|
||||
return (XBMCKey)keysym;
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
diff -Naur xbmc-master-14-5ec51aa.orig/system/keymaps/joystick.Ouya.Controller.xml xbmc-master-14-5ec51aa/system/keymaps/joystick.Ouya.Controller.xml
|
||||
--- xbmc-master-14-5ec51aa.orig/system/keymaps/joystick.Ouya.Controller.xml 1969-12-31 16:00:00.000000000 -0800
|
||||
+++ xbmc-master-14-5ec51aa/system/keymaps/joystick.Ouya.Controller.xml 2014-06-06 16:31:54.812044875 -0700
|
||||
diff -Naur xbmc-14-5ec51aa.orig/system/keymaps/joystick.Ouya.Controller.xml xbmc-14-5ec51aa/system/keymaps/joystick.Ouya.Controller.xml
|
||||
--- xbmc-14-5ec51aa.orig/system/keymaps/joystick.Ouya.Controller.xml 1969-12-31 16:00:00.000000000 -0800
|
||||
+++ xbmc-14-5ec51aa/system/keymaps/joystick.Ouya.Controller.xml 2014-06-06 16:31:54.812044875 -0700
|
||||
@@ -0,0 +1,334 @@
|
||||
+<!-- Joystick Name: OUYA Game Controller -->
|
||||
+<!-- created by: N3MIS15 on the xbmc forum -->
|
||||
|
@ -1,6 +1,6 @@
|
||||
diff -Naur xbmc-master-14-5ec51aa.orig/system/keymaps/joystick.PS4.Controller.xml xbmc-master-14-5ec51aa/system/keymaps/joystick.PS4.Controller.xml
|
||||
--- xbmc-master-14-5ec51aa.orig/system/keymaps/joystick.PS4.Controller.xml 1969-12-31 16:00:00.000000000 -0800
|
||||
+++ xbmc-master-14-5ec51aa/system/keymaps/joystick.PS4.Controller.xml 2014-06-06 16:53:33.786191904 -0700
|
||||
diff -Naur xbmc-14-5ec51aa.orig/system/keymaps/joystick.PS4.Controller.xml xbmc-14-5ec51aa/system/keymaps/joystick.PS4.Controller.xml
|
||||
--- xbmc-14-5ec51aa.orig/system/keymaps/joystick.PS4.Controller.xml 1969-12-31 16:00:00.000000000 -0800
|
||||
+++ xbmc-14-5ec51aa/system/keymaps/joystick.PS4.Controller.xml 2014-06-06 16:53:33.786191904 -0700
|
||||
@@ -0,0 +1,324 @@
|
||||
+<!-- Joystick Name: Wireless Controller (PS4) -->
|
||||
+
|
||||
|
@ -1,17 +1,6 @@
|
||||
diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdcss/src/libdvdcss.pc.in xbmc-pvr-3513480.patch/lib/libdvd/libdvdcss/src/libdvdcss.pc.in
|
||||
--- xbmc-pvr-3513480/lib/libdvd/libdvdcss/src/libdvdcss.pc.in 2011-04-25 02:36:42.000000000 +0200
|
||||
+++ xbmc-pvr-3513480.patch/lib/libdvd/libdvdcss/src/libdvdcss.pc.in 2011-04-25 05:01:20.091837122 +0200
|
||||
@@ -6,5 +6,5 @@
|
||||
Name: libdvdcss
|
||||
Description: DVD access and decryption library.
|
||||
Version: @VERSION@
|
||||
-Libs: -L${libdir} -ldvdcss
|
||||
-Cflags: -I{includedir} -I${includedir}/@PACKAGE@
|
||||
+Libs: -ldvdcss
|
||||
+Cflags: -I.
|
||||
diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh xbmc-pvr-3513480.patch/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh
|
||||
--- xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh 2011-04-25 02:36:42.000000000 +0200
|
||||
+++ xbmc-pvr-3513480.patch/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh 2011-04-25 05:01:20.549828701 +0200
|
||||
diff -Naur xbmc-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh xbmc-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh
|
||||
--- xbmc-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh 2014-05-01 17:54:59.643325427 +0200
|
||||
@@ -56,17 +56,17 @@
|
||||
fi
|
||||
|
||||
@ -34,29 +23,9 @@ diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnav-config2.sh xbmc-pvr
|
||||
- echo -L$libdir -ldvdnavmini $threadlib
|
||||
+ echo -ldvdnavmini $threadlib
|
||||
fi
|
||||
diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnav-config.in xbmc-pvr-3513480.patch/lib/libdvd/libdvdnav/misc/dvdnav-config.in
|
||||
--- xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnav-config.in 2011-04-25 02:36:42.000000000 +0200
|
||||
+++ xbmc-pvr-3513480.patch/lib/libdvd/libdvdnav/misc/dvdnav-config.in 2011-04-25 05:01:20.624827321 +0200
|
||||
@@ -76,13 +76,13 @@
|
||||
fi
|
||||
|
||||
if test "$echo_cflags" = "yes"; then
|
||||
- echo -I@includedir@ -I@includedir@/libdvdread @THREAD_CFLAGS@
|
||||
+ echo @THREAD_CFLAGS@
|
||||
fi
|
||||
|
||||
if test "$echo_libs" = "yes"; then
|
||||
- echo -L@libdir@ -ldvdnav -ldvdread @THREAD_LIBS@
|
||||
+ echo -ldvdnav -ldvdread @THREAD_LIBS@
|
||||
fi
|
||||
|
||||
if test "$echo_minilibs" = "yes"; then
|
||||
- echo -L@libdir@ -ldvdnavmini @THREAD_LIBS@
|
||||
+ echo -ldvdnavmini @THREAD_LIBS@
|
||||
fi
|
||||
diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in xbmc-pvr-3513480.patch/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in
|
||||
--- xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in 2011-04-25 02:36:42.000000000 +0200
|
||||
+++ xbmc-pvr-3513480.patch/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in 2011-04-25 05:01:21.042819641 +0200
|
||||
diff -Naur xbmc-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in xbmc-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in
|
||||
--- xbmc-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in 2014-05-01 17:56:12.030447794 +0200
|
||||
@@ -7,5 +7,5 @@
|
||||
Description: DVD Navigation mini library
|
||||
Version: @VERSION@
|
||||
@ -65,9 +34,9 @@ diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnavmini.pc.in xbmc-pvr-
|
||||
-Libs: -L${libdir} -ldvdnav @THREAD_LIBS@
|
||||
+Cflags: @DVDREAD_CFLAGS@ @THREAD_CFLAGS@
|
||||
+Libs: -ldvdnav @THREAD_LIBS@
|
||||
diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnav.pc.in xbmc-pvr-3513480.patch/lib/libdvd/libdvdnav/misc/dvdnav.pc.in
|
||||
--- xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnav.pc.in 2011-04-25 02:36:42.000000000 +0200
|
||||
+++ xbmc-pvr-3513480.patch/lib/libdvd/libdvdnav/misc/dvdnav.pc.in 2011-04-25 05:01:21.262815601 +0200
|
||||
diff -Naur xbmc-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnav.pc.in xbmc-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnav.pc.in
|
||||
--- xbmc-14-088e9fa/lib/libdvd/libdvdnav/misc/dvdnav.pc.in 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-14-088e9fa.patch/lib/libdvd/libdvdnav/misc/dvdnav.pc.in 2014-05-01 17:55:50.427406667 +0200
|
||||
@@ -8,5 +8,5 @@
|
||||
Version: @VERSION@
|
||||
|
||||
@ -76,24 +45,9 @@ diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdnav/misc/dvdnav.pc.in xbmc-pvr-3513
|
||||
-Libs: -L${libdir} -ldvdnav @THREAD_LIBS@
|
||||
+Cflags: @THREAD_CFLAGS@
|
||||
+Libs: -ldvdnav @THREAD_LIBS@
|
||||
diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdread/misc/dvdread-config.in xbmc-pvr-3513480.patch/lib/libdvd/libdvdread/misc/dvdread-config.in
|
||||
--- xbmc-pvr-3513480/lib/libdvd/libdvdread/misc/dvdread-config.in 2011-04-25 02:36:42.000000000 +0200
|
||||
+++ xbmc-pvr-3513480.patch/lib/libdvd/libdvdread/misc/dvdread-config.in 2011-04-25 05:01:21.278815307 +0200
|
||||
@@ -72,9 +72,9 @@
|
||||
fi
|
||||
|
||||
if test "$echo_cflags" = "yes"; then
|
||||
- echo -I@includedir@
|
||||
+ echo ""
|
||||
fi
|
||||
|
||||
if test "$echo_libs" = "yes"; then
|
||||
- echo -L@libdir@ -ldvdread
|
||||
+ echo -ldvdread
|
||||
fi
|
||||
diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdread/misc/dvdread-config.sh xbmc-pvr-3513480.patch/lib/libdvd/libdvdread/misc/dvdread-config.sh
|
||||
--- xbmc-pvr-3513480/lib/libdvd/libdvdread/misc/dvdread-config.sh 2011-04-25 02:36:42.000000000 +0200
|
||||
+++ xbmc-pvr-3513480.patch/lib/libdvd/libdvdread/misc/dvdread-config.sh 2011-04-25 05:01:21.278815307 +0200
|
||||
diff -Naur xbmc-14-088e9fa/lib/libdvd/libdvdread/misc/dvdread-config.sh xbmc-14-088e9fa.patch/lib/libdvd/libdvdread/misc/dvdread-config.sh
|
||||
--- xbmc-14-088e9fa/lib/libdvd/libdvdread/misc/dvdread-config.sh 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-14-088e9fa.patch/lib/libdvd/libdvdread/misc/dvdread-config.sh 2014-05-01 17:56:55.745553577 +0200
|
||||
@@ -48,9 +48,9 @@
|
||||
fi
|
||||
|
||||
@ -106,9 +60,9 @@ diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdread/misc/dvdread-config.sh xbmc-pv
|
||||
- echo -L$libdir $dvdreadlib
|
||||
+ echo $dvdreadlib
|
||||
fi
|
||||
diff -Naur xbmc-pvr-3513480/lib/libdvd/libdvdread/misc/dvdread.pc.in xbmc-pvr-3513480.patch/lib/libdvd/libdvdread/misc/dvdread.pc.in
|
||||
--- xbmc-pvr-3513480/lib/libdvd/libdvdread/misc/dvdread.pc.in 2011-04-25 02:36:42.000000000 +0200
|
||||
+++ xbmc-pvr-3513480.patch/lib/libdvd/libdvdread/misc/dvdread.pc.in 2011-04-25 05:01:21.279815289 +0200
|
||||
diff -Naur xbmc-14-088e9fa/lib/libdvd/libdvdread/misc/dvdread.pc.in xbmc-14-088e9fa.patch/lib/libdvd/libdvdread/misc/dvdread.pc.in
|
||||
--- xbmc-14-088e9fa/lib/libdvd/libdvdread/misc/dvdread.pc.in 2014-05-01 16:53:36.000000000 +0200
|
||||
+++ xbmc-14-088e9fa.patch/lib/libdvd/libdvdread/misc/dvdread.pc.in 2014-05-01 17:57:28.731937685 +0200
|
||||
@@ -7,5 +7,5 @@
|
||||
Description: Low level DVD access library
|
||||
Version: @VERSION@
|
||||
|
@ -1,6 +1,6 @@
|
||||
From 7503fd2355ab44503cf38809c5ba70ef2c0f2144 Mon Sep 17 00:00:00 2001
|
||||
From 1716ffbf57a8d812f3bc7b26752e867066c36c44 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Fri, 10 Jan 2014 19:44:16 +0200
|
||||
Date: Sat, 7 Jun 2014 12:40:57 +0300
|
||||
Subject: [PATCH] disable online check
|
||||
|
||||
---
|
||||
@ -10,30 +10,30 @@ Subject: [PATCH] disable online check
|
||||
3 files changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/xbmc/GUIInfoManager.cpp b/xbmc/GUIInfoManager.cpp
|
||||
index 10173ee..70a474a 100644
|
||||
index 456c733..0c20ae2 100644
|
||||
--- a/xbmc/GUIInfoManager.cpp
|
||||
+++ b/xbmc/GUIInfoManager.cpp
|
||||
@@ -271,7 +271,6 @@ const infomap system_labels[] = {{ "hasnetwork", SYSTEM_ETHERNET_LINK_ACT
|
||||
@@ -273,7 +273,6 @@ const infomap system_labels[] = {{ "hasnetwork", SYSTEM_ETHERNET_LINK_ACT
|
||||
{ "currentwindow", SYSTEM_CURRENT_WINDOW },
|
||||
{ "currentcontrol", SYSTEM_CURRENT_CONTROL },
|
||||
{ "dvdlabel", SYSTEM_DVD_LABEL },
|
||||
- { "internetstate", SYSTEM_INTERNET_STATE },
|
||||
{ "kernelversion", SYSTEM_KERNEL_VERSION },
|
||||
{ "osversioninfo", SYSTEM_OS_VERSION_INFO },
|
||||
{ "kernelversion", SYSTEM_OS_VERSION_INFO }, // old, not correct name
|
||||
{ "uptime", SYSTEM_UPTIME },
|
||||
{ "totaluptime", SYSTEM_TOTALUPTIME },
|
||||
diff --git a/xbmc/utils/SystemInfo.cpp b/xbmc/utils/SystemInfo.cpp
|
||||
index c77d495..06459dc 100644
|
||||
index 55ed760..aefeb70 100644
|
||||
--- a/xbmc/utils/SystemInfo.cpp
|
||||
+++ b/xbmc/utils/SystemInfo.cpp
|
||||
@@ -72,7 +72,6 @@ bool CSysInfoJob::DoWork()
|
||||
@@ -240,7 +240,6 @@ bool CSysInfoJob::DoWork()
|
||||
{
|
||||
m_info.systemUptime = GetSystemUpTime(false);
|
||||
m_info.systemTotalUptime = GetSystemUpTime(true);
|
||||
- m_info.internetState = GetInternetState();
|
||||
m_info.videoEncoder = GetVideoEncoder();
|
||||
m_info.cpuFrequency = GetCPUFreqInfo();
|
||||
m_info.kernelVersion = CSysInfo::GetKernelVersion();
|
||||
@@ -569,9 +568,7 @@ CStdString CSysInfo::GetKernelVersion()
|
||||
m_info.osVersionInfo = CSysInfo::GetOsPrettyNameWithVersion() + " (kernel: " + CSysInfo::GetKernelName() + " " + CSysInfo::GetKernelVersionFull() + ")";
|
||||
@@ -963,9 +962,7 @@ int CSysInfo::GetXbmcBitness(void)
|
||||
|
||||
bool CSysInfo::HasInternet()
|
||||
{
|
||||
@ -45,7 +45,7 @@ index c77d495..06459dc 100644
|
||||
|
||||
CStdString CSysInfo::GetHddSpaceInfo(int drive, bool shortText)
|
||||
diff --git a/xbmc/windows/GUIWindowSystemInfo.cpp b/xbmc/windows/GUIWindowSystemInfo.cpp
|
||||
index 60aa49d..a0a2e27 100644
|
||||
index 03a23e3..1528939 100644
|
||||
--- a/xbmc/windows/GUIWindowSystemInfo.cpp
|
||||
+++ b/xbmc/windows/GUIWindowSystemInfo.cpp
|
||||
@@ -126,7 +126,6 @@ void CGUIWindowSystemInfo::FrameMove()
|
||||
@ -57,5 +57,5 @@ index 60aa49d..a0a2e27 100644
|
||||
else if (m_section == CONTROL_BT_VIDEO)
|
||||
{
|
||||
--
|
||||
1.8.3.2
|
||||
1.9.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d3a6ee05721ca6536b30a4e270d1844acfcb0533 Mon Sep 17 00:00:00 2001
|
||||
From dbc86891d089a2a871be5a8663e8a5a9a1cffb53 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Saraev <stefan@saraev.ca>
|
||||
Date: Thu, 5 Jun 2014 18:50:04 +0300
|
||||
Subject: [PATCH] handle SIGTERM
|
||||
@ -31,10 +31,10 @@ is requested externaly (ssh, 3rdparty script).
|
||||
6 files changed, 30 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
|
||||
index 9242d53..1b13667 100644
|
||||
index 7f1b764..4441969 100644
|
||||
--- a/xbmc/Application.cpp
|
||||
+++ b/xbmc/Application.cpp
|
||||
@@ -3509,11 +3509,18 @@ bool CApplication::Cleanup()
|
||||
@@ -3493,11 +3493,18 @@ bool CApplication::Cleanup()
|
||||
}
|
||||
}
|
||||
|
||||
@ -51,10 +51,10 @@ index 9242d53..1b13667 100644
|
||||
{
|
||||
- CVariant vExitCode(exitCode);
|
||||
+ CVariant vExitCode(m_ExitCode);
|
||||
CAnnouncementManager::Announce(System, "xbmc", "OnQuit", vExitCode);
|
||||
CAnnouncementManager::Get().Announce(System, "xbmc", "OnQuit", vExitCode);
|
||||
|
||||
SaveFileState(true);
|
||||
@@ -3537,7 +3544,6 @@ void CApplication::Stop(int exitCode)
|
||||
@@ -3521,7 +3528,6 @@ void CApplication::Stop(int exitCode)
|
||||
|
||||
m_bStop = true;
|
||||
m_AppFocused = false;
|
||||
@ -63,7 +63,7 @@ index 9242d53..1b13667 100644
|
||||
|
||||
// cancel any jobs from the jobmanager
|
||||
diff --git a/xbmc/Application.h b/xbmc/Application.h
|
||||
index e3a26c5..35656e3 100644
|
||||
index 2243f15..97fb316 100644
|
||||
--- a/xbmc/Application.h
|
||||
+++ b/xbmc/Application.h
|
||||
@@ -149,6 +149,7 @@ public:
|
||||
|
@ -7,9 +7,9 @@ Subject: [PATCH] bye bye libflac
|
||||
configure.in | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff -Naur xbmc-master-14-67f025d/configure.in xbmc-master-14-67f025d.patch/configure.in
|
||||
--- xbmc-master-14-67f025d/configure.in 2014-07-25 06:45:49.000000000 +0200
|
||||
+++ xbmc-master-14-67f025d.patch/configure.in 2014-07-25 06:54:20.396754173 +0200
|
||||
diff -Naur xbmc-14-67f025d/configure.in xbmc-14-67f025d.patch/configure.in
|
||||
--- xbmc-14-67f025d/configure.in 2014-07-25 06:45:49.000000000 +0200
|
||||
+++ xbmc-14-67f025d.patch/configure.in 2014-07-25 06:54:20.396754173 +0200
|
||||
@@ -1056,7 +1056,6 @@
|
||||
AC_CHECK_HEADER([ogg/ogg.h],, AC_MSG_ERROR($missing_library))
|
||||
AC_CHECK_HEADER([vorbis/vorbisfile.h],, AC_MSG_ERROR($missing_library))
|
@ -1,236 +0,0 @@
|
||||
From 856d88d87f27370e8471963790db4e4e7c4ba910 Mon Sep 17 00:00:00 2001
|
||||
From: Matthias Kortstiege <vdrfan@xbmc.org>
|
||||
Date: Fri, 30 May 2014 15:57:25 +0200
|
||||
Subject: [PATCH] added: CPosixDirectory implementation
|
||||
|
||||
---
|
||||
XBMC.xcodeproj/project.pbxproj | 18 +++++
|
||||
xbmc/filesystem/DirectoryFactory.cpp | 7 ++
|
||||
xbmc/filesystem/Makefile.in | 1 +
|
||||
xbmc/filesystem/posix/PosixDirectory.cpp | 130 +++++++++++++++++++++++++++++++
|
||||
xbmc/filesystem/posix/PosixDirectory.h | 37 +++++++++
|
||||
5 files changed, 193 insertions(+)
|
||||
create mode 100644 xbmc/filesystem/posix/PosixDirectory.cpp
|
||||
create mode 100644 xbmc/filesystem/posix/PosixDirectory.h
|
||||
|
||||
diff --git a/xbmc/filesystem/DirectoryFactory.cpp b/xbmc/filesystem/DirectoryFactory.cpp
|
||||
index 260d53c..dc39a93 100644
|
||||
--- a/xbmc/filesystem/DirectoryFactory.cpp
|
||||
+++ b/xbmc/filesystem/DirectoryFactory.cpp
|
||||
@@ -46,6 +46,9 @@
|
||||
#include "utils/log.h"
|
||||
#include "network/WakeOnAccess.h"
|
||||
|
||||
+#ifdef TARGET_POSIX
|
||||
+#include "posix/PosixDirectory.h"
|
||||
+#endif
|
||||
#ifdef HAS_FILESYSTEM_SMB
|
||||
#ifdef TARGET_WINDOWS
|
||||
#include "windows/WINSMBDirectory.h"
|
||||
@@ -135,7 +138,11 @@ IDirectory* CDirectoryFactory::Create(const CStdString& strPath)
|
||||
|
||||
CStdString strProtocol = url.GetProtocol();
|
||||
|
||||
+#ifdef TARGET_POSIX
|
||||
+ if (strProtocol.size() == 0 || strProtocol == "file") return new CPosixDirectory();
|
||||
+#else
|
||||
if (strProtocol.size() == 0 || strProtocol == "file") return new CHDDirectory();
|
||||
+#endif
|
||||
if (strProtocol == "special") return new CSpecialProtocolDirectory();
|
||||
if (strProtocol == "sources") return new CSourcesDirectory();
|
||||
if (strProtocol == "addons") return new CAddonsDirectory();
|
||||
diff --git a/xbmc/filesystem/Makefile.in b/xbmc/filesystem/Makefile.in
|
||||
index 623bbb8..725951e 100644
|
||||
--- a/xbmc/filesystem/Makefile.in
|
||||
+++ b/xbmc/filesystem/Makefile.in
|
||||
@@ -57,6 +57,7 @@ SRCS += PlaylistFileDirectory.cpp
|
||||
SRCS += PipeFile.cpp
|
||||
SRCS += PipesManager.cpp
|
||||
SRCS += PluginDirectory.cpp
|
||||
+SRCS += posix/PosixDirectory.cpp
|
||||
SRCS += PVRFile.cpp
|
||||
SRCS += PVRDirectory.cpp
|
||||
SRCS += RSSDirectory.cpp
|
||||
diff --git a/xbmc/filesystem/posix/PosixDirectory.cpp b/xbmc/filesystem/posix/PosixDirectory.cpp
|
||||
new file mode 100644
|
||||
index 0000000..e60c6f9
|
||||
--- /dev/null
|
||||
+++ b/xbmc/filesystem/posix/PosixDirectory.cpp
|
||||
@@ -0,0 +1,131 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2014 Team XBMC
|
||||
+ * http://xbmc.org
|
||||
+ *
|
||||
+ * 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 XBMC; see the file COPYING. If not, see
|
||||
+ * <http://www.gnu.org/licenses/>.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+#if defined(TARGET_POSIX)
|
||||
+
|
||||
+#include "PosixDirectory.h"
|
||||
+#include "utils/StringUtils.h"
|
||||
+#include "utils/URIUtils.h"
|
||||
+#include "FileItem.h"
|
||||
+#include "XTimeUtils.h"
|
||||
+
|
||||
+#include <dirent.h>
|
||||
+#include <sys/stat.h>
|
||||
+
|
||||
+using namespace std;
|
||||
+using namespace XFILE;
|
||||
+
|
||||
+CPosixDirectory::CPosixDirectory(void)
|
||||
+{}
|
||||
+
|
||||
+CPosixDirectory::~CPosixDirectory(void)
|
||||
+{}
|
||||
+
|
||||
+bool CPosixDirectory::GetDirectory(const CStdString& strPath, CFileItemList &items)
|
||||
+{
|
||||
+ const char* root = strPath;
|
||||
+ struct dirent* entry;
|
||||
+ DIR *dir = opendir(root);
|
||||
+
|
||||
+ if (!dir)
|
||||
+ return false;
|
||||
+
|
||||
+ while ((entry = readdir(dir)) != NULL)
|
||||
+ {
|
||||
+ if (strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0)
|
||||
+ continue;
|
||||
+
|
||||
+ CFileItemPtr pItem(new CFileItem(entry->d_name));
|
||||
+ std::string itemPath(URIUtils::AddFileToFolder(root, entry->d_name));
|
||||
+
|
||||
+ bool bStat = false;
|
||||
+ struct stat buffer;
|
||||
+
|
||||
+ // Unix-based readdir implementations may return an incorrect dirent.d_ino value that
|
||||
+ // is not equal to the (correct) stat() obtained one. In this case the file type
|
||||
+ // could not be determined and the value of dirent.d_type is set to DT_UNKNOWN.
|
||||
+ // In order to get a correct value we have to incur the cost of calling stat.
|
||||
+ if (entry->d_type == DT_UNKNOWN || entry->d_type == DT_LNK)
|
||||
+ {
|
||||
+ if (stat(itemPath.c_str(), &buffer) == 0)
|
||||
+ bStat = true;
|
||||
+ }
|
||||
+
|
||||
+ if (entry->d_type == DT_DIR || (bStat && buffer.st_mode & S_IFDIR))
|
||||
+ {
|
||||
+ pItem->m_bIsFolder = true;
|
||||
+ URIUtils::AddSlashAtEnd(itemPath);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ pItem->m_bIsFolder = false;
|
||||
+ }
|
||||
+
|
||||
+ if (StringUtils::StartsWith(entry->d_name, "."))
|
||||
+ pItem->SetProperty("file:hidden", true);
|
||||
+
|
||||
+ pItem->SetPath(itemPath);
|
||||
+
|
||||
+ if (!(m_flags & DIR_FLAG_NO_FILE_INFO))
|
||||
+ {
|
||||
+ if (bStat || stat(pItem->GetPath(), &buffer) == 0)
|
||||
+ {
|
||||
+ FILETIME fileTime, localTime;
|
||||
+ TimeTToFileTime(buffer.st_mtime, &fileTime);
|
||||
+ FileTimeToLocalFileTime(&fileTime, &localTime);
|
||||
+ pItem->m_dateTime = localTime;
|
||||
+
|
||||
+ if (!pItem->m_bIsFolder)
|
||||
+ pItem->m_dwSize = buffer.st_size;
|
||||
+ }
|
||||
+ }
|
||||
+ items.Add(pItem);
|
||||
+ }
|
||||
+ closedir(dir);
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
+bool CPosixDirectory::Create(const char* strPath)
|
||||
+{
|
||||
+ if (!strPath || !*strPath)
|
||||
+ return false;
|
||||
+
|
||||
+ return (mkdir(strPath, 0755) == 0 || errno == EEXIST);
|
||||
+}
|
||||
+
|
||||
+bool CPosixDirectory::Remove(const char* strPath)
|
||||
+{
|
||||
+ if (!strPath || !*strPath)
|
||||
+ return false;
|
||||
+
|
||||
+ return (rmdir(strPath) == 0);
|
||||
+}
|
||||
+
|
||||
+bool CPosixDirectory::Exists(const char* strPath)
|
||||
+{
|
||||
+ if (!strPath || !*strPath)
|
||||
+ return false;
|
||||
+
|
||||
+ struct stat buffer;
|
||||
+ if (stat(strPath, &buffer) != 0)
|
||||
+ return false;
|
||||
+ return S_ISDIR(buffer.st_mode) ? true : false;
|
||||
+}
|
||||
+#endif
|
||||
diff --git a/xbmc/filesystem/posix/PosixDirectory.h b/xbmc/filesystem/posix/PosixDirectory.h
|
||||
new file mode 100644
|
||||
index 0000000..a3fd01e
|
||||
--- /dev/null
|
||||
+++ b/xbmc/filesystem/posix/PosixDirectory.h
|
||||
@@ -0,0 +1,37 @@
|
||||
+#pragma once
|
||||
+/*
|
||||
+ * Copyright (C) 2014 Team XBMC
|
||||
+ * http://xbmc.org
|
||||
+ *
|
||||
+ * 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 XBMC; see the file COPYING. If not, see
|
||||
+ * <http://www.gnu.org/licenses/>.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+#include "filesystem/IDirectory.h"
|
||||
+
|
||||
+namespace XFILE
|
||||
+{
|
||||
+
|
||||
+class CPosixDirectory : public IDirectory
|
||||
+{
|
||||
+public:
|
||||
+ CPosixDirectory(void);
|
||||
+ virtual ~CPosixDirectory(void);
|
||||
+ virtual bool GetDirectory(const CStdString& strPath, CFileItemList &items);
|
||||
+ virtual bool Create(const char* strPath);
|
||||
+ virtual bool Exists(const char* strPath);
|
||||
+ virtual bool Remove(const char* strPath);
|
||||
+};
|
||||
+}
|
||||
--
|
||||
1.9.3
|
||||
|
@ -1,12 +0,0 @@
|
||||
[Unit]
|
||||
Description=Fake Display Manager
|
||||
Requires=multi-user.target
|
||||
After=multi-user.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/bin/true
|
||||
RemainAfterExit=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=graphical.target
|
@ -1,26 +0,0 @@
|
||||
################################################################################
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
d /run/xbmc 0755 root root - -
|
||||
d /storage/.xbmc/userdata 0755 root root - -
|
||||
d /storage/music 0755 root root - -
|
||||
d /storage/pictures 0755 root root - -
|
||||
d /storage/tvshows 0755 root root - -
|
||||
d /storage/videos 0755 root root - -
|
||||
d /storage/screenshots 0755 root root - -
|
||||
|
Loading…
x
Reference in New Issue
Block a user