summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2015-08-26 01:26:12 -0400
committerMike Frysinger <vapier@gentoo.org>2015-08-26 01:26:12 -0400
commit39c613fa629724e051b7adb9c5d9415935817c8b (patch)
treed958a71c90e2ef3897dc58129da21c8d41822eb5 /media-tv
parentmedia-tv/kodi: refresh live git for latest source (diff)
downloadgentoo-39c613fa629724e051b7adb9c5d9415935817c8b.tar.gz
gentoo-39c613fa629724e051b7adb9c5d9415935817c8b.tar.bz2
gentoo-39c613fa629724e051b7adb9c5d9415935817c8b.zip
media-tv/kodi: version bump #544760
Diffstat (limited to 'media-tv')
-rw-r--r--media-tv/kodi/Manifest2
-rw-r--r--media-tv/kodi/files/kodi-15.1-gcc-5.patch172
-rw-r--r--media-tv/kodi/files/kodi-15.1-texturepacker.patch25
-rw-r--r--media-tv/kodi/kodi-15.1.ebuild283
4 files changed, 482 insertions, 0 deletions
diff --git a/media-tv/kodi/Manifest b/media-tv/kodi/Manifest
index 4ef5ffdc0a5a..5ee483305dd5 100644
--- a/media-tv/kodi/Manifest
+++ b/media-tv/kodi/Manifest
@@ -1,2 +1,4 @@
DIST kodi-14.1-generated-addons.tar.xz 71072 SHA256 0666eae88a3214f7577544975524b95a9f55b107cde5124d5d299351427c5d39 SHA512 a26889ba8af33316ac61bbf5a55ec6cd72cb867eac9b6d7c626ff890f3287de8704cf8372a5e2b72d6075ab8c31ba3d8465d1da0c9437065fe6e0171a560142f WHIRLPOOL 34a7067964febd71d5e07333a1ef90c14ad3d7d09e82aa4a3245b8174b068a1b2b31d0d6e5d20a449d11d34701b59611b725c8f37ce61702489c84bda16f227a
DIST kodi-14.1.tar.gz 70832109 SHA256 a38059e292cf8523918834e49fcc2d688525ceb7951ddf7f5ee535f4147255d6 SHA512 05dccad279073fc804faf2f179ba370f612d53c823dd333fdd151e05de37eb8202cc981ba48afff695d475bafde9c8f05f562fe09883593a70299a2f098a9849 WHIRLPOOL 464ff2673c9e65466dff73d3c91b8754ee68d64b4a18ebb0b0c6e8efa2da1cc32ab22686530a8469a105bf7a089d8928db64c5c61d272462c13485006875b506
+DIST kodi-15.1-generated-addons.tar.xz 73988 SHA256 97f0236542044a909d982cbf9a031f76395a59a1d4a79187c1102845579ed8f2 SHA512 559c188471c84503840b8b2010b73f15cf083367a1e1d0d5cfe7c144e36821a07c6fff1ff379ad8e8b254bc0cc2555c0a17ae998003adf86b051febde97bf2f1 WHIRLPOOL 01b76391d6aa7c624ad23329c962416cdf4662b96e99724bb566d7ed20b08b1525acd4f12671eef04ac10e5255d097f7c2452d2bfd87f7dfd3f4c1cd621fe2a6
+DIST kodi-15.1.tar.gz 61477835 SHA256 72b2610d8fbff807128d74429f25bf6716ba880c27c2c5d9fad012ec7fc70705 SHA512 b597253aa51d3d446ecb85ffe163362b5e55717d6fee16eab81725b9cdf0a5a9e4a2291aa526b9e63fbb34ef206100df30c9368684e2ddedc49e35f140d604f0 WHIRLPOOL 3596c00f9d25193e1e84cdfbf7fe5a6e6bdcce37caa710b8dd2b0b7aaa043164410459009dc793991373886abed8755298ee8803edf7b90227509d0c3578b8b9
diff --git a/media-tv/kodi/files/kodi-15.1-gcc-5.patch b/media-tv/kodi/files/kodi-15.1-gcc-5.patch
new file mode 100644
index 000000000000..b96cc82c0579
--- /dev/null
+++ b/media-tv/kodi/files/kodi-15.1-gcc-5.patch
@@ -0,0 +1,172 @@
+fix from upstream
+
+From 38693b251f5d80a7414b077e02c1636af65afb3d Mon Sep 17 00:00:00 2001
+From: Craig Andrews <candrews@integralblue.com>
+Date: Thu, 30 Jul 2015 23:06:41 -0400
+Subject: [PATCH] [rsxs] Use stdbool.h from GCC 5.2.0
+
+---
+ xbmc/screensavers/rsxs-0.9/lib/stdbool_.h | 137 +++++++++---------------------
+ 1 file changed, 38 insertions(+), 99 deletions(-)
+
+diff --git a/xbmc/screensavers/rsxs-0.9/lib/stdbool_.h b/xbmc/screensavers/rsxs-0.9/lib/stdbool_.h
+index efa80ba..a951510 100644
+--- a/xbmc/screensavers/rsxs-0.9/lib/stdbool_.h
++++ b/xbmc/screensavers/rsxs-0.9/lib/stdbool_.h
+@@ -1,115 +1,54 @@
+-/* Copyright (C) 2001, 2002, 2003, 2006 Free Software Foundation, Inc.
+- Written by Bruno Haible <haible@clisp.cons.org>, 2001.
++/* Copyright (C) 1998-2015 Free Software Foundation, Inc.
+
+- 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 file is part of GCC.
+
+- 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.
++GCC 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 3, or (at your option)
++any later version.
+
+- You should have received a copy of the GNU General Public License
+- along with this program; if not, write to the Free Software Foundation,
+- Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
++GCC 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.
+
+-#ifndef _STDBOOL_H
+-#define _STDBOOL_H
+-
+-/* ISO C 99 <stdbool.h> for platforms that lack it. */
+-
+-/* Usage suggestions:
+-
+- Programs that use <stdbool.h> should be aware of some limitations
+- and standards compliance issues.
+-
+- Standards compliance:
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
+
+- - <stdbool.h> must be #included before 'bool', 'false', 'true'
+- can be used.
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++<http://www.gnu.org/licenses/>. */
+
+- - You cannot assume that sizeof (bool) == 1.
++/*
++ * ISO C Standard: 7.16 Boolean type and values <stdbool.h>
++ */
+
+- - Programs should not undefine the macros bool, true, and false,
+- as C99 lists that as an "obsolescent feature".
+-
+- Limitations of this substitute, when used in a C89 environment:
+-
+- - <stdbool.h> must be #included before the '_Bool' type can be used.
+-
+- - You cannot assume that _Bool is a typedef; it might be a macro.
++#ifndef _STDBOOL_H
++#define _STDBOOL_H
+
+- - In C99, casts and automatic conversions to '_Bool' or 'bool' are
+- performed in such a way that every nonzero value gets converted
+- to 'true', and zero gets converted to 'false'. This doesn't work
+- with this substitute. With this substitute, only the values 0 and 1
+- give the expected result when converted to _Bool' or 'bool'.
++#ifndef __cplusplus
+
+- Also, it is suggested that programs use 'bool' rather than '_Bool';
+- this isn't required, but 'bool' is more common. */
++#define bool _Bool
++#define true 1
++#define false 0
+
++#else /* __cplusplus */
+
+-/* 7.16. Boolean type and values */
++/* Supporting _Bool in C++ is a GCC extension. */
++#define _Bool bool
+
+-/* BeOS <sys/socket.h> already #defines false 0, true 1. We use the same
+- definitions below, but temporarily we have to #undef them. */
+-#ifdef __BEOS__
+-# include <OS.h> /* defines bool but not _Bool */
+-# undef false
+-# undef true
++#if __cplusplus < 201103L
++/* Defining these macros in C++98 is a GCC extension. */
++#define bool bool
++#define false false
++#define true true
+ #endif
+
+-/* For the sake of symbolic names in gdb, we define true and false as
+- enum constants, not only as macros.
+- It is tempting to write
+- typedef enum { false = 0, true = 1 } _Bool;
+- so that gdb prints values of type 'bool' symbolically. But if we do
+- this, values of type '_Bool' may promote to 'int' or 'unsigned int'
+- (see ISO C 99 6.7.2.2.(4)); however, '_Bool' must promote to 'int'
+- (see ISO C 99 6.3.1.1.(2)). So we add a negative value to the
+- enum; this ensures that '_Bool' promotes to 'int'. */
+-#if defined __cplusplus || defined __BEOS__
+- /* A compiler known to have 'bool'. */
+- /* If the compiler already has both 'bool' and '_Bool', we can assume they
+- are the same types. */
+-# if !@HAVE__BOOL@
+-typedef bool _Bool;
+-# endif
+-#else
+-# if !defined __GNUC__
+- /* If @HAVE__BOOL@:
+- Some HP-UX cc and AIX IBM C compiler versions have compiler bugs when
+- the built-in _Bool type is used. See
+- http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html
+- http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html
+- http://lists.gnu.org/archive/html/bug-coreutils/2005-10/msg00086.html
+- Similar bugs are likely with other compilers as well; this file
+- wouldn't be used if <stdbool.h> was working.
+- So we override the _Bool type.
+- If !@HAVE__BOOL@:
+- Need to define _Bool ourselves. As 'signed char' or as an enum type?
+- Use of a typedef, with SunPRO C, leads to a stupid
+- "warning: _Bool is a keyword in ISO C99".
+- Use of an enum type, with IRIX cc, leads to a stupid
+- "warning(1185): enumerated type mixed with another type".
+- The only benefit of the enum type, debuggability, is not important
+- with these compilers. So use 'signed char' and no typedef. */
+-# define _Bool signed char
+-enum { false = 0, true = 1 };
+-# else
+- /* With this compiler, trust the _Bool type if the compiler has it. */
+-# if !@HAVE__BOOL@
+-typedef enum { _Bool_must_promote_to_int = -1, false = 0, true = 1 } _Bool;
+-# endif
+-# endif
+-#endif
+-#define bool _Bool
++#endif /* __cplusplus */
+
+-/* The other macros must be usable in preprocessor directives. */
+-#define false 0
+-#define true 1
+-#define __bool_true_false_are_defined 1
++/* Signal that all the definitions are present. */
++#define __bool_true_false_are_defined 1
+
+-#endif /* _STDBOOL_H */
++#endif /* stdbool.h */
+--
+2.4.4
+
diff --git a/media-tv/kodi/files/kodi-15.1-texturepacker.patch b/media-tv/kodi/files/kodi-15.1-texturepacker.patch
new file mode 100644
index 000000000000..19309c58d447
--- /dev/null
+++ b/media-tv/kodi/files/kodi-15.1-texturepacker.patch
@@ -0,0 +1,25 @@
+--- tools/depends/native/TexturePacker/Makefile
++++ tools/depends/native/TexturePacker/Makefile
+@@ -9,14 +9,10 @@
+
+ ifeq ($(NATIVEPLATFORM),)
+ PLATFORM = native
+- EXTRA_CONFIGURE = --enable-static
+ else
+ PLATFORM = $(NATIVEPLATFORM)
+ endif
+
+-ifeq ($(NATIVE_OS), linux)
+- EXTRA_CONFIGURE = --enable-static
+-endif
+ ifeq ($(NATIVE_OS), android)
+ EXTRA_CONFIGURE = --enable-static
+ endif
+@@ -35,7 +35,6 @@ all: .installed-$(PLATFORM)
+ $(PLATFORM): ../libsquish-native/.installed-$(PLATFORM)
+ -rm -rf $(PLATFORM)/*; mkdir -p $(PLATFORM)
+ cd $(PLATFORM); cp -a $(SOURCE)/* .
+- cd $(PLATFORM); ./autogen.sh
+ cd $(PLATFORM); ./configure --prefix=$(PREFIX) $(EXTRA_CONFIGURE) EXTRA_DEFINES="$(NATIVE_ARCH_DEFINES)"
+
+
diff --git a/media-tv/kodi/kodi-15.1.ebuild b/media-tv/kodi/kodi-15.1.ebuild
new file mode 100644
index 000000000000..80d676586fbd
--- /dev/null
+++ b/media-tv/kodi/kodi-15.1.ebuild
@@ -0,0 +1,283 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+# Does not work with py3 here
+# It might work with py:2.5 but I didn't test that
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite"
+
+inherit eutils linux-info python-single-r1 multiprocessing autotools
+
+CODENAME="Isengard"
+case ${PV} in
+9999)
+ EGIT_REPO_URI="git://github.com/xbmc/xbmc.git"
+ inherit git-r3
+ ;;
+*|*_p*)
+ MY_PV=${PV/_p/_r}
+ MY_P="${PN}-${MY_PV}"
+ SRC_URI="http://mirrors.kodi.tv/releases/source/${MY_PV}-${CODENAME}.tar.gz -> ${P}.tar.gz
+ https://github.com/xbmc/xbmc/archive/${PV}-${CODENAME}.tar.gz -> ${P}.tar.gz
+ !java? ( http://mirrors.kodi.tv/releases/source/${MY_P}-generated-addons.tar.xz )"
+ KEYWORDS="~amd64 ~x86"
+
+ S=${WORKDIR}/xbmc-${PV}-${CODENAME}
+ ;;
+esac
+
+DESCRIPTION="Kodi is a free and open source media-player and entertainment hub"
+HOMEPAGE="http://kodi.tv/ http://kodi.wiki/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="airplay alsa avahi bluetooth bluray caps cec css dbus debug +fishbmc gles goom java joystick midi mysql nfs +opengl profile +projectm pulseaudio +rsxs rtmp +samba sftp +spectrum test +texturepacker udisks upnp upower +usb vaapi vdpau +waveform webserver +X"
+REQUIRED_USE="
+ rsxs? ( X )
+ udisks? ( dbus )
+ upower? ( dbus )
+"
+
+COMMON_DEPEND="${PYTHON_DEPS}
+ app-arch/bzip2
+ app-arch/unzip
+ app-arch/zip
+ app-i18n/enca
+ airplay? ( app-pda/libplist )
+ dev-libs/boost
+ dev-libs/expat
+ dev-libs/fribidi
+ dev-libs/libcdio[-minimal]
+ cec? ( >=dev-libs/libcec-3.0 )
+ dev-libs/libpcre[cxx]
+ dev-libs/libxml2
+ dev-libs/libxslt
+ >=dev-libs/lzo-2.04
+ dev-libs/tinyxml[stl]
+ dev-libs/yajl
+ dev-python/simplejson[${PYTHON_USEDEP}]
+ media-fonts/corefonts
+ media-fonts/roboto
+ alsa? ( media-libs/alsa-lib )
+ media-libs/flac
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/jasper
+ media-libs/jbigkit
+ >=media-libs/libass-0.9.7
+ bluray? ( media-libs/libbluray )
+ css? ( media-libs/libdvdcss )
+ media-libs/libmad
+ media-libs/libmodplug
+ media-libs/libmpeg2
+ media-libs/libogg
+ media-libs/libpng
+ projectm? ( media-libs/libprojectm )
+ media-libs/libsamplerate
+ joystick? ( media-libs/libsdl2 )
+ >=media-libs/taglib-1.8
+ media-libs/libvorbis
+ media-libs/tiff
+ pulseaudio? ( media-sound/pulseaudio )
+ media-sound/wavpack
+ >=media-video/ffmpeg-2.6:=[encode]
+ rtmp? ( media-video/rtmpdump )
+ avahi? ( net-dns/avahi )
+ nfs? ( net-fs/libnfs )
+ webserver? ( net-libs/libmicrohttpd[messages] )
+ sftp? ( net-libs/libssh[sftp] )
+ net-misc/curl
+ samba? ( >=net-fs/samba-3.4.6[smbclient(+)] )
+ bluetooth? ( net-wireless/bluez )
+ dbus? ( sys-apps/dbus )
+ caps? ( sys-libs/libcap )
+ sys-libs/zlib
+ virtual/jpeg
+ usb? ( virtual/libusb )
+ mysql? ( virtual/mysql )
+ opengl? (
+ virtual/glu
+ virtual/opengl
+ >=media-libs/glew-1.5.6
+ )
+ gles? (
+ media-libs/mesa[gles2]
+ )
+ vaapi? ( x11-libs/libva[opengl] )
+ vdpau? (
+ || ( x11-libs/libvdpau >=x11-drivers/nvidia-drivers-180.51 )
+ media-video/ffmpeg[vdpau]
+ )
+ X? (
+ x11-apps/xdpyinfo
+ x11-apps/mesa-progs
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ )"
+RDEPEND="${COMMON_DEPEND}
+ !media-tv/xbmc
+ udisks? ( sys-fs/udisks:0 )
+ upower? ( || ( sys-power/upower sys-power/upower-pm-utils ) )"
+DEPEND="${COMMON_DEPEND}
+ app-arch/xz-utils
+ dev-lang/swig
+ dev-util/gperf
+ X? ( x11-proto/xineramaproto )
+ dev-util/cmake
+ x86? ( dev-lang/nasm )
+ java? ( virtual/jre )
+ test? ( dev-cpp/gtest )"
+# Force java for latest git version to avoid having to hand maintain the
+# generated addons package. #488118
+[[ ${PV} == "9999" ]] && DEPEND+=" virtual/jre"
+
+CONFIG_CHECK="~IP_MULTICAST"
+ERROR_IP_MULTICAST="
+In some cases Kodi needs to access multicast addresses.
+Please consider enabling IP_MULTICAST under Networking options.
+"
+
+pkg_setup() {
+ check_extra_config
+ python-single-r1_pkg_setup
+}
+
+src_unpack() {
+ [[ ${PV} == "9999" ]] && git-r3_src_unpack || default
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-9999-no-arm-flags.patch #400617
+ epatch "${FILESDIR}"/${P}-texturepacker.patch
+ epatch "${FILESDIR}"/${P}-gcc-5.patch #544760
+
+ # some dirs ship generated autotools, some dont
+ multijob_init
+ local d dirs=(
+ tools/depends/native/TexturePacker/src/configure
+ $(printf 'f:\n\t@echo $(BOOTSTRAP_TARGETS)\ninclude bootstrap.mk\n' | emake -f - f)
+ )
+ for d in "${dirs[@]}" ; do
+ [[ -e ${d} ]] && continue
+ pushd ${d/%configure/.} >/dev/null || die
+ AT_NOELIBTOOLIZE="yes" AT_TOPLEVEL_EAUTORECONF="yes" \
+ multijob_child_init eautoreconf
+ popd >/dev/null
+ done
+ multijob_finish
+ elibtoolize
+
+ [[ ${PV} == "9999" ]] && emake -f codegenerator.mk
+
+ # Disable internal func checks as our USE/DEPEND
+ # stuff handles this just fine already #408395
+ export ac_cv_lib_avcodec_ff_vdpau_vc1_decode_picture=yes
+
+ # Fix the final version string showing as "exported"
+ # instead of the SVN revision number.
+ export HAVE_GIT=no GIT_REV=${EGIT_VERSION:-exported}
+
+ # avoid long delays when powerkit isn't running #348580
+ sed -i \
+ -e '/dbus_connection_send_with_reply_and_block/s:-1:3000:' \
+ xbmc/linux/*.cpp || die
+
+ epatch_user #293109
+
+ # Tweak autotool timestamps to avoid regeneration
+ find . -type f -exec touch -r configure {} +
+}
+
+src_configure() {
+ # Disable documentation generation
+ export ac_cv_path_LATEX=no
+ # Avoid help2man
+ export HELP2MAN=$(type -P help2man || echo true)
+ # No configure flage for this #403561
+ export ac_cv_lib_bluetooth_hci_devid=$(usex bluetooth)
+ # Requiring java is asine #434662
+ [[ ${PV} != "9999" ]] && export ac_cv_path_JAVA_EXE=$(which $(usex java java true))
+
+ econf \
+ --docdir=/usr/share/doc/${PF} \
+ --disable-ccache \
+ --disable-optimizations \
+ --with-ffmpeg=shared \
+ $(use_enable alsa) \
+ $(use_enable airplay) \
+ $(use_enable avahi) \
+ $(use_enable bluray libbluray) \
+ $(use_enable caps libcap) \
+ $(use_enable cec libcec) \
+ $(use_enable css dvdcss) \
+ $(use_enable dbus) \
+ $(use_enable debug) \
+ $(use_enable fishbmc) \
+ $(use_enable gles) \
+ $(use_enable goom) \
+ $(use_enable joystick) \
+ $(use_enable midi mid) \
+ $(use_enable mysql) \
+ $(use_enable nfs) \
+ $(use_enable opengl gl) \
+ $(use_enable profile profiling) \
+ $(use_enable projectm) \
+ $(use_enable pulseaudio pulse) \
+ $(use_enable rsxs) \
+ $(use_enable rtmp) \
+ $(use_enable samba) \
+ $(use_enable sftp ssh) \
+ $(use_enable spectrum) \
+ $(use_enable usb libusb) \
+ $(use_enable test gtest) \
+ $(use_enable texturepacker) \
+ $(use_enable upnp) \
+ $(use_enable vaapi) \
+ $(use_enable vdpau) \
+ $(use_enable waveform) \
+ $(use_enable webserver) \
+ $(use_enable X x11)
+}
+
+src_compile() {
+ emake V=1
+}
+
+src_install() {
+ default
+ rm "${ED}"/usr/share/doc/*/{LICENSE.GPL,copying.txt}*
+
+ domenu tools/Linux/kodi.desktop
+ newicon media/icon48x48.png kodi.png
+
+ # Remove optional addons (platform specific).
+ local disabled_addons=(
+ repository.pvr-{android,ios,osx{32,64},win32}.xbmc.org
+ visualization.dxspectrum
+ visualization.vortex
+ )
+ rm -rf "${disabled_addons[@]/#/${ED}/usr/share/kodi/addons/}"
+
+ # Remove fonconfig settings that are used only on MacOSX.
+ # Can't be patched upstream because they just find all files and install
+ # them into same structure like they have in git.
+ rm -rf "${ED}"/usr/share/kodi/system/players/dvdplayer/etc
+
+ # Replace bundled fonts with system ones
+ # teletext.ttf: unknown
+ # bold-caps.ttf: unknown
+ # roboto: roboto-bold, roboto-regular
+ # arial.ttf: font mashed from droid/roboto, not removed wrt bug#460514
+ rm -rf "${ED}"/usr/share/kodi/addons/skin.confluence/fonts/Roboto-*
+ dosym /usr/share/fonts/roboto/Roboto-Regular.ttf \
+ /usr/share/kodi/addons/skin.confluence/fonts/Roboto-Regular.ttf
+ dosym /usr/share/fonts/roboto/Roboto-Bold.ttf \
+ /usr/share/kodi/addons/skin.confluence/fonts/Roboto-Bold.ttf
+
+ python_domodule tools/EventClients/lib/python/xbmcclient.py
+ python_newscript "tools/EventClients/Clients/Kodi Send/kodi-send.py" kodi-send
+}