depot/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-crypto/ec.nix

56 lines
899 B
Nix
Raw Normal View History

{ lib
, ocaml
, buildDunePackage
, mirage-crypto
, dune-configurator
, pkg-config
, cstruct
, mirage-crypto-rng
, mirage-crypto-pk
, hex
, alcotest
, asn1-combinators
, ppx_deriving_yojson
, ppx_deriving
, yojson
, withFreestanding ? false
, ocaml-freestanding
}:
buildDunePackage rec {
pname = "mirage-crypto-ec";
inherit (mirage-crypto)
src
version;
nativeBuildInputs = [ pkg-config ];
buildInputs = [
dune-configurator
];
propagatedBuildInputs = [
cstruct
mirage-crypto
mirage-crypto-rng
] ++ lib.optionals withFreestanding [
ocaml-freestanding
];
strictDeps = true;
doCheck = true;
checkInputs = [
hex
alcotest
asn1-combinators
ppx_deriving_yojson
ppx_deriving
yojson
mirage-crypto-pk
];
meta = mirage-crypto.meta // {
description = "Elliptic Curve Cryptography with primitives taken from Fiat";
};
}