57 lines
1.0 KiB
Nix
57 lines
1.0 KiB
Nix
{
|
|
lib,
|
|
mkCoqDerivation,
|
|
which,
|
|
coq,
|
|
metacoq,
|
|
version ? null,
|
|
}:
|
|
|
|
with lib;
|
|
mkCoqDerivation {
|
|
pname = "ElmExtraction";
|
|
repo = "coq-elm-extraction";
|
|
owner = "AU-COBRA";
|
|
domain = "github.com";
|
|
|
|
inherit version;
|
|
defaultVersion =
|
|
let
|
|
case = coq: mc: out: {
|
|
cases = [
|
|
coq
|
|
mc
|
|
];
|
|
inherit out;
|
|
};
|
|
in
|
|
with versions;
|
|
switch
|
|
[
|
|
coq.coq-version
|
|
metacoq.version
|
|
]
|
|
[
|
|
(case (range "8.17" "9.0") (range "1.3.1" "1.3.4") "0.1.1")
|
|
]
|
|
null;
|
|
|
|
release."0.1.0".sha256 = "EWjubBHsxAl2HuRAfJI3B9qzP2mj89eh0CUc8y7/7Ds=";
|
|
release."0.1.1".sha256 = "SDSyXqtOQlW9m9yH8OC909fsC/ePhKkSiY+BoQE76vk=";
|
|
|
|
releaseRev = v: "v${v}";
|
|
|
|
propagatedBuildInputs = [
|
|
coq.ocamlPackages.findlib
|
|
metacoq
|
|
];
|
|
|
|
postPatch = ''patchShebangs ./tests/process-extraction-examples.sh'';
|
|
|
|
meta = {
|
|
description = "A framework for extracting Coq programs to Elm";
|
|
maintainers = with maintainers; [ _4ever2 ];
|
|
license = licenses.mit;
|
|
};
|
|
}
|