pkgver=1.7.0.r1376
_name=map-tool
pkgname=$_name-git
pkgrel=1
pkgdesc="A tool for working with bhop and surf maps."
arch=('x86_64')
url="https://git.itzana.me/StrafesNET/strafe-project"
license=('MIT')
makedepends=('cargo')
source=("$pkgname::git+$url")
sha256sums=('SKIP')

pkgver() {
	cd "$pkgname/$_name"

	# Parse Cargo.toml to get version number
	local version=$(grep -oP 'version\s*=\s*"\K[^"]+' Cargo.toml | head -n 1)

	# Get git revision number
	local revision=$(git rev-list --count HEAD)

	# Combine version and revision to form PKGBUILD version string
	echo "${version}.r${revision}"
}

prepare() {
	cd "$pkgname/$_name"
	export RUSTUP_TOOLCHAIN=stable
	cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
}

build() {
	cd "$pkgname"
	export RUSTUP_TOOLCHAIN=stable
	export CARGO_TARGET_DIR=target
	cargo build --frozen --release --all-features --bin "$_name"
}

check() {
	cd "$pkgname/$_name"
	export RUSTUP_TOOLCHAIN=stable
	cargo test --frozen --all-features
}

package() {
	cd $pkgname
	install -Dm0755 -t "$pkgdir/usr/bin/" "target/release/$_name"
}