From a5d81693dc5082abb2cffe363f41305ab5741403 Mon Sep 17 00:00:00 2001 From: Alexis Ballier Date: Fri, 26 Dec 2014 17:19:35 +0000 Subject: [PATCH] version bump Package-Manager: portage-2.2.14/cvs/Linux x86_64 Manifest-Sign-Key: 0x160F534A --- media-video/ffmpeg/ChangeLog | 7 +- media-video/ffmpeg/Manifest | 10 +- media-video/ffmpeg/ffmpeg-2.5.2.ebuild | 379 +++++++++++++++++++++++++ 3 files changed, 391 insertions(+), 5 deletions(-) create mode 100644 media-video/ffmpeg/ffmpeg-2.5.2.ebuild diff --git a/media-video/ffmpeg/ChangeLog b/media-video/ffmpeg/ChangeLog index 49ee11f7acbd..9753f987b5e7 100644 --- a/media-video/ffmpeg/ChangeLog +++ b/media-video/ffmpeg/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for media-video/ffmpeg # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ChangeLog,v 1.817 2014/12/19 08:53:13 aballier Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ChangeLog,v 1.818 2014/12/26 17:19:29 aballier Exp $ + +*ffmpeg-2.5.2 (26 Dec 2014) + + 26 Dec 2014; Alexis Ballier +ffmpeg-2.5.2.ebuild: + version bump *ffmpeg-1.2.11 (19 Dec 2014) diff --git a/media-video/ffmpeg/Manifest b/media-video/ffmpeg/Manifest index 85b65d3c271a..a0cbcd0d6d19 100644 --- a/media-video/ffmpeg/Manifest +++ b/media-video/ffmpeg/Manifest @@ -13,6 +13,7 @@ DIST ffmpeg-1.2.11.tar.bz2 5971961 SHA256 6b69b5675dd80c37a6dbe2df51f1820edf915c DIST ffmpeg-1.2.6.tar.bz2 5970714 SHA256 29d454de3458cf327df246cc2a2ef0fa09cb88af7880f733525de12bde70999c SHA512 bc3aa640549e7f17f3a24a7d866a89ab23e9920c2d655a1a03bb4b85b8bdc33500bce3ba6fb570376453c158291a6f4bd2953f258d5a3f989cbdcb30e9a25ee4 WHIRLPOOL 6959a0e72b98dfb56381010f06f98d387a6389037d214f8d600d868d41baddd73417b5df7b00c8b160f6a59778c20c27708d2cc115dde76d6c94dcfbf307b51e DIST ffmpeg-2.2.11.tar.bz2 7033561 SHA256 5938c460977ec3c09cacd9b98f78787948d6086eb30a65b43e09c2b8fb89541b SHA512 160fdf769922c05bf10e708fdf88777a14087cf771a03d2eb7d74b2bffe43b7a6fdbd9d7b6e5dd4676f107ca80b0bb9ab92efa8a131a35212c0d7ecb30e183e3 WHIRLPOOL 65a170a97351e6ee5fcc57da71d00d1645e03b52f2a5a99e5fafbe5089e50fc4495b02d99705205f8c6e197390b9ca8cfbc6d702412b447edbe204076fde43ee DIST ffmpeg-2.5.1.tar.bz2 7672133 SHA256 03cf50b2f9109548e466f144c960b37031ffc1b9fab96382b4b26b7607c7ef52 SHA512 09f77f501d67b3bda325c25dce8bd4a76b2a7acd54d1bee8e2e37a26f8d8fa46b6843bd77ec33b2ab5d50e573da98695e50c9082bd91c2220a9d6de37fa258b5 WHIRLPOOL 24399ed0a44429d585377d458f7833698751311bcbb7bd7f98197a2661e817d4fe9b37d87f602670fbbb108d51e94f43a880ea85519750f18aaf4957749f7dd0 +DIST ffmpeg-2.5.2.tar.bz2 7675420 SHA256 9edf17e7c280cbcfca4bc4219b1c22f760a61ec6a3f39ef26e3e2ad4cd24465e SHA512 ef6ee74d69e314252bca2024fe12468d6634426059ad6c70a7c6a2e61a9bdce32002bb72e0fd659ba8cb65dc77f5117afd74d0b4f6aed6e3adb6efa6b3f12ef1 WHIRLPOOL 41ab7959ae9c5c2bf1738e708689f31c3b99e6f1400f8772ee3f17599137e94e8b44fccb2289eb27e0f9bf01b5a0816772981279ffa8ccea53fdde2ac00a880c EBUILD ffmpeg-0.10.15.ebuild 9938 SHA256 d4c3b812f56c3c610c42709836c2263912b4118c86b1953289ba44493c5b511b SHA512 b04f03badab825c227af90d7986bb6b46b7b8b4ed20ef6de04d8429cf630ba96d36981b951c13443b48c6ff49a4e21f1d8c17108ce7862d2a41ce80386d42dc5 WHIRLPOOL 7188c3419031aa6a74cec9549a2dde10a88bc7c224160fc68121dc8b82e4b8fee14dfd065676274f9ec194251a092545dab2fd7d9c16a22e0dde9f8ecece8d2d EBUILD ffmpeg-1.0.10.ebuild 9661 SHA256 8e268c28be34d501171171af761494f37a26a8fe84293e9b8a05cf8bfd56ac76 SHA512 79781c15c09bff885f6f193e361bf8f929eca66903575fdfdb1188afc5d69c3bb6d0bd232d5eced7f4ac4a9c2f3aaff59a4164024e38bbd7f4c0a2c4a074c008 WHIRLPOOL 84e24bfc65736aa714a5506c9e8b1fa9e6ddc91e0c06e991e4598cdf1b85c1da68317fded1374fbfa6076f7a81c0da0cded87d7e3e9f2a1427d5218a59482fcf EBUILD ffmpeg-1.2.10.ebuild 10930 SHA256 282edf36621931548f7e9354f09ed9976a56a9715cb65120d1b99294d6e777fc SHA512 9b1aedcfc720c26e6677625996b2dfcb70b5a7c01b7b675ddc9ec82b615e3f7934710f194824c871d3b7626368e5320c3a8961c383bc97daa01722d92759a1e1 WHIRLPOOL 8152357f7f953b3036d1c1c3cb376198b7c7bab1ac9c78016c43666f54141c4b51f22d4b3a85e28c5c88f94b32a02c15775f12d67adf43de32a2cf9babd92e9e @@ -20,13 +21,14 @@ EBUILD ffmpeg-1.2.11.ebuild 10930 SHA256 46cab1ce74354b6f3f69823d7bb11823712eb0e EBUILD ffmpeg-1.2.6-r1.ebuild 10971 SHA256 744922812b304456ca62be21ba8241ad45508cb2ece3421a65874f48c8da54e1 SHA512 52473418fb4eb13735ff2a69f1771d5371ade710fe1cd3c4578e1fe3231165ab5774ad23681aa1f083e396282d0690a3fb09ece623feff39786bdcc6177eb952 WHIRLPOOL 73bc7685d5fd0d6e68f4914e246f6de991cd826ea4e952320450aaecd803ec873606e27495ce3892ef78de777f0d7292dfcd4e42873be2a7712df09a1fe11918 EBUILD ffmpeg-2.2.11.ebuild 12608 SHA256 39b0e7a68a4ace5ae2026a799d443f99a2c3cd56fcb4b9d7984e8492d2ebaa7f SHA512 fbf2d350d0c74b23d30a8c6808bdac00302476db3282700b6f0880802f7f1683524604d6694e1590d393d20455ac189d63e758edb1a5fb5a00b7d175bc643832 WHIRLPOOL a844cd8b8470cbd87f1ee7091becceabf87c3be2ac280c47cbd2b3d8a899b53272ca4785008ffb2ef56ddbd2aa98126fe575f33a1e83cd040bfcc6344cb000f4 EBUILD ffmpeg-2.5.1.ebuild 13075 SHA256 7ad48b49190b6a9fd00e557d15afce0ebed51dfd3dee10d803d882c06a6d7b4a SHA512 607afb4109fce18e89db1f2fef522023420063a6cc269d5da43a92d68f27064f71f4e6e0a89ea514a0b86baff23cf958e931596fba24300e20b228ba941fdcf9 WHIRLPOOL afd9acee71f1f3c868651f4cdd2cacd1e7e6ce35b17591f2ef1a03b4491dc7a9b81544f253ccc07c5ab06c5b68baf7d9a8f627f3510021591177f8c785caa790 +EBUILD ffmpeg-2.5.2.ebuild 13075 SHA256 656e40163ddb81482cdf87c12ed5b88660aa976b2087a594e141984f80f3af7f SHA512 5bdb19d79ecaeac4a4019d0cbb8720db5ad7d5153d15a0c52f6a0e230212e9bf70e0f118dce54a4953c3995f2e1acc0df7ec94e1180302919b3ebd283bca7dc9 WHIRLPOOL b7eae486d10f0b7afa87f85c784831e9a36659d76f398326ca1a80292b502367624e001d5f95d07a3e36d108ce74d513ebbd96e30b353ef026e0133bed65348d EBUILD ffmpeg-9999.ebuild 13076 SHA256 bac15fc30d7fc2f4a2a4db916c61466aaa26da128fd88bd99155040928551899 SHA512 f0b9b7b8d6d3bc0990a0a85e0219f98af176b5dd87e1f98981f6a337e821aa0d9657e836b296bdd51b4febfd7d3dc04bb2f7cf32a3c1024eb21fba71e9927048 WHIRLPOOL b51c96f1ebb6fd2b87e9494d5e6023decb3c875024ef836974b83a6cf76fc65a2601b596f5a67ed3aa098836dd862d548db02a48e928fae7c9ed6f66ccef7f99 -MISC ChangeLog 113168 SHA256 177f4ce946849a29efdc0388c039134cfe734cfb4318433ddfd20a60c0735ff4 SHA512 688eb35de644ad1f97a18a8eea00f20209d095ed76da61dd9e0f3c2a5f764f9f3a46d7c63e086feefe40a4e7d24648693692957c1504b31a1e3fd6740023b623 WHIRLPOOL 94aaef233af9a35cb6d237fc8cfde5eea0890cdfaa7d3544ce28ecfa43a3e95718b5766bbdacad4631aa3e06ca16955dfe3f67a2ed07d0c2da14faaccbe2f724 +MISC ChangeLog 113287 SHA256 86759c029ce115decbd01b17a50e6d8c408437ca79a13542da16e2e7889051c1 SHA512 b51a3d38c65ecaaed835c79b4a0daeb5807b6a14edb5ba4dbb45074e0703c85445b58a8ba82e4242bfe07904b936b25a62fa8b3f2be4312c86df42f7cedacacc WHIRLPOOL 450f7e6093d94fdf08510bffe2e460c571537e37562702dfa0e78e19d2ba7dcdce07e83dfc756def91912d05a333d048e2ccbb14a5d7b9de66a6c75b9fc7a0f7 MISC metadata.xml 5559 SHA256 e0d9e8286e57b1e542a46209900c5e87964f985c136711834b01383bfc2ffb61 SHA512 3e5ce6e7b9b98fced139ca28162d0cd16fccda7b08aea5823290bcf1decd1b7c2e4827f071dc8b80d52a6451a16739c5c15bd84539ce274037dd0cfb86cffa13 WHIRLPOOL bc62cb31dc1f689eac4a0e86e6c247aa55dbf1cb849128284417916b000fbcba4b28262bb0791368009e34199887ee1ca759cc614d4c1781af1dd024d6dd390c -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 -iEYEAREIAAYFAlST53sACgkQvFcC4BYPU0pNxACdFPFA5ui7ukQY7EoQBW+Due+r -N80AoKtTT3fDxUj3aEASAi27xvw1lRZ+ -=SES1 +iEYEAREIAAYFAlSdmKMACgkQvFcC4BYPU0qz0QCgrMb8IfrouvGUiQj4AC+XAs1+ +ez0AnA9kVwNWNCLEQYcAXhQCkUE0tcA3 +=pydW -----END PGP SIGNATURE----- diff --git a/media-video/ffmpeg/ffmpeg-2.5.2.ebuild b/media-video/ffmpeg/ffmpeg-2.5.2.ebuild new file mode 100644 index 000000000000..4234f3366650 --- /dev/null +++ b/media-video/ffmpeg/ffmpeg-2.5.2.ebuild @@ -0,0 +1,379 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-video/ffmpeg/ffmpeg-2.5.2.ebuild,v 1.1 2014/12/26 17:19:29 aballier Exp $ + +EAPI="5" + +# Subslot: libavutil major.libavcodec major.libavformat major +# Since FFmpeg ships several libraries, subslot is kind of limited here. +# Most consumers will use those three libraries, if a "less used" library +# changes its soname, consumers will have to be rebuilt the old way +# (preserve-libs). +# If, for example, a package does not link to libavformat and only libavformat +# changes its ABI then this package will be rebuilt needlessly. Hence, such a +# package is free _not_ to := depend on FFmpeg but I would strongly encourage +# doing so since such a case is unlikely. +FFMPEG_SUBSLOT=54.56.56 + +SCM="" +if [ "${PV#9999}" != "${PV}" ] ; then + SCM="git-2" + EGIT_REPO_URI="git://source.ffmpeg.org/ffmpeg.git" +fi + +inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs ${SCM} + +DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec" +HOMEPAGE="http://ffmpeg.org/" +if [ "${PV#9999}" != "${PV}" ] ; then + SRC_URI="" +elif [ "${PV%_p*}" != "${PV}" ] ; then # Snapshot + SRC_URI="mirror://gentoo/${P}.tar.bz2" +else # Release + SRC_URI="http://ffmpeg.org/releases/${P/_/-}.tar.bz2" +fi +FFMPEG_REVISION="${PV#*_p}" + +LICENSE="GPL-2 amr? ( GPL-3 ) encode? ( aac? ( GPL-3 ) ) samba? ( GPL-3 )" +SLOT="0/${FFMPEG_SUBSLOT}" +if [ "${PV#9999}" = "${PV}" ] ; then + KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux" +fi +IUSE=" + aac aacplus alsa amr amrenc bindist bluray bs2b +bzip2 cdio celt + cpudetection debug doc +encode examples faac fdk flite fontconfig frei0r + fribidi gme gnutls gsm +hardcoded-tables +iconv iec61883 ieee1394 jack + jpeg2k ladspa libass libcaca libsoxr libv4l lzma modplug mp3 +network + openal opengl openssl opus oss pic pulseaudio quvi rtmp samba schroedinger + sdl speex ssh static-libs test theora threads truetype twolame v4l vaapi + vdpau vorbis vpx wavpack webp X x264 x265 xcb xvid +zlib zvbi + " + +ARM_CPU_FEATURES="armv5te armv6 armv6t2 neon armvfp:vfp" +MIPS_CPU_FEATURES="mips32r2 mipsdspr1 mipsdspr2 mipsfpu" +PPC_CPU_FEATURES="altivec" +X86_CPU_FEATURES="3dnow:amd3dnow 3dnowext:amd3dnowext avx avx2 fma3 fma4 mmx mmxext sse sse2 sse3 ssse3 sse4 sse4_2:sse42 xop" + +# String for CPU features in the useflag[:configure_option] form +# if :configure_option isn't set, it will use 'useflag' as configure option +CPU_FEATURES=" + ${ARM_CPU_FEATURES} + ${MIPS_CPU_FEATURES} + ${PPC_CPU_FEATURES} + ${X86_CPU_FEATURES} +" + +for i in ${CPU_FEATURES}; do + IUSE="${IUSE} ${i%:*}" +done + +FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart trasher" + +for i in ${FFTOOLS}; do + IUSE="${IUSE} +fftools_$i" +done + +RDEPEND=" + alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] ) + amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] ) + bluray? ( >=media-libs/libbluray-0.3.0-r1[${MULTILIB_USEDEP}] ) + bs2b? ( >=media-libs/libbs2b-3.1.0-r1[${MULTILIB_USEDEP}] ) + bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] ) + cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] ) + celt? ( >=media-libs/celt-0.11.1-r1[${MULTILIB_USEDEP}] ) + encode? ( + aac? ( >=media-libs/vo-aacenc-0.1.3[${MULTILIB_USEDEP}] ) + aacplus? ( >=media-libs/libaacplus-2.0.2-r1[${MULTILIB_USEDEP}] ) + amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] ) + faac? ( >=media-libs/faac-1.28-r3[${MULTILIB_USEDEP}] ) + mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] ) + theora? ( + >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}] + >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] + ) + twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] ) + wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] ) + webp? ( >=media-libs/libwebp-0.3.0[${MULTILIB_USEDEP}] ) + x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] ) + x265? ( >=media-libs/x265-1.2:=[${MULTILIB_USEDEP}] ) + xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] ) + ) + fdk? ( >=media-libs/fdk-aac-0.1.3[${MULTILIB_USEDEP}] ) + flite? ( >=app-accessibility/flite-1.4-r4[${MULTILIB_USEDEP}] ) + fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] ) + frei0r? ( media-plugins/frei0r-plugins ) + fribidi? ( >=dev-libs/fribidi-0.19.6[${MULTILIB_USEDEP}] ) + gme? ( >=media-libs/game-music-emu-0.6.0[${MULTILIB_USEDEP}] ) + gnutls? ( >=net-libs/gnutls-2.12.23-r6[${MULTILIB_USEDEP}] ) + gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] ) + iconv? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] ) + iec61883? ( + >=media-libs/libiec61883-1.2.0-r1[${MULTILIB_USEDEP}] + >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}] + >=sys-libs/libavc1394-0.5.4-r1[${MULTILIB_USEDEP}] + ) + ieee1394? ( + >=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}] + >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}] + ) + jack? ( >=media-sound/jack-audio-connection-kit-0.121.3-r1[${MULTILIB_USEDEP}] ) + jpeg2k? ( >=media-libs/openjpeg-1.5.0:0[${MULTILIB_USEDEP}] ) + libass? ( >=media-libs/libass-0.10.2[${MULTILIB_USEDEP}] ) + libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] ) + libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] ) + libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] ) + modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] ) + openal? ( >=media-libs/openal-1.15.1[${MULTILIB_USEDEP}] ) + opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] ) + openssl? ( >=dev-libs/openssl-1.0.1h-r2[${MULTILIB_USEDEP}] ) + opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] ) + pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] ) + quvi? ( media-libs/libquvi:0.4[${MULTILIB_USEDEP}] ) + rtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] ) + samba? ( >=net-fs/samba-3.6.23-r1[${MULTILIB_USEDEP}] ) + schroedinger? ( >=media-libs/schroedinger-1.0.11-r1[${MULTILIB_USEDEP}] ) + sdl? ( >=media-libs/libsdl-1.2.15-r4[sound,video,${MULTILIB_USEDEP}] ) + speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] ) + ssh? ( >=net-libs/libssh-0.5.5[${MULTILIB_USEDEP}] ) + truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] ) + vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] ) + vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] ) + vorbis? ( + >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}] + >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}] + ) + vpx? ( >=media-libs/libvpx-1.2.0_pre20130625[${MULTILIB_USEDEP}] ) + X? ( + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] + >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}] + >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}] + ) + xcb? ( x11-libs/libxcb[${MULTILIB_USEDEP}] ) + zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] ) + zvbi? ( >=media-libs/zvbi-0.2.35[${MULTILIB_USEDEP}] ) + !media-video/qt-faststart + !media-libs/libpostproc +" + +DEPEND="${RDEPEND} + >=sys-devel/make-3.81 + doc? ( app-text/texi2html ) + fontconfig? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) + gnutls? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) + ieee1394? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) + ladspa? ( >=media-libs/ladspa-sdk-1.13-r2[${MULTILIB_USEDEP}] ) + libv4l? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) + mmx? ( >=dev-lang/yasm-1.2 ) + rtmp? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) + schroedinger? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) + test? ( net-misc/wget sys-devel/bc ) + truetype? ( >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}] ) + v4l? ( sys-kernel/linux-headers ) +" + +RDEPEND="${RDEPEND} + abi_x86_32? ( !<=app-emulation/emul-linux-x86-medialibs-20140508-r3 + !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )" + +# faac is license-incompatible with ffmpeg +REQUIRED_USE="bindist? ( encode? ( !faac !aacplus ) !openssl ) + libv4l? ( v4l ) + fftools_cws2fws? ( zlib ) + test? ( encode )" + +S=${WORKDIR}/${P/_/-} + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/libavutil/avconfig.h +) + +src_prepare() { + if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot + export revision=git-N-${FFMPEG_REVISION} + fi + epatch_user +} + +multilib_src_configure() { + local myconf=( ${EXTRA_FFMPEG_CONF} ) + + # options to use as use_enable in the foo[:bar] form. + # This will feed configure with $(use_enable foo bar) + # or $(use_enable foo foo) if no :bar is set. + local ffuse=( + bzip2:bzlib cpudetection:runtime-cpudetect debug doc + gnutls hardcoded-tables iconv lzma network openssl samba:libsmbclient + sdl:ffplay vaapi vdpau X:xlib xcb:libxcb xcb:libxcb-shm xcb:libxcb-xfixes zlib + ) + use openssl && myconf+=( --enable-nonfree ) + use samba && myconf+=( --enable-version3 ) + + # Encoders + if use encode + then + ffuse+=( aac:libvo-aacenc amrenc:libvo-amrwbenc mp3:libmp3lame ) + for i in aacplus faac theora twolame wavpack webp x264 x265 xvid; do + ffuse+=( ${i}:lib${i} ) + done + + # Licensing. + if use aac || use amrenc ; then + myconf+=( --enable-version3 ) + fi + if use aacplus || use faac ; then + myconf+=( --enable-nonfree ) + fi + else + myconf+=( --disable-encoders ) + fi + + # libavdevice options + ffuse+=( cdio:libcdio iec61883:libiec61883 ieee1394:libdc1394 libcaca openal opengl ) + + # Indevs + use v4l || myconf+=( --disable-indev=v4l2 --disable-outdev=v4l2 ) + for i in alsa oss jack ; do + use ${i} || myconf+=( --disable-indev=${i} ) + done + ffuse+=( libv4l:libv4l2 pulseaudio:libpulse X:x11grab ) + + # Outdevs + for i in alsa oss sdl ; do + use ${i} || myconf+=( --disable-outdev=${i} ) + done + + # libavfilter options + ffuse+=( bs2b:libbs2b flite:libflite frei0r fribidi:libfribidi fontconfig ladspa libass truetype:libfreetype ) + + # libswresample options + ffuse+=( libsoxr ) + + # Threads; we only support pthread for now but ffmpeg supports more + ffuse+=( threads:pthreads ) + + # Decoders + ffuse+=( amr:libopencore-amrwb amr:libopencore-amrnb fdk:libfdk-aac jpeg2k:libopenjpeg ) + use amr && myconf+=( --enable-version3 ) + for i in bluray celt gme gsm modplug opus quvi rtmp ssh schroedinger speex vorbis vpx zvbi; do + ffuse+=( ${i}:lib${i} ) + done + use fdk && myconf+=( --enable-nonfree ) + + for i in "${ffuse[@]}" ; do + myconf+=( $(use_enable ${i%:*} ${i#*:}) ) + done + + # (temporarily) disable non-multilib deps + if ! multilib_is_native_abi; then + for i in frei0r ; do + myconf+=( --disable-${i} ) + done + fi + + # CPU features + for i in ${CPU_FEATURES}; do + use ${i%:*} || myconf+=( --disable-${i#*:} ) + done + if use pic ; then + myconf+=( --enable-pic ) + # disable asm code if PIC is required + # as the provided asm decidedly is not PIC for x86. + [[ ${ABI} == x86 ]] && myconf+=( --disable-asm ) + fi + [[ ${ABI} == x32 ]] && myconf+=( --disable-asm ) #427004 + + # 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 mcpu) $(get-flag mtune) $(get-flag march) ; do + [[ ${i} = native ]] && i="host" # bug #273421 + myconf+=( --cpu=${i} ) + break + done + + # Mandatory configuration + myconf=( + --enable-gpl + --enable-postproc + --enable-avfilter + --enable-avresample + --disable-stripping + "${myconf[@]}" + ) + + # 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 + + set -- "${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)" \ + --cxx="$(tc-getCXX)" \ + --ar="$(tc-getAR)" \ + --optflags="${CFLAGS}" \ + --extra-cflags="${CFLAGS}" \ + --extra-cxxflags="${CXXFLAGS}" \ + $(use_enable static-libs static) \ + "${myconf[@]}" + echo "${@}" + "${@}" || die +} + +multilib_src_compile() { + emake V=1 + + if multilib_is_native_abi; then + for i in ${FFTOOLS} ; do + if use fftools_${i} ; then + emake V=1 tools/${i} + fi + done + fi +} + +multilib_src_install() { + emake V=1 DESTDIR="${D}" install install-man + + if multilib_is_native_abi; then + for i in ${FFTOOLS} ; do + if use fftools_${i} ; then + dobin tools/${i} + fi + done + fi +} + +multilib_src_install_all() { + dodoc Changelog README.md CREDITS doc/*.txt doc/APIchanges + [ -f "RELEASE_NOTES" ] && dodoc "RELEASE_NOTES" + use doc && dohtml -r doc/* + if use examples ; then + dodoc -r doc/examples + docompress -x /usr/share/doc/${PF}/examples + fi +} + +multilib_src_test() { + LD_LIBRARY_PATH="${BUILD_DIR}/libpostproc:${BUILD_DIR}/libswscale:${BUILD_DIR}/libswresample:${BUILD_DIR}/libavcodec:${BUILD_DIR}/libavdevice:${BUILD_DIR}/libavfilter:${BUILD_DIR}/libavformat:${BUILD_DIR}/libavutil:${BUILD_DIR}/libavresample" \ + emake V=1 fate +} -- 2.26.2