# Maintainer: Andrea Zagli <andrea.zagli.free@gmail.com>

_realname=usbredir
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.14.0
pkgrel=1
pkgdesc="Parser for the usbredir protocol (mingw-w64)"
arch=('any')
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
url="https://www.spice-space.org/usbredir.html"
msys2_repository_url='https://gitlab.freedesktop.org/spice/usbredir.git'
msys2_references=(
  "cpe: cpe:/a:spice-space:usbredir"
)
license=("spdx:GPL-2.0-or-later AND LGPL-2.1-or-later")
depends=(
  "${MINGW_PACKAGE_PREFIX}-libusb"
  "${MINGW_PACKAGE_PREFIX}-glib2"
)
makedepends=(
  "${MINGW_PACKAGE_PREFIX}-cc"
  "${MINGW_PACKAGE_PREFIX}-meson"
  "${MINGW_PACKAGE_PREFIX}-ninja"
  "${MINGW_PACKAGE_PREFIX}-pkgconf"
)
source=(https://www.spice-space.org/download/usbredir/${_realname}-${pkgver}.tar.xz{,.sig}
        "0001-fix-callback-call-conv.patch")
sha256sums=('924dfb5c78328fae45a4c93a01bc83bb72c1310abeed119109255627a8baa332'
            'SKIP'
            '27365d5ca6a1c85bed705a1ea0785082f036f99d7f3a11d9e13317da8f89d163')
validpgpkeys=('206D3B352F566F3B0E6572E997D9123DE37A484F') # Victor Toso de Carvalho <me@victortoso.com>

prepare() {
  cd "${srcdir}"/${_realname}-${pkgver}

  # fails to build for 32bit otherwise because it's expecting __stdcall
  patch -p1 -i "${srcdir}/0001-fix-callback-call-conv.patch"
}

build() {
  mkdir -p build-${MSYSTEM} && cd build-${MSYSTEM}

  MSYS2_ARG_CONV_EXCL="--prefix=" \
    meson setup \
      --prefix="${MINGW_PREFIX}" \
      --wrap-mode=nodownload \
      --auto-features=enabled \
      --buildtype=plain \
      ../${_realname}-${pkgver}

  meson compile
}

package() {
  cd "${srcdir}/build-${MSYSTEM}"

  DESTDIR="${pkgdir}" meson install

  install -Dm644 "${srcdir}/${_realname}-${pkgver}/COPYING" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYING"
  install -Dm644 "${srcdir}/${_realname}-${pkgver}/COPYING.LIB" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYING.LIB"
}
