# Maintainer: Alexey Pavlov <alexpux@gmail.com>

_realname=libplacebo
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=1.7.0
pkgrel=1
pkgdesc="Reusable library for GPU-accelerated video/image rendering primitives (mingw-w64)"
arch=('any')
url="https://github.com/haasn/libplacebo/"
depends=("${MINGW_PACKAGE_PREFIX}-vulkan")
makedepends=("${MINGW_PACKAGE_PREFIX}-meson"
             "${MINGW_PACKAGE_PREFIX}-ninja"
             "${MINGW_PACKAGE_PREFIX}-glslang"
             "${MINGW_PACKAGE_PREFIX}-gcc"
             "${MINGW_PACKAGE_PREFIX}-pkg-config")
license=('LGPLv2.1')
source=("${_realname}-${pkgver}.tar.gz::https://github.com/haasn/libplacebo/archive/v${pkgver}.tar.gz"
        0001-meson-fix-glslang-search-path.patch
        libplacebo.pc)
sha256sums=('5ee618bee614aeae9f8bb526329824468f93c740e8fd37fd46d58114fd7977eb'
            '91cd0384de7f31f96b62a94eedd3857425f74894e356a61efbd048592f9214f3'
            'd7520d2ca9038ebef528c924a6216d69859282ea96b87f4ecdc6e6d7a01d5eb2')

prepare() {
  cd ${_realname}-${pkgver}
  patch -p1 -i ${srcdir}/0001-meson-fix-glslang-search-path.patch
}

build() {
  [[ -d "${srcdir}"/build-${CARCH} ]] && rm -rf "${srcdir}"/build-${CARCH}
  mkdir -p "${srcdir}"/build-${CARCH} && cd "${srcdir}"/build-${CARCH}

  ${MINGW_PREFIX}/bin/meson \
    --buildtype plain \
    -Dglslang=enabled \
    -Dshaderc=disabled \
    ../${_realname}-${pkgver}

  ninja
}

package() {
  cd "${srcdir}"/build-${CARCH}
  DESTDIR=${pkgdir}${MINGW_PREFIX} ninja install
  
  # Work-around messon issue https://github.com/mesonbuild/meson/issues/4091
  sed -i.orig -e 's/Libs: \(.*\) -L$${libdir} -lplacebo/Libs: -L$${libdir} -lplacebo \1/g' ${pkgdir}${MINGW_PREFIX}/lib/pkgconfig/libplacebo.pc

  #mkdir -p ${pkgdir}${MINGW_PREFIX}/lib/pkgconfig
  #cp ${srcdir}/libplacebo.pc ${pkgdir}${MINGW_PREFIX}/lib/pkgconfig/
  #sed -e "s|@PLACEBO_VERSION@|${pkgver}|g" \
  #  -i ${pkgdir}${MINGW_PREFIX}/lib/pkgconfig/libplacebo.pc
}
