summaryrefslogtreecommitdiff
blob: ec92308b8ad160e2fa649aafcc4ec2f1d93eb110 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-util/ccache/ccache-2.1.1.ebuild,v 1.5 2003/07/12 14:28:13 aliz Exp $

DESCRIPTION="ccache is a fast compiler cache. It is used as a front end to your
compiler to safely cache compilation output. When the same code is compiled
again the cached output is used giving a significant speedup."
SRC_URI="http://ccache.samba.org/ftp/ccache/${P}.tar.gz"
HOMEPAGE="http://ccache.samba.org/"

SLOT="0"
LICENSE="GPL-2"
KEYWORDS="x86 ~ppc ~sparc ~alpha ~hppa"

# Note: this version is designed to be auto-detected and used if
# you happen to have Portage 2.0.6+ installed.

src_compile() {
	./configure --prefix=${D}/usr || die
	make || die
}

src_install () {
	exeinto /usr/bin/ccache
	doexe ccache
	doman ccache.1
	dodoc COPYING README    
}

pkg_preinst() {
	[ -e /usr/bin/ccache ] && rm -rf /usr/bin/ccache
	[ -e /usr/bin/ccache.backup ] && rm -rf /usr/bin/ccache.backup
}

pkg_postinst() {
	cd /usr/bin/ccache

	# Search the PATH now that gcc doesn't live in /usr/bin
	einfo "Scanning for compiler front-ends"
	for a in gcc cc c++ g++ ${CHOST}-gcc ${CHOST}-c++ ${CHOST}-g++; do
		type -ap ${a} && ln -sf ccache ${a}
	done

	if [ ! -d ${ROOT}root/.ccache ]
	then
		install -d -m0700 ${ROOT}root/.ccache
	fi

	einfo "To use ccache with **non-Portage** C compiling, add"
	einfo "/usr/bin/ccache to your path before /usr/bin.  Portage 2.0.6+"
	einfo "will automatically take advantage of ccache with no additional"
	einfo "steps.  If this is your first install of ccache, type something"
	einfo "like this to set a maximum cache size of 2GB (or whatever you"
	einfo "desire):"
	einfo "# /usr/bin/ccache/ccache -M 2G"
}