summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
Diffstat (limited to 'lang')
-rw-r--r--lang/ghc/Makefile41
-rw-r--r--lang/ghc/distinfo2
-rw-r--r--lang/ghc/files/build.mk4
-rw-r--r--lang/ghc/pkg-comment1
-rw-r--r--lang/ghc/pkg-descr14
-rw-r--r--lang/ghc/pkg-plist171
-rw-r--r--lang/ghc5/Makefile41
-rw-r--r--lang/ghc5/distinfo2
-rw-r--r--lang/ghc5/files/build.mk4
-rw-r--r--lang/ghc5/pkg-comment1
-rw-r--r--lang/ghc5/pkg-descr14
-rw-r--r--lang/ghc5/pkg-plist171
-rw-r--r--lang/ghc6/Makefile41
-rw-r--r--lang/ghc6/distinfo2
-rw-r--r--lang/ghc6/files/build.mk4
-rw-r--r--lang/ghc6/pkg-comment1
-rw-r--r--lang/ghc6/pkg-descr14
-rw-r--r--lang/ghc6/pkg-plist171
18 files changed, 699 insertions, 0 deletions
diff --git a/lang/ghc/Makefile b/lang/ghc/Makefile
new file mode 100644
index 000000000000..9bce4706491d
--- /dev/null
+++ b/lang/ghc/Makefile
@@ -0,0 +1,41 @@
+# New ports collection makefile for: ghc
+# Version required: 4.04
+# Date created: 28 August 1999
+# Whom: Simon Marlow <simonmar@microsoft.com>
+#
+# $FreeBSD$
+
+DISTNAME= ghc-4.04
+CATEGORIES= lang
+MASTER_SITES= http://www.haskell.org/ghc/dist/4.04/
+DISTFILES= ghc-4.04-src${EXTRACT_SUFX} ghc-4.04-x86-hc${EXTRACT_SUFX}
+
+MAINTAINER= simonmar@microsoft.com
+
+USE_PERL5= yes
+USE_GMAKE= yes
+GNU_CONFIGURE= yes
+
+CONFIGURE_ARGS= --enable-hc-boot --libdir=${PREFIX}/lib/ghc
+
+WRKSRC= ${WRKDIR}/fptools
+
+# Note:
+# - This port will bootstrap from pre-compiled C files.
+# - ToDo: bootstrap using existing compiler, if one is installed.
+
+# XXX: we touch the happy-generated files to ensure that when we
+# switch to non-bootstrapping mode for installation, the build system
+# won't try to create them.
+#
+pre-build:
+ @${CP} ${FILESDIR}/build.mk ${WRKSRC}/mk
+ @${TOUCH} ${TOUCH_FLAGS} ${WRKSRC}/ghc/compiler/rename/ParseIface.hs
+ @${TOUCH} ${TOUCH_FLAGS} ${WRKSRC}/ghc/compiler/parser/Parser.hs
+ @(cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} boot)
+
+post-build:
+ @echo "GhcWithHscBuiltViaC=NO" >>${WRKSRC}/mk/build.mk
+ @(cd ${WRKSRC}/ghc/lib; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} clean boot all)
+
+.include <bsd.port.mk>
diff --git a/lang/ghc/distinfo b/lang/ghc/distinfo
new file mode 100644
index 000000000000..bc313febc41c
--- /dev/null
+++ b/lang/ghc/distinfo
@@ -0,0 +1,2 @@
+MD5 (ghc-4.04-src.tar.gz) = e1211129906c45709ecf5159eb6d9d08
+MD5 (ghc-4.04-x86-hc.tar.gz) = 19287b805f9f528559a46059bbc9c4b9
diff --git a/lang/ghc/files/build.mk b/lang/ghc/files/build.mk
new file mode 100644
index 000000000000..ce2b100c9ee4
--- /dev/null
+++ b/lang/ghc/files/build.mk
@@ -0,0 +1,4 @@
+GhcLibHcOpts = -O -split-objs -odir $*
+SRC_HAPPY_OPTS += -c
+GhcLibWays=
+GhcLibsWithReadline = YES
diff --git a/lang/ghc/pkg-comment b/lang/ghc/pkg-comment
new file mode 100644
index 000000000000..5568ca6a3812
--- /dev/null
+++ b/lang/ghc/pkg-comment
@@ -0,0 +1 @@
+A Compiler for the functional language Haskell
diff --git a/lang/ghc/pkg-descr b/lang/ghc/pkg-descr
new file mode 100644
index 000000000000..ad4a4ee71e42
--- /dev/null
+++ b/lang/ghc/pkg-descr
@@ -0,0 +1,14 @@
+GHC: The Glasgow Haskell Compiler.
+
+The Glasgow Haskell Compiler is a robust, fully-featured, optimising
+compiler for the functional programming language Haskell 98
+(http://www.haskell.org). GHC compiles Haskell to either native code
+or C. It implements numerous experimental language extensions to
+Haskell, including concurrency, a foreign language interface, several
+type-system extensions, exceptions, and so on. GHC comes with a
+generational garbage collector, a space and time profiler, and a
+comprehensive set of libraries.
+
+Documentation can be found hanging off GHC's homepage, below.
+
+WWW: http://www.haskell.org/ghc/
diff --git a/lang/ghc/pkg-plist b/lang/ghc/pkg-plist
new file mode 100644
index 000000000000..45cee650b61c
--- /dev/null
+++ b/lang/ghc/pkg-plist
@@ -0,0 +1,171 @@
+bin/ghc
+bin/ghc-4.04
+bin/hp2ps
+bin/hstags
+bin/stat2resid
+lib/ghc/ghc-asm.prl
+lib/ghc/ghc-consist.prl
+lib/ghc/ghc-iface.prl
+lib/ghc/ghc-split.prl
+lib/ghc/hsc
+lib/ghc/hscpp
+lib/ghc/hstags-help
+lib/ghc/imports/concurrent/Channel.hi
+lib/ghc/imports/concurrent/ChannelVar.hi
+lib/ghc/imports/concurrent/Concurrent.hi
+lib/ghc/imports/concurrent/Merge.hi
+lib/ghc/imports/concurrent/Parallel.hi
+lib/ghc/imports/concurrent/SampleVar.hi
+lib/ghc/imports/concurrent/Semaphore.hi
+lib/ghc/imports/exts/Addr.hi
+lib/ghc/imports/exts/Bits.hi
+lib/ghc/imports/exts/ByteArray.hi
+lib/ghc/imports/exts/CCall.hi
+lib/ghc/imports/exts/Dynamic.hi
+lib/ghc/imports/exts/Exception.hi
+lib/ghc/imports/exts/Foreign.hi
+lib/ghc/imports/exts/GetOpt.hi
+lib/ghc/imports/exts/GlaExts.hi
+lib/ghc/imports/exts/IOExts.hi
+lib/ghc/imports/exts/Int.hi
+lib/ghc/imports/exts/LazyST.hi
+lib/ghc/imports/exts/MutableArray.hi
+lib/ghc/imports/exts/NativeInfo.hi
+lib/ghc/imports/exts/NumExts.hi
+lib/ghc/imports/exts/ST.hi
+lib/ghc/imports/exts/Stable.hi
+lib/ghc/imports/exts/Weak.hi
+lib/ghc/imports/exts/Word.hi
+lib/ghc/imports/misc/BSD.hi
+lib/ghc/imports/misc/Bag.hi
+lib/ghc/imports/misc/BitSet.hi
+lib/ghc/imports/misc/ByteOps.hi
+lib/ghc/imports/misc/CString.hi
+lib/ghc/imports/misc/CharSeq.hi
+lib/ghc/imports/misc/FiniteMap.hi
+lib/ghc/imports/misc/ListSetOps.hi
+lib/ghc/imports/misc/MD5.hi
+lib/ghc/imports/misc/MatchPS.hi
+lib/ghc/imports/misc/Maybes.hi
+lib/ghc/imports/misc/Memo.hi
+lib/ghc/imports/misc/Native.hi
+lib/ghc/imports/misc/PackedString.hi
+lib/ghc/imports/misc/Pretty.hi
+lib/ghc/imports/misc/Printf.hi
+lib/ghc/imports/misc/Readline.hi
+lib/ghc/imports/misc/Regex.hi
+lib/ghc/imports/misc/RegexString.hi
+lib/ghc/imports/misc/Set.hi
+lib/ghc/imports/misc/Socket.hi
+lib/ghc/imports/misc/SocketPrim.hi
+lib/ghc/imports/misc/Util.hi
+lib/ghc/imports/posix/Posix.hi
+lib/ghc/imports/posix/PosixDB.hi
+lib/ghc/imports/posix/PosixErr.hi
+lib/ghc/imports/posix/PosixFiles.hi
+lib/ghc/imports/posix/PosixIO.hi
+lib/ghc/imports/posix/PosixProcEnv.hi
+lib/ghc/imports/posix/PosixProcPrim.hi
+lib/ghc/imports/posix/PosixTTY.hi
+lib/ghc/imports/posix/PosixUtil.hi
+lib/ghc/imports/std/Array.hi
+lib/ghc/imports/std/CPUTime.hi
+lib/ghc/imports/std/Char.hi
+lib/ghc/imports/std/Complex.hi
+lib/ghc/imports/std/Directory.hi
+lib/ghc/imports/std/IO.hi
+lib/ghc/imports/std/Ix.hi
+lib/ghc/imports/std/List.hi
+lib/ghc/imports/std/Locale.hi
+lib/ghc/imports/std/Maybe.hi
+lib/ghc/imports/std/Monad.hi
+lib/ghc/imports/std/Numeric.hi
+lib/ghc/imports/std/PrelAddr.hi
+lib/ghc/imports/std/PrelArr.hi
+lib/ghc/imports/std/PrelArrExtra.hi
+lib/ghc/imports/std/PrelBase.hi
+lib/ghc/imports/std/PrelCCall.hi
+lib/ghc/imports/std/PrelConc.hi
+lib/ghc/imports/std/PrelDynamic.hi
+lib/ghc/imports/std/PrelEnum.hi
+lib/ghc/imports/std/PrelErr.hi
+lib/ghc/imports/std/PrelException.hi
+lib/ghc/imports/std/PrelForeign.hi
+lib/ghc/imports/std/PrelGHC.hi
+lib/ghc/imports/std/PrelHandle.hi
+lib/ghc/imports/std/PrelIOBase.hi
+lib/ghc/imports/std/PrelList.hi
+lib/ghc/imports/std/PrelMain.hi
+lib/ghc/imports/std/PrelMaybe.hi
+lib/ghc/imports/std/PrelNum.hi
+lib/ghc/imports/std/PrelNumExtra.hi
+lib/ghc/imports/std/PrelPack.hi
+lib/ghc/imports/std/PrelRead.hi
+lib/ghc/imports/std/PrelST.hi
+lib/ghc/imports/std/PrelShow.hi
+lib/ghc/imports/std/PrelStable.hi
+lib/ghc/imports/std/PrelTup.hi
+lib/ghc/imports/std/PrelWeak.hi
+lib/ghc/imports/std/Prelude.hi
+lib/ghc/imports/std/Random.hi
+lib/ghc/imports/std/Ratio.hi
+lib/ghc/imports/std/System.hi
+lib/ghc/imports/std/Time.hi
+lib/ghc/includes/Assembler.h
+lib/ghc/includes/Block.h
+lib/ghc/includes/CCall.h
+lib/ghc/includes/ClosureMacros.h
+lib/ghc/includes/ClosureTypes.h
+lib/ghc/includes/Closures.h
+lib/ghc/includes/Constants.h
+lib/ghc/includes/Hooks.h
+lib/ghc/includes/InfoMacros.h
+lib/ghc/includes/InfoTables.h
+lib/ghc/includes/MachDeps.h
+lib/ghc/includes/MachRegs.h
+lib/ghc/includes/NativeDefs.h
+lib/ghc/includes/Prelude.h
+lib/ghc/includes/PrimOps.h
+lib/ghc/includes/Profiling.h
+lib/ghc/includes/Regs.h
+lib/ghc/includes/Rts.h
+lib/ghc/includes/RtsAPI.h
+lib/ghc/includes/SchedAPI.h
+lib/ghc/includes/Stable.h
+lib/ghc/includes/Stg.h
+lib/ghc/includes/StgDLL.h
+lib/ghc/includes/StgMacros.h
+lib/ghc/includes/StgMiscClosures.h
+lib/ghc/includes/StgProf.h
+lib/ghc/includes/StgStorage.h
+lib/ghc/includes/StgTicky.h
+lib/ghc/includes/StgTypes.h
+lib/ghc/includes/TSO.h
+lib/ghc/includes/TailCalls.h
+lib/ghc/includes/Updates.h
+lib/ghc/includes/config.h
+lib/ghc/includes/gmp.h
+lib/ghc/includes/ieee-flpt.h
+lib/ghc/includes/options.h
+lib/ghc/includes/sainteger.h
+lib/ghc/libHS.a
+lib/ghc/libHS_cbits.a
+lib/ghc/libHSconcurrent.a
+lib/ghc/libHSexts.a
+lib/ghc/libHSmisc.a
+lib/ghc/libHSmisc_cbits.a
+lib/ghc/libHSposix.a
+lib/ghc/libHSposix_cbits.a
+lib/ghc/libHSrts.a
+lib/ghc/mkdependHS
+lib/ghc/parse-gcstats.prl
+lib/ghc/process-gcstats.prl
+lib/ghc/unlit
+@dirrm lib/ghc/imports/concurrent
+@dirrm lib/ghc/imports/exts
+@dirrm lib/ghc/imports/misc
+@dirrm lib/ghc/imports/posix
+@dirrm lib/ghc/imports/std
+@dirrm lib/ghc/imports
+@dirrm lib/ghc/includes
+@dirrm lib/ghc
diff --git a/lang/ghc5/Makefile b/lang/ghc5/Makefile
new file mode 100644
index 000000000000..9bce4706491d
--- /dev/null
+++ b/lang/ghc5/Makefile
@@ -0,0 +1,41 @@
+# New ports collection makefile for: ghc
+# Version required: 4.04
+# Date created: 28 August 1999
+# Whom: Simon Marlow <simonmar@microsoft.com>
+#
+# $FreeBSD$
+
+DISTNAME= ghc-4.04
+CATEGORIES= lang
+MASTER_SITES= http://www.haskell.org/ghc/dist/4.04/
+DISTFILES= ghc-4.04-src${EXTRACT_SUFX} ghc-4.04-x86-hc${EXTRACT_SUFX}
+
+MAINTAINER= simonmar@microsoft.com
+
+USE_PERL5= yes
+USE_GMAKE= yes
+GNU_CONFIGURE= yes
+
+CONFIGURE_ARGS= --enable-hc-boot --libdir=${PREFIX}/lib/ghc
+
+WRKSRC= ${WRKDIR}/fptools
+
+# Note:
+# - This port will bootstrap from pre-compiled C files.
+# - ToDo: bootstrap using existing compiler, if one is installed.
+
+# XXX: we touch the happy-generated files to ensure that when we
+# switch to non-bootstrapping mode for installation, the build system
+# won't try to create them.
+#
+pre-build:
+ @${CP} ${FILESDIR}/build.mk ${WRKSRC}/mk
+ @${TOUCH} ${TOUCH_FLAGS} ${WRKSRC}/ghc/compiler/rename/ParseIface.hs
+ @${TOUCH} ${TOUCH_FLAGS} ${WRKSRC}/ghc/compiler/parser/Parser.hs
+ @(cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} boot)
+
+post-build:
+ @echo "GhcWithHscBuiltViaC=NO" >>${WRKSRC}/mk/build.mk
+ @(cd ${WRKSRC}/ghc/lib; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} clean boot all)
+
+.include <bsd.port.mk>
diff --git a/lang/ghc5/distinfo b/lang/ghc5/distinfo
new file mode 100644
index 000000000000..bc313febc41c
--- /dev/null
+++ b/lang/ghc5/distinfo
@@ -0,0 +1,2 @@
+MD5 (ghc-4.04-src.tar.gz) = e1211129906c45709ecf5159eb6d9d08
+MD5 (ghc-4.04-x86-hc.tar.gz) = 19287b805f9f528559a46059bbc9c4b9
diff --git a/lang/ghc5/files/build.mk b/lang/ghc5/files/build.mk
new file mode 100644
index 000000000000..ce2b100c9ee4
--- /dev/null
+++ b/lang/ghc5/files/build.mk
@@ -0,0 +1,4 @@
+GhcLibHcOpts = -O -split-objs -odir $*
+SRC_HAPPY_OPTS += -c
+GhcLibWays=
+GhcLibsWithReadline = YES
diff --git a/lang/ghc5/pkg-comment b/lang/ghc5/pkg-comment
new file mode 100644
index 000000000000..5568ca6a3812
--- /dev/null
+++ b/lang/ghc5/pkg-comment
@@ -0,0 +1 @@
+A Compiler for the functional language Haskell
diff --git a/lang/ghc5/pkg-descr b/lang/ghc5/pkg-descr
new file mode 100644
index 000000000000..ad4a4ee71e42
--- /dev/null
+++ b/lang/ghc5/pkg-descr
@@ -0,0 +1,14 @@
+GHC: The Glasgow Haskell Compiler.
+
+The Glasgow Haskell Compiler is a robust, fully-featured, optimising
+compiler for the functional programming language Haskell 98
+(http://www.haskell.org). GHC compiles Haskell to either native code
+or C. It implements numerous experimental language extensions to
+Haskell, including concurrency, a foreign language interface, several
+type-system extensions, exceptions, and so on. GHC comes with a
+generational garbage collector, a space and time profiler, and a
+comprehensive set of libraries.
+
+Documentation can be found hanging off GHC's homepage, below.
+
+WWW: http://www.haskell.org/ghc/
diff --git a/lang/ghc5/pkg-plist b/lang/ghc5/pkg-plist
new file mode 100644
index 000000000000..45cee650b61c
--- /dev/null
+++ b/lang/ghc5/pkg-plist
@@ -0,0 +1,171 @@
+bin/ghc
+bin/ghc-4.04
+bin/hp2ps
+bin/hstags
+bin/stat2resid
+lib/ghc/ghc-asm.prl
+lib/ghc/ghc-consist.prl
+lib/ghc/ghc-iface.prl
+lib/ghc/ghc-split.prl
+lib/ghc/hsc
+lib/ghc/hscpp
+lib/ghc/hstags-help
+lib/ghc/imports/concurrent/Channel.hi
+lib/ghc/imports/concurrent/ChannelVar.hi
+lib/ghc/imports/concurrent/Concurrent.hi
+lib/ghc/imports/concurrent/Merge.hi
+lib/ghc/imports/concurrent/Parallel.hi
+lib/ghc/imports/concurrent/SampleVar.hi
+lib/ghc/imports/concurrent/Semaphore.hi
+lib/ghc/imports/exts/Addr.hi
+lib/ghc/imports/exts/Bits.hi
+lib/ghc/imports/exts/ByteArray.hi
+lib/ghc/imports/exts/CCall.hi
+lib/ghc/imports/exts/Dynamic.hi
+lib/ghc/imports/exts/Exception.hi
+lib/ghc/imports/exts/Foreign.hi
+lib/ghc/imports/exts/GetOpt.hi
+lib/ghc/imports/exts/GlaExts.hi
+lib/ghc/imports/exts/IOExts.hi
+lib/ghc/imports/exts/Int.hi
+lib/ghc/imports/exts/LazyST.hi
+lib/ghc/imports/exts/MutableArray.hi
+lib/ghc/imports/exts/NativeInfo.hi
+lib/ghc/imports/exts/NumExts.hi
+lib/ghc/imports/exts/ST.hi
+lib/ghc/imports/exts/Stable.hi
+lib/ghc/imports/exts/Weak.hi
+lib/ghc/imports/exts/Word.hi
+lib/ghc/imports/misc/BSD.hi
+lib/ghc/imports/misc/Bag.hi
+lib/ghc/imports/misc/BitSet.hi
+lib/ghc/imports/misc/ByteOps.hi
+lib/ghc/imports/misc/CString.hi
+lib/ghc/imports/misc/CharSeq.hi
+lib/ghc/imports/misc/FiniteMap.hi
+lib/ghc/imports/misc/ListSetOps.hi
+lib/ghc/imports/misc/MD5.hi
+lib/ghc/imports/misc/MatchPS.hi
+lib/ghc/imports/misc/Maybes.hi
+lib/ghc/imports/misc/Memo.hi
+lib/ghc/imports/misc/Native.hi
+lib/ghc/imports/misc/PackedString.hi
+lib/ghc/imports/misc/Pretty.hi
+lib/ghc/imports/misc/Printf.hi
+lib/ghc/imports/misc/Readline.hi
+lib/ghc/imports/misc/Regex.hi
+lib/ghc/imports/misc/RegexString.hi
+lib/ghc/imports/misc/Set.hi
+lib/ghc/imports/misc/Socket.hi
+lib/ghc/imports/misc/SocketPrim.hi
+lib/ghc/imports/misc/Util.hi
+lib/ghc/imports/posix/Posix.hi
+lib/ghc/imports/posix/PosixDB.hi
+lib/ghc/imports/posix/PosixErr.hi
+lib/ghc/imports/posix/PosixFiles.hi
+lib/ghc/imports/posix/PosixIO.hi
+lib/ghc/imports/posix/PosixProcEnv.hi
+lib/ghc/imports/posix/PosixProcPrim.hi
+lib/ghc/imports/posix/PosixTTY.hi
+lib/ghc/imports/posix/PosixUtil.hi
+lib/ghc/imports/std/Array.hi
+lib/ghc/imports/std/CPUTime.hi
+lib/ghc/imports/std/Char.hi
+lib/ghc/imports/std/Complex.hi
+lib/ghc/imports/std/Directory.hi
+lib/ghc/imports/std/IO.hi
+lib/ghc/imports/std/Ix.hi
+lib/ghc/imports/std/List.hi
+lib/ghc/imports/std/Locale.hi
+lib/ghc/imports/std/Maybe.hi
+lib/ghc/imports/std/Monad.hi
+lib/ghc/imports/std/Numeric.hi
+lib/ghc/imports/std/PrelAddr.hi
+lib/ghc/imports/std/PrelArr.hi
+lib/ghc/imports/std/PrelArrExtra.hi
+lib/ghc/imports/std/PrelBase.hi
+lib/ghc/imports/std/PrelCCall.hi
+lib/ghc/imports/std/PrelConc.hi
+lib/ghc/imports/std/PrelDynamic.hi
+lib/ghc/imports/std/PrelEnum.hi
+lib/ghc/imports/std/PrelErr.hi
+lib/ghc/imports/std/PrelException.hi
+lib/ghc/imports/std/PrelForeign.hi
+lib/ghc/imports/std/PrelGHC.hi
+lib/ghc/imports/std/PrelHandle.hi
+lib/ghc/imports/std/PrelIOBase.hi
+lib/ghc/imports/std/PrelList.hi
+lib/ghc/imports/std/PrelMain.hi
+lib/ghc/imports/std/PrelMaybe.hi
+lib/ghc/imports/std/PrelNum.hi
+lib/ghc/imports/std/PrelNumExtra.hi
+lib/ghc/imports/std/PrelPack.hi
+lib/ghc/imports/std/PrelRead.hi
+lib/ghc/imports/std/PrelST.hi
+lib/ghc/imports/std/PrelShow.hi
+lib/ghc/imports/std/PrelStable.hi
+lib/ghc/imports/std/PrelTup.hi
+lib/ghc/imports/std/PrelWeak.hi
+lib/ghc/imports/std/Prelude.hi
+lib/ghc/imports/std/Random.hi
+lib/ghc/imports/std/Ratio.hi
+lib/ghc/imports/std/System.hi
+lib/ghc/imports/std/Time.hi
+lib/ghc/includes/Assembler.h
+lib/ghc/includes/Block.h
+lib/ghc/includes/CCall.h
+lib/ghc/includes/ClosureMacros.h
+lib/ghc/includes/ClosureTypes.h
+lib/ghc/includes/Closures.h
+lib/ghc/includes/Constants.h
+lib/ghc/includes/Hooks.h
+lib/ghc/includes/InfoMacros.h
+lib/ghc/includes/InfoTables.h
+lib/ghc/includes/MachDeps.h
+lib/ghc/includes/MachRegs.h
+lib/ghc/includes/NativeDefs.h
+lib/ghc/includes/Prelude.h
+lib/ghc/includes/PrimOps.h
+lib/ghc/includes/Profiling.h
+lib/ghc/includes/Regs.h
+lib/ghc/includes/Rts.h
+lib/ghc/includes/RtsAPI.h
+lib/ghc/includes/SchedAPI.h
+lib/ghc/includes/Stable.h
+lib/ghc/includes/Stg.h
+lib/ghc/includes/StgDLL.h
+lib/ghc/includes/StgMacros.h
+lib/ghc/includes/StgMiscClosures.h
+lib/ghc/includes/StgProf.h
+lib/ghc/includes/StgStorage.h
+lib/ghc/includes/StgTicky.h
+lib/ghc/includes/StgTypes.h
+lib/ghc/includes/TSO.h
+lib/ghc/includes/TailCalls.h
+lib/ghc/includes/Updates.h
+lib/ghc/includes/config.h
+lib/ghc/includes/gmp.h
+lib/ghc/includes/ieee-flpt.h
+lib/ghc/includes/options.h
+lib/ghc/includes/sainteger.h
+lib/ghc/libHS.a
+lib/ghc/libHS_cbits.a
+lib/ghc/libHSconcurrent.a
+lib/ghc/libHSexts.a
+lib/ghc/libHSmisc.a
+lib/ghc/libHSmisc_cbits.a
+lib/ghc/libHSposix.a
+lib/ghc/libHSposix_cbits.a
+lib/ghc/libHSrts.a
+lib/ghc/mkdependHS
+lib/ghc/parse-gcstats.prl
+lib/ghc/process-gcstats.prl
+lib/ghc/unlit
+@dirrm lib/ghc/imports/concurrent
+@dirrm lib/ghc/imports/exts
+@dirrm lib/ghc/imports/misc
+@dirrm lib/ghc/imports/posix
+@dirrm lib/ghc/imports/std
+@dirrm lib/ghc/imports
+@dirrm lib/ghc/includes
+@dirrm lib/ghc
diff --git a/lang/ghc6/Makefile b/lang/ghc6/Makefile
new file mode 100644
index 000000000000..9bce4706491d
--- /dev/null
+++ b/lang/ghc6/Makefile
@@ -0,0 +1,41 @@
+# New ports collection makefile for: ghc
+# Version required: 4.04
+# Date created: 28 August 1999
+# Whom: Simon Marlow <simonmar@microsoft.com>
+#
+# $FreeBSD$
+
+DISTNAME= ghc-4.04
+CATEGORIES= lang
+MASTER_SITES= http://www.haskell.org/ghc/dist/4.04/
+DISTFILES= ghc-4.04-src${EXTRACT_SUFX} ghc-4.04-x86-hc${EXTRACT_SUFX}
+
+MAINTAINER= simonmar@microsoft.com
+
+USE_PERL5= yes
+USE_GMAKE= yes
+GNU_CONFIGURE= yes
+
+CONFIGURE_ARGS= --enable-hc-boot --libdir=${PREFIX}/lib/ghc
+
+WRKSRC= ${WRKDIR}/fptools
+
+# Note:
+# - This port will bootstrap from pre-compiled C files.
+# - ToDo: bootstrap using existing compiler, if one is installed.
+
+# XXX: we touch the happy-generated files to ensure that when we
+# switch to non-bootstrapping mode for installation, the build system
+# won't try to create them.
+#
+pre-build:
+ @${CP} ${FILESDIR}/build.mk ${WRKSRC}/mk
+ @${TOUCH} ${TOUCH_FLAGS} ${WRKSRC}/ghc/compiler/rename/ParseIface.hs
+ @${TOUCH} ${TOUCH_FLAGS} ${WRKSRC}/ghc/compiler/parser/Parser.hs
+ @(cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} boot)
+
+post-build:
+ @echo "GhcWithHscBuiltViaC=NO" >>${WRKSRC}/mk/build.mk
+ @(cd ${WRKSRC}/ghc/lib; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} clean boot all)
+
+.include <bsd.port.mk>
diff --git a/lang/ghc6/distinfo b/lang/ghc6/distinfo
new file mode 100644
index 000000000000..bc313febc41c
--- /dev/null
+++ b/lang/ghc6/distinfo
@@ -0,0 +1,2 @@
+MD5 (ghc-4.04-src.tar.gz) = e1211129906c45709ecf5159eb6d9d08
+MD5 (ghc-4.04-x86-hc.tar.gz) = 19287b805f9f528559a46059bbc9c4b9
diff --git a/lang/ghc6/files/build.mk b/lang/ghc6/files/build.mk
new file mode 100644
index 000000000000..ce2b100c9ee4
--- /dev/null
+++ b/lang/ghc6/files/build.mk
@@ -0,0 +1,4 @@
+GhcLibHcOpts = -O -split-objs -odir $*
+SRC_HAPPY_OPTS += -c
+GhcLibWays=
+GhcLibsWithReadline = YES
diff --git a/lang/ghc6/pkg-comment b/lang/ghc6/pkg-comment
new file mode 100644
index 000000000000..5568ca6a3812
--- /dev/null
+++ b/lang/ghc6/pkg-comment
@@ -0,0 +1 @@
+A Compiler for the functional language Haskell
diff --git a/lang/ghc6/pkg-descr b/lang/ghc6/pkg-descr
new file mode 100644
index 000000000000..ad4a4ee71e42
--- /dev/null
+++ b/lang/ghc6/pkg-descr
@@ -0,0 +1,14 @@
+GHC: The Glasgow Haskell Compiler.
+
+The Glasgow Haskell Compiler is a robust, fully-featured, optimising
+compiler for the functional programming language Haskell 98
+(http://www.haskell.org). GHC compiles Haskell to either native code
+or C. It implements numerous experimental language extensions to
+Haskell, including concurrency, a foreign language interface, several
+type-system extensions, exceptions, and so on. GHC comes with a
+generational garbage collector, a space and time profiler, and a
+comprehensive set of libraries.
+
+Documentation can be found hanging off GHC's homepage, below.
+
+WWW: http://www.haskell.org/ghc/
diff --git a/lang/ghc6/pkg-plist b/lang/ghc6/pkg-plist
new file mode 100644
index 000000000000..45cee650b61c
--- /dev/null
+++ b/lang/ghc6/pkg-plist
@@ -0,0 +1,171 @@
+bin/ghc
+bin/ghc-4.04
+bin/hp2ps
+bin/hstags
+bin/stat2resid
+lib/ghc/ghc-asm.prl
+lib/ghc/ghc-consist.prl
+lib/ghc/ghc-iface.prl
+lib/ghc/ghc-split.prl
+lib/ghc/hsc
+lib/ghc/hscpp
+lib/ghc/hstags-help
+lib/ghc/imports/concurrent/Channel.hi
+lib/ghc/imports/concurrent/ChannelVar.hi
+lib/ghc/imports/concurrent/Concurrent.hi
+lib/ghc/imports/concurrent/Merge.hi
+lib/ghc/imports/concurrent/Parallel.hi
+lib/ghc/imports/concurrent/SampleVar.hi
+lib/ghc/imports/concurrent/Semaphore.hi
+lib/ghc/imports/exts/Addr.hi
+lib/ghc/imports/exts/Bits.hi
+lib/ghc/imports/exts/ByteArray.hi
+lib/ghc/imports/exts/CCall.hi
+lib/ghc/imports/exts/Dynamic.hi
+lib/ghc/imports/exts/Exception.hi
+lib/ghc/imports/exts/Foreign.hi
+lib/ghc/imports/exts/GetOpt.hi
+lib/ghc/imports/exts/GlaExts.hi
+lib/ghc/imports/exts/IOExts.hi
+lib/ghc/imports/exts/Int.hi
+lib/ghc/imports/exts/LazyST.hi
+lib/ghc/imports/exts/MutableArray.hi
+lib/ghc/imports/exts/NativeInfo.hi
+lib/ghc/imports/exts/NumExts.hi
+lib/ghc/imports/exts/ST.hi
+lib/ghc/imports/exts/Stable.hi
+lib/ghc/imports/exts/Weak.hi
+lib/ghc/imports/exts/Word.hi
+lib/ghc/imports/misc/BSD.hi
+lib/ghc/imports/misc/Bag.hi
+lib/ghc/imports/misc/BitSet.hi
+lib/ghc/imports/misc/ByteOps.hi
+lib/ghc/imports/misc/CString.hi
+lib/ghc/imports/misc/CharSeq.hi
+lib/ghc/imports/misc/FiniteMap.hi
+lib/ghc/imports/misc/ListSetOps.hi
+lib/ghc/imports/misc/MD5.hi
+lib/ghc/imports/misc/MatchPS.hi
+lib/ghc/imports/misc/Maybes.hi
+lib/ghc/imports/misc/Memo.hi
+lib/ghc/imports/misc/Native.hi
+lib/ghc/imports/misc/PackedString.hi
+lib/ghc/imports/misc/Pretty.hi
+lib/ghc/imports/misc/Printf.hi
+lib/ghc/imports/misc/Readline.hi
+lib/ghc/imports/misc/Regex.hi
+lib/ghc/imports/misc/RegexString.hi
+lib/ghc/imports/misc/Set.hi
+lib/ghc/imports/misc/Socket.hi
+lib/ghc/imports/misc/SocketPrim.hi
+lib/ghc/imports/misc/Util.hi
+lib/ghc/imports/posix/Posix.hi
+lib/ghc/imports/posix/PosixDB.hi
+lib/ghc/imports/posix/PosixErr.hi
+lib/ghc/imports/posix/PosixFiles.hi
+lib/ghc/imports/posix/PosixIO.hi
+lib/ghc/imports/posix/PosixProcEnv.hi
+lib/ghc/imports/posix/PosixProcPrim.hi
+lib/ghc/imports/posix/PosixTTY.hi
+lib/ghc/imports/posix/PosixUtil.hi
+lib/ghc/imports/std/Array.hi
+lib/ghc/imports/std/CPUTime.hi
+lib/ghc/imports/std/Char.hi
+lib/ghc/imports/std/Complex.hi
+lib/ghc/imports/std/Directory.hi
+lib/ghc/imports/std/IO.hi
+lib/ghc/imports/std/Ix.hi
+lib/ghc/imports/std/List.hi
+lib/ghc/imports/std/Locale.hi
+lib/ghc/imports/std/Maybe.hi
+lib/ghc/imports/std/Monad.hi
+lib/ghc/imports/std/Numeric.hi
+lib/ghc/imports/std/PrelAddr.hi
+lib/ghc/imports/std/PrelArr.hi
+lib/ghc/imports/std/PrelArrExtra.hi
+lib/ghc/imports/std/PrelBase.hi
+lib/ghc/imports/std/PrelCCall.hi
+lib/ghc/imports/std/PrelConc.hi
+lib/ghc/imports/std/PrelDynamic.hi
+lib/ghc/imports/std/PrelEnum.hi
+lib/ghc/imports/std/PrelErr.hi
+lib/ghc/imports/std/PrelException.hi
+lib/ghc/imports/std/PrelForeign.hi
+lib/ghc/imports/std/PrelGHC.hi
+lib/ghc/imports/std/PrelHandle.hi
+lib/ghc/imports/std/PrelIOBase.hi
+lib/ghc/imports/std/PrelList.hi
+lib/ghc/imports/std/PrelMain.hi
+lib/ghc/imports/std/PrelMaybe.hi
+lib/ghc/imports/std/PrelNum.hi
+lib/ghc/imports/std/PrelNumExtra.hi
+lib/ghc/imports/std/PrelPack.hi
+lib/ghc/imports/std/PrelRead.hi
+lib/ghc/imports/std/PrelST.hi
+lib/ghc/imports/std/PrelShow.hi
+lib/ghc/imports/std/PrelStable.hi
+lib/ghc/imports/std/PrelTup.hi
+lib/ghc/imports/std/PrelWeak.hi
+lib/ghc/imports/std/Prelude.hi
+lib/ghc/imports/std/Random.hi
+lib/ghc/imports/std/Ratio.hi
+lib/ghc/imports/std/System.hi
+lib/ghc/imports/std/Time.hi
+lib/ghc/includes/Assembler.h
+lib/ghc/includes/Block.h
+lib/ghc/includes/CCall.h
+lib/ghc/includes/ClosureMacros.h
+lib/ghc/includes/ClosureTypes.h
+lib/ghc/includes/Closures.h
+lib/ghc/includes/Constants.h
+lib/ghc/includes/Hooks.h
+lib/ghc/includes/InfoMacros.h
+lib/ghc/includes/InfoTables.h
+lib/ghc/includes/MachDeps.h
+lib/ghc/includes/MachRegs.h
+lib/ghc/includes/NativeDefs.h
+lib/ghc/includes/Prelude.h
+lib/ghc/includes/PrimOps.h
+lib/ghc/includes/Profiling.h
+lib/ghc/includes/Regs.h
+lib/ghc/includes/Rts.h
+lib/ghc/includes/RtsAPI.h
+lib/ghc/includes/SchedAPI.h
+lib/ghc/includes/Stable.h
+lib/ghc/includes/Stg.h
+lib/ghc/includes/StgDLL.h
+lib/ghc/includes/StgMacros.h
+lib/ghc/includes/StgMiscClosures.h
+lib/ghc/includes/StgProf.h
+lib/ghc/includes/StgStorage.h
+lib/ghc/includes/StgTicky.h
+lib/ghc/includes/StgTypes.h
+lib/ghc/includes/TSO.h
+lib/ghc/includes/TailCalls.h
+lib/ghc/includes/Updates.h
+lib/ghc/includes/config.h
+lib/ghc/includes/gmp.h
+lib/ghc/includes/ieee-flpt.h
+lib/ghc/includes/options.h
+lib/ghc/includes/sainteger.h
+lib/ghc/libHS.a
+lib/ghc/libHS_cbits.a
+lib/ghc/libHSconcurrent.a
+lib/ghc/libHSexts.a
+lib/ghc/libHSmisc.a
+lib/ghc/libHSmisc_cbits.a
+lib/ghc/libHSposix.a
+lib/ghc/libHSposix_cbits.a
+lib/ghc/libHSrts.a
+lib/ghc/mkdependHS
+lib/ghc/parse-gcstats.prl
+lib/ghc/process-gcstats.prl
+lib/ghc/unlit
+@dirrm lib/ghc/imports/concurrent
+@dirrm lib/ghc/imports/exts
+@dirrm lib/ghc/imports/misc
+@dirrm lib/ghc/imports/posix
+@dirrm lib/ghc/imports/std
+@dirrm lib/ghc/imports
+@dirrm lib/ghc/includes
+@dirrm lib/ghc