summaryrefslogtreecommitdiff
path: root/lang/ats/Makefile
blob: a31b724c67741a882c96fa9d979f80e755dd785b (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
# Created by: Jyun-Yan You <jyyou@cs.nctu.edu.tw>
# $FreeBSD$

PORTNAME=	ats
PORTVERSION=	${ATS_VER}
PORTREVISION=	1
CATEGORIES=	lang
MASTER_SITES=	SF/${PORTNAME}-lang/${PORTNAME}-lang/${ATS_IMPL}-${PORTVERSION}
DISTNAME=	${PORTNAME}-lang-${ATS_IMPL}-${PORTVERSION}

MAINTAINER=	ports@FreeBSD.org
COMMENT=	Language with a type system rooted in the Applied Type System

ONLY_FOR_ARCHS=	i386 amd64
USES=		gmake tar:tgz
GNU_CONFIGURE=	yes
CFLAGS+=	-I${LOCALBASE}/include \
		-L${LOCALBASE}/lib

MAKE_JOBS_UNSAFE=yes
PORTDOCS=	FAQ.txt
PORTEXAMPLES=	AUP INTRO KernighanRitchie MISC MULTICORE TEST

OPTIONS_DEFINE=	GMP PCRE DOCS EXAMPLES
OPTIONS_DEFAULT=	GMP PCRE
GMP_LIB_DEPENDS=	libgmp.so:${PORTSDIR}/math/gmp
PCRE_LIB_DEPENDS=	libpcre.so:${PORTSDIR}/devel/pcre

.include <bsd.port.pre.mk>

.if ${ARCH} == amd64
PLIST_SUB+=	LIBDIR="lib64"
.else
PLIST_SUB+=	LIBDIR="lib"
.endif

post-patch:
	${SED} -i '' -e 's/gcc/${CC}/' \
	    ${WRKSRC}/ccomp/runtime/GCATS/Makefile \
	    ${WRKSRC}/utils/scripts/Makefile \
	    ${WRKSRC}/libatsdoc/Makefile
	${SED} -i '' -e 's/ATSCCOMP_def "gcc"/ATSCCOMP_def "${CC}"/' \
	    ${WRKSRC}/utils/scripts/basics.dats
	${SED} -i '' -e 's/argv_p = "gcc"/argv_p = "${CC}"/' \
	             -e 's/execvp("gcc", argv)/execvp("${CC}", argv)/' \
	    ${WRKSRC}/utils/scripts/atslib.dats

post-configure:
.if empty(PORT_OPTIONS:MGMP)
	${SED} -i '' -e '/HAVE_GMP_H/d' ${WRKSRC}/config.h
.endif
.if empty(PORT_OPTIONS:MPCRE)
	${SED} -i '' -e '/HAVE_PCRE_H/d' ${WRKSRC}/config.h
.endif

post-install:
	${STRIP_CMD} ${STAGEDIR}${PREFIX}/${ATS_LIBDIR_REL}/bin/*
	${MKDIR} ${STAGEDIR}${DOCSDIR}
	cd ${WRKSRC}/doc && \
	${COPYTREE_SHARE} "${PORTDOCS}" ${STAGEDIR}${DOCSDIR}
	${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
	cd ${WRKSRC}/doc/EXAMPLE && \
	${COPYTREE_SHARE} "${PORTEXAMPLES}" ${STAGEDIR}${EXAMPLESDIR}
	${FIND} ${STAGEDIR}${EXAMPLESDIR} -name Makefile \
	    -exec ${SED} -i '' -e 's|^ATSUSRQ=.*|ATSUSRQ="${PREFIX}"|' {} \;

.include "bsd.ats.mk"
.include <bsd.port.post.mk>