summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2018-08-15 09:16:09 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2018-08-15 09:39:02 +0100
commitc28e489ab53d41813fe75a8a00e939ccffabd80f (patch)
tree258561bbb8588b4b47fbb0c278553f8c44569a91 /dev-util
parentsci-libs/gdal: remove old affected version (diff)
downloadgentoo-c28e489ab53d41813fe75a8a00e939ccffabd80f.tar.gz
gentoo-c28e489ab53d41813fe75a8a00e939ccffabd80f.tar.bz2
gentoo-c28e489ab53d41813fe75a8a00e939ccffabd80f.zip
dev-util/ccache: bump up to 3.4.2, bug #647200
Reported-by: Perfect Gentleman Closes: https://bugs.gentoo.org/647200 Package-Manager: Portage-2.3.46, Repoman-2.3.10
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/ccache/Manifest1
-rw-r--r--dev-util/ccache/ccache-3.4.2.ebuild74
-rw-r--r--dev-util/ccache/files/ccache-3.4-size-on-disk.patch21
3 files changed, 96 insertions, 0 deletions
diff --git a/dev-util/ccache/Manifest b/dev-util/ccache/Manifest
index 5e34ecc37dec..040b0e26bd3b 100644
--- a/dev-util/ccache/Manifest
+++ b/dev-util/ccache/Manifest
@@ -1,2 +1,3 @@
DIST ccache-3.2.4.tar.xz 302548 BLAKE2B 7d642dc3f944183660e79cfdfd68948528aa3ea4ef8162a4d04837c85ccace35107e663ec81a15438dab133fca2e8bf100fecd483f33c9b0aa52c68989ae8122 SHA512 d048b70804c81dece97f3ba511b3c109ec0d14e7dca69bc68faeeb61a4a7b5639c03e3e5ad7dad4e42b4bd198d7a7fffa4e3b7ef99590dfd4df0805db6c25db7
DIST ccache-3.3.4.tar.xz 314468 BLAKE2B 6e465598df428979a2c821a698afef25c05d09045cbb54ec54cc3b65b8ce6416b6eb46fae0cf5d60f766129cef11eb01410b522318c67416fdf47f6e8fceae66 SHA512 891bcf11b27fa20a250bc86d182663e46af450a3a807b6cab502f202cd57123ce93bcb1fe5e48866feecda76912a5f742efa5869df9117d81624ba185dd4e02c
+DIST ccache-3.4.2.tar.xz 324340 BLAKE2B e49582b4ff254dd4cd210634342d7b21d5c099892d4c7f3240122a3b9de013477f6c440eaf73d06fc0445020e225562528babfb41d10ca1fab68052c1e726531 SHA512 9bf07269df6785bb92758093f46f3be4df45de532e431e0bc3a68a7170d1782376a9b4495acf77569549062c84f61621c21c5d200e271cd064dbda4a73276f8e
diff --git a/dev-util/ccache/ccache-3.4.2.ebuild b/dev-util/ccache/ccache-3.4.2.ebuild
new file mode 100644
index 000000000000..25d07d629e1f
--- /dev/null
+++ b/dev-util/ccache/ccache-3.4.2.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit readme.gentoo-r1
+
+DESCRIPTION="fast compiler cache"
+HOMEPAGE="https://ccache.samba.org/"
+SRC_URI="https://www.samba.org/ftp/ccache/${P}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
+IUSE=""
+
+DEPEND="app-arch/xz-utils
+ sys-libs/zlib"
+RDEPEND="${DEPEND}
+ dev-util/shadowman
+ sys-apps/gentoo-functions"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.4-size-on-disk.patch #456178
+)
+
+src_prepare() {
+ default
+
+ # make sure we always use system zlib
+ rm -rf src/zlib || die
+ sed \
+ -e "/^EPREFIX=/s:'':'${EPREFIX}':" \
+ "${FILESDIR}"/ccache-config-3 > ccache-config || die
+}
+
+src_install() {
+ DOCS=( doc/{AUTHORS,MANUAL,NEWS}.adoc CONTRIBUTING.md README.md )
+ default
+
+ dobin ccache-config
+ insinto /usr/share/shadowman/tools
+ newins - ccache <<<'/usr/lib/ccache/bin'
+
+ DOC_CONTENTS="
+To use ccache with **non-Portage** C compiling, add
+${EPREFIX}/usr/lib/ccache/bin to the beginning of your path, before ${EPREFIX}/usr/bin.
+Portage 2.0.46-r11+ will automatically take advantage of ccache with
+no additional steps. If this is your first install of ccache, type
+something like this to set a maximum cache size of 2GB:\\n
+# ccache -M 2G\\n
+If you are upgrading from an older version than 3.x you should clear all of your caches like so:\\n
+# CCACHE_DIR='${CCACHE_DIR:-${PORTAGE_TMPDIR}/ccache}' ccache -C\\n
+ccache now supports sys-devel/clang and dev-lang/icc, too!"
+
+ readme.gentoo_create_doc
+}
+
+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
+
+ # nuke broken symlinks from previous versions that shouldn't exist
+ rm -rf "${EROOT}"/usr/lib/ccache.backup || die
+
+ readme.gentoo_print_elog
+}
diff --git a/dev-util/ccache/files/ccache-3.4-size-on-disk.patch b/dev-util/ccache/files/ccache-3.4-size-on-disk.patch
new file mode 100644
index 000000000000..4f39a0348f2f
--- /dev/null
+++ b/dev-util/ccache/files/ccache-3.4-size-on-disk.patch
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/56178
+
+stick to the size of files on disk rather than their byte size.
+this func is only used for stats management, so this should be safe.
+
+--- a/src/util.c
++++ b/src/util.c
+@@ -845,12 +845,7 @@ file_size(struct stat *st)
+ #ifdef _WIN32
+ return (st->st_size + 1023) & ~1023;
+ #else
+- size_t size = st->st_blocks * 512;
+- if ((size_t)st->st_size > size) {
+- // Probably a broken stat() call...
+- size = (st->st_size + 1023) & ~1023;
+- }
+- return size;
++ return st->st_blocks * 512;
+ #endif
+ }
+