2017-12-14 08:36:29 +01:00
|
|
|
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg
|
2017-03-17 03:37:38 +01:00
|
|
|
, bos, cmdliner, ocamlgraph
|
|
|
|
}:
|
|
|
|
|
2017-04-28 18:13:54 +02:00
|
|
|
if !stdenv.lib.versionAtLeast ocaml.version "4.03"
|
|
|
|
then throw "functoria is not available for OCaml ${ocaml.version}" else
|
|
|
|
|
2017-03-17 03:37:38 +01:00
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
name = "ocaml${ocaml.version}-functoria-${version}";
|
|
|
|
version = "2.0.2";
|
|
|
|
src = fetchurl {
|
|
|
|
url = "http://github.com/mirage/functoria/releases/download/${version}/functoria-${version}.tbz";
|
|
|
|
sha256 = "019rl4rir4lwgjyqj2wq3ylw4daih1kxxgbc6ld6kzcq66mwr747";
|
|
|
|
};
|
|
|
|
|
|
|
|
unpackCmd = "tar xjf $src";
|
|
|
|
|
2017-12-14 08:36:29 +01:00
|
|
|
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
2017-03-17 03:37:38 +01:00
|
|
|
propagatedBuildInputs = [ bos cmdliner ocamlgraph ];
|
|
|
|
|
|
|
|
inherit (topkg) buildPhase installPhase;
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
description = "A DSL to organize functor applications";
|
|
|
|
homepage = https://github.com/mirage/functoria;
|
|
|
|
license = stdenv.lib.licenses.isc;
|
|
|
|
maintainers = [ stdenv.lib.maintainers.vbgl ];
|
|
|
|
inherit (ocaml.meta) platforms;
|
|
|
|
};
|
|
|
|
}
|