summaryrefslogtreecommitdiff
path: root/lang/ghc/Makefile
diff options
context:
space:
mode:
authorOliver Braun <obraun@FreeBSD.org>2003-12-12 16:33:17 +0000
committerOliver Braun <obraun@FreeBSD.org>2003-12-12 16:33:17 +0000
commit4c99d59e5e87b6d1d8f057324634268ae1c5b068 (patch)
tree938210f6df8fa1e2325a87b6cebd30e41bce6920 /lang/ghc/Makefile
parent- Fix build on non-i386 platforms. (diff)
- Fix build on -CURRENT by importing some gcc33 fixes
- Fix linker issue on -CURRENT by not using SplitObjs, same as: http://www.haskell.org/pipermail/glasgow-haskell-users/2003-June/005289.html - Use libgmp from ports on -CURRENT (saves further patching) - Bump PORTREVISION PR: ports/60155 Submitted by: Volker Stolz <stolz@i2.informatik.rwth-aachen.de> Approved by: maintainer
Notes
Notes: svn path=/head/; revision=95673
Diffstat (limited to 'lang/ghc/Makefile')
-rw-r--r--lang/ghc/Makefile21
1 files changed, 20 insertions, 1 deletions
diff --git a/lang/ghc/Makefile b/lang/ghc/Makefile
index 364f61f0458d..a9a65e35315f 100644
--- a/lang/ghc/Makefile
+++ b/lang/ghc/Makefile
@@ -6,6 +6,7 @@
PORTNAME= ghc
PORTVERSION= 5.04.3
+PORTREVISION= 1
CATEGORIES= lang haskell
MASTER_SITES= http://www.haskell.org/ghc/dist/${PORTVERSION}/:source \
http://www.haskell.org/ghc/dist/${PORTVERSION}/FreeBSD/:boot
@@ -25,12 +26,19 @@ DISTFILES= ${SRC_DIST}
DISTFILES+= ${BOOT_DIST}
.else
DISTFILES+= ${BOOT_DIST5}
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-ghc-compiler-nativeGen-MachMisc.lhs \
+ ${FILESDIR}/extra-patch-ghc-compiler-nativeGen-RegAllocInfo.lhs \
+ ${FILESDIR}/extra-patch-ghc-rts-RtsFlags.c \
+ ${FILESDIR}/extra-patch-ghc-rts-rts.conf.in \
+ ${FILESDIR}/extra-patch-ghc-utils-prof-cgprof-cgprof.c
+LIB_DEPENDS= gmp.6:${PORTSDIR}/math/libgmp4
.endif
MAINTAINER= simonmar@microsoft.com
COMMENT= A Compiler for the functional language Haskell
USE_PERL5= yes
+USE_REINPLACE= yes
USE_GMAKE= yes
GNU_CONFIGURE= yes
@@ -49,6 +57,13 @@ BOOT_GHC= ${BOOT_DIR}/bin/i386-unknown-freebsd/ghc-${PORTVERSION}
CONFIGURE_ARGS= --with-ghc=${BOOT_GHC}
# specifying CONFIGURE_TARGET doesn't work for some reason.
CONFIGURE_TARGET=
+# libgmp:
+.if ${OSVERSION} >= 500000
+CONFIGURE_ENV+= CFLAGS=-I${LOCALBASE}/include LDFLAGS=-L${LOCALBASE}/lib
+PLIST_SUB+= GMP="@comment "
+.else
+PLIST_SUB+= GMP=""
+.endif
# override TMPDIR because /tmp often doesn't have enough space
# to build some of the larger libraries.
@@ -64,10 +79,13 @@ pre-everything::
@${ECHO_CMD} "Building GHC without profiling libraries."
.endif
-.if defined(WITHOUT_PROFILE)
post-extract:
+.if defined(WITHOUT_PROFILE)
@${ECHO} >>${WRKSRC}/mk/build.mk GhcLibWays=
.endif
+.if ${OSVERSION} >= 500000
+ @${ECHO} >>${WRKSRC}/mk/build.mk SplitObjs=NO
+.endif
post-patch:
@${PERL} -pi -e 's/DrIFT/DrIFT-ghc/g; \
@@ -77,6 +95,7 @@ post-patch:
${WRKSRC}/hslibs/tools/DrIFT/Makefile \
${WRKSRC}/hslibs/tools/DtdToHaskell/Makefile \
${WRKSRC}/hslibs/tools/Xtract/Makefile
+ @${REINPLACE_CMD} s+%%LOCALBASE%%+${LOCALBASE}+ ${WRKSRC}/ghc/rts/rts.conf.in
pre-configure:
@(cd ${BOOT_DIR} && ${CONFIGURE_ENV} ./${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS})