maintainer="qaqland <qaq@qaq.land>"
pkgname=cargo-flamegraph
pkgver=0.6.8
pkgrel=0
pkgdesc="Easy flamegraphs for Rust projects and everything else, without Perl or pipes"
url="https://github.com/flamegraph-rs/flamegraph"
arch="all"
license="MIT OR Apache-2.0"
depends="perf"
makedepends="cargo cargo-auditable"
subpackages="
	$pkgname-doc
	$pkgname-bash-completion
	$pkgname-fish-completion
	$pkgname-zsh-completion
	"
source="https://github.com/flamegraph-rs/flamegraph/archive/v$pkgver/cargo-flamegraph-$pkgver.tar.gz"
builddir="$srcdir/flamegraph-$pkgver"
options="net !check" # cargo fetch; upstream no check

prepare() {
	default_prepare

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

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

	target/release/flamegraph --completions bash > flamegraph
	target/release/flamegraph --completions fish > flamegraph.fish
	target/release/flamegraph --completions zsh > _flamegraph
}

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

	install -Dm644 README.md -t "$pkgdir"/usr/share/doc/$pkgname
	install -Dm644 LICENSE-MIT LICENSE-APACHE -t "$pkgdir"/usr/share/licenses/$pkgname

	install -Dm644 flamegraph -t "$pkgdir"/usr/share/bash-completion/completions
	install -Dm644 flamegraph.fish -t "$pkgdir"/usr/share/fish/vendor_completions.d
	install -Dm644 _flamegraph -t "$pkgdir"/usr/share/zsh/site-functions
}

sha512sums="
f5e87f96773180f2691d6810a3fadc5dac88157adee3d82b8016d165d2896be22019340500656cc386a4ab060837e5f54fc27bb6435733792d5a74116f9cc13a  cargo-flamegraph-0.6.8.tar.gz
"