New version
authorLuca Barbato <lu_zero@gentoo.org>
Fri, 30 Sep 2011 17:46:26 +0000 (17:46 +0000)
committerLuca Barbato <lu_zero@gentoo.org>
Fri, 30 Sep 2011 17:46:26 +0000 (17:46 +0000)
Package-Manager: portage-2.2.01.19120-prefix/cvs/Darwin i386

media-video/libav/ChangeLog
media-video/libav/Manifest
media-video/libav/libav-0.7.2.ebuild [new file with mode: 0644]

index 3e5039d50d42dc2770e73920cc535c7f583be0eb..14ee56e121c16e00728927863d42b4f13d905f1c 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for media-video/libav
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/libav/ChangeLog,v 1.27 2011/09/22 18:47:03 lu_zero Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/libav/ChangeLog,v 1.28 2011/09/30 17:46:26 lu_zero Exp $
+
+*libav-0.7.2 (30 Sep 2011)
+
+  30 Sep 2011; Luca Barbato <lu_zero@gentoo.org> +libav-0.7.2.ebuild:
+  New version
 
   22 Sep 2011; Luca Barbato <lu_zero@gentoo.org> libav-9999.ebuild:
   Update vaapi logic, thanks to Tobias Jakobi for the notice
index 86210ee5f97ca4993c240cd76c712a5586f340c0..1377b7949d6ad0ce80339e4888990b60a2300bc4 100644 (file)
@@ -2,16 +2,18 @@ AUX 0.6.2-fix_enable_hardcoded_tables.patch 1387 RMD160 3ccd0be1f6612ad45dcd78de
 AUX 0.6.2-float_arrays.patch 1611 RMD160 960188d97261729526187c53a281a03c31a6a95a SHA1 92bb3062933cd9540eb8b05efc6cbebb38e94a0c SHA256 311e255309dfd6a045e38303d80b534aec9444cfe314d0b4d585688075c7dd7d
 DIST libav-0.6.2.tar.bz2 3639862 RMD160 fbdee25614940253e018e42a633da579704146fd SHA1 b79dc56a08f4ef07b41d1a78b2251f21fde8b81d SHA256 eb13f20bfa09664559e81ff9691cebcb77a763320ddf63c47a402351409697af
 DIST libav-0.7.1.tar.xz 3573692 RMD160 4ec345e443b81f5a6b383ffc230190b3656712db SHA1 5b8581fc82fbef9b3d695939d782011ff42ecef6 SHA256 92bf126e3fe538fbee53a8e6f2fef3cc91c14ba2d69072ca23f54317baf30bdc
+DIST libav-0.7.2.tar.xz 3573280 RMD160 5f41d42375e66e681ac99b0183825ddc4f09b70d SHA1 938c52f122030a797e9c9ba5cab6a7cb812cd9d7 SHA256 450999ed097b0814247f44be1321c4997aee49d56cab6636b0a7257e13ba2729
 DIST libav-0.7.tar.xz 3569340 RMD160 f9ff2a20fe527a8686b99f7ce98e55f692b583f2 SHA1 cff6dca61e8940cff34b5f04388fa25c7871fb09 SHA256 5f53f2e4b217b5df9b913672fecba55e18b8cbab2238f03fafddc03e8a37f412
 DIST libav-0.7_pre20110327.tar.xz 3496216 RMD160 3c7d6e3c05eb18575520d287615229ff415b5c22 SHA1 935a7afce252ba465f70f0122562c2c9d4928ff3 SHA256 46ac44e84c67c32f33d438f61e508c7f5683dcdbc5eefb4ad3eeed09c7c8e22f
 DIST libav-0.8_pre20110818.tar.xz 3588912 RMD160 ad289ef01a762fe1141a4a6db647006f98b82e98 SHA1 8d669f211edb11ca9504dc56fff3f2292b5da692 SHA256 00612c08a723cfa9885335e45db6c0083efd17229cbffeb67c5849443617f68d
 EBUILD libav-0.6.2.ebuild 7533 RMD160 1bddb36b6993fffbb60f99720746eb0bef479099 SHA1 f89c1bec58f536e13d040a2ebb352216765e41e3 SHA256 9f4beecf6b25c7d99c34cdc17081002d737bff08f6a62c118db30730d051d594
 EBUILD libav-0.6.9999.ebuild 7482 RMD160 f58198eafac144299b27e26f272329342cffb170 SHA1 f1246c93f36e1e10c133aa243c6d87e8b09af45e SHA256 696b08f45058c0383b3c0e9a74fe8e7d2f96bbfa87914ccc2ac912af4dc793ec
 EBUILD libav-0.7.1.ebuild 7873 RMD160 98a03f45525fe50862ba4943761b3e4c5b7a744e SHA1 42298b43ae5d73fa1d53650802a956ac5b90bc0c SHA256 378b1478d3540911f4e0f229c19b756a415023a23ff4795225778386a01cdcbe
