summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomas Chvatal <scarabeus@gentoo.org>2012-11-14 08:00:01 +0000
committerTomas Chvatal <scarabeus@gentoo.org>2012-11-14 08:00:01 +0000
commit88b0fe0b33f2e5e0c0c25aa8aabd1175646b315a (patch)
tree03e8847a921c2feddbd11556b700425268b513d8 /media-tv
parentUpdated HOMEPAGE in all other ebuilds wrt Bug #416909, thanks Arfrever for pr... (diff)
downloadhistorical-88b0fe0b33f2e5e0c0c25aa8aabd1175646b315a.tar.gz
historical-88b0fe0b33f2e5e0c0c25aa8aabd1175646b315a.tar.bz2
historical-88b0fe0b33f2e5e0c0c25aa8aabd1175646b315a.zip
Revision bump the huge patchset chage to testing as it seems broken, wrt bug#443006. Keep the stable unaltered as it was supposed to be done from start.
Package-Manager: portage-2.2.0_alpha142/cvs/Linux x86_64 Manifest-Sign-Key: 0x8EEE3BE8
Diffstat (limited to 'media-tv')
-rw-r--r--media-tv/xbmc/ChangeLog11
-rw-r--r--media-tv/xbmc/Manifest25
-rw-r--r--media-tv/xbmc/files/xbmc-11.0-ffmpeg.patch46
-rw-r--r--media-tv/xbmc/files/xbmc-11.0-libav-r1.patch71
-rw-r--r--media-tv/xbmc/files/xbmc-11.0-libav.patch103
-rw-r--r--media-tv/xbmc/xbmc-11.0-r1.ebuild237
-rw-r--r--media-tv/xbmc/xbmc-11.0.ebuild13
7 files changed, 440 insertions, 66 deletions
diff --git a/media-tv/xbmc/ChangeLog b/media-tv/xbmc/ChangeLog
index 1e52fe2e0166..08688c7c9156 100644
--- a/media-tv/xbmc/ChangeLog
+++ b/media-tv/xbmc/ChangeLog
@@ -1,6 +1,15 @@
# 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.151 2012/10/24 22:36:12 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/ChangeLog,v 1.152 2012/11/14 07:59:15 scarabeus Exp $
+
+*xbmc-11.0-r1 (14 Nov 2012)
+
+ 14 Nov 2012; Tomáš Chvátal <scarabeus@gentoo.org>
+ +files/xbmc-11.0-ffmpeg.patch, +files/xbmc-11.0-libav-r1.patch,
+ +xbmc-11.0-r1.ebuild, files/xbmc-11.0-libav.patch, xbmc-11.0.ebuild:
+ Revision bump the huge patchset chage to testing as it seems broken, wrt
+ bug#443006. Keep the stable unaltered as it was supposed to be done from
+ start.
24 Oct 2012; Alexis Ballier <aballier@gentoo.org> xbmc-11.0.ebuild,
-files/xbmc-11.0-ffmpeg.patch, files/xbmc-11.0-libav.patch:
diff --git a/media-tv/xbmc/Manifest b/media-tv/xbmc/Manifest
index 35afc1cb0ae2..e08413e87c12 100644
--- a/media-tv/xbmc/Manifest
+++ b/media-tv/xbmc/Manifest
@@ -2,7 +2,9 @@
Hash: SHA256
AUX xbmc-11.0-ffmpeg-0.10.2.patch 1197 SHA256 84e2a842c81c1bc6a346c946301f38e47862051f4e3f56ffe468852542ba9b90 SHA512 c7bf34086e27c8789177665a862464018082404f3947a2b9f799a34cae15a01760bc67a148de6da20036c9e17ca047fbd32ed4237980af16605ee2d306c9f9a4 WHIRLPOOL 67cfa7538f59fc1a3cb664218de64b8518a66a97fdc4cd42f43f4882240f665f5be4e448df01df623b538899320f86b7f2d94989fbdb8667289fc8ebdb7f67c7
-AUX xbmc-11.0-libav.patch 3436 SHA256 ad2dde73e0c9ed1f96c0c6aa4c3d80edadbb92c3092d3c1f34e28bab45983ecb SHA512 42a5fd80b76d31e1b0661d3bda15e3015b90852c53f37b50927ddd15484e9a7f02efbb685b92a48594425c74bfc82ac9a2f256c69530a483d10c4d3b81e7ad79 WHIRLPOOL e9b4c62f15aa706f32926a21406b4d845de9219edd35ff0996916317d0bfca21b8bef2c3452fc03253fa99e24a3a6f93862d6a44a18d51be9641ea927c5daea6
+AUX xbmc-11.0-ffmpeg.patch 1566 SHA256 5515321c4cb46b0ac1c959b9e8752c370344352d9f7de1be3991760fa6ffc70f SHA512 c7ccba50e6f8fa8dd714ddf0cf1348c7311aefa9d9e971b0287757f75b51d8640d7e404940e12f7b53dbca3ce0bdc81c5b2913d6a73e2edd1ca7351b0a986fdb WHIRLPOOL 088d39196324112d2b133df19489427ca6e84fe7eaf410d9be5603601562019dd78427c4ff438814928c1e3db4c22d742824b6458ef15b79a46ea2c8b79f749d
+AUX xbmc-11.0-libav-r1.patch 3436 SHA256 ad2dde73e0c9ed1f96c0c6aa4c3d80edadbb92c3092d3c1f34e28bab45983ecb SHA512 42a5fd80b76d31e1b0661d3bda15e3015b90852c53f37b50927ddd15484e9a7f02efbb685b92a48594425c74bfc82ac9a2f256c69530a483d10c4d3b81e7ad79 WHIRLPOOL e9b4c62f15aa706f32926a21406b4d845de9219edd35ff0996916317d0bfca21b8bef2c3452fc03253fa99e24a3a6f93862d6a44a18d51be9641ea927c5daea6
+AUX xbmc-11.0-libav.patch 3636 SHA256 b30f3c16595f9d79fe4f091504ae9d1f7b01042c988394e89ec467583d1e371d SHA512 cb71c6601df413136eb80c61345d6123ed4c7c5b3c99346f32986cf177afe966ab56cee13b4aa8a91ed37150c73c6f2c891e7f7ba7c34935483e47b7fda525d4 WHIRLPOOL 3487e0d19c1fffba396b406e95f1a9ab85d2ae33c6ca3f88ab3e35ac170e670d0611529ede7a6568f96df73f2dd4b311f3ef5acfde75384166d2b9da0b17473a
AUX xbmc-11.0-no-arm-flags.patch 542 SHA256 72164a8b91f3209cff06ea1a103580f827135951a7a798eefabc04ee1a6d3e84 SHA512 7d40be4bdef2a2b1e53f8b96c489a87ec67975ae486fb44e619d66c1b5333ad33f896f64cca4e1c8050c3d92cd6537a9ca776e743c88fc2c8cabea1eae62b4b5 WHIRLPOOL 7c6666198b7d987028925e0f578d71796f6541995aa87964de3275f6a087610ef69d630ac349500a7c534de213b8fbff4cca6c25c3d0e6f1b1d8cd89f27d3d9d
AUX xbmc-11.0-no-exec-stack.patch 807 SHA256 e36c83746838dd362512a046dc066c0f3fdc1252289b2761be381f84262cab78 SHA512 d0d4c2d4bb257c722ec40470fb6c8da59033009152598e69133b6184b25da36debf42f86859389c878a072603f3d583e28a52519e8dca47d9bdf7edd5f9e44c5 WHIRLPOOL d18dd387fe55b18be78fdad08b0a4319c2a5ccd161f1dfc0d5ab8015d88c5842780415c903a098a4683524658fc31c07e285e61fcff04ad6e4777c77e5691f38
AUX xbmc-11.0-nomythtv.patch 6190 SHA256 ffb1eb49f94b4ae41e5d79172499671915122a58af248b0585ee276e4aa2c87e SHA512 4a9ff4b4f5cb56c92932f05b5b812bee0fdce37ed9f568a6e0dc0cd62335e2131361a63d8026b64f9c7078fa9c4ef0e439b52234c722b1b854aeeed1cc2764c7 WHIRLPOOL ce457b509c6fd222ae6002420db7cc438e1352114f38790b623f04e6834eb5508d4609a1bf71628bfafde3bcef830e84b42448619c19227d5729d6d8a824a13c
@@ -10,14 +12,25 @@ AUX xbmc-9999-no-arm-flags.patch 478 SHA256 075db2562d31914d86b4394500d4b3168ea7
AUX xbmc-9999-nomythtv.patch 1680 SHA256 fe0289d1361b0dde3c261bc082bcad123c9cc9a2b7398e4eb48773f976be93a2 SHA512 403389bb1bf1442be1a8d23106bd78dc672c66fcf588b6076e6105023a69a92ca58cdaa91c9e2664123f244c3d5f42a9de6f72845c702339e3f8a0e976330ca1 WHIRLPOOL dcf13b59133f2b7288bc734803ad1317d6e943f7cd85b0428ec257b2ec9fb6a23311fbdd8574dbfb985a473dac7cf8ca30c2ac6d59b62797adb1f63d8bcc0b12
DIST xbmc-11.0-ffmpeg-1.0-compat-1.tar.bz2 32687 SHA256 bfdca8283c35d0062ed2c2b3f67da29dcd71bb3e0f6b06c1dcc2e43d35d7c427 SHA512 e28f69719ee9b7343c8f43f34b0ae932b66452507daf3876f10e78c79fc2edeee2569c8470c0a7519ff24a43bf2558fe6d9e08a3aca73123ef423447b90f6abf WHIRLPOOL e0caafa34d99f8cfd7908ee7755352f2972794cd7460b04ab207d4f55ec39cbf09a22c77fc954b269d09b232dcf0cb357d6a41568337df5ea97aae6ee0d6faa6
DIST xbmc-11.0.tar.gz 63012044 SHA256 1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19 SHA512 ba738129f70dd171b3fae385ab44317f62c9041a116bfe809d6d07c99ea69c663ad5d598552a17be0b942251ce12a68f34d0be21b303b256055849a6dde90043 WHIRLPOOL 4dd068749c86542e39b8fc42b45bbb56e885813b17876d3583cb4d91c902ff075e1f16f1c19720e3430dc149c40e52e7d1ab3323f666263fb353a59e2ef94a8e
-EBUILD xbmc-11.0.ebuild 6439 SHA256 22a80793ef283c8d619f65e3b24f2d1f41cc83970cba224a2ad0b171abae7610 SHA512 61a2ae9b408e631167cdce1421636db96a1a2a98176677cfba0c24eb769d32a8c05b513b77d611f54fec7886161fb583a9ebd774cdfd18fa076aa5e01aacf545 WHIRLPOOL eccdbd4ea12d818f95d6b87071841ccabadf74502cb14f3972b61b418a3bb241274b697857e33b508061054821abc8789ba5eeb609673c5270af35a232131a52
+EBUILD xbmc-11.0-r1.ebuild 6447 SHA256 052054584b3152b84678c3ff3df6ce731fc3d1f5a3db8be267cd92e15313e241 SHA512 2503a7edf6fbacfd619e67c30bc9460d64bb23fe5f844db58c92a40a8c1b5b984349b1fd2faf2f5068cd18233af5b05c82f1ce8ed6272f048dc3fc452a42ea7f WHIRLPOOL 2e814e00f9b4bbd2d12823399ee68a13cd1123ae1bbff564b08fdb0ab0c4759ee4618c90c80c1aee19ccdb8131b747fbb77c5884f7b3f875e1889119d3e0c36c
+EBUILD xbmc-11.0.ebuild 6237 SHA256 990e48a1df3089b461396d4e566ab040867811ca5f22e90c9d16dac0a151fa14 SHA512 efcee4418035ebefc85e8055d34479d6753a7694ee733f361ac65991dd9b9201ecbb1e5df530cfc6e1e999febdb721b48bb03092d2fb716d659db4fc9028e37c WHIRLPOOL 3ccc4863f371af21b1d633efa1032c8445909fe86e6cb8946c7c523b9db12577cb30b741c023bd2cd6ef0d79613cb8f1cb17a53820a35ee100d78d6d3aa19982
EBUILD xbmc-9999.ebuild 6035 SHA256 08d78ce4f9c5ca521c53eaed71d69eba1199f9412b877e9f987982cb4a0dca54 SHA512 171623a48c7ae8f4aaf3cfd9c938a328d1e82e4ebc31b8817b58a635e3adb086a89dc427a8f6e68c24755692e16e78f8392898ff1fd6eb2c2ce3a65d676b8662 WHIRLPOOL 2dd69e13e93a104ecdff9e64d351324b849a6b1b6758f6484eda2f4c4bcbd93dd433f0ff7a5a2ad664d9bb753483d1964c055c24d6b71636d448259ba1ea3322
-MISC ChangeLog 24372 SHA256 772784492c7d92e9fa17da382fba5c625226378f8588bfcddc0ab6f318e02055 SHA512 515f1ec903f2b1d38e7e9e883467d213f5f7e13945300fab478254334d8a9f0711954580b4f3f0b778b98fa5bb2647019cd04a0dffa19ef97deee5532ec3add0 WHIRLPOOL 2bb5b3c3b6d8aab06b6c3596bfccb420fc422c93e09b5c1ad8f23846901a29c569857d45d1aa70f914ab96d2fdc5ddd79bd3a01b31561d1bc7d5fa6513cb8a51
+MISC ChangeLog 24754 SHA256 092062e4a0e57c39f1a0d278bd2d56ae430c40bfee0c4d2e7a2626d61ef35b0f SHA512 5a05bf21ceeb827e0ae41f9bdd6b2d548535aeff9b58e5b7fe3c1ee527a6bb64f7ab10939c263c2e9c46374dee3a1460bbffc3a17ce4e4546330244013efb035 WHIRLPOOL 848392ed58a499faa701740740ad087054a85da1691cb4d1e52a5d077679d4f563e08aabd198a6ab35e616e398d3fead83642eb7457f8821b5969298eccadd92
MISC metadata.xml 1114 SHA256 65972016512588a4bcad7af03c77fd0a667e18cb5d2d6dcf05f2f0f1a62ff9c9 SHA512 a79f6c3f4aa6539a36e9b54f9f283828da8ccea0deb6eabda7d0186d8afd0b62e0c150ed9fdba0a8ce913d76843fffcdb0203c166d2d75a2ef702a5c0b63f06a WHIRLPOOL e5582d23318132bf6ee3dd6cc8e6a1aff2a08407b2eff203c9a8571fa5869e12055485b290c1d04e93a068df46e07a62aea873655135bb04c0335e9c63e81683
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
-iEYEAREIAAYFAlCIbV0ACgkQvFcC4BYPU0pEqQCgncqY0EMrDh0408SsRpyQbUJK
-tDYAn0oKv92gHihhQy9KVgASHEwcHaMz
-=+q0j
+iQIcBAEBCAAGBQJQo09IAAoJEOSiRoyO7jvoaO0P/1irgFinOqSxm3dJAgW5XWQB
+YdJaSdc+85dlZ/gUd904sy4JyIfueet9hrg3P5zC5wGGEPRLgoRD1zNNJZXTvK5t
+TeMglN1iVv+2dPLUlCGs3RlcvaltmQkQrETP3Wm9IQFTBHaLuQI23IHaPOBcmAjQ
+gPzs9K6DiI8XyWBky6t7d7UThTlJe+qbGi+1xrAwEfpl13vpt7iIBtN7/tJ+mOxY
+ZLK6mI3aOC0Gd50eTqE55aw9aPJhN8FYpfpTZTgVs8axRyKbQi3jDA8bbY/Abkqs
+N/jJEVwW/9F5hWqSSzzd2R3Via9oXoXn8nS2bNUi2zR/s3wS91bzzFGRuK3/CTfD
+C7oTcKJgJ/8vGIvvIuzaOP27XQeveofxOt9zt1iCPEu894xHcfwGKU3gbgYyOeRY
+Ugz/QcqEAd+x42OqS3mhFH8TWusQA3OUdzPH5CiGT72vvsZ1dHQ/7ePj1wWFIlCC
+2vfxQYKYTtXUvnE8oJ903wRKt28B5kyC6jCEl9zhrtPdz1v+3mAnhN6f/tJbCKO2
+EniiUw6jljYYsKwbQEMAQGeOfhjcQttCQrVnvLnwDL/v5DMfc3NtjtO5RdRzy4gj
+oashUN6o8p6IrdNyGiC3jqKjAwz6ludCI4OcjYbfzUnKuSHtP/bg2SzR/cevvaJt
+uqW9BIlWHOUJRcNItKrr
+=NXNZ
-----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-r1.patch b/media-tv/xbmc/files/xbmc-11.0-libav-r1.patch
new file mode 100644
index 000000000000..84a215a72684
--- /dev/null
+++ b/media-tv/xbmc/files/xbmc-11.0-libav-r1.patch
@@ -0,0 +1,71 @@
+Patch rebased to current patches backported from upstream by Alexis Ballier.
+Based on the previous patch, submitted upstream but not merged it seems:
+
+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.
+Index: xbmc-11.0/lib/DllAvFilter.h
+===================================================================
+--- xbmc-11.0.orig/lib/DllAvFilter.h
++++ xbmc-11.0/lib/DllAvFilter.h
+@@ -45,7 +45,11 @@ extern "C" {
+ #if (defined HAVE_LIBAVFILTER_AVFILTER_H)
+ #include <libavfilter/avfiltergraph.h>
+ #include <libavfilter/buffersink.h>
+- #include <libavfilter/avcodec.h>
++ #if LIBAVFILTER_VERSION_MICRO < 50 // Libav
++ #include <libavfilter/vsrc_buffer.h>
++ #else
++ #include <libavfilter/avcodec.h>
++ #endif
+ #elif (defined HAVE_FFMPEG_AVFILTER_H)
+ #include <ffmpeg/avfiltergraph.h>
+ #include <ffmpeg/buffersink.h>
+@@ -75,7 +79,11 @@ public:
+ virtual int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs, void *log_ctx)=0;
+ virtual int avfilter_graph_config(AVFilterGraph *graphctx, void *log_ctx)=0;
+ #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0)
++#if LIBAVFILTER_VERSION_MICRO < 50 // Libav
++ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int64_t pts, AVRational pixel_aspect)=0;
++#else
+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags)=0;
++#endif
+ #else
+ virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags)=0;
+ #endif
+@@ -135,7 +143,11 @@ public:
+ return ::avfilter_graph_config(graphctx, log_ctx);
+ }
+ #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0)
++#if LIBAVFILTER_VERSION_MICRO < 50 // Libav
++ 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); }
++#else
+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags) { return ::av_vsrc_buffer_add_frame(buffer_filter, frame, flags); }
++#endif
+ #else
+ virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame* frame, int flags) { return ::av_buffersrc_add_frame(buffer_filter, frame, flags); }
+ #endif
+Index: xbmc-11.0/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+===================================================================
+--- xbmc-11.0.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
++++ xbmc-11.0/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+@@ -833,7 +833,11 @@ int CDVDVideoCodecFFmpeg::FilterProcess(
+ if (frame)
+ {
+ #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0)
++#if LIBAVFILTER_VERSION_MICRO < 50 // Libav
++ result = m_dllAvFilter.av_vsrc_buffer_add_frame(m_pFilterIn, frame, frame->pts, m_pCodecContext->sample_aspect_ratio);
++#else
+ result = m_dllAvFilter.av_vsrc_buffer_add_frame(m_pFilterIn, frame, 0);
++#endif
+ #else
+ result = m_dllAvFilter.av_buffersrc_add_frame(m_pFilterIn, frame, 0);
+ #endif
diff --git a/media-tv/xbmc/files/xbmc-11.0-libav.patch b/media-tv/xbmc/files/xbmc-11.0-libav.patch
index 84a215a72684..0aaa1ce41849 100644
--- a/media-tv/xbmc/files/xbmc-11.0-libav.patch
+++ b/media-tv/xbmc/files/xbmc-11.0-libav.patch
@@ -1,6 +1,3 @@
-Patch rebased to current patches backported from upstream by Alexis Ballier.
-Based on the previous patch, submitted upstream but not merged it seems:
-
https://bugs.gentoo.org/406215
From c74abc298e2075f431d9fa700fcfc5e1bbbddf22 Mon Sep 17 00:00:00 2001
@@ -12,60 +9,64 @@ 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.
-Index: xbmc-11.0/lib/DllAvFilter.h
-===================================================================
---- xbmc-11.0.orig/lib/DllAvFilter.h
-+++ xbmc-11.0/lib/DllAvFilter.h
-@@ -45,7 +45,11 @@ extern "C" {
- #if (defined HAVE_LIBAVFILTER_AVFILTER_H)
- #include <libavfilter/avfiltergraph.h>
- #include <libavfilter/buffersink.h>
+---
+ 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>
-+ #if LIBAVFILTER_VERSION_MICRO < 50 // Libav
-+ #include <libavfilter/vsrc_buffer.h>
-+ #else
-+ #include <libavfilter/avcodec.h>
-+ #endif
- #elif (defined HAVE_FFMPEG_AVFILTER_H)
- #include <ffmpeg/avfiltergraph.h>
- #include <ffmpeg/buffersink.h>
-@@ -75,7 +79,11 @@ public:
- virtual int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs, void *log_ctx)=0;
- virtual int avfilter_graph_config(AVFilterGraph *graphctx, void *log_ctx)=0;
- #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0)
-+#if LIBAVFILTER_VERSION_MICRO < 50 // Libav
-+ virtual int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int64_t pts, AVRational pixel_aspect)=0;
-+#else
++ #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;
-+#endif
- #else
- virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, int flags)=0;
- #endif
-@@ -135,7 +143,11 @@ public:
- return ::avfilter_graph_config(graphctx, log_ctx);
- }
- #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0)
-+#if LIBAVFILTER_VERSION_MICRO < 50 // Libav
-+ 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); }
+#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
- #else
- virtual int av_buffersrc_add_frame(AVFilterContext *buffer_filter, AVFrame* frame, int flags) { return ::av_buffersrc_add_frame(buffer_filter, frame, flags); }
- #endif
-Index: xbmc-11.0/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-===================================================================
---- xbmc-11.0.orig/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-+++ xbmc-11.0/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
-@@ -833,7 +833,11 @@ int CDVDVideoCodecFFmpeg::FilterProcess(
+ #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(3,0,0)
-+#if LIBAVFILTER_VERSION_MICRO < 50 // Libav
-+ result = m_dllAvFilter.av_vsrc_buffer_add_frame(m_pFilterIn, frame, frame->pts, m_pCodecContext->sample_aspect_ratio);
-+#else
+ #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
- #else
- result = m_dllAvFilter.av_buffersrc_add_frame(m_pFilterIn, frame, 0);
- #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-r1.ebuild b/media-tv/xbmc/xbmc-11.0-r1.ebuild
new file mode 100644
index 000000000000..bc4c0b19a144
--- /dev/null
+++ b/media-tv/xbmc/xbmc-11.0-r1.ebuild
@@ -0,0 +1,237 @@
+# 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-r1.ebuild,v 1.1 2012/11/14 07:59:15 scarabeus Exp $
+
+EAPI="4"
+
+# Does not work with py3 here
+# It might work with py:2.5 but I didn't test that
+PYTHON_DEPEND="2:2.6"
+
+inherit eutils python
+
+EGIT_REPO_URI="git://github.com/xbmc/xbmc.git"
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-2 autotools
+else
+ inherit autotools
+ MY_P=${P/_/-*_}
+ SRC_URI="http://mirrors.xbmc.org/releases/source/${MY_P}.tar.gz
+ http://dev.gentoo.org/~aballier/distfiles/${P}-ffmpeg-1.0-compat-1.tar.bz2"
+ KEYWORDS="~amd64 ~x86"
+ S=${WORKDIR}/${MY_P}
+fi
+
+DESCRIPTION="XBMC is a free and open source media-player and entertainment hub"
+HOMEPAGE="http://xbmc.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="airplay alsa altivec avahi bluetooth bluray cec css debug goom joystick midi mysql profile +projectm pulseaudio pvr +rsxs rtmp +samba sse sse2 udev vaapi vdpau webserver +xrandr"
+REQUIRED_USE="pvr? ( mysql )"
+
+COMMON_DEPEND="virtual/opengl
+ app-arch/bzip2
+ app-arch/unzip
+ app-arch/zip
+ app-i18n/enca
+ airplay? ( app-pda/libplist )
+ >=dev-lang/python-2.4
+ dev-libs/boost
+ dev-libs/fribidi
+ dev-libs/libcdio[-minimal]
+ cec? ( dev-libs/libcec )
+ dev-libs/libpcre[cxx]
+ >=dev-libs/lzo-2.04
+ dev-libs/yajl
+ >=dev-python/pysqlite-2
+ dev-python/simplejson
+ media-libs/alsa-lib
+ media-libs/flac
+ media-libs/fontconfig
+ media-libs/freetype
+ >=media-libs/glew-1.5.6
+ media-libs/jasper
+ media-libs/jbigkit
+ virtual/jpeg
+ >=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
+ media-libs/libsdl[audio,opengl,video,X]
+ alsa? ( media-libs/libsdl[alsa] )
+ media-libs/libvorbis
+ media-libs/sdl-gfx
+ >=media-libs/sdl-image-1.2.10[gif,jpeg,png]
+ media-libs/sdl-mixer
+ media-libs/sdl-sound
+ media-libs/tiff
+ pulseaudio? ( media-sound/pulseaudio )
+ media-sound/wavpack
+ || ( media-libs/libpostproc <media-video/libav-0.8.2-r1 media-video/ffmpeg )
+ >=virtual/ffmpeg-0.10.2[encode]
+ rtmp? ( media-video/rtmpdump )
+ avahi? ( net-dns/avahi )
+ webserver? ( net-libs/libmicrohttpd )
+ net-misc/curl
+ samba? ( >=net-fs/samba-3.4.6[smbclient] )
+ bluetooth? ( net-wireless/bluez )
+ sys-apps/dbus
+ sys-libs/zlib
+ mysql? ( virtual/mysql )
+ x11-apps/xdpyinfo
+ x11-apps/mesa-progs
+ vaapi? ( x11-libs/libva[opengl] )
+ vdpau? (
+ || ( x11-libs/libvdpau >=x11-drivers/nvidia-drivers-180.51 )
+ virtual/ffmpeg[vdpau]
+ )
+ x11-libs/libXinerama
+ xrandr? ( x11-libs/libXrandr )
+ x11-libs/libXrender"
+RDEPEND="${COMMON_DEPEND}
+ udev? ( sys-fs/udisks:0 sys-power/upower )"
+DEPEND="${COMMON_DEPEND}
+ dev-util/gperf
+ x11-proto/xineramaproto
+ dev-util/cmake
+ x86? ( dev-lang/nasm )"
+
+pkg_setup() {
+ python_set_active_version 2
+ python_pkg_setup
+}
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]] ; then
+ git-2_src_unpack
+ cd "${S}"
+ rm -f configure
+ else
+ unpack ${A}
+ cd "${S}"
+ fi
+
+ # Fix case sensitivity
+ mv media/Fonts/{a,A}rial.ttf || die
+ mv media/{S,s}plash.png || die
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-11.0-nomythtv.patch
+ epatch "${FILESDIR}"/${PN}-11.0-no-arm-flags.patch #400617
+ epatch "${FILESDIR}"/${PN}-11.0-no-exec-stack.patch
+ EPATCH_MULTI_MSG="Applying patches from upstream to fix building with recent FFmpeg versions..." \
+ EPATCH_SUFFIX="patch" \
+ epatch "${WORKDIR}/${P}-ffmpeg-1.0-compat" #438842
+ epatch "${FILESDIR}"/${PN}-11.0-ffmpeg-0.10.2.patch #406215
+ epatch "${FILESDIR}"/${PN}-11.0-libav-r1.patch #406215
+ # The mythtv patch touches configure.ac, so force a regen
+ rm -f configure
+
+ # some dirs ship generated autotools, some dont
+ local d
+ for d in \
+ . \
+ lib/{libdvd/lib*/,cpluff,libapetag,libid3tag/libid3tag} \
+ xbmc/screensavers/rsxs-* \
+ xbmc/visualizations/Goom/goom2k4-0
+ do
+ [[ -e ${d}/configure ]] && continue
+ pushd ${d} >/dev/null
+ eautoreconf
+ popd >/dev/null
+ done
+
+ local squish #290564
+ use altivec && squish="-DSQUISH_USE_ALTIVEC=1 -maltivec"
+ use sse && squish="-DSQUISH_USE_SSE=1 -msse"
+ use sse2 && squish="-DSQUISH_USE_SSE=2 -msse2"
+ sed -i \
+ -e '/^CXXFLAGS/{s:-D[^=]*=.::;s:-m[[:alnum:]]*::}' \
+ -e "1iCXXFLAGS += ${squish}" \
+ lib/libsquish/Makefile.in || die
+
+ # 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 XBMC's final version string showing as "exported"
+ # instead of the SVN revision number.
+ export HAVE_GIT=no GIT_REV=${EGIT_VERSION:-exported}
+
+ # Avoid lsb-release dependency
+ sed -i \
+ -e 's:lsb_release -d:cat /etc/gentoo-release:' \
+ xbmc/utils/SystemInfo.cpp || die
+
+ # 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 -print0 | xargs -0 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)
+
+ econf \
+ --docdir=/usr/share/doc/${PF} \
+ --disable-ccache \
+ --disable-optimizations \
+ --enable-external-libraries \
+ --enable-gl \
+ $(use_enable airplay) \
+ $(use_enable avahi) \
+ $(use_enable bluray libbluray) \
+ $(use_enable cec libcec) \
+ $(use_enable css dvdcss) \
+ $(use_enable debug) \
+ $(use_enable goom) \
+ --disable-hal \
+ $(use_enable joystick) \
+ $(use_enable midi mid) \
+ $(use_enable mysql) \
+ $(use_enable profile profiling) \
+ $(use_enable projectm) \
+ $(use_enable pulseaudio pulse) \
+ $(use_enable pvr mythtv) \
+ $(use_enable rsxs) \
+ $(use_enable rtmp) \
+ $(use_enable samba) \
+ $(use_enable vaapi) \
+ $(use_enable vdpau) \
+ $(use_enable webserver) \
+ $(use_enable xrandr)
+}
+
+src_install() {
+ default
+ rm "${ED}"/usr/share/doc/*/{LICENSE.GPL,copying.txt}*
+
+ domenu tools/Linux/xbmc.desktop
+ newicon tools/Linux/xbmc-48x48.png xbmc.png
+
+ insinto "$(python_get_sitedir)" #309885
+ doins tools/EventClients/lib/python/xbmcclient.py || die
+ newbin "tools/EventClients/Clients/XBMC Send/xbmc-send.py" xbmc-send || die
+}
+
+pkg_postinst() {
+ elog "Visit http://wiki.xbmc.org/?title=XBMC_Online_Manual"
+}
diff --git a/media-tv/xbmc/xbmc-11.0.ebuild b/media-tv/xbmc/xbmc-11.0.ebuild
index 5763c29d12b0..98969348ea9b 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.15 2012/10/24 22:36:12 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-tv/xbmc/xbmc-11.0.ebuild,v 1.16 2012/11/14 07:59:15 scarabeus Exp $
EAPI="4"
@@ -16,9 +16,8 @@ if [[ ${PV} == "9999" ]] ; then
else
inherit autotools
MY_P=${P/_/-*_}
- SRC_URI="http://mirrors.xbmc.org/releases/source/${MY_P}.tar.gz
- http://dev.gentoo.org/~aballier/distfiles/${P}-ffmpeg-1.0-compat-1.tar.bz2"
- KEYWORDS="amd64 x86"
+ SRC_URI="http://mirrors.xbmc.org/releases/source/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
S=${WORKDIR}/${MY_P}
fi
@@ -75,7 +74,7 @@ COMMON_DEPEND="virtual/opengl
pulseaudio? ( media-sound/pulseaudio )
media-sound/wavpack
|| ( media-libs/libpostproc <media-video/libav-0.8.2-r1 media-video/ffmpeg )
- >=virtual/ffmpeg-0.10.2[encode]
+ >=virtual/ffmpeg-0.6[encode]
rtmp? ( media-video/rtmpdump )
avahi? ( net-dns/avahi )
webserver? ( net-libs/libmicrohttpd )
@@ -127,11 +126,9 @@ src_prepare() {
epatch "${FILESDIR}"/${PN}-11.0-nomythtv.patch
epatch "${FILESDIR}"/${PN}-11.0-no-arm-flags.patch #400617
epatch "${FILESDIR}"/${PN}-11.0-no-exec-stack.patch
- EPATCH_MULTI_MSG="Applying patches from upstream to fix building with recent FFmpeg versions..." \
- EPATCH_SUFFIX="patch" \
- epatch "${WORKDIR}/${P}-ffmpeg-1.0-compat" #438842
epatch "${FILESDIR}"/${PN}-11.0-ffmpeg-0.10.2.patch #406215
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