# Contributor: kpcyrd <git@rxv.cc>
# Maintainer: kpcyrd <git@rxv.cc>
pkgname=cargo-outdated
pkgver=0.17.0
pkgrel=0
pkgdesc="Cargo subcommand for displaying when Rust dependencies are out of date"
url="https://github.com/kbknapp/cargo-outdated"
arch="all"
license="MIT"
makedepends="
	cargo
	cargo-auditable
	curl-dev
	!libgit2-dev
	libssh2-dev
	openssl-dev>3
	zlib-dev
	"
subpackages="$pkgname-doc"
options="net"
source="$pkgname-$pkgver.tar.gz::https://github.com/kbknapp/cargo-outdated/archive/v$pkgver.tar.gz"

export LIBSSH2_SYS_USE_PKG_CONFIG=1
export LIBGIT2_NO_VENDOR=0 # temporarily use vendored libgit2, fix cargo(crate) 0.84

prepare() {
	default_prepare

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

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

check() {
	# Increase stack size to avoid stack overflow while compiling 'p384'.
	export RUST_MIN_STACK="4194304"

	cargo test --frozen
}

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

	install -Dm 644 -t "$pkgdir/usr/share/doc/cargo-outdated" README.md
}

sha512sums="
ec39837536156fa30810f3f40ef0805c2178c360dfe711c2dd6e41014f621539dd41a5b592b5a836ac983fafb74dcdd46f80860701e9efe30a7db2bae159a14f  cargo-outdated-0.17.0.tar.gz
"