+EBUILD libav-0.7.2.ebuild 8317 RMD160 721aeae886618cc43f802f2cb906c84bf94c87d3 SHA1 84e81f60d80a39dc2c718f62c08a9ee222b54547 SHA256 3ecc5a0891e1093903eba17ebccf99d7ffeb19ec2651b1fff658df920f9718b4
 EBUILD libav-0.7.9999.ebuild 7877 RMD160 709893a83b97100e838189bc02ea2da2126a0902 SHA1 e4636b730d92f9b4e0f60147ee6affb8c41c087d SHA256 2c3fa367dca324e2607aa9201bdf084c1e394564ee7c0e26031a88ded9c1d501
 EBUILD libav-0.7.ebuild 7872 RMD160 ec8b8142e994b6e32a69fcb7dee967bd54f6fa3e SHA1 369a3626a64a0b6867a2521aa34424124d6ad58b SHA256 4b88265a90f40a9eef8bb803710822c53d39a254184bf5c344763c4181a00fa9
 EBUILD libav-0.7_pre20110327.ebuild 7599 RMD160 9a944d8b477ca204c6273c415e0e05d664cb3347 SHA1 7efdc9795b64432c98036856ce0b50c37ba25115 SHA256 142caaad04431a584457b425d232dadecc79e358900e7ca03518c99101c75d67
 EBUILD libav-0.8_pre20110818.ebuild 8292 RMD160 5b9396cc254b3eaa00c61b35962411b7c2449651 SHA1 8e176495c1edb42d5d703c95bc356ecb2c552e26 SHA256 638de98830ee7e6a3a86049013d30bff97f731a6ac749e3d1db66f6a25d7645d
 EBUILD libav-9999.ebuild 8317 RMD160 06edda7c3990ca02c18f176eb721d813e64d2714 SHA1 1c660490920fd3b7327c15df6691c362dd291aca SHA256 2e6ca4cf8ac61681fb179d3906fc2e3da79e9c2d68b8f4214a666aff152e054f
-MISC ChangeLog 4564 RMD160 f005a4165c481eaa77df368151175eb72466a826 SHA1 7c361f344bd37bee3ff0354facf2507ce1f62438 SHA256 6564c4cdb20f55990fac5c47e3cb3fcda1ee4da105a4f6d6a6885c16de2904ba
+MISC ChangeLog 4677 RMD160 7914c7392a3f7888c01e85694b73e5f62e1b40db SHA1 570801fa334bdf72af13c9376d7361f2dc0bcbc2 SHA256 5ffa748d9e7cb557c9620c722cb8ace0d647ca77840e58496d03aa4798380332
 MISC metadata.xml 2343 RMD160 beadccfc0b455869a2810504ee185f622de04961 SHA1 421b87ca6c05fbde61a429dee1c90dcb88e7751a SHA256 daf4da36c94dbd7dd4e44dc643dda9420bafcec1824014ecdcb5c9067d5096b7
