summaryrefslogtreecommitdiff
path: root/eclass/rust-toolchain.eclass
diff options
context:
space:
mode:
Diffstat (limited to 'eclass/rust-toolchain.eclass')
-rw-r--r--eclass/rust-toolchain.eclass59
1 files changed, 20 insertions, 39 deletions
diff --git a/eclass/rust-toolchain.eclass b/eclass/rust-toolchain.eclass
index 89bca88b9e6b..41fccb7c4a07 100644
--- a/eclass/rust-toolchain.eclass
+++ b/eclass/rust-toolchain.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: rust-toolchain.eclass
@@ -73,6 +73,7 @@ rust_abi() {
rust_arch_uri() {
if [ -n "$3" ]; then
echo "${RUST_TOOLCHAIN_BASEURL}${2}-${1}.tar.xz -> ${3}-${1}.tar.xz"
+ echo "verify-sig? ( ${RUST_TOOLCHAIN_BASEURL}${2}-${1}.tar.xz.asc -> ${3}-${1}.tar.xz.asc )"
else
echo "${RUST_TOOLCHAIN_BASEURL}${2}-${1}.tar.xz"
echo "verify-sig? ( ${RUST_TOOLCHAIN_BASEURL}${2}-${1}.tar.xz.asc )"
@@ -80,7 +81,7 @@ rust_arch_uri() {
}
# @FUNCTION: rust_all_arch_uris
-# @USAGE: <base-uri> [alt-distfile-basename]
+# @USAGE: [alt-distfile-basename] [rust_arch_uri-rename-param]
# @DESCRIPTION:
# Outputs the URIs for SRC_URI to help fetch dependencies, using a base URI
# provided as an argument. Optionally allows for distfile renaming via a specified
@@ -91,51 +92,31 @@ rust_arch_uri() {
#
rust_all_arch_uris()
{
+ local alt_basename="$1"
+ local rename_param="$2"
+
echo "
- abi_x86_32? ( elibc_glibc? ( $(rust_arch_uri i686-unknown-linux-gnu "$@") ) )
+ abi_x86_32? ( elibc_glibc? ( $(rust_arch_uri i686-unknown-linux-gnu "${alt_basename}" "${rename_param}") ) )
abi_x86_64? (
- elibc_glibc? ( $(rust_arch_uri x86_64-unknown-linux-gnu "$@") )
- elibc_musl? ( $(rust_arch_uri x86_64-unknown-linux-musl "$@") )
+ elibc_glibc? ( $(rust_arch_uri x86_64-unknown-linux-gnu "${alt_basename}" "${rename_param}") )
+ elibc_musl? ( $(rust_arch_uri x86_64-unknown-linux-musl "${alt_basename}" "${rename_param}") )
)
arm? ( elibc_glibc? (
- $(rust_arch_uri arm-unknown-linux-gnueabi "$@")
- $(rust_arch_uri arm-unknown-linux-gnueabihf "$@")
- $(rust_arch_uri armv7-unknown-linux-gnueabihf "$@")
+ $(rust_arch_uri arm-unknown-linux-gnueabi "${alt_basename}" "${rename_param}")
+ $(rust_arch_uri arm-unknown-linux-gnueabihf "${alt_basename}" "${rename_param}")
+ $(rust_arch_uri armv7-unknown-linux-gnueabihf "${alt_basename}" "${rename_param}")
) )
arm64? (
- elibc_glibc? ( $(rust_arch_uri aarch64-unknown-linux-gnu "$@") )
- elibc_musl? ( $(rust_arch_uri aarch64-unknown-linux-musl "$@") )
+ elibc_glibc? ( $(rust_arch_uri aarch64-unknown-linux-gnu "${alt_basename}" "${rename_param}") )
+ elibc_musl? ( $(rust_arch_uri aarch64-unknown-linux-musl "${alt_basename}" "${rename_param}") )
)
- ppc? ( elibc_glibc? ( $(rust_arch_uri powerpc-unknown-linux-gnu "$@") ) )
+ ppc? ( elibc_glibc? ( $(rust_arch_uri powerpc-unknown-linux-gnu "${alt_basename}" "${rename_param}") ) )
ppc64? (
- big-endian? ( elibc_glibc? ( $(rust_arch_uri powerpc64-unknown-linux-gnu "$@") ) )
- !big-endian? ( elibc_glibc? ( $(rust_arch_uri powerpc64le-unknown-linux-gnu "$@") ) )
+ big-endian? ( elibc_glibc? ( $(rust_arch_uri powerpc64-unknown-linux-gnu "${alt_basename}" "${rename_param}") ) )
+ !big-endian? ( elibc_glibc? ( $(rust_arch_uri powerpc64le-unknown-linux-gnu "${alt_basename}" "${rename_param}") ) )
)
- riscv? ( elibc_glibc? ( $(rust_arch_uri riscv64gc-unknown-linux-gnu "$@") ) )
- s390? ( elibc_glibc? ( $(rust_arch_uri s390x-unknown-linux-gnu "$@") ) )
+ riscv? ( elibc_glibc? ( $(rust_arch_uri riscv64gc-unknown-linux-gnu "${alt_basename}" "${rename_param}") ) )
+ s390? ( elibc_glibc? ( $(rust_arch_uri s390x-unknown-linux-gnu "${alt_basename}" "${rename_param}") ) )
+ loong? ( elibc_glibc? ( $(rust_arch_uri loongarch64-unknown-linux-gnu "${alt_basename}" "${rename_param}") ) )
"
-
- # Upstream did not gain support for loong until v1.71.0.
- # NOTE: Merge this into the block above after every <1.71.0 version is
- # gone from tree.
- local arg_version="${1##*-}"
- arg_version="${arg_version:-$PV}"
- if ver_test "${arg_version}" -ge 1.71.0; then
- echo "loong? ( elibc_glibc? ( $(rust_arch_uri loongarch64-unknown-linux-gnu "$@") ) )"
- fi
-
- # until https://github.com/rust-lang/rust/pull/113274 is resolved, there
- # will not be upstream-built mips artifacts
- if ver_test "${arg_version}" -lt 1.72.0; then
- echo "mips? (
- abi_mips_o32? (
- big-endian? ( $(rust_arch_uri mips-unknown-linux-gnu "$@") )
- !big-endian? ( $(rust_arch_uri mipsel-unknown-linux-gnu "$@") )
- )
- abi_mips_n64? (
- big-endian? ( $(rust_arch_uri mips64-unknown-linux-gnuabi64 "$@") )
- !big-endian? ( $(rust_arch_uri mips64el-unknown-linux-gnuabi64 "$@") )
- )
- )"
- fi
}