<pre style='margin:0'>
Zhenfu Shi (i0ntempest) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/6f197481ab77acb1ecd89a233bcea737c7266665">https://github.com/macports/macports-ports/commit/6f197481ab77acb1ecd89a233bcea737c7266665</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 6f197481ab77acb1ecd89a233bcea737c7266665
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Sun Dec 24 22:20:46 2023 +0800
<span style='display:block; white-space:pre;color:#404040;'> mpv-legacy: version of mpv for pre-Catalina systems
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes: https://trac.macports.org/ticket/67903
</span>---
multimedia/mpv-legacy/Portfile | 598 +++++++++++++++++++++
multimedia/mpv-legacy/files/config-maintainer | 22 +
...pple_utils.c-should-be-included-for-Darwin.diff | 50 ++
...o_out_ao_coreaudio_exclusive.c-compile-fix.diff | 11 +
...udio_utils.c-add-missing-header-for-getpid.diff | 10 +
.../mpv-legacy/files/patch-misc-add-strnlen.diff | 43 ++
.../files/patch-misc-import-CoreVideo.diff | 20 +
...t_opengl_common.c-hide-GL3-timer-functions.diff | 18 +
...deo_out_opengl_common.c-hide-GL320-section.diff | 18 +
...-video_out_opengl_common.h-guard-GL3-stuff.diff | 29 +
...eo_out_opengl_video.c-fix-compile-warnings.diff | 38 ++
...out_opengl_video.c-hide-pbo-texture-upload.diff | 17 +
..._opengl_video.c-remove-timer-functionality.diff | 247 +++++++++
...engl.c-guard-GL3-and-backport-old-behavior.diff | 52 ++
...ools-detection-compiler-py-no-tautological.diff | 13 +
...s_detections_compiler.py-support-older-GCC.diff | 13 +
.../files/patch-wscript-support-older-GCC.diff | 13 +
.../files/patch-youtubedl-edl-track-error.diff | 11 +
18 files changed, 1223 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/Portfile b/multimedia/mpv-legacy/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..cdb4b104cf3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,598 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup waf 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup compiler_blacklist_versions 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup legacysupport 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Please revbump mpv whenever ffmpeg{,-devel} is updated!
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name mpv-legacy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup mpv-player mpv 0.36.0 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts mpv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories multimedia
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license GPL-2+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {@barracuda156 gmail.com:vital.had} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description mpv is a movie player based on MPlayer and mplayer2.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description {*}${description} It plays most MPEG/VOB, AVI, Ogg/OGM, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ VIVO, ASF/WMA/WMV, QT/MOV/MP4, RealMedia, Matroska, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ NUT, NuppelVideo, FLI, YUV4MPEG, FILM, RoQ, PVA files, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ supported by many native, XAnim, and Win32 DLL codecs. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ You can watch VideoCD, SVCD, DVD, 3ivx, DivX 3/4/5, WMV \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ and even H.264 movies.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://www.mpv.io
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set waf_version 2.0.23
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set waf_distfile waf-${waf_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set mpv_distfile ${distfiles}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites-append https://waf.io/:waf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distfiles-append ${waf_distfile}:waf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+extract.only-delete ${waf_distfile}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums ${mpv_distfile} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rmd160 9ff58a63048d9a18d233e40cdb4b529031086a54 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 8e6fed056d6981a165bfbb6c6391109a81078aa8be94f1fbb7c95cb5587d446e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 3409580 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${waf_distfile} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rmd160 6af5d2bc4c80d5a21045ea031344005cbcb7a512 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 28a2e4583314a162cfcbffefb8a9202c1d7869040d30b5852da479b76d9c0491 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 105122
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+installs_libs no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append port:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib path:lib/libavcodec.dylib:ffmpeg \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path:bin/perl:perl5 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libiconv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:zlib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libass \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:lcms2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+universal_variant no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default_variants +network +osd +opengl +bluray +dvd +audiocd +libarchive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append +rubberband
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} > 9} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append coreaudio
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} > 10} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # current macOS bundle errors on < 10.7 due to unhandled -psn_* argument
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append +bundle
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Current waf doesn't support --nocache anymore. Set by PortGroup.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.post_args-delete --nocache
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append --enable-cocoa \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-cplugins \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-manpage-build \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-swift \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-zlib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-android \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-audiounit \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-coreaudio \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-cuda-hwaccel \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-direct3d \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-dvbin \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-egl-angle-lib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-egl-angle-win32 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-egl-drm \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-html-build \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-ios-gl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-opensles \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-rpi \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-videotoolbox-gl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# mpv autodetects many support libs. To prevent undeclared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# dependencies, explicitly disable everything optional first.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This list should be expanded each time the port is updated
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# to a new version, disabling any newly added options.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append --disable-caca \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-cdda \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-clang-database \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-debug-build \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-dvdnav \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-egl-x11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-gl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-gl-cocoa \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-gl-x11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-jack \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-javascript \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-jpeg \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-libarchive \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-libbluray \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-lua \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-openal \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-pdf-build \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-pulse \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-rubberband \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-tv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-uchardet \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-vapoursynth \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-x11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-xv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Fix picking up the correct talloc version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -isystem has the added benefit of moving the include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# directory specified to the end of the include path list.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This will help the build system respect custom include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# paths correctly (i.e., searching them before the MP include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# directory.)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cppflags-replace -I${prefix}/include -isystem${prefix}/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args-append -v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Clear CPATH and LIBRARY_PATH because a ncurses include file
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# conflicts with the one in MacPorts. It doesn't matter much anyway
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# because the swift module in mpv doesn't have any dependencies to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# link against.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.library_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append patch-apple_utils.c-should-be-included-for-Darwin.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform macosx {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} > 10} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Force recent enough Xcode.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # We have to compile with the compiler provided by Xcode/CLT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # due to only it shipping libarclite on 10.7 and knowing where
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # it is.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Could "emulate" the same behavior by using MacPorts' clang
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # and appending -L/usr/lib/arc/ to CFLAGS/CXXFLAGS on 10.7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # but I don't particularly like that idea (yet.)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Keep using the "system compiler" for now. Also means one less
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # dependency on recent systems, so yay.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PortGroup xcodeversion 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ minimum_xcodeversions {11 4.4}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Force recent enough SDK.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[vercmp ${configure.sdk_version} 10.8] < 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.sdk_version 10.8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Force clang compiler as installed by Xcode's CLT's... hopefully.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compiler.blacklist-append *gcc* cc macports-*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} <= 14 || ${configure.build_arch} ni [list x86_64 arm64]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Disable Cocoa output.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Users on old systems will need to embrace X11.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --enable-cocoa \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-cocoa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append +x11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes-append [subst {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The maintainer ships his personal config file in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ${prefix}/share/doc/${name}/examples/config-maintainer.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ You are strongly encouraged to copy this file to either
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ${prefix}/etc/${name}/${name}.conf (globally for all users of the system) or
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ~/.config/${name}/config (only for your current user)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ and adjust it to your needs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ If you previously had your configuration file in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ~/.${name}/config
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ please migrate it to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ~/.config/${name}/config
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ which is the location preferred by upstream.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # cocoa-cb backend requires Swift 5 or 4 support, which is only available
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # in Xcode 9.1 onwards.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # From version 0.34.0 Swift 4.1 (Xcode 9.3+) or later is required
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[vercmp ${xcodeversion} 9.3] < 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --enable-swift \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-swift
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # VideotoolBox, a new hardware acceleration framework, is supported on 10.8+ and "here to stay".
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # It provides support for H265, H264, H263, MPEG1, MPEG2 and MPEG4.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} > 14} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-delete --disable-videotoolbox-gl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --enable-videotoolbox-gl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} > 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes-append {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This config file already defines the necessary video output settings to make\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use of the hardware acceleration features provided by your operating system.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes-append {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Sadly, your system is incapable of utilizing mpv's hardware decoding features.\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The example config file will not include a hardware decoding option.\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Consult ``man mpv'' for further information.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # C11 atomics is mandatory from version 0.33.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compiler.c_standard 2011
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compiler.blacklist-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {clang < 700}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Should eliminate most swift (module) related problems
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[vercmp ${xcodeversion} 9.1] >= 0 || ${os.major} >= 16} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ use_xcode yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Shared build fixes for 10.6 and 10.7.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} < 12} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-misc-import-CoreVideo.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-waftools-detection-compiler-py-no-tautological.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Make mpv work as good as possible on 10.6 and below. No Cocoa support, instead concentrate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # on getting the OpenGL output to work via X11.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Also fix some other minor compile issues only manifesting on 10.6 and below along the way.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-audio_out_ao_coreaudio_utils.c-add-missing-header-for-getpid.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-waftools_detections_compiler.py-support-older-GCC.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes-append {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ On systems older than Lion (10.7) or on architectures other than x86_64, Cocoa output support is not available.\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The X11 backend should have been enabled automatically.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Fix youtube-dl hook for streaming youtube videos
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-youtubedl-edl-track-error.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # coreaudio does not build on < 10.6 so use pulseaudio instead (tested and works).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} < 10} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append +pulseaudio
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes-append {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ On systems older than SnowLeopard (10.6), coreaudio output support is not available.\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The pulseaudio backend should have been enabled automatically.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-extract {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 -W "${filespath}" config-maintainer "${worksrcpath}/TOOLS/"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${use_xcode}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[vercmp ${xcodeversion} 4.3] < 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set sdks_dir ${developer_dir}/SDKs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set sdks_dir ${developer_dir}/Platforms/MacOSX.platform/Developer/SDKs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set sdks [glob -directory ${sdks_dir} MacOSX*.sdk]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.sdkroot [lindex [lsort -command vercmp ${sdks}] end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${configure.sdkroot} ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.sdk_version [exec /usr/libexec/PlistBuddy -c Print:ProductVersion ${configure.sdkroot}/System/Library/CoreServices/SystemVersion.plist]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[llength [split ${configure.sdk_version} .]] < 2} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.sdk_version ${configure.sdk_version}.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MACOS_SDK=${configure.sdkroot} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MACOS_SDK_VERSION=${configure.sdk_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset network]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "s/@@NETWORK@@//" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "/@@NETWORK@@/d" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} > 11} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "s/@@HWDEC@@//" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "/@@HWDEC@@/d" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} > 12} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "s/@@HWDEC_CUDA@@//" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "/@@HWDEC_CUDA@@/d" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.major} < 11 || ${configure.build_arch} ni [list x86_64 arm64]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "/@@VOGPU@@/d" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "s/@@BACKEND@@/x11/" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "s/@@VOGPU@@//" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}/TOOLS" "/@@BACKEND@@/d" config-maintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Shameless copy from ipe-tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python.versions {38 39 310 311}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+dict set python.legacy_versions 37 38
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# After Python 3.9 is released, and mpv can be built with it,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# replace with the above lines with the following:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#set python.versions {27 39}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#dict set python.legacy_versions 38 39
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python.default_version 311
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python.version ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Create python variants.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver ${python.versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set variant_line {variant python${ver} description }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python_branch [string index $ver 0].[string range $ver 1 end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append variant_line " {Use Python ${python_branch} to build ${name} and generate man pages}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach over ${python.versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${ver} == ${over}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ continue
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append variant_line " conflicts python${over}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append variant_line " {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:py${ver}-docutils
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ license_noconflict py${ver}-docutils
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ eval $variant_line
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Create legacy python variants, mapping to the replacement version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+dict for {legacy_ver replace_ver} ${python.legacy_versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set variant_line {variant python${legacy_ver} description }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set legacy_branch [join [split ${legacy_ver} {}] "."]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set replace_branch [join [split ${replace_ver} {}] "."]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append variant_line " {Legacy variant for Python ${legacy_branch} mapping to Python ${replace_branch}}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append variant_line " requires python${replace_ver}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach over ${python.versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${legacy_ver} == ${over} || ${replace_ver} == ${over}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ continue
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append variant_line " conflicts python${over}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append variant_line " { }"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ eval $variant_line
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Set default python variant.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set variant_none true
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver ${python.versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset python${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set variant_none [expr $variant_none && ![variant_isset python${ver}]]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${variant_none}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_variants-append "+python${python.default_version}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Set ${python.version} to the currently active variant.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# And let waf use the same python version as the currently active variant.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver ${python.versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset python${ver}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python.version ${ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python_branch [string index ${python.version} 0].[string range ${python.version} 1 end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ waf.python_branch ${python_branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[string length ${python.version}] == 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_error "No python variant selected. You must select at least one. The highest value will be used."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ error "Select a python variant."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set python_ver_dot [string index ${python.version} 0].[string range ${python.version} 1 end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace -W "${worksrcpath}" "s|'rst2man'|'rst2man-${python_ver_dot}'|" wscript
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-extract {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 -W "${distpath}" "${waf_distfile}" "${worksrcpath}/waf"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Since we don't have conffiles handling, install mpv.conf as mpv.conf.example
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # to not overwrite this file on each (re-)build.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file rename ${worksrcpath}/etc/mpv.conf ${worksrcpath}/etc/mpv.conf.example
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 0755 ${destroot}${prefix}/etc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach etcfile {encoding-profiles.conf mpv.conf.example input.conf} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 ${worksrcpath}/etc/${etcfile} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/etc/${name}/${etcfile}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 0755 ${destroot}${prefix}/share/doc/${name}/examples
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy {*}[glob ${worksrcpath}/TOOLS/lua ${worksrcpath}/TOOLS/*.pl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${worksrcpath}/TOOLS/*.sh ${worksrcpath}/TOOLS/*.py \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${worksrcpath}/TOOLS/umpv ${worksrcpath}/TOOLS/lib] \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/doc/${name}/examples
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.platform} eq "darwin"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 ${worksrcpath}/TOOLS/config-maintainer \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/doc/${name}/examples
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# When enabling features, make sure to replace the "disable" flags with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# "enable" flags in order to make the waf build system error out in case
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# a feature cannot be used/found. Problems like that indicate a missing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# runtime dependency.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant bundle description {Enable the optional macOS bundle of mpv} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W "${worksrcpath}" "${waf.python} TOOLS/osxbundle.py -s build/mpv"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 0755 ${destroot}${applications_dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy ${worksrcpath}/build/mpv.app ${destroot}${applications_dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant coreaudio description {Enable CoreAudio support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-coreaudio \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-coreaudio
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant screenshot description {Enable optional screenshot support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append path:include/turbojpeg.h:libjpeg-turbo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-jpeg \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-jpeg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant network conflicts ytdlp description {Enable networking support via youtube-dl (supports wide variety of pages)} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run-append port:youtube-dl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant ytdlp conflicts network description {Enable networking support via yt-dlp instead of youtube-dl (supports wide variety of pages)} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run-append port:yt-dlp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant bluray description {Enable Bluray and AACS/BD+ encryption support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libbluray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run-append port:libaacs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libbdplus
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-delete --disable-libbluray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ notes-append {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ To play Bluray discs with AACS encryption, decryption key database file "keydb.cfg" needs to be placed at:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ~/Library/Preferences/aacs/ (on macOS, or)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * ~/.config/aacs/ (on other darwin).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ You can easily find this file on the internet.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant dvd description {Enable DVD and DeCSS support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libdvdread \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libdvdnav
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-dvdnav \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-dvdnav
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant audiocd description {Enable Audio CD support via libcdio-paranoia} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libcdio-paranoia
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-cdda \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-cdda
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant libarchive description {Enable transparent handling of Zip files and other compressed formats} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libarchive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-libarchive \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-libarchive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant rubberband description {Enable support for the Rubber Band library, adding audio pitch and speed control} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:rubberband
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-rubberband \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-rubberband
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant pulseaudio description {Enable PulseAudio support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:pulseaudio
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-pulse \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-pulse
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant jack description {Enable Jack Audio Connection Kit support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:jack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-jack \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-jack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# TODO: switch that to openal-soft? Leave it as-is?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant openal description {Enable OpenAL support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:openal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-openal \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-openal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant x11 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:xorg-libXext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xorg-libXScrnSaver \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xorg-libXinerama \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xorg-libXv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xorg-libXrandr \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:xorg-libXpresent
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-delete --disable-x11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-xv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --enable-x11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-xv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant opengl description {Enable OpenGL output support. Both the CoreVideo and X11 (GLX) outputs are supported} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${os.platform} eq "darwin" && ${os.major} > 14} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-gl-cocoa \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-gl-cocoa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-gl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-gl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset x11]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:mesa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-gl-x11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-gl-x11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # FIXME: add EGL? Leave it disabled? Test!
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # As far as testing went, EGL is not available on macOS yet.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #configure.args-replace --disable-egl-x11 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # --enable-egl-x11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant caca description {Enable animated ASCII art video output} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:libcaca
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-caca \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-caca
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant osd description {Enable onscreen display and TrueType font support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:lua52
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-delete --disable-lua
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --enable-lua \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --lua=52fbsd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#variant smb description {Enable Samba support} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# depends_lib-append path:lib/pkgconfig/smbclient.pc:samba3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# configure.args-replace --disable-libsmbclient \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# --enable-libsmbclient
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Removed in 0.33.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant debug description {Compile with debugging symbols} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-delete --disable-debug-build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant printable_doc description {Generate printable documents (PDF help)} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # py27-pdfrw and py27-Pillow are needed by rst2pdf.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append port:rst2pdf \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py27-pdfrw \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:py27-Pillow
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-pdf-build \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-pdf-build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#variant javascript description {Enable JavaScript support via mujs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# depends_lib-append port:mujs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# configure.args-replace --disable-javascript \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# --enable-javascript
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant uchardet description {Enable the uchardet encoding detector} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:uchardet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace --disable-uchardet \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-uchardet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant libmpv description {Enable the libmpv library} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --enable-libmpv-shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/config-maintainer b/multimedia/mpv-legacy/files/config-maintainer
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ce969f0aaf9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/config-maintainer
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,22 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Write your default config options here!
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+[default]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+gpu-context=@@BACKEND@@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@VOGPU@@vo=gpu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ao=coreaudio
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+sub-scale=3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+af=scaletempo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+volume-max=800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+framedrop=vo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@HWDEC@@hwdec=videotoolbox
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@HWDEC_CUDA@@#hwdec=cuda
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#alang=en,eng,de,ger
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@NETWORK@@ytdl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@NETWORK@@ytdl-format=best
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-apple_utils.c-should-be-included-for-Darwin.diff b/multimedia/mpv-legacy/files/patch-apple_utils.c-should-be-included-for-Darwin.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e745284850f
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-apple_utils.c-should-be-included-for-Darwin.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,50 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 309b19d942c05572fd2dd03b592b7323e063c0e6 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 24 Dec 2023 19:59:23 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] apple_utils.c: should be included for Darwin, not for Cocoa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+The build needs this file for linking even when Cocoa is disabled.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Commit which introduced it mistakenly includes it only for Cocoa:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/mpv-player/mpv/commit/0463096b3c5a717a7c181801c8df797b046989fc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ meson.build | 6 +++---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ wscript_build.py | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 4 insertions(+), 4 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git meson.build meson.build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f9fe4e7263..a8b91061a0 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- meson.build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ meson.build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -385,8 +385,7 @@ cocoa = dependency('appleframeworks', modules: ['Cocoa', 'IOKit', 'QuartzCore'],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ features += {'cocoa': cocoa.found()}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if features['cocoa']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dependencies += cocoa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- sources += files('osdep/apple_utils.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- 'osdep/language-apple.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ sources += files('osdep/language-apple.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'osdep/macosx_application.m',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'osdep/macosx_events.m',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'osdep/macosx_menubar.m',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -415,7 +414,8 @@ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path_source = files('osdep/path-darwin.c')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- sources += path_source + files('osdep/timer-darwin.c')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ sources += path_source + files('osdep/apple_utils.c',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ 'osdep/timer-darwin.c')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git wscript_build.py wscript_build.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a470808ae5..63d83730db 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- wscript_build.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ wscript_build.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -606,7 +606,7 @@ def build(ctx):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ( language_c ),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ( "osdep/android/strnlen.c", "android"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- ( "osdep/apple_utils.c", "cocoa" ),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ( "osdep/apple_utils.c", "os-darwin" ),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ( "osdep/glob-win.c", "glob-win32" ),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ( "osdep/macosx_application.m", "cocoa" ),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ( "osdep/macosx_events.m", "cocoa" ),
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-audio_out_ao_coreaudio_exclusive.c-compile-fix.diff b/multimedia/mpv-legacy/files/patch-audio_out_ao_coreaudio_exclusive.c-compile-fix.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..75f621c9cb9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-audio_out_ao_coreaudio_exclusive.c-compile-fix.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- audio/out/ao_coreaudio_exclusive.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ audio/out/ao_coreaudio_exclusive.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -39,6 +39,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <libavutil/intreadwrite.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <libavutil/intfloat.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <unistd.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "config.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "ao.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "internal.h"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-audio_out_ao_coreaudio_utils.c-add-missing-header-for-getpid.diff b/multimedia/mpv-legacy/files/patch-audio_out_ao_coreaudio_utils.c-add-missing-header-for-getpid.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ce74aca1b00
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-audio_out_ao_coreaudio_utils.c-add-missing-header-for-getpid.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- audio/out/ao_coreaudio_utils.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ audio/out/ao_coreaudio_utils.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -31,6 +31,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_COREAUDIO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "audio/out/ao_coreaudio_properties.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <CoreAudio/HostTime.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <unistd.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <mach/mach_time.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-misc-add-strnlen.diff b/multimedia/mpv-legacy/files/patch-misc-add-strnlen.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..2ea1eeabd95
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-misc-add-strnlen.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,43 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- common/common.h.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ common/common.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -26,6 +26,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "osdep/compiler.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "mpv_talloc.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "common/compat.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // double should be able to represent this exactly
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define MP_NOPTS_VALUE (-0x1p+63)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ common/compat.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef COMPAT_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define COMPAT_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stddef.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <errno.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static inline size_t strnlen(const char *s, size_t maxlen) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ int result = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (s != NULL) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ const char *iter = s;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ while ((result < maxlen) && ((*(iter++)) != 0))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ++result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return (result);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* !defined (COMPAT_H) */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ta/ta.h.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ta/ta.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20,6 +20,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdbool.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdarg.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "common/compat.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef __GNUC__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TA_PRF(a1, a2) __attribute__ ((format(printf, a1, a2)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TA_TYPEOF(t) __typeof__(t)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-misc-import-CoreVideo.diff b/multimedia/mpv-legacy/files/patch-misc-import-CoreVideo.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..4e2e0d7c8bb
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-misc-import-CoreVideo.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/cocoa_common.m.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/cocoa_common.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -22,6 +22,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #import <IOKit/IOKitLib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #import <AppKit/AppKit.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <mach/mach.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#import <CoreVideo/CoreVideo.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #import "cocoa_common.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #import "video/out/cocoa/window.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- waftools/fragments/cocoa.m.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ waftools/fragments/cocoa.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,6 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #import <CoreServices/CoreServices.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #import <OpenGL/OpenGL.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #import <Cocoa/Cocoa.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#import <CoreVideo/CoreVideo.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "osdep/macosx_compat.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-video_out_opengl_common.c-hide-GL3-timer-functions.diff b/multimedia/mpv-legacy/files/patch-video_out_opengl_common.c-hide-GL3-timer-functions.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..be2222f3570
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-video_out_opengl_common.c-hide-GL3-timer-functions.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,18 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/common.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/common.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -277,7 +277,6 @@ static const struct gl_functions gl_func
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {0}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .ver_core = 330,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .extension = "GL_ARB_timer_query",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -311,6 +310,7 @@ static const struct gl_functions gl_func
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {0}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .ver_core = 430,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .ver_es_core = 300,
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-video_out_opengl_common.c-hide-GL320-section.diff b/multimedia/mpv-legacy/files/patch-video_out_opengl_common.c-hide-GL320-section.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e0d81521ee8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-video_out_opengl_common.c-hide-GL320-section.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,18 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/common.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/common.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -266,6 +266,7 @@ static const struct gl_functions gl_func
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .ver_exclude = 1,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .ver_es_exclude = 320,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .ver_core = 320,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .extension = "GL_ARB_sync",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -276,6 +277,7 @@ static const struct gl_functions gl_func
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {0}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .ver_core = 330,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .extension = "GL_ARB_timer_query",
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-video_out_opengl_common.h-guard-GL3-stuff.diff b/multimedia/mpv-legacy/files/patch-video_out_opengl_common.h-guard-GL3-stuff.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..c1fadeb3586
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-video_out_opengl_common.h-guard-GL3-stuff.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,29 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/common.h.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/common.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -37,6 +37,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <windows.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct GL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ typedef struct GL GL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -188,6 +192,7 @@ struct GL {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void (GLAPIENTRY *InvalidateFramebuffer)(GLenum, GLsizei, const GLenum *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GLsync (GLAPIENTRY *FenceSync)(GLenum, GLbitfield);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GLenum (GLAPIENTRY *ClientWaitSync)(GLsync, GLbitfield, GLuint64);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void (GLAPIENTRY *DeleteSync)(GLsync sync);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -202,6 +207,7 @@ struct GL {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void (GLAPIENTRY *GetQueryObjecti64v)(GLuint, GLenum, GLint64 *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void (GLAPIENTRY *GetQueryObjectuiv)(GLuint, GLenum, GLuint *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void (GLAPIENTRY *GetQueryObjectui64v)(GLuint, GLenum, GLuint64 *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void (GLAPIENTRY *VDPAUInitNV)(const GLvoid *, const GLvoid *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void (GLAPIENTRY *VDPAUFiniNV)(void);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-fix-compile-warnings.diff b/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-fix-compile-warnings.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..32042088834
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-fix-compile-warnings.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,38 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/video.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/video.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -968,7 +968,7 @@ static void uninit_video(struct gl_video
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->DeleteTextures(1, &plane->gl_texture);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_pbo_upload_uninit(&plane->pbo);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- *vimg = (struct video_image){0};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ *vimg = (struct video_image){{0}};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Invalidate image_params to ensure that gl_video_config() will call
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // init_video() on uninitialized gl_video.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1073,7 +1073,7 @@ static void pass_prepare_src_tex(struct
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void render_pass_quad(struct gl_video *p, int vp_w, int vp_h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const struct mp_rect *dst)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- struct vertex va[4] = {0};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ struct vertex va[4] = {{{0}}};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_transform t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_transform_ortho(&t, 0, vp_w, 0, vp_h);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3000,7 +3000,7 @@ void gl_video_perfdata(struct gl_video *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // This assumes nv12, with textures set to GL_NEAREST filtering.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void reinterleave_vdpau(struct gl_video *p, struct gl_hwdec_frame *frame)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- struct gl_hwdec_frame res = {0};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ struct gl_hwdec_frame res = {{{0}}};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for (int n = 0; n < 2; n++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct fbotex *fbo = &p->vdpau_deinterleave_fbo[n];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // This is an array of the 2 to-merge planes.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3063,7 +3063,7 @@ static bool pass_upload_image(struct gl_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (p->hwdec_active) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Hardware decoding
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- struct gl_hwdec_frame gl_frame = {0};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ struct gl_hwdec_frame gl_frame = {{{0}}};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pass_describe(p, "map frame (hwdec)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_start(p->upload_timer);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-hide-pbo-texture-upload.diff b/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-hide-pbo-texture-upload.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..2b18722f2dc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-hide-pbo-texture-upload.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,17 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/video.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/video.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3216,10 +3216,14 @@ static void check_gl_features(struct gl_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (!gl->MapBufferRange && p->opts.pbo) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p->opts.pbo = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MP_WARN(p, "Disabling PBOs (GL2.1/GLES2 unsupported).\n");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p->forced_dumb_mode = p->opts.dumb_mode > 0 || !have_fbo || !have_texrg;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool voluntarily_dumb = check_dumb_mode(p);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-remove-timer-functionality.diff b/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-remove-timer-functionality.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..1cabee8fb39
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-video_out_opengl_video.c-remove-timer-functionality.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,247 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/utils.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/utils.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -466,7 +466,9 @@ struct sc_entry {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int num_uniforms;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bstr frag;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bstr vert;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_timer *timer;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_shader_cache {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -521,7 +523,9 @@ void gl_sc_reset(struct gl_shader_cache
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GL *gl = sc->gl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (sc->needs_reset) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_stop(gl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->UseProgram(0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for (int n = 0; n < sc->num_uniforms; n++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -554,7 +558,9 @@ static void sc_flush_cache(struct gl_sha
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ talloc_free(e->vert.start);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ talloc_free(e->frag.start);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ talloc_free(e->uniforms);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_free(e->timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sc->num_entries = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1143,7 +1149,9 @@ struct mp_pass_perf gl_sc_generate(struc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *entry = (struct sc_entry){
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .vert = bstrdup(NULL, *vert),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .frag = bstrdup(NULL, *frag),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .timer = gl_timer_create(gl),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // build vertex shader from vao and cache the locations of the uniform variables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1168,10 +1176,17 @@ struct mp_pass_perf gl_sc_generate(struc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->ActiveTexture(GL_TEXTURE0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_start(entry->timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sc->needs_reset = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return gl_timer_measure(entry->timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ struct mp_pass_perf dummy = {0};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return dummy;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Maximum number of simultaneous query objects to keep around. Reducing this
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1179,6 +1194,7 @@ struct mp_pass_perf gl_sc_generate(struc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // available
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define QUERY_OBJECT_NUM 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_timer {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GL *gl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GLuint query[QUERY_OBJECT_NUM];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1292,6 +1308,7 @@ void gl_timer_stop(GL *gl)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (gl->EndQuery)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->EndQuery(GL_TIME_ELAPSED);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Upload a texture, going through a PBO. PBO supposedly can facilitate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // asynchronous copy from CPU to GPU, so this is an optimization. Note that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/utils.h.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/utils.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,6 +19,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef MP_GL_UTILS_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define MP_GL_UTILS_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "common.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "math.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -175,6 +179,7 @@ struct mpv_global;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void gl_sc_set_cache_dir(struct gl_shader_cache *sc, struct mpv_global *global,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const char *dir);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_timer;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_timer *gl_timer_create(GL *gl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -182,6 +187,7 @@ void gl_timer_free(struct gl_timer *time
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void gl_timer_start(struct gl_timer *timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void gl_timer_stop(GL *gl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct mp_pass_perf gl_timer_measure(struct gl_timer *timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define NUM_PBO_BUFFERS 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/video.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/video.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -256,8 +256,10 @@ struct gl_video {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct pass_info pass_redraw[PASS_INFO_MAX];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct pass_info *pass;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int pass_idx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_timer *upload_timer;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_timer *blit_timer;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // hooks and saved textures
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct saved_tex saved_tex[SHADER_MAX_SAVED];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2903,14 +2905,20 @@ void gl_video_render_frame(struct gl_vid
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rc.y1 = -p->vp_h - p->dst_rect.y0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rc.y0 = -p->vp_h - p->dst_rect.y1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_start(p->blit_timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->BlitFramebuffer(rc.x0, rc.y0, rc.x1, rc.y1,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rc.x0, rc.y0, rc.x1, rc.y1,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GL_COLOR_BUFFER_BIT, GL_NEAREST);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_stop(gl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->BindFramebuffer(GL_READ_FRAMEBUFFER, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->BindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pass_record(p, gl_timer_measure(p->blit_timer));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2990,12 +2998,14 @@ static void frame_perf_data(struct pass_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void gl_video_perfdata(struct gl_video *p, struct voctrl_performance_data *out)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *out = (struct voctrl_performance_data){0};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ frame_perf_data(p->pass_fresh, &out->fresh);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ frame_perf_data(p->pass_redraw, &out->redraw);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // This assumes nv12, with textures set to GL_NEAREST filtering.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void reinterleave_vdpau(struct gl_video *p, struct gl_hwdec_frame *frame)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3066,10 +3076,14 @@ static bool pass_upload_image(struct gl_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct gl_hwdec_frame gl_frame = {{{0}}};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pass_describe(p, "map frame (hwdec)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_start(p->upload_timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool ok = p->hwdec->driver->map_frame(p->hwdec, vimg->mpi, &gl_frame) >= 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_stop(gl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pass_record(p, gl_timer_measure(p->upload_timer));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ vimg->hwdec_mapped = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (ok) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3100,7 +3114,9 @@ static bool pass_upload_image(struct gl_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ assert(mpi->num_planes == p->plane_count);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pass_describe(p, "upload frame (swdec)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_start(p->upload_timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for (int n = 0; n < p->plane_count; n++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct texplane *plane = &vimg->planes[n];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3113,8 +3129,10 @@ static bool pass_upload_image(struct gl_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0, 0, plane->w, plane->h);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->BindTexture(plane->gl_target, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_stop(gl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pass_record(p, gl_timer_measure(p->upload_timer));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3310,8 +3328,10 @@ static void init_gl(struct gl_video *p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (p->texture_16bit_depth > 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MP_VERBOSE(p, "16 bit texture depth: %d.\n", p->texture_16bit_depth);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p->upload_timer = gl_timer_create(gl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p->blit_timer = gl_timer_create(gl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ debug_check_gl(p, "after init_gl");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3331,8 +3351,10 @@ void gl_video_uninit(struct gl_video *p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->DeleteTextures(1, &p->lut_3d_texture);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_free(p->upload_timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_timer_free(p->blit_timer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for (int i = 0; i < PASS_INFO_MAX; i++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ talloc_free(p->pass_fresh[i].desc.start);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ talloc_free(p->pass_redraw[i].desc.start);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/opengl/video.h.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/opengl/video.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20,6 +20,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdbool.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "options/m_option.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "sub/osd.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "common.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -156,7 +160,9 @@ void gl_video_render_frame(struct gl_vid
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void gl_video_resize(struct gl_video *p, int vp_w, int vp_h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct mp_rect *src, struct mp_rect *dst,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct mp_osd_res *osd);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void gl_video_perfdata(struct gl_video *p, struct voctrl_performance_data *out);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct mp_csp_equalizer;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct mp_csp_equalizer *gl_video_eq_ptr(struct gl_video *p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void gl_video_eq_update(struct gl_video *p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/vo_opengl.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/vo_opengl.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -311,7 +311,9 @@ static int control(struct vo *vo, uint32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ vo->want_redraw = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case VOCTRL_PERFORMANCE_DATA:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_video_perfdata(p->renderer, (struct voctrl_performance_data *)data);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-video_out_vo_opengl.c-guard-GL3-and-backport-old-behavior.diff b/multimedia/mpv-legacy/files/patch-video_out_vo_opengl.c-guard-GL3-and-backport-old-behavior.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..a311e89dfbf
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-video_out_vo_opengl.c-guard-GL3-and-backport-old-behavior.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,52 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- video/out/vo_opengl.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ video/out/vo_opengl.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,6 +24,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <stdbool.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <assert.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <libavutil/common.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "config.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -81,8 +85,10 @@ struct gl_priv {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int last_pattern;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int matches, mismatches;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GLsync vsync_fences[NUM_VSYNC_FENCES];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int num_vsync_fences;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void resize(struct gl_priv *p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -124,11 +130,13 @@ static void draw_frame(struct vo *vo, st
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mpgl_start_frame(p->glctx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (gl->FenceSync && p->num_vsync_fences < p->opts.vsync_fences) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GLsync fence = gl->FenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0);;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (fence)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p->vsync_fences[p->num_vsync_fences++] = fence;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl_video_render_frame(p->renderer, frame, p->glctx->main_fb);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -167,11 +175,13 @@ static void flip_page(struct vo *vo)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ p->opts.pattern[0] = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !defined(__APPLE__) || MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ while (p->opts.vsync_fences > 0 && p->num_vsync_fences >= p->opts.vsync_fences) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->ClientWaitSync(p->vsync_fences[0], GL_SYNC_FLUSH_COMMANDS_BIT, 1e9);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gl->DeleteSync(p->vsync_fences[0]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MP_TARRAY_REMOVE_AT(p->vsync_fences, p->num_vsync_fences, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int query_format(struct vo *vo, int format)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-waftools-detection-compiler-py-no-tautological.diff b/multimedia/mpv-legacy/files/patch-waftools-detection-compiler-py-no-tautological.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..5150529dcc7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-waftools-detection-compiler-py-no-tautological.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- waftools/detections/compiler.py.orig 2019-01-25 19:30:16.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ waftools/detections/compiler.py 2019-01-25 19:30:34.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -54,9 +54,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "-Wno-unused-result"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def __add_clang_flags__(ctx):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- ctx.env.CFLAGS += ["-Wno-logical-op-parentheses", "-fcolor-diagnostics",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- "-Wno-tautological-compare",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- "-Wno-tautological-constant-out-of-range-compare"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ctx.env.CFLAGS += ["-Wno-logical-op-parentheses", "-fcolor-diagnostics"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def __add_mswin_flags__(ctx):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ctx.env.CFLAGS += ['-D_WIN32_WINNT=0x0602', '-DUNICODE', '-DCOBJMACROS',
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-waftools_detections_compiler.py-support-older-GCC.diff b/multimedia/mpv-legacy/files/patch-waftools_detections_compiler.py-support-older-GCC.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..680c2817f57
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-waftools_detections_compiler.py-support-older-GCC.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- waftools/detections/compiler.py.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ waftools/detections/compiler.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -41,9 +41,7 @@ def __add_generic_flags__(ctx):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def __add_gcc_flags__(ctx):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ctx.env.CFLAGS += ["-Wall", "-Wundef", "-Wmissing-prototypes", "-Wshadow",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "-Wno-switch", "-Wparentheses", "-Wpointer-arith",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- "-Wno-pointer-sign",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # GCC bug 66425
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- "-Wno-unused-result"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "-Wno-pointer-sign"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def __add_clang_flags__(ctx):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ctx.env.CFLAGS += ["-Wno-logical-op-parentheses", "-fcolor-diagnostics",
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-wscript-support-older-GCC.diff b/multimedia/mpv-legacy/files/patch-wscript-support-older-GCC.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..71387bfb6b7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-wscript-support-older-GCC.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- wscript.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ wscript
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1000,6 +1000,10 @@ def configure(ctx):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ while re.match('\$\{([^}]+)\}', ctx.env[varname]):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ctx.env[varname] = Utils.subst_vars(ctx.env[varname], ctx.env)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # Support older GCC versions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ctx.env.CCLNK_TGT_F = ['-o', '']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ctx.env.CXXLNK_TGT_F = ['-o', '']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ctx.parse_dependencies(build_options)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ctx.parse_dependencies(main_dependencies)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ctx.parse_dependencies(audio_output_features)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/multimedia/mpv-legacy/files/patch-youtubedl-edl-track-error.diff b/multimedia/mpv-legacy/files/patch-youtubedl-edl-track-error.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..8675ee2de88
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/multimedia/mpv-legacy/files/patch-youtubedl-edl-track-error.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- player/lua/ytdl_hook.lua.orig 2023-03-21 11:35:15 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ player/lua/ytdl_hook.lua 2023-03-21 11:31:18 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -451,7 +451,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- local url = edl_track or track.url
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ local url = track.url
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ local hdr = {"!new_stream", "!no_clip", "!no_chapters"}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ local skip = #tracks == 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ local params = ""
</span></pre><pre style='margin:0'>
</pre>