aboutsummaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authorpgj <pgj@FreeBSD.org>2010-01-04 16:33:07 +0800
committerpgj <pgj@FreeBSD.org>2010-01-04 16:33:07 +0800
commitc95fa5678d95a3b3e1cef1b84dd81715dd0f2f7d (patch)
tree9cbc2804c00afc0d3ce86aa7a7d8808611c5eb39 /devel
parentadde88abd0a089a5ca8c3a2844376ab1aea9d0c4 (diff)
downloadfreebsd-ports-gnome-c95fa5678d95a3b3e1cef1b84dd81715dd0f2f7d.tar.gz
freebsd-ports-gnome-c95fa5678d95a3b3e1cef1b84dd81715dd0f2f7d.tar.zst
freebsd-ports-gnome-c95fa5678d95a3b3e1cef1b84dd81715dd0f2f7d.zip
This library defines an Interpreter monad. It allows to load Haskell
modules, browse them, type-check and evaluate strings with Haskell expressions and even coerce them into values. The library is thread-safe and type-safe (even the coercion of expressions to values). WWW: http://projects.haskell.org/hint PR: ports/142290 Submitted by: Jacula Modyun <jacula(at)gmail.com>
Diffstat (limited to 'devel')
-rw-r--r--devel/Makefile1
-rw-r--r--devel/hs-hint/Makefile96
-rw-r--r--devel/hs-hint/distinfo3
-rw-r--r--devel/hs-hint/pkg-descr8
-rw-r--r--devel/hs-hint/pkg-plist36
5 files changed, 144 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 42de492502f6..41e1012479a4 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -547,6 +547,7 @@
SUBDIR += hs-haskell-src-exts
SUBDIR += hs-hat
SUBDIR += hs-hdoc
+ SUBDIR += hs-hint
SUBDIR += hs-hmake
SUBDIR += hs-hoogle
SUBDIR += hs-idoc
diff --git a/devel/hs-hint/Makefile b/devel/hs-hint/Makefile
new file mode 100644
index 000000000000..f162ee938f4b
--- /dev/null
+++ b/devel/hs-hint/Makefile
@@ -0,0 +1,96 @@
+# New ports collection makefile for: hs-hint
+# Date created: December 20 2009
+# Whom: Giuseppe Pilichi aka Jacula Modyun <jacula@gmail.com>
+#
+# $FreeBSD$
+#
+
+PORTNAME= hint
+PORTVERSION= 0.3.2.1
+CATEGORIES= devel haskell
+MASTER_SITES= http://hackage.haskell.org/packages/archive/${PORTNAME}/${PORTVERSION}/
+PKGNAMEPREFIX= hs-
+
+MAINTAINER= jacula@gmail.com
+COMMENT= Runtime Haskell interpreter (GHC API wrapper)
+
+BUILD_DEPENDS+= ghc:${PORTSDIR}/lang/ghc \
+ hs-ghc-paths>=0.1.0.5:${PORTSDIR}/devel/hs-ghc-paths \
+ hs-utf8-string-ghc>=0.3:${PORTSDIR}/devel/hs-utf8-string-ghc \
+ hs-MonadCatchIO-mtl>=0.2:${PORTSDIR}/devel/hs-MonadCatchIO-mtl \
+ hs-ghc-mtl>=1.0.1.0:${PORTSDIR}/devel/hs-ghc-mtl
+RUN_DEPENDS+= ghc:${PORTSDIR}/lang/ghc \
+ hs-ghc-paths>=0.1.0.5:${PORTSDIR}/devel/hs-ghc-paths \
+ hs-utf8-string-ghc>=0.3:${PORTSDIR}/devel/hs-utf8-string-ghc \
+ hs-MonadCatchIO-mtl>=0.2:${PORTSDIR}/devel/hs-MonadCatchIO-mtl \
+ hs-ghc-mtl>=1.0.1.0:${PORTSDIR}/devel/hs-ghc-mtl
+
+GHC_VERSION= 6.10.4
+HINT_VERSION= ${PORTVERSION}
+
+GHC_CMD= ${LOCALBASE}/bin/ghc
+SETUP_CMD= ./setup
+
+EXAMPLESDIR= ${PREFIX}/share/examples/${DISTNAME}
+PORTEXAMPLES= *
+
+DATADIR= ${PREFIX}/share/${DISTNAME}
+PORTDATA= *
+
+DOCSDIR= ${PREFIX}/share/doc/${DISTNAME}
+HINT_LIBDIR_REL= lib/${DISTNAME}
+
+PLIST_SUB= GHC_VERSION=${GHC_VERSION} \
+ HINT_VERSION=${HINT_VERSION} \
+ HINT_LIBDIR_REL=${HINT_LIBDIR_REL}
+
+.if defined(NOPORTDOCS)
+PLIST_SUB+= NOPORTDOCS=""
+.else
+PLIST_SUB+= NOPORTDOCS="@comment "
+.endif
+
+.if !defined(NOPORTDOCS)
+
+PORT_HADDOCK!= (cd ${.CURDIR}/../../lang/ghc && ${MAKE} -V PORT_HADDOCK)
+.if !empty(PORT_HADDOCK:M?0)
+BUILD_DEPENDS+= haddock:${PORTSDIR}/devel/hs-haddock
+.endif
+BUILD_DEPENDS+= HsColour:${PORTSDIR}/print/hs-hscolour
+
+HSCOLOUR_VERSION= 1.15
+HSCOLOUR_DATADIR= ${PREFIX}/share/hscolour-${HSCOLOUR_VERSION}
+
+PORTDOCS= *
+.endif
+
+.SILENT:
+
+do-configure:
+ cd ${WRKSRC} && ${GHC_CMD} --make Setup.lhs -o setup -package Cabal \
+ && ${SETUP_CMD} configure --haddock-options=-w --prefix=${PREFIX}
+
+do-build:
+ cd ${WRKSRC} && ${SETUP_CMD} build \
+ && ${SETUP_CMD} register --gen-script
+
+.if !defined(NOPORTDOCS)
+ cd ${WRKSRC} && ${SETUP_CMD} haddock --hyperlink-source \
+ --hscolour-css=${HSCOLOUR_DATADIR}/hscolour.css
+.endif
+
+do-install:
+ cd ${WRKSRC} && ${SETUP_CMD} install \
+ && ${INSTALL_SCRIPT} register.sh ${PREFIX}/${HINT_LIBDIR_REL}/register.sh
+.if !defined(NOPORTDATA)
+ @${MKDIR} ${DATADIR} && ${INSTALL_DATA} ${WRKSRC}/AUTHORS ${DATADIR} \
+ && ${INSTALL_DATA} ${WRKSRC}/Changes ${DATADIR}
+.endif
+.if !defined(NOPORTEXAMPLES)
+ ${MKDIR} ${EXAMPLESDIR} && cd ${WRKSRC}/examples && ${COPYTREE_SHARE} \* ${EXAMPLESDIR}
+.endif
+
+post-install:
+ ${RM} -f ${PREFIX}/lib/ghc-${GHC_VERSION}/package.conf.old
+
+.include <bsd.port.mk>
diff --git a/devel/hs-hint/distinfo b/devel/hs-hint/distinfo
new file mode 100644
index 000000000000..0e6442206769
--- /dev/null
+++ b/devel/hs-hint/distinfo
@@ -0,0 +1,3 @@
+MD5 (hint-0.3.2.1.tar.gz) = 54f288e9615ce5f3b592f646d65c223d
+SHA256 (hint-0.3.2.1.tar.gz) = 510148323c2f9d1890802e421fe4bff137803fd7f4818b7394ad4bef89e7ebdd
+SIZE (hint-0.3.2.1.tar.gz) = 24431
diff --git a/devel/hs-hint/pkg-descr b/devel/hs-hint/pkg-descr
new file mode 100644
index 000000000000..32e5fbe6f1d6
--- /dev/null
+++ b/devel/hs-hint/pkg-descr
@@ -0,0 +1,8 @@
+This library defines an Interpreter monad. It allows to load Haskell
+modules, browse them, type-check and evaluate strings with Haskell
+expressions and even coerce them into values. The library is thread-safe
+and type-safe (even the coercion of expressions to values).
+
+It is, esentially, a huge subset of the GHC API wrapped in a simpler API.
+
+WWW: http://projects.haskell.org/hint
diff --git a/devel/hs-hint/pkg-plist b/devel/hs-hint/pkg-plist
new file mode 100644
index 000000000000..3c524569ddb6
--- /dev/null
+++ b/devel/hs-hint/pkg-plist
@@ -0,0 +1,36 @@
+@comment $FreeBSD$
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/HShint-%%HINT_VERSION%%.o
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Base.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Compat.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Configuration.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Context.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Conversions.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Eval.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Extension.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/GHC.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/InterpreterT.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Parsers.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Reflection.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Sandbox.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Typecheck.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint/Util.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language/Haskell/Interpreter.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language/Haskell/Interpreter/Extension.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language/Haskell/Interpreter/GHC.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language/Haskell/Interpreter/GHC/Unsafe.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language/Haskell/Interpreter/Unsafe.hi
+%%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/libHShint-%%HINT_VERSION%%.a
+%%HINT_LIBDIR_REL%%/register.sh
+%%NOPORTDOCS%%%%DOCSDIR%%/LICENSE
+%%NOPORTDOCS%%@dirrmtry %%DOCSDIR%%
+@dirrm %%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language/Haskell/Interpreter/GHC
+@dirrm %%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language/Haskell/Interpreter
+@dirrm %%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language/Haskell
+@dirrm %%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Language
+@dirrm %%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Hint
+@dirrm %%HINT_LIBDIR_REL%%/ghc-%%GHC_VERSION%%
+@dirrm %%HINT_LIBDIR_REL%%
+@exec /bin/sh %D/%%HINT_LIBDIR_REL%%/register.sh
+@exec /bin/rm -f %D/lib/ghc-%%GHC_VERSION%%/package.conf.old
+@unexec %D/bin/ghc-pkg unregister hint
+@unexec /bin/rm -f %D/lib/ghc-%%GHC_VERSION%%/package.conf.old