summaryrefslogtreecommitdiff
path: root/dev-util/ccache
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/ccache')
-rw-r--r--dev-util/ccache/Manifest4
-rw-r--r--dev-util/ccache/ccache-4.4.ebuild86
-rw-r--r--dev-util/ccache/metadata.xml1
3 files changed, 90 insertions, 1 deletions
diff --git a/dev-util/ccache/Manifest b/dev-util/ccache/Manifest
index 62bb4e6f2ac8..f9f3409ba18e 100644
--- a/dev-util/ccache/Manifest
+++ b/dev-util/ccache/Manifest
@@ -4,7 +4,9 @@ AUX ccache-4.1-avoid-run-user.patch 557 BLAKE2B 956ac163da6c8acdefb5b39554906727
AUX ccache-4.3-PWD.patch 2677 BLAKE2B 4a21c496fc2e2249490246d9595935afe13244a4ba39181ac7193445299870a00f8168d6d1602d1ef17881ed32acae27ccb68a1cbc3b386e6c88a2bf5e8ee341 SHA512 2c71fccb53f6205e99995e66b2666834d5c3fd106933b715bc4325bafc27121e8cf6b7925ce1c9d524aac6941f444137c249bda837cfc7be4c08cf6cb5a49f8f
AUX ccache-config-3 2147 BLAKE2B 6e703e12b6a2f83b838f8b1d1e534de3366b6e2994990b30c381b0df28be9c0ae7c0f1d7325282e97ca54881171846c13945b264bd4a793785ff1a19d0941669 SHA512 05d512b001b6a2fdc947d10d810c89683144080a060c24a37422e9b587594e1ee42fa1d7607461571f196819dae92146d861e8ae116e9226e1ff97ea035b3003
DIST ccache-4.3.tar.xz 433508 BLAKE2B 6ab48aa587b4dc86020e3b0f722003dc5c03709626e143a1d38506b6072f9963fc76e89b6d18128dfc28035bf8d24e46ea44f219db69a1b3a294416f0b023090 SHA512 ec082de95ea8b22154ce1e67e0a0fc28266cfb71f382205f7eab14e6ac1c7841027d063041131832b3227d833d99ec874e90df238f35f433de4c381566931c7f
+DIST ccache-4.4.tar.xz 509516 BLAKE2B 6c4519d3cd93be49dfff09f22ada798894c9f4475395443e0dcfcf768178f1520cf26bc5c2e0ea22e06cc3ebd6ddaf930a2d1b517593a10c3253f7faa3131f43 SHA512 a857d1aded9c352eabba9c0f31b43fd17ae91672dabdfc086851448867c9dff6ad6dd7ee60f8e39102d41b7d8cf7866c6bf104e0214e865de45e75a8df7626f0
EBUILD ccache-4.3-r2.ebuild 2040 BLAKE2B 8016d81a0d7b8b4af592b49f1b16ae013a0a86db3900c94dc6c0b4fcc999f99469ec756679796b7917777e07bd359ce93e58f4e7569846651f881f60e6075e47 SHA512 6ed3f885dce3dfa048486b7635fc11e0506ba8d72e5379b04fd5c656ed769e3346aba429c163cf8960c8ffda049b3e4057b9c8c057ee46f1da1bf9d55dd9b79b
EBUILD ccache-4.3-r3.ebuild 2125 BLAKE2B c2390d35d1f1f32cd4861eadc080b06b35047207937c6a71eb88b175b849adb2af58f61713375e664328ae47bd0a07392461a611b0085344dbf29990934977dd SHA512 8c2b00b7f810beac432b18ce61620eef5d1a8187d0f9a7b5f29658291af6ad6f1498148fc2f422026871d068b8c8267b9c8460f4a980bcab560b601a883b7cde
EBUILD ccache-4.3.ebuild 1655 BLAKE2B b3cc038828f86dbd2d8060f5d13a197c399e7b99d0c0fcf4a82fbb498c212a9624fcb023f481c628a123fd1e2237689b1b094187c5fa1caa98aeca38c9c870d7 SHA512 0adb9fe19611bd373870e85d889b2bdaecb0fe6b11c40f3d48add1ecdca99c4b6beed5b151c685eaf13f0b11b0988bf870525ac23e3f78c865565f84e1aba156
-MISC metadata.xml 538 BLAKE2B 5d70ae3ee732e530a300eddb61097898034fd227dbc9f9b7d1a86004c755b247f3d7e23737e23a68028fa35d07d9fa76a940bbadcb2e279e80e297d0562fe169 SHA512 1688d981f12ab344da5a579da421675dded7bc1a1e7db5f784f4ab757c630a012e377802aff6b30a59d1928ec0f026d9a60a7d84e9eb0593f1de02b980a7d86a
+EBUILD ccache-4.4.ebuild 2204 BLAKE2B a6ae2e76ed4fe98970eeda1e36da986ccfedf80cc35b74414a7dba16853b3663908621c5b00029def4031c3324edbe44283c60ca353899d778e9d8e8e1f8d193 SHA512 5d7ccb58cea38b208092b87c954bfd029007b84cd09bc05fc79c3f6164a9ddde15321998c074436e3d2065edd104d27e32f067f811867407c743c82e34a5fb10
+MISC metadata.xml 631 BLAKE2B a1a635c7879c9865ba656bdc9461f16da2614bd83edf4cafdd4991c94fe34b77b45c1e9a4ed1db1bddc5f4f4bb8b7342fd73e830f845f4affbce8ef4e2e1c6fc SHA512 26bff6478179cfb159c04e8951f30e30707cd0e9a2439065bfd453a7e3be1280a4ea15fd920ea701d497c2fec3ef906d641d0c6e4952e9e1335d109137944d12
diff --git a/dev-util/ccache/ccache-4.4.ebuild b/dev-util/ccache/ccache-4.4.ebuild
new file mode 100644
index 000000000000..39f7580581d8
--- /dev/null
+++ b/dev-util/ccache/ccache-4.4.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake toolchain-funcs
+
+DESCRIPTION="Fast compiler cache"
+HOMEPAGE="https://ccache.dev/"
+SRC_URI="https://github.com/ccache/ccache/releases/download/v${PV}/ccache-${PV}.tar.xz"
+
+LICENSE="GPL-3 LGPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+# Enable 'static-c++' by default to make 'gcc' ebuild Just Work: bug #761220
+IUSE="redis +static-c++ test"
+RESTRICT="!test? ( test )"
+
+DEPEND="app-arch/zstd:=
+ redis? ( dev-libs/hiredis:= )"
+RDEPEND="${DEPEND}
+ dev-util/shadowman
+ sys-apps/gentoo-functions"
+# clang-specific tests use dev-libs/elfutils to compare objects for equality.
+# Let's pull in the dependency unconditionally.
+DEPEND+=" test? ( dev-libs/elfutils )"
+BDEPEND="app-text/asciidoc"
+
+DOCS=( doc/{AUTHORS,MANUAL,NEWS}.adoc CONTRIBUTING.md README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.5-nvcc-test.patch
+ "${FILESDIR}"/${PN}-4.0-objdump.patch
+ "${FILESDIR}"/${PN}-4.1-avoid-run-user.patch
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ sed \
+ -e "/^EPREFIX=/s:'':'${EPREFIX}':" \
+ "${FILESDIR}"/ccache-config-3 > ccache-config || die
+
+ # mainly used in tests
+ tc-export CC OBJDUMP
+
+ # Avoid dependency on libstdc++.so. Useful for cases when
+ # we would like to use ccache to build older gcc which injects
+ # into ccache locally built (possibly outdated) libstdc++
+ # See bug #761220 for examples.
+ #
+ # Ideally gcc should not use LD_PRELOAD to avoid this type of failures.
+ use static-c++ && append-ldflags -static-libstdc++
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DUSE_CCACHE=OFF
+ -DZSTD_FROM_INTERNET=OFF
+ -DREDIS_STORAGE_BACKEND=$(usex redis)
+ )
+
+ use redis && mycmakeargs+=( -DHIREDIS_FROM_INTERNET_DEFAULT=OFF )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ dobin ccache-config
+ insinto /usr/share/shadowman/tools
+ newins - ccache <<<"${EPREFIX}/usr/lib/ccache/bin"
+}
+
+pkg_prerm() {
+ if [[ -z ${REPLACED_BY_VERSION} && ${ROOT:-/} == / ]] ; then
+ eselect compiler-shadow remove ccache
+ fi
+}
+
+pkg_postinst() {
+ if [[ ${ROOT:-/} == / ]]; then
+ eselect compiler-shadow update ccache
+ fi
+}
diff --git a/dev-util/ccache/metadata.xml b/dev-util/ccache/metadata.xml
index f673d3c58361..57030654f604 100644
--- a/dev-util/ccache/metadata.xml
+++ b/dev-util/ccache/metadata.xml
@@ -6,6 +6,7 @@
<name>Gentoo Toolchain Project</name>
</maintainer>
<use>
+ <flag name="redis">Enable Redis backend for storage via <pkg>dev-libs/hiredis</pkg></flag>
<flag name="static-c++">Avoid dynamic dependency on gcc's libstdc++.</flag>
</use>
<longdescription lang="en">