aboutsummaryrefslogtreecommitdiffstats
path: root/lang/hs-epic
diff options
context:
space:
mode:
authorpgj <pgj@FreeBSD.org>2012-02-13 10:08:15 +0800
committerpgj <pgj@FreeBSD.org>2012-02-13 10:08:15 +0800
commit81c8b5f5961b7c0499f9a80d9aa41c0e375c5d05 (patch)
tree7a2ddec9dbb483b3e1ad53a31412f5f305818cf6 /lang/hs-epic
parent50c979dccab77ff0bc5f2f3e26aa4ab8b69a06ce (diff)
downloadfreebsd-ports-gnome-81c8b5f5961b7c0499f9a80d9aa41c0e375c5d05.tar.gz
freebsd-ports-gnome-81c8b5f5961b7c0499f9a80d9aa41c0e375c5d05.tar.zst
freebsd-ports-gnome-81c8b5f5961b7c0499f9a80d9aa41c0e375c5d05.zip
Epic is a simple functional language which compiles to reasonably efficient C code,
using the Boehm-Demers-Weiser garbage collector [1]. It is intended as a compiler back-end, and is currently used as a back end for Epigram [2] and Idris [3]. It can be invoked either as a library or an application. [1] http://www.hpl.hp.com/personal/Hans_Boehm/gc/ [2] http://www.e-pig.org/ [3] http://idris-lang.org/ WWW: http://www.dcs.st-and.ac.uk/~eb/epic.php Obtained from: FreeBSD Haskell
Diffstat (limited to 'lang/hs-epic')
-rw-r--r--lang/hs-epic/Makefile33
-rw-r--r--lang/hs-epic/distinfo2
-rw-r--r--lang/hs-epic/files/patch-evm__Makefile10
-rw-r--r--lang/hs-epic/pkg-descr10
-rw-r--r--lang/hs-epic/pkg-plist7
5 files changed, 62 insertions, 0 deletions
diff --git a/lang/hs-epic/Makefile b/lang/hs-epic/Makefile
new file mode 100644
index 000000000000..db7498aacfe4
--- /dev/null
+++ b/lang/hs-epic/Makefile
@@ -0,0 +1,33 @@
+# New ports collection makefile for: hs-epic
+# Date created: December 2, 2011
+# Whom: haskell@FreeBSD.org
+#
+# $FreeBSD$
+#
+
+PORTNAME= epic
+PORTVERSION= 0.9.2
+CATEGORIES= lang haskell
+
+MAINTAINER= haskell@FreeBSD.org
+COMMENT= Compiler for a simple functional language
+
+LICENSE= BSD
+
+CABAL_SETUP= Setup.hs
+USE_CABAL= mtl
+USE_HAPPY= yes
+
+BUILD_DEPENDS+= boehm-gc>=7.1:${PORTSDIR}/devel/boehm-gc \
+ gmp>=5.0.2:${PORTSDIR}/math/gmp
+RUN_DEPENDS+= boehm-gc>=7.1:${PORTSDIR}/devel/boehm-gc \
+ gmp>=5.0.2:${PORTSDIR}/math/gmp
+
+EXECUTABLE= epic
+
+post-patch::
+ @${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \
+ ${WRKSRC}/evm/Makefile
+
+.include "${.CURDIR}/../../lang/ghc/bsd.cabal.mk"
+.include <bsd.port.mk>
diff --git a/lang/hs-epic/distinfo b/lang/hs-epic/distinfo
new file mode 100644
index 000000000000..ef205ac4b9c1
--- /dev/null
+++ b/lang/hs-epic/distinfo
@@ -0,0 +1,2 @@
+SHA256 (cabal/epic-0.9.2.tar.gz) = dca5fb553e383ff1984fb4de9e734a6c4a1390290aafa7bf5b4718d7d1743bc7
+SIZE (cabal/epic-0.9.2.tar.gz) = 65607
diff --git a/lang/hs-epic/files/patch-evm__Makefile b/lang/hs-epic/files/patch-evm__Makefile
new file mode 100644
index 000000000000..35285837bc48
--- /dev/null
+++ b/lang/hs-epic/files/patch-evm__Makefile
@@ -0,0 +1,10 @@
+--- ./evm/Makefile.orig 2011-11-10 23:02:39.000000000 +0100
++++ ./evm/Makefile 2011-12-03 03:48:58.000000000 +0100
+@@ -1,6 +1,4 @@
+-CC = gcc
+-#CFLAGS = -Wall -g
+-CFLAGS = -Wall -O3 -DUSE_BOEHM
++CFLAGS+= -Wall -DUSE_BOEHM -I%%LOCALBASE%%/include -L%%LOCALBASE%%/lib
+ OBJS = closure.o stdfuns.o emalloc.o sparks.o
+ INSTALLDIR = ${PREFIX}/lib/evm
+
diff --git a/lang/hs-epic/pkg-descr b/lang/hs-epic/pkg-descr
new file mode 100644
index 000000000000..82fe95df65b9
--- /dev/null
+++ b/lang/hs-epic/pkg-descr
@@ -0,0 +1,10 @@
+Epic is a simple functional language which compiles to reasonably efficient C code,
+using the Boehm-Demers-Weiser garbage collector [1]. It is intended as a compiler
+back-end, and is currently used as a back end for Epigram [2] and Idris [3]. It
+can be invoked either as a library or an application.
+
+[1] http://www.hpl.hp.com/personal/Hans_Boehm/gc/
+[2] http://www.e-pig.org/
+[3] http://idris-lang.org/
+
+WWW: http://www.dcs.st-and.ac.uk/~eb/epic.php
diff --git a/lang/hs-epic/pkg-plist b/lang/hs-epic/pkg-plist
new file mode 100644
index 000000000000..00681510fbde
--- /dev/null
+++ b/lang/hs-epic/pkg-plist
@@ -0,0 +1,7 @@
+@comment $FreeBSD$
+lib/evm/closure.h
+lib/evm/libevm.a
+lib/evm/mainprog.c
+lib/evm/sparks.h
+lib/evm/stdfuns.h
+@dirrm lib/evm