aboutsummaryrefslogtreecommitdiff
path: root/devel/ccache/Makefile
blob: b2368bbea3c206697acc789227788fd3287cf284 (plain) (blame)
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# New ports collection makefile for:	ccache
# Date created:				31/03/2002
# Whom:			Dominic Marks <d.marks@student.umist.ac.uk>
#
# $FreeBSD$
#

PORTNAME=	ccache
PORTVERSION=	2.4
PORTREVISION=	6
CATEGORIES=	devel
MASTER_SITES=	http://samba.org/ftp/ccache/

MAINTAINER=	ahze@FreeBSD.org
COMMENT=	A tool to minimize the compile time of C/C++ programs

GNU_CONFIGURE=	yes
CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}

MAN1=		ccache.1
PLIST_FILES=	bin/ccache

PORTDOCS=	index.html \
		ccache-man.html \
		${HOWTO}

.if !defined(WITHOUT_COMPILER_LINKS)
HOWTO=		ccache-howto-freebsd.txt
CCLINKDIR=	libexec/ccache
PLIST_DIRS=	${CCLINKDIR}
SUB_FILES=	${HOWTO} pkg-message
.endif

.include <bsd.port.pre.mk>

.if !defined(WITHOUT_COMPILER_LINKS)
GNU_COMPILERS=		295 32 33 34 40 41 42 43
CCACHE_COMPILERS=	cc c++ gcc g++ ${GNU_COMPILERS:S|^|gcc|} ${GNU_COMPILERS:S|^|g++|}
.if ${ARCH}=="i386"
CCACHE_COMPILERS+=	icc icpc
.endif
.if defined(EXTRA_COMPILERS)
CCACHE_COMPILERS+=	${EXTRA_COMPILERS}
.endif
WORLD_COMPILERS=	world-cc world-c++
PLIST_FILES+=	${CCACHE_COMPILERS:S|^|${CCLINKDIR}/|} \
		${WORLD_COMPILERS:S|^|${CCLINKDIR}/|}
SUB_FILES+=	${WORLD_COMPILERS}
SUB_LIST+=	CCACHE_COMPILERS="${CCACHE_COMPILERS}" \
		CCLINKDIR="${CCLINKDIR}" \
		ICCPREFIX="${LOCALBASE}/intel_cc_80/bin" \
		HOWTO="${HOWTO}"
.endif

pre-everything::
.if !defined(WITHOUT_COMPILER_LINKS)
	@${ECHO_MSG} "===>  Ccache will install compiler links in ${PREFIX}/libexec/ccache"
	@${ECHO_MSG} "===>  Links that will be created are"
	@${ECHO_MSG} "===>  ${CCACHE_COMPILERS}"
	@${ECHO_MSG} "===>"
	@${ECHO_MSG} "===>  You may add more by EXTRA_COMPILERS=\"Ccompiler1 C++compiler1 etc..\""
	@${ECHO_MSG} "===>"
	@${ECHO_MSG} "===>  You can disable compiler links by defining"
	@${ECHO_MSG} "===>  WITHOUT_COMPILER_LINKS"
	@${ECHO_MSG} "===>"
.endif

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/ccache ${PREFIX}/bin
	${INSTALL_MAN} ${WRKSRC}/${MAN1} ${PREFIX}/man/man1
.if !defined(WITHOUT_COMPILER_LINKS)
	@${MKDIR} ${PREFIX}/${CCLINKDIR}
.for link in ${CCACHE_COMPILERS}
	${LN} -sf ${PREFIX}/bin/ccache ${PREFIX}/${CCLINKDIR}/${link}
.endfor
.for script in ${WORLD_COMPILERS}
	${INSTALL_SCRIPT} ${WRKDIR}/${script} ${PREFIX}/${CCLINKDIR}
.endfor
.endif
.if !defined(NOPORTDOCS)
	@${MKDIR} ${DOCSDIR}
.for i in ${PORTDOCS:S/${HOWTO}//}
	${INSTALL_DATA} ${WRKSRC}/web/${i} ${DOCSDIR}
.endfor
.if !defined(WITHOUT_COMPILER_LINKS)
	${INSTALL_DATA} ${WRKDIR}/${HOWTO} ${DOCSDIR}
.endif
.endif
.if !defined(WITHOUT_COMPILER_LINKS)
	@${CAT} ${PKGMESSAGE}
.endif

.include <bsd.port.post.mk>