summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorszptvlfn <szptvlfn@pkgsrc.org>2014-05-28 22:02:11 +0000
committerszptvlfn <szptvlfn@pkgsrc.org>2014-05-28 22:02:11 +0000
commit7ec0b5f581f2612f5ca66ebbed4d32ad2a0031bf (patch)
tree1a5195b18be06dcc52a7cce535ea055e4d630ae0
parente4165bb14cb93aae008f64e2fccce90cf43304a7 (diff)
downloadpkgsrc-7ec0b5f581f2612f5ca66ebbed4d32ad2a0031bf.tar.gz
Import tf-random-0.5 as devel/hs-tf-random,
packaged for wip. This package contains an implementation of a high-quality splittable pseudorandom number generator. The generator is based on a cryptographic hash function built on top of the ThreeFish block cipher. See the paper Splittable Pseudorandom Number Generators Using Cryptographic Hashing by Claessen, Pałka for details and the rationale of the design. The package provides the following: A splittable PRNG that implements the standard System.Random.RandomGen class. The generator also implements an alternative version of the System.Random.TF.Gen.RandomGen class (exported from System.Random.TF.Gen), which requires the generator to return pseudorandom integers from the full 32-bit range, and contains an n-way split function. An alternative version of the Random class is provided, which is linked to the new RandomGen class, together with Random instances for some integral types. Two functions for initialising the generator with a non-deterministic seed: one using the system time, and one using the /dev/urandom UNIX special file. The package uses an adapted version of the reference C implementation of ThreeFish from the reference package of the Skein hash function (https://www.schneier.com/skein.html), originally written by Doug Whiting.
-rw-r--r--devel/hs-tf-random/DESCR24
-rw-r--r--devel/hs-tf-random/Makefile13
-rw-r--r--devel/hs-tf-random/PLIST28
-rw-r--r--devel/hs-tf-random/buildlink3.mk15
-rw-r--r--devel/hs-tf-random/distinfo5
5 files changed, 85 insertions, 0 deletions
diff --git a/devel/hs-tf-random/DESCR b/devel/hs-tf-random/DESCR
new file mode 100644
index 00000000000..2f059dbb83e
--- /dev/null
+++ b/devel/hs-tf-random/DESCR
@@ -0,0 +1,24 @@
+This package contains an implementation of a high-quality splittable
+pseudorandom number generator. The generator is based on a cryptographic hash
+function built on top of the ThreeFish block cipher. See the paper Splittable
+Pseudorandom Number Generators Using Cryptographic Hashing by Claessen,
+Pałka for details and the rationale of the design.
+
+The package provides the following:
+
+ A splittable PRNG that implements the standard System.Random.RandomGen class.
+
+ The generator also implements an alternative version of the
+ System.Random.TF.Gen.RandomGen class (exported from System.Random.TF.Gen),
+ which requires the generator to return pseudorandom integers from the full
+ 32-bit range, and contains an n-way split function.
+
+ An alternative version of the Random class is provided, which is linked to the
+ new RandomGen class, together with Random instances for some integral types.
+
+ Two functions for initialising the generator with a non-deterministic seed:
+ one using the system time, and one using the /dev/urandom UNIX special file.
+
+The package uses an adapted version of the reference C implementation of
+ThreeFish from the reference package of the Skein hash function
+(https://www.schneier.com/skein.html), originally written by Doug Whiting.
diff --git a/devel/hs-tf-random/Makefile b/devel/hs-tf-random/Makefile
new file mode 100644
index 00000000000..bec4a5c46f9
--- /dev/null
+++ b/devel/hs-tf-random/Makefile
@@ -0,0 +1,13 @@
+# $NetBSD: Makefile,v 1.1 2014/05/28 22:02:11 szptvlfn Exp $
+
+DISTNAME= tf-random-0.5
+CATEGORIES= devel
+
+MAINTAINER= szptvlfn@NetBSD.org
+COMMENT= High-quality splittable pseudorandom number generator
+LICENSE= modified-bsd
+
+.include "../../mk/haskell.mk"
+.include "../../devel/hs-primitive/buildlink3.mk"
+.include "../../devel/hs-random/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/hs-tf-random/PLIST b/devel/hs-tf-random/PLIST
new file mode 100644
index 00000000000..585330f9525
--- /dev/null
+++ b/devel/hs-tf-random/PLIST
@@ -0,0 +1,28 @@
+@comment $NetBSD: PLIST,v 1.1 2014/05/28 22:02:11 szptvlfn Exp $
+lib/tf-random-${PKGVERSION}/${HASKELL_VERSION}/HStf-random-${PKGVERSION}.o
+lib/tf-random-${PKGVERSION}/${HASKELL_VERSION}/System/Random/TF.hi
+lib/tf-random-${PKGVERSION}/${HASKELL_VERSION}/System/Random/TF/Gen.hi
+lib/tf-random-${PKGVERSION}/${HASKELL_VERSION}/System/Random/TF/Init.hi
+lib/tf-random-${PKGVERSION}/${HASKELL_VERSION}/System/Random/TF/Instances.hi
+lib/tf-random-${PKGVERSION}/${HASKELL_VERSION}/libHStf-random-${PKGVERSION}.a
+lib/tf-random-${PKGVERSION}/${HASKELL_VERSION}/package-description
+share/doc/tf-random-${PKGVERSION}/LICENSE
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/System-Random-TF-Gen.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/System-Random-TF-Init.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/System-Random-TF-Instances.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/System-Random-TF.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/doc-index.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/frames.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/haddock-util.js
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/hslogo-16.png
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/index-frames.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/index.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/mini_System-Random-TF-Gen.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/mini_System-Random-TF-Init.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/mini_System-Random-TF-Instances.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/mini_System-Random-TF.html
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/minus.gif
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/ocean.css
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/plus.gif
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/synopsis.png
+${PLIST.doc}share/doc/tf-random-${PKGVERSION}/html/tf-random.haddock
diff --git a/devel/hs-tf-random/buildlink3.mk b/devel/hs-tf-random/buildlink3.mk
new file mode 100644
index 00000000000..906f79ce58e
--- /dev/null
+++ b/devel/hs-tf-random/buildlink3.mk
@@ -0,0 +1,15 @@
+# $NetBSD: buildlink3.mk,v 1.1 2014/05/28 22:02:11 szptvlfn Exp $
+
+BUILDLINK_TREE+= hs-tf-random
+
+.if !defined(HS_TF_RANDOM_BUILDLINK3_MK)
+HS_TF_RANDOM_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.hs-tf-random+= hs-tf-random>=0.5
+BUILDLINK_PKGSRCDIR.hs-tf-random?= ../../devel/hs-tf-random
+
+.include "../../devel/hs-primitive/buildlink3.mk"
+.include "../../devel/hs-random/buildlink3.mk"
+.endif # HS_TF_RANDOM_BUILDLINK3_MK
+
+BUILDLINK_TREE+= -hs-tf-random
diff --git a/devel/hs-tf-random/distinfo b/devel/hs-tf-random/distinfo
new file mode 100644
index 00000000000..8d450a589dc
--- /dev/null
+++ b/devel/hs-tf-random/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1 2014/05/28 22:02:11 szptvlfn Exp $
+
+SHA1 (tf-random-0.5.tar.gz) = 27eeae9eeeee8d4162a2646eeee0fd715f76cead
+RMD160 (tf-random-0.5.tar.gz) = bd58a02f7e68c4fd4e51591fa4ddad93d416d717
+Size (tf-random-0.5.tar.gz) = 18483 bytes