Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/mpv/
Date: Sat, 28 Jul 2018 08:53:44
Message-Id: 1532768010.d13420670629fdf96e50ac3de0b7ccc5bb0441d2.mgorny@gentoo
1 commit: d13420670629fdf96e50ac3de0b7ccc5bb0441d2
2 Author: Ilya Tumaykin <itumaykin <AT> gmail <DOT> com>
3 AuthorDate: Mon Jul 23 15:51:05 2018 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Sat Jul 28 08:53:30 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1342067
7
8 media-video/mpv: verbump to 0.29.0
9
10 Package-Manager: Portage-2.3.43, Repoman-2.3.10
11 Closes: https://github.com/gentoo/gentoo/pull/9328
12
13 media-video/mpv/Manifest | 1 +
14 media-video/mpv/mpv-0.29.0.ebuild | 362 ++++++++++++++++++++++++++++++++++++++
15 2 files changed, 363 insertions(+)
16
17 diff --git a/media-video/mpv/Manifest b/media-video/mpv/Manifest
18 index 5ed22869d84..ad264f4ceaf 100644
19 --- a/media-video/mpv/Manifest
20 +++ b/media-video/mpv/Manifest
21 @@ -1,5 +1,6 @@
22 DIST mpv-0.27.2-patches-r0.tar.xz 6564 BLAKE2B c02efea40e0b19d60eaa49520988464fbf4c9221108cbf19021934dc0cb0a975dab148ec1ea03753d81b8035173e3e5bd74b262ab5675d9fc5dce4a0f75ea37c SHA512 d1c955c32082338f5c7f1cd8268471ca0ac6dcd817c5fe39fb82f0e8bd3babf6f2f954d4ce52e9be786e5527df75cc6f4f3de8106a3517c8a1d8e39be1b4ebbd
23 DIST mpv-0.27.2.tar.gz 2957191 BLAKE2B 35e316e5a30869ae44ff229e99ae11a88e2f7d55b55946bfb752d5ed2d8212885c0c2abb59c9ff6d23a72daee47d80f44511313d67ee6fb265e6681ba4b89ee1 SHA512 bf74a150b3732b8c233362e0902c54f85fbea9ca1765a2a8f946a6eecd9b37a72ede36a36d0dd98a770539c4f81fe24c8ce26be9db7cd6eddd8514a8f82d9cda
24 DIST mpv-0.28.2.tar.gz 2982558 BLAKE2B 5faef4122d456916f43bd603192fc72dee1ad16fa3c842d54a2e53dc8f9db416545549a86af62481fe211dc088821ab13b832c09f82572b36167dd3a73d57f62 SHA512 e6206e8c65dca084e2cfa73ab09278b7113cdfd90b89877d1f75a1068c6379a093ea3955a023857357683edce1aba8c12ee441fd195d887af4d939fc7b66cef4
25 +DIST mpv-0.29.0.tar.gz 3057997 BLAKE2B 6d72d0f4e10fd4a1b7af624c95dda69035ed3b500788ad84dc7837a62cd1debdd57ebef2fdac9795ccd0d29feef91af6e8aa942bb49ef996c1a4b00f6080af85 SHA512 77204218bd217ae1da4812b09e0509965a3ef102d3de5cd4360f007ccf3779e4cbde5cfd6adae9629ea39062bd365e847429bdf7f9a1ddebd0a67d267492b221
26 DIST waf-1.9.8 100685 BLAKE2B b335115b7ba5af4f8f49fc4da7967fa20e0633bfc7de7ad28fdb58dfcf7ae9c7833d053d298280e26e94b18af70a66fc13d08adf1fc7f9ad9b81e70d95cc74fc SHA512 e7493767f65deeb38aa162adef22adf60ebbd038410e9cdf4fe6f0de8c43395dbbba14962aa2c3855e1277136085fc22ad12ebfb8ac4e76f16358296039b8ea2
27 DIST waf-2.0.9 103104 BLAKE2B c7e996aa49662da3ff941d076fc7e2dd23e867ade92a3b2ae07560b76d63a69e495184a1f9c76be5c51977ddb1713f9247f62e672033ecb988ac559e3a47e546 SHA512 0755170ded115b03e78a2096f197cd9fff62b5036db764153d26ce426f182ea7d7b8231cfa1a10b4a564a8480428502f3691851df66e7b83c7bca8e5fe26de7d
28
29 diff --git a/media-video/mpv/mpv-0.29.0.ebuild b/media-video/mpv/mpv-0.29.0.ebuild
30 new file mode 100644
31 index 00000000000..eae5391d95d
32 --- /dev/null
33 +++ b/media-video/mpv/mpv-0.29.0.ebuild
34 @@ -0,0 +1,362 @@
35 +# Copyright 1999-2018 Gentoo Foundation
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=6
39 +
40 +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6,3_7} )
41 +PYTHON_REQ_USE='threads(+)'
42 +
43 +WAF_PV=2.0.9
44 +
45 +inherit eapi7-ver flag-o-matic gnome2-utils pax-utils python-r1 toolchain-funcs waf-utils xdg-utils
46 +
47 +DESCRIPTION="Media player based on MPlayer and mplayer2"
48 +HOMEPAGE="https://mpv.io/"
49 +
50 +if [[ ${PV} != *9999* ]]; then
51 + SRC_URI="https://github.com/mpv-player/mpv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
52 + KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux"
53 + DOCS=( RELEASE_NOTES )
54 +else
55 + EGIT_REPO_URI="https://github.com/mpv-player/mpv.git"
56 + inherit git-r3
57 + DOCS=(); SRC_URI=""
58 +fi
59 +SRC_URI+=" https://waf.io/waf-${WAF_PV}"
60 +DOCS+=( README.md DOCS/{client-api,interface}-changes.rst )
61 +
62 +# See Copyright in sources and Gentoo bug 506946. Waf is BSD, libmpv is ISC.
63 +LICENSE="LGPL-2.1+ GPL-2+ BSD ISC samba? ( GPL-3+ )"
64 +SLOT="0"
65 +IUSE="+alsa aqua archive bluray cdda +cli coreaudio cplugins cuda doc drm dvb
66 + dvd +egl gbm +iconv jack javascript jpeg lcms +libass libcaca libmpv +lua
67 + luajit openal +opengl oss pulseaudio raspberry-pi rubberband samba sdl
68 + selinux test tools +uchardet v4l vaapi vdpau vulkan wayland +X +xv zlib
69 + zsh-completion"
70 +
71 +REQUIRED_USE="
72 + || ( cli libmpv )
73 + aqua? ( opengl )
74 + cuda? ( opengl )
75 + egl? ( || ( gbm X wayland ) )
76 + gbm? ( drm egl opengl )
77 + lcms? ( opengl )
78 + luajit? ( lua )
79 + opengl? ( || ( aqua egl X raspberry-pi !cli ) )
80 + raspberry-pi? ( opengl )
81 + test? ( opengl )
82 + tools? ( cli )
83 + uchardet? ( iconv )
84 + v4l? ( || ( alsa oss ) )
85 + vaapi? ( || ( gbm X wayland ) )
86 + vdpau? ( X )
87 + vulkan? ( || ( X wayland ) )
88 + wayland? ( egl )
89 + X? ( egl? ( opengl ) )
90 + xv? ( X )
91 + zsh-completion? ( cli )
92 + ${PYTHON_REQUIRED_USE}
93 +"
94 +
95 +COMMON_DEPEND="
96 + >=media-video/ffmpeg-4.0:0=[encode,threads,vaapi?,vdpau?]
97 + alsa? ( >=media-libs/alsa-lib-1.0.18 )
98 + archive? ( >=app-arch/libarchive-3.0.0:= )
99 + bluray? ( >=media-libs/libbluray-0.3.0:= )
100 + cdda? ( dev-libs/libcdio-paranoia )
101 + drm? ( x11-libs/libdrm )
102 + dvd? (
103 + >=media-libs/libdvdnav-4.2.0
104 + >=media-libs/libdvdread-4.1.0
105 + )
106 + egl? ( media-libs/mesa[egl,gbm(-)?,wayland(-)?] )
107 + iconv? (
108 + virtual/libiconv
109 + uchardet? ( app-i18n/uchardet )
110 + )
111 + jack? ( virtual/jack )
112 + javascript? ( >=dev-lang/mujs-1.0.0 )
113 + jpeg? ( virtual/jpeg:0 )
114 + lcms? ( >=media-libs/lcms-2.6:2 )
115 + libass? (
116 + >=media-libs/libass-0.12.1:=[fontconfig,harfbuzz]
117 + virtual/ttf-fonts
118 + )
119 + libcaca? ( >=media-libs/libcaca-0.99_beta18 )
120 + lua? (
121 + !luajit? ( <dev-lang/lua-5.3:= )
122 + luajit? ( dev-lang/luajit:2 )
123 + )
124 + openal? ( >=media-libs/openal-1.13 )
125 + pulseaudio? ( media-sound/pulseaudio )
126 + raspberry-pi? ( >=media-libs/raspberrypi-userland-0_pre20160305-r1 )
127 + rubberband? ( >=media-libs/rubberband-1.8.0 )
128 + samba? ( net-fs/samba )
129 + sdl? ( media-libs/libsdl2[sound,threads,video] )
130 + v4l? ( media-libs/libv4l )
131 + vaapi? ( x11-libs/libva:=[drm?,X?,wayland?] )
132 + vdpau? ( x11-libs/libvdpau )
133 + vulkan? (
134 + media-libs/shaderc
135 + media-libs/vulkan-loader[X?,wayland?]
136 + )
137 + wayland? (
138 + >=dev-libs/wayland-1.6.0
139 + >=dev-libs/wayland-protocols-1.14
140 + >=x11-libs/libxkbcommon-0.3.0
141 + )
142 + X? (
143 + x11-libs/libX11
144 + x11-libs/libXScrnSaver
145 + x11-libs/libXext
146 + x11-libs/libXinerama
147 + x11-libs/libXrandr
148 + opengl? (
149 + x11-libs/libXdamage
150 + virtual/opengl
151 + )
152 + xv? ( x11-libs/libXv )
153 + )
154 + zlib? ( sys-libs/zlib )
155 +"
156 +DEPEND="${COMMON_DEPEND}
157 + ${PYTHON_DEPS}
158 + dev-python/docutils
159 + virtual/pkgconfig
160 + cuda? ( >=media-libs/nv-codec-headers-8.1.24.1 )
161 + doc? ( dev-python/rst2pdf )
162 + dvb? ( virtual/linuxtv-dvb-headers )
163 + test? ( >=dev-util/cmocka-1.0.0 )
164 + v4l? ( virtual/os-headers )
165 + zsh-completion? ( dev-lang/perl )
166 +"
167 +RDEPEND="${COMMON_DEPEND}
168 + cuda? ( x11-drivers/nvidia-drivers[X] )
169 + selinux? ( sec-policy/selinux-mplayer )
170 + tools? ( ${PYTHON_DEPS} )
171 +"
172 +
173 +PATCHES=(
174 + "${FILESDIR}/${P}-make-ffmpeg-version-check-non-fatal.patch"
175 +)
176 +
177 +src_prepare() {
178 + cp "${DISTDIR}/waf-${WAF_PV}" "${S}"/waf || die
179 + chmod +x "${S}"/waf || die
180 + default_src_prepare
181 +}
182 +
183 +src_configure() {
184 + python_setup
185 + tc-export CC PKG_CONFIG AR
186 +
187 + if use raspberry-pi; then
188 + append-cflags -I"${SYSROOT%/}${EPREFIX}/opt/vc/include"
189 + append-ldflags -L"${SYSROOT%/}${EPREFIX}/opt/vc/lib"
190 + fi
191 +
192 + # Prevent access violations from zsh completion generation.
193 + # See Gentoo bug 656086.
194 + use zsh-completion && addpredict /dev/dri
195 +
196 + local mywafargs=(
197 + --confdir="${EPREFIX}/etc/${PN}"
198 + --docdir="${EPREFIX}/usr/share/doc/${PF}"
199 + --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
200 +
201 + $(usex cli '' '--disable-cplayer')
202 + $(use_enable libmpv libmpv-shared)
203 +
204 + --disable-libmpv-static
205 + --disable-static-build
206 + # See deep down below for build-date.
207 + --disable-optimize # Don't add '-O2' to CFLAGS.
208 + --disable-debug-build # Don't add '-g' to CFLAGS.
209 + --enable-html-build
210 +
211 + $(use_enable doc pdf-build)
212 + $(use_enable cplugins)
213 + $(use_enable zsh-completion zsh-comp)
214 + $(use_enable test)
215 +
216 + --disable-android
217 + $(use_enable iconv)
218 + $(use_enable samba libsmbclient)
219 + $(use_enable lua)
220 + $(usex luajit '--lua=luajit' '')
221 + $(use_enable javascript)
222 + $(use_enable libass)
223 + $(use_enable libass libass-osd)
224 + $(use_enable zlib)
225 + $(use_enable bluray libbluray)
226 + $(use_enable dvd dvdread)
227 + $(use_enable dvd dvdnav)
228 + $(use_enable cdda)
229 + $(use_enable uchardet)
230 + $(use_enable rubberband)
231 + $(use_enable lcms lcms2)
232 + --disable-vapoursynth # Only available in overlays.
233 + --disable-vapoursynth-lazy
234 + $(use_enable archive libarchive)
235 +
236 + --enable-libavdevice
237 +
238 + # Audio outputs:
239 + $(use_enable sdl sdl2) # Listed under audio, but also includes video.
240 + $(use_enable oss oss-audio)
241 + --disable-rsound # Only available in overlays.
242 + --disable-sndio # Only available in overlays.
243 + $(use_enable pulseaudio pulse)
244 + $(use_enable jack)
245 + $(use_enable openal)
246 + --disable-opensles
247 + $(use_enable alsa)
248 + $(use_enable coreaudio)
249 +
250 + # Video outputs:
251 + $(use_enable aqua cocoa)
252 + $(use_enable drm)
253 + $(use_enable gbm)
254 + $(use_enable wayland wayland-scanner)
255 + $(use_enable wayland wayland-protocols)
256 + $(use_enable wayland)
257 + $(use_enable X x11)
258 + $(use_enable xv)
259 + $(usex opengl "$(use_enable aqua gl-cocoa)" '--disable-gl-cocoa')
260 + $(usex opengl "$(use_enable X gl-x11)" '--disable-gl-x11')
261 + $(usex egl "$(use_enable X egl-x11)" '--disable-egl-x11')
262 + $(usex egl "$(use_enable gbm egl-drm)" '--disable-egl-drm')
263 + $(usex opengl "$(use_enable wayland gl-wayland)" '--disable-gl-wayland')
264 + $(use_enable vdpau)
265 + $(usex vdpau "$(use_enable opengl vdpau-gl-x11)" '--disable-vdpau-gl-x11')
266 + $(use_enable vaapi) # See below for vaapi-glx, vaapi-x-egl.
267 + $(usex vaapi "$(use_enable X vaapi-x11)" '--disable-vaapi-x11')
268 + $(usex vaapi "$(use_enable wayland vaapi-wayland)" '--disable-vaapi-wayland')
269 + $(usex vaapi "$(use_enable gbm vaapi-drm)" '--disable-vaapi-drm')
270 + $(use_enable libcaca caca)
271 + $(use_enable jpeg)
272 + $(use_enable vulkan shaderc)
273 + $(use_enable raspberry-pi rpi)
274 + $(usex libmpv "$(use_enable opengl plain-gl)" '--disable-plain-gl')
275 + --disable-mali-fbdev # Only available in overlays.
276 + $(usex opengl '' '--disable-gl')
277 + $(use_enable vulkan)
278 +
279 + # HWaccels:
280 + # Automagic Video Toolbox HW acceleration. See Gentoo bug 577332.
281 + $(use_enable cuda cuda-hwaccel)
282 +
283 + # TV features:
284 + $(use_enable v4l tv)
285 + $(use_enable v4l tv-v4l2)
286 + $(use_enable v4l libv4l2)
287 + $(use_enable v4l audio-input)
288 + $(use_enable dvb dvbin)
289 +
290 + # Miscellaneous features:
291 + --disable-apple-remote # Needs testing first. See Gentoo bug 577332.
292 + )
293 +
294 + if use vaapi && use X; then
295 + mywafargs+=(
296 + $(use_enable opengl vaapi-glx)
297 + $(use_enable egl vaapi-x-egl)
298 + )
299 + fi
300 +
301 + # Create reproducible non-live builds.
302 + [[ ${PV} != *9999* ]] && mywafargs+=(--disable-build-date)
303 +
304 + waf-utils_src_configure "${mywafargs[@]}"
305 +}
306 +
307 +src_install() {
308 + waf-utils_src_install
309 +
310 + if use lua; then
311 + insinto /usr/share/${PN}
312 + doins -r TOOLS/lua
313 + fi
314 +
315 + if use cli && use luajit; then
316 + pax-mark -m "${ED}"usr/bin/${PN}
317 + fi
318 +
319 + if use tools; then
320 + dobin TOOLS/{mpv_identify.sh,umpv}
321 + newbin TOOLS/idet.sh mpv_idet.sh
322 + python_replicate_script "${ED}"usr/bin/umpv
323 + fi
324 +}
325 +
326 +pkg_postinst() {
327 + local rv softvol_0_18_1=0 osc_0_21_0=0 txtsubs_0_24_0=0 opengl_0_25_0=0
328 +
329 + for rv in ${REPLACING_VERSIONS}; do
330 + ver_test ${rv} -lt 0.18.1 && softvol_0_18_1=1
331 + ver_test ${rv} -lt 0.21.0 && osc_0_21_0=1
332 + ver_test ${rv} -lt 0.24.0 && txtsubs_0_24_0=1
333 + ver_test ${rv} -lt 0.25.0 && ! use opengl && opengl_0_25_0=1
334 + done
335 +
336 + if [[ ${softvol_0_18_1} -eq 1 ]]; then
337 + elog "Since version 0.18.1 the software volume control is always enabled."
338 + elog "This means that volume controls don't change the system volume,"
339 + elog "e.g. per-application volume with PulseAudio."
340 + elog "If you want to restore the previous behaviour, please refer to"
341 + elog
342 + elog "https://wiki.gentoo.org/wiki/Mpv#Volume_in_0.18.1"
343 + elog
344 + fi
345 +
346 + if [[ ${osc_0_21_0} -eq 1 ]]; then
347 + elog "In version 0.21.0 the default OSC layout was changed."
348 + elog "If you want to restore the previous layout, please refer to"
349 + elog
350 + elog "https://wiki.gentoo.org/wiki/Mpv#OSC_in_0.21.0"
351 + elog
352 + fi
353 +
354 + if [[ ${txtsubs_0_24_0} -eq 1 ]]; then
355 + elog "Since version 0.24.0 subtitles with .txt extension aren't autoloaded."
356 + elog "If you want to restore the previous behaviour, please refer to"
357 + elog
358 + elog "https://wiki.gentoo.org/wiki/Mpv#Subtitles_with_.txt_extension_in_0.24.0"
359 + elog
360 + fi
361 +
362 + if [[ ${opengl_0_25_0} -eq 1 ]]; then
363 + elog "Since version 0.25.0 the 'opengl' USE flag is mapped to"
364 + elog "the 'opengl' video output and no longer explicitly requires"
365 + elog "X11 or Mac OS Aqua. Consider enabling the 'opengl' USE flag."
366 + fi
367 +
368 + if use cli && ! has_version 'app-shells/mpv-bash-completion'; then
369 + elog "If you want to have command-line completion via bash-completion,"
370 + elog "please install app-shells/mpv-bash-completion."
371 + fi
372 +
373 + if use cli && [[ -n ${REPLACING_VERSIONS} ]] &&
374 + has_version 'app-shells/mpv-bash-completion'; then
375 + elog "If command-line completion doesn't work after mpv update,"
376 + elog "please rebuild app-shells/mpv-bash-completion."
377 + fi
378 +
379 + gnome2_icon_cache_update
380 + xdg_desktop_database_update
381 +}
382 +
383 +pkg_postrm() {
384 + gnome2_icon_cache_update
385 + xdg_desktop_database_update
386 +}
387 +
388 +src_test() {
389 + cd "${S}"/build/test || die
390 + local test
391 + for test in *; do
392 + if [[ -x ${test} ]]; then
393 + ./"${test}" || die "Test suite failed"
394 + fi
395 + done
396 +}