maintainer="Hoang Nguyen <folliekazetani@protonmail.com>"
pkgname=cargo-update
pkgver=15.0.0
pkgrel=1
pkgdesc="cargo subcommand for checking and applying updates to installed executables"
url="https://github.com/nabijaczleweli/cargo-update"
arch="all"
license="MIT"
makedepends="cargo cargo-auditable ronn curl-dev libgit2-dev libssh-dev"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/nabijaczleweli/cargo-update/archive/refs/tags/v$pkgver.tar.gz"

export LIBSSH2_SYS_USE_PKG_CONFIG=1

prepare() {
	default_prepare

	# Rust target triple.
	local target=$(rustc -vV | sed -n 's/host: //p')

	# Build against system-provided libs
	mkdir -p .cargo
	cat >> .cargo/config.toml <<-EOF
		[target.$target]
		git2 = { rustc-link-lib = ["git2"] }
	EOF

	cargo fetch --target="$CTARGET"
}

build() {
	cargo auditable build --frozen --release
	ronn --roff --organization="CARGO-UPDATE $pkgver" man/*.md
}

check() {
	TMPDIR="$srcdir" cargo test --frozen
}

package() {
	install -Dm755 -t "$pkgdir"/usr/bin/ \
		target/release/cargo-install-update \
		target/release/cargo-install-update-config

	install -Dm644 man/cargo-install-update*.1 \
		-t "$pkgdir"/usr/share/man/man1/
}

sha512sums="
4cf1185a5e33fc773fda5143af240b503b88f44e4fed3612778efae1412e027b0e8c3cd025b023030a4e1f7465616df238013ddda6d7dc9066d644af323dfb13  cargo-update-15.0.0.tar.gz
"
