diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2009-07-09 02:22:32 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2009-07-09 02:22:32 +0300 |
commit | 2d34316116bffa5c9fe7b48a498b2612b16762c6 (patch) | |
tree | be64dff3fe5c51a48cebed83306378a500551dd8 /media-video/ffmpeg | |
parent | 2797db46c510a093128ecb3fa796a405a7a3f01e (diff) |
modified: dev-libs/ptlib/ptlib-2.6.3.ebuild
new file: media-video/ffmpeg/ffmpeg-20099999-r2.ebuild
deleted: media-video/ffmpeg/ffmpeg-20099999.ebuild
modified: x11-libs/pixman/pixman-9999.ebuild
Diffstat (limited to 'media-video/ffmpeg')
-rw-r--r-- | media-video/ffmpeg/ffmpeg-20099999-r2.ebuild | 192 | ||||
-rw-r--r-- | media-video/ffmpeg/ffmpeg-20099999.ebuild | 187 |
2 files changed, 192 insertions, 187 deletions
diff --git a/media-video/ffmpeg/ffmpeg-20099999-r2.ebuild b/media-video/ffmpeg/ffmpeg-20099999-r2.ebuild new file mode 100644 index 0000000..8578d62 --- /dev/null +++ b/media-video/ffmpeg/ffmpeg-20099999-r2.ebuild @@ -0,0 +1,192 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=1 +ESVN_REPO_URI="svn://svn.mplayerhq.hu/ffmpeg/trunk" + +inherit eutils flag-o-matic multilib toolchain-funcs subversion + +DESCRIPTION="Complete solution to record, convert and stream audio and video" +HOMEPAGE="http://ffmpeg.org/" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~x86 ~amd64" +IUSE="+3dnow +3dnowext +alsa altivec amr custom-cflags debug dirac doc ieee1394 + +encode +faac +faad gsm ipv6 +mmx +mmxext +vorbis test theora +threads + +x264 +xvid network zlib sdl X +mp3 oss schroedinger +hardcoded-tables + bindist v4l v4l2 speex +ssse3 jpeg2k" + +RDEPEND="sdl? ( >=media-libs/libsdl-1.2.10 ) + alsa? ( media-libs/alsa-lib ) + encode? ( + faac? ( 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 ) ) + faad? ( >=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 ) + jpeg2k? ( >=media-libs/openjpeg-1.3-r2 ) + schroedinger? ( media-libs/schroedinger ) + speex? ( >=media-libs/speex-1.2_beta3 ) + X? ( x11-libs/libX11 x11-libs/libXext ) + amr? ( media-libs/opencore-amr )" + +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_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 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 faad && myconf="${myconf} --enable-libfaad" + use dirac && myconf="${myconf} --enable-libdirac" + use schroedinger && myconf="${myconf} --enable-libschroedinger" + use speex && myconf="${myconf} --enable-libspeex" + use jpeg2k && myconf="${myconf} --enable-libopenjpeg" + 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 + if use faac; then + ewarn "FAAC is considered nonfree by ffmpeg developers and the resulting" + ewarn "ffmpeg binary can therefore not be freely redistributed." + ewarn "Disabling faac support." + fi + else + use amr && myconf="${myconf} --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 \ + --enable-nonfree" + use faac && myconf="${myconf} --enable-libfaac --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" + use 3dnowext || myconf="${myconf} --disable-amd3dnowext" + # 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 + + # Mandatory configuration + myconf="${myconf} --enable-gpl --enable-postproc \ + --enable-avfilter --enable-avfilter-lavf \ + --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/ffmpeg-20099999.ebuild b/media-video/ffmpeg/ffmpeg-20099999.ebuild deleted file mode 100644 index 690f089..0000000 --- a/media-video/ffmpeg/ffmpeg-20099999.ebuild +++ /dev/null @@ -1,187 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="1" -inherit subversion eutils flag-o-matic multilib toolchain-funcs - -ESVN_REPO_URI="svn://svn.mplayerhq.hu/ffmpeg/trunk" -DESCRIPTION="Complete solution to record, convert and stream audio and video (source from SVN)" -HOMEPAGE="http://ffmpeg.org/" -LICENSE="GPL-2" -SLOT="" -KEYWORDS="~amd64 ~ppc64 ~sparc ~x86" -IUSE="+aac altivec amrnb amrwb -bindist -debug dirac doc gsm - +hardcoded-tables icc ieee1394 imlib ipv6 mmx +mp3 network oss schroedinger - sdl test theora +threads +truetype v4l vdpau +vorbis X +x264 +xvid +zlib" - -RDEPEND="aac? ( media-libs/faad2 media-libs/faac ) - !bindist? ( - amrnb? ( media-libs/amrnb ) - amrwb? ( media-libs/amrwb ) - ) - dirac? ( media-video/dirac ) - gsm? ( >=media-sound/gsm-1.0.12-r1 ) - ieee1394? ( media-libs/libdc1394 - sys-libs/libraw1394 ) - imlib? ( media-libs/imlib2 ) - mp3? ( media-sound/lame ) - schroedinger? ( media-libs/schroedinger ) - sdl? ( >=media-libs/libsdl-1.2.10 ) - theora? ( media-libs/libtheora media-libs/libogg ) - truetype? ( >=media-libs/freetype-2 ) - vdpau? ( >=x11-drivers/nvidia-drivers-180.08 ) - vorbis? ( media-libs/libvorbis media-libs/libogg ) - X? ( x11-libs/libX11 x11-libs/libXext ) - x264? ( >=media-libs/x264-0.0.20081006 ) - xvid? ( >=media-libs/xvid-1.1.0 ) - zlib? ( sys-libs/zlib )" - -DEPEND="${RDEPEND} - doc? ( app-text/texi2html ) - mmx? ( dev-lang/yasm ) - test? ( net-misc/wget ) - v4l? ( sys-kernel/linux-headers )" - -S=${WORKDIR}/${PN} - -src_unpack() { - subversion_src_unpack - - # For Version Branding - cd "${ESVN_STORE_DIR}/${ESVN_CO_DIR}/${ESVN_PROJECT}/${ESVN_REPO_URI##*/}" - ./version.sh . version.h - mv version.h "${S}" - cd "${S}" - - # disable version rebranding -# epatch "${FILESDIR}/disable-version-rebranding-2009.01.patch" - - # 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}"/ffmpeg-x86-pic-fix-20080916.patch - use icc && epatch "${FILESDIR}"/ffmpeg-icc.patch -} - -src_compile() { - #Note; library makefiles don't propogate flags from config.mak so - #use specified CFLAGS are only used in executables - replace-flags -O0 -O2 - #x86, what a wonderful arch.... - replace-flags -O1 -O2 - - # Append -fomit-frame-pointer to avoid some common issues - use debug || append-flags "-fomit-frame-pointer" - - # Append -DBROKEN_RELOCATIONS to build for bug 179872. - append-flags "-DBROKEN_RELOCATIONS" - - # temporary fix for bug reported at http://forums.gentoo.org/viewtopic-p-5186627.html#5186627 - append-flags "-D_BSD_SOURCE" - - 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 --disable-mmx2" - fi - - if use elibc_FreeBSD; then - myconf="${myconf} --enable-memalign-hack" - fi - - use amd64 && myconf="${myconf} --arch=x86_64 --cpu=athlon64" - - # enabled by default - use altivec || myconf="${myconf} --disable-altivec" - use debug || myconf="${myconf} --disable-debug" - use network || myconf="${myconf} --disable-network" - use ipv6 || myconf="${myconf} --disable-ipv6" - use zlib || myconf="${myconf} --disable-zlib" - use sdl || myconf="${myconf} --disable-ffplay" - - # disabled by default - use mp3 && myconf="${myconf} --enable-libmp3lame" - use ieee1394 && myconf="${myconf} --enable-libdc1394" - use threads && myconf="${myconf} --enable-pthreads" - use xvid && myconf="${myconf} --enable-libxvid" - use vorbis && myconf="${myconf} --enable-libvorbis" - use x264 && myconf="${myconf} --enable-libx264" - use theora && myconf="${myconf} --enable-libtheora" - use aac && myconf="${myconf} --enable-libfaad --enable-libfaac" - use hardcoded-tables && myconf="${myconf} --enable-hardcoded-tables" - use dirac && myconf="${myconf} --enable-libdirac" - use schroedinger && myconf="${myconf} --enable-libschroedinger" - use vdpau && myconf="${myconf} --enable-vdpau" - use X && myconf="${myconf} --enable-x11grab" - if use gsm; then - myconf="${myconf} --enable-libgsm" - append-flags -I/usr/include/gsm - fi - - if ! use bindist ; then - use amrnb && myconf="${myconf} --enable-libamr-nb --enable-nonfree" - use amrwb && myconf="${myconf} --enable-libamr-wb --enable-nonfree" - fi - - myconf="${myconf} --enable-gpl --enable-postproc --disable-stripping" - myconf="${myconf} --enable-avfilter --enable-avfilter-lavf" - - tc-is-cross-compiler && myconf="${myconf} --cross-compile --arch=$(tc-arch-kernel)" - - # 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() { - echo - ewarn "ffmpeg may have had ABI changes, if ffmpeg based programs" - ewarn "like xine-lib or vlc stop working, please rebuild them." - echo -} |