diff options
author | Mike Frysinger <vapier@gentoo.org> | 2010-11-19 07:54:40 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2010-11-19 07:54:40 +0000 |
commit | 232ec124f45544dc3313adc2dbd56dbf89ae2f35 (patch) | |
tree | 0877897df989abe3b4ca27904b1a3357ed57f78e /dev-util/ccache | |
parent | removed old (diff) | |
download | gentoo-2-232ec124f45544dc3313adc2dbd56dbf89ae2f35.tar.gz gentoo-2-232ec124f45544dc3313adc2dbd56dbf89ae2f35.tar.bz2 gentoo-2-232ec124f45544dc3313adc2dbd56dbf89ae2f35.zip |
Add fix from upstream for realloc bug #338137 by Chris Coleman.
(Portage version: 2.2.0_alpha4/cvs/Linux x86_64)
Diffstat (limited to 'dev-util/ccache')
-rw-r--r-- | dev-util/ccache/ChangeLog | 8 | ||||
-rw-r--r-- | dev-util/ccache/ccache-2.4-r9.ebuild | 81 | ||||
-rw-r--r-- | dev-util/ccache/files/ccache-2.4-xrealloc.patch | 35 |
3 files changed, 123 insertions, 1 deletions
diff --git a/dev-util/ccache/ChangeLog b/dev-util/ccache/ChangeLog index 24868f2898eb..f75cd463e983 100644 --- a/dev-util/ccache/ChangeLog +++ b/dev-util/ccache/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-util/ccache # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/ccache/ChangeLog,v 1.66 2010/10/19 05:27:48 leio Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-util/ccache/ChangeLog,v 1.67 2010/11/19 07:54:40 vapier Exp $ + +*ccache-2.4-r9 (19 Nov 2010) + + 19 Nov 2010; Mike Frysinger <vapier@gentoo.org> +ccache-2.4-r9.ebuild, + +files/ccache-2.4-xrealloc.patch: + Add fix from upstream for realloc bug #338137 by Chris Coleman. 19 Oct 2010; Mart Raudsepp <leio@gentoo.org> ccache-2.4-r6.ebuild, ccache-2.4-r7.ebuild: diff --git a/dev-util/ccache/ccache-2.4-r9.ebuild b/dev-util/ccache/ccache-2.4-r9.ebuild new file mode 100644 index 000000000000..5cafb2966152 --- /dev/null +++ b/dev-util/ccache/ccache-2.4-r9.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/ccache/ccache-2.4-r9.ebuild,v 1.1 2010/11/19 07:54:40 vapier Exp $ + +inherit eutils autotools multilib + +DESCRIPTION="fast compiler cache" +HOMEPAGE="http://ccache.samba.org/" +SRC_URI="http://samba.org/ftp/ccache/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="" + +# Note: this version is designed to be auto-detected and used if +# you happen to have Portage 2.0.X+ installed. + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/ccache-2.4-profile.patch + epatch "${FILESDIR}"/ccache-2.4-respectflags.patch + epatch "${FILESDIR}"/ccache-2.4-utimes.patch + epatch "${FILESDIR}"/ccache-2.4-xrealloc.patch #338137 + eautoconf +} + +do_links() { + insinto /usr/$(get_libdir)/ccache/bin + for a in ${CHOST}-{gcc,g++,c++} gcc c++ g++; do + dosym /usr/bin/ccache /usr/$(get_libdir)/ccache/bin/${a} + done +} + +src_install() { + dobin ccache || die + doman ccache.1 + dodoc README + dohtml web/*.html + + diropts -m0755 + dodir /usr/$(get_libdir)/ccache/bin + keepdir /usr/$(get_libdir)/ccache/bin + + dobin "${FILESDIR}"/ccache-config || die + + diropts -m0700 + dodir /root/.ccache + keepdir /root/.ccache +} + +pkg_preinst() { + # Do NOT duplicate this in your ebuilds or phear of the wrath!!! + if [[ ${ROOT} = "/" ]] ; then + einfo "Scanning for compiler front-ends..." + do_links + else + ewarn "Install is incomplete; you must run the following commands:" + ewarn " # ccache-config --install-links" + ewarn " # ccache-config --install-links ${CHOST}" + ewarn "after booting or chrooting to ${ROOT} to complete installation." + fi +} + +pkg_postinst() { + # nuke broken symlinks from previous versions that shouldn't exist + for i in cc ${CHOST}-cc ; do + [[ -L "${ROOT}/usr/$(get_libdir)/ccache/bin/${i}" ]] && \ + rm -rf "${ROOT}/usr/$(get_libdir)/ccache/bin/${i}" + done + [[ -d "${ROOT}/usr/$(get_libdir)/ccache.backup" ]] && \ + rm -fr "${ROOT}/usr/$(get_libdir)/ccache.backup" + + elog "To use ccache with **non-Portage** C compiling, add" + elog "/usr/$(get_libdir)/ccache/bin to the beginning of your path, before /usr/bin." + elog "Portage 2.0.46-r11+ will automatically take advantage of ccache with" + elog "no additional steps. If this is your first install of ccache, type" + elog "something like this to set a maximum cache size of 2GB:" + elog "# ccache -M 2G" +} diff --git a/dev-util/ccache/files/ccache-2.4-xrealloc.patch b/dev-util/ccache/files/ccache-2.4-xrealloc.patch new file mode 100644 index 000000000000..8e2d44dc6137 --- /dev/null +++ b/dev-util/ccache/files/ccache-2.4-xrealloc.patch @@ -0,0 +1,35 @@ +https://bugzilla.samba.org/show_bug.cgi?id=7090 +https://bugs.gentoo.org/338137 + +From 52a9cd8eb8a69f9dc6944c047faf112b7137a07b Mon Sep 17 00:00:00 2001 +From: Andrew Tridgell <tridge@samba.org> +Date: Mon, 17 Jul 2006 05:41:12 +0200 +Subject: [PATCH] fixed a bug in x_realloc() + +--- + util.c | 6 +----- + 1 files changed, 1 insertions(+), 5 deletions(-) + +diff --git a/util.c b/util.c +index 073fa81..29d0e5b 100644 +--- a/util.c ++++ b/util.c +@@ -187,14 +187,10 @@ void *x_realloc(void *ptr, size_t size) + { + void *p2; + if (!ptr) return x_malloc(size); +- p2 = malloc(size); ++ p2 = realloc(ptr, size); + if (!p2) { + fatal("out of memory in x_realloc"); + } +- if (ptr) { +- memcpy(p2, ptr, size); +- free(ptr); +- } + return p2; + } + +-- +1.7.3.1 + |