cargo: update to 0.49.0 + refactoring

always use a fetched bootstrap tarball now: we have no real reason
to self-depend in cargo's case (in rust this is necessary to avoid
having to build stage0) so simplify the template that way

also, it seems since this release rust no longer ships separate
binary tarballs of cargo that use cargo's own versioning, which
is a bit of a pain in the ass

also switch to python3
This commit is contained in:
q66 2020-12-13 00:42:39 +01:00 committed by Daniel Kolesa
parent c4426b14b8
commit 82ca7bf467

View file

@ -1,24 +1,37 @@
# Template file for 'cargo' # Template file for 'cargo'
pkgname=cargo pkgname=cargo
version=0.47.0 version=0.49.0
revision=1 revision=1
wrksrc="cargo-${version}" wrksrc="cargo-${version}"
build_helper=rust build_helper=rust
hostmakedepends="rust python curl cmake pkg-config" hostmakedepends="rust python3 curl cmake pkg-config"
makedepends="libcurl-devel" makedepends="rust libcurl-devel"
depends="rust" depends="rust"
short_desc="Rust package manager" short_desc="Rust package manager"
maintainer="Enno Boland <gottox@voidlinux.org>" maintainer="Enno Boland <gottox@voidlinux.org>"
license="MIT, Apache-2.0" license="MIT, Apache-2.0"
homepage="https://crates.io/" homepage="https://crates.io/"
distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz" distfiles="https://github.com/rust-lang/cargo/archive/${version}.tar.gz"
checksum=e0eb4e72a6ba4d39040500ce24a12975379c1ddd39c04f23a0e4739e520965de checksum=59ba1ce05becb4a5e0772d334d75f9dce3d5487ca288ac986e786241bb1cbac5
replaces="cargo-tree>=0" replaces="cargo-tree>=0"
_cargo_dist_version=0.46.1
build_options="static bindist" build_options="static bindist"
desc_option_bindist="Generate a tarball for bootstrap" desc_option_bindist="Generate a tarball for bootstrap"
# rust upstream no longer ships cargo-versioned tarballs
# need to use the corresponding rust version instead
_bootstrap_url="https://static.rust-lang.org/dist"
_cargo_dist_version="1.48.0"
case "$XBPS_MACHINE" in
x86_64*|i686|ppc64le) ;;
ppc*)
# custom bootstrap tarballs still use cargo versioning, so override
_bootstrap_url="https://alpha.de.repo.voidlinux.org/distfiles"
_cargo_dist_version="0.49.0"
;;
esac
if [ -n "$build_option_static" -o -n "$build_option_bindist" ]; then if [ -n "$build_option_static" -o -n "$build_option_bindist" ]; then
_build_static=yes _build_static=yes
fi fi
@ -27,70 +40,55 @@ if [ -z "$_build_static" ]; then
makedepends+=" libgit2-devel" makedepends+=" libgit2-devel"
fi fi
if [ "$CROSS_BUILD" ]; then distfiles+=" ${_bootstrap_url}/cargo-${_cargo_dist_version}-${RUST_BUILD}.tar.xz"
hostmakedepends+=" cargo"
makedepends+=" rust"
else
_bootstrap_url="https://static.rust-lang.org/dist"
case "$XBPS_MACHINE" in case "$XBPS_MACHINE" in
x86_64*|i686|ppc64le) ;; i686)
ppc*) _bootstrap_url="https://alpha.de.repo.voidlinux.org/distfiles" ;; checksum+="
*) broken="unsupported host: ${XBPS_MACHINE}" ;; 1eab76df91e87198632605752d0dd66f3d84b502cbd1f982f6db3d0d8d943cdb"
esac ;;
x86_64)
distfiles+=" checksum+="
${_bootstrap_url}/cargo-${_cargo_dist_version}-${RUST_BUILD}.tar.xz" b11d595581e2580c069b5039214e1031a0e4f87ff6490ac39f92f77857e37055"
;;
case "$XBPS_MACHINE" in x86_64-musl)
i686) checksum+="
checksum+=" 8728cb7515e593f6fcf3c7afba826a92cd227a35b8e936bae892b95482d4fb90"
8931dba1c23405fe630aa4ca2aceaba7de74c21cc03947c757b349d004d6a4d6" ;;
;; ppc64le)
x86_64) checksum+="
checksum+=" 675321cf812a132ce707261d03aab2f5ff64788ae66b45d03bc281514f5d53ec"
a27eb5d47b520ef2c554605bf789f80652af63531b4f6a1195d61b3dfd0f6e9c" ;;
;; ppc64le-musl)
x86_64-musl) checksum+="
checksum+=" cf02e057f04e40458b63326e443c48924c78fc33dcb6b892643d47feb1496b09"
895a3b6928a5bf7b1ac28c339a85ddd078dd719f54245b8d845370baf8255368" ;;
;; ppc64)
ppc64le) checksum+="
checksum+=" 1e7612ea1900b76924429fa04fa2c194f4213167933b481001290dd4fef27939"
93354ae5cedaa75d44928d5e232cd9a57a9164cadf47d4a30493c05e60b59b7f" ;;
;; ppc64-musl)
ppc64le-musl) checksum+="
checksum+=" 88ffadd53e79055ba266f1303d502bcf1ef863783b121aa017930cadcd0e398d"
12da677338f860362e00089fe5b67ecd619c0ae4a4ca2bd14e500df32f598f49" ;;
;; ppc)
ppc64) checksum+="
checksum+=" cacacdec7bfd24345804efdd1bd1682084880c3c6a086bcab85cd1186b6cd230"
eab0c2d96f863e3c87afc46d43c54df6614af333b98ee881278acf56d9bf3fe8" ;;
;; ppc-musl)
ppc64-musl) checksum+="
checksum+=" bad4a5d22da3c7548fd440d0d5a0b98e4de9894dedb35bfb58aaa5f141c23adb"
48770d0f7941005c87c0ddf303a7eca2fcff4c56cfdaaf60b5d862dfeee2a59d" ;;
;; *) broken="bootstrap binary unavailable for ${XBPS_MACHINE}";;
ppc) esac
checksum+="
034af894e980f642e31d35978d8cbb8839fe9c8f1119083a720a58f7ad7fb881"
;;
ppc-musl)
checksum+="
aac08878b9ce3bf7dff4247e988fdaddeaa410cccc8559f8e7e0fd45d8f2ece5"
;;
esac
fi
post_extract() { post_extract() {
if [ -z "$CROSS_BUILD" ]; then mkdir -p target/snapshot
mkdir -p target/snapshot cp ../cargo-${_cargo_dist_version}-${RUST_TARGET}/cargo/bin/cargo cargo
cp ../cargo-${_cargo_dist_version}-${RUST_TARGET}/cargo/bin/cargo cargo
fi
} }
do_build() { do_build() {
local cargo cargs local cargs
if [ -n "$_build_static" ]; then if [ -n "$_build_static" ]; then
unset LIBSSH2_SYS_USE_PKG_CONFIG unset LIBSSH2_SYS_USE_PKG_CONFIG
@ -100,17 +98,11 @@ do_build() {
export OPENSSL_DIR="${XBPS_CROSS_BASE}/usr" export OPENSSL_DIR="${XBPS_CROSS_BASE}/usr"
fi fi
if [ "$CROSS_BUILD" ]; then
cargo="cargo"
else
cargo="./cargo"
fi
if [ -n "$_build_static" ]; then if [ -n "$_build_static" ]; then
cargs+=" --features=all-static" cargs+=" --features=all-static"
fi fi
$cargo build --release ${cargs} ./cargo build --release ${cargs}
} }
do_install() { do_install() {