Gentoo Archives: gentoo-commits

From: Alexis Ballier <aballier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/ffmpeg/
Date: Tue, 17 Jul 2018 07:33:36
Message-Id: 1531812804.5414693cacda73d7aae188b4cc5ca024be72f40b.aballier@gentoo
1 commit: 5414693cacda73d7aae188b4cc5ca024be72f40b
2 Author: Alexis Ballier <aballier <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jul 17 07:25:24 2018 +0000
4 Commit: Alexis Ballier <aballier <AT> gentoo <DOT> org>
5 CommitDate: Tue Jul 17 07:33:24 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5414693c
7
8 media-video/ffmpeg: Remove old
9
10 Package-Manager: Portage-2.3.43, Repoman-2.3.10
11
12 media-video/ffmpeg/Manifest | 3 -
13 media-video/ffmpeg/ffmpeg-3.3.5.ebuild | 506 -----------------------------
14 media-video/ffmpeg/ffmpeg-3.4.2-r1.ebuild | 488 ----------------------------
15 media-video/ffmpeg/ffmpeg-3.4.2.ebuild | 487 ----------------------------
16 media-video/ffmpeg/ffmpeg-4.0.ebuild | 510 ------------------------------
17 5 files changed, 1994 deletions(-)
18
19 diff --git a/media-video/ffmpeg/Manifest b/media-video/ffmpeg/Manifest
20 index 42497282b77..1550e333d5b 100644
21 --- a/media-video/ffmpeg/Manifest
22 +++ b/media-video/ffmpeg/Manifest
23 @@ -1,9 +1,6 @@
24 DIST ffmpeg-3.2.6.tar.bz2 9623111 BLAKE2B 76ed10d969ec5e85c0ad23fee1118ccfd66689b07062dc51526fca5427507124751d957b57b1a002ba585b9d35afc80cc6f3113c559b160b2751fc526b3d304f SHA512 eca75524374003eac78033bd2a744b459a4dc631c59150b6c9291e06a693bdd14e0b11cae9c800446f0648edccc066480c2b869bcb456a74eeabb91ab41f8285
25 DIST ffmpeg-3.2.7.tar.bz2 9622391 BLAKE2B 7d6f094ca0bd5e2cab02e051acc8e554873bca2d165fc9326de0b12e145ec939567aed95c01589c47291970a89fb3462c75d32db1c4c2c8cf6d4a14956cd8a79 SHA512 a5b6df77d2d4ede0cc2f398b763d7405f43f43e37c11a596ec1a2a8921714875fd8fa9ffbcff84355854780872ab7313c859a4a19bf419298b4d3bc797ad8ac4
26 DIST ffmpeg-3.3.4.tar.bz2 9944256 BLAKE2B 72d42a16396882b30641fb057bb597f8e98ecfa482a087ece48189acba8a80a72e931e70ad961db8c01c93a556f619ebdecb39bae9d4559cc504d0f7eabf15a7 SHA512 d2257a71f9ae7856390b807d70bf643d4360fe4f2ad7c76af3ac5332cda353a1a543cdcdea0c510dbb6141f7a3a36ffbf26ae87b0ffc9ce4b3b7641814a40e3a
27 -DIST ffmpeg-3.3.5.tar.bz2 9945243 BLAKE2B 0fb9aad3d35f6173085e5a790e84c3a45c2051b656e9fb12b13af372778861121d6595e1f929144c32c77861d101fdb2a67c4411907147bd5534ce09d0fae3b9 SHA512 b97eb61f1c8f8ee95d79c6c28b37a0a99ad7752605714bfe8827366d319aed8bcaf2403cefb856604e8d61bca54573838c2ea0d38fa89ab453ccdd46b104725a
28 DIST ffmpeg-3.3.6.tar.bz2 9943322 BLAKE2B 2526fdf9580045131426e554a9bf44fdc6567c12213ea4d5b78aa27f14513f14e07f38b8380183686fa1a62440fe4108eaecddca96f4dec3c74c410b1f90ee03 SHA512 1305760fa981bcb43c8fcb5dd1bf7dd8d3f405a124975f062062b741d49e12386e4d3eec3de6a032fc93cd7f6086d939275a669a9997ffa400f70c20f7eb3d23
29 -DIST ffmpeg-3.4.2.tar.bz2 10179184 BLAKE2B a9116fd42b62683d904159b4317df7216df556268d5ac05f48c2204b7269d353746ecd709ad194cab542627047b991528bcfe7c302439753f96ddc5617ab236b SHA512 7d14865316d514b8fee19431b45c5f456422447bd7c68a746e06c6f7450a49aff1ec1d9f88b642c9072e846163d1f7bbe41d1cf73a1ad580f5162f58c8b30fb4
30 DIST ffmpeg-3.4.3.tar.bz2 10183483 BLAKE2B 144811663ab32db05577e262e2fcf9087528544b2f27fb6c551317d4916d399ee2d6e70f6f5ce6351ba78f6f51609b2455eef6170b3e339699c9f2486a459194 SHA512 924838d334d905de23c950634ad905bc55ae4435e135afdea93639a598ad522c020165f4528c66560448c136c28770c3fd3311328c2307bb232bc1d0914af964
31 DIST ffmpeg-4.0.1.tar.bz2 10425808 BLAKE2B 22afbd0f0a4e4708078e0ce606c4bd461df53aa9855ff029fa18423b2dc48966c12b6f4b2646eb11a949249cdabd42c201ef2833d1ef5e08d789ce663f3235d2 SHA512 4e94cd9c8ebfc18f83d211a09e0015825a07451604a7eb6a328123db5a28bcb205e6729d83859af0740be7312e9a025009013f418d5993bda848fb043f0abaa1
32 -DIST ffmpeg-4.0.tar.bz2 10423830 BLAKE2B be020731e2ab3567c326b41fdbca7ff9bd35bfff5c4c8c466b73e2dfb1c6ffb59bfbd82c366e40893732fcf0664ab4862db4cff3950a8350aa6c55d25d296417 SHA512 73224e0f29ce39280a7d67fe9f7ad4a2a7cdb079f1b65916cbac5c0754b995d27d85fee3eb9621b6cba4fbd7a07dcf7b94414a8e5bb9b74738d24af18311d0f2
33
34 diff --git a/media-video/ffmpeg/ffmpeg-3.3.5.ebuild b/media-video/ffmpeg/ffmpeg-3.3.5.ebuild
35 deleted file mode 100644
36 index ed98cbe5041..00000000000
37 --- a/media-video/ffmpeg/ffmpeg-3.3.5.ebuild
38 +++ /dev/null
39 @@ -1,506 +0,0 @@
40 -# Copyright 1999-2017 Gentoo Foundation
41 -# Distributed under the terms of the GNU General Public License v2
42 -
43 -EAPI=6
44 -
45 -# Subslot: libavutil major.libavcodec major.libavformat major
46 -# Since FFmpeg ships several libraries, subslot is kind of limited here.
47 -# Most consumers will use those three libraries, if a "less used" library
48 -# changes its soname, consumers will have to be rebuilt the old way
49 -# (preserve-libs).
50 -# If, for example, a package does not link to libavformat and only libavformat
51 -# changes its ABI then this package will be rebuilt needlessly. Hence, such a
52 -# package is free _not_ to := depend on FFmpeg but I would strongly encourage
53 -# doing so since such a case is unlikely.
54 -FFMPEG_SUBSLOT=55.57.57
55 -
56 -SCM=""
57 -if [ "${PV#9999}" != "${PV}" ] ; then
58 - SCM="git-r3"
59 - EGIT_REPO_URI="git://source.ffmpeg.org/ffmpeg.git"
60 -fi
61 -
62 -inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs ${SCM}
63 -
64 -DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec"
65 -HOMEPAGE="http://ffmpeg.org/"
66 -if [ "${PV#9999}" != "${PV}" ] ; then
67 - SRC_URI=""
68 -elif [ "${PV%_p*}" != "${PV}" ] ; then # Snapshot
69 - SRC_URI="mirror://gentoo/${P}.tar.bz2"
70 -else # Release
71 - SRC_URI="http://ffmpeg.org/releases/${P/_/-}.tar.bz2"
72 -fi
73 -FFMPEG_REVISION="${PV#*_p}"
74 -
75 -SLOT="0/${FFMPEG_SUBSLOT}"
76 -LICENSE="
77 - !gpl? ( LGPL-2.1 )
78 - gpl? ( GPL-2 )
79 - amr? (
80 - gpl? ( GPL-3 )
81 - !gpl? ( LGPL-3 )
82 - )
83 - gmp? (
84 - gpl? ( GPL-3 )
85 - !gpl? ( LGPL-3 )
86 - )
87 - encode? (
88 - amrenc? (
89 - gpl? ( GPL-3 )
90 - !gpl? ( LGPL-3 )
91 - )
92 - )
93 - samba? ( GPL-3 )
94 -"
95 -if [ "${PV#9999}" = "${PV}" ] ; then
96 - KEYWORDS="amd64 arm ~arm64 ~hppa ia64 ~mips ~ppc ppc64 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
97 -fi
98 -
99 -# Options to use as use_enable in the foo[:bar] form.
100 -# This will feed configure with $(use_enable foo bar)
101 -# or $(use_enable foo foo) if no :bar is set.
102 -# foo is added to IUSE.
103 -FFMPEG_FLAG_MAP=(
104 - +bzip2:bzlib cpudetection:runtime-cpudetect debug gcrypt gnutls gmp
105 - +gpl +hardcoded-tables +iconv lzma +network openssl +postproc
106 - samba:libsmbclient sdl:ffplay sdl:sdl2 vaapi vdpau X:xlib xcb:libxcb
107 - xcb:libxcb-shm xcb:libxcb-xfixes +zlib
108 - # libavdevice options
109 - cdio:libcdio iec61883:libiec61883 ieee1394:libdc1394 libcaca openal
110 - opengl
111 - # indevs
112 - libv4l:libv4l2 pulseaudio:libpulse
113 - # decoders
114 - amr:libopencore-amrwb amr:libopencore-amrnb fdk:libfdk-aac
115 - jpeg2k:libopenjpeg bluray:libbluray celt:libcelt gme:libgme gsm:libgsm
116 - mmal modplug:libmodplug opus:libopus libilbc librtmp ssh:libssh
117 - schroedinger:libschroedinger speex:libspeex vorbis:libvorbis vpx:libvpx
118 - zvbi:libzvbi
119 - # libavfilter options
120 - bs2b:libbs2b chromaprint flite:libflite frei0r
121 - fribidi:libfribidi fontconfig ladspa libass truetype:libfreetype
122 - rubberband:librubberband sofalizer:netcdf zeromq:libzmq zimg:libzimg
123 - # libswresample options
124 - libsoxr
125 - # Threads; we only support pthread for now but ffmpeg supports more
126 - +threads:pthreads
127 -)
128 -
129 -# Same as above but for encoders, i.e. they do something only with USE=encode.
130 -FFMPEG_ENCODER_FLAG_MAP=(
131 - amrenc:libvo-amrwbenc mp3:libmp3lame
132 - kvazaar:libkvazaar nvenc:nvenc
133 - openh264:libopenh264 snappy:libsnappy theora:libtheora twolame:libtwolame
134 - wavpack:libwavpack webp:libwebp x264:libx264 x265:libx265 xvid:libxvid
135 -)
136 -
137 -IUSE="
138 - alsa chromium doc +encode jack oss pic static-libs test v4l
139 - ${FFMPEG_FLAG_MAP[@]%:*}
140 - ${FFMPEG_ENCODER_FLAG_MAP[@]%:*}
141 -"
142 -
143 -# Strings for CPU features in the useflag[:configure_option] form
144 -# if :configure_option isn't set, it will use 'useflag' as configure option
145 -ARM_CPU_FEATURES=(
146 - cpu_flags_arm_thumb:armv5te
147 - cpu_flags_arm_v6:armv6
148 - cpu_flags_arm_thumb2:armv6t2
149 - cpu_flags_arm_neon:neon
150 - cpu_flags_arm_vfp:vfp
151 - cpu_flags_arm_vfpv3:vfpv3
152 - cpu_flags_arm_v8:armv8
153 -)
154 -ARM_CPU_REQUIRED_USE="
155 - arm64? ( cpu_flags_arm_v8 )
156 - cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 cpu_flags_arm_neon )
157 - cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 cpu_flags_arm_vfp )
158 - cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp )
159 - cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 )
160 - cpu_flags_arm_v6? ( cpu_flags_arm_thumb )
161 -"
162 -MIPS_CPU_FEATURES=( mipsdspr1:mipsdsp mipsdspr2 mipsfpu )
163 -PPC_CPU_FEATURES=( altivec )
164 -X86_CPU_FEATURES_RAW=( 3dnow:amd3dnow 3dnowext:amd3dnowext aes:aesni avx:avx avx2:avx2 fma3:fma3 fma4:fma4 mmx:mmx mmxext:mmxext sse:sse sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4 sse4_2:sse42 xop:xop )
165 -X86_CPU_FEATURES=( ${X86_CPU_FEATURES_RAW[@]/#/cpu_flags_x86_} )
166 -X86_CPU_REQUIRED_USE="
167 - cpu_flags_x86_avx2? ( cpu_flags_x86_avx )
168 - cpu_flags_x86_fma4? ( cpu_flags_x86_avx )
169 - cpu_flags_x86_fma3? ( cpu_flags_x86_avx )
170 - cpu_flags_x86_xop? ( cpu_flags_x86_avx )
171 - cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 )
172 - cpu_flags_x86_aes? ( cpu_flags_x86_sse4_2 )
173 - cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 )
174 - cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 )
175 - cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 )
176 - cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 )
177 - cpu_flags_x86_sse2? ( cpu_flags_x86_sse )
178 - cpu_flags_x86_sse? ( cpu_flags_x86_mmxext )
179 - cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx )
180 - cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow )
181 - cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx )
182 -"
183 -
184 -IUSE="${IUSE}
185 - ${ARM_CPU_FEATURES[@]%:*}
186 - ${MIPS_CPU_FEATURES[@]%:*}
187 - ${PPC_CPU_FEATURES[@]%:*}
188 - ${X86_CPU_FEATURES[@]%:*}
189 -"
190 -
191 -CPU_REQUIRED_USE="
192 - ${ARM_CPU_REQUIRED_USE}
193 - ${X86_CPU_REQUIRED_USE}
194 -"
195 -
196 -# "$(tc-arch):XXX" form where XXX_CPU_FEATURES are the cpu features that apply to
197 -# $(tc-arch).
198 -CPU_FEATURES_MAP="
199 - arm:ARM
200 - arm64:ARM
201 - mips:MIPS
202 - ppc:PPC
203 - ppc64:PPC
204 - x86:X86
205 - amd64:X86
206 -"
207 -
208 -FFTOOLS=( aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher )
209 -IUSE="${IUSE} ${FFTOOLS[@]/#/+fftools_}"
210 -
211 -RDEPEND="
212 - alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
213 - amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] )
214 - bluray? ( >=media-libs/libbluray-0.3.0-r1:=[${MULTILIB_USEDEP}] )
215 - bs2b? ( >=media-libs/libbs2b-3.1.0-r1[${MULTILIB_USEDEP}] )
216 - bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
217 - cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] )
218 - celt? ( >=media-libs/celt-0.11.1-r1[${MULTILIB_USEDEP}] )
219 - chromaprint? ( >=media-libs/chromaprint-1.2-r1[${MULTILIB_USEDEP}] )
220 - encode? (
221 - amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] )
222 - kvazaar? ( media-libs/kvazaar[${MULTILIB_USEDEP}] )
223 - mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] )
224 - nvenc? ( media-video/nvidia_video_sdk )
225 - openh264? ( >=media-libs/openh264-1.4.0-r1[${MULTILIB_USEDEP}] )
226 - snappy? ( >=app-arch/snappy-1.1.2-r1:=[${MULTILIB_USEDEP}] )
227 - theora? (
228 - >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}]
229 - >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
230 - )
231 - twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] )
232 - wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] )
233 - webp? ( >=media-libs/libwebp-0.3.0:=[${MULTILIB_USEDEP}] )
234 - x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] )
235 - x265? ( >=media-libs/x265-1.6:=[${MULTILIB_USEDEP}] )
236 - xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] )
237 - )
238 - fdk? ( >=media-libs/fdk-aac-0.1.3:=[${MULTILIB_USEDEP}] )
239 - flite? ( >=app-accessibility/flite-1.4-r4[${MULTILIB_USEDEP}] )
240 - fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] )
241 - frei0r? ( media-plugins/frei0r-plugins )
242 - fribidi? ( >=dev-libs/fribidi-0.19.6[${MULTILIB_USEDEP}] )
243 - gcrypt? ( >=dev-libs/libgcrypt-1.6:0=[${MULTILIB_USEDEP}] )
244 - gme? ( >=media-libs/game-music-emu-0.6.0[${MULTILIB_USEDEP}] )
245 - gmp? ( >=dev-libs/gmp-6:0=[${MULTILIB_USEDEP}] )
246 - gnutls? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] )
247 - gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] )
248 - iconv? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] )
249 - iec61883? (
250 - >=media-libs/libiec61883-1.2.0-r1[${MULTILIB_USEDEP}]
251 - >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
252 - >=sys-libs/libavc1394-0.5.4-r1[${MULTILIB_USEDEP}]
253 - )
254 - ieee1394? (
255 - >=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}]
256 - >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
257 - )
258 - jack? ( virtual/jack[${MULTILIB_USEDEP}] )
259 - jpeg2k? ( >=media-libs/openjpeg-2:2[${MULTILIB_USEDEP}] )
260 - libass? ( >=media-libs/libass-0.10.2:=[${MULTILIB_USEDEP}] )
261 - libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] )
262 - libilbc? ( >=media-libs/libilbc-2[${MULTILIB_USEDEP}] )
263 - libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] )
264 - libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] )
265 - lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] )
266 - mmal? ( media-libs/raspberrypi-userland )
267 - modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] )
268 - openal? ( >=media-libs/openal-1.15.1[${MULTILIB_USEDEP}] )
269 - opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] )
270 - openssl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] )
271 - opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] )
272 - pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] )
273 - librtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] )
274 - rubberband? ( >=media-libs/rubberband-1.8.1-r1[${MULTILIB_USEDEP}] )
275 - samba? ( >=net-fs/samba-3.6.23-r1[${MULTILIB_USEDEP}] )
276 - schroedinger? ( >=media-libs/schroedinger-1.0.11-r1[${MULTILIB_USEDEP}] )
277 - sdl? ( media-libs/libsdl2[sound,video,${MULTILIB_USEDEP}] )
278 - sofalizer? (
279 - >=sci-libs/netcdf-4.3.2-r1[hdf5]
280 - >=sci-libs/hdf5-1.8.18[hl]
281 - )
282 - speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] )
283 - ssh? ( >=net-libs/libssh-0.5.5[${MULTILIB_USEDEP}] )
284 - truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] )
285 - vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] )
286 - vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] )
287 - vorbis? (
288 - >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}]
289 - >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
290 - )
291 - vpx? ( >=media-libs/libvpx-1.4.0:=[${MULTILIB_USEDEP}] )
292 - X? (
293 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
294 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
295 - >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
296 - )
297 - xcb? ( >=x11-libs/libxcb-1.4[${MULTILIB_USEDEP}] )
298 - zeromq? ( >=net-libs/zeromq-4.1.6 )
299 - zimg? ( >=media-libs/zimg-2.4:=[${MULTILIB_USEDEP}] )
300 - zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
301 - zvbi? ( >=media-libs/zvbi-0.2.35[${MULTILIB_USEDEP}] )
302 - !media-video/qt-faststart
303 - postproc? ( !media-libs/libpostproc )
304 -"
305 -
306 -DEPEND="${RDEPEND}
307 - >=sys-devel/make-3.81
308 - doc? ( sys-apps/texinfo )
309 - >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
310 - ladspa? ( >=media-libs/ladspa-sdk-1.13-r2[${MULTILIB_USEDEP}] )
311 - cpu_flags_x86_mmx? ( >=dev-lang/yasm-1.2 )
312 - test? ( net-misc/wget sys-devel/bc )
313 - v4l? ( sys-kernel/linux-headers )
314 -"
315 -
316 -# Code requiring FFmpeg to be built under gpl license
317 -GPL_REQUIRED_USE="
318 - postproc? ( gpl )
319 - frei0r? ( gpl )
320 - cdio? ( gpl )
321 - samba? ( gpl )
322 - encode? (
323 - x264? ( gpl )
324 - x265? ( gpl )
325 - xvid? ( gpl )
326 - X? ( !xcb? ( gpl ) )
327 - )
328 -"
329 -REQUIRED_USE="
330 - libv4l? ( v4l )
331 - fftools_cws2fws? ( zlib )
332 - test? ( encode )
333 - ${GPL_REQUIRED_USE}
334 - ${CPU_REQUIRED_USE}"
335 -RESTRICT="
336 - gpl? ( openssl? ( bindist ) fdk? ( bindist ) )
337 -"
338 -
339 -S=${WORKDIR}/${P/_/-}
340 -
341 -MULTILIB_WRAPPED_HEADERS=(
342 - /usr/include/libavutil/avconfig.h
343 -)
344 -
345 -PATCHES=(
346 - "${FILESDIR}"/openjpeg22.patch
347 - "${FILESDIR}"/openjpeg23.patch
348 - "${FILESDIR}"/chromium.patch
349 -)
350 -
351 -src_prepare() {
352 - if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
353 - export revision=git-N-${FFMPEG_REVISION}
354 - fi
355 - default
356 - echo 'include $(SRC_PATH)/ffbuild/libffmpeg.mak' >> Makefile || die
357 -}
358 -
359 -multilib_src_configure() {
360 - local myconf=( ${EXTRA_FFMPEG_CONF} )
361 -
362 - local ffuse=( "${FFMPEG_FLAG_MAP[@]}" )
363 - use openssl && use gpl && myconf+=( --enable-nonfree )
364 - use samba && myconf+=( --enable-version3 )
365 -
366 - # Encoders
367 - if use encode ; then
368 - ffuse+=( "${FFMPEG_ENCODER_FLAG_MAP[@]}" )
369 -
370 - # Licensing.
371 - if use amrenc ; then
372 - myconf+=( --enable-version3 )
373 - fi
374 - else
375 - myconf+=( --disable-encoders )
376 - fi
377 -
378 - # Indevs
379 - use v4l || myconf+=( --disable-indev=v4l2 --disable-outdev=v4l2 )
380 - for i in alsa oss jack ; do
381 - use ${i} || myconf+=( --disable-indev=${i} )
382 - done
383 -
384 - # Outdevs
385 - for i in alsa oss sdl ; do
386 - use ${i} || myconf+=( --disable-outdev=${i} )
387 - done
388 -
389 - # Decoders
390 - use amr && myconf+=( --enable-version3 )
391 - use gmp && myconf+=( --enable-version3 )
392 - use fdk && use gpl && myconf+=( --enable-nonfree )
393 -
394 - for i in "${ffuse[@]#+}" ; do
395 - myconf+=( $(use_enable ${i%:*} ${i#*:}) )
396 - done
397 -
398 - # (temporarily) disable non-multilib deps
399 - if ! multilib_is_native_abi; then
400 - for i in frei0r netcdf libzmq ; do
401 - myconf+=( --disable-${i} )
402 - done
403 - fi
404 -
405 - # CPU features
406 - for i in ${CPU_FEATURES_MAP} ; do
407 - if [ "$(tc-arch)" = "${i%:*}" ] ; then
408 - local var="${i#*:}_CPU_FEATURES[@]"
409 - for j in ${!var} ; do
410 - use ${j%:*} || myconf+=( --disable-${j#*:} )
411 - done
412 - fi
413 - done
414 -
415 - if use pic ; then
416 - myconf+=( --enable-pic )
417 - # disable asm code if PIC is required
418 - # as the provided asm decidedly is not PIC for x86.
419 - [[ ${ABI} == x86 ]] && myconf+=( --disable-asm )
420 - fi
421 - [[ ${ABI} == x32 ]] && myconf+=( --disable-asm ) #427004
422 -
423 - # Try to get cpu type based on CFLAGS.
424 - # Bug #172723
425 - # We need to do this so that features of that CPU will be better used
426 - # If they contain an unknown CPU it will not hurt since ffmpeg's configure
427 - # will just ignore it.
428 - for i in $(get-flag mcpu) $(get-flag march) ; do
429 - [[ ${i} = native ]] && i="host" # bug #273421
430 - myconf+=( --cpu=${i} )
431 - break
432 - done
433 -
434 - # LTO support, bug #566282
435 - is-flagq "-flto*" && myconf+=( "--enable-lto" )
436 -
437 - # Mandatory configuration
438 - myconf=(
439 - --enable-avfilter
440 - --enable-avresample
441 - --disable-stripping
442 - "${myconf[@]}"
443 - )
444 -
445 - # cross compile support
446 - if tc-is-cross-compiler ; then
447 - myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- --host-cc="$(tc-getBUILD_CC)" )
448 - case ${CHOST} in
449 - *freebsd*)
450 - myconf+=( --target-os=freebsd )
451 - ;;
452 - *mingw32*)
453 - myconf+=( --target-os=mingw32 )
454 - ;;
455 - *linux*)
456 - myconf+=( --target-os=linux )
457 - ;;
458 - esac
459 - fi
460 -
461 - # doc
462 - myconf+=(
463 - $(multilib_native_use_enable doc)
464 - $(multilib_native_use_enable doc htmlpages)
465 - $(multilib_native_enable manpages)
466 - )
467 -
468 - set -- "${S}/configure" \
469 - --prefix="${EPREFIX}/usr" \
470 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
471 - --shlibdir="${EPREFIX}/usr/$(get_libdir)" \
472 - --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
473 - --mandir="${EPREFIX}/usr/share/man" \
474 - --enable-shared \
475 - --cc="$(tc-getCC)" \
476 - --cxx="$(tc-getCXX)" \
477 - --ar="$(tc-getAR)" \
478 - --optflags="${CFLAGS}" \
479 - $(use_enable static-libs static) \
480 - "${myconf[@]}"
481 - echo "${@}"
482 - "${@}" || die
483 -
484 - if multilib_is_native_abi && use chromium; then
485 - einfo "Configuring for Chromium"
486 - mkdir -p ../chromium || die
487 - pushd ../chromium >/dev/null || die
488 - set -- "${@}" \
489 - --disable-shared \
490 - --enable-static \
491 - --enable-pic \
492 - --extra-cflags="-DFF_API_CONVERGENCE_DURATION=0"
493 - echo "${@}"
494 - "${@}" || die
495 - popd >/dev/null || die
496 - fi
497 -}
498 -
499 -multilib_src_compile() {
500 - emake V=1
501 -
502 - if multilib_is_native_abi; then
503 - for i in "${FFTOOLS[@]}" ; do
504 - if use fftools_${i} ; then
505 - emake V=1 tools/${i}$(get_exeext)
506 - fi
507 - done
508 -
509 - if use chromium; then
510 - einfo "Compiling for Chromium"
511 - pushd ../chromium >/dev/null || die
512 - emake V=1 libffmpeg
513 - popd >/dev/null || die
514 - fi
515 - fi
516 -}
517 -
518 -multilib_src_install() {
519 - emake V=1 DESTDIR="${D}" install install-doc
520 -
521 - if multilib_is_native_abi; then
522 - for i in "${FFTOOLS[@]}" ; do
523 - if use fftools_${i} ; then
524 - dobin tools/${i}$(get_exeext)
525 - fi
526 - done
527 -
528 - if use chromium; then
529 - einfo "Installing for Chromium"
530 - pushd ../chromium >/dev/null || die
531 - emake V=1 DESTDIR="${D}" install-libffmpeg
532 - popd >/dev/null || die
533 - fi
534 - fi
535 -}
536 -
537 -multilib_src_install_all() {
538 - dodoc Changelog README.md CREDITS doc/*.txt doc/APIchanges
539 - [ -f "RELEASE_NOTES" ] && dodoc "RELEASE_NOTES"
540 -}
541 -
542 -multilib_src_test() {
543 - 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" \
544 - emake V=1 fate
545 -}
546
547 diff --git a/media-video/ffmpeg/ffmpeg-3.4.2-r1.ebuild b/media-video/ffmpeg/ffmpeg-3.4.2-r1.ebuild
548 deleted file mode 100644
549 index aa8b226963b..00000000000
550 --- a/media-video/ffmpeg/ffmpeg-3.4.2-r1.ebuild
551 +++ /dev/null
552 @@ -1,488 +0,0 @@
553 -# Copyright 1999-2018 Gentoo Foundation
554 -# Distributed under the terms of the GNU General Public License v2
555 -
556 -EAPI=6
557 -
558 -# Subslot: libavutil major.libavcodec major.libavformat major
559 -# Since FFmpeg ships several libraries, subslot is kind of limited here.
560 -# Most consumers will use those three libraries, if a "less used" library
561 -# changes its soname, consumers will have to be rebuilt the old way
562 -# (preserve-libs).
563 -# If, for example, a package does not link to libavformat and only libavformat
564 -# changes its ABI then this package will be rebuilt needlessly. Hence, such a
565 -# package is free _not_ to := depend on FFmpeg but I would strongly encourage
566 -# doing so since such a case is unlikely.
567 -FFMPEG_SUBSLOT=55.57.57
568 -
569 -SCM=""
570 -if [ "${PV#9999}" != "${PV}" ] ; then
571 - SCM="git-r3"
572 - EGIT_REPO_URI="git://source.ffmpeg.org/ffmpeg.git"
573 -fi
574 -
575 -inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs ${SCM}
576 -
577 -DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec"
578 -HOMEPAGE="http://ffmpeg.org/"
579 -if [ "${PV#9999}" != "${PV}" ] ; then
580 - SRC_URI=""
581 -elif [ "${PV%_p*}" != "${PV}" ] ; then # Snapshot
582 - SRC_URI="mirror://gentoo/${P}.tar.bz2"
583 -else # Release
584 - SRC_URI="http://ffmpeg.org/releases/${P/_/-}.tar.bz2"
585 -fi
586 -FFMPEG_REVISION="${PV#*_p}"
587 -
588 -SLOT="0/${FFMPEG_SUBSLOT}"
589 -LICENSE="
590 - !gpl? ( LGPL-2.1 )
591 - gpl? ( GPL-2 )
592 - amr? (
593 - gpl? ( GPL-3 )
594 - !gpl? ( LGPL-3 )
595 - )
596 - gmp? (
597 - gpl? ( GPL-3 )
598 - !gpl? ( LGPL-3 )
599 - )
600 - encode? (
601 - amrenc? (
602 - gpl? ( GPL-3 )
603 - !gpl? ( LGPL-3 )
604 - )
605 - )
606 - samba? ( GPL-3 )
607 -"
608 -if [ "${PV#9999}" = "${PV}" ] ; then
609 - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
610 -fi
611 -
612 -# Options to use as use_enable in the foo[:bar] form.
613 -# This will feed configure with $(use_enable foo bar)
614 -# or $(use_enable foo foo) if no :bar is set.
615 -# foo is added to IUSE.
616 -FFMPEG_FLAG_MAP=(
617 - +bzip2:bzlib cpudetection:runtime-cpudetect debug gcrypt gnutls gmp
618 - +gpl +hardcoded-tables +iconv lzma +network opencl openssl +postproc
619 - samba:libsmbclient sdl:ffplay sdl:sdl2 vaapi vdpau X:xlib xcb:libxcb
620 - xcb:libxcb-shm xcb:libxcb-xfixes +zlib
621 - # libavdevice options
622 - cdio:libcdio iec61883:libiec61883 ieee1394:libdc1394 libcaca openal
623 - opengl
624 - # indevs
625 - libv4l:libv4l2 pulseaudio:libpulse libdrm
626 - # decoders
627 - amr:libopencore-amrwb amr:libopencore-amrnb fdk:libfdk-aac
628 - jpeg2k:libopenjpeg bluray:libbluray celt:libcelt gme:libgme gsm:libgsm
629 - mmal modplug:libmodplug opus:libopus libilbc librtmp ssh:libssh
630 - speex:libspeex svg:librsvg vorbis:libvorbis
631 - vpx:libvpx zvbi:libzvbi
632 - # libavfilter options
633 - appkit
634 - bs2b:libbs2b chromaprint flite:libflite frei0r
635 - fribidi:libfribidi fontconfig ladspa libass truetype:libfreetype
636 - rubberband:librubberband zeromq:libzmq zimg:libzimg
637 - # libswresample options
638 - libsoxr
639 - # Threads; we only support pthread for now but ffmpeg supports more
640 - +threads:pthreads
641 -)
642 -
643 -# Same as above but for encoders, i.e. they do something only with USE=encode.
644 -FFMPEG_ENCODER_FLAG_MAP=(
645 - amrenc:libvo-amrwbenc mp3:libmp3lame
646 - kvazaar:libkvazaar nvenc:nvenc
647 - openh264:libopenh264 snappy:libsnappy theora:libtheora twolame:libtwolame
648 - wavpack:libwavpack webp:libwebp x264:libx264 x265:libx265 xvid:libxvid
649 -)
650 -
651 -IUSE="
652 - alsa chromium doc +encode jack oss pic static-libs test v4l
653 - ${FFMPEG_FLAG_MAP[@]%:*}
654 - ${FFMPEG_ENCODER_FLAG_MAP[@]%:*}
655 -"
656 -
657 -# Strings for CPU features in the useflag[:configure_option] form
658 -# if :configure_option isn't set, it will use 'useflag' as configure option
659 -ARM_CPU_FEATURES=(
660 - cpu_flags_arm_thumb:armv5te
661 - cpu_flags_arm_v6:armv6
662 - cpu_flags_arm_thumb2:armv6t2
663 - cpu_flags_arm_neon:neon
664 - cpu_flags_arm_vfp:vfp
665 - cpu_flags_arm_vfpv3:vfpv3
666 - cpu_flags_arm_v8:armv8
667 -)
668 -ARM_CPU_REQUIRED_USE="
669 - arm64? ( cpu_flags_arm_v8 )
670 - cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 cpu_flags_arm_neon )
671 - cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 cpu_flags_arm_vfp )
672 - cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp )
673 - cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 )
674 - cpu_flags_arm_v6? ( cpu_flags_arm_thumb )
675 -"
676 -MIPS_CPU_FEATURES=( mipsdspr1:mipsdsp mipsdspr2 mipsfpu )
677 -PPC_CPU_FEATURES=( altivec )
678 -X86_CPU_FEATURES_RAW=( 3dnow:amd3dnow 3dnowext:amd3dnowext aes:aesni avx:avx avx2:avx2 fma3:fma3 fma4:fma4 mmx:mmx mmxext:mmxext sse:sse sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4 sse4_2:sse42 xop:xop )
679 -X86_CPU_FEATURES=( ${X86_CPU_FEATURES_RAW[@]/#/cpu_flags_x86_} )
680 -X86_CPU_REQUIRED_USE="
681 - cpu_flags_x86_avx2? ( cpu_flags_x86_avx )
682 - cpu_flags_x86_fma4? ( cpu_flags_x86_avx )
683 - cpu_flags_x86_fma3? ( cpu_flags_x86_avx )
684 - cpu_flags_x86_xop? ( cpu_flags_x86_avx )
685 - cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 )
686 - cpu_flags_x86_aes? ( cpu_flags_x86_sse4_2 )
687 - cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 )
688 - cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 )
689 - cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 )
690 - cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 )
691 - cpu_flags_x86_sse2? ( cpu_flags_x86_sse )
692 - cpu_flags_x86_sse? ( cpu_flags_x86_mmxext )
693 - cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx )
694 - cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow )
695 - cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx )
696 -"
697 -
698 -CPU_FEATURES_MAP=(
699 - ${ARM_CPU_FEATURES[@]}
700 - ${MIPS_CPU_FEATURES[@]}
701 - ${PPC_CPU_FEATURES[@]}
702 - ${X86_CPU_FEATURES[@]}
703 -)
704 -IUSE="${IUSE}
705 - ${CPU_FEATURES_MAP[@]%:*}"
706 -
707 -CPU_REQUIRED_USE="
708 - ${ARM_CPU_REQUIRED_USE}
709 - ${X86_CPU_REQUIRED_USE}
710 -"
711 -
712 -FFTOOLS=( aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher )
713 -IUSE="${IUSE} ${FFTOOLS[@]/#/+fftools_}"
714 -
715 -RDEPEND="
716 - alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
717 - amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] )
718 - bluray? ( >=media-libs/libbluray-0.3.0-r1:=[${MULTILIB_USEDEP}] )
719 - bs2b? ( >=media-libs/libbs2b-3.1.0-r1[${MULTILIB_USEDEP}] )
720 - bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
721 - cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] )
722 - celt? ( >=media-libs/celt-0.11.1-r1[${MULTILIB_USEDEP}] )
723 - chromaprint? ( >=media-libs/chromaprint-1.2-r1[${MULTILIB_USEDEP}] )
724 - encode? (
725 - amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] )
726 - kvazaar? ( media-libs/kvazaar[${MULTILIB_USEDEP}] )
727 - mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] )
728 - nvenc? ( media-video/nvidia_video_sdk )
729 - openh264? ( >=media-libs/openh264-1.4.0-r1[${MULTILIB_USEDEP}] )
730 - snappy? ( >=app-arch/snappy-1.1.2-r1:=[${MULTILIB_USEDEP}] )
731 - theora? (
732 - >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}]
733 - >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
734 - )
735 - twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] )
736 - wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] )
737 - webp? ( >=media-libs/libwebp-0.3.0:=[${MULTILIB_USEDEP}] )
738 - x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] )
739 - x265? ( >=media-libs/x265-1.6:=[${MULTILIB_USEDEP}] )
740 - xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] )
741 - )
742 - fdk? ( >=media-libs/fdk-aac-0.1.3:=[${MULTILIB_USEDEP}] )
743 - flite? ( >=app-accessibility/flite-1.4-r4[${MULTILIB_USEDEP}] )
744 - fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] )
745 - frei0r? ( media-plugins/frei0r-plugins )
746 - fribidi? ( >=dev-libs/fribidi-0.19.6[${MULTILIB_USEDEP}] )
747 - gcrypt? ( >=dev-libs/libgcrypt-1.6:0=[${MULTILIB_USEDEP}] )
748 - gme? ( >=media-libs/game-music-emu-0.6.0[${MULTILIB_USEDEP}] )
749 - gmp? ( >=dev-libs/gmp-6:0=[${MULTILIB_USEDEP}] )
750 - gnutls? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] )
751 - gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] )
752 - iconv? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] )
753 - iec61883? (
754 - >=media-libs/libiec61883-1.2.0-r1[${MULTILIB_USEDEP}]
755 - >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
756 - >=sys-libs/libavc1394-0.5.4-r1[${MULTILIB_USEDEP}]
757 - )
758 - ieee1394? (
759 - >=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}]
760 - >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
761 - )
762 - jack? ( virtual/jack[${MULTILIB_USEDEP}] )
763 - jpeg2k? ( >=media-libs/openjpeg-2:2[${MULTILIB_USEDEP}] )
764 - libass? ( >=media-libs/libass-0.10.2:=[${MULTILIB_USEDEP}] )
765 - libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] )
766 - libdrm? ( x11-libs/libdrm[${MULTILIB_USEDEP}] )
767 - libilbc? ( >=media-libs/libilbc-2[${MULTILIB_USEDEP}] )
768 - libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] )
769 - libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] )
770 - lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] )
771 - mmal? ( media-libs/raspberrypi-userland )
772 - modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] )
773 - openal? ( >=media-libs/openal-1.15.1[${MULTILIB_USEDEP}] )
774 - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
775 - opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] )
776 - openssl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] )
777 - opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] )
778 - pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] )
779 - librtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] )
780 - rubberband? ( >=media-libs/rubberband-1.8.1-r1[${MULTILIB_USEDEP}] )
781 - samba? ( >=net-fs/samba-3.6.23-r1[${MULTILIB_USEDEP}] )
782 - sdl? ( media-libs/libsdl2[sound,video,${MULTILIB_USEDEP}] )
783 - speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] )
784 - ssh? ( >=net-libs/libssh-0.5.5[${MULTILIB_USEDEP}] )
785 - svg? ( gnome-base/librsvg:2=[${MULTILIB_USEDEP}] )
786 - truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] )
787 - vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] )
788 - vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] )
789 - vorbis? (
790 - >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}]
791 - >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
792 - )
793 - vpx? ( >=media-libs/libvpx-1.4.0:=[${MULTILIB_USEDEP}] )
794 - X? (
795 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
796 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
797 - >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
798 - )
799 - xcb? ( >=x11-libs/libxcb-1.4[${MULTILIB_USEDEP}] )
800 - zeromq? ( >=net-libs/zeromq-4.1.6 )
801 - zimg? ( >=media-libs/zimg-2.4:=[${MULTILIB_USEDEP}] )
802 - zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
803 - zvbi? ( >=media-libs/zvbi-0.2.35[${MULTILIB_USEDEP}] )
804 - !media-video/qt-faststart
805 - postproc? ( !media-libs/libpostproc )
806 -"
807 -
808 -DEPEND="${RDEPEND}
809 - >=sys-devel/make-3.81
810 - doc? ( sys-apps/texinfo )
811 - >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
812 - ladspa? ( >=media-libs/ladspa-sdk-1.13-r2[${MULTILIB_USEDEP}] )
813 - cpu_flags_x86_mmx? ( || ( >=dev-lang/nasm-2.13 >=dev-lang/yasm-1.3 ) )
814 - test? ( net-misc/wget sys-devel/bc )
815 - v4l? ( sys-kernel/linux-headers )
816 -"
817 -
818 -# Code requiring FFmpeg to be built under gpl license
819 -GPL_REQUIRED_USE="
820 - postproc? ( gpl )
821 - frei0r? ( gpl )
822 - cdio? ( gpl )
823 - samba? ( gpl )
824 - encode? (
825 - x264? ( gpl )
826 - x265? ( gpl )
827 - xvid? ( gpl )
828 - X? ( !xcb? ( gpl ) )
829 - )
830 -"
831 -REQUIRED_USE="
832 - libv4l? ( v4l )
833 - fftools_cws2fws? ( zlib )
834 - test? ( encode )
835 - ${GPL_REQUIRED_USE}
836 - ${CPU_REQUIRED_USE}"
837 -RESTRICT="
838 - gpl? ( openssl? ( bindist ) fdk? ( bindist ) )
839 -"
840 -
841 -S=${WORKDIR}/${P/_/-}
842 -
843 -PATCHES=(
844 - "${FILESDIR}"/chromium.patch
845 -)
846 -
847 -MULTILIB_WRAPPED_HEADERS=(
848 - /usr/include/libavutil/avconfig.h
849 -)
850 -
851 -src_prepare() {
852 - if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
853 - export revision=git-N-${FFMPEG_REVISION}
854 - fi
855 - default
856 - echo 'include $(SRC_PATH)/ffbuild/libffmpeg.mak' >> Makefile || die
857 -}
858 -
859 -multilib_src_configure() {
860 - local myconf=( ${EXTRA_FFMPEG_CONF} )
861 -
862 - local ffuse=( "${FFMPEG_FLAG_MAP[@]}" )
863 - use openssl && use gpl && myconf+=( --enable-nonfree )
864 - use samba && myconf+=( --enable-version3 )
865 -
866 - # Encoders
867 - if use encode ; then
868 - ffuse+=( "${FFMPEG_ENCODER_FLAG_MAP[@]}" )
869 -
870 - # Licensing.
871 - if use amrenc ; then
872 - myconf+=( --enable-version3 )
873 - fi
874 - else
875 - myconf+=( --disable-encoders )
876 - fi
877 -
878 - # Indevs
879 - use v4l || myconf+=( --disable-indev=v4l2 --disable-outdev=v4l2 )
880 - for i in alsa oss jack ; do
881 - use ${i} || myconf+=( --disable-indev=${i} )
882 - done
883 -
884 - # Outdevs
885 - for i in alsa oss sdl ; do
886 - use ${i} || myconf+=( --disable-outdev=${i} )
887 - done
888 -
889 - # Decoders
890 - use amr && myconf+=( --enable-version3 )
891 - use gmp && myconf+=( --enable-version3 )
892 - use fdk && use gpl && myconf+=( --enable-nonfree )
893 -
894 - for i in "${ffuse[@]#+}" ; do
895 - myconf+=( $(use_enable ${i%:*} ${i#*:}) )
896 - done
897 -
898 - # (temporarily) disable non-multilib deps
899 - if ! multilib_is_native_abi; then
900 - for i in frei0r libzmq ; do
901 - myconf+=( --disable-${i} )
902 - done
903 - fi
904 -
905 - # CPU features
906 - for i in "${CPU_FEATURES_MAP[@]}" ; do
907 - use ${i%:*} || myconf+=( --disable-${i#*:} )
908 - done
909 -
910 - if use pic ; then
911 - myconf+=( --enable-pic )
912 - # disable asm code if PIC is required
913 - # as the provided asm decidedly is not PIC for x86.
914 - [[ ${ABI} == x86 ]] && myconf+=( --disable-asm )
915 - fi
916 - [[ ${ABI} == x32 ]] && myconf+=( --disable-asm ) #427004
917 -
918 - # Try to get cpu type based on CFLAGS.
919 - # Bug #172723
920 - # We need to do this so that features of that CPU will be better used
921 - # If they contain an unknown CPU it will not hurt since ffmpeg's configure
922 - # will just ignore it.
923 - for i in $(get-flag mcpu) $(get-flag march) ; do
924 - [[ ${i} = native ]] && i="host" # bug #273421
925 - myconf+=( --cpu=${i} )
926 - break
927 - done
928 -
929 - # LTO support, bug #566282
930 - is-flagq "-flto*" && myconf+=( "--enable-lto" )
931 -
932 - # Mandatory configuration
933 - myconf=(
934 - --enable-avfilter
935 - --enable-avresample
936 - --disable-stripping
937 - "${myconf[@]}"
938 - )
939 -
940 - # cross compile support
941 - if tc-is-cross-compiler ; then
942 - myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- --host-cc="$(tc-getBUILD_CC)" )
943 - case ${CHOST} in
944 - *freebsd*)
945 - myconf+=( --target-os=freebsd )
946 - ;;
947 - *mingw32*)
948 - myconf+=( --target-os=mingw32 )
949 - ;;
950 - *linux*)
951 - myconf+=( --target-os=linux )
952 - ;;
953 - esac
954 - fi
955 -
956 - # doc
957 - myconf+=(
958 - $(multilib_native_use_enable doc)
959 - $(multilib_native_use_enable doc htmlpages)
960 - $(multilib_native_enable manpages)
961 - )
962 -
963 - set -- "${S}/configure" \
964 - --prefix="${EPREFIX}/usr" \
965 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
966 - --shlibdir="${EPREFIX}/usr/$(get_libdir)" \
967 - --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
968 - --mandir="${EPREFIX}/usr/share/man" \
969 - --enable-shared \
970 - --cc="$(tc-getCC)" \
971 - --cxx="$(tc-getCXX)" \
972 - --ar="$(tc-getAR)" \
973 - --optflags="${CFLAGS}" \
974 - $(use_enable static-libs static) \
975 - "${myconf[@]}"
976 - echo "${@}"
977 - "${@}" || die
978 -
979 - if multilib_is_native_abi && use chromium; then
980 - einfo "Configuring for Chromium"
981 - mkdir -p ../chromium || die
982 - pushd ../chromium >/dev/null || die
983 - set -- "${@}" \
984 - --disable-shared \
985 - --enable-static \
986 - --enable-pic \
987 - --extra-cflags="-DFF_API_CONVERGENCE_DURATION=0"
988 - echo "${@}"
989 - "${@}" || die
990 - popd >/dev/null || die
991 - fi
992 -}
993 -
994 -multilib_src_compile() {
995 - emake V=1
996 -
997 - if multilib_is_native_abi; then
998 - for i in "${FFTOOLS[@]}" ; do
999 - if use fftools_${i} ; then
1000 - emake V=1 tools/${i}$(get_exeext)
1001 - fi
1002 - done
1003 -
1004 - if use chromium; then
1005 - einfo "Compiling for Chromium"
1006 - pushd ../chromium >/dev/null || die
1007 - emake V=1 libffmpeg
1008 - popd >/dev/null || die
1009 - fi
1010 - fi
1011 -}
1012 -
1013 -multilib_src_install() {
1014 - emake V=1 DESTDIR="${D}" install install-doc
1015 -
1016 - if multilib_is_native_abi; then
1017 - for i in "${FFTOOLS[@]}" ; do
1018 - if use fftools_${i} ; then
1019 - dobin tools/${i}$(get_exeext)
1020 - fi
1021 - done
1022 -
1023 - if use chromium; then
1024 - einfo "Installing for Chromium"
1025 - pushd ../chromium >/dev/null || die
1026 - emake V=1 DESTDIR="${D}" install-libffmpeg
1027 - popd >/dev/null || die
1028 - fi
1029 - fi
1030 -}
1031 -
1032 -multilib_src_install_all() {
1033 - dodoc Changelog README.md CREDITS doc/*.txt doc/APIchanges
1034 - [ -f "RELEASE_NOTES" ] && dodoc "RELEASE_NOTES"
1035 -}
1036 -
1037 -multilib_src_test() {
1038 - 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" \
1039 - emake V=1 fate
1040 -}
1041
1042 diff --git a/media-video/ffmpeg/ffmpeg-3.4.2.ebuild b/media-video/ffmpeg/ffmpeg-3.4.2.ebuild
1043 deleted file mode 100644
1044 index bbadaf6cc19..00000000000
1045 --- a/media-video/ffmpeg/ffmpeg-3.4.2.ebuild
1046 +++ /dev/null
1047 @@ -1,487 +0,0 @@
1048 -# Copyright 1999-2018 Gentoo Foundation
1049 -# Distributed under the terms of the GNU General Public License v2
1050 -
1051 -EAPI=6
1052 -
1053 -# Subslot: libavutil major.libavcodec major.libavformat major
1054 -# Since FFmpeg ships several libraries, subslot is kind of limited here.
1055 -# Most consumers will use those three libraries, if a "less used" library
1056 -# changes its soname, consumers will have to be rebuilt the old way
1057 -# (preserve-libs).
1058 -# If, for example, a package does not link to libavformat and only libavformat
1059 -# changes its ABI then this package will be rebuilt needlessly. Hence, such a
1060 -# package is free _not_ to := depend on FFmpeg but I would strongly encourage
1061 -# doing so since such a case is unlikely.
1062 -FFMPEG_SUBSLOT=55.57.57
1063 -
1064 -SCM=""
1065 -if [ "${PV#9999}" != "${PV}" ] ; then
1066 - SCM="git-r3"
1067 - EGIT_REPO_URI="git://source.ffmpeg.org/ffmpeg.git"
1068 -fi
1069 -
1070 -inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs ${SCM}
1071 -
1072 -DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec"
1073 -HOMEPAGE="http://ffmpeg.org/"
1074 -if [ "${PV#9999}" != "${PV}" ] ; then
1075 - SRC_URI=""
1076 -elif [ "${PV%_p*}" != "${PV}" ] ; then # Snapshot
1077 - SRC_URI="mirror://gentoo/${P}.tar.bz2"
1078 -else # Release
1079 - SRC_URI="http://ffmpeg.org/releases/${P/_/-}.tar.bz2"
1080 -fi
1081 -FFMPEG_REVISION="${PV#*_p}"
1082 -
1083 -SLOT="0/${FFMPEG_SUBSLOT}"
1084 -LICENSE="
1085 - !gpl? ( LGPL-2.1 )
1086 - gpl? ( GPL-2 )
1087 - amr? (
1088 - gpl? ( GPL-3 )
1089 - !gpl? ( LGPL-3 )
1090 - )
1091 - gmp? (
1092 - gpl? ( GPL-3 )
1093 - !gpl? ( LGPL-3 )
1094 - )
1095 - encode? (
1096 - amrenc? (
1097 - gpl? ( GPL-3 )
1098 - !gpl? ( LGPL-3 )
1099 - )
1100 - )
1101 - samba? ( GPL-3 )
1102 -"
1103 -if [ "${PV#9999}" = "${PV}" ] ; then
1104 - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
1105 -fi
1106 -
1107 -# Options to use as use_enable in the foo[:bar] form.
1108 -# This will feed configure with $(use_enable foo bar)
1109 -# or $(use_enable foo foo) if no :bar is set.
1110 -# foo is added to IUSE.
1111 -FFMPEG_FLAG_MAP=(
1112 - +bzip2:bzlib cpudetection:runtime-cpudetect debug gcrypt gnutls gmp
1113 - +gpl +hardcoded-tables +iconv lzma +network openssl +postproc
1114 - samba:libsmbclient sdl:ffplay sdl:sdl2 vaapi vdpau X:xlib xcb:libxcb
1115 - xcb:libxcb-shm xcb:libxcb-xfixes +zlib
1116 - # libavdevice options
1117 - cdio:libcdio iec61883:libiec61883 ieee1394:libdc1394 libcaca openal
1118 - opengl
1119 - # indevs
1120 - libv4l:libv4l2 pulseaudio:libpulse libdrm
1121 - # decoders
1122 - amr:libopencore-amrwb amr:libopencore-amrnb fdk:libfdk-aac
1123 - jpeg2k:libopenjpeg bluray:libbluray celt:libcelt gme:libgme gsm:libgsm
1124 - mmal modplug:libmodplug opus:libopus libilbc librtmp ssh:libssh
1125 - speex:libspeex svg:librsvg vorbis:libvorbis
1126 - vpx:libvpx zvbi:libzvbi
1127 - # libavfilter options
1128 - appkit
1129 - bs2b:libbs2b chromaprint flite:libflite frei0r
1130 - fribidi:libfribidi fontconfig ladspa libass truetype:libfreetype
1131 - rubberband:librubberband zeromq:libzmq zimg:libzimg
1132 - # libswresample options
1133 - libsoxr
1134 - # Threads; we only support pthread for now but ffmpeg supports more
1135 - +threads:pthreads
1136 -)
1137 -
1138 -# Same as above but for encoders, i.e. they do something only with USE=encode.
1139 -FFMPEG_ENCODER_FLAG_MAP=(
1140 - amrenc:libvo-amrwbenc mp3:libmp3lame
1141 - kvazaar:libkvazaar nvenc:nvenc
1142 - openh264:libopenh264 snappy:libsnappy theora:libtheora twolame:libtwolame
1143 - wavpack:libwavpack webp:libwebp x264:libx264 x265:libx265 xvid:libxvid
1144 -)
1145 -
1146 -IUSE="
1147 - alsa chromium doc +encode jack oss pic static-libs test v4l
1148 - ${FFMPEG_FLAG_MAP[@]%:*}
1149 - ${FFMPEG_ENCODER_FLAG_MAP[@]%:*}
1150 -"
1151 -
1152 -# Strings for CPU features in the useflag[:configure_option] form
1153 -# if :configure_option isn't set, it will use 'useflag' as configure option
1154 -ARM_CPU_FEATURES=(
1155 - cpu_flags_arm_thumb:armv5te
1156 - cpu_flags_arm_v6:armv6
1157 - cpu_flags_arm_thumb2:armv6t2
1158 - cpu_flags_arm_neon:neon
1159 - cpu_flags_arm_vfp:vfp
1160 - cpu_flags_arm_vfpv3:vfpv3
1161 - cpu_flags_arm_v8:armv8
1162 -)
1163 -ARM_CPU_REQUIRED_USE="
1164 - arm64? ( cpu_flags_arm_v8 )
1165 - cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 cpu_flags_arm_neon )
1166 - cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 cpu_flags_arm_vfp )
1167 - cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp )
1168 - cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 )
1169 - cpu_flags_arm_v6? ( cpu_flags_arm_thumb )
1170 -"
1171 -MIPS_CPU_FEATURES=( mipsdspr1:mipsdsp mipsdspr2 mipsfpu )
1172 -PPC_CPU_FEATURES=( altivec )
1173 -X86_CPU_FEATURES_RAW=( 3dnow:amd3dnow 3dnowext:amd3dnowext aes:aesni avx:avx avx2:avx2 fma3:fma3 fma4:fma4 mmx:mmx mmxext:mmxext sse:sse sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4 sse4_2:sse42 xop:xop )
1174 -X86_CPU_FEATURES=( ${X86_CPU_FEATURES_RAW[@]/#/cpu_flags_x86_} )
1175 -X86_CPU_REQUIRED_USE="
1176 - cpu_flags_x86_avx2? ( cpu_flags_x86_avx )
1177 - cpu_flags_x86_fma4? ( cpu_flags_x86_avx )
1178 - cpu_flags_x86_fma3? ( cpu_flags_x86_avx )
1179 - cpu_flags_x86_xop? ( cpu_flags_x86_avx )
1180 - cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 )
1181 - cpu_flags_x86_aes? ( cpu_flags_x86_sse4_2 )
1182 - cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 )
1183 - cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 )
1184 - cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 )
1185 - cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 )
1186 - cpu_flags_x86_sse2? ( cpu_flags_x86_sse )
1187 - cpu_flags_x86_sse? ( cpu_flags_x86_mmxext )
1188 - cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx )
1189 - cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow )
1190 - cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx )
1191 -"
1192 -
1193 -CPU_FEATURES_MAP=(
1194 - ${ARM_CPU_FEATURES[@]}
1195 - ${MIPS_CPU_FEATURES[@]}
1196 - ${PPC_CPU_FEATURES[@]}
1197 - ${X86_CPU_FEATURES[@]}
1198 -)
1199 -IUSE="${IUSE}
1200 - ${CPU_FEATURES_MAP[@]%:*}"
1201 -
1202 -CPU_REQUIRED_USE="
1203 - ${ARM_CPU_REQUIRED_USE}
1204 - ${X86_CPU_REQUIRED_USE}
1205 -"
1206 -
1207 -FFTOOLS=( aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher )
1208 -IUSE="${IUSE} ${FFTOOLS[@]/#/+fftools_}"
1209 -
1210 -RDEPEND="
1211 - alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
1212 - amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] )
1213 - bluray? ( >=media-libs/libbluray-0.3.0-r1:=[${MULTILIB_USEDEP}] )
1214 - bs2b? ( >=media-libs/libbs2b-3.1.0-r1[${MULTILIB_USEDEP}] )
1215 - bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
1216 - cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] )
1217 - celt? ( >=media-libs/celt-0.11.1-r1[${MULTILIB_USEDEP}] )
1218 - chromaprint? ( >=media-libs/chromaprint-1.2-r1[${MULTILIB_USEDEP}] )
1219 - encode? (
1220 - amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] )
1221 - kvazaar? ( media-libs/kvazaar[${MULTILIB_USEDEP}] )
1222 - mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] )
1223 - nvenc? ( media-video/nvidia_video_sdk )
1224 - openh264? ( >=media-libs/openh264-1.4.0-r1[${MULTILIB_USEDEP}] )
1225 - snappy? ( >=app-arch/snappy-1.1.2-r1:=[${MULTILIB_USEDEP}] )
1226 - theora? (
1227 - >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}]
1228 - >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
1229 - )
1230 - twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] )
1231 - wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] )
1232 - webp? ( >=media-libs/libwebp-0.3.0:=[${MULTILIB_USEDEP}] )
1233 - x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] )
1234 - x265? ( >=media-libs/x265-1.6:=[${MULTILIB_USEDEP}] )
1235 - xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] )
1236 - )
1237 - fdk? ( >=media-libs/fdk-aac-0.1.3:=[${MULTILIB_USEDEP}] )
1238 - flite? ( >=app-accessibility/flite-1.4-r4[${MULTILIB_USEDEP}] )
1239 - fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] )
1240 - frei0r? ( media-plugins/frei0r-plugins )
1241 - fribidi? ( >=dev-libs/fribidi-0.19.6[${MULTILIB_USEDEP}] )
1242 - gcrypt? ( >=dev-libs/libgcrypt-1.6:0=[${MULTILIB_USEDEP}] )
1243 - gme? ( >=media-libs/game-music-emu-0.6.0[${MULTILIB_USEDEP}] )
1244 - gmp? ( >=dev-libs/gmp-6:0=[${MULTILIB_USEDEP}] )
1245 - gnutls? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] )
1246 - gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] )
1247 - iconv? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] )
1248 - iec61883? (
1249 - >=media-libs/libiec61883-1.2.0-r1[${MULTILIB_USEDEP}]
1250 - >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
1251 - >=sys-libs/libavc1394-0.5.4-r1[${MULTILIB_USEDEP}]
1252 - )
1253 - ieee1394? (
1254 - >=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}]
1255 - >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
1256 - )
1257 - jack? ( virtual/jack[${MULTILIB_USEDEP}] )
1258 - jpeg2k? ( >=media-libs/openjpeg-2:2[${MULTILIB_USEDEP}] )
1259 - libass? ( >=media-libs/libass-0.10.2:=[${MULTILIB_USEDEP}] )
1260 - libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] )
1261 - libdrm? ( x11-libs/libdrm[${MULTILIB_USEDEP}] )
1262 - libilbc? ( >=media-libs/libilbc-2[${MULTILIB_USEDEP}] )
1263 - libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] )
1264 - libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] )
1265 - lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] )
1266 - mmal? ( media-libs/raspberrypi-userland )
1267 - modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] )
1268 - openal? ( >=media-libs/openal-1.15.1[${MULTILIB_USEDEP}] )
1269 - opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] )
1270 - openssl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] )
1271 - opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] )
1272 - pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] )
1273 - librtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] )
1274 - rubberband? ( >=media-libs/rubberband-1.8.1-r1[${MULTILIB_USEDEP}] )
1275 - samba? ( >=net-fs/samba-3.6.23-r1[${MULTILIB_USEDEP}] )
1276 - sdl? ( media-libs/libsdl2[sound,video,${MULTILIB_USEDEP}] )
1277 - speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] )
1278 - ssh? ( >=net-libs/libssh-0.5.5[${MULTILIB_USEDEP}] )
1279 - svg? ( gnome-base/librsvg:2=[${MULTILIB_USEDEP}] )
1280 - truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] )
1281 - vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] )
1282 - vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] )
1283 - vorbis? (
1284 - >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}]
1285 - >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
1286 - )
1287 - vpx? ( >=media-libs/libvpx-1.4.0:=[${MULTILIB_USEDEP}] )
1288 - X? (
1289 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
1290 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
1291 - >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
1292 - )
1293 - xcb? ( >=x11-libs/libxcb-1.4[${MULTILIB_USEDEP}] )
1294 - zeromq? ( >=net-libs/zeromq-4.1.6 )
1295 - zimg? ( >=media-libs/zimg-2.4:=[${MULTILIB_USEDEP}] )
1296 - zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
1297 - zvbi? ( >=media-libs/zvbi-0.2.35[${MULTILIB_USEDEP}] )
1298 - !media-video/qt-faststart
1299 - postproc? ( !media-libs/libpostproc )
1300 -"
1301 -
1302 -DEPEND="${RDEPEND}
1303 - >=sys-devel/make-3.81
1304 - doc? ( sys-apps/texinfo )
1305 - >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
1306 - ladspa? ( >=media-libs/ladspa-sdk-1.13-r2[${MULTILIB_USEDEP}] )
1307 - cpu_flags_x86_mmx? ( || ( >=dev-lang/nasm-2.13 >=dev-lang/yasm-1.3 ) )
1308 - test? ( net-misc/wget sys-devel/bc )
1309 - v4l? ( sys-kernel/linux-headers )
1310 -"
1311 -
1312 -# Code requiring FFmpeg to be built under gpl license
1313 -GPL_REQUIRED_USE="
1314 - postproc? ( gpl )
1315 - frei0r? ( gpl )
1316 - cdio? ( gpl )
1317 - samba? ( gpl )
1318 - encode? (
1319 - x264? ( gpl )
1320 - x265? ( gpl )
1321 - xvid? ( gpl )
1322 - X? ( !xcb? ( gpl ) )
1323 - )
1324 -"
1325 -REQUIRED_USE="
1326 - libv4l? ( v4l )
1327 - fftools_cws2fws? ( zlib )
1328 - test? ( encode )
1329 - ${GPL_REQUIRED_USE}
1330 - ${CPU_REQUIRED_USE}"
1331 -RESTRICT="
1332 - gpl? ( openssl? ( bindist ) fdk? ( bindist ) )
1333 -"
1334 -
1335 -S=${WORKDIR}/${P/_/-}
1336 -
1337 -PATCHES=(
1338 - "${FILESDIR}"/chromium.patch
1339 -)
1340 -
1341 -MULTILIB_WRAPPED_HEADERS=(
1342 - /usr/include/libavutil/avconfig.h
1343 -)
1344 -
1345 -src_prepare() {
1346 - if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
1347 - export revision=git-N-${FFMPEG_REVISION}
1348 - fi
1349 - default
1350 - echo 'include $(SRC_PATH)/ffbuild/libffmpeg.mak' >> Makefile || die
1351 -}
1352 -
1353 -multilib_src_configure() {
1354 - local myconf=( ${EXTRA_FFMPEG_CONF} )
1355 -
1356 - local ffuse=( "${FFMPEG_FLAG_MAP[@]}" )
1357 - use openssl && use gpl && myconf+=( --enable-nonfree )
1358 - use samba && myconf+=( --enable-version3 )
1359 -
1360 - # Encoders
1361 - if use encode ; then
1362 - ffuse+=( "${FFMPEG_ENCODER_FLAG_MAP[@]}" )
1363 -
1364 - # Licensing.
1365 - if use amrenc ; then
1366 - myconf+=( --enable-version3 )
1367 - fi
1368 - else
1369 - myconf+=( --disable-encoders )
1370 - fi
1371 -
1372 - # Indevs
1373 - use v4l || myconf+=( --disable-indev=v4l2 --disable-outdev=v4l2 )
1374 - for i in alsa oss jack ; do
1375 - use ${i} || myconf+=( --disable-indev=${i} )
1376 - done
1377 -
1378 - # Outdevs
1379 - for i in alsa oss sdl ; do
1380 - use ${i} || myconf+=( --disable-outdev=${i} )
1381 - done
1382 -
1383 - # Decoders
1384 - use amr && myconf+=( --enable-version3 )
1385 - use gmp && myconf+=( --enable-version3 )
1386 - use fdk && use gpl && myconf+=( --enable-nonfree )
1387 -
1388 - for i in "${ffuse[@]#+}" ; do
1389 - myconf+=( $(use_enable ${i%:*} ${i#*:}) )
1390 - done
1391 -
1392 - # (temporarily) disable non-multilib deps
1393 - if ! multilib_is_native_abi; then
1394 - for i in frei0r libzmq ; do
1395 - myconf+=( --disable-${i} )
1396 - done
1397 - fi
1398 -
1399 - # CPU features
1400 - for i in "${CPU_FEATURES_MAP[@]}" ; do
1401 - use ${i%:*} || myconf+=( --disable-${i#*:} )
1402 - done
1403 -
1404 - if use pic ; then
1405 - myconf+=( --enable-pic )
1406 - # disable asm code if PIC is required
1407 - # as the provided asm decidedly is not PIC for x86.
1408 - [[ ${ABI} == x86 ]] && myconf+=( --disable-asm )
1409 - fi
1410 - [[ ${ABI} == x32 ]] && myconf+=( --disable-asm ) #427004
1411 -
1412 - # Try to get cpu type based on CFLAGS.
1413 - # Bug #172723
1414 - # We need to do this so that features of that CPU will be better used
1415 - # If they contain an unknown CPU it will not hurt since ffmpeg's configure
1416 - # will just ignore it.
1417 - for i in $(get-flag mcpu) $(get-flag march) ; do
1418 - [[ ${i} = native ]] && i="host" # bug #273421
1419 - myconf+=( --cpu=${i} )
1420 - break
1421 - done
1422 -
1423 - # LTO support, bug #566282
1424 - is-flagq "-flto*" && myconf+=( "--enable-lto" )
1425 -
1426 - # Mandatory configuration
1427 - myconf=(
1428 - --enable-avfilter
1429 - --enable-avresample
1430 - --disable-stripping
1431 - "${myconf[@]}"
1432 - )
1433 -
1434 - # cross compile support
1435 - if tc-is-cross-compiler ; then
1436 - myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- --host-cc="$(tc-getBUILD_CC)" )
1437 - case ${CHOST} in
1438 - *freebsd*)
1439 - myconf+=( --target-os=freebsd )
1440 - ;;
1441 - *mingw32*)
1442 - myconf+=( --target-os=mingw32 )
1443 - ;;
1444 - *linux*)
1445 - myconf+=( --target-os=linux )
1446 - ;;
1447 - esac
1448 - fi
1449 -
1450 - # doc
1451 - myconf+=(
1452 - $(multilib_native_use_enable doc)
1453 - $(multilib_native_use_enable doc htmlpages)
1454 - $(multilib_native_enable manpages)
1455 - )
1456 -
1457 - set -- "${S}/configure" \
1458 - --prefix="${EPREFIX}/usr" \
1459 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
1460 - --shlibdir="${EPREFIX}/usr/$(get_libdir)" \
1461 - --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
1462 - --mandir="${EPREFIX}/usr/share/man" \
1463 - --enable-shared \
1464 - --cc="$(tc-getCC)" \
1465 - --cxx="$(tc-getCXX)" \
1466 - --ar="$(tc-getAR)" \
1467 - --optflags="${CFLAGS}" \
1468 - $(use_enable static-libs static) \
1469 - "${myconf[@]}"
1470 - echo "${@}"
1471 - "${@}" || die
1472 -
1473 - if multilib_is_native_abi && use chromium; then
1474 - einfo "Configuring for Chromium"
1475 - mkdir -p ../chromium || die
1476 - pushd ../chromium >/dev/null || die
1477 - set -- "${@}" \
1478 - --disable-shared \
1479 - --enable-static \
1480 - --enable-pic \
1481 - --extra-cflags="-DFF_API_CONVERGENCE_DURATION=0"
1482 - echo "${@}"
1483 - "${@}" || die
1484 - popd >/dev/null || die
1485 - fi
1486 -}
1487 -
1488 -multilib_src_compile() {
1489 - emake V=1
1490 -
1491 - if multilib_is_native_abi; then
1492 - for i in "${FFTOOLS[@]}" ; do
1493 - if use fftools_${i} ; then
1494 - emake V=1 tools/${i}$(get_exeext)
1495 - fi
1496 - done
1497 -
1498 - if use chromium; then
1499 - einfo "Compiling for Chromium"
1500 - pushd ../chromium >/dev/null || die
1501 - emake V=1 libffmpeg
1502 - popd >/dev/null || die
1503 - fi
1504 - fi
1505 -}
1506 -
1507 -multilib_src_install() {
1508 - emake V=1 DESTDIR="${D}" install install-doc
1509 -
1510 - if multilib_is_native_abi; then
1511 - for i in "${FFTOOLS[@]}" ; do
1512 - if use fftools_${i} ; then
1513 - dobin tools/${i}$(get_exeext)
1514 - fi
1515 - done
1516 -
1517 - if use chromium; then
1518 - einfo "Installing for Chromium"
1519 - pushd ../chromium >/dev/null || die
1520 - emake V=1 DESTDIR="${D}" install-libffmpeg
1521 - popd >/dev/null || die
1522 - fi
1523 - fi
1524 -}
1525 -
1526 -multilib_src_install_all() {
1527 - dodoc Changelog README.md CREDITS doc/*.txt doc/APIchanges
1528 - [ -f "RELEASE_NOTES" ] && dodoc "RELEASE_NOTES"
1529 -}
1530 -
1531 -multilib_src_test() {
1532 - 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" \
1533 - emake V=1 fate
1534 -}
1535
1536 diff --git a/media-video/ffmpeg/ffmpeg-4.0.ebuild b/media-video/ffmpeg/ffmpeg-4.0.ebuild
1537 deleted file mode 100644
1538 index 5e43e8e67aa..00000000000
1539 --- a/media-video/ffmpeg/ffmpeg-4.0.ebuild
1540 +++ /dev/null
1541 @@ -1,510 +0,0 @@
1542 -# Copyright 1999-2018 Gentoo Foundation
1543 -# Distributed under the terms of the GNU General Public License v2
1544 -
1545 -EAPI=6
1546 -
1547 -# Subslot: libavutil major.libavcodec major.libavformat major
1548 -# Since FFmpeg ships several libraries, subslot is kind of limited here.
1549 -# Most consumers will use those three libraries, if a "less used" library
1550 -# changes its soname, consumers will have to be rebuilt the old way
1551 -# (preserve-libs).
1552 -# If, for example, a package does not link to libavformat and only libavformat
1553 -# changes its ABI then this package will be rebuilt needlessly. Hence, such a
1554 -# package is free _not_ to := depend on FFmpeg but I would strongly encourage
1555 -# doing so since such a case is unlikely.
1556 -FFMPEG_SUBSLOT=56.58.58
1557 -
1558 -SCM=""
1559 -if [ "${PV#9999}" != "${PV}" ] ; then
1560 - SCM="git-r3"
1561 - EGIT_MIN_CLONE_TYPE="single"
1562 - EGIT_REPO_URI="https://git.ffmpeg.org/ffmpeg.git"
1563 -fi
1564 -
1565 -inherit eutils flag-o-matic multilib multilib-minimal toolchain-funcs ${SCM}
1566 -
1567 -DESCRIPTION="Complete solution to record, convert and stream audio and video. Includes libavcodec"
1568 -HOMEPAGE="http://ffmpeg.org/"
1569 -if [ "${PV#9999}" != "${PV}" ] ; then
1570 - SRC_URI=""
1571 -elif [ "${PV%_p*}" != "${PV}" ] ; then # Snapshot
1572 - SRC_URI="mirror://gentoo/${P}.tar.bz2"
1573 -else # Release
1574 - SRC_URI="http://ffmpeg.org/releases/${P/_/-}.tar.bz2"
1575 -fi
1576 -FFMPEG_REVISION="${PV#*_p}"
1577 -
1578 -SLOT="0/${FFMPEG_SUBSLOT}"
1579 -LICENSE="
1580 - !gpl? ( LGPL-2.1 )
1581 - gpl? ( GPL-2 )
1582 - amr? (
1583 - gpl? ( GPL-3 )
1584 - !gpl? ( LGPL-3 )
1585 - )
1586 - gmp? (
1587 - gpl? ( GPL-3 )
1588 - !gpl? ( LGPL-3 )
1589 - )
1590 - encode? (
1591 - amrenc? (
1592 - gpl? ( GPL-3 )
1593 - !gpl? ( LGPL-3 )
1594 - )
1595 - )
1596 - samba? ( GPL-3 )
1597 -"
1598 -if [ "${PV#9999}" = "${PV}" ] ; then
1599 - KEYWORDS="~amd64 ~hppa ~ia64 ~mips ~x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
1600 -fi
1601 -
1602 -# Options to use as use_enable in the foo[:bar] form.
1603 -# This will feed configure with $(use_enable foo bar)
1604 -# or $(use_enable foo foo) if no :bar is set.
1605 -# foo is added to IUSE.
1606 -FFMPEG_FLAG_MAP=(
1607 - +bzip2:bzlib cpudetection:runtime-cpudetect debug gcrypt gnutls gmp
1608 - +gpl +hardcoded-tables +iconv libressl:libtls lzma +network opencl
1609 - openssl +postproc samba:libsmbclient sdl:ffplay sdl:sdl2 vaapi vdpau
1610 - X:xlib xcb:libxcb xcb:libxcb-shm xcb:libxcb-xfixes +zlib
1611 - # libavdevice options
1612 - cdio:libcdio iec61883:libiec61883 ieee1394:libdc1394 libcaca openal
1613 - opengl
1614 - # indevs
1615 - libv4l:libv4l2 pulseaudio:libpulse libdrm
1616 - # decoders
1617 - amr:libopencore-amrwb amr:libopencore-amrnb codec2:libcodec2 fdk:libfdk-aac
1618 - jpeg2k:libopenjpeg bluray:libbluray celt:libcelt gme:libgme gsm:libgsm
1619 - mmal modplug:libmodplug opus:libopus libilbc librtmp ssh:libssh
1620 - speex:libspeex svg:librsvg video_cards_nvidia:ffnvcodec
1621 - vorbis:libvorbis vpx:libvpx zvbi:libzvbi
1622 - # libavfilter options
1623 - appkit
1624 - bs2b:libbs2b chromaprint flite:libflite frei0r
1625 - fribidi:libfribidi fontconfig ladspa libass lv2 truetype:libfreetype
1626 - rubberband:librubberband zeromq:libzmq zimg:libzimg
1627 - # libswresample options
1628 - libsoxr
1629 - # Threads; we only support pthread for now but ffmpeg supports more
1630 - +threads:pthreads
1631 -)
1632 -
1633 -# Same as above but for encoders, i.e. they do something only with USE=encode.
1634 -FFMPEG_ENCODER_FLAG_MAP=(
1635 - amrenc:libvo-amrwbenc mp3:libmp3lame
1636 - kvazaar:libkvazaar libaom
1637 - openh264:libopenh264 snappy:libsnappy theora:libtheora twolame:libtwolame
1638 - wavpack:libwavpack webp:libwebp x264:libx264 x265:libx265 xvid:libxvid
1639 -)
1640 -
1641 -IUSE="
1642 - alsa chromium doc +encode jack oss pic static-libs test v4l
1643 - ${FFMPEG_FLAG_MAP[@]%:*}
1644 - ${FFMPEG_ENCODER_FLAG_MAP[@]%:*}
1645 -"
1646 -
1647 -# Strings for CPU features in the useflag[:configure_option] form
1648 -# if :configure_option isn't set, it will use 'useflag' as configure option
1649 -ARM_CPU_FEATURES=(
1650 - cpu_flags_arm_thumb:armv5te
1651 - cpu_flags_arm_v6:armv6
1652 - cpu_flags_arm_thumb2:armv6t2
1653 - cpu_flags_arm_neon:neon
1654 - cpu_flags_arm_vfp:vfp
1655 - cpu_flags_arm_vfpv3:vfpv3
1656 - cpu_flags_arm_v8:armv8
1657 -)
1658 -ARM_CPU_REQUIRED_USE="
1659 - arm64? ( cpu_flags_arm_v8 )
1660 - cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 cpu_flags_arm_neon )
1661 - cpu_flags_arm_neon? ( cpu_flags_arm_thumb2 cpu_flags_arm_vfp )
1662 - cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp )
1663 - cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 )
1664 - cpu_flags_arm_v6? ( cpu_flags_arm_thumb )
1665 -"
1666 -MIPS_CPU_FEATURES=( mipsdspr1:mipsdsp mipsdspr2 mipsfpu )
1667 -PPC_CPU_FEATURES=( altivec )
1668 -X86_CPU_FEATURES_RAW=( 3dnow:amd3dnow 3dnowext:amd3dnowext aes:aesni avx:avx avx2:avx2 fma3:fma3 fma4:fma4 mmx:mmx mmxext:mmxext sse:sse sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4 sse4_2:sse42 xop:xop )
1669 -X86_CPU_FEATURES=( ${X86_CPU_FEATURES_RAW[@]/#/cpu_flags_x86_} )
1670 -X86_CPU_REQUIRED_USE="
1671 - cpu_flags_x86_avx2? ( cpu_flags_x86_avx )
1672 - cpu_flags_x86_fma4? ( cpu_flags_x86_avx )
1673 - cpu_flags_x86_fma3? ( cpu_flags_x86_avx )
1674 - cpu_flags_x86_xop? ( cpu_flags_x86_avx )
1675 - cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 )
1676 - cpu_flags_x86_aes? ( cpu_flags_x86_sse4_2 )
1677 - cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 )
1678 - cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 )
1679 - cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 )
1680 - cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 )
1681 - cpu_flags_x86_sse2? ( cpu_flags_x86_sse )
1682 - cpu_flags_x86_sse? ( cpu_flags_x86_mmxext )
1683 - cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx )
1684 - cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow )
1685 - cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx )
1686 -"
1687 -
1688 -CPU_FEATURES_MAP=(
1689 - ${ARM_CPU_FEATURES[@]}
1690 - ${MIPS_CPU_FEATURES[@]}
1691 - ${PPC_CPU_FEATURES[@]}
1692 - ${X86_CPU_FEATURES[@]}
1693 -)
1694 -IUSE="${IUSE}
1695 - ${CPU_FEATURES_MAP[@]%:*}"
1696 -
1697 -CPU_REQUIRED_USE="
1698 - ${ARM_CPU_REQUIRED_USE}
1699 - ${X86_CPU_REQUIRED_USE}
1700 -"
1701 -
1702 -FFTOOLS=( aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher )
1703 -IUSE="${IUSE} ${FFTOOLS[@]/#/+fftools_}"
1704 -
1705 -RDEPEND="
1706 - alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
1707 - amr? ( >=media-libs/opencore-amr-0.1.3-r1[${MULTILIB_USEDEP}] )
1708 - bluray? ( >=media-libs/libbluray-0.3.0-r1:=[${MULTILIB_USEDEP}] )
1709 - bs2b? ( >=media-libs/libbs2b-3.1.0-r1[${MULTILIB_USEDEP}] )
1710 - bzip2? ( >=app-arch/bzip2-1.0.6-r4[${MULTILIB_USEDEP}] )
1711 - cdio? ( >=dev-libs/libcdio-paranoia-0.90_p1-r1[${MULTILIB_USEDEP}] )
1712 - celt? ( >=media-libs/celt-0.11.1-r1[${MULTILIB_USEDEP}] )
1713 - chromaprint? ( >=media-libs/chromaprint-1.2-r1[${MULTILIB_USEDEP}] )
1714 - codec2? ( media-libs/codec2[${MULTILIB_USEDEP}] )
1715 - encode? (
1716 - amrenc? ( >=media-libs/vo-amrwbenc-0.1.2-r1[${MULTILIB_USEDEP}] )
1717 - kvazaar? ( media-libs/kvazaar[${MULTILIB_USEDEP}] )
1718 - mp3? ( >=media-sound/lame-3.99.5-r1[${MULTILIB_USEDEP}] )
1719 - openh264? ( >=media-libs/openh264-1.4.0-r1[${MULTILIB_USEDEP}] )
1720 - snappy? ( >=app-arch/snappy-1.1.2-r1:=[${MULTILIB_USEDEP}] )
1721 - theora? (
1722 - >=media-libs/libtheora-1.1.1[encode,${MULTILIB_USEDEP}]
1723 - >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
1724 - )
1725 - twolame? ( >=media-sound/twolame-0.3.13-r1[${MULTILIB_USEDEP}] )
1726 - wavpack? ( >=media-sound/wavpack-4.60.1-r1[${MULTILIB_USEDEP}] )
1727 - webp? ( >=media-libs/libwebp-0.3.0:=[${MULTILIB_USEDEP}] )
1728 - x264? ( >=media-libs/x264-0.0.20130506:=[${MULTILIB_USEDEP}] )
1729 - x265? ( >=media-libs/x265-1.6:=[${MULTILIB_USEDEP}] )
1730 - xvid? ( >=media-libs/xvid-1.3.2-r1[${MULTILIB_USEDEP}] )
1731 - )
1732 - fdk? ( >=media-libs/fdk-aac-0.1.3:=[${MULTILIB_USEDEP}] )
1733 - flite? ( >=app-accessibility/flite-1.4-r4[${MULTILIB_USEDEP}] )
1734 - fontconfig? ( >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] )
1735 - frei0r? ( media-plugins/frei0r-plugins )
1736 - fribidi? ( >=dev-libs/fribidi-0.19.6[${MULTILIB_USEDEP}] )
1737 - gcrypt? ( >=dev-libs/libgcrypt-1.6:0=[${MULTILIB_USEDEP}] )
1738 - gme? ( >=media-libs/game-music-emu-0.6.0[${MULTILIB_USEDEP}] )
1739 - gmp? ( >=dev-libs/gmp-6:0=[${MULTILIB_USEDEP}] )
1740 - gsm? ( >=media-sound/gsm-1.0.13-r1[${MULTILIB_USEDEP}] )
1741 - iconv? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] )
1742 - iec61883? (
1743 - >=media-libs/libiec61883-1.2.0-r1[${MULTILIB_USEDEP}]
1744 - >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
1745 - >=sys-libs/libavc1394-0.5.4-r1[${MULTILIB_USEDEP}]
1746 - )
1747 - ieee1394? (
1748 - >=media-libs/libdc1394-2.2.1[${MULTILIB_USEDEP}]
1749 - >=sys-libs/libraw1394-2.1.0-r1[${MULTILIB_USEDEP}]
1750 - )
1751 - jack? ( virtual/jack[${MULTILIB_USEDEP}] )
1752 - jpeg2k? ( >=media-libs/openjpeg-2:2[${MULTILIB_USEDEP}] )
1753 - libaom? ( media-libs/libaom[${MULTILIB_USEDEP}] )
1754 - libass? ( >=media-libs/libass-0.10.2:=[${MULTILIB_USEDEP}] )
1755 - libcaca? ( >=media-libs/libcaca-0.99_beta18-r1[${MULTILIB_USEDEP}] )
1756 - libdrm? ( x11-libs/libdrm[${MULTILIB_USEDEP}] )
1757 - libilbc? ( >=media-libs/libilbc-2[${MULTILIB_USEDEP}] )
1758 - libsoxr? ( >=media-libs/soxr-0.1.0[${MULTILIB_USEDEP}] )
1759 - libv4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] )
1760 - lv2? ( media-libs/lv2[${MULTILIB_USEDEP}] media-libs/lilv[${MULTILIB_USEDEP}] )
1761 - lzma? ( >=app-arch/xz-utils-5.0.5-r1[${MULTILIB_USEDEP}] )
1762 - mmal? ( media-libs/raspberrypi-userland )
1763 - modplug? ( >=media-libs/libmodplug-0.8.8.4-r1[${MULTILIB_USEDEP}] )
1764 - openal? ( >=media-libs/openal-1.15.1[${MULTILIB_USEDEP}] )
1765 - opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
1766 - opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] )
1767 - opus? ( >=media-libs/opus-1.0.2-r2[${MULTILIB_USEDEP}] )
1768 - pulseaudio? ( >=media-sound/pulseaudio-2.1-r1[${MULTILIB_USEDEP}] )
1769 - librtmp? ( >=media-video/rtmpdump-2.4_p20131018[${MULTILIB_USEDEP}] )
1770 - rubberband? ( >=media-libs/rubberband-1.8.1-r1[${MULTILIB_USEDEP}] )
1771 - samba? ( >=net-fs/samba-3.6.23-r1[${MULTILIB_USEDEP}] )
1772 - sdl? ( media-libs/libsdl2[sound,video,${MULTILIB_USEDEP}] )
1773 - speex? ( >=media-libs/speex-1.2_rc1-r1[${MULTILIB_USEDEP}] )
1774 - ssh? ( >=net-libs/libssh-0.5.5[${MULTILIB_USEDEP}] )
1775 - svg? ( gnome-base/librsvg:2=[${MULTILIB_USEDEP}] )
1776 - truetype? ( >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}] )
1777 - vaapi? ( >=x11-libs/libva-1.2.1-r1[${MULTILIB_USEDEP}] )
1778 - video_cards_nvidia? ( media-libs/nv-codec-headers[${MULTILIB_USEDEP}] )
1779 - vdpau? ( >=x11-libs/libvdpau-0.7[${MULTILIB_USEDEP}] )
1780 - vorbis? (
1781 - >=media-libs/libvorbis-1.3.3-r1[${MULTILIB_USEDEP}]
1782 - >=media-libs/libogg-1.3.0[${MULTILIB_USEDEP}]
1783 - )
1784 - vpx? ( >=media-libs/libvpx-1.4.0:=[${MULTILIB_USEDEP}] )
1785 - X? (
1786 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
1787 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
1788 - >=x11-libs/libXv-1.0.10[${MULTILIB_USEDEP}]
1789 - )
1790 - xcb? ( >=x11-libs/libxcb-1.4[${MULTILIB_USEDEP}] )
1791 - zeromq? ( >=net-libs/zeromq-4.1.6 )
1792 - zimg? ( >=media-libs/zimg-2.7.4:=[${MULTILIB_USEDEP}] )
1793 - zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
1794 - zvbi? ( >=media-libs/zvbi-0.2.35[${MULTILIB_USEDEP}] )
1795 - !media-video/qt-faststart
1796 - postproc? ( !media-libs/libpostproc )
1797 -"
1798 -
1799 -# Crypto & co provider magic
1800 -# - libressl is a useflag meaning it should always favor libressl over openssl
1801 -# - libressl and openssl provide more features to ffmpeg than gnutls
1802 -#
1803 -# The ordering is thus: libressl > openssl > gnutls
1804 -RDEPEND="${RDEPEND}
1805 - libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
1806 - !libressl? (
1807 - openssl? ( >=dev-libs/openssl-1.0.1h-r2:0[${MULTILIB_USEDEP}] )
1808 - !openssl? ( gnutls? ( >=net-libs/gnutls-2.12.23-r6:=[${MULTILIB_USEDEP}] ) )
1809 - )
1810 -"
1811 -
1812 -DEPEND="${RDEPEND}
1813 - >=sys-devel/make-3.81
1814 - doc? ( sys-apps/texinfo )
1815 - >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
1816 - ladspa? ( >=media-libs/ladspa-sdk-1.13-r2[${MULTILIB_USEDEP}] )
1817 - cpu_flags_x86_mmx? ( || ( >=dev-lang/nasm-2.13 >=dev-lang/yasm-1.3 ) )
1818 - test? ( net-misc/wget sys-devel/bc )
1819 - v4l? ( sys-kernel/linux-headers )
1820 -"
1821 -
1822 -# Code requiring FFmpeg to be built under gpl license
1823 -GPL_REQUIRED_USE="
1824 - postproc? ( gpl )
1825 - frei0r? ( gpl )
1826 - cdio? ( gpl )
1827 - samba? ( gpl )
1828 - encode? (
1829 - x264? ( gpl )
1830 - x265? ( gpl )
1831 - xvid? ( gpl )
1832 - X? ( !xcb? ( gpl ) )
1833 - )
1834 -"
1835 -REQUIRED_USE="
1836 - libv4l? ( v4l )
1837 - fftools_cws2fws? ( zlib )
1838 - test? ( encode )
1839 - ${GPL_REQUIRED_USE}
1840 - ${CPU_REQUIRED_USE}"
1841 -RESTRICT="
1842 - gpl? ( openssl? ( bindist ) fdk? ( bindist ) libressl? ( bindist ) )
1843 -"
1844 -
1845 -S=${WORKDIR}/${P/_/-}
1846 -
1847 -PATCHES=(
1848 - "${FILESDIR}"/chromium-r1.patch
1849 -)
1850 -
1851 -MULTILIB_WRAPPED_HEADERS=(
1852 - /usr/include/libavutil/avconfig.h
1853 -)
1854 -
1855 -src_prepare() {
1856 - if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
1857 - export revision=git-N-${FFMPEG_REVISION}
1858 - fi
1859 - default
1860 - echo 'include $(SRC_PATH)/ffbuild/libffmpeg.mak' >> Makefile || die
1861 -}
1862 -
1863 -multilib_src_configure() {
1864 - local myconf=( ${EXTRA_FFMPEG_CONF} )
1865 -
1866 - local ffuse=( "${FFMPEG_FLAG_MAP[@]}" )
1867 - use openssl || use libressl && use gpl && myconf+=( --enable-nonfree )
1868 - use samba && myconf+=( --enable-version3 )
1869 -
1870 - # Encoders
1871 - if use encode ; then
1872 - ffuse+=( "${FFMPEG_ENCODER_FLAG_MAP[@]}" )
1873 -
1874 - # Licensing.
1875 - if use amrenc ; then
1876 - myconf+=( --enable-version3 )
1877 - fi
1878 - else
1879 - myconf+=( --disable-encoders )
1880 - fi
1881 -
1882 - # Indevs
1883 - use v4l || myconf+=( --disable-indev=v4l2 --disable-outdev=v4l2 )
1884 - for i in alsa oss jack ; do
1885 - use ${i} || myconf+=( --disable-indev=${i} )
1886 - done
1887 -
1888 - # Outdevs
1889 - for i in alsa oss sdl ; do
1890 - use ${i} || myconf+=( --disable-outdev=${i} )
1891 - done
1892 -
1893 - # Decoders
1894 - use amr && myconf+=( --enable-version3 )
1895 - use gmp && myconf+=( --enable-version3 )
1896 - use fdk && use gpl && myconf+=( --enable-nonfree )
1897 -
1898 - for i in "${ffuse[@]#+}" ; do
1899 - myconf+=( $(use_enable ${i%:*} ${i#*:}) )
1900 - done
1901 -
1902 - # Incompatible features: openssl or libressl and gnutls
1903 - if use libressl ; then
1904 - myconf+=( --disable-gnutls --disable-openssl )
1905 - elif use openssl ; then
1906 - myconf+=( --disable-gnutls )
1907 - fi
1908 -
1909 - # (temporarily) disable non-multilib deps
1910 - if ! multilib_is_native_abi; then
1911 - for i in frei0r libzmq ; do
1912 - myconf+=( --disable-${i} )
1913 - done
1914 - fi
1915 -
1916 - # CPU features
1917 - for i in "${CPU_FEATURES_MAP[@]}" ; do
1918 - use ${i%:*} || myconf+=( --disable-${i#*:} )
1919 - done
1920 -
1921 - if use pic ; then
1922 - myconf+=( --enable-pic )
1923 - # disable asm code if PIC is required
1924 - # as the provided asm decidedly is not PIC for x86.
1925 - [[ ${ABI} == x86 ]] && myconf+=( --disable-asm )
1926 - fi
1927 - [[ ${ABI} == x32 ]] && myconf+=( --disable-asm ) #427004
1928 -
1929 - # Try to get cpu type based on CFLAGS.
1930 - # Bug #172723
1931 - # We need to do this so that features of that CPU will be better used
1932 - # If they contain an unknown CPU it will not hurt since ffmpeg's configure
1933 - # will just ignore it.
1934 - for i in $(get-flag mcpu) $(get-flag march) ; do
1935 - [[ ${i} = native ]] && i="host" # bug #273421
1936 - myconf+=( --cpu=${i} )
1937 - break
1938 - done
1939 -
1940 - # LTO support, bug #566282
1941 - is-flagq "-flto*" && myconf+=( "--enable-lto" )
1942 -
1943 - # Mandatory configuration
1944 - myconf=(
1945 - --enable-avfilter
1946 - --enable-avresample
1947 - --disable-stripping
1948 - "${myconf[@]}"
1949 - )
1950 -
1951 - # cross compile support
1952 - if tc-is-cross-compiler ; then
1953 - myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- --host-cc="$(tc-getBUILD_CC)" )
1954 - case ${CHOST} in
1955 - *freebsd*)
1956 - myconf+=( --target-os=freebsd )
1957 - ;;
1958 - *mingw32*)
1959 - myconf+=( --target-os=mingw32 )
1960 - ;;
1961 - *linux*)
1962 - myconf+=( --target-os=linux )
1963 - ;;
1964 - esac
1965 - fi
1966 -
1967 - # doc
1968 - myconf+=(
1969 - $(multilib_native_use_enable doc)
1970 - $(multilib_native_use_enable doc htmlpages)
1971 - $(multilib_native_enable manpages)
1972 - )
1973 -
1974 - set -- "${S}/configure" \
1975 - --prefix="${EPREFIX}/usr" \
1976 - --libdir="${EPREFIX}/usr/$(get_libdir)" \
1977 - --shlibdir="${EPREFIX}/usr/$(get_libdir)" \
1978 - --docdir="${EPREFIX}/usr/share/doc/${PF}/html" \
1979 - --mandir="${EPREFIX}/usr/share/man" \
1980 - --enable-shared \
1981 - --cc="$(tc-getCC)" \
1982 - --cxx="$(tc-getCXX)" \
1983 - --ar="$(tc-getAR)" \
1984 - --optflags="${CFLAGS}" \
1985 - $(use_enable static-libs static) \
1986 - "${myconf[@]}"
1987 - echo "${@}"
1988 - "${@}" || die
1989 -
1990 - if multilib_is_native_abi && use chromium; then
1991 - einfo "Configuring for Chromium"
1992 - mkdir -p ../chromium || die
1993 - pushd ../chromium >/dev/null || die
1994 - set -- "${@}" \
1995 - --disable-shared \
1996 - --enable-static \
1997 - --enable-pic \
1998 - --extra-cflags="-DFF_API_CONVERGENCE_DURATION=0"
1999 - echo "${@}"
2000 - "${@}" || die
2001 - popd >/dev/null || die
2002 - fi
2003 -}
2004 -
2005 -multilib_src_compile() {
2006 - emake V=1
2007 -
2008 - if multilib_is_native_abi; then
2009 - for i in "${FFTOOLS[@]}" ; do
2010 - if use fftools_${i} ; then
2011 - emake V=1 tools/${i}$(get_exeext)
2012 - fi
2013 - done
2014 -
2015 - if use chromium; then
2016 - einfo "Compiling for Chromium"
2017 - pushd ../chromium >/dev/null || die
2018 - emake V=1 libffmpeg
2019 - popd >/dev/null || die
2020 - fi
2021 - fi
2022 -}
2023 -
2024 -multilib_src_install() {
2025 - emake V=1 DESTDIR="${D}" install install-doc
2026 -
2027 - if multilib_is_native_abi; then
2028 - for i in "${FFTOOLS[@]}" ; do
2029 - if use fftools_${i} ; then
2030 - dobin tools/${i}$(get_exeext)
2031 - fi
2032 - done
2033 -
2034 - if use chromium; then
2035 - einfo "Installing for Chromium"
2036 - pushd ../chromium >/dev/null || die
2037 - emake V=1 DESTDIR="${D}" install-libffmpeg
2038 - popd >/dev/null || die
2039 - fi
2040 - fi
2041 -}
2042 -
2043 -multilib_src_install_all() {
2044 - dodoc Changelog README.md CREDITS doc/*.txt doc/APIchanges
2045 - [ -f "RELEASE_NOTES" ] && dodoc "RELEASE_NOTES"
2046 -}
2047 -
2048 -multilib_src_test() {
2049 - 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" \
2050 - emake V=1 fate
2051 -}