# Maintainer: aur.chaotic.cx

: ${CARGO_HOME:=$SRCDEST/cargo-home}
: ${RUSTUP_TOOLCHAIN:=stable}
: ${CARGO_TARGET_DIR:=target}
export CARGO_HOME CARGO_TARGET_DIR RUSTUP_TOOLCHAIN

export LIBGIT2_NO_VENDOR=1

_pkgname="git-interactive-rebase-tool"
pkgname="$_pkgname-git"
pkgver=2.4.1.r51.g4d16b29
pkgrel=1
pkgdesc="Terminal-based sequence editor for git interactive rebase"
url="https://github.com/MitMaro/git-interactive-rebase-tool"
license=('GPL-3.0-only')
arch=('x86_64')

depends=(
  'libgit2.so'
)
makedepends=(
  'git'
  'cargo'
)

_pkgsrc="$_pkgname"
source=("$_pkgsrc"::"git+$url.git")
sha256sums=('SKIP')

pkgver() {
  cd "$_pkgsrc"
  git describe --long --tags --abbrev=7 --exclude='*[a-zA-Z][a-zA-Z]*' \
    | sed -E 's/^[^0-9]*//;s/([^-]*-g)/r\1/;s/-/./g'
}

prepare() {
  cd "$_pkgsrc"
  cargo update
  cargo fetch --target "$(rustc -vV | sed -n 's/host: //p')"
}

build() {
  cd "$_pkgsrc"
  cargo build --frozen --release --bins --tests
}

check() {
  cd "$_pkgsrc"
  cargo test --release --locked
}

package() {
  cd "$_pkgsrc"
  install -Dm755 "$CARGO_TARGET_DIR/release/interactive-rebase-tool" -t "$pkgdir/usr/bin/"
  install -Dm644 "src/interactive-rebase-tool.1" -t "$pkgdir/usr/share/man/man1/"
}
