coqPackages: refactor
This commit is contained in:
committed by
Vincent Laporte
parent
04065a7354
commit
9ffd16b385
@@ -1,60 +1,21 @@
|
||||
{ stdenv, fetchgit, coq, ssreflect }:
|
||||
{ lib, mkCoqDerivation, coq, ssreflect, version ? null }:
|
||||
|
||||
let params =
|
||||
{
|
||||
"8.5" = {
|
||||
version = "20171215";
|
||||
rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
|
||||
sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
|
||||
};
|
||||
with lib; mkCoqDerivation {
|
||||
|
||||
"8.6" = {
|
||||
version = "20171215";
|
||||
rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
|
||||
sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
|
||||
};
|
||||
pname = "coq-haskell";
|
||||
owner = "jwiegley";
|
||||
inherit version;
|
||||
defaultVersion = if versions.range "8.5" "8.8" coq.coq-version then "20171215" else null;
|
||||
release."20171215".rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
|
||||
release."20171215".sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
|
||||
|
||||
"8.7" = {
|
||||
version = "20171215";
|
||||
rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
|
||||
sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
|
||||
};
|
||||
|
||||
"8.8" = {
|
||||
version = "20171215";
|
||||
rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
|
||||
sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
|
||||
};
|
||||
};
|
||||
param = params.${coq.coq-version};
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
||||
name = "coq${coq.coq-version}-coq-haskell-${param.version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/jwiegley/coq-haskell.git";
|
||||
inherit (param) rev sha256;
|
||||
};
|
||||
|
||||
buildInputs = with coq.ocamlPackages; [ ocaml camlp5 findlib ];
|
||||
mlPlugin = true;
|
||||
extraInstallFlags = [ "-f Makefile.coq" ];
|
||||
propagatedBuildInputs = [ coq ssreflect ];
|
||||
|
||||
enableParallelBuilding = false;
|
||||
|
||||
installPhase = ''
|
||||
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "https://github.com/jwiegley/coq-haskell";
|
||||
meta = {
|
||||
description = "A library for formalizing Haskell types and functions in Coq";
|
||||
maintainers = with maintainers; [ jwiegley ];
|
||||
platforms = coq.meta.platforms;
|
||||
};
|
||||
|
||||
passthru = {
|
||||
compatibleCoqVersions = v: builtins.hasAttr v params;
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user