summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Andrews <candrews@gentoo.org>2019-09-05 12:20:21 -0400
committerCraig Andrews <candrews@gentoo.org>2019-09-05 13:30:19 -0400
commitfe1fbf319bcb246812c3c3ac9480394c1d5edb5d (patch)
tree39a7d50e72a5955c02904ea7aeded0c8951d1373
parentmedia-plugins/kodi-visualization-waveform: Cleanup Kodi 17 versions (diff)
downloadgentoo-fe1fbf319bcb246812c3c3ac9480394c1d5edb5d.tar.gz
gentoo-fe1fbf319bcb246812c3c3ac9480394c1d5edb5d.tar.bz2
gentoo-fe1fbf319bcb246812c3c3ac9480394c1d5edb5d.zip
media-tv/kodi: Cleanup old version (Kodi 17)
Package-Manager: Portage-2.3.75, Repoman-2.3.17 Signed-off-by: Craig Andrews <candrews@gentoo.org>
-rw-r--r--media-tv/kodi/Manifest6
-rwxr-xr-xmedia-tv/kodi/files/generate.sh34
-rw-r--r--media-tv/kodi/files/kodi-17-adapt-to-deprecated-symbols-and-functions.patch401
-rw-r--r--media-tv/kodi/files/kodi-17-fix-audio-with-latest-ffmpeg.patch15
-rw-r--r--media-tv/kodi/files/kodi-17.6-nmblookup.patch25
-rw-r--r--media-tv/kodi/files/kodi-17.6-wrapper.patch39
-rw-r--r--media-tv/kodi/files/kodi-cmake-no-java.patch56
-rw-r--r--media-tv/kodi/kodi-17.6-r11.ebuild277
-rw-r--r--media-tv/kodi/metadata.xml2
9 files changed, 0 insertions, 855 deletions
diff --git a/media-tv/kodi/Manifest b/media-tv/kodi/Manifest
index edb5036b3d2f..c921311ac0cb 100644
--- a/media-tv/kodi/Manifest
+++ b/media-tv/kodi/Manifest
@@ -1,13 +1,7 @@
-DIST ffmpeg-kodi-3.1.11-Krypton-17.5.tar.gz 11188798 BLAKE2B bb91a89a47f3ea6894f28834b477cc2c2db64590e0202b784182f724e89fb385385218463404076565bedcd41a81797c2f340ce579aee75e09f2c99ae494031d SHA512 b28bb6970c6767213f34e5f4f3e48ad5219a6c668a5264ff7de0a42712cb7393f389ddd88f56785a2dc8089f8231ae5fd05adfa10dbf15ea3e0ad7bc2ccd4d73
DIST ffmpeg-kodi-4.0.3-Leia-18.2.tar.gz 12426917 BLAKE2B 83da9511d7b4ef6a8c813561a061c4fe86712e4424c30c9005500751c6c79f4232910caaf13cd34d2db1867f592b042dd291d6c32a77f80107ce87a3a7db1760 SHA512 b4d4bf16f05b953ba81769446c8fd90246e1919b9ef671fb212008151c83d8445e4123ad37c352aa6243074962832e817749d2de318eb721d5bb5d655fd77ab2
DIST ffmpeg-kodi-4.0.4-Leia-18.4.tar.gz 12430413 BLAKE2B 6de6fde2c16264f851466b46f87c23c34e7d503203f69d47342d46034f153860190d196da51221f866315405c8a33325b2160283333256ee5d5e293336afae99 SHA512 c6dd75dbff7119adeeda246cfb640b5e8d3b4c242ef83e5ba070207b60f0c715c3fe3cb328d87687b70a133f122a03aba990f0e95f3aac7d5dbcee25bec59078
-DIST kodi-17.6-generated-addons.tar.xz 57564 BLAKE2B 9b3000ac23a6aab24b703a2b66016dbf0637ff3d615b89435cba3717acb913a4543bb57aaa9ae59a9493891ba62af06414ef2c0cea3a81e9ec32ea60e209330d SHA512 ee1344e859b2871f9dd3e2f2f75f9c0f9f787ac111a6b9ab8f80af6524a786d51baeb4f247a8c5b35001073be49bf4289d1c63e3114625143f3747aa9b1f4be2
-DIST kodi-17.6.tar.gz 58275293 BLAKE2B 538675b7a3400d9182f957da9bbf609ce5ece502c3a7f4a32e26c802bae9795979554204148e06d1923d8e68ba1f06f9d92bf11416f73cf9431381642ca00639 SHA512 1f1ba91e6129ab423f9ad47b63d7bb75775dbf18638a96413a572aaa790f4f0d738ca35486513e158a7f55d501f78f08dd9d68aabe2fbb80a729c6091b264111
DIST kodi-18.3.tar.gz 51013397 BLAKE2B cce29d481397dddd3c942f83a034bc6d73eafc1be2a50436e1e5611ccf04c27e6110c4b4f99f7f7d1cf8da3e2550209c8bee3db6e98136b8fa9738c4b1fc7e43 SHA512 4e898e28238dcbc67e106c5a0ef88bd6a82f8c0ad00e77e3ddbe2da6181b37d9ca1ba6bda57206223cfa119c5291edb4410d3e773d97b5ab67660e49929437ec
DIST kodi-18.4.tar.gz 51027569 BLAKE2B 47e3377abb4a1e5a3c26b1519f45ab9347127467594841ac689b857a3f4163731951d4e1e4960bce5c2af4fa224acf4a3887f42bdc41a603bba4979d3bcbcda8 SHA512 ae08fc29d20387d9352dc1ae4a89da19962a279b89705ff8f7869377281589d44a685cebaa8509d3252ae79215dcdaadb72e9fa752e6d2bce59974bc23276aad
DIST libdvdcss-1.4.2-Leia-Beta-5.tar.gz 101068 BLAKE2B 283aa2cec0a2200d3569bc280cb9659e9224a6b3a77db8a35b269cd8caf1337ac9d8b92b806df66f63ef7458a46bd6261f0b8b14678b10e26644a79dcbeea5da SHA512 5185dbdbeb1bd13ea9d8723f1f4ab599d6f3102f5ba1096cd085aa1cda252c045f327c719227bba8e1b742352ade5e335106c8d0c1637a5a6b93ce661620dd7e
-DIST libdvdcss-2f12236bc1c92f73c21e973363f79eb300de603f.tar.gz 95395 BLAKE2B fb3973e098201d177309ad7ca50131725eee4bc6f30f425efa5fea406411f6143ba03abd82cd6c91a250419d3e0a29aafcbf981ba015f6e14cd0ceb001222c12 SHA512 12ba7aa653fcb26d5336bf2a8110c924d634cec79f684bbf19dc38ea33f69fb68c22c97f4c09e5ca7c35f95f6c324a6d70ccc2c501a99122a9321cafd33b2cd9
-DIST libdvdnav-43b5f81f5fe30bceae3b7cecf2b0ca57fc930dac.tar.gz 130603 BLAKE2B 0a211fcedb216567bcd929048af01486ff91efbb8d31592fd116676b6ae95de3cd7bfab7cd79853b3d15e96c27e62cce8c79eeb9baee68a1bad4f3fce8a207a0 SHA512 901c6f24afa1d78b6ed78d1ee30daf634ca0bbc0467ef9cc3416bcab4fbc4fda6869ffa051791d85c0b510de748805328627681ef044668a7857299f0035232e
DIST libdvdnav-6.0.0-Leia-Alpha-3.tar.gz 137942 BLAKE2B 7573434a0ae8e8ccabf48173f81fcde29074eb138e119a2ae9156cde3c3d8bfd716f5d0e605b97f2dcac21f570781137c8533c5ae306b51e3905822fda318355 SHA512 11c93eaacd156f8fd7dec7c43d366438b201f31ad55b2870463a9e286912b6ada08882319a021fb7992190f87b909a49f2b83e0321cc17aedc29f7fe5898fa72
-DIST libdvdread-17d99db97e7b8f23077b342369d3c22a6250affd.tar.gz 124326 BLAKE2B 37521d50f9983290df5209db417e39ea4f3dcf5c36eafe9f75a8c23689c7302c29c4197e40eebb0f1b35cd16e5264e251a72548a0ce2ec2ba1a3a22c1768adaf SHA512 e59ae0bfdc62698e407e3d70503c6a7c5e308545c9dae7843e25db3b5b62d9b26256be77ef4e884263add6b4abec3438c324bfd5715f6ca2ce7fa5962d43a6c2
DIST libdvdread-6.0.0-Leia-Alpha-3.tar.gz 130649 BLAKE2B 0c206acdaf0776841ab792c74e023af07d9539eb72e03ae164382a31ed950f60e5e15f1d055979d28f1398924471b294d11f064b11b8373353b3962a3777ff3c SHA512 b3419ba0a1a2dd70f1bb6236afdfe1c6e88c9ad4264198b289e3bba9375e077cecf7f89848c7b09debaa445327f3507101f3d157e692f7a7163b2bb52643e1e7
diff --git a/media-tv/kodi/files/generate.sh b/media-tv/kodi/files/generate.sh
deleted file mode 100755
index 2e5b67fb90e1..000000000000
--- a/media-tv/kodi/files/generate.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-# Generate the various interface files that normally requires java.
-# This makes building the release versions much nicer.
-
-set -eux
-
-PV=$1
-PN=kodi
-P="${PN}-${PV}"
-DISTDIR="/usr/portage/distfiles"
-GITDIR="/usr/local/src/kodi/git"
-
-if [[ ${PV} != "9999" ]] ; then
- rm -rf xbmc-*/
- tar xf ${DISTDIR}/${P}.tar.gz
- d=$(echo xbmc-*/)
-else
- stamp=$(date --date="$(git log -n1 --pretty=format:%ci master)" -u +%Y%m%d)
- P+="-${stamp}"
- cd ${GITDIR}
- d=.
-fi
-#cd ${d} && git init . && git add . && git commit -qmm && cd ..
-make -C ${d} -j -f codegenerator.mk
-tar="${DISTDIR}/${P}-generated-addons.tar.xz"
-tar cf - \
- ${d}/xbmc/interfaces/python/generated/*.cpp \
- ${d}/xbmc/interfaces/json-rpc/ServiceDescription.h \
- | xz > "${tar}"
-if [[ ${PV} != "9999" ]] ; then
- rm -rf xbmc-*/
-fi
-
-du -b "${tar}"
diff --git a/media-tv/kodi/files/kodi-17-adapt-to-deprecated-symbols-and-functions.patch b/media-tv/kodi/files/kodi-17-adapt-to-deprecated-symbols-and-functions.patch
deleted file mode 100644
index 0ec08810db5e..000000000000
--- a/media-tv/kodi/files/kodi-17-adapt-to-deprecated-symbols-and-functions.patch
+++ /dev/null
@@ -1,401 +0,0 @@
-From 19f28e88a5dfed82e9844f69210f7c045f18ca8e Mon Sep 17 00:00:00 2001
-From: Rainer Hochecker <fernetmenta@online.de>
-Date: Wed, 1 Nov 2017 16:12:13 +0100
-Subject: [PATCH] ffmpeg: drop deprecated symbols and functions
-
----
- xbmc/cdrip/EncoderFFmpeg.cpp | 4 +-
- .../AudioEngine/Encoders/AEEncoderFFmpeg.h | 2 +-
- .../AudioEngine/Engines/ActiveAE/ActiveAE.cpp | 2 +-
- .../Engines/ActiveAE/ActiveAEFilter.cpp | 6 +--
- .../DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp | 6 +--
- .../Overlay/DVDOverlayCodecFFmpeg.cpp | 2 +-
- .../DVDCodecs/Video/DVDVideoCodec.h | 1 +
- .../DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 39 +++++--------------
- .../DVDCodecs/Video/DVDVideoPPFFmpeg.cpp | 5 +--
- .../VideoPlayer/DVDCodecs/Video/VAAPI.cpp | 4 +-
- .../DVDDemuxers/DVDDemuxClient.cpp | 6 +--
- .../DVDDemuxers/DVDDemuxFFmpeg.cpp | 6 +--
- .../VideoPlayer/DVDDemuxers/DVDDemuxUtils.cpp | 4 +-
- xbmc/cores/VideoPlayer/VideoPlayerVideo.cpp | 1 -
- xbmc/guilib/FFmpegImage.cpp | 4 +-
- xbmc/utils/BitstreamConverter.cpp | 12 +++---
- 16 files changed, 40 insertions(+), 64 deletions(-)
-
-Index: kodi-17.6+dfsg1/xbmc/cdrip/EncoderFFmpeg.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cdrip/EncoderFFmpeg.cpp
-+++ kodi-17.6+dfsg1/xbmc/cdrip/EncoderFFmpeg.cpp
-@@ -119,8 +119,8 @@
-
- if(m_Format->oformat->flags & AVFMT_GLOBALHEADER)
- {
-- m_CodecCtx->flags |= CODEC_FLAG_GLOBAL_HEADER;
-- m_Format->flags |= CODEC_FLAG_GLOBAL_HEADER;
-+ m_CodecCtx->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
-+ m_Format->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
- }
-
- switch(m_iInBitsPerSample)
-Index: kodi-17.6+dfsg1/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h
-+++ kodi-17.6+dfsg1/xbmc/cores/AudioEngine/Encoders/AEEncoderFFmpeg.h
-@@ -56,7 +56,7 @@
- SwrContext *m_SwrCtx;
- CAEChannelInfo m_Layout;
- AVPacket m_Pkt;
-- uint8_t m_Buffer[8 + FF_MIN_BUFFER_SIZE];
-+ uint8_t m_Buffer[8 + AV_INPUT_BUFFER_MIN_SIZE];
- int m_BufferSize;
- int m_OutputSize;
- double m_OutputRatio;
-Index: kodi-17.6+dfsg1/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
-@@ -2955,7 +2955,7 @@
- int fileSize = sound->GetFileSize();
-
- fmt_ctx = avformat_alloc_context();
-- unsigned char* buffer = (unsigned char*)av_malloc(SOUNDBUFFER_SIZE+FF_INPUT_BUFFER_PADDING_SIZE);
-+ unsigned char* buffer = (unsigned char*)av_malloc(SOUNDBUFFER_SIZE+AV_INPUT_BUFFER_PADDING_SIZE);
- io_ctx = avio_alloc_context(buffer, SOUNDBUFFER_SIZE, 0,
- sound, CActiveAESound::Read, NULL, CActiveAESound::Seek);
- io_ctx->max_packet_size = sound->GetChunkSize();
-Index: kodi-17.6+dfsg1/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEFilter.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEFilter.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEFilter.cpp
-@@ -91,8 +91,8 @@
- return false;
- }
-
-- AVFilter* srcFilter = avfilter_get_by_name("abuffer");
-- AVFilter* outFilter = avfilter_get_by_name("abuffersink");
-+ const AVFilter* srcFilter = avfilter_get_by_name("abuffer");
-+ const AVFilter* outFilter = avfilter_get_by_name("abuffersink");
-
- std::string args = StringUtils::Format("time_base=1/%d:sample_rate=%d:sample_fmt=%s:channel_layout=0x%" PRIx64,
- m_sampleRate,
-@@ -121,7 +121,7 @@
-
- bool CActiveAEFilter::CreateAtempoFilter()
- {
-- AVFilter *atempo;
-+ const AVFilter *atempo;
-
- atempo = avfilter_get_by_name("atempo");
- m_pFilterCtxAtempo = avfilter_graph_alloc_filter(m_pFilterGraph, atempo, "atempo");
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Audio/DVDAudioCodecFFmpeg.cpp
-@@ -82,8 +82,8 @@
- m_pCodecContext->debug = 0;
- m_pCodecContext->workaround_bugs = 1;
-
-- if (pCodec->capabilities & CODEC_CAP_TRUNCATED)
-- m_pCodecContext->flags |= CODEC_FLAG_TRUNCATED;
-+ if (pCodec->capabilities & AV_CODEC_CAP_TRUNCATED)
-+ m_pCodecContext->flags |= AV_CODEC_FLAG_TRUNCATED;
-
- m_matrixEncoding = AV_MATRIX_ENCODING_NONE;
- m_channels = 0;
-@@ -98,7 +98,7 @@
-
- if( hints.extradata && hints.extrasize > 0 )
- {
-- m_pCodecContext->extradata = (uint8_t*)av_mallocz(hints.extrasize + FF_INPUT_BUFFER_PADDING_SIZE);
-+ m_pCodecContext->extradata = (uint8_t*)av_mallocz(hints.extrasize + AV_INPUT_BUFFER_PADDING_SIZE);
- if(m_pCodecContext->extradata)
- {
- m_pCodecContext->extradata_size = hints.extrasize;
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/DVDOverlayCodecFFmpeg.cpp
-@@ -73,7 +73,7 @@
- if( hints.extradata && hints.extrasize > 0 )
- {
- m_pCodecContext->extradata_size = hints.extrasize;
-- m_pCodecContext->extradata = (uint8_t*)av_mallocz(hints.extrasize + FF_INPUT_BUFFER_PADDING_SIZE);
-+ m_pCodecContext->extradata = (uint8_t*)av_mallocz(hints.extrasize + AV_INPUT_BUFFER_PADDING_SIZE);
- memcpy(m_pCodecContext->extradata, hints.extradata, hints.extrasize);
-
- // start parsing of extra data - create a copy to be safe and make it zero-terminating to avoid access violations!
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodec.h
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodec.h
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodec.h
-@@ -118,6 +118,7 @@
- int8_t* qp_table; //< Quantization parameters, primarily used by filters
- int qstride;
- int qscale_type;
-+ int pict_type;
-
- unsigned int iWidth;
- unsigned int iHeight;
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-@@ -171,7 +171,7 @@
- ctx->SetHardware(NULL);
- avctx->get_buffer2 = avcodec_default_get_buffer2;
- avctx->slice_flags = 0;
-- avctx->hwaccel_context = 0;
-+ av_buffer_unref(&avctx->hw_frames_ctx);
- }
-
- const AVPixelFormat * cur = fmt;
-@@ -382,16 +382,6 @@
- else
- m_decoderState = STATE_SW_SINGLE;
-
--#if defined(TARGET_DARWIN_IOS)
-- // ffmpeg with enabled neon will crash and burn if this is enabled
-- m_pCodecContext->flags &= CODEC_FLAG_EMU_EDGE;
--#else
-- if (pCodec->id != AV_CODEC_ID_H264 && pCodec->capabilities & CODEC_CAP_DR1
-- && pCodec->id != AV_CODEC_ID_VP8
-- )
-- m_pCodecContext->flags |= CODEC_FLAG_EMU_EDGE;
--#endif
--
- // if we don't do this, then some codecs seem to fail.
- m_pCodecContext->coded_height = hints.height;
- m_pCodecContext->coded_width = hints.width;
-@@ -400,7 +390,7 @@
- if( hints.extradata && hints.extrasize > 0 )
- {
- m_pCodecContext->extradata_size = hints.extrasize;
-- m_pCodecContext->extradata = (uint8_t*)av_mallocz(hints.extrasize + FF_INPUT_BUFFER_PADDING_SIZE);
-+ m_pCodecContext->extradata = (uint8_t*)av_mallocz(hints.extrasize + AV_INPUT_BUFFER_PADDING_SIZE);
- memcpy(m_pCodecContext->extradata, hints.extradata, hints.extrasize);
- }
-
-@@ -791,6 +781,7 @@
- m_droppedFrames = 0;
- m_iLastKeyframe = m_pCodecContext->has_b_frames;
- avcodec_flush_buffers(m_pCodecContext);
-+ av_frame_unref(m_pFrame);
-
- if (m_pHardware)
- m_pHardware->Reset();
-@@ -883,22 +874,10 @@
- pDvdVideoPicture->color_range = 0;
-
- int qscale_type;
-- pDvdVideoPicture->qp_table = av_frame_get_qp_table(m_pFrame, &pDvdVideoPicture->qstride, &qscale_type);
--
-- switch (qscale_type)
-- {
-- case FF_QSCALE_TYPE_MPEG1:
-- pDvdVideoPicture->qscale_type = DVP_QSCALE_MPEG1;
-- break;
-- case FF_QSCALE_TYPE_MPEG2:
-- pDvdVideoPicture->qscale_type = DVP_QSCALE_MPEG2;
-- break;
-- case FF_QSCALE_TYPE_H264:
-- pDvdVideoPicture->qscale_type = DVP_QSCALE_H264;
-- break;
-- default:
-- pDvdVideoPicture->qscale_type = DVP_QSCALE_UNKNOWN;
-- }
-+ pDvdVideoPicture->qp_table = av_frame_get_qp_table(m_pFrame,
-+ &pDvdVideoPicture->qstride,
-+ &pDvdVideoPicture->qscale_type);
-+ pDvdVideoPicture->pict_type = m_pFrame->pict_type;
-
- if (pDvdVideoPicture->iRepeatPicture)
- pDvdVideoPicture->dts = DVD_NOPTS_VALUE;
-@@ -989,8 +968,8 @@
- return -1;
- }
-
-- AVFilter* srcFilter = avfilter_get_by_name("buffer");
-- AVFilter* outFilter = avfilter_get_by_name("buffersink"); // should be last filter in the graph for now
-+ const AVFilter* srcFilter = avfilter_get_by_name("buffer");
-+ const AVFilter* outFilter = avfilter_get_by_name("buffersink"); // should be last filter in the graph for now
-
- std::string args = StringUtils::Format("%d:%d:%d:%d:%d:%d:%d",
- m_pCodecContext->width,
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoPPFFmpeg.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoPPFFmpeg.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoPPFFmpeg.cpp
-@@ -132,15 +132,12 @@
- }
- }
-
-- int pict_type = (m_pSource->qscale_type != DVP_QSCALE_MPEG1) ?
-- PP_PICT_TYPE_QP2 : 0;
--
- pp_postprocess((const uint8_t**)m_pSource->data, m_pSource->iLineSize,
- m_pTarget->data, m_pTarget->iLineSize,
- m_pSource->iWidth, m_pSource->iHeight,
- m_pSource->qp_table, m_pSource->qstride,
- m_pMode, m_pContext,
-- pict_type); //m_pSource->iFrameType);
-+ m_pSource->pict_type | m_pSource->qscale_type ? PP_PICT_TYPE_QP2 : 0);
-
- //Copy frame information over to target, but make sure it is set as allocated should decoder have forgotten
- m_pTarget->iFlags = m_pSource->iFlags | DVP_FLAG_ALLOCATED;
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDCodecs/Video/VAAPI.cpp
-@@ -3090,8 +3090,8 @@
- return false;
- }
-
-- AVFilter* srcFilter = avfilter_get_by_name("buffer");
-- AVFilter* outFilter = avfilter_get_by_name("buffersink");
-+ const AVFilter* srcFilter = avfilter_get_by_name("buffer");
-+ const AVFilter* outFilter = avfilter_get_by_name("buffersink");
-
- std::string args = StringUtils::Format("%d:%d:%d:%d:%d:%d:%d",
- m_config.vidWidth,
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxClient.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxClient.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxClient.cpp
-@@ -25,7 +25,7 @@
- #include "settings/Settings.h"
- #include "../DVDClock.h"
-
--#define FF_MAX_EXTRADATA_SIZE ((1 << 28) - FF_INPUT_BUFFER_PADDING_SIZE)
-+#define FF_MAX_EXTRADATA_SIZE ((1 << 28) - AV_INPUT_BUFFER_PADDING_SIZE)
-
-
- class CDemuxStreamClientInternal
-@@ -179,9 +179,9 @@
- st->changes++;
- st->disabled = false;
- st->ExtraSize = len;
-- st->ExtraData = new uint8_t[len+FF_INPUT_BUFFER_PADDING_SIZE];
-+ st->ExtraData = new uint8_t[len+AV_INPUT_BUFFER_PADDING_SIZE];
- memcpy(st->ExtraData, pkt->pData, len);
-- memset((uint8_t*)st->ExtraData + len, 0 , FF_INPUT_BUFFER_PADDING_SIZE);
-+ memset((uint8_t*)st->ExtraData + len, 0 , AV_INPUT_BUFFER_PADDING_SIZE);
- stream->m_parser_split = false;
- }
- }
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
-@@ -78,7 +78,7 @@
- {}
- };
-
--#define FF_MAX_EXTRADATA_SIZE ((1 << 28) - FF_INPUT_BUFFER_PADDING_SIZE)
-+#define FF_MAX_EXTRADATA_SIZE ((1 << 28) - AV_INPUT_BUFFER_PADDING_SIZE)
-
- std::string CDemuxStreamAudioFFmpeg::GetStreamName()
- {
-@@ -1881,12 +1881,12 @@
- // Found extradata, fill it in. This will cause
- // a new stream to be created and used.
- st->codec->extradata_size = i;
-- st->codec->extradata = (uint8_t*)av_malloc(st->codec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE);
-+ st->codec->extradata = (uint8_t*)av_malloc(st->codec->extradata_size + AV_INPUT_BUFFER_PADDING_SIZE);
- if (st->codec->extradata)
- {
- CLog::Log(LOGDEBUG, "CDVDDemuxFFmpeg::Read() fetching extradata, extradata_size(%d)", st->codec->extradata_size);
- memcpy(st->codec->extradata, pkt->data, st->codec->extradata_size);
-- memset(st->codec->extradata + i, 0, FF_INPUT_BUFFER_PADDING_SIZE);
-+ memset(st->codec->extradata + i, 0, AV_INPUT_BUFFER_PADDING_SIZE);
- }
- else
- {
-Index: kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxUtils.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxUtils.cpp
-+++ kodi-17.6+dfsg1/xbmc/cores/VideoPlayer/DVDDemuxers/DVDDemuxUtils.cpp
-@@ -68,7 +68,7 @@
- * Note, if the first 23 bits of the additional bytes are not 0 then damaged
- * MPEG bitstreams could cause overread and segfault
- */
-- pPacket->pData =(uint8_t*)_aligned_malloc(iDataSize + FF_INPUT_BUFFER_PADDING_SIZE, 16);
-+ pPacket->pData =(uint8_t*)_aligned_malloc(iDataSize + AV_INPUT_BUFFER_PADDING_SIZE, 16);
- if (!pPacket->pData)
- {
- FreeDemuxPacket(pPacket);
-@@ -76,7 +76,7 @@
- }
-
- // reset the last 8 bytes to 0;
-- memset(pPacket->pData + iDataSize, 0, FF_INPUT_BUFFER_PADDING_SIZE);
-+ memset(pPacket->pData + iDataSize, 0, AV_INPUT_BUFFER_PADDING_SIZE);
- }
-
- // setup defaults
-Index: kodi-17.6+dfsg1/xbmc/guilib/FFmpegImage.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/guilib/FFmpegImage.cpp
-+++ kodi-17.6+dfsg1/xbmc/guilib/FFmpegImage.cpp
-@@ -551,7 +551,7 @@
- tdm.avOutctx->time_base.num = 1;
- tdm.avOutctx->time_base.den = 1;
- tdm.avOutctx->pix_fmt = jpg_output ? AV_PIX_FMT_YUVJ420P : AV_PIX_FMT_RGBA;
-- tdm.avOutctx->flags = CODEC_FLAG_QSCALE;
-+ tdm.avOutctx->flags = AV_CODEC_FLAG_QSCALE;
- tdm.avOutctx->mb_lmin = tdm.avOutctx->qmin * FF_QP2LAMBDA;
- tdm.avOutctx->mb_lmax = tdm.avOutctx->qmax * FF_QP2LAMBDA;
- tdm.avOutctx->global_quality = tdm.avOutctx->qmin * FF_QP2LAMBDA;
-Index: kodi-17.6+dfsg1/xbmc/utils/BitstreamConverter.cpp
-===================================================================
---- kodi-17.6+dfsg1.orig/xbmc/utils/BitstreamConverter.cpp
-+++ kodi-17.6+dfsg1/xbmc/utils/BitstreamConverter.cpp
-@@ -686,13 +686,13 @@
- unit_size = extradata[0] << 8 | extradata[1];
- total_size += unit_size + 4;
-
-- if (total_size > INT_MAX - FF_INPUT_BUFFER_PADDING_SIZE ||
-+ if (total_size > INT_MAX - AV_INPUT_BUFFER_PADDING_SIZE ||
- (extradata + 2 + unit_size) > ((uint8_t*)in_extradata + in_extrasize))
- {
- av_free(out);
- return false;
- }
-- tmp = av_realloc(out, total_size + FF_INPUT_BUFFER_PADDING_SIZE);
-+ tmp = av_realloc(out, total_size + AV_INPUT_BUFFER_PADDING_SIZE);
- if (!tmp)
- {
- av_free(out);
-@@ -713,7 +713,7 @@
- }
-
- if (out)
-- memset(out + total_size, 0, FF_INPUT_BUFFER_PADDING_SIZE);
-+ memset(out + total_size, 0, AV_INPUT_BUFFER_PADDING_SIZE);
-
- if (!sps_seen)
- CLog::Log(LOGDEBUG, "SPS NALU missing or invalid. The resulting stream may not play");
-@@ -776,13 +776,13 @@
- }
- total_size += unit_size + 4;
-
-- if (total_size > INT_MAX - FF_INPUT_BUFFER_PADDING_SIZE ||
-+ if (total_size > INT_MAX - AV_INPUT_BUFFER_PADDING_SIZE ||
- (extradata + unit_size) > ((uint8_t*)in_extradata + in_extrasize))
- {
- av_free(out);
- return false;
- }
-- tmp = av_realloc(out, total_size + FF_INPUT_BUFFER_PADDING_SIZE);
-+ tmp = av_realloc(out, total_size + AV_INPUT_BUFFER_PADDING_SIZE);
- if (!tmp)
- {
- av_free(out);
-@@ -796,7 +796,7 @@
- }
-
- if (out)
-- memset(out + total_size, 0, FF_INPUT_BUFFER_PADDING_SIZE);
-+ memset(out + total_size, 0, AV_INPUT_BUFFER_PADDING_SIZE);
-
- if (!sps_seen)
- CLog::Log(LOGDEBUG, "SPS NALU missing or invalid. The resulting stream may not play");
diff --git a/media-tv/kodi/files/kodi-17-fix-audio-with-latest-ffmpeg.patch b/media-tv/kodi/files/kodi-17-fix-audio-with-latest-ffmpeg.patch
deleted file mode 100644
index 5f5e613bed2d..000000000000
--- a/media-tv/kodi/files/kodi-17-fix-audio-with-latest-ffmpeg.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-From: Stefan Hachmann <stefan@hachmann-it.de>
-To: 881536@bugs.debian.org
-Subject: Re: Bug#881536: ffmpeg: Breaks sound in kodi
-
---- a/xbmc/cores/VideoPlayer/VideoPlayerAudio.cpp
-+++ b/xbmc/cores/VideoPlayer/VideoPlayerAudio.cpp
-@@ -486,7 +486,7 @@
- // guess next pts
- m_audioClock += audioframe.duration;
-
-- int ret = m_pAudioCodec->Decode(nullptr, 0, DVD_NOPTS_VALUE, DVD_NOPTS_VALUE);
-+ int ret = 0;
- if (ret < 0)
- {
- CLog::Log(LOGERROR, "CVideoPlayerAudio::DecodeFrame - Decode Error. Skipping audio packet (%d)", ret);
diff --git a/media-tv/kodi/files/kodi-17.6-nmblookup.patch b/media-tv/kodi/files/kodi-17.6-nmblookup.patch
deleted file mode 100644
index 29737f980ec1..000000000000
--- a/media-tv/kodi/files/kodi-17.6-nmblookup.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From ba2cb820f32994482a1918bd16bd0a548bb394ac Mon Sep 17 00:00:00 2001
-From: Craig Andrews <candrews@integralblue.com>
-Date: Tue, 12 Jun 2018 12:28:41 -0400
-Subject: [PATCH] [dns-cache] Only use nmblookup if HAS_FILESYSTEM_SMB
-
-nmblookup is part of SmbClient so only use it if SmbClient is present.
-
-Fixes https://trac.kodi.tv/ticket/17916
----
- xbmc/network/DNSNameCache.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/xbmc/network/DNSNameCache.cpp b/xbmc/network/DNSNameCache.cpp
-index e993c536bf41..b30c60baf738 100644
---- a/xbmc/network/DNSNameCache.cpp
-+++ b/xbmc/network/DNSNameCache.cpp
-@@ -54,7 +54,7 @@ bool CDNSNameCache::Lookup(const std::string& strHostName, std::string& strIpAdd
- if(g_DNSCache.GetCached(strHostName, strIpAddress))
- return true;
-
--#ifndef TARGET_WINDOWS
-+#if !defined(TARGET_WINDOWS) && defined(HAS_FILESYSTEM_SMB)
- // perform netbios lookup (win32 is handling this via gethostbyname)
- char nmb_ip[100];
- char line[200];
diff --git a/media-tv/kodi/files/kodi-17.6-wrapper.patch b/media-tv/kodi/files/kodi-17.6-wrapper.patch
deleted file mode 100644
index dc3e9887da94..000000000000
--- a/media-tv/kodi/files/kodi-17.6-wrapper.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From bbc7a53911f1ef8a4a24b76d88c5b0e5899e082f Mon Sep 17 00:00:00 2001
-From: Michael Cronenworth <mike@cchtml.com>
-Date: Fri, 16 Mar 2018 13:48:34 -0500
-Subject: [PATCH] DllLoader: Update variable to use standard va_list type
-
-The _G_ types were ancient, internal-only types defined in _G_config.h
-and are now deprecated.
-
-https://sourceware.org/ml/libc-announce/2018/msg00000.html
-https://sourceware.org/git/?p=glibc.git;a=commit;h=48a8f8328122ab8d06b7333cb87be46feeaf7cca
-
-Signed-off-by: Michael Cronenworth <mike@cchtml.com>
----
- xbmc/cores/DllLoader/exports/wrapper.c | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/xbmc/cores/DllLoader/exports/wrapper.c b/xbmc/cores/DllLoader/exports/wrapper.c
-index 1980bfe65cac..7c7d4ac6131d 100644
---- a/xbmc/cores/DllLoader/exports/wrapper.c
-+++ b/xbmc/cores/DllLoader/exports/wrapper.c
-@@ -45,9 +45,6 @@ typedef int64_t off64_t;
- typedef off64_t __off64_t;
- typedef fpos_t fpos64_t;
- #define stat64 stat
--#if defined(TARGET_DARWIN) || defined(TARGET_ANDROID)
--#define _G_va_list va_list
--#endif
- #endif
-
- #ifdef TARGET_POSIX
-@@ -485,7 +482,7 @@ int __wrap___printf_chk(int flag, const char *format, ...)
- return res;
- }
-
--int __wrap___vfprintf_chk(FILE* stream, int flag, const char *format, _G_va_list ap)
-+int __wrap___vfprintf_chk(FILE* stream, int flag, const char *format, va_list ap)
- {
- return dll_vfprintf(stream, format, ap);
- }
diff --git a/media-tv/kodi/files/kodi-cmake-no-java.patch b/media-tv/kodi/files/kodi-cmake-no-java.patch
deleted file mode 100644
index 2d965ab351ee..000000000000
--- a/media-tv/kodi/files/kodi-cmake-no-java.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-diff --git a/xbmc/interfaces/swig/CMakeLists.txt b/xbmc/interfaces/swig/CMakeLists.txt
-index 6e676159eb..d45a2ecbab 100644
---- a/xbmc/interfaces/swig/CMakeLists.txt
-+++ b/xbmc/interfaces/swig/CMakeLists.txt
-@@ -1,43 +1,21 @@
- function(generate_file file)
-- set(classpath ${GROOVY_DIR}/groovy-all-${GROOVY_VER}.jar
-- ${GROOVY_DIR}/commons-lang-${COMMONS_VER}.jar
-- ${CORE_SOURCE_DIR}/tools/codegenerator
-- ${CMAKE_CURRENT_SOURCE_DIR}/../python)
-- if(NOT CORE_SYSTEM_NAME STREQUAL windows)
-- set(devnull "/dev/null")
-- string(REPLACE ";" ":" classpath "${classpath}")
-- else()
-- set(devnull "nul")
-- endif()
--
-- set(CPP_FILE ${file}.cpp)
-- add_custom_command(OUTPUT ${CPP_FILE}
-- COMMAND ${SWIG_EXECUTABLE}
-- ARGS -w401 -c++ -o ${file}.xml -xml -I${CORE_SOURCE_DIR}/xbmc -xmllang python ${CMAKE_CURRENT_SOURCE_DIR}/../swig/${file}
-- COMMAND ${Java_JAVA_EXECUTABLE}
-- ARGS -cp "${classpath}" groovy.ui.GroovyMain ${CORE_SOURCE_DIR}/tools/codegenerator/Generator.groovy ${file}.xml ${CMAKE_CURRENT_SOURCE_DIR}/../python/PythonSwig.cpp.template ${file}.cpp > ${devnull}
-- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/../swig/${file})
-+ set(CPP_FILE ${CORE_SOURCE_DIR}/xbmc/interfaces/python/generated/${file}.cpp)
- set(SOURCES ${SOURCES} "${CPP_FILE}" PARENT_SCOPE)
- endfunction()
-
--find_package(Java COMPONENTS Runtime REQUIRED)
- find_package(SWIG REQUIRED)
-
- # The generated bindings
--set(INPUTS AddonModuleXbmcaddon.i
-- AddonModuleXbmcgui.i
-- AddonModuleXbmc.i
-- AddonModuleXbmcplugin.i
-- AddonModuleXbmcvfs.i
-- AddonModuleXbmcwsgi.i)
--
--set(GROOVY_DIR ${CORE_SOURCE_DIR}/tools/codegenerator/groovy)
--set(GROOVY_VER 2.4.4)
--set(COMMONS_VER 2.6)
-+set(INPUTS AddonModuleXbmcaddon
-+ AddonModuleXbmcgui
-+ AddonModuleXbmc
-+ AddonModuleXbmcplugin
-+ AddonModuleXbmcvfs
-+ AddonModuleXbmcwsgi)
-
- foreach(INPUT IN LISTS INPUTS)
- generate_file(${INPUT})
-- list(APPEND GEN_SRCS ${CMAKE_CURRENT_BINARY_DIR}/${INPUT}.cpp)
-+ list(APPEND GEN_SRCS ${CMAKE_CURRENT_BINARY_DIR}/${INPUT}.i.cpp)
- endforeach()
-
- add_library(python_binding STATIC ${SOURCES})
diff --git a/media-tv/kodi/kodi-17.6-r11.ebuild b/media-tv/kodi/kodi-17.6-r11.ebuild
deleted file mode 100644
index 30817ba59e84..000000000000
--- a/media-tv/kodi/kodi-17.6-r11.ebuild
+++ /dev/null
@@ -1,277 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# 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.11"
-FFMPEG_KODI_VERSION="17.5"
-CODENAME="Krypton"
-PATCHES=(
- "${FILESDIR}/${P}-nmblookup.patch"
- "${FILESDIR}/${P}-wrapper.patch"
- "${FILESDIR}/${PN}-17-adapt-to-deprecated-symbols-and-functions.patch"
- "${FILESDIR}/${PN}-17-fix-audio-with-latest-ffmpeg.patch"
-)
-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="A free and open source media-player and entertainment hub"
-HOMEPAGE="https://kodi.tv/ https://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 lcms libressl libusb lirc mariadb mysql nfs nonfree +opengl pulseaudio samba sftp systemd +system-ffmpeg test +udev udisks upnp upower vaapi vdpau webserver +xslt zeroconf"
-REQUIRED_USE="
- ${PYTHON_REQUIRED_USE}
- || ( gles opengl )
- ?? ( mariadb mysql )
- 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] )
- lcms? ( media-libs/lcms:2 )
- libusb? ( virtual/libusb:1 )
- virtual/ttf-fonts
- media-libs/fontconfig
- media-libs/freetype
- >=media-libs/libass-0.13.4
- media-libs/mesa[egl,X(+)]
- >=media-libs/taglib-1.11.1
- system-ffmpeg? (
- >=media-video/ffmpeg-${FFMPEG_VERSION}:=[encode,openssl,postproc]
- )
- mysql? ( dev-db/mysql-connector-c:= )
- mariadb? ( dev-db/mariadb-connector-c:=[mysqlcompat] )
- >=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] )
- 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? ( 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_LCMS2=$(usex lcms)
- -DENABLE_LIRC=$(usex lirc)
- -DENABLE_MICROHTTPD=$(usex webserver)
- -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=ON
- -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"
- )
-
- if use mysql || use mariadb ; then
- mycmakeargs+=( -DENABLE_MYSQLCLIENT="yes" )
- else
- mycmakeargs+=( -DENABLE_MYSQLCLIENT="no" )
- fi
-
- 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
- use test && emake -C "${BUILD_DIR}" kodi-test
-}
-
-src_test() {
- emake -C "${BUILD_DIR}" 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
-
- python_domodule tools/EventClients/lib/python/xbmcclient.py
- python_newscript "tools/EventClients/Clients/Kodi Send/kodi-send.py" kodi-send
-}
diff --git a/media-tv/kodi/metadata.xml b/media-tv/kodi/metadata.xml
index 2ddce6793684..269b8bfc2c46 100644
--- a/media-tv/kodi/metadata.xml
+++ b/media-tv/kodi/metadata.xml
@@ -14,10 +14,8 @@
<flag name="lirc">Enable support for controlling Totem with a remote control using <pkg>app-misc/lirc</pkg></flag>
<flag name="mariadb">Add MariaDB support</flag>
<flag name="nfs">Enable NFS client support</flag>
- <flag name="nonfree">Enable non-free components</flag>
<flag name="dvd">Enable optical (CD/DVD drive) support</flag>
<flag name="raspberry-pi">Enable support for the Raspberry Pi</flag>
- <flag name="sftp">Support browsing files over SFTP</flag>
<flag name="system-ffmpeg">Use system ffmpeg instead of the bundled one</flag>
<flag name="libusb">Use <pkg>virtual/libusb</pkg> for usb device hotplug support. This flag should only be enabled if you're running a non-Linux kernel or you don't want to use <pkg>sys-fs/udev</pkg>.</flag>
<flag name="udev">Use <pkg>sys-fs/udev</pkg> rules to handle devices' permissions and hotplug support. Unless you know what you're doing do not disable this flag on Linux kernels. This is provided as an option for completeness.</flag>