# Maintainer: Christoph Reiter <reiter.christoph@gmail.com>

_realname=harper
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=2.0.0
pkgrel=1
pkgdesc='Offline, privacy-first grammar checker (mingw-w64)'
arch=('any')
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
url='https://github.com/Automattic/harper'
msys2_references=(
  'purl: pkg:cargo/harper-ls'
)
license=('spdx:Apache-2.0')
depends=(
  "${MINGW_PACKAGE_PREFIX}-cc-libs"
)
makedepends=(
  git
  "${MINGW_PACKAGE_PREFIX}-rust"
)
source=("${_realname}::git+${url}#tag=v${pkgver}")
sha256sums=('fdb91f4e6084045d6caa5b2e27f06c769fee48b8bb383c41c6a9eea10f708667')

prepare() {
  cd "${_realname}"

  cargo fetch --locked --target "$(rustc --print host-tuple)"
}

build() {
  cd "${_realname}"

  cargo build --workspace --exclude fuzz --frozen --release
}

check() {
  cd "${_realname}"

  cargo test --frozen
}

package() {
  cd "${_realname}"

  install -Dm755 -t "${pkgdir}${MINGW_PREFIX}/bin" \
    "target/release/harper-cli.exe" \
    "target/release/harper-ls.exe"
}
