Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/ccache/
Date: Sun, 12 Sep 2021 00:48:59
Message-Id: 1631407708.308cad885033e862b073c10bf73e8b3844a23c5f.sam@gentoo
1 commit: 308cad885033e862b073c10bf73e8b3844a23c5f
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Sun Sep 12 00:43:00 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Sun Sep 12 00:48:28 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=308cad88
7
8 dev-util/ccache: add 4.4.1
9
10 Signed-off-by: Sam James <sam <AT> gentoo.org>
11
12 dev-util/ccache/Manifest | 1 +
13 dev-util/ccache/ccache-4.4.1.ebuild | 88 +++++++++++++++++++++++++++++++++++++
14 2 files changed, 89 insertions(+)
15
16 diff --git a/dev-util/ccache/Manifest b/dev-util/ccache/Manifest
17 index a1dab85d544..03deeefa209 100644
18 --- a/dev-util/ccache/Manifest
19 +++ b/dev-util/ccache/Manifest
20 @@ -1,2 +1,3 @@
21 DIST ccache-4.3.tar.xz 433508 BLAKE2B 6ab48aa587b4dc86020e3b0f722003dc5c03709626e143a1d38506b6072f9963fc76e89b6d18128dfc28035bf8d24e46ea44f219db69a1b3a294416f0b023090 SHA512 ec082de95ea8b22154ce1e67e0a0fc28266cfb71f382205f7eab14e6ac1c7841027d063041131832b3227d833d99ec874e90df238f35f433de4c381566931c7f
22 +DIST ccache-4.4.1.tar.xz 509916 BLAKE2B 54fec9480c37c144667ae2dd969cabc1526a01312200b2b9b26ef1d5533836e2070d28e6a7fbc580f232b22dbd6f1a56a43494b8960d96c5a97d8f041e8f31ca SHA512 820c0b05d2b0209e8478c7409da0e27de8e9621c683aa0f147f9c025b8ac7bc3d06d6945d346143790168da79dfbd14b0ccfb284c7ac05c35f85b492be07d676
23 DIST ccache-4.4.tar.xz 509516 BLAKE2B 6c4519d3cd93be49dfff09f22ada798894c9f4475395443e0dcfcf768178f1520cf26bc5c2e0ea22e06cc3ebd6ddaf930a2d1b517593a10c3253f7faa3131f43 SHA512 a857d1aded9c352eabba9c0f31b43fd17ae91672dabdfc086851448867c9dff6ad6dd7ee60f8e39102d41b7d8cf7866c6bf104e0214e865de45e75a8df7626f0
24
25 diff --git a/dev-util/ccache/ccache-4.4.1.ebuild b/dev-util/ccache/ccache-4.4.1.ebuild
26 new file mode 100644
27 index 00000000000..39deaa2e861
28 --- /dev/null
29 +++ b/dev-util/ccache/ccache-4.4.1.ebuild
30 @@ -0,0 +1,88 @@
31 +# Copyright 1999-2021 Gentoo Authors
32 +# Distributed under the terms of the GNU General Public License v2
33 +
34 +EAPI=7
35 +
36 +inherit cmake toolchain-funcs flag-o-matic
37 +
38 +DESCRIPTION="Fast compiler cache"
39 +HOMEPAGE="https://ccache.dev/"
40 +SRC_URI="https://github.com/ccache/ccache/releases/download/v${PV}/ccache-${PV}.tar.xz"
41 +
42 +LICENSE="GPL-3 LGPL-3"
43 +SLOT="0"
44 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
45 +# Enable 'static-c++' by default to make 'gcc' ebuild Just Work: bug #761220
46 +IUSE="doc redis +static-c++ test"
47 +RESTRICT="!test? ( test )"
48 +
49 +DEPEND="app-arch/zstd:=
50 + redis? ( dev-libs/hiredis:= )"
51 +RDEPEND="${DEPEND}
52 + dev-util/shadowman
53 + sys-apps/gentoo-functions"
54 +# clang-specific tests use dev-libs/elfutils to compare objects for equality.
55 +# Let's pull in the dependency unconditionally.
56 +DEPEND+=" test? ( dev-libs/elfutils )"
57 +BDEPEND=" doc? ( dev-ruby/asciidoctor )"
58 +
59 +DOCS=( doc/{AUTHORS,MANUAL,NEWS}.adoc CONTRIBUTING.md README.md )
60 +
61 +PATCHES=(
62 + "${FILESDIR}"/${PN}-3.5-nvcc-test.patch
63 + "${FILESDIR}"/${PN}-4.0-objdump.patch
64 + "${FILESDIR}"/${PN}-4.1-avoid-run-user.patch
65 +)
66 +
67 +src_prepare() {
68 + cmake_src_prepare
69 +
70 + sed \
71 + -e "/^EPREFIX=/s:'':'${EPREFIX}':" \
72 + "${FILESDIR}"/ccache-config-3 > ccache-config || die
73 +
74 + # mainly used in tests
75 + tc-export CC OBJDUMP
76 +
77 + # Avoid dependency on libstdc++.so. Useful for cases when
78 + # we would like to use ccache to build older gcc which injects
79 + # into ccache locally built (possibly outdated) libstdc++
80 + # See bug #761220 for examples.
81 + #
82 + # Ideally gcc should not use LD_PRELOAD to avoid this type of failures.
83 + use static-c++ && append-ldflags -static-libstdc++
84 +}
85 +
86 +src_configure() {
87 + local mycmakeargs=(
88 + -DENABLE_DOCUMENTATION=$(usex doc)
89 + -DENABLE_TESTING=$(usex test)
90 + -DUSE_CCACHE=OFF
91 + -DZSTD_FROM_INTERNET=OFF
92 + -DREDIS_STORAGE_BACKEND=$(usex redis)
93 + )
94 +
95 + use redis && mycmakeargs+=( -DHIREDIS_FROM_INTERNET_DEFAULT=OFF )
96 +
97 + cmake_src_configure
98 +}
99 +
100 +src_install() {
101 + cmake_src_install
102 +
103 + dobin ccache-config
104 + insinto /usr/share/shadowman/tools
105 + newins - ccache <<<"${EPREFIX}/usr/lib/ccache/bin"
106 +}
107 +
108 +pkg_prerm() {
109 + if [[ -z ${REPLACED_BY_VERSION} && ${ROOT:-/} == / ]] ; then
110 + eselect compiler-shadow remove ccache
111 + fi
112 +}
113 +
114 +pkg_postinst() {
115 + if [[ ${ROOT:-/} == / ]]; then
116 + eselect compiler-shadow update ccache
117 + fi
118 +}