diff options
author | Craig Andrews <candrews@gentoo.org> | 2018-11-05 14:12:44 -0500 |
---|---|---|
committer | Craig Andrews <candrews@gentoo.org> | 2018-11-05 14:15:18 -0500 |
commit | cf68742d9375fd12be42f3da94aec4541096c16f (patch) | |
tree | 95a86833d99eef6fd4873d6e419274eb4ce0afa3 /www-plugins/freshplayerplugin | |
parent | media-tv/kodi: No more generated addons for Kodi 18 (diff) | |
download | gentoo-cf68742d9375fd12be42f3da94aec4541096c16f.tar.gz gentoo-cf68742d9375fd12be42f3da94aec4541096c16f.tar.bz2 gentoo-cf68742d9375fd12be42f3da94aec4541096c16f.zip |
www-plugins/freshplayerplugin: Fix building with >=media-video/ffmpeg-4.0
Closes: https://bugs.gentoo.org/654830
Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Craig Andrews <candrews@gentoo.org>
Diffstat (limited to 'www-plugins/freshplayerplugin')
-rw-r--r-- | www-plugins/freshplayerplugin/files/freshplayerplugin-0.3.9-ffmpeg-4.patch | 74 | ||||
-rw-r--r-- | www-plugins/freshplayerplugin/freshplayerplugin-0.3.9.ebuild | 8 |
2 files changed, 80 insertions, 2 deletions
diff --git a/www-plugins/freshplayerplugin/files/freshplayerplugin-0.3.9-ffmpeg-4.patch b/www-plugins/freshplayerplugin/files/freshplayerplugin-0.3.9-ffmpeg-4.patch new file mode 100644 index 000000000000..15d713bc4e90 --- /dev/null +++ b/www-plugins/freshplayerplugin/files/freshplayerplugin-0.3.9-ffmpeg-4.patch @@ -0,0 +1,74 @@ +From 934aa9c24d34f8203744b56e4ac6e8599446ca02 Mon Sep 17 00:00:00 2001 +From: Rinat Ibragimov <ibragimovrinat@mail.ru> +Date: Tue, 26 Dec 2017 16:16:39 +0300 +Subject: [PATCH] ppb_video_decoder: use AV_ prefixed macros + +Looks like newer FFmpeg versions have droped old definitions. +--- + cmake/ffmpeg-compat/CMakeLists.txt | 1 + + cmake/ffmpeg-compat/cfg_avcodecflags.c | 4 ++++ + cmake/ffmpeg-compat/ffmpeg_compat.h.in | 1 + + src/ppb_video_decoder.c | 11 ++++++++--- + 4 files changed, 14 insertions(+), 3 deletions(-) + create mode 100644 cmake/ffmpeg-compat/cfg_avcodecflags.c + +diff --git a/cmake/ffmpeg-compat/CMakeLists.txt b/cmake/ffmpeg-compat/CMakeLists.txt +index 732a71ee..8f67c581 100644 +--- a/cmake/ffmpeg-compat/CMakeLists.txt ++++ b/cmake/ffmpeg-compat/CMakeLists.txt +@@ -29,6 +29,7 @@ MACRO_C_SOURCE_CHECK(cfg_av_pix_fmt_vdpau.c HAVE_AV_PIX_FMT_VDPAU) + MACRO_C_SOURCE_CHECK(cfg_avcodecid.c HAVE_AVCodecID) + MACRO_C_SOURCE_CHECK(cfg_avcodeccontext_get_buffer2.c HAVE_AVCodecContext_get_buffer2) + MACRO_C_SOURCE_CHECK(cfg_AVVDPAUContext.c HAVE_AVVDPAUContext) ++MACRO_C_SOURCE_CHECK(cfg_avcodecflags.c HAVE_AV_CODEC_FLAGS) + + MACRO_SYMBOL_CHECK(av_frame_alloc "libavcodec/avcodec.h" HAVE_av_frame_alloc) + MACRO_SYMBOL_CHECK(av_frame_free "libavcodec/avcodec.h" HAVE_av_frame_free) +diff --git a/cmake/ffmpeg-compat/cfg_avcodecflags.c b/cmake/ffmpeg-compat/cfg_avcodecflags.c +new file mode 100644 +index 00000000..d04de55b +--- /dev/null ++++ b/cmake/ffmpeg-compat/cfg_avcodecflags.c +@@ -0,0 +1,4 @@ ++#include <libavcodec/avcodec.h> ++int main(void) { ++ return AV_CODEC_FLAG_TRUNCATED + AV_CODEC_CAP_TRUNCATED; ++} +diff --git a/cmake/ffmpeg-compat/ffmpeg_compat.h.in b/cmake/ffmpeg-compat/ffmpeg_compat.h.in +index dd40922c..da7834b1 100644 +--- a/cmake/ffmpeg-compat/ffmpeg_compat.h.in ++++ b/cmake/ffmpeg-compat/ffmpeg_compat.h.in +@@ -6,3 +6,4 @@ + #define HAVE_av_frame_free (@HAVE_av_frame_free@) + #define HAVE_avcodec_free_context (@HAVE_avcodec_free_context@) + #define HAVE_AVVDPAUContext (@HAVE_AVVDPAUContext@) ++#define HAVE_AV_CODEC_FLAGS (@HAVE_AV_CODEC_FLAGS@) +diff --git a/src/ppb_video_decoder.c b/src/ppb_video_decoder.c +index eb150725..23647cdd 100644 +--- a/src/ppb_video_decoder.c ++++ b/src/ppb_video_decoder.c +@@ -70,6 +70,11 @@ + #define AV_CODEC_ID_H264 CODEC_ID_H264 + #endif // !HAVE_AVCodecID + ++#if !HAVE_AV_CODEC_FLAGS ++#define AV_CODEC_CAP_TRUNCATED CODEC_CAP_TRUNCATED ++#define AV_CODEC_FLAG_TRUNCATED CODEC_FLAG_TRUNCATED ++#endif // !HAVE_AV_CODEC_FLAGS ++ + enum hwdec_api_e { + HWDEC_NONE = 0, + HWDEC_VAAPI, +@@ -620,9 +625,9 @@ initialize_decoder(struct pp_video_decoder_s *vd) + goto err; + } + +- if (vd->avcodec->capabilities & CODEC_CAP_TRUNCATED) { +- trace_info("%s, codec have CODEC_CAP_TRUNCATED\n", __func__); +- vd->avctx->flags |= CODEC_FLAG_TRUNCATED; ++ if (vd->avcodec->capabilities & AV_CODEC_CAP_TRUNCATED) { ++ trace_info("%s, codec have AV_CODEC_CAP_TRUNCATED\n", __func__); ++ vd->avctx->flags |= AV_CODEC_FLAG_TRUNCATED; + } + + vd->avctx->opaque = vd; diff --git a/www-plugins/freshplayerplugin/freshplayerplugin-0.3.9.ebuild b/www-plugins/freshplayerplugin/freshplayerplugin-0.3.9.ebuild index ea0561a19573..ffb3b7a382cb 100644 --- a/www-plugins/freshplayerplugin/freshplayerplugin-0.3.9.ebuild +++ b/www-plugins/freshplayerplugin/freshplayerplugin-0.3.9.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2018 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -54,7 +54,11 @@ RDEPEND="${COMMON_DEPEND} www-plugins/adobe-flash:22[abi_x86_64,ppapi(+)] " -PATCHES=( "${FILESDIR}/0.3.5-cmake.patch" "${FILESDIR}/0.3.9-ioctl.patch" ) +PATCHES=( + "${FILESDIR}/0.3.5-cmake.patch" + "${FILESDIR}/0.3.9-ioctl.patch" + "${FILESDIR}/${P}-ffmpeg-4.patch" +) DOCS=( ChangeLog data/freshwrapper.conf.example README.md ) src_configure() { |