diff options
author | Luca Barbato <lu_zero@gentoo.org> | 2007-01-29 16:07:31 +0000 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2007-01-29 16:07:31 +0000 |
commit | 7dfc0e48e9cc66d6fd641d677a154e87ed1f9ea1 (patch) | |
tree | 6a067d0fe5e21f065e6943ddd17a5359538fbff6 /media-video/ffmpeg | |
parent | Stable on sparc wrt #164020 (diff) | |
download | gentoo-2-7dfc0e48e9cc66d6fd641d677a154e87ed1f9ea1.tar.gz gentoo-2-7dfc0e48e9cc66d6fd641d677a154e87ed1f9ea1.tar.bz2 gentoo-2-7dfc0e48e9cc66d6fd641d677a154e87ed1f9ea1.zip |
New snapshot, beware\!
(Portage version: 2.1.2-r5)
Diffstat (limited to 'media-video/ffmpeg')
-rw-r--r-- | media-video/ffmpeg/ChangeLog | 8 | ||||
-rw-r--r-- | media-video/ffmpeg/ffmpeg-0.4.9_p20070129.ebuild | 180 | ||||
-rw-r--r-- | media-video/ffmpeg/files/digest-ffmpeg-0.4.9_p20070129 | 9 | ||||
-rw-r--r-- | media-video/ffmpeg/files/ffmpeg-libdir-2007.patch | 11 |
4 files changed, 207 insertions, 1 deletions
diff --git a/media-video/ffmpeg/ChangeLog b/media-video/ffmpeg/ChangeLog index 79734f59c841..6145c9b7110a 100644 --- a/media-video/ffmpeg/ChangeLog +++ b/media-video/ffmpeg/ChangeLog @@ -1,6 +1,12 @@ # 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.175 2007/01/29 04:19:21 kloeri Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ChangeLog,v 1.176 2007/01/29 16:07:30 lu_zero Exp $ + +*ffmpeg-0.4.9_p20070129 (29 Jan 2007) + + 29 Jan 2007; Luca Barbato <lu_zero@gentoo.org> + +files/ffmpeg-libdir-2007.patch, +ffmpeg-0.4.9_p20070129.ebuild: + New snapshot 29 Jan 2007; Bryan Østergaard <kloeri@gentoo.org> ffmpeg-0.4.9_p20061016.ebuild: diff --git a/media-video/ffmpeg/ffmpeg-0.4.9_p20070129.ebuild b/media-video/ffmpeg/ffmpeg-0.4.9_p20070129.ebuild new file mode 100644 index 000000000000..641be8bb2ed1 --- /dev/null +++ b/media-video/ffmpeg/ffmpeg-0.4.9_p20070129.ebuild @@ -0,0 +1,180 @@ +# 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_p20070129.ebuild,v 1.1 2007/01/29 16:07:31 lu_zero Exp $ + +inherit eutils flag-o-matic multilib toolchain-funcs + +DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec." +HOMEPAGE="http://ffmpeg.sourceforge.net/" +MY_P=${P/_/-} +S=${WORKDIR}/ffmpeg + +SRC_URI="mirror://gentoo/${MY_P}.tar.bz2 + amr? ( http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-510.zip + http://www.3gpp.org/ftp/Specs/archive/26_series/26.204/26204-510.zip )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="-* alpha amd64 hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd" +IUSE="aac altivec amr debug doc ieee1394 a52 encode imlib mmx ogg vorbis oss + test theora threads truetype v4l x264 xvid dts network zlib sdl" + +RDEPEND="imlib? ( media-libs/imlib2 ) + truetype? ( >=media-libs/freetype-2 ) + sdl? ( >=media-libs/libsdl-1.2.10 ) + encode? ( media-sound/lame ) + ogg? ( media-libs/libogg ) + vorbis? ( media-libs/libvorbis ) + aac? ( media-libs/faad2 media-libs/faac ) + a52? ( >=media-libs/a52dec-0.7.4-r4 ) + xvid? ( >=media-libs/xvid-1.1.0 ) + zlib? ( sys-libs/zlib ) + dts? ( media-libs/libdts ) + ieee1394? ( =media-libs/libdc1394-1* + sys-libs/libraw1394 ) + x264? ( >=media-libs/x264-svn-20061014 )" + +DEPEND="${RDEPEND} + doc? ( app-text/texi2html ) + test? ( net-misc/wget ) + amr? ( app-arch/unzip )" + +src_unpack() { + unpack ${A} || die + cd ${S} + + # amr (float) support + if use amr; then + einfo "Including amr wide and narrow band (float) support ... " + + # narrow band codec + mkdir ${S}/libavcodec/amr_float + cd ${S}/libavcodec/amr_float + unzip -q ${WORKDIR}/26104-510_ANSI_C_source_code.zip + + # wide band codec + mkdir ${S}/libavcodec/amrwb_float + cd ${S}/libavcodec/amrwb_float + unzip -q ${WORKDIR}/26204-510_ANSI-C_source_code.zip + + # Patch if we're on 64-bit + if useq alpha || useq amd64 || useq ia64 || useq ppc64; then + cd ${S} + epatch "${FILESDIR}/ffmpeg-0.4.9_p20060302-amr-64bit.patch" + fi + fi + + cd ${S} + + #Append -fomit-frame-pointer to avoid some common issues + use debug || append-flags "-fomit-frame-pointer" + + # for some reason it tries to #include <X11/Xlib.h>, but doesn't use it + sed -i s:\#define\ HAVE_X11:\#define\ HAVE_LINUX: ffplay.c + + # .pc files contain wrong libdir path + epatch ${FILESDIR}/${PN}-libdir-2007.patch + sed -i -e "s:GENTOOLIBDIR:$(get_libdir):" configure + + # Make it use pic always since we don't need textrels + sed -i -e "s:LIBOBJFLAGS=\"\":LIBOBJFLAGS=\'\$\(PIC\)\':" configure + + # To make sure the ffserver test will work + sed -i -e "s:-e debug=off::" tests/server-regression.sh + + epatch "${FILESDIR}/${PN}-shared-gcc4.1.patch" +} + +src_compile() { + replace-flags -O0 -O2 + #x86, what a wonderful arch.... + replace-flags -O1 -O2 + local myconf="${EXTRA_ECONF}" + + #disable mmx accelerated code if not requested, or if PIC is required + # as the provided asm decidedly is not PIC. + if ( gcc-specs-pie || ! use mmx ) && ( ! use amd64 ); then + myconf="${myconf} --disable-mmx" + fi + + # enabled by default + use altivec || myconf="${myconf} --disable-altivec" + use debug || myconf="${myconf} --disable-debug" + use oss || myconf="${myconf} --disable-audio-oss" + use v4l || myconf="${myconf} --disable-v4l --disable-v4l2" + use ieee1394 || myconf="${myconf} --disable-dv1394" + use network || myconf="${myconf} --disable-network" + use zlib || myconf="${myconf} --disable-zlib" + use sdl || myconf="${myconf} --disable-ffplay" + + myconf="${myconf} --disable-opts" + + # disabled by default + use encode && myconf="${myconf} --enable-mp3lame" + use a52 && myconf="${myconf} --enable-a52" + use ieee1394 && myconf="${myconf} --enable-dc1394" + use threads && myconf="${myconf} --enable-pthreads" + use xvid && myconf="${myconf} --enable-xvid" + if use vorbis + then + myconf="${myconf} --enable-vorbis --enable-libogg" + else + use ogg && myconf="${myconf} --enable-libogg" + fi + use dts && myconf="${myconf} --enable-dts" + use x264 && myconf="${myconf} --enable-x264" + use aac && myconf="${myconf} --enable-faad --enable-faac" + use amr && myconf="${myconf} --enable-amr_nb --enable-amr_wb" + + myconf="${myconf} --enable-gpl --enable-pp --disable-strip" + + # Specific workarounds for too-few-registers arch... + if [[ $(tc-arch) == "x86" ]]; then + filter-flags -fforce-addr -momit-leaf-frame-pointer + append-flags -fomit-frame-pointer + is-flag -O? || append-flags -O2 + if (use debug); then + # no need to warn about debug if not using debug flag + ewarn "" + ewarn "Debug information will be almost useless as the frame pointer is omitted." + ewarn "This makes debugging harder, so crashes that has no fixed behavior are" + ewarn "difficult to fix. Please have that in mind." + ewarn "" + fi + fi + + cd ${S} + ./configure \ + --prefix=/usr \ + --libdir=/usr/$(get_libdir) \ + --shlibdir=/usr/$(get_libdir) \ + --mandir=/usr/share/man \ + --enable-static --enable-shared \ + "--cc=$(tc-getCC)" \ + ${myconf} || die "configure failed" + + emake -j1 depend || die "depend failed" + emake || die "make failed" +} + +src_install() { + emake -j1 LDCONFIG=true DESTDIR=${D} install || die "Install Failed" + + use doc && emake -j1 documentation + dodoc Changelog README INSTALL + dodoc doc/* +} + +# Never die for now... +src_test() { + cd ${S}/tests + for t in "codectest libavtest test-server" ; do + make ${t} || ewarn "Some tests in ${t} failed" + done +} + +pkg_postinst() { + ewarn "ffmpeg may had ABI changes, if ffmpeg based programs" + ewarn "like xine-lib or vlc stop working as expected please" + ewarn "rebuild them." +} diff --git a/media-video/ffmpeg/files/digest-ffmpeg-0.4.9_p20070129 b/media-video/ffmpeg/files/digest-ffmpeg-0.4.9_p20070129 new file mode 100644 index 000000000000..676a100ad8ec --- /dev/null +++ b/media-video/ffmpeg/files/digest-ffmpeg-0.4.9_p20070129 @@ -0,0 +1,9 @@ +MD5 9b575d01f94f50dd4dcf570cd8a14dda 26104-510.zip 291836 +RMD160 0ff97a27fe5d08dd43571fd1982ce0f07bce3bca 26104-510.zip 291836 +SHA256 75fdf6416950c155ccbfd7fae4ffd6529f162ad6b427ab242c3e00685e303f46 26104-510.zip 291836 +MD5 607a14d090898ffb0f72c1aa6aa6ce31 26204-510.zip 246663 +RMD160 1b68232bc40d84298b134c57697e29a842e63ffd 26204-510.zip 246663 +SHA256 069ebd6ed8ef846d99bdd13d6c47fdb99fe5583b0ed5f405e1392a1a21a1b991 26204-510.zip 246663 +MD5 c66ad26fc5fb77adac6c823bbbaa1c3c ffmpeg-0.4.9-p20070129.tar.bz2 2086323 +RMD160 b0895a2d3927c769b7abac1b91d66e7f78586d4f ffmpeg-0.4.9-p20070129.tar.bz2 2086323 +SHA256 107a9c7bfc19c2fde01465d2cbab8082a0e4c1197ff28658aa14932e1be7914f ffmpeg-0.4.9-p20070129.tar.bz2 2086323 diff --git a/media-video/ffmpeg/files/ffmpeg-libdir-2007.patch b/media-video/ffmpeg/files/ffmpeg-libdir-2007.patch new file mode 100644 index 000000000000..e3a2f6bd0816 --- /dev/null +++ b/media-video/ffmpeg/files/ffmpeg-libdir-2007.patch @@ -0,0 +1,11 @@ +--- /var/tmp/portage/media-video/ffmpeg-0.4.9_p20070129/work/ffmpeg/configure.orig 2007-01-29 15:24:05.000000000 +0100 ++++ /var/tmp/portage/media-video/ffmpeg-0.4.9_p20070129/work/ffmpeg/configure 2007-01-29 15:37:23.000000000 +0100 +@@ -2166,7 +2166,7 @@ + cat <<EOF >$name.pc + prefix=$PREFIX + exec_prefix=\${prefix} +-libdir=\${exec_prefix}/lib ++libdir=\${exec_prefix}/GENTOOLIBDIR + includedir=\${prefix}/include + + Name: $name |