From ec1e3050fea0edfde4027a39e442a99f33455565 Mon Sep 17 00:00:00 2001
From: John Wiegley <johnw@newartisans.com>
Date: Fri, 8 May 2015 11:35:00 -0500
Subject: [PATCH] coqPackages.QuickChick: New expression

---
 .../coq-modules/QuickChick/default.nix        | 28 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  2 ++
 2 files changed, 30 insertions(+)
 create mode 100644 pkgs/development/coq-modules/QuickChick/default.nix

diff --git a/pkgs/development/coq-modules/QuickChick/default.nix b/pkgs/development/coq-modules/QuickChick/default.nix
new file mode 100644
index 000000000000..9141bfd24d11
--- /dev/null
+++ b/pkgs/development/coq-modules/QuickChick/default.nix
@@ -0,0 +1,28 @@
+{stdenv, fetchgit, coq, coqPackages}:
+
+stdenv.mkDerivation rec {
+
+  name = "coq-QuickChick-${coq.coq-version}-${version}";
+  version = "21f50a02";
+
+  src = fetchgit {
+    url = git://github.com/QuickChick/QuickChick.git;
+    rev = "21f50a02e752f6d99d5bfefefcd2ad45df5e778a";
+    sha256 = "15hsirm443cr098hksfcg3nbjm9mdnmxzpz61qq7ap7lglabl7pw";
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 coqPackages.ssreflect ];
+  propagatedBuildInputs = [ coq ];
+
+  enableParallelBuilding = true;
+
+  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
+
+  meta = with stdenv.lib; {
+    homepage = git://github.com/QuickChick/QuickChick.git;
+    description = "Randomized property-based testing plugin for Coq; a clone of Haskell QuickCheck";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 6cb8448cdcbd..afba4d072406 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -13695,6 +13695,8 @@ let
 
     paco = callPackage ../development/coq-modules/paco {};
 
+    QuickChick = callPackage ../development/coq-modules/QuickChick {};
+
     ssreflect = callPackage ../development/coq-modules/ssreflect {};
 
     tlc = callPackage ../development/coq-modules/tlc {};