summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2012-03-30 18:56:16 +0000
committerMike Frysinger <vapier@gentoo.org>2012-03-30 18:56:16 +0000
commit0a55d274251c94c80ef32ae0eb073a3aadd7ed4a (patch)
treedab658cba373b453bf7ae1cb52d0d5c36b458048 /media-tv
parentVersion bump wrt #409417 by Agostino Sarubbo (diff)
downloadhistorical-0a55d274251c94c80ef32ae0eb073a3aadd7ed4a.tar.gz
historical-0a55d274251c94c80ef32ae0eb073a3aadd7ed4a.tar.bz2
historical-0a55d274251c94c80ef32ae0eb073a3aadd7ed4a.zip
Add fixes by Tomáš Chvátal to build with libav #406215 by Ben Kohler.
Package-Manager: portage-2.2.0_alpha95/cvs/Linux x86_64
Diffstat (limited to 'media-tv')
-rw-r--r--media-tv/xbmc/ChangeLog6
-rw-r--r--media-tv/xbmc/Manifest32
-rw-r--r--media-tv/xbmc/files/xbmc-11.0-ffmpeg.patch46
-rw-r--r--media-tv/xbmc/files/xbmc-11.0-libav.patch72
-rw-r--r--media-tv/xbmc/xbmc-11.0.ebuild4
5 files changed, 143 insertions, 17 deletions
diff --git a/media-tv/xbmc/ChangeLog b/media-tv/xbmc/ChangeLog
index 0a939a2da700..a0e5be4ecdfb 100644
--- a/media-tv/xbmc/ChangeLog
+++ b/media-tv/xbmc/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for media-tv/xbmc
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/ChangeLog,v 1.126 2012/03/29 18:07:43 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/ChangeLog,v 1.127 2012/03/30 18:56:16 vapier Exp $
+
+ 30 Mar 2012; Mike Frysinger <vapier@gentoo.org> xbmc-11.0.ebuild,
+ +files/xbmc-11.0-ffmpeg.patch, +files/xbmc-11.0-libav.patch:
+ Add fixes by Tomáš Chvátal to build with libav #406215 by Ben Kohler.
29 Mar 2012; Mike Frysinger <vapier@gentoo.org> xbmc-11.0.ebuild,
-files/xbmc-11.0-libpng-1.5.patch, +files/xbmc-11.0-no-exec-stack.patch:
diff --git a/media-tv/xbmc/Manifest b/media-tv/xbmc/Manifest
index fd06bc63a18c..dbd59c2c4858 100644
--- a/media-tv/xbmc/Manifest
+++ b/media-tv/xbmc/Manifest
@@ -1,28 +1,30 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
+AUX xbmc-11.0-ffmpeg.patch 1566 RMD160 f6b966309a67a1ab4fc6917a9310c15921ced5a4 SHA1 0a34899915ce61a28bfe869be75625cd1344da77 SHA256 5515321c4cb46b0ac1c959b9e8752c370344352d9f7de1be3991760fa6ffc70f
+AUX xbmc-11.0-libav.patch 3636 RMD160 2324951f7f04b22b7afd6b2e12b15ddba38a8cea SHA1 7ba00ad27670691aec13436bba6a77a488dd88af SHA256 b30f3c16595f9d79fe4f091504ae9d1f7b01042c988394e89ec467583d1e371d
AUX xbmc-11.0-no-exec-stack.patch 807 RMD160 c42590cf3dd2fb3407e6dd518ba706ea8919d586 SHA1 c50207ff50cb1cedc97a7de1484a98fdebf51c5e SHA256 e36c83746838dd362512a046dc066c0f3fdc1252289b2761be381f84262cab78
AUX xbmc-9999-no-arm-flags.patch 542 RMD160 108586f2956cc27cc9f3c582565bd4e2f22fede0 SHA1 e6dc2f2b63e208fccb0c1ecb50322d6a9c9fda88 SHA256 72164a8b91f3209cff06ea1a103580f827135951a7a798eefabc04ee1a6d3e84
AUX xbmc-9999-nomythtv.patch 6190 RMD160 829dff4b58098ee0935aed6fcda345e06abdb7b3 SHA1 d34afef9342b1d5781729433795cb23240fa5d6b SHA256 ffb1eb49f94b4ae41e5d79172499671915122a58af248b0585ee276e4aa2c87e
DIST xbmc-11.0.tar.gz 63012044 RMD160 23cf4d7fa11d2996cc45c44ba5ca0022ff2acc1d SHA1 d836a0a1e8ed239a339ec7e0c19f893e29df741d SHA256 1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19
-EBUILD xbmc-11.0.ebuild 5936 RMD160 12023c7377365db52fdc233d43f2d013fc57fb3c SHA1 bec1201fbcb527a9f1baea52efdfff4e7a280809 SHA256 137b01f4894d9b899477543b4dfe15e8189e33fac6f7937d8c87423fbfb6e9e8
+EBUILD xbmc-11.0.ebuild 6043 RMD160 7813b7b94f71212884ccdf4e0db94bd1d0383b72 SHA1 d3fa531b082d8dd65d14bb38b1508b439588436c SHA256 d6665155ab0c95917e3e0e34df5b689bf502da80b93b1dd91ace2e3faa7dbc9e
EBUILD xbmc-9999.ebuild 5885 RMD160 66f8c9dee573b14675266915b27a3ebf4f3069ee SHA1 5db9622800507153e306836e1b7f8c0a0594cec8 SHA256 290d289e5102559445d3d1d093140f619316d74fc916f54adf0afb4244c6a901
-MISC ChangeLog 20480 RMD160 f38835967b6c2168519979b044ab1c42d98b266f SHA1 35c7dd9ce04ee3d4ba0d42242092d58943d30aa4 SHA256 4e8717564b5098f6db69714e5c767b919748b47fe29f445a4136ff9650e42b3f
+MISC ChangeLog 20687 RMD160 9632cad691744c74e83c0a9b3f47027e1dfc4447 SHA1 575e58a5ce5f10ca588000d2f554619d1f7c28c6 SHA256 c15e8d899ae6c1ed506432eb00607506a0f05ddd11c976294654107060bcbc56
MISC metadata.xml 932 RMD160 fbedc1d562949001f2195a49f375d2e4a1fdc7ff SHA1 c102da84b6cd9160308943fc7cc7801aff691a46 SHA256 2f82a971dfec33d4958ee8977011928976c4aab5f4e03139be6a6245bf3eb62d
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (GNU/Linux)
-iQIcBAEBAgAGBQJPdKT2AAoJELEHsLL7fEFWLl4QAK4mC14DUEUF+8iApKqhwJQx
-B447oNa/TiAbAmHQ6rI4SihFMJqEAtwOwSmkZ6dKL8bKlSB98Hz/f5JGLbZnBmLA
-evDPYArOT2o9zGMZECEZLWTBJ4TEyMfkl71JpKPLOQmyY20vkRY0tWXo7TwlwXvn
-v3bUrgZvWqUs3E1QVXAB4FLH3/ojFinyWrXL+iisbff1EL0gWw1ORrSkkqO6YdbG
-kjh5KcDCZhdq5QUBC82nBJ3hzGypCPH4s73nFtU46a5DCwsOV/rbEMrAg7bSDQLD
-BiUZdCd10GrB1unlGNJ3Qki+1K2yZUXaGyTpcDyJ+cp/ikVANuoVZM/OFG8eFMJb
-EKzQHATEjmXd186fmYRA1DrPIbQIrBHZKysl8i3gyvONdeDptinA1zkfKcB3UnKi
-pKISXCsrhAUsjlV8f+/B1R6fsVHkwXf4YRONf4jtEL83i8XPV5MkYvIautSx4epQ
-6EZXOwYBmrjrk6h2/euWG9bGIFhMr/4cvFKAuSYUn9ElN2Yq/Vfb222nXrt+8kRQ
-Ccvm1FXq2OjRPDgRxzow3WlqNdDnACKy/SDCqCzesP6M/Uzbrg2yDHGXbgwzNGnD
-Nd1qekDcyriAEyGfNybYhAjYWq+yyMIRp1f+OngarQ0x1MZ0j1McG+Y6G7m/TfW1
-CvOWyLq5q3SotLKz9HkC
-=uwV5
+iQIcBAEBAgAGBQJPdgHeAAoJELEHsLL7fEFWI6YP/3dqP1v2YyrBjr6XGfaYUM9w
+/x0CGcPPEVMivMMH7xSazvTZa0DkzOB8lthiaiCFqJUOhQoFsXg8JHEKVrJm4iPy
+RjyqwGaqLFPRjh7CFuFZH3iC8+p+/Zs1N5vItTWT5b09JQCv7aRpHn9D1QZcA8TW
+BlQM96zNZcItqniVq6docEiIv5aQRkcg0R7rMX2ijeUx5hUDPHuez2MM856Jfg2y
+GR33U3kGB9+Q8vO+Di4ut4nyNVFSUoPL/B+mt7mcIBdWxo602KQMk7F7hqH9xqgP
+Fym92qLqu9MgPYTRsJVSVHf0KAQOpt7aHvSOAD/Q9g7iNUwywKrPh2Nal/tnWEYg
+ryErPpFvmkgYMAVSYqXZwRa3SzardD/cgXjx69pqNh8S6CGTP50oWHkrymrQJmhB
+IeDD9tGyZPw/KZRcpzp3sHKlyiiVLZ7ncfVDwnwixZevweXdRyHuPkQ8sibzEZnX
+pTb1f169gHQ+kEYEZIyKgn9WtKOmUW6HHHt9YdzUYG6ex8/kBzpvgaTGCS8Ds0hP
+UIoKHbD6JE5aE2N1K6tJRouhbWg7IWPoHY4sbY0skSaJcil5U3yLQp/l23oiB/Rn
+Dkdo5U9DswggGHmMTzAIUlLq72zKB88LHNGr987SEk0RXjC7jKbm/Rh0wScCywwZ
+AsUh10tQdqVUsZPPnRqX
+=ww5J
-----END PGP SIGNATURE-----
diff --git a/media-tv/xbmc/files/xbmc-11.0-ffmpeg.patch b/media-tv/xbmc/files/xbmc-11.0-ffmpeg.patch
new file mode 100644
index 000000000000..51372fdc1db9
--- /dev/null
+++ b/media-tv/xbmc/files/xbmc-11.0-ffmpeg.patch
@@ -0,0 +1,46 @@
+https://bugs.gentoo.org/406215
+
+From 97212837ec81c3869ba60e0690f26c09b9428747 Mon Sep 17 00:00:00 2001
+From: Tomas Chvatal <tchvatal@suse.cz>
+Date: Fri, 30 Mar 2012 10:00:46 +0200
+Subject: [PATCH] Ensure we include proper header on ffmpeg.
+
+---
+ configure.in | 3 +++
+ lib/DllAvFilter.h | 6 +++++-
+ 2 files changed, 8 insertions(+), 1 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index bca9239..d209f80 100755
+--- a/configure.in
++++ b/configure.in
+@@ -1229,6 +1229,9 @@ if test "$use_external_ffmpeg" = "yes"; then
+ AC_CHECK_HEADERS([libswscale/rgb2rgb.h],,)
+ AC_CHECK_HEADERS([ffmpeg/rgb2rgb.h],,)
+
++ # check for avcodec header as it is not present on libav
++ AC_CHECK_HEADERS([libavfilter/avcodec.h],,)
++
+ # Check if AVFilterBufferRefVideoProps AVRational member is named
+ # 'pixel_aspect' or 'sample_aspect_ratio'.
+ AC_CHECK_MEMBER([AVFilterBufferRefVideoProps.sample_aspect_ratio],
+diff --git a/lib/DllAvFilter.h b/lib/DllAvFilter.h
+index 827746e..d47623b 100644
+--- a/lib/DllAvFilter.h
++++ b/lib/DllAvFilter.h
+@@ -48,7 +48,11 @@ extern "C" {
+ #endif
+ /* for av_vsrc_buffer_add_frame */
+ #if LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,8,0)
+- #include <libavfilter/vsrc_buffer.h>
++ #if defined(HAVE_LIBAVFILTER_AVCODEC_H)
++ #include <libavfilter/avcodec.h>
++ #else
++ #include <libavfilter/vsrc_buffer.h>
++ #endif
+ #elif LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,7,0)
+ int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter,
+ AVFrame *frame);
+--
+1.7.3.4
+
diff --git a/media-tv/xbmc/files/xbmc-11.0-libav.patch b/media-tv/xbmc/files/xbmc-11.0-libav.patch
new file mode 100644
index 000000000000..0aaa1ce41849
--- /dev/null
+++ b/media-tv/xbmc/files/xbmc-11.0-libav.patch
@@ -0,0 +1,72 @@
+https://bugs.gentoo.org/406215
+
+From c74abc298e2075f431d9fa700fcfc5e1bbbddf22 Mon Sep 17 00:00:00 2001
+From: Tomas Chvatal <tchvatal@suse.cz>
+Date: Fri, 23 Mar 2012 12:08:53 +0100
+Subject: [PATCH 2/2] Add support for libav api as it sligthly differ.
+
+The libav use micro version as 0
+The ffmpeg use the micro version as 100+
+
+Simply check if the variable is defined then it is not libav.
+---
+ lib/DllAvFilter.h | 10 +++++++++-
+ .../DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 4 ++++
+ 2 files changed, 13 insertions(+), 1 deletions(-)
+
+diff --git a/lib/DllAvFilter.h b/lib/DllAvFilter.h
+index 302e35c..827746e 100644
+--- a/lib/DllAvFilter.h
++++ b/lib/DllAvFilter.h
+@@ -48,7 +48,7 @@ extern "C" {
+ #endif
+ /* for av_vsrc_buffer_add_frame */
+ #if LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,8,0)
+- #include <libavfilter/avcodec.h>
++ #include <libavfilter/vsrc_buffer.h>
+ #elif LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,7,0)
+ int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter,
+ AVFrame *frame);
+@@ -83,7 +83,11 @@ public:
+ virtual int avfilter_poll_frame(AVFilterLink *link)=0;
+ virtual int avfilter_request_frame(AVFilterLink *link)=0;
+ #if LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,13,0)
++#if LIBAVFILTER_VERSION_MICRO
+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags)=0;
++#else
++ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int64_t pts, AVRational pixel_aspect)=0;
++#endif
+ #elif LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,7,0)
+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame)=0;
+ #elif LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(53,3,0)
+@@ -172,7 +176,11 @@ public:
+ virtual int avfilter_poll_frame(AVFilterLink *link) { return ::avfilter_poll_frame(link); }
+ virtual int avfilter_request_frame(AVFilterLink *link) { return ::avfilter_request_frame(link); }
+ #if LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,13,0)
++#if LIBAVFILTER_VERSION_MICRO
+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags) { return ::av_vsrc_buffer_add_frame(buffer_filter, frame, flags); }
++#else
++ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int64_t pts, AVRational pixel_aspect) { return ::av_vsrc_buffer_add_frame(buffer_filter, frame, pts, pixel_aspect); }
++#endif
+ #elif LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,7,0)
+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame) { return ::av_vsrc_buffer_add_frame(buffer_filter, frame); }
+ #elif LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(53,3,0)
+diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+index b4e1451..4e5eedf 100644
+--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
++++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+@@ -814,7 +814,11 @@ int CDVDVideoCodecFFmpeg::FilterProcess(AVFrame* frame)
+ if (frame)
+ {
+ #if LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,13,0)
++#if LIBAVFILTER_VERSION_MICRO
+ result = m_dllAvFilter.av_vsrc_buffer_add_frame(m_pFilterIn, frame, 0);
++#else
++ result = m_dllAvFilter.av_vsrc_buffer_add_frame(m_pFilterIn, frame, frame->pts, m_pCodecContext->sample_aspect_ratio);
++#endif
+ #elif LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(2,7,0)
+ result = m_dllAvFilter.av_vsrc_buffer_add_frame(m_pFilterIn, frame);
+ #elif LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(53,3,0)
+--
+1.7.3.4
+
diff --git a/media-tv/xbmc/xbmc-11.0.ebuild b/media-tv/xbmc/xbmc-11.0.ebuild
index fdc6e05ad20a..ed1a893ce7bc 100644
--- a/media-tv/xbmc/xbmc-11.0.ebuild
+++ b/media-tv/xbmc/xbmc-11.0.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/xbmc-11.0.ebuild,v 1.2 2012/03/29 18:07:43 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/xbmc-11.0.ebuild,v 1.3 2012/03/30 18:56:16 vapier Exp $
EAPI="4"
@@ -124,6 +124,8 @@ src_prepare() {
epatch "${FILESDIR}"/${PN}-9999-nomythtv.patch
epatch "${FILESDIR}"/${PN}-9999-no-arm-flags.patch #400617
epatch "${FILESDIR}"/${PN}-11.0-no-exec-stack.patch
+ epatch "${FILESDIR}"/${PN}-11.0-libav.patch #406215
+ epatch "${FILESDIR}"/${PN}-11.0-ffmpeg.patch #406215
# The mythtv patch touches configure.ac, so force a regen
rm -f configure