commit: 92001837418f3a50e6571c0f533520b42f90d488 Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Sun Dec 24 12:25:39 2023 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Fri Jan 5 10:54:19 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92001837
cargo.eclass: Support PKGBUMPING to avoid fetching/unpacking crates Support using the PKGBUMPING variable set by pkgbump/pkgdiff-mg to avoid respectively fetching and unpacking crates, to speed up using these tools. Closes: https://github.com/gentoo/gentoo/pull/34459 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> eclass/cargo.eclass | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/eclass/cargo.eclass b/eclass/cargo.eclass index 1e1a6e3ddfe2..7bdd548b0df8 100644 --- a/eclass/cargo.eclass +++ b/eclass/cargo.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: cargo.eclass @@ -175,6 +175,9 @@ ECARGO_VENDOR="${ECARGO_HOME}/gentoo" # If no arguments are provided, it uses the CRATES variable. # The value is set as CARGO_CRATE_URIS. _cargo_set_crate_uris() { + # when called by pkgbump, do not fetch crates + [[ ${PKGBUMPING} == ${PVR} ]] && return + local -r regex='^([a-zA-Z0-9_\-]+)-([0-9]+\.[0-9]+\.[0-9]+.*)$' local crates=${1} local crate @@ -331,6 +334,9 @@ cargo_src_unpack() { for archive in ${A}; do case "${archive}" in *.crate) + # when called by pkgdiff-mg, do not unpack crates + [[ ${PKGBUMPING} == ${PVR} ]] && continue + ebegin "Loading ${archive} into Cargo registry" tar -xf "${DISTDIR}"/${archive} -C "${ECARGO_VENDOR}/" || die # generate sha256sum of the crate itself as cargo needs this