summaryrefslogtreecommitdiffstats
path: root/lang/nhc98/Makefile
blob: c42889dc7f5c67bca82fcd241fde05ce72c61b7b (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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# New ports collection makefile for:	nhc98
# Date created:				04 October 2001
# Whom:					Oliver Braun <obraun@informatik.unibw-muenchen.de>
#
# $FreeBSD$

PORTNAME=	nhc98
PORTVERSION=	1.16
PORTREVISION=	2
CATEGORIES=	lang haskell
MASTER_SITES=	ftp://ftp.cs.york.ac.uk/pub/haskell/${PORTNAME}/
DISTNAME=	${PORTNAME}src-${PORTVERSION}
DIST_SUBDIR=	nhc98

PATCH_SITES=	${MASTER_SITES}
PATCHFILES=	patch-1.16-typesyn \
		patch-1.16-ghc6

MAINTAINER=	obraun@FreeBSD.org
COMMENT=	A fully-fledged compiler for Haskell 98

ONLY_FOR_ARCHS=	i386

USE_REINPLACE=	yes

.include <bsd.port.pre.mk>

.if ${OSVERSION} >= 502102
BROKEN=		"Does not compile"
.endif

.if ${OSVERSION} >= 500000
BUILD_DEPENDS+=	ghc-5.04.3:${PORTSDIR}/lang/ghc5
.endif

WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}

USE_SIZE=	yes
USE_GMAKE=	yes
HAS_CONFIGURE=	yes

.if ${OSVERSION} >= 500000
CONFIGURE_ARGS+=	--buildwith=ghc
.endif

.if !defined(NOPORTDOCS)
CONFIGURE_ARGS+=	--docdir=${DOCSDIR} +docs
.endif

MAN1=		harch.1 hmake.1 hp2graph.1 nhc98.1

CONFLICTS=	hs-hmake-*

post-patch:
	@${REINPLACE_CMD} -e 's|-O3|${CFLAGS}|' ${WRKSRC}/Makefile.inc
.for file in Decl FillIn Process
	@${REINPLACE_CMD} -e '/^import PrelBase/d' \
		${WRKSRC}/src/greencard/${file}.lhs
.endfor

post-configure:
	@${ECHO} "LIBDIR=${PREFIX}/lib/nhc98" \
		>> ${WRKSRC}/targets/ix86-FreeBSD/config.cache

post-install:
	${SED} -e "s#/usr/doc/nhc98#${PREFIX}/share/doc/nhc98#" \
	       < ${WRKSRC}/man/nhc98.1 > ${WRKSRC}/man/nhc98.1.fix
	${INSTALL_MAN} ${WRKSRC}/man/nhc98.1.fix ${PREFIX}/man/man1/nhc98.1
	${RM} ${WRKSRC}/man/nhc98.1.fix
.if !defined(NOPORTDOCS)
.for directory in . bugs examples hmake implementation-notes libs
	${RM} -r ${DOCSDIR}/${directory}/CVS
.endfor
.endif

.include <bsd.port.post.mk>
OpenPOWER on IntegriCloud