# Contributor: Matthias Ahouansou <matthias@ahouansou.cz>
# Maintainer: Matthias Ahouansou <matthias@ahouansou.cz>
pkgname=cargo-deny
pkgver=0.18.3
pkgrel=0
pkgdesc="Cargo plugin for linting your dependencies"
url="https://github.com/EmbarkStudios/cargo-deny"
arch="all !s390x"
license="MIT OR Apache-2.0"
makedepends="
	cargo
	cargo-auditable
	"
source="$pkgname-$pkgver.tar.gz::https://github.com/EmbarkStudios/cargo-deny/archive/refs/tags/$pkgver.tar.gz"
options="net"

prepare() {
	default_prepare
	# remove upstream's compile flags for musl target
	rm -r .cargo/
	cargo fetch --target="$CTARGET" --locked
}

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

check() {
	# These tests require the advisory repos to be cloned via git
	cargo test --frozen -- \
		--skip detects_unmaintained \
		--skip detects_unsound \
		--skip detects_vulnerabilities \
		--skip downgrades_lint_levels \
		--skip fails_on_stale_advisory_database \
		--skip fetches_with_git \
		--skip fetches_with_gix \
		--skip warns_on_ignored_and_withdrawn \
		--skip warns_on_index_failures
}

package() {
	install -Dm 755 target/release/cargo-deny "$pkgdir"/usr/bin/cargo-deny

	for l in APACHE MIT
	do
		install -Dm 644 LICENSE-"$l" "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE-"$l"
	done
}

sha512sums="
db89257aedee06000c592596bf21fe68ddb69227cda2a929b186ec7842f7a5a619631a0c97764a3cc76a3036d37dc492a107324f31e9a804a16bfc6a2ec350ff  cargo-deny-0.18.3.tar.gz
"
