55 lines
1.0 KiB
Nix
55 lines
1.0 KiB
Nix
{
|
|
lib,
|
|
mkCoqDerivation,
|
|
which,
|
|
coq,
|
|
metarocq-erasure,
|
|
bignums,
|
|
QuickChick,
|
|
stdpp,
|
|
TypedExtraction,
|
|
version ? null,
|
|
}:
|
|
|
|
with lib;
|
|
mkCoqDerivation {
|
|
pname = "ConCert";
|
|
repo = "ConCert";
|
|
owner = "AU-COBRA";
|
|
domain = "github.com";
|
|
|
|
inherit version;
|
|
defaultVersion =
|
|
let
|
|
case = case: out: { inherit case out; };
|
|
in
|
|
|
|
lib.switch coq.coq-version [
|
|
(case "9.1" "1.0.1")
|
|
] null;
|
|
release."1.0.1".hash = "sha256-HqbgUnGcZHkeG6qLf4qp/JT5oTPmdfOn1IJqnrloM2U=";
|
|
release."1.0.0".hash = "sha256-R+kWOZtR7T2LVQnHmLGDmGpLO0S76fPRWJpsO9nWqLE=";
|
|
releaseRev = v: "v${v}";
|
|
|
|
propagatedBuildInputs = [
|
|
coq.ocamlPackages.findlib
|
|
metarocq-erasure
|
|
bignums
|
|
QuickChick
|
|
stdpp
|
|
TypedExtraction
|
|
];
|
|
|
|
postPatch = "patchShebangs ./extraction/process-extraction-examples.sh";
|
|
|
|
buildPhase = ''
|
|
make core
|
|
'';
|
|
|
|
meta = {
|
|
description = "A framework for smart contract verification in Rocq";
|
|
maintainers = with maintainers; [ _4ever2 ];
|
|
license = licenses.mit;
|
|
};
|
|
}
|