# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=taplo
_pkgname=release-taplo-cli
pkgver=0.9.3
pkgrel=0
pkgdesc="A TOML toolkit written in Rust"
url="https://taplo.tamasfe.dev/"
# loongarch64: blocked by libc crate
arch="all !loongarch64"
license="MIT"
makedepends="
	cargo
	cargo-auditable
	openssl-dev
	"
source="https://github.com/tamasfe/taplo/archive/$_pkgname-$pkgver/$_pkgname-$pkgver.tar.gz
	fix-cargo-lock.patch
	"
builddir="$srcdir/taplo-$_pkgname-$pkgver"

export CARGO_PROFILE_RELEASE_OPT_LEVEL="z"

case "$CARCH" in
	# s390x: fails to build nix crate
	s390x) _features="native-tls";;
	*) _features="lsp,native-tls";;
esac

_cargo_opts="--frozen --no-default-features --features $_features"

prepare() {
	default_prepare

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

	# Dependency only for benchmarks, doesn't build on many arches.
	sed -i '/pprof/d' crates/taplo/Cargo.toml

	cargo fetch --target="$CTARGET"  # update Cargo.lock
}

build() {
	cargo auditable build -p taplo-cli $_cargo_opts --release
}

check() {
	cargo test $_cargo_opts
}

package() {
	install -D -m755 target/release/$pkgname -t "$pkgdir"/usr/bin/
}

sha512sums="
60f6b218353b745a9c4e385fa450b3c7b1106704f19c4520a4ae0a0de29870676d49a5c1c92024a15668877f64b94f9d97e38c696ad8460e5c9cb45a0ab2ba1d  release-taplo-cli-0.9.3.tar.gz
a28f679d184706dd5b1ffd740502faee44ac17383c9bc33167b9b2628c3ed1e430cfad6c39e004b084d75580c74474495a4145d38699211a2c7e504fac70301e  fix-cargo-lock.patch
"
