diff options
Diffstat (limited to 'pkgs/development/ocaml-modules/cohttp')
-rw-r--r-- | pkgs/development/ocaml-modules/cohttp/default.nix | 19 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/cohttp/lwt-unix.nix | 19 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/cohttp/lwt.nix | 16 |
3 files changed, 43 insertions, 11 deletions
diff --git a/pkgs/development/ocaml-modules/cohttp/default.nix b/pkgs/development/ocaml-modules/cohttp/default.nix index 1fd4446f1ee9..adde3094e27f 100644 --- a/pkgs/development/ocaml-modules/cohttp/default.nix +++ b/pkgs/development/ocaml-modules/cohttp/default.nix @@ -1,29 +1,26 @@ -{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild +{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder , ppx_fields_conv, ppx_sexp_conv -, base64, fieldslib, uri, conduit -# Optional for async and lwt support: -, async , async_ssl, cmdliner, fmt, magic-mime, ocaml_lwt, tls +, base64, fieldslib, jsonm, logs, re, stringext, uri }: stdenv.mkDerivation rec { - version = "0.22.0"; + version = "0.99.0"; name = "ocaml${ocaml.version}-cohttp-${version}"; src = fetchFromGitHub { owner = "mirage"; repo = "ocaml-cohttp"; rev = "v${version}"; - sha256 = "1iy4ynh0yrw8337nsa9zvgcf476im0bhccsbs0vki3c5yxw2x60d"; + sha256 = "0y8qhzfwrc6486apmp2rsj822cnfhnz4w8rsb52w5wqmsgjxx1bj"; }; - buildInputs = [ ocaml findlib ocamlbuild ppx_fields_conv ppx_sexp_conv conduit - async async_ssl cmdliner fmt magic-mime ocaml_lwt tls ]; + buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ]; - propagatedBuildInputs = [ base64 fieldslib uri ]; + propagatedBuildInputs = [ base64 fieldslib re stringext uri ]; - makeFlags = [ "PREFIX=$(out)" ]; + buildPhase = "jbuilder build -p cohttp"; - createFindlibDestdir = true; + inherit (jbuilder) installPhase; meta = { description = "HTTP(S) library for Lwt, Async and Mirage"; diff --git a/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix new file mode 100644 index 000000000000..c526a101dd9d --- /dev/null +++ b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix @@ -0,0 +1,19 @@ +{ stdenv, ocaml, findlib, jbuilder, cohttp-lwt +, conduit-lwt-unix, ppx_sexp_conv +, cmdliner, fmt, magic-mime +}: + +if !stdenv.lib.versionAtLeast cohttp-lwt.version "0.99" +then cohttp-lwt +else + +stdenv.mkDerivation rec { + name = "ocaml${ocaml.version}-cohttp-lwt-unix-${version}"; + inherit (cohttp-lwt) version src installPhase meta; + + buildInputs = [ ocaml findlib jbuilder cmdliner ppx_sexp_conv ]; + + propagatedBuildInputs = [ cohttp-lwt conduit-lwt-unix fmt magic-mime ]; + + buildPhase = "jbuilder build -p cohttp-lwt-unix"; +} diff --git a/pkgs/development/ocaml-modules/cohttp/lwt.nix b/pkgs/development/ocaml-modules/cohttp/lwt.nix new file mode 100644 index 000000000000..21bea646d721 --- /dev/null +++ b/pkgs/development/ocaml-modules/cohttp/lwt.nix @@ -0,0 +1,16 @@ +{ stdenv, ocaml, findlib, jbuilder, cohttp, lwt3, uri, ppx_sexp_conv }: + +if !stdenv.lib.versionAtLeast cohttp.version "0.99" +then cohttp +else + +stdenv.mkDerivation rec { + name = "ocaml${ocaml.version}-cohttp-lwt-${version}"; + inherit (cohttp) version src installPhase meta; + + buildInputs = [ ocaml findlib jbuilder uri ppx_sexp_conv ]; + + propagatedBuildInputs = [ cohttp lwt3 ]; + + buildPhase = "jbuilder build -p cohttp-lwt"; +} |