summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media-video/ffmpeg/ChangeLog8
-rw-r--r--media-video/ffmpeg/Manifest5
-rw-r--r--media-video/ffmpeg/ffmpeg-0.4.9_p20090201-r1.ebuild206
-rw-r--r--media-video/ffmpeg/metadata.xml1
4 files changed, 217 insertions, 3 deletions
diff --git a/media-video/ffmpeg/ChangeLog b/media-video/ffmpeg/ChangeLog
index e72219ca96f3..20f3bba0c557 100644
--- a/media-video/ffmpeg/ChangeLog
+++ b/media-video/ffmpeg/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-video/ffmpeg
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ChangeLog,v 1.272 2009/02/11 17:07:42 dertobi123 Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ChangeLog,v 1.273 2009/02/21 23:30:55 lu_zero Exp $
+
+*ffmpeg-0.4.9_p20090201-r1 (21 Feb 2009)
+
+ 21 Feb 2009; Luca Barbato <lu_zero@gentoo.org>
+ +ffmpeg-0.4.9_p20090201-r1.ebuild:
+ Set some useflag defaults and other minor changes
11 Feb 2009; Tobias Scherbaum <dertobi123@gentoo.org>
ffmpeg-0.4.9_p20090201.ebuild:
diff --git a/media-video/ffmpeg/Manifest b/media-video/ffmpeg/Manifest
index a3bb2623f663..97bf660a8a34 100644
--- a/media-video/ffmpeg/Manifest
+++ b/media-video/ffmpeg/Manifest
@@ -7,7 +7,8 @@ DIST ffmpeg-0.4.9-p20090201.tar.bz2 2697161 RMD160 8cd01f4d6b6adc772d836de592dce
EBUILD ffmpeg-0.4.9_p20081014.ebuild 6400 RMD160 ece41c320da3ab98bbd93dcab604c67e2e31aea5 SHA1 e8517457d731a9821efd87930782e8ca38aa6133 SHA256 0e3119b7f1a8edf9b7fd544708989f7438431652a81f0ed5b087f3fc5368f9e6
EBUILD ffmpeg-0.4.9_p20081219.ebuild 6146 RMD160 d9ace186852d82930fb988e5ef265f3a8bf58e85 SHA1 f12fa4e3326ed25c4d12078792e3b5a325ca420b SHA256 570e02a5a98db588cf56cbf3e51078cc5ae266ee961a53d7fe7748b411549bb4
EBUILD ffmpeg-0.4.9_p20090121.ebuild 6151 RMD160 af9848d2992e88c99a9b907542e95c5ee571f638 SHA1 b3f5d2e73a78f6c647e9096d8d3c7c23eb95fff2 SHA256 2ca908b5a71741b347aea0e7c44f74e24356b691f3c13705ff957580d3230c37
+EBUILD ffmpeg-0.4.9_p20090201-r1.ebuild 6253 RMD160 e8a26996c720d2b8483c487b58f29563dd468cf8 SHA1 e1796504e4586151d5df63a727c5a9e231a3404e SHA256 a15df64fc68af3838e927794b9536f355900c5430900f86d410ef9d75a86b64f
EBUILD ffmpeg-0.4.9_p20090201.ebuild 6273 RMD160 d78b233e4b285c2f452396c84827126c9eb5dbb6 SHA1 a330052ed12fb8ca0cb1e30557d08719c9f012b6 SHA256 9ae1b2798eab76507447ebe785d97f3752ebf8fde9bc89866817b45d47efbb1f
EBUILD ffmpeg-9999.ebuild 6223 RMD160 7e3c415d5c48fc530eb26ace97b8975146dcf9cf SHA1 31184ec3f96a6104d2f7bda4210a9f0544dcd438 SHA256 18e7ab897f6e38faaaed9ef8519ffc0641ac12987fdd2f821ea7e5ecd2c64584
-MISC ChangeLog 41095 RMD160 518886664f70f9d0ba1de4e747b27c8db755b3d9 SHA1 e6fc4d2bc7f050edea700df6f8491e35740c0d26 SHA256 f07a61ba925097b0ee8727942366c9001de030e0d788be75c50f4c93009e7ce2
-MISC metadata.xml 1158 RMD160 f666c9d210c950f862cbf0fcc323a7085f5febe7 SHA1 e5c84b8a4916b9bb20960ae16345c6d0844baa81 SHA256 ab916e46e6a91bf195e25dfe23c777436744017dfdb96d3330fd633bec599e2f
+MISC ChangeLog 41273 RMD160 5821a38dc3bdb9116531cdc66641f6d02c814027 SHA1 5f19d02dbb8fa38f0cc628d082abffcfc14985e4 SHA256 918ffcf0972dbec916cc64d798cadba6a9fbebf4ffe8905556816156d3dbeb01
+MISC metadata.xml 1232 RMD160 8b9efc578347e5278e7386e7154e294e8808269b SHA1 38e62f062a6f52e9b4de9425c295816eb9679bc5 SHA256 1d7123bfe27892774cd17b459902e63c74810e2aa9d91179f19924400d05da76
diff --git a/media-video/ffmpeg/ffmpeg-0.4.9_p20090201-r1.ebuild b/media-video/ffmpeg/ffmpeg-0.4.9_p20090201-r1.ebuild
new file mode 100644
index 000000000000..7318b8918def
--- /dev/null
+++ b/media-video/ffmpeg/ffmpeg-0.4.9_p20090201-r1.ebuild
@@ -0,0 +1,206 @@
+# Copyright 1999-2009 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_p20090201-r1.ebuild,v 1.1 2009/02/21 23:30:55 lu_zero Exp $
+
+EAPI=1
+
+inherit eutils flag-o-matic multilib toolchain-funcs
+
+FFMPEG_SVN_REV="16916"
+
+DESCRIPTION="Complete solution to record, convert and stream audio and video.
+Includes libavcodec. svn revision ${FFMPEG_SVN_REV}"
+HOMEPAGE="http://ffmpeg.org/"
+MY_P=${P/_/-}
+SRC_URI="mirror://gentoo/${MY_P}.tar.bz2"
+
+S=${WORKDIR}/ffmpeg
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="+3dnow aac alsa altivec amr custom-cflags debug dirac doc ieee1394
+ +encode gsm ipv6 +mmx +mmxext vorbis test theora threads x264 xvid
+ network zlib sdl X mp3 oss schroedinger +hardcoded-tables bindist
+ v4l v4l2 speex +ssse3 vhook"
+
+RDEPEND="vhook? ( >=media-libs/imlib2-1.4.0 >=media-libs/freetype-2 )
+ sdl? ( >=media-libs/libsdl-1.2.10 )
+ alsa? ( media-libs/alsa-lib )
+ encode? (
+ aac? ( media-libs/faac )
+ mp3? ( media-sound/lame )
+ vorbis? ( media-libs/libvorbis media-libs/libogg )
+ theora? ( media-libs/libtheora media-libs/libogg )
+ x264? ( >=media-libs/x264-0.0.20081006 )
+ xvid? ( >=media-libs/xvid-1.1.0 ) )
+ aac? ( >=media-libs/faad2-2.6.1 )
+ zlib? ( sys-libs/zlib )
+ ieee1394? ( media-libs/libdc1394
+ sys-libs/libraw1394 )
+ dirac? ( media-video/dirac )
+ gsm? ( >=media-sound/gsm-1.0.12-r1 )
+ schroedinger? ( media-libs/schroedinger )
+ speex? ( >=media-libs/speex-1.2_beta3 )
+ X? ( x11-libs/libX11 x11-libs/libXext )
+ amr? ( media-libs/amrnb media-libs/amrwb )"
+
+DEPEND="${RDEPEND}
+ >=sys-devel/make-3.81
+ mmx? ( dev-lang/yasm )
+ doc? ( app-text/texi2html )
+ test? ( net-misc/wget )
+ v4l? ( sys-kernel/linux-headers )
+ v4l2? ( sys-kernel/linux-headers )"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ # Set version #
+ # Any better idea? We can't do much more as we use an exported svn snapshot.
+ sed -i s/UNKNOWN/SVN-r${FFMPEG_SVN_REV}/ "${S}/version.sh"
+}
+
+src_compile() {
+ local myconf="${EXTRA_ECONF}"
+
+ # enabled by default
+ use debug || myconf="${myconf} --disable-debug"
+ use zlib || myconf="${myconf} --disable-zlib"
+ use sdl || myconf="${myconf} --disable-ffplay"
+
+ if use network; then
+ use ipv6 || myconf="${myconf} --disable-ipv6"
+ else
+ myconf="${myconf} --disable-network"
+ fi
+
+ use custom-cflags && myconf="${myconf} --disable-optimizations"
+
+ # enabled by default
+ if use encode
+ then
+ use aac && myconf="${myconf} --enable-libfaac"
+ use mp3 && myconf="${myconf} --enable-libmp3lame"
+ use vorbis && myconf="${myconf} --enable-libvorbis"
+ use theora && myconf="${myconf} --enable-libtheora"
+ use x264 && myconf="${myconf} --enable-libx264"
+ use xvid && myconf="${myconf} --enable-libxvid"
+ else
+ myconf="${myconf} --disable-encoders"
+ fi
+
+ # libavdevice options
+ use ieee1394 && myconf="${myconf} --enable-libdc1394"
+ # Demuxers
+ for i in v4l v4l2 alsa oss ; do
+ use $i || myconf="${myconf} --disable-demuxer=$i"
+ done
+ # Muxers
+ for i in alsa oss ; do
+ use $i || myconf="${myconf} --disable-muxer=$i"
+ done
+ use X && myconf="${myconf} --enable-x11grab"
+
+ # Threads; we only support pthread for now but ffmpeg supports more
+ use threads && myconf="${myconf} --enable-pthreads"
+
+ # Decoders
+ use aac && myconf="${myconf} --enable-libfaad"
+ use dirac && myconf="${myconf} --enable-libdirac"
+ use schroedinger && myconf="${myconf} --enable-libschroedinger"
+ use speex && myconf="${myconf} --enable-libspeex"
+ if use gsm; then
+ myconf="${myconf} --enable-libgsm"
+ # Crappy detection or our installation is weird, pick one (FIXME)
+ append-flags -I/usr/include/gsm
+ fi
+ if use bindist
+ then
+ use amr && ewarn "libamr is nonfree and cannot be distributed; disabling amr support."
+ else
+ use amr && myconf="${myconf} --enable-libamr-nb \
+ --enable-libamr-wb \
+ --enable-nonfree"
+ fi
+
+ # CPU features
+ for i in mmx ssse3 altivec ; do
+ use $i || myconf="${myconf} --disable-$i"
+ done
+ use mmxext || myconf="${myconf} --disable-mmx2"
+ use 3dnow || myconf="${myconf} --disable-amd3dnow"
+ # disable mmx accelerated code if PIC is required
+ # as the provided asm decidedly is not PIC.
+ if gcc-specs-pie ; then
+ myconf="${myconf} --disable-mmx --disable-mmx2"
+ fi
+
+ # Try to get cpu type based on CFLAGS.
+ # Bug #172723
+ # We need to do this so that features of that CPU will be better used
+ # If they contain an unknown CPU it will not hurt since ffmpeg's configure
+ # will just ignore it.
+ for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
+ myconf="${myconf} --cpu=$i"
+ break
+ done
+
+ # video hooking support. replaced by libavfilter, probably needs to be
+ # dropped at some point.
+ use vhook || myconf="${myconf} --disable-vhook"
+
+ # Mandatory configuration
+ myconf="${myconf} --enable-gpl --enable-postproc \
+ --enable-avfilter --enable-avfilter-lavf \
+ --enable-swscale --disable-stripping"
+
+ # cross compile support
+ tc-is-cross-compiler && myconf="${myconf} --enable-cross-compile --arch=$(tc-arch-kernel)"
+
+ # Misc stuff
+ use hardcoded-tables && myconf="${myconf} --enable-hardcoded-tables"
+
+ # 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 version.h || die #252269
+ emake || die "make failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "Install Failed"
+
+ dodoc Changelog README INSTALL
+ dodoc doc/*
+}
+
+# Never die for now...
+src_test() {
+ for t in codectest libavtest seektest ; do
+ emake ${t} || ewarn "Some tests in ${t} failed"
+ done
+}
diff --git a/media-video/ffmpeg/metadata.xml b/media-video/ffmpeg/metadata.xml
index 8de5b9e18914..80d506f0ad64 100644
--- a/media-video/ffmpeg/metadata.xml
+++ b/media-video/ffmpeg/metadata.xml
@@ -7,6 +7,7 @@
</maintainer>
<use>
<flag name="amr">Enables Adaptive Multi-Rate Audio support</flag>
+ <flag name="custom-cflags">Enables custom CFLAGS (UNSUPPORTED)</flag>
<flag name="dirac">Enable Dirac video support (an advanced royalty-free video compression format) via the reference library: dirac.</flag>
<flag name="gsm">Enables support for the gsm lossy speech compression codec via libgsm.</flag>
<flag name="hardcoded-tables">Use pre-calculated tables rather than calculating them on the fly.</flag>