diff options
author | Alexis Ballier <aballier@gentoo.org> | 2007-04-05 19:28:18 +0000 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2007-04-05 19:28:18 +0000 |
commit | 7df4762cb17e38ec17dffc82d662aee6b2f6a100 (patch) | |
tree | b4c1e77ad365cf3938ff5409a9213497e1993137 /media-video/ffmpeg | |
parent | Bug #168334 ; q -r dies with a segfault after emerge --sync (diff) | |
download | gentoo-2-7df4762cb17e38ec17dffc82d662aee6b2f6a100.tar.gz gentoo-2-7df4762cb17e38ec17dffc82d662aee6b2f6a100.tar.bz2 gentoo-2-7df4762cb17e38ec17dffc82d662aee6b2f6a100.zip |
Disable non pic safe asm on x86 and amd64, bug #172845, bug #172877 and dupes
(Portage version: 2.1.2.3)
Diffstat (limited to 'media-video/ffmpeg')
-rw-r--r-- | media-video/ffmpeg/ChangeLog | 6 | ||||
-rw-r--r-- | media-video/ffmpeg/ffmpeg-0.4.9_p20070330.ebuild | 4 | ||||
-rw-r--r-- | media-video/ffmpeg/files/ffmpeg-0.4.9_p20070330-asmpic.patch | 35 |
3 files changed, 43 insertions, 2 deletions
diff --git a/media-video/ffmpeg/ChangeLog b/media-video/ffmpeg/ChangeLog index ac341b87cdbb..d42f3d529ea4 100644 --- a/media-video/ffmpeg/ChangeLog +++ b/media-video/ffmpeg/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for media-video/ffmpeg # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ChangeLog,v 1.188 2007/04/04 20:14:07 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ChangeLog,v 1.189 2007/04/05 19:28:18 aballier Exp $ + + 05 Apr 2007; Alexis Ballier <aballier@gentoo.org> + +files/ffmpeg-0.4.9_p20070330-asmpic.patch, ffmpeg-0.4.9_p20070330.ebuild: + Disable non pic safe asm on x86 and amd64, bug #172845, bug #172877 and dupes 04 Apr 2007; Markus Rothe <corsair@gentoo.org> ffmpeg-0.4.9_p20070330.ebuild: diff --git a/media-video/ffmpeg/ffmpeg-0.4.9_p20070330.ebuild b/media-video/ffmpeg/ffmpeg-0.4.9_p20070330.ebuild index c89779be7a15..36d5e74dbe5e 100644 --- a/media-video/ffmpeg/ffmpeg-0.4.9_p20070330.ebuild +++ b/media-video/ffmpeg/ffmpeg-0.4.9_p20070330.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ffmpeg-0.4.9_p20070330.ebuild,v 1.3 2007/04/04 20:14:07 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ffmpeg-0.4.9_p20070330.ebuild,v 1.4 2007/04/05 19:28:18 aballier Exp $ inherit eutils flag-o-matic multilib toolchain-funcs @@ -89,6 +89,8 @@ src_unpack() { sed -i -e "s:-e debug=off::" tests/server-regression.sh epatch "${FILESDIR}/${PN}-shared-gcc4.1.patch" + # disable non pic safe asm, bug #172877, bug #172845 and dupes + epatch "${FILESDIR}/${P}-asmpic.patch" } src_compile() { diff --git a/media-video/ffmpeg/files/ffmpeg-0.4.9_p20070330-asmpic.patch b/media-video/ffmpeg/files/ffmpeg-0.4.9_p20070330-asmpic.patch new file mode 100644 index 000000000000..0cf16c3e5cca --- /dev/null +++ b/media-video/ffmpeg/files/ffmpeg-0.4.9_p20070330-asmpic.patch @@ -0,0 +1,35 @@ +Index: ffmpeg/libavcodec/cabac.h +=================================================================== +--- ffmpeg.orig/libavcodec/cabac.h ++++ ffmpeg/libavcodec/cabac.h +@@ -376,7 +376,7 @@ static int av_always_inline get_cabac_in + #define BYTE "16" + #define BYTEEND "20" + #endif +-#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) ++#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) && !(defined(PIC) && defined(__GNUC__)) + int bit; + + #ifndef BRANCHLESS_CABAC_DECODER +@@ -680,7 +680,7 @@ static av_always_inline int get_cabac_by + + //FIXME the x86 code from this file should be moved into i386/h264 or cabac something.c/h (note ill kill you if you move my code away from under my fingers before iam finished with it!) + //FIXME use some macros to avoid duplicatin get_cabac (cant be done yet as that would make optimization work hard) +-#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) ++#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) && !(defined(PIC) && defined(__GNUC__)) + static int decode_significance_x86(CABACContext *c, int max_coeff, uint8_t *significant_coeff_ctx_base, int *index){ + void *end= significant_coeff_ctx_base + max_coeff - 1; + int minusstart= -(int)significant_coeff_ctx_base; +Index: ffmpeg/libavcodec/h264.c +=================================================================== +--- ffmpeg.orig/libavcodec/h264.c ++++ ffmpeg/libavcodec/h264.c +@@ -6111,7 +6111,7 @@ static int decode_cabac_residual( H264Co + index[coeff_count++] = last;\ + } + const uint8_t *sig_off = significant_coeff_flag_offset_8x8[MB_FIELD]; +-#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) ++#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) && !(defined(PIC) && defined(__GNUC__)) + coeff_count= decode_significance_8x8_x86(CC, significant_coeff_ctx_base, index, sig_off); + } else { + coeff_count= decode_significance_x86(CC, max_coeff, significant_coeff_ctx_base, index); |