From fac15f340eae192e4df2180ef53ed07aeaadfdfd Mon Sep 17 00:00:00 2001 From: idealseal Date: Fri, 19 Jun 2026 16:16:32 +0000 Subject: [PATCH] dev-util/sccache: add 0.16.0 Signed-off-by: idealseal Part-of: https://codeberg.org/gentoo/gentoo/pulls/1195 Merges: https://codeberg.org/gentoo/gentoo/pulls/1195 Signed-off-by: Sam James --- dev-util/sccache/Manifest | 2 + dev-util/sccache/sccache-0.16.0.ebuild | 114 +++++++++++++++++++++++++ 2 files changed, 116 insertions(+) create mode 100644 dev-util/sccache/sccache-0.16.0.ebuild diff --git a/dev-util/sccache/Manifest b/dev-util/sccache/Manifest index bd549fb615dcf..f0dd55f6ca803 100644 --- a/dev-util/sccache/Manifest +++ b/dev-util/sccache/Manifest @@ -3,3 +3,5 @@ DIST sccache-0.14.0-crates.tar.xz 32418420 BLAKE2B f1ca91b632ec1b5d5c1aeb08e220f DIST sccache-0.14.0.tar.gz 436677 BLAKE2B f2b8b7a76ff5aef6d3a0e96c8fb363b19c0a0cd1611d3cc9e88c2b9bb47fa343780ae6cf9175e1ffc51cb1428375acfbd1b62843d221d6499f46c359034d8b7e SHA512 9ff3aeb9b29029f60fa67ce7a5cba2b36b5141699085029b0701c716a25b27d0c1d04d9f37036c6bdee009e3c3f3ab525d4064cf10016977bb387d5a73467d38 DIST sccache-0.15.0-crates.tar.xz 32724088 BLAKE2B 67b4f70b861274eafc695516b66f5caf2e4ed625963896597b8630b7644883b698db6a53e3b9c034890055cf1516d976ed7e1e3f10a642a55473c6a88ae8aa51 SHA512 63a62b62fcae689674f3b08a928b62299b1df43f2e093262c3f0990e393036194ae7ab6274a51abe1d579c32128f6c492a0e15f360f22590f364d8d7231c1c36 DIST sccache-0.15.0.tar.gz 470381 BLAKE2B 856169402e8ad9099b5cf9dbee71c8d2b5dc843e5f89711f22ac919ffaad0c961ccc270aa04dedd56067effc5c60d3b8756ef9f690a66acb532af3d602c2f473 SHA512 0df93c7662aee904e8a1424a700ae9c9ac255583aca88cf73eed232a041dcf5ebe76da2c28b08f2da79b2896c00228755916eed21526aae6354ba1afc78b9e12 +DIST sccache-0.16.0-crates.tar.xz 32724088 BLAKE2B 67b4f70b861274eafc695516b66f5caf2e4ed625963896597b8630b7644883b698db6a53e3b9c034890055cf1516d976ed7e1e3f10a642a55473c6a88ae8aa51 SHA512 63a62b62fcae689674f3b08a928b62299b1df43f2e093262c3f0990e393036194ae7ab6274a51abe1d579c32128f6c492a0e15f360f22590f364d8d7231c1c36 +DIST sccache-0.16.0.tar.gz 476256 BLAKE2B 3e61eb60bc95c075fd88d4769f603cec7a40de7569f95df272de6eba93a3e1f6011822b498cfad9bb635fbedc1a3d44516f4973c28f858efe300543be4aee498 SHA512 ecc994181fbdfde6ed1fecc6663716a24bd2c0846bd6b8b1b1b79f74b02c632143c89d053a53b25ce2f17272187118f504cf697ee7daf451caf1e2ea31185f20 diff --git a/dev-util/sccache/sccache-0.16.0.ebuild b/dev-util/sccache/sccache-0.16.0.ebuild new file mode 100644 index 0000000000000..4756715e03630 --- /dev/null +++ b/dev-util/sccache/sccache-0.16.0.ebuild @@ -0,0 +1,114 @@ +# Copyright 2017-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Autogenerated by pycargoebuild 0.7 + +EAPI=8 + +CRATES="" +# Required for tests but not included by pycargoebuild. +CRATES+=" + itoa@0.3.4 +" + +# https://github.com/mozilla/sccache?tab=readme-ov-file#build-requirements +RUST_MIN_VER="1.85.0" + +inherit cargo optfeature systemd + +DESCRIPTION="ccache/distcc like tool with support for rust and cloud storage" +HOMEPAGE="https://github.com/mozilla/sccache" +SRC_URI=" + https://github.com/mozilla/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://github.com/gentoo-crate-dist/sccache/releases/download/v${PV}/sccache-${PV}-crates.tar.xz + ${CARGO_CRATE_URIS} +" + +LICENSE="Apache-2.0" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 BSD-2 BSD CC0-1.0 CDLA-Permissive-2.0 ISC MIT MPL-2.0 + Unicode-3.0 Unicode-DFS-2016 ZLIB +" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~loong ~ppc64" +IUSE="azure dist-client dist-server gcs memcached redis s3 webdav" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + app-arch/zstd:= + virtual/zlib:= + dist-server? ( dev-libs/openssl:= ) + gcs? ( dev-libs/openssl:= ) +" +RDEPEND=" + ${DEPEND} + dev-util/shadowman +" +# Needed for eselect calls in pkg_* +IDEPEND="dev-util/shadowman" + +QA_FLAGS_IGNORED="usr/bin/sccache*" + +CARGO_SKIP_TESTS=( + test_sccache_command::without_preprocessor_cache +) + +pkg_setup() { + export OPENSSL_NO_VENDOR=1 + export PKG_CONFIG_ALLOW_CROSS=1 + export ZSTD_SYS_USE_PKG_CONFIG=1 + rust_pkg_setup +} + +src_configure() { + local myfeatures=( + $(usev azure) + $(usev dist-client) + $(usev dist-server) + $(usev gcs) + $(usev memcached) + $(usev redis) + $(usev s3) + $(usev webdav) + ) + + cargo_src_configure --no-default-features +} + +src_install() { + cargo_src_install + + keepdir /etc/sccache + + insinto /usr/share/shadowman/tools + newins - sccache <<<"${EPREFIX}/usr/lib/sccache/bin" + + dodoc -r docs + + if use dist-server; then + newinitd "${FILESDIR}"/server.initd sccache-server + newconfd "${FILESDIR}"/server.confd sccache-server + + newinitd "${FILESDIR}"/scheduler.initd sccache-scheduler + newconfd "${FILESDIR}"/scheduler.confd sccache-scheduler + + systemd_dounit "${FILESDIR}"/sccache-server.service + systemd_dounit "${FILESDIR}"/sccache-scheduler.service + fi +} + +pkg_postinst() { + use memcached && optfeature "memcached backend support" net-misc/memcached + use redis && optfeature "redis backend support" dev-db/redis + + if [[ -z ${ROOT} ]]; then + eselect compiler-shadow update sccache + fi +} + +pkg_prerm() { + if [[ -z ${REPLACE_BY_VERSION} && -z ${ROOT} ]]; then + eselect compiler-shadow remove sccache + fi +}