nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix

44 lines
1.3 KiB
Nix
Raw Normal View History

2018-09-05 19:11:47 +03:00
{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, dune
2019-01-18 18:44:41 +03:00
, cmdliner, astring, fmt, result, uuidm
2017-10-31 04:06:17 +03:00
}:
let param =
if stdenv.lib.versionAtLeast ocaml.version "4.02" then {
2019-01-18 18:44:41 +03:00
version = "0.8.5";
sha256 = "1mhckvdcxkikbzgvy24kjz4265l15b86a6swz7m3ynbgvqdcfzqn";
2018-09-05 19:11:47 +03:00
buildInputs = [ dune ];
2019-01-18 18:44:41 +03:00
propagatedBuildInputs = [ uuidm ];
2018-09-05 19:11:47 +03:00
buildPhase = "dune build -p alcotest";
inherit (dune) installPhase;
2017-10-31 04:06:17 +03:00
} else {
version = "0.7.2";
sha256 = "1qgsz2zz5ky6s5pf3j3shc4fjc36rqnjflk8x0wl1fcpvvkr52md";
2017-12-14 10:36:29 +03:00
buildInputs = [ ocamlbuild topkg ];
2017-10-31 04:06:17 +03:00
inherit (topkg) buildPhase installPhase;
};
in
2016-10-25 20:32:16 +03:00
stdenv.mkDerivation rec {
name = "ocaml${ocaml.version}-alcotest-${version}";
2017-10-31 04:06:17 +03:00
inherit (param) version buildPhase installPhase;
2015-10-13 04:46:01 +03:00
src = fetchzip {
url = "https://github.com/mirage/alcotest/archive/${version}.tar.gz";
2017-10-31 04:06:17 +03:00
inherit (param) sha256;
};
2017-10-31 04:06:17 +03:00
buildInputs = [ ocaml findlib ] ++ param.buildInputs;
2016-10-25 20:32:16 +03:00
2019-01-18 18:44:41 +03:00
propagatedBuildInputs = [ cmdliner astring fmt result ]
++ (param.propagatedBuildInputs or []);
2016-10-25 20:32:16 +03:00
createFindlibDestdir = true;
meta = with stdenv.lib; {
2015-10-13 04:46:01 +03:00
homepage = https://github.com/mirage/alcotest;
description = "A lightweight and colourful test framework";
license = stdenv.lib.licenses.isc;
maintainers = [ maintainers.ericbmerritt ];
};
}