diff options
Diffstat (limited to 'pkgs/development/ocaml-modules')
-rw-r--r-- | pkgs/development/ocaml-modules/ocsigen-deriving/default.nix | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/pkgs/development/ocaml-modules/ocsigen-deriving/default.nix b/pkgs/development/ocaml-modules/ocsigen-deriving/default.nix index 653445617958..569f5081355c 100644 --- a/pkgs/development/ocaml-modules/ocsigen-deriving/default.nix +++ b/pkgs/development/ocaml-modules/ocsigen-deriving/default.nix @@ -1,15 +1,30 @@ -{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, oasis, ocaml_optcomp, camlp4 }: +{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, oasis, ocaml_optcomp, camlp4 +, num +}: -let version = "0.7.1"; in +let param = + if stdenv.lib.versionAtLeast ocaml.version "4.03" + then { + version = "0.8.1"; + sha256 = "03vzrybdpjydbpil97zmir71kpsn2yxkjnzysma7fvybk8ll4zh9"; + buildInputs = [ num ]; + } else { + version = "0.7.1"; + sha256 = "0gg3nr3iic4rwqrcc0qvfm9x0x57zclvdsnpy0z8rv2fl5isbzms"; + }; +in + +let inherit (param) version; in stdenv.mkDerivation { name = "ocsigen-deriving-${version}"; src = fetchzip { url = "https://github.com/ocsigen/deriving/archive/${version}.tar.gz"; - sha256 = "0gg3nr3iic4rwqrcc0qvfm9x0x57zclvdsnpy0z8rv2fl5isbzms"; - }; + inherit (param) sha256; + }; - buildInputs = [ ocaml findlib ocamlbuild oasis ocaml_optcomp camlp4 ]; + buildInputs = [ ocaml findlib ocamlbuild oasis ocaml_optcomp camlp4 ] + ++ (param.buildInputs or []); createFindlibDestdir = true; |