# Contributor: Thomas Böhler <witcher@wiredspace.de>
# Maintainer: Thomas Böhler <witcher@wiredspace.de>
pkgname=cocogitto
pkgver=6.2.0
pkgrel=0
pkgdesc="The Conventional Commits toolbox"
url="https://docs.cocogitto.io/"
# loongarch64: blocked by libc crate
arch="all !loongarch64"
license="MIT"
makedepends="cargo cargo-auditable"
subpackages="
	$pkgname-doc
	$pkgname-bash-completion
	$pkgname-fish-completion
	$pkgname-zsh-completion
	"
source="
	$pkgname-$pkgver.tar.gz::https://github.com/cocogitto/cocogitto/archive/refs/tags/$pkgver.tar.gz
	"
options="!check" # tests relies on, among other things, specific tags

prepare() {
	default_prepare

	cargo fetch --target="$CTARGET" --locked
}

build() {
	cargo auditable build --frozen --release

	local compgen="target/release/cog generate-completions"

	$compgen bash > cog.bash
	$compgen fish > cog.fish
	$compgen zsh > cog.zsh

	mkdir man
	target/release/cog generate-manpages man
}

package() {
	install -Dm755 -t "$pkgdir"/usr/bin target/release/cog

	install -Dm644 -t "$pkgdir"/usr/share/doc/"$pkgname" CHANGELOG.md
	install -Dm644 -t "$pkgdir"/usr/share/doc/"$pkgname" README.md

	install -Dm644 -t "$pkgdir"/usr/share/licenses/"$pkgname" LICENSE

	for i in man/*.1; do
		gzip "$i"
		install -Dm644 -t "$pkgdir"/usr/share/man/man1 "$i".gz
	done

	install -Dm644 cog.bash \
		"$pkgdir"/usr/share/bash-completion/completions/cog
	install -Dm644 cog.fish \
		"$pkgdir"/usr/share/fish/vendor_completions.d/cog.fish
	install -Dm644 cog.bash \
		"$pkgdir"/usr/share/zsh/site-functions/_cog
}

sha512sums="
98d6485e74e1e4664e353b29e165a22505207c8ce2fc1467ffe988ed9475349adc9c638f245ce1881c322a87158e39daef17bf0d350424dc444cabd700b4a39f  cocogitto-6.2.0.tar.gz
"
