commit:     4ffb125c12109bff6987c033823a8b00d4df4970
Author:     Alexis Ballier <aballier <AT> gentoo <DOT> org>
AuthorDate: Mon Dec  5 10:07:07 2016 +0000
Commit:     Alexis Ballier <aballier <AT> gentoo <DOT> org>
CommitDate: Mon Dec  5 10:07:18 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ffb125c

media-video/2mandvd: fix build with gcc6 and ffmpeg 3. Bug #575054.

Package-Manager: portage-2.3.2

 media-video/2mandvd/2mandvd-1.8.5.ebuild           |  4 ++-
 .../2mandvd/files/2mandvd-1.8.5-ffmpeg3.patch      | 32 ++++++++++++++++++++++
 media-video/2mandvd/files/2mandvd-1.8.5-gcc6.patch | 21 ++++++++++++++
 3 files changed, 56 insertions(+), 1 deletion(-)

diff --git a/media-video/2mandvd/2mandvd-1.8.5.ebuild 
b/media-video/2mandvd/2mandvd-1.8.5.ebuild
index 28f3931..d6cdd0f 100644
--- a/media-video/2mandvd/2mandvd-1.8.5.ebuild
+++ b/media-video/2mandvd/2mandvd-1.8.5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -45,6 +45,8 @@ S=${WORKDIR}/${MY_PN}
 PATCHES=(
        "${FILESDIR}/${PN}-1.7.3-libav.patch"
        "${FILESDIR}/${PN}-1.8.5-libavformat54.patch"
+       "${FILESDIR}/${PN}-1.8.5-gcc6.patch"
+       "${FILESDIR}/${PN}-1.8.5-ffmpeg3.patch"
 )
 
 src_prepare() {

diff --git a/media-video/2mandvd/files/2mandvd-1.8.5-ffmpeg3.patch 
b/media-video/2mandvd/files/2mandvd-1.8.5-ffmpeg3.patch
new file mode 100644
index 00000000..29ffc95
--- /dev/null
+++ b/media-video/2mandvd/files/2mandvd-1.8.5-ffmpeg3.patch
@@ -0,0 +1,32 @@
+Index: 2ManDVD/videowrapper.cpp
+===================================================================
+--- 2ManDVD.orig/videowrapper.cpp
++++ 2ManDVD/videowrapper.cpp
+@@ -99,11 +99,11 @@ int videowrapper::load_video(QString fil
+ 
+     img_convert_ctx = sws_getContext(pCodecCtx->width,
+                     pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,
+-                    pCodecCtx->height, PIX_FMT_RGB24, SWS_BICUBIC, NULL,
++                    pCodecCtx->height, AV_PIX_FMT_RGB24, SWS_BICUBIC, NULL,
+                     NULL, NULL);
+ 
+     // *** ON DETERMINE LA TAILLE DU BUFFER ***
+-    numBytes=avpicture_get_size(PIX_FMT_RGB24, pCodecCtx->width,
++    numBytes=avpicture_get_size(AV_PIX_FMT_RGB24, pCodecCtx->width,
+                                 pCodecCtx->height);
+     buffer=(uint8_t *)av_malloc(numBytes*sizeof(uint8_t));
+     old_frame = -1;
+@@ -120,10 +120,10 @@ QImage videowrapper::read_frame(int64_t
+     if ( num_frame != old_frame )
+     {
+         // *** ALLOCATE VIDEO FRAME ***
+-        pFrameRGB=avcodec_alloc_frame();
+-        pFrame=avcodec_alloc_frame();
++        pFrameRGB=av_frame_alloc();
++        pFrame=av_frame_alloc();
+ 
+-        avpicture_fill((AVPicture *)pFrameRGB, buffer, PIX_FMT_RGB24,
++        avpicture_fill((AVPicture *)pFrameRGB, buffer, AV_PIX_FMT_RGB24,
+                         pCodecCtx->width, pCodecCtx->height);
+         av_seek_frame(pFormatCtx,videoStream,0, AVSEEK_FLAG_FRAME);
+         compte_frame = -1;

diff --git a/media-video/2mandvd/files/2mandvd-1.8.5-gcc6.patch 
b/media-video/2mandvd/files/2mandvd-1.8.5-gcc6.patch
new file mode 100644
index 00000000..5a16d95
--- /dev/null
+++ b/media-video/2mandvd/files/2mandvd-1.8.5-gcc6.patch
@@ -0,0 +1,21 @@
+Index: 2ManDVD/tetrahedron.h
+===================================================================
+--- 2ManDVD.orig/tetrahedron.h
++++ 2ManDVD/tetrahedron.h
+@@ -83,7 +83,6 @@ public:
+     float scale_factor;
+     float wg_x;
+     float wdecal;
+-    GLfloat light_position[];
+ 
+     GLfloat anag_x;
+     GLfloat anag_y;
+@@ -427,6 +426,8 @@ private:
+     void dropEvent(QDropEvent *);
+     void dragEnterEvent(QDragEnterEvent *);
+     Qt::DropActions supportedDropActions () const;
++public:
++    GLfloat light_position[];
+ };
+ 
+ #endif

Reply via email to