# Maintainer: Naveen M K <naveen521kk@gmail.com>

_realname=bat
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.24.0
pkgrel=2
pkgdesc="Cat clone with syntax highlighting and git integration (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clangarm64' 'clang32')
msys2_references=(
  'archlinux: bat'
)
url='https://github.com/sharkdp/bat'
license=('spdx:MIT OR Apache-2.0')
depends=(
  "${MINGW_PACKAGE_PREFIX}-libgit2"
  "${MINGW_PACKAGE_PREFIX}-oniguruma"
  "${MINGW_PACKAGE_PREFIX}-gcc-libs"
)
makedepends=(
  "${MINGW_PACKAGE_PREFIX}-rust"
)
source=("${_realname}-${pkgver}.tar.gz::https://github.com/sharkdp/bat/archive/refs/tags/v${pkgver}.tar.gz")
sha256sums=('907554a9eff239f256ee8fe05a922aad84febe4fe10a499def72a4557e9eedfb')

prepare() {
  cp -r ${_realname}-${pkgver} build-${MSYSTEM}

  # update windows-targets to fix windows-gnullvm dependency specification
  cargo update -p windows-targets@0.48.0 --precise 0.48.1 \
    --manifest-path build-${MSYSTEM}/Cargo.toml

  ${MINGW_PREFIX}/bin/cargo fetch \
  --locked \
  --manifest-path build-${MSYSTEM}/Cargo.toml
}

build() {
  ${MINGW_PREFIX}/bin/cargo build \
  --release \
  --frozen \
  --manifest-path build-${MSYSTEM}/Cargo.toml
}

package() {
  ${MINGW_PREFIX}/bin/cargo install \
  --frozen \
  --offline \
  --no-track \
  --path build-${MSYSTEM} \
  --root ${pkgdir}${MINGW_PREFIX}

  # Package licenses
  install -Dm644 build-${MSYSTEM}/LICENSE-APACHE \
    "${pkgdir}${MINGW_PREFIX}"/share/licenses/$pkgname/LICENSE-APACHE
  install -Dm644 build-${MSYSTEM}/LICENSE-MIT \
    "${pkgdir}${MINGW_PREFIX}"/share/licenses/$pkgname/LICENSE-MIT

  cd build-${MSYSTEM}/target/release/build

  # Package the man page
  find . -name bat.1 -type f -exec install -Dm644 {} \
    "${pkgdir}${MINGW_PREFIX}"/share/man/man1/bat.1 \;

  find . -name bat.zsh -type f -exec install -Dm644 {} \
    "${pkgdir}${MINGW_PREFIX}"/share/zsh/site-functions/_bat \;

  # Package the fish completion
  find . -name bat.fish -type f -exec install -Dm644 {} \
    "${pkgdir}${MINGW_PREFIX}"/share/fish/vendor_completions.d/bat.fish \;

}
