# Maintainer: Christian Hesse <mail@eworm.de>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Eivind Uggedal <eivind@uggedal.com>

pkgname=mpv
epoch=1
_tag='df6d84c1cf4bbc2b998f4d320542c78df674512d' # git rev-parse v${pkgver}
pkgver=0.34.1
pkgrel=4
pkgdesc='a free, open source, and cross-platform media player'
arch=('x86_64')
# We link against libraries that are licensed GPLv3 explicitly, so our
# package is GPLv3 only as well. (Is this still correct?)
license=('GPL3')
url='https://mpv.io/'
depends=('alsa-lib' 'libasound.so' 'desktop-file-utils' 'ffmpeg' 'libavcodec.so' 'libavdevice.so'
         'libavfilter.so' 'libavformat.so' 'libavutil.so' 'libswresample.so' 'libswscale.so'
         'glibc' 'hicolor-icon-theme' 'jack' 'libjack.so' 'lcms2' 'liblcms2.so' 'libarchive'
         'libarchive.so' 'libass' 'libass.so' 'libbluray' 'libbluray.so' 'libcdio'
         'libcdio-paranoia' 'libdrm' 'libdvdnav' 'libdvdread' 'libegl' 'libgl' 'libglvnd'
         'libjpeg' 'libjpeg.so' 'libplacebo' 'libplacebo.so' 'libpulse' 'libpulse.so'
         'libva' 'libva.so' 'libva-drm.so' 'libva-wayland.so' 'libva-x11.so' 'libvdpau' 'libx11'
         'libxext' 'libxinerama' 'libxkbcommon' 'libxkbcommon.so' 'libxrandr' 'libxss'
         'libxv' 'luajit' 'mesa' 'mujs' 'rubberband' 'librubberband.so' 'shaderc'
         'libshaderc_shared.so' 'uchardet' 'vulkan-icd-loader' 'wayland' 'xdg-utils'
         'zlib')
makedepends=('git' 'python-docutils' 'ladspa' 'wayland-protocols'
             'ffnvcodec-headers' 'vulkan-headers' 'waf')
optdepends=('yt-dlp: for video-sharing websites playback'
            'youtube-dl: for video-sharing websites playback')
provides=('libmpv.so')
options=('!emptydirs')
validpgpkeys=('145077D82501AA20152CACCE8D769208D5E31419') # sfan5 <sfan5@live.de>
source=("git+https://github.com/mpv-player/mpv.git#tag=${_tag}?signed")
sha256sums=('SKIP')

prepare() {
  cd ${pkgname}

  git cherry-pick -n \
    '79bfcc672343ddbc348e040ad899d61a0bafc050' \
    'fc94c8c365ebeb038af6052bf4ea0506c1220559'
}

Xbuild() {
  cd ${pkgname}

  waf configure --prefix=/usr \
    --confdir=/etc/mpv \
    --enable-cdda \
    --enable-dvb \
    --enable-dvdnav \
    --enable-libarchive \
    --enable-libmpv-shared \
    --disable-build-date \
    --disable-caca

  waf build
}

build() {
  cd ${pkgbase} #-${pkgver}

  waf configure --prefix=/usr \
    --confdir=/etc/mpv \
    --enable-libmpv-shared \
    --disable-libbluray \
--enable-dvdnav \
    --disable-cdda \
    --disable-rubberband \
    --disable-vapoursynth \
    --disable-libavdevice \
    --disable-jack \
    --disable-pulse \
--enable-vdpau \
    --disable-vdpau-gl-x11 \
    --disable-tv \
--disable-lcms2 \
    --disable-dvbin \
\
\
--enable-xv \
    --lua=52arch \
--enable-x11 \
--enable-vaapi \
--disable-libarchive \

#--enable-vulkan

#--enable-libass \
#    --disable-oss-audio \
#    --disable-rsound \
#    --disable-libsmbclient \
#    --disable-libv4l2 \
#    --disable-tv-v4l2 \
#    --disable-vapoursynth-lazy \
#    --disable-dvdread \
#    --enable-zsh-comp \
#    --enable-encoding \
# --disable-gl \
#--enable-vdpau-hwaccel \
#    --enable-shm \
#    --enable-termios \
#    --disable-xinerama \
#    --disable-libavresample \
#    --enable-libswresample \
#    --disable-libguess \
#    --disable-enca \

#    --disable-pvr \
#    --disable-libavfilter \
#--disable-libass # need 4 lua-gui
#    --enable-egl-x11 \
#    --lua=52arch \
#    --enable-uchardet \

  waf build
}



package() {
  cd ${pkgname}

  waf install --destdir="$pkgdir"

  install -m0644 DOCS/{encoding.rst,tech-overview.txt} \
    "$pkgdir"/usr/share/doc/mpv

  install -m0644 TOOLS/lua/* \
    -D -t "$pkgdir"/usr/share/mpv/scripts
}
