Files
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

69 lines
1.2 KiB
Nix

{
lib,
mkCoqDerivation,
callPackage,
coq,
flocq,
parseque,
mathcomp-boot,
compcert,
ExtLib,
version ? null,
}:
with lib;
mkCoqDerivation {
pname = "wasm";
repo = "WasmCert-Coq";
owner = "WasmCert";
inherit version;
defaultVersion =
let
case = coq: mc: out: {
cases = [
coq
mc
];
inherit out;
};
in
with lib.versions;
lib.switch
[ coq.coq-version mathcomp-boot.version ]
[
(case (isEq "8.20") (isEq "2.4") "2.2.0")
]
null;
release."2.1.0".sha256 = "sha256-k094mxDLLeelYP+ABm+dm6Y5YrachrbhNeZhfwLHNRo=";
release."2.2.0".sha256 = "sha256-GsfNpXgCG6XGqDE+bekzwZsWIHyjDTzWRuNnjCtS/88=";
mlPlugin = true;
useDune = true;
propagatedBuildInputs = [
ExtLib
mathcomp-boot
parseque
flocq
compcert
];
buildInputs = [
coq.ocamlPackages.mdx
coq.ocamlPackages.linenoise
coq.ocamlPackages.wasm
];
releaseRev = v: "v${v}";
passthru.tests.HelloWorld = callPackage ./test.nix { };
meta = {
description = "Wasm mechanisation in Coq/Rocq";
maintainers = with maintainers; [ womeier ];
license = licenses.mit;
};
}