<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>