diff --git a/media-video/libav/libav-0.7.2.ebuild b/media-video/libav/libav-0.7.2.ebuild
new file mode 100644 (file)
index 0000000..023bd33
--- /dev/null
@@ -0,0 +1,284 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/libav/libav-0.7.2.ebuild,v 1.1 2011/09/30 17:46:26 lu_zero Exp $
+
+EAPI=4
+
+if [[ ${PV} == *9999 ]] ; then
+       SCM="git-2"
+       EGIT_REPO_URI="git://git.libav.org/libav.git"
+       [[ ${PV%9999} != "" ]] && EGIT_BRANCH="release/${PV%.9999}"
+fi
+
+inherit eutils flag-o-matic multilib toolchain-funcs ${SCM}
+
+DESCRIPTION="Complete solution to record, convert and stream audio and video."
+HOMEPAGE="http://libav.org/"
+if [[ ${PV} == *9999 ]] ; then
+       SRC_URI=""
+elif [[ ${PV%_p*} != ${PV} ]] ; then # Gentoo snapshot
+       SRC_URI="http://dev.gentoo.org/~lu_zero/libav/${P}.tar.xz"
+else # Official release
+       SRC_URI="http://${PN}.org/releases/${P}.tar.xz"
+fi
+
+LICENSE="LGPL-2 gpl? ( GPL-3 )"
+SLOT="0"
+[[ ${PV} == *9999 ]] || KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64
+~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos
+~x64-solaris ~x86-solaris"
+IUSE="+3dnow +3dnowext aac alsa altivec amr bindist +bzip2 cpudetection custom-cflags debug dirac doc +encode faac frei0r +gpl gsm +hardcoded-tables ieee1394 jack jpeg2k +mmx +mmxext mp3 network oss pic qt-faststart rtmp schroedinger sdl speex +ssse3 static-libs test theora threads v4l v4l2 vaapi vdpau vorbis vpx X x264 xvid +zlib"
+
+VIDEO_CARDS="nvidia"
+for x in ${VIDEO_CARDS}; do
+       IUSE="${IUSE} video_cards_${x}"
+done
+
+RDEPEND="
+       !media-video/ffmpeg
+       alsa? ( media-libs/alsa-lib )
+       amr? ( media-libs/opencore-amr )
+       bzip2? ( app-arch/bzip2 )
+       dirac? ( media-video/dirac )
+       encode? (
+               aac? ( media-libs/vo-aacenc )
+               amr? ( media-libs/vo-amrwbenc )
+               faac? ( media-libs/faac )
+               mp3? ( >=media-sound/lame-3.98.3 )
+               theora? ( >=media-libs/libtheora-1.1.1[encode] media-libs/libogg )
+               vorbis? ( media-libs/libvorbis media-libs/libogg )
+               x264? ( >=media-libs/x264-0.0.20110426 )
+               xvid? ( >=media-libs/xvid-1.1.0 )
+       )
+       frei0r? ( media-plugins/frei0r-plugins )
+       gsm? ( >=media-sound/gsm-1.0.12-r1 )
+       ieee1394? ( media-libs/libdc1394 sys-libs/libraw1394 )
+       jack? ( media-sound/jack-audio-connection-kit )
+       jpeg2k? ( >=media-libs/openjpeg-1.3-r2 )
+       rtmp? ( >=media-video/rtmpdump-2.2f )
+       sdl? ( >=media-libs/libsdl-1.2.13-r1[audio,video] )
+       schroedinger? ( media-libs/schroedinger )
+       speex? ( >=media-libs/speex-1.2_beta3 )
+       vaapi? ( x11-libs/libva )
+       video_cards_nvidia? ( vdpau? ( x11-libs/libvdpau ) )
+       vpx? ( >=media-libs/libvpx-0.9.6 )
+       X? ( x11-libs/libX11 x11-libs/libXext )
+       zlib? ( sys-libs/zlib )
+"
+
+DEPEND="${RDEPEND}
+       >=sys-devel/make-3.81
+       dirac? ( dev-util/pkgconfig )
+       doc? ( app-text/texi2html )
+       mmx? ( dev-lang/yasm )
+       rtmp? ( dev-util/pkgconfig )
+       schroedinger? ( dev-util/pkgconfig )
+       test? ( net-misc/wget )
+       v4l? ( sys-kernel/linux-headers )
+       v4l2? ( sys-kernel/linux-headers )
+"
+
+# faac can't be binary distributed
+# faac and aac are concurent implementations
+# amr and aac require at least lgpl3
+REQUIRED_USE="bindist? ( !faac )
+       amr? ( gpl ) aac? ( gpl )"
+
+RESTRICT="test"
+
+src_prepare() {
+       # if we have snapshot then we need to hardcode the version
+       if [[ ${PV%_p*} != ${PV} ]]; then
+               sed -i -e "s/UNKNOWN/DATE-${PV#*_pre}/" "${S}/version.sh" || die
+       fi
+}
+
+src_configure() {
+       local myconf="${EXTRA_FFMPEG_CONF}"
+       local uses i
+
+       myconf="
+               $(use_enable gpl)
+               $(use_enable gpl version3)
+               --enable-postproc
+               --enable-avfilter
+       "
+
+       # enabled by default
+       uses="debug doc network zlib"
+       for i in ${uses}; do
+               use ${i} || myconf+=" --disable-${i}"
+       done
+       use bzip2 || myconf+=" --disable-bzlib"
+       use sdl || myconf+=" --disable-avplay"
+
+       use custom-cflags && myconf+=" --disable-optimizations"
+       use cpudetection && myconf+=" --enable-runtime-cpudetect"
+
+       #for i in h264_vdpau mpeg1_vdpau mpeg_vdpau vc1_vdpau wmv3_vdpau; do
+       #       use video_cards_nvidia || myconf="${myconf} --disable-decoder=${i}"
+       #       use vdpau || myconf="${myconf} --disable-decoder=${i}"
+       #done
+       use video_cards_nvidia && use vdpau || myconf+=" --disable-vdpau"
+
+       use vaapi && myconf+=" --enable-vaapi"
+
+       # Encoders
+       if use encode; then
+               use mp3 && myconf+=" --enable-libmp3lame"
+               use amr && myconf+=" --enable-libvo-amrwbenc"
+               use faac && myconf+=" --enable-libfaac --enable-nonfree"
+               use aac && myconf+=" --enable-libvo-aacenc"
+               uses="theora vorbis x264 xvid"
+               for i in ${uses}; do
+                       use ${i} && myconf+=" --enable-lib${i}"
+               done
+       else
+               myconf+=" --disable-encoders"
+       fi
+
+       # libavdevice options
+       use ieee1394 && myconf+=" --enable-libdc1394"
+       # Indevs
+       for i in v4l v4l2 alsa oss jack; do
+               use ${i} || myconf+=" --disable-indev=${i}"
+       done
+       use X && myconf+=" --enable-x11grab"
+       # Outdevs
+       for i in alsa oss ; do
+               use ${i} || myconf+=" --disable-outdev=${i}"
+       done
+       # libavfilter options
+       use frei0r && myconf+=" --enable-frei0r"
+
+       # Threads; we only support pthread for now but ffmpeg supports more
+       use threads && myconf+=" --enable-pthreads"
+
+       # Decoders
+       use amr && myconf+=" --enable-libopencore-amrwb --enable-libopencore-amrnb"
+       uses="gsm dirac rtmp schroedinger speex vpx"
+       for i in ${uses}; do
+               use ${i} && myconf+=" --enable-lib${i}"
+       done
+       use jpeg2k && myconf+=" --enable-libopenjpeg"
+
+       # CPU features
+       uses="mmx ssse3 altivec"
+       for i in ${uses}; do
+               use ${i} || myconf+=" --disable-${i}"
+       done
+       use mmxext || myconf+=" --disable-mmx2"
+       use 3dnow || myconf+=" --disable-amd3dnow"
+       use 3dnowext || myconf+=" --disable-amd3dnowext"
+       # disable mmx accelerated code if PIC is required
+       # as the provided asm decidedly is not PIC for x86.
+       if use pic && use x86 ; then
+               myconf+=" --disable-mmx --disable-mmx2"
+       fi
+
+       # Option to force building pic
+       use pic && myconf+=" --enable-pic"
+
+       # 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
+               [ "${i}" = "native" ] && i="host" # bug #273421
+               [[ ${i} = *-sse3 ]] && i="${i%-sse3}" # bug 283968
+               myconf+=" --cpu=${i}"
+               break
+       done
+
+       # cross compile support
+       if tc-is-cross-compiler ; then
+               myconf+=" --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}-"
+               case ${CHOST} in
+                       *freebsd*)
+                               myconf+=" --target-os=freebsd"
+                               ;;
+                       mingw32*)
+                               myconf+=" --target-os=mingw32"
+                               ;;
+                       *linux*)
+                               myconf+=" --target-os=linux"
+                               ;;
+               esac
+       fi
+
+       # Misc stuff
+       use hardcoded-tables && 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="$EPREFIX"/usr \
+               --libdir="$EPREFIX"/usr/$(get_libdir) \
+               --shlibdir="$EPREFIX"/usr/$(get_libdir) \
+               --mandir="$EPREFIX"/usr/share/man \
+               --enable-shared \
+               --cc="$(tc-getCC)" \
+               $(use_enable static-libs static) \
+               ${myconf} || die
+}
+
+src_compile() {
+       emake version.h
+       emake
+
+       if use qt-faststart; then
+               tc-export CC
+               emake -C tools qt-faststart
+       fi
+}
+
+src_install() {
+       emake DESTDIR="${D}" install install-man
+
+       dodoc Changelog README INSTALL
+       dodoc doc/*
+
+       if use qt-faststart; then
+               dobin tools/qt-faststart
+       fi
+
+       for i in avplay avserver avprobe; do
+               dosym  ${i} /usr/bin/${i/av/ff}
+       done
+}
+
+pkg_postinst() {
+       elog "Please note that the programs formerly known as ffplay, ffserver"
+       elog "and ffprobe are now called avplay, avserver and avprobe."
+       elog
+       elog "ffmpeg had been replaced by the feature incompatible avconv thus"
+       elog "the legacy ffmpeg is provided for compatibility with older scripts"
+}
+
+src_test() {
+       local i tests
+       if use encode; then
+               tests="codectest lavftest seektest"
+               for i in ${tests}; do
+                       LD_LIBRARY_PATH="${S}/libavcore:${S}/libpostproc:${S}/libswscale:${S}/libavcodec:${S}/libavdevice:${S}/libavfilter:${S}/libavformat:${S}/libavutil" \
+                               emake ${i}
+               done
+       else
+               ewarn "Tests fail without USE=encode, skipping"
+       fi
+}