diff --git a/pkgs/development/ocaml-modules/crowbar/default.nix b/pkgs/development/ocaml-modules/crowbar/default.nix new file mode 100644 index 000000000000..0189026e346b --- /dev/null +++ b/pkgs/development/ocaml-modules/crowbar/default.nix @@ -0,0 +1,32 @@ +{ stdenv, buildDunePackage, fetchFromGitHub, ocplib-endian, cmdliner, afl-persistent +, calendar, fpath, pprint, uutf, uunf, uucp }: + +buildDunePackage rec { + pname = "crowbar"; + version = "0.2"; + + src = fetchFromGitHub { + owner = "stedolan"; + repo = pname; + rev = "v${version}"; + sha256 = "0wjfc9irvirfkic32ivvj6qb7r838w08b0d3vmngigbjpjyc9b14"; + }; + + minimumOCamlVersion = "4.08"; + + # disable xmldiff tests, so we don't need to package unmaintained and legacy pkgs + postPatch = "rm -rf examples/xmldiff"; + + propagatedBuildInputs = [ ocplib-endian cmdliner afl-persistent ]; + checkInputs = [ calendar fpath pprint uutf uunf uucp ]; + # uunf is broken on aarch64 + doCheck = !stdenv.isAarch64; + + meta = with stdenv.lib; { + description = "Property fuzzing for OCaml"; + homepage = "https://github.com/stedolan/crowbar"; + license = licenses.mit; + maintainers = [ maintainers.sternenseemann ]; + }; +} + diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index f75ecabe6348..602e131ad9e6 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -161,6 +161,8 @@ let cpuid = callPackage ../development/ocaml-modules/cpuid { }; + crowbar = callPackage ../development/ocaml-modules/crowbar { }; + crunch = callPackage ../development/tools/ocaml/crunch { }; cryptokit = callPackage ../development/ocaml-modules/cryptokit { };