aboutsummaryrefslogtreecommitdiff
path: root/devel/hs-smallcheck
diff options
context:
space:
mode:
authorGabor Pali <pgj@FreeBSD.org>2010-01-04 05:35:06 +0000
committerGabor Pali <pgj@FreeBSD.org>2010-01-04 05:35:06 +0000
commit76f862074109890b1132d144a2a0ee5611594899 (patch)
tree991a51ed1fef03bcaf2d94c012472311061ad938 /devel/hs-smallcheck
parenta4df9b833ad6fa06d85aba8ba481b1bf80ab64e7 (diff)
downloadports-76f862074109890b1132d144a2a0ee5611594899.tar.gz
ports-76f862074109890b1132d144a2a0ee5611594899.zip
SmallCheck is similar to QuickCheck (Claessen and Hughes 2000-) but
instead of testing for a sample of randomly generated values, SmallCheck tests properties for all the finitely many values up to some depth, progressively increasing the depth used. WWW: http://hackage.haskell.org/package/smallcheck PR: ports/142280 Submitted by: Jacula Modyun <jacula(at)gmail.com>
Notes
Notes: svn path=/head/; revision=247104
Diffstat (limited to 'devel/hs-smallcheck')
-rw-r--r--devel/hs-smallcheck/Makefile89
-rw-r--r--devel/hs-smallcheck/distinfo3
-rw-r--r--devel/hs-smallcheck/files/patch-smallcheck.cabal29
-rw-r--r--devel/hs-smallcheck/pkg-descr6
-rw-r--r--devel/hs-smallcheck/pkg-plist14
5 files changed, 141 insertions, 0 deletions
diff --git a/devel/hs-smallcheck/Makefile b/devel/hs-smallcheck/Makefile
new file mode 100644
index 000000000000..ce61407d3d25
--- /dev/null
+++ b/devel/hs-smallcheck/Makefile
@@ -0,0 +1,89 @@
+# New ports collection makefile for: hs-smallcheck
+# Date created: December 20 2009
+# Whom: Giuseppe Pilichi aka Jacula Modyun <jacula@gmail.com>
+#
+# $FreeBSD$
+#
+
+PORTNAME= smallcheck
+PORTVERSION= 0.4
+CATEGORIES= devel haskell
+MASTER_SITES= http://hackage.haskell.org/packages/archive/${PORTNAME}/${PORTVERSION}/
+PKGNAMEPREFIX= hs-
+
+MAINTAINER= jacula@gmail.com
+COMMENT= Another lightweight testing library in Haskell
+
+BUILD_DEPENDS+= ghc:${PORTSDIR}/lang/ghc
+RUN_DEPENDS+= ghc:${PORTSDIR}/lang/ghc
+
+GHC_VERSION= 6.10.4
+SMALLCHECK_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}
+SMALLCHECK_LIBDIR_REL= lib/${DISTNAME}
+
+PLIST_SUB= GHC_VERSION=${GHC_VERSION} \
+ SMALLCHECK_VERSION=${SMALLCHECK_VERSION} \
+ SMALLCHECK_LIBDIR_REL=${SMALLCHECK_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.hs -o setup -package Cabal
+.if !defined(NOPORTDATA)
+ cd ${WRKSRC} && ${SETUP_CMD} configure --haddock-options=-w --prefix=${PREFIX}
+.else
+ cd ${WRKSRC} && ${SETUP_CMD} configure --haddock-options=-w --prefix=${PREFIX} \
+ --datadir='' --datasubdir='' --docdir='${DOCSDIR}'
+.endif
+
+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}/${SMALLCHECK_LIBDIR_REL}/register.sh
+.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-smallcheck/distinfo b/devel/hs-smallcheck/distinfo
new file mode 100644
index 000000000000..195ff6801e80
--- /dev/null
+++ b/devel/hs-smallcheck/distinfo
@@ -0,0 +1,3 @@
+MD5 (smallcheck-0.4.tar.gz) = dbb3e22742e5ef5f00ec9a5328408936
+SHA256 (smallcheck-0.4.tar.gz) = aa86853b3c480fb3d13115823a7b70126c136ed4913261cd7c354f35aa1c015b
+SIZE (smallcheck-0.4.tar.gz) = 21543
diff --git a/devel/hs-smallcheck/files/patch-smallcheck.cabal b/devel/hs-smallcheck/files/patch-smallcheck.cabal
new file mode 100644
index 000000000000..ed435b3bde14
--- /dev/null
+++ b/devel/hs-smallcheck/files/patch-smallcheck.cabal
@@ -0,0 +1,29 @@
+--- smallcheck.cabal.orig 2009-12-25 17:11:58.000000000 +0000
++++ smallcheck.cabal 2009-12-25 17:17:57.000000000 +0000
+@@ -16,17 +16,19 @@
+ Build-Depends: base, haskell98
+ Build-Type: Simple
+
+-Extra-source-files: examples/numeric/NumProps.hs, examples/logical/LogicProps.hs,
++Extra-source-files: examples/numeric/NumProps.hs, examples/numeric/README,
++ examples/logical/LogicProps.hs, examples/logical/README,
+ examples/imperative/Interpreter.hs, examples/imperative/Syntax.hs,
+ examples/imperative/Machine.hs, examples/imperative/Behaviour.hs,
+ examples/imperative/Properties.hs, examples/imperative/Value.hs,
+ examples/imperative/StackMap.hs, examples/imperative/Compiler.hs,
+- examples/listy/ListProps.hs, examples/regular/Regular.hs,
+- examples/circuits/BitAdd.hs, examples/circuits/Mux.hs, examples/circuits/Sad.hs,
+- examples/binarytries/BinaryTries.hs
++ examples/imperative/README, examples/listy/ListProps.hs,
++ examples/listy/README, examples/regular/Regular.hs,
++ examples/regular/README, examples/circuits/BitAdd.hs,
++ examples/circuits/Mux.hs, examples/circuits/Sad.hs,
++ examples/circuits/README, examples/binarytries/BinaryTries.hs,
++ examples/binarytries/README
+
+-Data-files: examples/numeric/README, examples/logical/README, examples/imperative/README,
+- examples/listy/README, examples/regular/README, examples/circuits/README,
+- examples/binarytries/README, README
++Data-files: README
+
+ Exposed-modules: Test.SmallCheck
diff --git a/devel/hs-smallcheck/pkg-descr b/devel/hs-smallcheck/pkg-descr
new file mode 100644
index 000000000000..e321eb4c0b3a
--- /dev/null
+++ b/devel/hs-smallcheck/pkg-descr
@@ -0,0 +1,6 @@
+SmallCheck is similar to QuickCheck (Claessen and Hughes 2000-) but
+instead of testing for a sample of randomly generated values, SmallCheck
+tests properties for all the finitely many values up to some depth,
+progressively increasing the depth used.
+
+WWW: http://hackage.haskell.org/package/smallcheck
diff --git a/devel/hs-smallcheck/pkg-plist b/devel/hs-smallcheck/pkg-plist
new file mode 100644
index 000000000000..5df1123c4525
--- /dev/null
+++ b/devel/hs-smallcheck/pkg-plist
@@ -0,0 +1,14 @@
+@comment $FreeBSD$
+%%SMALLCHECK_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/HSsmallcheck-%%SMALLCHECK_VERSION%%.o
+%%SMALLCHECK_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Test/SmallCheck.hi
+%%SMALLCHECK_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/libHSsmallcheck-%%SMALLCHECK_VERSION%%.a
+%%SMALLCHECK_LIBDIR_REL%%/register.sh
+%%NOPORTDOCS%%%%DOCSDIR%%/LICENSE
+%%NOPORTDOCS%%@dirrmtry %%DOCSDIR%%
+@dirrm %%SMALLCHECK_LIBDIR_REL%%/ghc-%%GHC_VERSION%%/Test
+@dirrm %%SMALLCHECK_LIBDIR_REL%%/ghc-%%GHC_VERSION%%
+@dirrm %%SMALLCHECK_LIBDIR_REL%%
+@exec /bin/sh %D/%%SMALLCHECK_LIBDIR_REL%%/register.sh
+@exec /bin/rm -f %D/lib/ghc-%%GHC_VERSION%%/package.conf.old
+@unexec %D/bin/ghc-pkg unregister smallcheck
+@unexec /bin/rm -f %D/lib/ghc-%%GHC_VERSION%%/package.conf.old