Date: Tuesday, February 23, 2016 @ 20:38:42 Author: idevolder Revision: 163227
archrelease: copy trunk to community-i686, community-x86_64 Added: kodi/repos/community-i686/PKGBUILD (from rev 163226, kodi/trunk/PKGBUILD) kodi/repos/community-i686/kodi.install (from rev 163226, kodi/trunk/kodi.install) kodi/repos/community-i686/prevent-taglib-from-crashing-kodi.patch (from rev 163226, kodi/trunk/prevent-taglib-from-crashing-kodi.patch) kodi/repos/community-x86_64/PKGBUILD (from rev 163226, kodi/trunk/PKGBUILD) kodi/repos/community-x86_64/kodi.install (from rev 163226, kodi/trunk/kodi.install) kodi/repos/community-x86_64/prevent-taglib-from-crashing-kodi.patch (from rev 163226, kodi/trunk/prevent-taglib-from-crashing-kodi.patch) Deleted: kodi/repos/community-i686/PKGBUILD kodi/repos/community-i686/kodi.install kodi/repos/community-i686/prevent-taglib-from-crashing-kodi.patch kodi/repos/community-x86_64/PKGBUILD kodi/repos/community-x86_64/kodi.install kodi/repos/community-x86_64/prevent-taglib-from-crashing-kodi.patch ----------------------------------------------------------+ /PKGBUILD | 260 +++++++++++++ /kodi.install | 34 + /prevent-taglib-from-crashing-kodi.patch | 192 +++++++++ community-i686/PKGBUILD | 133 ------ community-i686/kodi.install | 17 community-i686/prevent-taglib-from-crashing-kodi.patch | 96 ---- community-x86_64/PKGBUILD | 133 ------ community-x86_64/kodi.install | 17 community-x86_64/prevent-taglib-from-crashing-kodi.patch | 96 ---- 9 files changed, 486 insertions(+), 492 deletions(-) Deleted: community-i686/PKGBUILD =================================================================== --- community-i686/PKGBUILD 2016-02-23 19:38:28 UTC (rev 163226) +++ community-i686/PKGBUILD 2016-02-23 19:38:42 UTC (rev 163227) @@ -1,133 +0,0 @@ -# vim:set ts=2 sw=2 et: -# $Id$ -# Maintainer: Sergej Pupykin <pupykin.s+a...@gmail.com> -# Maintainer: BlackIkeEagle < ike DOT devolder AT gmail DOT com > -# Contributor: Brad Fanella <bradfane...@archlinux.us> -# Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com> -# Contributor: Zeqadious <zeqadious.at.gmail.dot.com> -# Contributor: BlackIkeEagle < ike DOT devolder AT gmail DOT com > -# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> -# Contributor: Maxime Gauduin <aluc...@gmail.com> - -pkgbase=kodi -pkgname=('kodi' 'kodi-eventclients') -pkgver=15.2 -_codename=Isengard -pkgrel=5 -arch=('i686' 'x86_64') -url="http://kodi.tv" -license=('GPL2') -makedepends=( - 'afpfs-ng' 'bluez-libs' 'boost' 'cmake' 'curl' 'cwiid' 'doxygen' 'git' 'glew' - 'gperf' 'hicolor-icon-theme' 'jasper' 'java-runtime' 'libaacs' 'libass' - 'libbluray' 'libcdio' 'libcec' 'libgl' 'libmariadbclient' 'libmicrohttpd' - 'libmodplug' 'libmpeg2' 'libnfs' 'libplist' 'libpulse' 'libssh' 'libva' - 'libvdpau' 'libxrandr' 'libxslt' 'lzo' 'mesa' 'nasm' 'nss-mdns' - 'python2-pillow' 'python2-pybluez' 'python2-simplejson' 'rtmpdump' 'sdl2' - 'sdl_image' 'shairplay' 'smbclient' 'swig' 'taglib' 'tinyxml' 'unzip' 'upower' - 'yajl' 'zip' -) -source=( - "$pkgname-$pkgver-$_codename.tar.gz::https://github.com/xbmc/xbmc/archive/$pkgver-$_codename.tar.gz" - 'prevent-taglib-from-crashing-kodi.patch' # can stay in even with new taglib release -) -sha256sums=('dd8aeb942e6de5d1488e243e1346cff3f6597e21b5131a3ba72ff5cc82037110' - 'c588153311adbccd7484cc7381f5852b4199301fe04d917279c0a2535891159f') - -prepare() { - cd "$srcdir/xbmc-$pkgver-$_codename" - - find -type f -name *.py -exec sed 's|^#!.*python$|#!/usr/bin/python2|' -i "{}" + - sed 's|^#!.*python$|#!/usr/bin/python2|' -i tools/depends/native/rpl-native/rpl - sed 's/python/python2/' -i tools/Linux/kodi.sh.in - sed 's/shell python/shell python2/' -i tools/EventClients/Makefile.in - - # patches - patch -p0 -i "$srcdir/prevent-taglib-from-crashing-kodi.patch" -} - -build() { - cd "$srcdir/xbmc-$pkgver-$_codename" - - # Bootstrapping - MAKEFLAGS=-j1 ./bootstrap - - #./configure --help - #return 1 - - # Configuring XBMC - export PYTHON_VERSION=2 # external python v2 - ./configure --prefix=/usr --exec-prefix=/usr \ - --disable-debug \ - --enable-optimizations \ - --enable-libbluray \ - --enable-shared-libraries \ - --with-lirc-device=/run/lirc/lircd \ - ac_cv_type__Bool=yes - - # Now (finally) build - make -} - -package_kodi() { - pkgdesc="A software media player and entertainment hub for digital media" - - # depends expected for kodi plugins: - # 'python2-pillow' 'python2-pybluez' 'python2-simplejson' - # depends expeced in FEH.py - # 'mesa-demos' 'xorg-xdpyinfo' - depends=( - 'python2-pillow' 'python2-pybluez' 'python2-simplejson' - 'mesa-demos' 'xorg-xdpyinfo' - 'bluez-libs' 'fribidi' 'glew' 'hicolor-icon-theme' 'libass' 'libcdio' - 'libjpeg-turbo' 'libmariadbclient' 'libmicrohttpd' 'libpulse' 'libssh' - 'libva' 'libxrandr' 'libxslt' 'lzo' 'sdl2' 'smbclient' 'taglib' 'tinyxml' - 'yajl' - ) - optdepends=( - 'afpfs-ng: Apple shares support' - 'bluez: Blutooth support' - 'libnfs: NFS shares support' - 'libplist: AirPlay support' - 'libcec: Pulse-Eight USB-CEC adapter support' - 'lirc: Remote controller support' - 'pulseaudio: PulseAudio support' - 'shairplay: AirPlay support' - 'udisks: Automount external drives' - 'unrar: Archives support' - 'unzip: Archives support' - 'upower: Display battery level' - 'lsb-release: log distro information in crashlog' - ) - install="kodi.install" - provides=('xbmc') - conflicts=('xbmc') - replaces=('xbmc') - - cd "$srcdir/xbmc-$pkgver-$_codename" - # Running make install - make DESTDIR="$pkgdir" install - - # We will no longer support the xbmc name - rm "$pkgdir/usr/share/xsessions/xbmc.desktop" - rm "$pkgdir/usr/bin/"xbmc{,-standalone} - # we will leave /usr/{include,lib,share}/xbmc for now - - # Licenses - install -dm755 ${pkgdir}/usr/share/licenses/${pkgname} - for licensef in LICENSE.GPL copying.txt; do - mv ${pkgdir}/usr/share/doc/kodi/${licensef} \ - ${pkgdir}/usr/share/licenses/${pkgname} - done -} - -package_kodi-eventclients() { - pkgdesc="Kodi Event Clients" - - depends=('cwiid') - - cd "$srcdir/xbmc-$pkgver-$_codename" - - make DESTDIR="$pkgdir" eventclients WII_EXTRA_OPTS=-DCWIID_OLD -} - Copied: kodi/repos/community-i686/PKGBUILD (from rev 163226, kodi/trunk/PKGBUILD) =================================================================== --- community-i686/PKGBUILD (rev 0) +++ community-i686/PKGBUILD 2016-02-23 19:38:42 UTC (rev 163227) @@ -0,0 +1,130 @@ +# vim:set ts=2 sw=2 et: +# $Id$ +# Maintainer: Sergej Pupykin <pupykin.s+a...@gmail.com> +# Maintainer: BlackIkeEagle < ike DOT devolder AT gmail DOT com > +# Contributor: Brad Fanella <bradfane...@archlinux.us> +# Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com> +# Contributor: Zeqadious <zeqadious.at.gmail.dot.com> +# Contributor: BlackIkeEagle < ike DOT devolder AT gmail DOT com > +# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> +# Contributor: Maxime Gauduin <aluc...@gmail.com> + +pkgbase=kodi +pkgname=('kodi' 'kodi-eventclients') +pkgver=16.0 +_codename=Jarvis +pkgrel=1 +arch=('i686' 'x86_64') +url="http://kodi.tv" +license=('GPL2') +makedepends=( + 'afpfs-ng' 'bluez-libs' 'boost' 'cmake' 'curl' 'cwiid' 'doxygen' 'git' 'glew' + 'gperf' 'hicolor-icon-theme' 'jasper' 'java-runtime' 'libaacs' 'libass' + 'libbluray' 'libcdio' 'libcec' 'libgl' 'libmariadbclient' 'libmicrohttpd' + 'libmodplug' 'libmpeg2' 'libnfs' 'libplist' 'libpulse' 'libssh' 'libva' + 'libvdpau' 'libxrandr' 'libxslt' 'lzo' 'mesa' 'nasm' 'nss-mdns' + 'python2-pillow' 'python2-pybluez' 'python2-simplejson' 'rtmpdump' 'sdl2' + 'sdl_image' 'shairplay' 'smbclient' 'swig' 'taglib' 'tinyxml' 'unzip' 'upower' + 'yajl' 'zip' 'mesa' 'dcadec' 'libcrossguid' +) +source=( + "$pkgname-$pkgver-$_codename.tar.gz::https://github.com/xbmc/xbmc/archive/$pkgver-$_codename.tar.gz" +) +sha256sums=('0421ea1337cdee674f8a36d995f54152b5ddc4100e53410b3aeeb3b3f7d53946') + +prepare() { + cd "$srcdir/xbmc-$pkgver-$_codename" + + find -type f -name *.py -exec sed 's|^#!.*python$|#!/usr/bin/python2|' -i "{}" + + sed 's|^#!.*python$|#!/usr/bin/python2|' -i tools/depends/native/rpl-native/rpl + sed 's/python/python2/' -i tools/Linux/kodi.sh.in + sed 's/shell python/shell python2/' -i tools/EventClients/Makefile.in + + # patches +} + +build() { + cd "$srcdir/xbmc-$pkgver-$_codename" + + # Bootstrapping + MAKEFLAGS=-j1 ./bootstrap + + #./configure --help + #return 1 + + # Configuring XBMC + export PYTHON_VERSION=2 # external python v2 + ./configure --prefix=/usr --exec-prefix=/usr \ + --disable-debug \ + --enable-optimizations \ + --enable-libbluray \ + --enable-shared-libraries \ + --with-lirc-device=/run/lirc/lircd \ + ac_cv_type__Bool=yes + + # Now (finally) build + make +} + +package_kodi() { + pkgdesc="A software media player and entertainment hub for digital media" + + # depends expected for kodi plugins: + # 'python2-pillow' 'python2-pybluez' 'python2-simplejson' + # depends expeced in FEH.py + # 'mesa-demos' 'xorg-xdpyinfo' + depends=( + 'python2-pillow' 'python2-pybluez' 'python2-simplejson' + 'mesa-demos' 'xorg-xdpyinfo' + 'bluez-libs' 'fribidi' 'glew' 'hicolor-icon-theme' 'libass' 'libcdio' + 'libjpeg-turbo' 'libmariadbclient' 'libmicrohttpd' 'libpulse' 'libssh' + 'libva' 'libxrandr' 'libxslt' 'lzo' 'sdl2' 'smbclient' 'taglib' 'tinyxml' + 'yajl' + ) + optdepends=( + 'afpfs-ng: Apple shares support' + 'bluez: Blutooth support' + 'libnfs: NFS shares support' + 'libplist: AirPlay support' + 'libcec: Pulse-Eight USB-CEC adapter support' + 'lirc: Remote controller support' + 'pulseaudio: PulseAudio support' + 'shairplay: AirPlay support' + 'udisks: Automount external drives' + 'unrar: Archives support' + 'unzip: Archives support' + 'upower: Display battery level' + 'lsb-release: log distro information in crashlog' + ) + install="kodi.install" + provides=('xbmc') + conflicts=('xbmc') + replaces=('xbmc') + + cd "$srcdir/xbmc-$pkgver-$_codename" + # Running make install + make DESTDIR="$pkgdir" install + + # We will no longer support the xbmc name + rm "$pkgdir/usr/share/xsessions/xbmc.desktop" + rm "$pkgdir/usr/bin/"xbmc{,-standalone} + # we will leave /usr/{include,lib,share}/xbmc for now + + # Licenses + install -dm755 ${pkgdir}/usr/share/licenses/${pkgname} + for licensef in LICENSE.GPL copying.txt; do + mv ${pkgdir}/usr/share/doc/kodi/${licensef} \ + ${pkgdir}/usr/share/licenses/${pkgname} + done +} + +package_kodi-eventclients() { + pkgdesc="Kodi Event Clients" + + depends=('cwiid') + + cd "$srcdir/xbmc-$pkgver-$_codename" + + make DESTDIR="$pkgdir" eventclients WII_EXTRA_OPTS=-DCWIID_OLD +} + Deleted: community-i686/kodi.install =================================================================== --- community-i686/kodi.install 2016-02-23 19:38:28 UTC (rev 163226) +++ community-i686/kodi.install 2016-02-23 19:38:42 UTC (rev 163227) @@ -1,17 +0,0 @@ -post_install() { - update_icons -} - -post_upgrade() { - update_icons -} - -post_remove() { - update_icons -} - -update_icons() { - type -p gtk-update-icon-cache > /dev/null 2>&1 && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor - type -p update-desktop-database > /dev/null 2>&1 && usr/bin/update-desktop-database -q usr/share/applications - return 0 -} Copied: kodi/repos/community-i686/kodi.install (from rev 163226, kodi/trunk/kodi.install) =================================================================== --- community-i686/kodi.install (rev 0) +++ community-i686/kodi.install 2016-02-23 19:38:42 UTC (rev 163227) @@ -0,0 +1,17 @@ +post_install() { + update_icons +} + +post_upgrade() { + update_icons +} + +post_remove() { + update_icons +} + +update_icons() { + type -p gtk-update-icon-cache > /dev/null 2>&1 && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor + type -p update-desktop-database > /dev/null 2>&1 && usr/bin/update-desktop-database -q usr/share/applications + return 0 +} Deleted: community-i686/prevent-taglib-from-crashing-kodi.patch =================================================================== --- community-i686/prevent-taglib-from-crashing-kodi.patch 2016-02-23 19:38:28 UTC (rev 163226) +++ community-i686/prevent-taglib-from-crashing-kodi.patch 2016-02-23 19:38:42 UTC (rev 163227) @@ -1,96 +0,0 @@ ---- xbmc/music/tags/TagLoaderTagLib.cpp.orig 2015-12-26 07:34:56.449019063 +0100 -+++ xbmc/music/tags/TagLoaderTagLib.cpp 2015-12-26 08:26:13.905598496 +0100 -@@ -134,48 +134,55 @@ - TagLib::RIFF::WAV::File * wavFile = NULL; - TagLib::RIFF::AIFF::File * aiffFile = NULL; - -- if (strExtension == "ape") -- file = apeFile = new APE::File(stream); -- else if (strExtension == "asf" || strExtension == "wmv" || strExtension == "wma") -- file = asfFile = new ASF::File(stream); -- else if (strExtension == "flac") -- file = flacFile = new FLAC::File(stream, ID3v2::FrameFactory::instance()); -- else if (strExtension == "it") -- file = itFile = new IT::File(stream); -- else if (strExtension == "mod" || strExtension == "module" || strExtension == "nst" || strExtension == "wow") -- file = modFile = new Mod::File(stream); -- else if (strExtension == "mp4" || strExtension == "m4a" || -- strExtension == "m4r" || strExtension == "m4b" || -- strExtension == "m4p" || strExtension == "3g2") -- file = mp4File = new MP4::File(stream); -- else if (strExtension == "mpc") -- file = mpcFile = new MPC::File(stream); -- else if (strExtension == "mp3" || strExtension == "aac") -- file = mpegFile = new MPEG::File(stream, ID3v2::FrameFactory::instance()); -- else if (strExtension == "s3m") -- file = s3mFile = new S3M::File(stream); -- else if (strExtension == "tta") -- file = ttaFile = new TrueAudio::File(stream, ID3v2::FrameFactory::instance()); -- else if (strExtension == "wv") -- file = wvFile = new WavPack::File(stream); -- else if (strExtension == "aif" || strExtension == "aiff") -- file = aiffFile = new RIFF::AIFF::File(stream); -- else if (strExtension == "wav") -- file = wavFile = new RIFF::WAV::File(stream); -- else if (strExtension == "xm") -- file = xmFile = new XM::File(stream); -- else if (strExtension == "ogg") -- file = oggVorbisFile = new Ogg::Vorbis::File(stream); -- else if (strExtension == "oga") // Leave this madness until last - oga container can have Vorbis or FLAC -+ try - { -- file = oggFlacFile = new Ogg::FLAC::File(stream); -- if (!file || !file->isValid()) -- { -- delete file; -- oggFlacFile = NULL; -+ if (strExtension == "ape") -+ file = apeFile = new APE::File(stream); -+ else if (strExtension == "asf" || strExtension == "wmv" || strExtension == "wma") -+ file = asfFile = new ASF::File(stream); -+ else if (strExtension == "flac") -+ file = flacFile = new FLAC::File(stream, ID3v2::FrameFactory::instance()); -+ else if (strExtension == "it") -+ file = itFile = new IT::File(stream); -+ else if (strExtension == "mod" || strExtension == "module" || strExtension == "nst" || strExtension == "wow") -+ file = modFile = new Mod::File(stream); -+ else if (strExtension == "mp4" || strExtension == "m4a" || -+ strExtension == "m4r" || strExtension == "m4b" || -+ strExtension == "m4p" || strExtension == "3g2") -+ file = mp4File = new MP4::File(stream); -+ else if (strExtension == "mpc") -+ file = mpcFile = new MPC::File(stream); -+ else if (strExtension == "mp3" || strExtension == "aac") -+ file = mpegFile = new MPEG::File(stream, ID3v2::FrameFactory::instance()); -+ else if (strExtension == "s3m") -+ file = s3mFile = new S3M::File(stream); -+ else if (strExtension == "tta") -+ file = ttaFile = new TrueAudio::File(stream, ID3v2::FrameFactory::instance()); -+ else if (strExtension == "wv") -+ file = wvFile = new WavPack::File(stream); -+ else if (strExtension == "aif" || strExtension == "aiff") -+ file = aiffFile = new RIFF::AIFF::File(stream); -+ else if (strExtension == "wav") -+ file = wavFile = new RIFF::WAV::File(stream); -+ else if (strExtension == "xm") -+ file = xmFile = new XM::File(stream); -+ else if (strExtension == "ogg") - file = oggVorbisFile = new Ogg::Vorbis::File(stream); -+ else if (strExtension == "oga") // Leave this madness until last - oga container can have Vorbis or FLAC -+ { -+ file = oggFlacFile = new Ogg::FLAC::File(stream); -+ if (!file || !file->isValid()) -+ { -+ delete file; -+ oggFlacFile = NULL; -+ file = oggVorbisFile = new Ogg::Vorbis::File(stream); -+ } - } - } -+ catch (const std::exception& ex) -+ { -+ CLog::Log(LOGERROR, "Taglib exception: %s", ex.what()); -+ } - - if (!file || !file->isOpen()) - { Copied: kodi/repos/community-i686/prevent-taglib-from-crashing-kodi.patch (from rev 163226, kodi/trunk/prevent-taglib-from-crashing-kodi.patch) =================================================================== --- community-i686/prevent-taglib-from-crashing-kodi.patch (rev 0) +++ community-i686/prevent-taglib-from-crashing-kodi.patch 2016-02-23 19:38:42 UTC (rev 163227) @@ -0,0 +1,96 @@ +--- xbmc/music/tags/TagLoaderTagLib.cpp.orig 2015-12-26 07:34:56.449019063 +0100 ++++ xbmc/music/tags/TagLoaderTagLib.cpp 2015-12-26 08:26:13.905598496 +0100 +@@ -134,48 +134,55 @@ + TagLib::RIFF::WAV::File * wavFile = NULL; + TagLib::RIFF::AIFF::File * aiffFile = NULL; + +- if (strExtension == "ape") +- file = apeFile = new APE::File(stream); +- else if (strExtension == "asf" || strExtension == "wmv" || strExtension == "wma") +- file = asfFile = new ASF::File(stream); +- else if (strExtension == "flac") +- file = flacFile = new FLAC::File(stream, ID3v2::FrameFactory::instance()); +- else if (strExtension == "it") +- file = itFile = new IT::File(stream); +- else if (strExtension == "mod" || strExtension == "module" || strExtension == "nst" || strExtension == "wow") +- file = modFile = new Mod::File(stream); +- else if (strExtension == "mp4" || strExtension == "m4a" || +- strExtension == "m4r" || strExtension == "m4b" || +- strExtension == "m4p" || strExtension == "3g2") +- file = mp4File = new MP4::File(stream); +- else if (strExtension == "mpc") +- file = mpcFile = new MPC::File(stream); +- else if (strExtension == "mp3" || strExtension == "aac") +- file = mpegFile = new MPEG::File(stream, ID3v2::FrameFactory::instance()); +- else if (strExtension == "s3m") +- file = s3mFile = new S3M::File(stream); +- else if (strExtension == "tta") +- file = ttaFile = new TrueAudio::File(stream, ID3v2::FrameFactory::instance()); +- else if (strExtension == "wv") +- file = wvFile = new WavPack::File(stream); +- else if (strExtension == "aif" || strExtension == "aiff") +- file = aiffFile = new RIFF::AIFF::File(stream); +- else if (strExtension == "wav") +- file = wavFile = new RIFF::WAV::File(stream); +- else if (strExtension == "xm") +- file = xmFile = new XM::File(stream); +- else if (strExtension == "ogg") +- file = oggVorbisFile = new Ogg::Vorbis::File(stream); +- else if (strExtension == "oga") // Leave this madness until last - oga container can have Vorbis or FLAC ++ try + { +- file = oggFlacFile = new Ogg::FLAC::File(stream); +- if (!file || !file->isValid()) +- { +- delete file; +- oggFlacFile = NULL; ++ if (strExtension == "ape") ++ file = apeFile = new APE::File(stream); ++ else if (strExtension == "asf" || strExtension == "wmv" || strExtension == "wma") ++ file = asfFile = new ASF::File(stream); ++ else if (strExtension == "flac") ++ file = flacFile = new FLAC::File(stream, ID3v2::FrameFactory::instance()); ++ else if (strExtension == "it") ++ file = itFile = new IT::File(stream); ++ else if (strExtension == "mod" || strExtension == "module" || strExtension == "nst" || strExtension == "wow") ++ file = modFile = new Mod::File(stream); ++ else if (strExtension == "mp4" || strExtension == "m4a" || ++ strExtension == "m4r" || strExtension == "m4b" || ++ strExtension == "m4p" || strExtension == "3g2") ++ file = mp4File = new MP4::File(stream); ++ else if (strExtension == "mpc") ++ file = mpcFile = new MPC::File(stream); ++ else if (strExtension == "mp3" || strExtension == "aac") ++ file = mpegFile = new MPEG::File(stream, ID3v2::FrameFactory::instance()); ++ else if (strExtension == "s3m") ++ file = s3mFile = new S3M::File(stream); ++ else if (strExtension == "tta") ++ file = ttaFile = new TrueAudio::File(stream, ID3v2::FrameFactory::instance()); ++ else if (strExtension == "wv") ++ file = wvFile = new WavPack::File(stream); ++ else if (strExtension == "aif" || strExtension == "aiff") ++ file = aiffFile = new RIFF::AIFF::File(stream); ++ else if (strExtension == "wav") ++ file = wavFile = new RIFF::WAV::File(stream); ++ else if (strExtension == "xm") ++ file = xmFile = new XM::File(stream); ++ else if (strExtension == "ogg") + file = oggVorbisFile = new Ogg::Vorbis::File(stream); ++ else if (strExtension == "oga") // Leave this madness until last - oga container can have Vorbis or FLAC ++ { ++ file = oggFlacFile = new Ogg::FLAC::File(stream); ++ if (!file || !file->isValid()) ++ { ++ delete file; ++ oggFlacFile = NULL; ++ file = oggVorbisFile = new Ogg::Vorbis::File(stream); ++ } + } + } ++ catch (const std::exception& ex) ++ { ++ CLog::Log(LOGERROR, "Taglib exception: %s", ex.what()); ++ } + + if (!file || !file->isOpen()) + { Deleted: community-x86_64/PKGBUILD =================================================================== --- community-x86_64/PKGBUILD 2016-02-23 19:38:28 UTC (rev 163226) +++ community-x86_64/PKGBUILD 2016-02-23 19:38:42 UTC (rev 163227) @@ -1,133 +0,0 @@ -# vim:set ts=2 sw=2 et: -# $Id$ -# Maintainer: Sergej Pupykin <pupykin.s+a...@gmail.com> -# Maintainer: BlackIkeEagle < ike DOT devolder AT gmail DOT com > -# Contributor: Brad Fanella <bradfane...@archlinux.us> -# Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com> -# Contributor: Zeqadious <zeqadious.at.gmail.dot.com> -# Contributor: BlackIkeEagle < ike DOT devolder AT gmail DOT com > -# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> -# Contributor: Maxime Gauduin <aluc...@gmail.com> - -pkgbase=kodi -pkgname=('kodi' 'kodi-eventclients') -pkgver=15.2 -_codename=Isengard -pkgrel=5 -arch=('i686' 'x86_64') -url="http://kodi.tv" -license=('GPL2') -makedepends=( - 'afpfs-ng' 'bluez-libs' 'boost' 'cmake' 'curl' 'cwiid' 'doxygen' 'git' 'glew' - 'gperf' 'hicolor-icon-theme' 'jasper' 'java-runtime' 'libaacs' 'libass' - 'libbluray' 'libcdio' 'libcec' 'libgl' 'libmariadbclient' 'libmicrohttpd' - 'libmodplug' 'libmpeg2' 'libnfs' 'libplist' 'libpulse' 'libssh' 'libva' - 'libvdpau' 'libxrandr' 'libxslt' 'lzo' 'mesa' 'nasm' 'nss-mdns' - 'python2-pillow' 'python2-pybluez' 'python2-simplejson' 'rtmpdump' 'sdl2' - 'sdl_image' 'shairplay' 'smbclient' 'swig' 'taglib' 'tinyxml' 'unzip' 'upower' - 'yajl' 'zip' -) -source=( - "$pkgname-$pkgver-$_codename.tar.gz::https://github.com/xbmc/xbmc/archive/$pkgver-$_codename.tar.gz" - 'prevent-taglib-from-crashing-kodi.patch' # can stay in even with new taglib release -) -sha256sums=('dd8aeb942e6de5d1488e243e1346cff3f6597e21b5131a3ba72ff5cc82037110' - 'c588153311adbccd7484cc7381f5852b4199301fe04d917279c0a2535891159f') - -prepare() { - cd "$srcdir/xbmc-$pkgver-$_codename" - - find -type f -name *.py -exec sed 's|^#!.*python$|#!/usr/bin/python2|' -i "{}" + - sed 's|^#!.*python$|#!/usr/bin/python2|' -i tools/depends/native/rpl-native/rpl - sed 's/python/python2/' -i tools/Linux/kodi.sh.in - sed 's/shell python/shell python2/' -i tools/EventClients/Makefile.in - - # patches - patch -p0 -i "$srcdir/prevent-taglib-from-crashing-kodi.patch" -} - -build() { - cd "$srcdir/xbmc-$pkgver-$_codename" - - # Bootstrapping - MAKEFLAGS=-j1 ./bootstrap - - #./configure --help - #return 1 - - # Configuring XBMC - export PYTHON_VERSION=2 # external python v2 - ./configure --prefix=/usr --exec-prefix=/usr \ - --disable-debug \ - --enable-optimizations \ - --enable-libbluray \ - --enable-shared-libraries \ - --with-lirc-device=/run/lirc/lircd \ - ac_cv_type__Bool=yes - - # Now (finally) build - make -} - -package_kodi() { - pkgdesc="A software media player and entertainment hub for digital media" - - # depends expected for kodi plugins: - # 'python2-pillow' 'python2-pybluez' 'python2-simplejson' - # depends expeced in FEH.py - # 'mesa-demos' 'xorg-xdpyinfo' - depends=( - 'python2-pillow' 'python2-pybluez' 'python2-simplejson' - 'mesa-demos' 'xorg-xdpyinfo' - 'bluez-libs' 'fribidi' 'glew' 'hicolor-icon-theme' 'libass' 'libcdio' - 'libjpeg-turbo' 'libmariadbclient' 'libmicrohttpd' 'libpulse' 'libssh' - 'libva' 'libxrandr' 'libxslt' 'lzo' 'sdl2' 'smbclient' 'taglib' 'tinyxml' - 'yajl' - ) - optdepends=( - 'afpfs-ng: Apple shares support' - 'bluez: Blutooth support' - 'libnfs: NFS shares support' - 'libplist: AirPlay support' - 'libcec: Pulse-Eight USB-CEC adapter support' - 'lirc: Remote controller support' - 'pulseaudio: PulseAudio support' - 'shairplay: AirPlay support' - 'udisks: Automount external drives' - 'unrar: Archives support' - 'unzip: Archives support' - 'upower: Display battery level' - 'lsb-release: log distro information in crashlog' - ) - install="kodi.install" - provides=('xbmc') - conflicts=('xbmc') - replaces=('xbmc') - - cd "$srcdir/xbmc-$pkgver-$_codename" - # Running make install - make DESTDIR="$pkgdir" install - - # We will no longer support the xbmc name - rm "$pkgdir/usr/share/xsessions/xbmc.desktop" - rm "$pkgdir/usr/bin/"xbmc{,-standalone} - # we will leave /usr/{include,lib,share}/xbmc for now - - # Licenses - install -dm755 ${pkgdir}/usr/share/licenses/${pkgname} - for licensef in LICENSE.GPL copying.txt; do - mv ${pkgdir}/usr/share/doc/kodi/${licensef} \ - ${pkgdir}/usr/share/licenses/${pkgname} - done -} - -package_kodi-eventclients() { - pkgdesc="Kodi Event Clients" - - depends=('cwiid') - - cd "$srcdir/xbmc-$pkgver-$_codename" - - make DESTDIR="$pkgdir" eventclients WII_EXTRA_OPTS=-DCWIID_OLD -} - Copied: kodi/repos/community-x86_64/PKGBUILD (from rev 163226, kodi/trunk/PKGBUILD) =================================================================== --- community-x86_64/PKGBUILD (rev 0) +++ community-x86_64/PKGBUILD 2016-02-23 19:38:42 UTC (rev 163227) @@ -0,0 +1,130 @@ +# vim:set ts=2 sw=2 et: +# $Id$ +# Maintainer: Sergej Pupykin <pupykin.s+a...@gmail.com> +# Maintainer: BlackIkeEagle < ike DOT devolder AT gmail DOT com > +# Contributor: Brad Fanella <bradfane...@archlinux.us> +# Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com> +# Contributor: Zeqadious <zeqadious.at.gmail.dot.com> +# Contributor: BlackIkeEagle < ike DOT devolder AT gmail DOT com > +# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> +# Contributor: Maxime Gauduin <aluc...@gmail.com> + +pkgbase=kodi +pkgname=('kodi' 'kodi-eventclients') +pkgver=16.0 +_codename=Jarvis +pkgrel=1 +arch=('i686' 'x86_64') +url="http://kodi.tv" +license=('GPL2') +makedepends=( + 'afpfs-ng' 'bluez-libs' 'boost' 'cmake' 'curl' 'cwiid' 'doxygen' 'git' 'glew' + 'gperf' 'hicolor-icon-theme' 'jasper' 'java-runtime' 'libaacs' 'libass' + 'libbluray' 'libcdio' 'libcec' 'libgl' 'libmariadbclient' 'libmicrohttpd' + 'libmodplug' 'libmpeg2' 'libnfs' 'libplist' 'libpulse' 'libssh' 'libva' + 'libvdpau' 'libxrandr' 'libxslt' 'lzo' 'mesa' 'nasm' 'nss-mdns' + 'python2-pillow' 'python2-pybluez' 'python2-simplejson' 'rtmpdump' 'sdl2' + 'sdl_image' 'shairplay' 'smbclient' 'swig' 'taglib' 'tinyxml' 'unzip' 'upower' + 'yajl' 'zip' 'mesa' 'dcadec' 'libcrossguid' +) +source=( + "$pkgname-$pkgver-$_codename.tar.gz::https://github.com/xbmc/xbmc/archive/$pkgver-$_codename.tar.gz" +) +sha256sums=('0421ea1337cdee674f8a36d995f54152b5ddc4100e53410b3aeeb3b3f7d53946') + +prepare() { + cd "$srcdir/xbmc-$pkgver-$_codename" + + find -type f -name *.py -exec sed 's|^#!.*python$|#!/usr/bin/python2|' -i "{}" + + sed 's|^#!.*python$|#!/usr/bin/python2|' -i tools/depends/native/rpl-native/rpl + sed 's/python/python2/' -i tools/Linux/kodi.sh.in + sed 's/shell python/shell python2/' -i tools/EventClients/Makefile.in + + # patches +} + +build() { + cd "$srcdir/xbmc-$pkgver-$_codename" + + # Bootstrapping + MAKEFLAGS=-j1 ./bootstrap + + #./configure --help + #return 1 + + # Configuring XBMC + export PYTHON_VERSION=2 # external python v2 + ./configure --prefix=/usr --exec-prefix=/usr \ + --disable-debug \ + --enable-optimizations \ + --enable-libbluray \ + --enable-shared-libraries \ + --with-lirc-device=/run/lirc/lircd \ + ac_cv_type__Bool=yes + + # Now (finally) build + make +} + +package_kodi() { + pkgdesc="A software media player and entertainment hub for digital media" + + # depends expected for kodi plugins: + # 'python2-pillow' 'python2-pybluez' 'python2-simplejson' + # depends expeced in FEH.py + # 'mesa-demos' 'xorg-xdpyinfo' + depends=( + 'python2-pillow' 'python2-pybluez' 'python2-simplejson' + 'mesa-demos' 'xorg-xdpyinfo' + 'bluez-libs' 'fribidi' 'glew' 'hicolor-icon-theme' 'libass' 'libcdio' + 'libjpeg-turbo' 'libmariadbclient' 'libmicrohttpd' 'libpulse' 'libssh' + 'libva' 'libxrandr' 'libxslt' 'lzo' 'sdl2' 'smbclient' 'taglib' 'tinyxml' + 'yajl' + ) + optdepends=( + 'afpfs-ng: Apple shares support' + 'bluez: Blutooth support' + 'libnfs: NFS shares support' + 'libplist: AirPlay support' + 'libcec: Pulse-Eight USB-CEC adapter support' + 'lirc: Remote controller support' + 'pulseaudio: PulseAudio support' + 'shairplay: AirPlay support' + 'udisks: Automount external drives' + 'unrar: Archives support' + 'unzip: Archives support' + 'upower: Display battery level' + 'lsb-release: log distro information in crashlog' + ) + install="kodi.install" + provides=('xbmc') + conflicts=('xbmc') + replaces=('xbmc') + + cd "$srcdir/xbmc-$pkgver-$_codename" + # Running make install + make DESTDIR="$pkgdir" install + + # We will no longer support the xbmc name + rm "$pkgdir/usr/share/xsessions/xbmc.desktop" + rm "$pkgdir/usr/bin/"xbmc{,-standalone} + # we will leave /usr/{include,lib,share}/xbmc for now + + # Licenses + install -dm755 ${pkgdir}/usr/share/licenses/${pkgname} + for licensef in LICENSE.GPL copying.txt; do + mv ${pkgdir}/usr/share/doc/kodi/${licensef} \ + ${pkgdir}/usr/share/licenses/${pkgname} + done +} + +package_kodi-eventclients() { + pkgdesc="Kodi Event Clients" + + depends=('cwiid') + + cd "$srcdir/xbmc-$pkgver-$_codename" + + make DESTDIR="$pkgdir" eventclients WII_EXTRA_OPTS=-DCWIID_OLD +} + Deleted: community-x86_64/kodi.install =================================================================== --- community-x86_64/kodi.install 2016-02-23 19:38:28 UTC (rev 163226) +++ community-x86_64/kodi.install 2016-02-23 19:38:42 UTC (rev 163227) @@ -1,17 +0,0 @@ -post_install() { - update_icons -} - -post_upgrade() { - update_icons -} - -post_remove() { - update_icons -} - -update_icons() { - type -p gtk-update-icon-cache > /dev/null 2>&1 && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor - type -p update-desktop-database > /dev/null 2>&1 && usr/bin/update-desktop-database -q usr/share/applications - return 0 -} Copied: kodi/repos/community-x86_64/kodi.install (from rev 163226, kodi/trunk/kodi.install) =================================================================== --- community-x86_64/kodi.install (rev 0) +++ community-x86_64/kodi.install 2016-02-23 19:38:42 UTC (rev 163227) @@ -0,0 +1,17 @@ +post_install() { + update_icons +} + +post_upgrade() { + update_icons +} + +post_remove() { + update_icons +} + +update_icons() { + type -p gtk-update-icon-cache > /dev/null 2>&1 && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor + type -p update-desktop-database > /dev/null 2>&1 && usr/bin/update-desktop-database -q usr/share/applications + return 0 +} Deleted: community-x86_64/prevent-taglib-from-crashing-kodi.patch =================================================================== --- community-x86_64/prevent-taglib-from-crashing-kodi.patch 2016-02-23 19:38:28 UTC (rev 163226) +++ community-x86_64/prevent-taglib-from-crashing-kodi.patch 2016-02-23 19:38:42 UTC (rev 163227) @@ -1,96 +0,0 @@ ---- xbmc/music/tags/TagLoaderTagLib.cpp.orig 2015-12-26 07:34:56.449019063 +0100 -+++ xbmc/music/tags/TagLoaderTagLib.cpp 2015-12-26 08:26:13.905598496 +0100 -@@ -134,48 +134,55 @@ - TagLib::RIFF::WAV::File * wavFile = NULL; - TagLib::RIFF::AIFF::File * aiffFile = NULL; - -- if (strExtension == "ape") -- file = apeFile = new APE::File(stream); -- else if (strExtension == "asf" || strExtension == "wmv" || strExtension == "wma") -- file = asfFile = new ASF::File(stream); -- else if (strExtension == "flac") -- file = flacFile = new FLAC::File(stream, ID3v2::FrameFactory::instance()); -- else if (strExtension == "it") -- file = itFile = new IT::File(stream); -- else if (strExtension == "mod" || strExtension == "module" || strExtension == "nst" || strExtension == "wow") -- file = modFile = new Mod::File(stream); -- else if (strExtension == "mp4" || strExtension == "m4a" || -- strExtension == "m4r" || strExtension == "m4b" || -- strExtension == "m4p" || strExtension == "3g2") -- file = mp4File = new MP4::File(stream); -- else if (strExtension == "mpc") -- file = mpcFile = new MPC::File(stream); -- else if (strExtension == "mp3" || strExtension == "aac") -- file = mpegFile = new MPEG::File(stream, ID3v2::FrameFactory::instance()); -- else if (strExtension == "s3m") -- file = s3mFile = new S3M::File(stream); -- else if (strExtension == "tta") -- file = ttaFile = new TrueAudio::File(stream, ID3v2::FrameFactory::instance()); -- else if (strExtension == "wv") -- file = wvFile = new WavPack::File(stream); -- else if (strExtension == "aif" || strExtension == "aiff") -- file = aiffFile = new RIFF::AIFF::File(stream); -- else if (strExtension == "wav") -- file = wavFile = new RIFF::WAV::File(stream); -- else if (strExtension == "xm") -- file = xmFile = new XM::File(stream); -- else if (strExtension == "ogg") -- file = oggVorbisFile = new Ogg::Vorbis::File(stream); -- else if (strExtension == "oga") // Leave this madness until last - oga container can have Vorbis or FLAC -+ try - { -- file = oggFlacFile = new Ogg::FLAC::File(stream); -- if (!file || !file->isValid()) -- { -- delete file; -- oggFlacFile = NULL; -+ if (strExtension == "ape") -+ file = apeFile = new APE::File(stream); -+ else if (strExtension == "asf" || strExtension == "wmv" || strExtension == "wma") -+ file = asfFile = new ASF::File(stream); -+ else if (strExtension == "flac") -+ file = flacFile = new FLAC::File(stream, ID3v2::FrameFactory::instance()); -+ else if (strExtension == "it") -+ file = itFile = new IT::File(stream); -+ else if (strExtension == "mod" || strExtension == "module" || strExtension == "nst" || strExtension == "wow") -+ file = modFile = new Mod::File(stream); -+ else if (strExtension == "mp4" || strExtension == "m4a" || -+ strExtension == "m4r" || strExtension == "m4b" || -+ strExtension == "m4p" || strExtension == "3g2") -+ file = mp4File = new MP4::File(stream); -+ else if (strExtension == "mpc") -+ file = mpcFile = new MPC::File(stream); -+ else if (strExtension == "mp3" || strExtension == "aac") -+ file = mpegFile = new MPEG::File(stream, ID3v2::FrameFactory::instance()); -+ else if (strExtension == "s3m") -+ file = s3mFile = new S3M::File(stream); -+ else if (strExtension == "tta") -+ file = ttaFile = new TrueAudio::File(stream, ID3v2::FrameFactory::instance()); -+ else if (strExtension == "wv") -+ file = wvFile = new WavPack::File(stream); -+ else if (strExtension == "aif" || strExtension == "aiff") -+ file = aiffFile = new RIFF::AIFF::File(stream); -+ else if (strExtension == "wav") -+ file = wavFile = new RIFF::WAV::File(stream); -+ else if (strExtension == "xm") -+ file = xmFile = new XM::File(stream); -+ else if (strExtension == "ogg") - file = oggVorbisFile = new Ogg::Vorbis::File(stream); -+ else if (strExtension == "oga") // Leave this madness until last - oga container can have Vorbis or FLAC -+ { -+ file = oggFlacFile = new Ogg::FLAC::File(stream); -+ if (!file || !file->isValid()) -+ { -+ delete file; -+ oggFlacFile = NULL; -+ file = oggVorbisFile = new Ogg::Vorbis::File(stream); -+ } - } - } -+ catch (const std::exception& ex) -+ { -+ CLog::Log(LOGERROR, "Taglib exception: %s", ex.what()); -+ } - - if (!file || !file->isOpen()) - { Copied: kodi/repos/community-x86_64/prevent-taglib-from-crashing-kodi.patch (from rev 163226, kodi/trunk/prevent-taglib-from-crashing-kodi.patch) =================================================================== --- community-x86_64/prevent-taglib-from-crashing-kodi.patch (rev 0) +++ community-x86_64/prevent-taglib-from-crashing-kodi.patch 2016-02-23 19:38:42 UTC (rev 163227) @@ -0,0 +1,96 @@ +--- xbmc/music/tags/TagLoaderTagLib.cpp.orig 2015-12-26 07:34:56.449019063 +0100 ++++ xbmc/music/tags/TagLoaderTagLib.cpp 2015-12-26 08:26:13.905598496 +0100 +@@ -134,48 +134,55 @@ + TagLib::RIFF::WAV::File * wavFile = NULL; + TagLib::RIFF::AIFF::File * aiffFile = NULL; + +- if (strExtension == "ape") +- file = apeFile = new APE::File(stream); +- else if (strExtension == "asf" || strExtension == "wmv" || strExtension == "wma") +- file = asfFile = new ASF::File(stream); +- else if (strExtension == "flac") +- file = flacFile = new FLAC::File(stream, ID3v2::FrameFactory::instance()); +- else if (strExtension == "it") +- file = itFile = new IT::File(stream); +- else if (strExtension == "mod" || strExtension == "module" || strExtension == "nst" || strExtension == "wow") +- file = modFile = new Mod::File(stream); +- else if (strExtension == "mp4" || strExtension == "m4a" || +- strExtension == "m4r" || strExtension == "m4b" || +- strExtension == "m4p" || strExtension == "3g2") +- file = mp4File = new MP4::File(stream); +- else if (strExtension == "mpc") +- file = mpcFile = new MPC::File(stream); +- else if (strExtension == "mp3" || strExtension == "aac") +- file = mpegFile = new MPEG::File(stream, ID3v2::FrameFactory::instance()); +- else if (strExtension == "s3m") +- file = s3mFile = new S3M::File(stream); +- else if (strExtension == "tta") +- file = ttaFile = new TrueAudio::File(stream, ID3v2::FrameFactory::instance()); +- else if (strExtension == "wv") +- file = wvFile = new WavPack::File(stream); +- else if (strExtension == "aif" || strExtension == "aiff") +- file = aiffFile = new RIFF::AIFF::File(stream); +- else if (strExtension == "wav") +- file = wavFile = new RIFF::WAV::File(stream); +- else if (strExtension == "xm") +- file = xmFile = new XM::File(stream); +- else if (strExtension == "ogg") +- file = oggVorbisFile = new Ogg::Vorbis::File(stream); +- else if (strExtension == "oga") // Leave this madness until last - oga container can have Vorbis or FLAC ++ try + { +- file = oggFlacFile = new Ogg::FLAC::File(stream); +- if (!file || !file->isValid()) +- { +- delete file; +- oggFlacFile = NULL; ++ if (strExtension == "ape") ++ file = apeFile = new APE::File(stream); ++ else if (strExtension == "asf" || strExtension == "wmv" || strExtension == "wma") ++ file = asfFile = new ASF::File(stream); ++ else if (strExtension == "flac") ++ file = flacFile = new FLAC::File(stream, ID3v2::FrameFactory::instance()); ++ else if (strExtension == "it") ++ file = itFile = new IT::File(stream); ++ else if (strExtension == "mod" || strExtension == "module" || strExtension == "nst" || strExtension == "wow") ++ file = modFile = new Mod::File(stream); ++ else if (strExtension == "mp4" || strExtension == "m4a" || ++ strExtension == "m4r" || strExtension == "m4b" || ++ strExtension == "m4p" || strExtension == "3g2") ++ file = mp4File = new MP4::File(stream); ++ else if (strExtension == "mpc") ++ file = mpcFile = new MPC::File(stream); ++ else if (strExtension == "mp3" || strExtension == "aac") ++ file = mpegFile = new MPEG::File(stream, ID3v2::FrameFactory::instance()); ++ else if (strExtension == "s3m") ++ file = s3mFile = new S3M::File(stream); ++ else if (strExtension == "tta") ++ file = ttaFile = new TrueAudio::File(stream, ID3v2::FrameFactory::instance()); ++ else if (strExtension == "wv") ++ file = wvFile = new WavPack::File(stream); ++ else if (strExtension == "aif" || strExtension == "aiff") ++ file = aiffFile = new RIFF::AIFF::File(stream); ++ else if (strExtension == "wav") ++ file = wavFile = new RIFF::WAV::File(stream); ++ else if (strExtension == "xm") ++ file = xmFile = new XM::File(stream); ++ else if (strExtension == "ogg") + file = oggVorbisFile = new Ogg::Vorbis::File(stream); ++ else if (strExtension == "oga") // Leave this madness until last - oga container can have Vorbis or FLAC ++ { ++ file = oggFlacFile = new Ogg::FLAC::File(stream); ++ if (!file || !file->isValid()) ++ { ++ delete file; ++ oggFlacFile = NULL; ++ file = oggVorbisFile = new Ogg::Vorbis::File(stream); ++ } + } + } ++ catch (const std::exception& ex) ++ { ++ CLog::Log(LOGERROR, "Taglib exception: %s", ex.what()); ++ } + + if (!file || !file->isOpen()) + {