community/kodi to 16.1-3

This commit is contained in:
Kevin Mihelich 2016-08-05 12:45:22 +00:00
parent fc4687ed62
commit f81f8dd120
4 changed files with 1521 additions and 100 deletions

View file

@ -0,0 +1,77 @@
From efa1179a7d55be713940cf82eaadb3d7379a7942 Mon Sep 17 00:00:00 2001
From: fritsch <peter.fruehberger@gmail.com>
Date: Sat, 23 Jul 2016 21:34:05 +0200
Subject: [PATCH 1/2] Curl: Support libcurl version 7.5.0
---
xbmc/filesystem/CurlFile.h | 6 ++++++
xbmc/filesystem/DllLibCurl.h | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/xbmc/filesystem/CurlFile.h b/xbmc/filesystem/CurlFile.h
index b4f5046..81a5ae5 100644
--- a/xbmc/filesystem/CurlFile.h
+++ b/xbmc/filesystem/CurlFile.h
@@ -24,11 +24,17 @@
#include <map>
#include <string>
#include "utils/HttpHeader.h"
+#include <curl/curlver.h>
namespace XCURL
{
+#if LIBCURL_VERSION_NUM >= 0x073200
+ typedef struct Curl_easy CURL_HANDLE;
+ typedef struct Curl_multi CURLM;
+#else
typedef void CURL_HANDLE;
typedef void CURLM;
+#endif
struct curl_slist;
}
diff --git a/xbmc/filesystem/DllLibCurl.h b/xbmc/filesystem/DllLibCurl.h
index db97f92..1bdaae1 100644
--- a/xbmc/filesystem/DllLibCurl.h
+++ b/xbmc/filesystem/DllLibCurl.h
@@ -52,7 +52,7 @@ namespace XCURL
virtual CURLMcode multi_fdset(CURLM *multi_handle, fd_set *read_fd_set, fd_set *write_fd_set, fd_set *exc_fd_set, int *max_fd)=0;
virtual CURLMcode multi_timeout(CURLM *multi_handle, long *timeout)=0;
virtual CURLMsg* multi_info_read(CURLM *multi_handle, int *msgs_in_queue)=0;
- virtual void multi_cleanup(CURL_HANDLE * handle )=0;
+ virtual void multi_cleanup(CURLM * handle )=0;
virtual struct curl_slist* slist_append(struct curl_slist *, const char *)=0;
virtual void slist_free_all(struct curl_slist *)=0;
};
From 9c6dd05394c7f55c046f285b124b0caa46e66ee4 Mon Sep 17 00:00:00 2001
From: fritsch <peter.fruehberger@gmail.com>
Date: Sun, 24 Jul 2016 20:24:07 +0200
Subject: [PATCH 2/2] Curl: Adjust multi_cleanup method which returns CURLMcode
---
xbmc/filesystem/DllLibCurl.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/xbmc/filesystem/DllLibCurl.h b/xbmc/filesystem/DllLibCurl.h
index 1bdaae1..9e78a91 100644
--- a/xbmc/filesystem/DllLibCurl.h
+++ b/xbmc/filesystem/DllLibCurl.h
@@ -52,7 +52,7 @@ namespace XCURL
virtual CURLMcode multi_fdset(CURLM *multi_handle, fd_set *read_fd_set, fd_set *write_fd_set, fd_set *exc_fd_set, int *max_fd)=0;
virtual CURLMcode multi_timeout(CURLM *multi_handle, long *timeout)=0;
virtual CURLMsg* multi_info_read(CURLM *multi_handle, int *msgs_in_queue)=0;
- virtual void multi_cleanup(CURLM * handle )=0;
+ virtual CURLMcode multi_cleanup(CURLM * handle )=0;
virtual struct curl_slist* slist_append(struct curl_slist *, const char *)=0;
virtual void slist_free_all(struct curl_slist *)=0;
};
@@ -77,7 +77,7 @@ namespace XCURL
DEFINE_METHOD5(CURLMcode, multi_fdset, (CURLM *p1, fd_set *p2, fd_set *p3, fd_set *p4, int *p5))
DEFINE_METHOD2(CURLMcode, multi_timeout, (CURLM *p1, long *p2))
DEFINE_METHOD2(CURLMsg*, multi_info_read, (CURLM *p1, int *p2))
- DEFINE_METHOD1(void, multi_cleanup, (CURLM *p1))
+ DEFINE_METHOD1(CURLMcode, multi_cleanup, (CURLM *p1))
DEFINE_METHOD2(struct curl_slist*, slist_append, (struct curl_slist * p1, const char * p2))
DEFINE_METHOD1(void, slist_free_all, (struct curl_slist * p1))
DEFINE_METHOD1(const char *, easy_strerror, (CURLcode p1))

1432
community/kodi/9703.patch Normal file

File diff suppressed because it is too large Load diff

View file

@ -19,7 +19,7 @@ pkgbase=kodi
pkgname=('kodi' 'kodi-eventclients')
pkgver=16.1
_codename=Jarvis
pkgrel=2
pkgrel=3
arch=('i686' 'x86_64')
url="http://kodi.tv"
license=('GPL2')
@ -35,18 +35,26 @@ makedepends=(
)
source=(
"$pkgname-$pkgver-$_codename.tar.gz::https://github.com/xbmc/xbmc/archive/$pkgver-$_codename.tar.gz"
'9703.patch'
'10160.patch'
)
sha256sums=(
'7d82c8aff2715c83deecdf10c566e26105bec0473af530a1356d4c747ebdfd10'
'b0fe75d10b2678894d1dec48f3258c0bec2a4a170f33d76a9a8334bb1969b18f'
'947119637577abb77fdac6173fea05b0a4524928d344e3b3f0ed328e51b3e596'
)
sha256sums=('7d82c8aff2715c83deecdf10c566e26105bec0473af530a1356d4c747ebdfd10')
prepare() {
cd "$srcdir/xbmc-$pkgver-$_codename"
# patches
patch -p1 -i "$srcdir/9703.patch"
patch -p1 -i "$srcdir/10160.patch"
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() {

View file

@ -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())
{