# Template file for 'cargo-bootstrap'
pkgname=cargo-bootstrap
version=1.97.1
revision=1
short_desc="Bootstrap binaries of Rust package manager"
maintainer="Orphaned <orphan@voidlinux.org>"
license="Apache-2.0 OR MIT"
homepage="https://www.rust-lang.org/"
conflicts="cargo>=0"
lib32disabled=yes
nostrip=yes
repository=bootstrap

_bootstrap_url="https://static.rust-lang.org/dist"

case "$XBPS_TARGET_MACHINE" in
	x86_64*|i686|aarch64*) ;;
	# See srcpkgs/rust-bootstrap/files/generating-distfiles.md for details
	*) _bootstrap_url="https://repo-default.voidlinux.org/distfiles" ;;
esac

# hardcode platform triplets
# because this info isn't available here without hacky workarounds
case "$XBPS_TARGET_MACHINE" in
	i686)
		distfiles="${_bootstrap_url}/cargo-${version}-i686-unknown-linux-gnu.tar.xz"
		checksum="b76d87a7a550c51c48d4e9396cec29917b2e8fcac7b7ffeb6da01b22e2b723dc"
		;;
	x86_64)
		distfiles="${_bootstrap_url}/cargo-${version}-x86_64-unknown-linux-gnu.tar.xz"
		checksum="e1be5f5ff7f7f80ca506fb65770b759edbdc6d303781ed71c5de8ec8a8394779"
		;;
	x86_64-musl)
		distfiles="${_bootstrap_url}/cargo-${version}-x86_64-unknown-linux-musl.tar.xz"
		checksum="623a1315bdbddc5e7a807aaf7e1911d1435a294758e170b8758f49fc57a3e67c"
		;;
	aarch64)
		distfiles="${_bootstrap_url}/cargo-${version}-aarch64-unknown-linux-gnu.tar.xz"
		checksum="8f70bcaccea5ba4db187c3fd4d64e24592b4e16af513497201f5909d61691dbe"
		;;
	aarch64-musl)
		distfiles="${_bootstrap_url}/cargo-${version}-aarch64-unknown-linux-musl.tar.xz"
		checksum="7a0f929c8cfb1fa6b594915a4dc7c0b9f41fd3dfe2deadef76ba5eb50589dc9e"
		;;
	# placeholders for user-supplied distfiles
	ppc64le)
		distfiles="${_bootstrap_url}/cargo-${version}-powerpc64le-unknown-linux-gnu.tar.xz"
		checksum="badbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadb"
		;;
	ppc64le-musl)
		distfiles="${_bootstrap_url}/cargo-${version}-powerpc64le-unknown-linux-musl.tar.xz"
		checksum="badbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadb"
		;;
	ppc64)
		distfiles="${_bootstrap_url}/cargo-${version}-powerpc64-unknown-linux-gnu.tar.xz"
		checksum="badbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadb"
		;;
	ppc)
		distfiles="${_bootstrap_url}/cargo-${version}-powerpc-unknown-linux-gnu.tar.xz"
		checksum="badbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadb"
		;;
	*) broken="cargo bootstrap binaries unavailable for ${XBPS_TARGET_MACHINE}";;
esac

do_install() {
	vbin cargo/bin/cargo
	vlicense LICENSE-APACHE
	vlicense LICENSE-MIT
	vlicense LICENSE-THIRD-PARTY
}
