summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-tv')
-rw-r--r--media-tv/kodi/Manifest2
-rw-r--r--media-tv/kodi/kodi-17.4.ebuild286
2 files changed, 288 insertions, 0 deletions
diff --git a/media-tv/kodi/Manifest b/media-tv/kodi/Manifest
index fe49b013d172..5045192b8ebc 100644
--- a/media-tv/kodi/Manifest
+++ b/media-tv/kodi/Manifest
@@ -3,6 +3,8 @@ DIST ffmpeg-kodi-3.1.9-Krypton-17.4.tar.gz 11186492 SHA256 ead247d5d804399951531
DIST ffmpeg-kodi-3.3.2-Leia-Alpha-1.tar.gz 11863481 SHA256 9ae58ff87fae2d124daba396c9d19db6152c501df54b11ff63971693843b4a84 SHA512 356c71aeca9eda11fd0d76d447cb005e1ff7041017df9bae2570f7486c32bc9091c26d2e38896c41b26654b1cacbdf47c69368e69654a9f2223e08bdd9117dcb WHIRLPOOL aecdb9aa813277a30006434b81d0e907e797bfa87dc7bac0a5cbc3380bc44ded282c65adcebdb09f1cfc3e5c170ecc771004ba5a87734dcfa7dc002b369ea6e4
DIST kodi-17.3-generated-addons.tar.xz 57548 SHA256 6175ac64dbcbe2c747cd77f876b8e2bb3e516daa4707d7ccf768d76a89b27bd1 SHA512 56d1912f5e24d3fcda3010783a5b32728ece9c81c718ac6f8db2cbbd096059fe97b8d1971b34bbde1216558a8e5db874f7b2179e1f18942774ae5486167bca9a WHIRLPOOL 1023c69687ac9958e72ab70c15a280800ea4866f8e0dc2740d9bfd50f75bef71c28f23f01a841f254022610e1388d14217ea384213161264dae721515c9dabe3
DIST kodi-17.3.tar.gz 58466114 SHA256 1de8653a3729cefd1baaf09ecde5ace01a1e3a58fbf29d48c1363f2503d331a1 SHA512 832071c3e9f332281a767f29168f6d6d003a86b42df849e81d907c2280f81f959ae42a850eddc889ae2280bba6106de3355e701ff2d71c88ee14cb20c84e7987 WHIRLPOOL 0ed5585f891459292a1cfd4451bee1f2b19af217e462b810468b00395ee024ba346300f84c67c6dc428d27abcaef4eec9dc7b844e66e2ab83543830a106a1634
+DIST kodi-17.4-generated-addons.tar.xz 57576 SHA256 dffa734a5fd40493b338ce76cdf49e42572b437fd449ceded3183ac09929e015 SHA512 80bb6b159c3556c75ad02110c5431fbc21339b74988421269f049cdf9b630a7e819aa5816f315aa7279247cab3d09680c5966449642d0c3e25ef1c789b285581 WHIRLPOOL 39715af523582b1eb982b6da7bb6f2a6557f99f9bb38cfd69899f0e92db977cf965648c1ff2ad6bf2e77d09b26ef655256b5c1025bc224984f0040a3713958ba
+DIST kodi-17.4.tar.gz 58475144 SHA256 b05e11b2d108222bfc3ff0c9a466d798c0feedf1228166239948e6ed37c3cb4f SHA512 fc4eff6606c84459ab24323888d39bf1f5d433aaf7136c17d85631f768761f61e498297c500befc986dd6de14de87a5a28f7a9c36c8d7c35d49ca15c99db37ef WHIRLPOOL 15f35516da71f9e64b4e7fdfa2a285236961db36ccc98fe2fa65809a0ef355c5e7b2a37cf3e36cd3bc9bc6717a3e26b7537e77d8828c09daaca7d79f9150c7d6
DIST kodi-17.4rc1-generated-addons.tar.xz 57560 SHA256 b8fc905c58a0fc97418938f0e93155eda91e7389de44b1b20d5245c4a4a92900 SHA512 00255d3764074a1709b6a8b6e75122e100ce9ae2e6fbf9cda8149a2b4bbd0e0f0391e9fef5ca888c028a7d290cd88ac1bf0fd17e04eda6b2882850a4e1a4abb4 WHIRLPOOL 8f1389f59d745568953dd4dbf41a13c5d9813142e4ee63edb94ea22157acd1b0aa47b677adb35e720ab1aa441bcfb8ed324c7343e05f9186ea6073497dca4ebd
DIST kodi-17.4rc1.tar.gz 58473381 SHA256 dd0604419528e00e14669c5c2ae9285ea60a7588eebf203bd2f399f9b8033e8c SHA512 47b4347fd4cb1ac10e5a659a77134f217646d2c2c9af1204af4d4230534eee81392dae3d18517d5e5cb53898447d44c33da913a6f280708ff055f5b7a378c347 WHIRLPOOL 6a6075683ff9ee7297213a1be89c4d5b48762730b69c35a11bd4c2d3575bfdc34a3fc06b407c5c169755f628258d7cd20e07ad8ad5b5e7f56bf791635ed10186
DIST libdvdcss-2f12236bc1c92f73c21e973363f79eb300de603f.tar.gz 95395 SHA256 b6eb2d929ff56cb051152c32010afc5e7cf5fe8c5ae32dca412a2b46b6b57e34 SHA512 12ba7aa653fcb26d5336bf2a8110c924d634cec79f684bbf19dc38ea33f69fb68c22c97f4c09e5ca7c35f95f6c324a6d70ccc2c501a99122a9321cafd33b2cd9 WHIRLPOOL 8570ad8d2b6e629cc1c7e544be2853cab3bb50fd73438cea47c7a0919b251cecf906f7446ef3714c54ee3e636278dc0dabab47f772440624ff49877068b7b50a
diff --git a/media-tv/kodi/kodi-17.4.ebuild b/media-tv/kodi/kodi-17.4.ebuild
new file mode 100644
index 000000000000..7c03f9c20d24
--- /dev/null
+++ b/media-tv/kodi/kodi-17.4.ebuild
@@ -0,0 +1,286 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# Does not work with py3 here
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="sqlite"
+
+inherit autotools cmake-utils eutils linux-info pax-utils python-single-r1 versionator
+
+LIBDVDCSS_COMMIT="2f12236bc1c92f73c21e973363f79eb300de603f"
+LIBDVDREAD_COMMIT="17d99db97e7b8f23077b342369d3c22a6250affd"
+LIBDVDNAV_COMMIT="43b5f81f5fe30bceae3b7cecf2b0ca57fc930dac"
+FFMPEG_VERSION="3.1.9"
+FFMPEG_KODI_VERSION="$(get_version_component_range 1-2)"
+CODENAME="Krypton"
+SRC_URI="https://github.com/xbmc/libdvdcss/archive/${LIBDVDCSS_COMMIT}.tar.gz -> libdvdcss-${LIBDVDCSS_COMMIT}.tar.gz
+ https://github.com/xbmc/libdvdread/archive/${LIBDVDREAD_COMMIT}.tar.gz -> libdvdread-${LIBDVDREAD_COMMIT}.tar.gz
+ https://github.com/xbmc/libdvdnav/archive/${LIBDVDNAV_COMMIT}.tar.gz -> libdvdnav-${LIBDVDNAV_COMMIT}.tar.gz
+ !system-ffmpeg? ( https://github.com/xbmc/FFmpeg/archive/${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz -> ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz )"
+
+DESCRIPTION="Kodi is a free and open source media-player and entertainment hub"
+HOMEPAGE="https://kodi.tv/ http://kodi.wiki/"
+
+LICENSE="GPL-2"
+SLOT="0"
+# use flag is called libusb so that it doesn't fool people in thinking that
+# it is _required_ for USB support. Otherwise they'll disable udev and
+# that's going to be worse.
+IUSE="airplay alsa bluetooth bluray caps cec +css dbus debug dvd gles libressl libusb lirc mysql nfs nonfree +opengl pulseaudio samba sftp systemd +system-ffmpeg test +udev udisks upnp upower vaapi vdpau webserver +X +xslt zeroconf"
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ || ( gles opengl )
+ gles? ( X )
+ opengl? ( X )
+ udev? ( !libusb )
+ udisks? ( dbus )
+ upower? ( dbus )
+"
+
+COMMON_DEPEND="${PYTHON_DEPS}
+ airplay? (
+ app-pda/libplist
+ net-libs/shairplay
+ )
+ alsa? ( media-libs/alsa-lib )
+ bluetooth? ( net-wireless/bluez )
+ bluray? ( >=media-libs/libbluray-0.7.0 )
+ caps? ( sys-libs/libcap )
+ dbus? ( sys-apps/dbus )
+ dev-db/sqlite
+ dev-libs/expat
+ dev-libs/fribidi
+ cec? ( >=dev-libs/libcec-4.0 )
+ dev-libs/libpcre[cxx]
+ dev-libs/libxml2
+ >=dev-libs/lzo-2.04
+ dev-libs/tinyxml[stl]
+ >=dev-libs/yajl-2
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-libs/libcdio
+ gles? ( media-libs/mesa[gles2] )
+ libusb? ( virtual/libusb:1 )
+ media-fonts/corefonts
+ >=media-fonts/noto-20160531
+ media-fonts/roboto
+ media-libs/fontconfig
+ media-libs/freetype
+ >=media-libs/libass-0.13.4
+ media-libs/mesa[egl]
+ >=media-libs/taglib-1.11.1
+ system-ffmpeg? ( >=media-video/ffmpeg-${FFMPEG_VERSION}:=[encode,openssl,postproc] )
+ mysql? ( virtual/mysql )
+ >=net-misc/curl-7.51.0
+ nfs? ( net-fs/libnfs:= )
+ opengl? ( media-libs/glu )
+ !libressl? ( >=dev-libs/openssl-1.0.2j:0= )
+ libressl? ( dev-libs/libressl:0= )
+ pulseaudio? ( media-sound/pulseaudio )
+ samba? ( >=net-fs/samba-3.4.6[smbclient(+)] )
+ sftp? ( net-libs/libssh[sftp] )
+ sys-libs/zlib
+ udev? ( virtual/udev )
+ vaapi? ( x11-libs/libva[opengl] )
+ vdpau? (
+ || ( >=x11-libs/libvdpau-1.1 >=x11-drivers/nvidia-drivers-180.51 )
+ system-ffmpeg? ( media-video/ffmpeg[vdpau] )
+ )
+ webserver? ( >=net-libs/libmicrohttpd-0.9.50[messages] )
+ X? (
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ )
+ xslt? ( dev-libs/libxslt )
+ zeroconf? ( net-dns/avahi[dbus] )
+"
+RDEPEND="${COMMON_DEPEND}
+ lirc? (
+ || ( app-misc/lirc app-misc/inputlircd )
+ )
+ !media-tv/xbmc
+ udisks? ( sys-fs/udisks:0 )
+ upower? (
+ systemd? ( sys-power/upower )
+ !systemd? (
+ || ( sys-power/upower-pm-utils sys-power/upower )
+ )
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ app-arch/bzip2
+ app-arch/unzip
+ app-arch/xz-utils
+ app-arch/zip
+ dev-lang/swig
+ dev-libs/crossguid
+ dev-util/cmake
+ dev-util/gperf
+ media-libs/giflib
+ >=media-libs/libjpeg-turbo-1.5.1:=
+ >=media-libs/libpng-1.6.26:0=
+ test? ( dev-cpp/gtest )
+ virtual/pkgconfig
+ x86? ( dev-lang/nasm )
+"
+case ${PV} in
+9999)
+ EGIT_REPO_URI="https://github.com/xbmc/xbmc.git"
+ inherit git-r3
+ # Force java for latest git version to avoid having to hand maintain the
+ # generated addons package. #488118
+ DEPEND+="
+ virtual/jre
+ "
+ ;;
+*)
+ MY_PV=${PV/_p/_r}
+ MY_PV=${MY_PV/_alpha/a}
+ MY_PV=${MY_PV/_beta/b}
+ MY_PV=${MY_PV/_rc/rc}
+ MY_P="${PN}-${MY_PV}"
+ SRC_URI+=" https://github.com/xbmc/xbmc/archive/${MY_PV}-${CODENAME}.tar.gz -> ${MY_P}.tar.gz
+ !java? ( https://github.com/candrews/gentoo-kodi/raw/master/${MY_P}-generated-addons.tar.xz )"
+ KEYWORDS="~amd64 ~x86"
+ IUSE+=" java"
+ DEPEND+="
+ java? ( virtual/jre )
+ "
+
+ S=${WORKDIR}/xbmc-${MY_PV}-${CODENAME}
+ ;;
+esac
+
+CONFIG_CHECK="~IP_MULTICAST"
+ERROR_IP_MULTICAST="
+In some cases Kodi needs to access multicast addresses.
+Please consider enabling IP_MULTICAST under Networking options.
+"
+
+CMAKE_USE_DIR=${S}/project/cmake/
+
+pkg_setup() {
+ check_extra_config
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ if in_iuse java && use !java; then
+ eapply "${FILESDIR}"/${PN}-cmake-no-java.patch
+ fi
+ cmake-utils_src_prepare
+
+ # 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
+
+ # Prepare tools and libs witch are configured with autotools during compile time
+ AUTOTOOLS_DIRS=(
+ "${S}"/lib/cpluff
+ "${S}"/tools/depends/native/TexturePacker/src
+ "${S}"/tools/depends/native/JsonSchemaBuilder/src
+ )
+
+ local d
+ for d in "${AUTOTOOLS_DIRS[@]}" ; do
+ pushd ${d} >/dev/null || die
+ AT_NOELIBTOOLIZE="yes" AT_TOPLEVEL_EAUTORECONF="yes" eautoreconf
+ popd >/dev/null || die
+ done
+ elibtoolize
+
+ # Prevent autoreconf rerun
+ sed -e 's/autoreconf -vif/echo "autoreconf already done in src_prepare()"/' -i \
+ "${S}"/project/cmake/modules/FindCpluff.cmake \
+ "${S}"/tools/depends/native/TexturePacker/src/autogen.sh \
+ "${S}"/tools/depends/native/JsonSchemaBuilder/src/autogen.sh \
+ || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
+ -DENABLE_LDGOLD=OFF # https://bugs.gentoo.org/show_bug.cgi?id=606124
+ -DENABLE_ALSA=$(usex alsa)
+ -DENABLE_AIRTUNES=$(usex airplay)
+ -DENABLE_AVAHI=$(usex zeroconf)
+ -DENABLE_BLUETOOTH=$(usex bluetooth)
+ -DENABLE_BLURAY=$(usex bluray)
+ -DENABLE_CCACHE=OFF
+ -DENABLE_CEC=$(usex cec)
+ -DENABLE_DBUS=$(usex dbus)
+ -DENABLE_DVDCSS=$(usex css)
+ -DENABLE_INTERNAL_CROSSGUID=OFF
+ -DENABLE_INTERNAL_FFMPEG="$(usex !system-ffmpeg)"
+ -DENABLE_CAP=$(usex caps)
+ -DENABLE_LIRC=$(usex lirc)
+ -DENABLE_MICROHTTPD=$(usex webserver)
+ -DENABLE_MYSQLCLIENT=$(usex mysql)
+ -DENABLE_NFS=$(usex nfs)
+ -DENABLE_NONFREE=$(usex nonfree)
+ -DENABLE_OPENGLES=$(usex gles)
+ -DENABLE_OPENGL=$(usex opengl)
+ -DENABLE_OPENSSL=ON
+ -DENABLE_OPTICAL=$(usex dvd)
+ -DENABLE_PLIST=$(usex airplay)
+ -DENABLE_PULSEAUDIO=$(usex pulseaudio)
+ -DENABLE_SMBCLIENT=$(usex samba)
+ -DENABLE_SSH=$(usex sftp)
+ -DENABLE_UDEV=$(usex udev)
+ -DENABLE_UPNP=$(usex upnp)
+ -DENABLE_VAAPI=$(usex vaapi)
+ -DENABLE_VDPAU=$(usex vdpau)
+ -DENABLE_X11=$(usex X)
+ -DENABLE_XSLT=$(usex xslt)
+ -Dlibdvdread_URL="${DISTDIR}/libdvdread-${LIBDVDREAD_COMMIT}.tar.gz"
+ -Dlibdvdnav_URL="${DISTDIR}/libdvdnav-${LIBDVDNAV_COMMIT}.tar.gz"
+ -Dlibdvdcss_URL="${DISTDIR}/libdvdcss-${LIBDVDCSS_COMMIT}.tar.gz"
+ )
+
+ use libusb && mycmakeargs+=( -DENABLE_LIBUSB=$(usex libusb) )
+
+ if use system-ffmpeg; then
+ mycmakeargs+=( -DWITH_FFMPEG="yes" )
+ else
+ mycmakeargs+=( -DFFMPEG_URL="${DISTDIR}/ffmpeg-${PN}-${FFMPEG_VERSION}-${CODENAME}-${FFMPEG_KODI_VERSION}.tar.gz" )
+ fi
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile all $(usev test)
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ pax-mark Em "${ED%/}"/usr/$(get_libdir)/${PN}/${PN}.bin
+
+ rm "${ED%/}"/usr/share/doc/*/{LICENSE.GPL,copying.txt}* || die
+
+ newicon media/icon48x48.png kodi.png
+
+ # Replace bundled fonts with system ones.
+ rm "${ED%/}"/usr/share/kodi/addons/skin.estouchy/fonts/NotoSans-Regular.ttf || die
+ dosym ../../../../fonts/noto/NotoSans-Regular.ttf \
+ usr/share/kodi/addons/skin.estouchy/fonts/NotoSans-Regular.ttf
+
+ local f
+ for f in NotoMono-Regular.ttf NotoSans-Bold.ttf NotoSans-Regular.ttf ; do
+ rm "${ED%/}"/usr/share/kodi/addons/skin.estuary/fonts/"${f}" || die
+ dosym ../../../../fonts/noto/"${f}" \
+ usr/share/kodi/addons/skin.estuary/fonts/"${f}"
+ done
+
+ rm "${ED%/}"/usr/share/kodi/addons/skin.estuary/fonts/Roboto-Thin.ttf || die
+ dosym ../../../../fonts/roboto/Roboto-Thin.ttf \
+ usr/share/kodi/addons/skin.estuary/fonts/Roboto-Thin.ttf
+
+ python_domodule tools/EventClients/lib/python/xbmcclient.py
+ python_newscript "tools/EventClients/Clients/Kodi Send/kodi-send.py" kodi-send
+}