diff options
author | Joachim F <joachifm@users.noreply.github.com> | 2016-09-23 19:57:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-23 19:57:05 +0200 |
commit | aa9227828bd24526023303de36e4a03cb98d58a2 (patch) | |
tree | f53a70cefefefb410bf0ce9f01eebe9466bf5ed5 /pkgs/development/ocaml-modules | |
parent | ac8206e31d92f8325d4ede3d57df9cb9905a9c7a (diff) | |
parent | 65fb52f21045134690bacf5d9c21086db20ab1d1 (diff) | |
download | nixlib-aa9227828bd24526023303de36e4a03cb98d58a2.tar nixlib-aa9227828bd24526023303de36e4a03cb98d58a2.tar.gz nixlib-aa9227828bd24526023303de36e4a03cb98d58a2.tar.bz2 nixlib-aa9227828bd24526023303de36e4a03cb98d58a2.tar.lz nixlib-aa9227828bd24526023303de36e4a03cb98d58a2.tar.xz nixlib-aa9227828bd24526023303de36e4a03cb98d58a2.tar.zst nixlib-aa9227828bd24526023303de36e4a03cb98d58a2.zip |
Merge pull request #18572 from maurer/janestreet
Janestreet
Diffstat (limited to 'pkgs/development/ocaml-modules')
62 files changed, 789 insertions, 64 deletions
diff --git a/pkgs/development/ocaml-modules/async/default.nix b/pkgs/development/ocaml-modules/async/default.nix index 2b84519036c7..498315f9cbfd 100644 --- a/pkgs/development/ocaml-modules/async/default.nix +++ b/pkgs/development/ocaml-modules/async/default.nix @@ -1,5 +1,5 @@ -{stdenv, buildOcaml, fetchurl, async_kernel, - async_unix, async_extra, pa_ounit}: +{stdenv, buildOcaml, fetchurl, async_kernel_p4, + async_unix_p4, async_extra_p4, pa_ounit}: buildOcaml rec { name = "async"; @@ -12,7 +12,7 @@ buildOcaml rec { sha256 = "ecc4ca939ab098e689332921b110dbaacd06d9f8d8bf697023dfff3ca37dc1e9"; }; - propagatedBuildInputs = [ async_kernel async_unix async_extra pa_ounit ]; + propagatedBuildInputs = [ async_kernel_p4 async_unix_p4 async_extra_p4 pa_ounit ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/async; diff --git a/pkgs/development/ocaml-modules/async_extra/default.nix b/pkgs/development/ocaml-modules/async_extra/default.nix index 2d1e1dea69cc..80addcfc3bb4 100644 --- a/pkgs/development/ocaml-modules/async_extra/default.nix +++ b/pkgs/development/ocaml-modules/async_extra/default.nix @@ -1,6 +1,6 @@ -{stdenv, buildOcaml, fetchurl, async_kernel, async_unix, - bin_prot, core, custom_printf, fieldslib, herelib, pa_ounit, - pipebang, pa_test, sexplib}: +{stdenv, buildOcaml, fetchurl, async_kernel_p4, async_unix_p4, + bin_prot_p4, core_p4, custom_printf, fieldslib_p4, herelib, pa_ounit, + pipebang, pa_test, sexplib_p4}: buildOcaml rec { name = "async_extra"; @@ -14,8 +14,8 @@ buildOcaml rec { }; buildInputs = [ pa_test pa_ounit ]; - propagatedBuildInputs = [ async_kernel async_unix core bin_prot custom_printf - fieldslib herelib pipebang sexplib ]; + propagatedBuildInputs = [ async_kernel_p4 async_unix_p4 core_p4 bin_prot_p4 custom_printf + fieldslib_p4 herelib pipebang sexplib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/async_extra; diff --git a/pkgs/development/ocaml-modules/async_find/default.nix b/pkgs/development/ocaml-modules/async_find/default.nix index ae10e931ce25..d0e89940433c 100644 --- a/pkgs/development/ocaml-modules/async_find/default.nix +++ b/pkgs/development/ocaml-modules/async_find/default.nix @@ -1,4 +1,4 @@ -{stdenv, buildOcaml, fetchurl, async, core, sexplib}: +{stdenv, buildOcaml, fetchurl, async_p4, core_p4, sexplib_p4}: buildOcaml rec { name = "async_find"; @@ -11,7 +11,7 @@ buildOcaml rec { sha256 = "4e3fda72f50174f05d96a5a09323f236c041b1a685890c155822956f3deb8803"; }; - propagatedBuildInputs = [ async core sexplib ]; + propagatedBuildInputs = [ async_p4 core_p4 sexplib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/async_find; diff --git a/pkgs/development/ocaml-modules/async_kernel/default.nix b/pkgs/development/ocaml-modules/async_kernel/default.nix index 8c0d8d7c851e..43fde1631ac7 100644 --- a/pkgs/development/ocaml-modules/async_kernel/default.nix +++ b/pkgs/development/ocaml-modules/async_kernel/default.nix @@ -1,6 +1,6 @@ -{stdenv, buildOcaml, fetchurl, core_kernel, - bin_prot, fieldslib, pa_ounit, pa_test, - sexplib, herelib}: +{stdenv, buildOcaml, fetchurl, core_kernel_p4, + bin_prot_p4, fieldslib_p4, pa_ounit, pa_test, + sexplib_p4, herelib}: buildOcaml rec { name = "async_kernel"; @@ -14,7 +14,7 @@ buildOcaml rec { }; buildInputs = [ pa_test pa_ounit ]; - propagatedBuildInputs = [ core_kernel bin_prot fieldslib herelib sexplib ]; + propagatedBuildInputs = [ core_kernel_p4 bin_prot_p4 fieldslib_p4 herelib sexplib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/async_kernel; diff --git a/pkgs/development/ocaml-modules/async_shell/default.nix b/pkgs/development/ocaml-modules/async_shell/default.nix index 75755833a5f5..6b1e772bc7d1 100644 --- a/pkgs/development/ocaml-modules/async_shell/default.nix +++ b/pkgs/development/ocaml-modules/async_shell/default.nix @@ -1,4 +1,4 @@ -{stdenv, buildOcaml, fetchurl, async, core, core_extended}: +{stdenv, buildOcaml, fetchurl, async_p4, core_p4, core_extended_p4}: buildOcaml rec { name = "async_shell"; @@ -11,7 +11,7 @@ buildOcaml rec { sha256 = "0b4497bea9124c5a665ee58fb0a73c5cbf2f757479df902e6870627196e6c105"; }; - propagatedBuildInputs = [ async core core_extended ]; + propagatedBuildInputs = [ async_p4 core_p4 core_extended_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/async_shell; diff --git a/pkgs/development/ocaml-modules/async_ssl/default.nix b/pkgs/development/ocaml-modules/async_ssl/default.nix index 527d56ceaa01..2bace35aa8b6 100644 --- a/pkgs/development/ocaml-modules/async_ssl/default.nix +++ b/pkgs/development/ocaml-modules/async_ssl/default.nix @@ -1,5 +1,5 @@ -{stdenv, buildOcaml, fetchurl, async, comparelib, core, ctypes, openssl, - fieldslib, herelib, pa_bench, pa_ounit, pipebang, pa_test, sexplib}: +{stdenv, buildOcaml, fetchurl, async_p4, comparelib, core_p4, ctypes, openssl, + fieldslib_p4, herelib, pa_bench, pa_ounit, pipebang, pa_test, sexplib_p4}: buildOcaml rec { name = "async_ssl"; @@ -13,8 +13,8 @@ buildOcaml rec { }; buildInputs = [ pa_bench pa_test ]; - propagatedBuildInputs = [ ctypes async comparelib core fieldslib pa_ounit - herelib pipebang sexplib openssl ]; + propagatedBuildInputs = [ ctypes async_p4 comparelib core_p4 fieldslib_p4 pa_ounit + herelib pipebang sexplib_p4 openssl ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/async_ssl; diff --git a/pkgs/development/ocaml-modules/async_unix/default.nix b/pkgs/development/ocaml-modules/async_unix/default.nix index 81fbd6a99182..6119bcac876a 100644 --- a/pkgs/development/ocaml-modules/async_unix/default.nix +++ b/pkgs/development/ocaml-modules/async_unix/default.nix @@ -1,6 +1,6 @@ -{stdenv, buildOcaml, fetchurl, async_kernel, - bin_prot, comparelib, core, fieldslib, herelib, pa_ounit, - pipebang, pa_test, sexplib}: +{stdenv, buildOcaml, fetchurl, async_kernel_p4, + bin_prot_p4, comparelib, core_p4, fieldslib_p4, herelib, pa_ounit, + pipebang, pa_test, sexplib_p4}: buildOcaml rec { name = "async_unix"; @@ -15,8 +15,8 @@ buildOcaml rec { hasSharedObjects = true; buildInputs = [ pa_ounit ]; - propagatedBuildInputs = [ async_kernel core bin_prot comparelib - fieldslib herelib pipebang pa_test sexplib ]; + propagatedBuildInputs = [ async_kernel_p4 core_p4 bin_prot_p4 comparelib + fieldslib_p4 herelib pipebang pa_test sexplib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/async_unix; diff --git a/pkgs/development/ocaml-modules/cohttp/default.nix b/pkgs/development/ocaml-modules/cohttp/default.nix index 9a30a5e4615e..dcf3c8c13d79 100644 --- a/pkgs/development/ocaml-modules/cohttp/default.nix +++ b/pkgs/development/ocaml-modules/cohttp/default.nix @@ -1,4 +1,4 @@ -{stdenv, buildOcaml, fetchurl, cmdliner, re, uri, fieldslib, sexplib, conduit, +{stdenv, buildOcaml, fetchurl, cmdliner, re, uri, fieldslib_p4, sexplib_p4, conduit, stringext, base64, magic-mime, ounit, alcotest, lwt ? null, async ? null, async_ssl ? null}: @@ -14,7 +14,7 @@ buildOcaml rec { }; buildInputs = [ alcotest ]; - propagatedBuildInputs = [ cmdliner re uri fieldslib sexplib sexplib + propagatedBuildInputs = [ cmdliner re uri fieldslib_p4 sexplib_p4 sexplib_p4 conduit stringext base64 magic-mime ounit async async_ssl lwt ]; diff --git a/pkgs/development/ocaml-modules/conduit/default.nix b/pkgs/development/ocaml-modules/conduit/default.nix index dbb83f4c8cf0..26accd99db67 100644 --- a/pkgs/development/ocaml-modules/conduit/default.nix +++ b/pkgs/development/ocaml-modules/conduit/default.nix @@ -1,4 +1,4 @@ -{stdenv, buildOcaml, fetchurl, sexplib, stringext, uri, cstruct, ipaddr, +{stdenv, buildOcaml, fetchurl, sexplib_p4, stringext, uri, cstruct, ipaddr, async ? null, async_ssl ? null, lwt ? null}: buildOcaml rec { @@ -10,7 +10,7 @@ buildOcaml rec { sha256 = "5cf1a46aa0254345e5143feebe6b54bdef96314e9987f44e69f24618d620faa1"; }; - propagatedBuildInputs = ([ sexplib stringext uri cstruct ipaddr ] + propagatedBuildInputs = ([ sexplib_p4 stringext uri cstruct ipaddr ] ++ stdenv.lib.optional (lwt != null) lwt ++ stdenv.lib.optional (async != null) async ++ stdenv.lib.optional (async_ssl != null) async_ssl); diff --git a/pkgs/development/ocaml-modules/core/default.nix b/pkgs/development/ocaml-modules/core/default.nix index 96fd80087d66..4da4d16df7dd 100644 --- a/pkgs/development/ocaml-modules/core/default.nix +++ b/pkgs/development/ocaml-modules/core/default.nix @@ -1,7 +1,7 @@ {stdenv, buildOcaml, fetchurl, type_conv, - core_kernel, bin_prot, comparelib, custom_printf, enumerate, - fieldslib, herelib, pa_bench, pa_test, pa_ounit, - pipebang, sexplib, typerep, variantslib}: + core_kernel_p4, bin_prot_p4, comparelib, custom_printf, enumerate, + fieldslib_p4, herelib, pa_bench, pa_test, pa_ounit, + pipebang, sexplib_p4, typerep_p4, variantslib_p4}: buildOcaml rec { name = "core"; @@ -17,9 +17,9 @@ buildOcaml rec { hasSharedObjects = true; buildInputs = [ pa_bench pa_test pa_ounit ]; - propagatedBuildInputs = [ type_conv core_kernel bin_prot comparelib - custom_printf enumerate fieldslib herelib - pipebang sexplib typerep variantslib ]; + propagatedBuildInputs = [ type_conv core_kernel_p4 bin_prot_p4 comparelib + custom_printf enumerate fieldslib_p4 herelib + pipebang sexplib_p4 typerep_p4 variantslib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/core; diff --git a/pkgs/development/ocaml-modules/core_extended/default.nix b/pkgs/development/ocaml-modules/core_extended/default.nix index f311aae3d304..fef4fd81158f 100644 --- a/pkgs/development/ocaml-modules/core_extended/default.nix +++ b/pkgs/development/ocaml-modules/core_extended/default.nix @@ -1,5 +1,5 @@ -{stdenv, buildOcaml, fetchurl, bin_prot, comparelib, core, custom_printf, - fieldslib, pa_bench, pa_ounit, pipebang, pa_test, textutils, re2, sexplib}: +{stdenv, buildOcaml, fetchurl, bin_prot_p4, comparelib, core_p4, custom_printf, + fieldslib_p4, pa_bench, pa_ounit, pipebang, pa_test, textutils_p4, re2_p4, sexplib_p4}: buildOcaml rec { name = "core_extended"; @@ -14,8 +14,8 @@ buildOcaml rec { hasSharedObjects = true; buildInputs = [ pa_bench pa_test pa_ounit ]; - propagatedBuildInputs = [bin_prot comparelib core custom_printf fieldslib - pipebang textutils re2 sexplib ]; + propagatedBuildInputs = [bin_prot_p4 comparelib core_p4 custom_printf fieldslib_p4 + pipebang textutils_p4 re2_p4 sexplib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/core_extended; diff --git a/pkgs/development/ocaml-modules/core_kernel/default.nix b/pkgs/development/ocaml-modules/core_kernel/default.nix index 0fed12b195d6..75b248a6a5e6 100644 --- a/pkgs/development/ocaml-modules/core_kernel/default.nix +++ b/pkgs/development/ocaml-modules/core_kernel/default.nix @@ -1,7 +1,7 @@ {stdenv, buildOcaml, fetchurl, type_conv, - bin_prot, comparelib, custom_printf, enumerate, - fieldslib, herelib, pa_bench, pa_test, pa_ounit, - pipebang, sexplib, typerep, variantslib}: + bin_prot_p4, comparelib, custom_printf, enumerate, + fieldslib_p4, herelib, pa_bench, pa_test, pa_ounit, + pipebang, sexplib_p4, typerep_p4, variantslib_p4}: buildOcaml rec { name = "core_kernel"; @@ -17,9 +17,9 @@ buildOcaml rec { hasSharedObjects = true; buildInputs = [ pa_test pa_ounit ]; - propagatedBuildInputs = [ type_conv pa_bench bin_prot comparelib custom_printf - enumerate fieldslib herelib pipebang sexplib - typerep variantslib ]; + propagatedBuildInputs = [ type_conv pa_bench bin_prot_p4 comparelib custom_printf + enumerate fieldslib_p4 herelib pipebang sexplib_p4 + typerep_p4 variantslib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/core_kernel; diff --git a/pkgs/development/ocaml-modules/cstruct/default.nix b/pkgs/development/ocaml-modules/cstruct/default.nix index 57a057e0eaa9..c9f04918d172 100644 --- a/pkgs/development/ocaml-modules/cstruct/default.nix +++ b/pkgs/development/ocaml-modules/cstruct/default.nix @@ -1,5 +1,5 @@ -{stdenv, writeText, fetchurl, ocaml, ocplib-endian, sexplib, findlib, - async ? null, lwt ? null, camlp4}: +{stdenv, writeText, fetchurl, ocaml, ocplib-endian, sexplib_p4, findlib, + async_p4 ? null, lwt ? null, camlp4}: assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.01"; @@ -12,9 +12,9 @@ stdenv.mkDerivation { }; configureFlags = stdenv.lib.strings.concatStringsSep " " ((if lwt != null then ["--enable-lwt"] else []) ++ - (if async != null then ["--enable-async"] else [])); + (if async_p4 != null then ["--enable-async"] else [])); buildInputs = [ocaml findlib camlp4]; - propagatedBuildInputs = [ocplib-endian sexplib lwt async]; + propagatedBuildInputs = [ocplib-endian sexplib_p4 lwt async_p4]; createFindlibDestdir = true; dontStrip = true; diff --git a/pkgs/development/ocaml-modules/custom_printf/default.nix b/pkgs/development/ocaml-modules/custom_printf/default.nix index 05a8ecfe616b..16c31fc3861a 100644 --- a/pkgs/development/ocaml-modules/custom_printf/default.nix +++ b/pkgs/development/ocaml-modules/custom_printf/default.nix @@ -1,4 +1,4 @@ -{stdenv, buildOcaml, fetchurl, type_conv, sexplib, pa_ounit}: +{stdenv, buildOcaml, fetchurl, type_conv, sexplib_p4, pa_ounit}: buildOcaml rec { name = "custom_printf"; @@ -12,7 +12,7 @@ buildOcaml rec { }; buildInputs = [ pa_ounit ]; - propagatedBuildInputs = [ type_conv sexplib ]; + propagatedBuildInputs = [ type_conv sexplib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/custom_printf; diff --git a/pkgs/development/ocaml-modules/ezjsonm/default.nix b/pkgs/development/ocaml-modules/ezjsonm/default.nix index fd8ce1c33898..4d63b0c3f95f 100644 --- a/pkgs/development/ocaml-modules/ezjsonm/default.nix +++ b/pkgs/development/ocaml-modules/ezjsonm/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchzip, ocaml, findlib, jsonm, hex, sexplib, lwt }: +{ stdenv, fetchzip, ocaml, findlib, jsonm, hex, sexplib_p4, lwt }: let version = "0.4.1"; in @@ -11,7 +11,7 @@ stdenv.mkDerivation { }; buildInputs = [ ocaml findlib ]; - propagatedBuildInputs = [ jsonm hex sexplib lwt ]; + propagatedBuildInputs = [ jsonm hex sexplib_p4 lwt ]; createFindlibDestdir = true; configureFlags = "--enable-lwt"; diff --git a/pkgs/development/ocaml-modules/ipaddr/default.nix b/pkgs/development/ocaml-modules/ipaddr/default.nix index 749b6a1d94e3..cdc273d6ecfd 100644 --- a/pkgs/development/ocaml-modules/ipaddr/default.nix +++ b/pkgs/development/ocaml-modules/ipaddr/default.nix @@ -1,4 +1,4 @@ -{stdenv, buildOcaml, fetchurl, sexplib}: +{stdenv, buildOcaml, fetchurl, sexplib_p4}: buildOcaml rec { name = "ipaddr"; @@ -9,7 +9,7 @@ buildOcaml rec { sha256 = "7051013d8f58abff433187d70cd7ddd7a6b49a6fbe6cad1893f571f65b8ed3d0"; }; - propagatedBuildInputs = [ sexplib ]; + propagatedBuildInputs = [ sexplib_p4 ]; configurePhase = '' ocaml setup.ml -configure --prefix $out diff --git a/pkgs/development/ocaml-modules/janestreet/async-extra.nix b/pkgs/development/ocaml-modules/janestreet/async-extra.nix new file mode 100644 index 000000000000..4a283cc9910b --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/async-extra.nix @@ -0,0 +1,17 @@ +{stdenv, buildOcamlJane, fetchurl, async_kernel, async_unix, + bin_prot, core, ppx_custom_printf, fieldslib, herelib, + pipebang, sexplib, async_rpc_kernel}: + +buildOcamlJane rec { + name = "async_extra"; + hash = "1xdwab19fycr4cdm3dh9vmx42f8lvf9s4f9pjgdydxfrm7yzyrfh"; + propagatedBuildInputs = [ async_kernel async_unix core bin_prot ppx_custom_printf + fieldslib herelib pipebang sexplib async_rpc_kernel ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/async_extra; + description = "Jane Street Capital's asynchronous execution library (extra)"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/async-kernel.nix b/pkgs/development/ocaml-modules/janestreet/async-kernel.nix new file mode 100644 index 000000000000..4d7213a8603e --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/async-kernel.nix @@ -0,0 +1,16 @@ +{stdenv, buildOcamlJane, fetchurl, core_kernel, + bin_prot, fieldslib, + sexplib, herelib, opam, js_build_tools, ocaml_oasis}: + +buildOcamlJane rec { + name = "async_kernel"; + hash = "1n6ifbrq6q6hq8bxh6b9vhg11mv9r6jgp1b7vfw7mh5s2nrd4b60"; + propagatedBuildInputs = [ core_kernel bin_prot fieldslib herelib sexplib ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/async_kernel; + description = "Jane Street Capital's asynchronous execution library (core) "; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/async-rpc-kernel.nix b/pkgs/development/ocaml-modules/janestreet/async-rpc-kernel.nix new file mode 100644 index 000000000000..1f5ff6b9646f --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/async-rpc-kernel.nix @@ -0,0 +1,18 @@ +{stdenv, buildOcamlJane, async_kernel, bin_prot, core_kernel, + fieldslib, ppx_assert, ppx_bench, ppx_driver, ppx_expect, ppx_inline_test, + ppx_jane, sexplib, typerep, variantslib}: + +buildOcamlJane rec { + name = "async_rpc_kernel"; + hash = "0pvys7giqix1nfidw1f4i3r94cf03ba1mvhadpm2zpdir3av91sw"; + propagatedBuildInputs = [ async_kernel bin_prot core_kernel fieldslib + ppx_assert ppx_bench ppx_driver ppx_expect ppx_inline_test ppx_jane + sexplib typerep variantslib ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/async_rpc_kernel; + description = "Platform-independent core of Async RPC library"; + license = licenses.asl20; + maintainers = [ maintainers.maurer ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/async-unix.nix b/pkgs/development/ocaml-modules/janestreet/async-unix.nix new file mode 100644 index 000000000000..5621d2ec704b --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/async-unix.nix @@ -0,0 +1,17 @@ +{stdenv, buildOcamlJane, fetchurl, async_kernel, + bin_prot, comparelib, core, fieldslib, herelib, + pipebang, sexplib}: + +buildOcamlJane rec { + name = "async_unix"; + hash = "03ng7f0s22wwzspakiqj442vs1a7yf834109jcj9r3g1awwfhcy7"; + propagatedBuildInputs = [ async_kernel core bin_prot comparelib + fieldslib herelib pipebang sexplib ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/async_unix; + description = "Jane Street Capital's asynchronous execution library (unix)"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/async.nix b/pkgs/development/ocaml-modules/janestreet/async.nix new file mode 100644 index 000000000000..2e776e273be1 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/async.nix @@ -0,0 +1,16 @@ +{stdenv, buildOcamlJane, fetchurl, async_kernel, + async_unix, async_extra}: + +buildOcamlJane rec { + name = "async"; + version = "113.33.03"; + hash = "0wyspkp8k833fh03r3h016nbfn6kjfhvb2bg42cly6agcak59fmr"; + propagatedBuildInputs = [ async_kernel async_unix async_extra ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/async; + description = "Jane Street Capital's asynchronous execution library"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/bin_prot.nix b/pkgs/development/ocaml-modules/janestreet/bin_prot.nix new file mode 100644 index 000000000000..11e6189e6c1e --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/bin_prot.nix @@ -0,0 +1,17 @@ +{stdenv, buildOcamlJane, type_conv}: + +buildOcamlJane rec { + name = "bin_prot"; + version = "113.33.03"; + minimumSupportedOcamlVersion = "4.02"; + hash = "0jlarpfby755j0kikz6vnl1l6q0ga09b9zrlw6i84r22zchnqdsh"; + + propagatedBuildInputs = [ type_conv ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/bin_prot; + description = "Binary protocol generator "; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/buildOcamlJane.nix b/pkgs/development/ocaml-modules/janestreet/buildOcamlJane.nix new file mode 100644 index 000000000000..61b2038bfd29 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/buildOcamlJane.nix @@ -0,0 +1,35 @@ +{ buildOcaml, opam, js_build_tools, ocaml_oasis, fetchurl } : + +{ name, version ? "113.33.03", buildInputs ? [], + hash ? "", + minimumSupportedOcamlVersion ? "4.02", ... +}@args: + +buildOcaml (args // { + inherit name version minimumSupportedOcamlVersion; + src = fetchurl { + url = "https://github.com/janestreet/${name}/archive/${version}.tar.gz"; + sha256 = hash; + }; + + hasSharedObjects = true; + + buildInputs = [ ocaml_oasis js_build_tools opam ] ++ buildInputs; + + dontAddPrefix = true; + + configurePhase = "./configure --prefix $out"; + + buildPhase = "OCAML_TOPLEVEL_PATH=`ocamlfind query findlib`/.. make"; + + installPhase = '' + opam-installer -i --prefix $prefix --libdir `ocamlfind printconf destdir` --stubsdir `ocamlfind printconf destdir`/${name} ${name}.install + if [ -d $out/lib/${name} ] + then if [ "$(ls -A $out/lib/${name})" ] + then mv $out/lib/${name}/* `ocamlfind printconf destdir`/${name} + fi + rmdir $out/lib/${name} + fi + ''; + +}) diff --git a/pkgs/development/ocaml-modules/janestreet/core-extended.nix b/pkgs/development/ocaml-modules/janestreet/core-extended.nix new file mode 100644 index 000000000000..df7f6903cd24 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/core-extended.nix @@ -0,0 +1,22 @@ +{stdenv, buildOcamlJane, fetchurl, + core, + bin_prot, fieldslib, sexplib, typerep, variantslib, + ppx_assert, ppx_bench, ppx_driver, ppx_expect, ppx_inline_test, ppx_jane, + re2, textutils, + ocaml_oasis, opam, js_build_tools}: + +buildOcamlJane rec { + name = "core_extended"; + hash = "1j4ipcn741j8w3h4gpv5sygjzg6b5g6gc2jcrr4n0jyn5dq8b0p5"; + propagatedBuildInputs = + [ core bin_prot fieldslib sexplib typerep variantslib + ppx_assert ppx_bench ppx_driver ppx_expect ppx_inline_test ppx_jane + re2 textutils ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/core_extended; + description = "Jane Street Capital's standard library overlay"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/core.nix b/pkgs/development/ocaml-modules/janestreet/core.nix new file mode 100644 index 000000000000..05ea4d5d566b --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/core.nix @@ -0,0 +1,20 @@ +{stdenv, buildOcamlJane, fetchurl, + core_kernel, + bin_prot, fieldslib, sexplib, typerep, variantslib, + ppx_assert, ppx_bench, ppx_driver, ppx_expect, ppx_inline_test, ppx_jane, + ocaml_oasis, opam, js_build_tools}: + +buildOcamlJane rec { + name = "core"; + hash = "0nz6d5glgymbpchvcpw77yis9jgi2bll32knzy9vx99wn83zdrmd"; + propagatedBuildInputs = + [ core_kernel bin_prot fieldslib sexplib typerep variantslib + ppx_assert ppx_bench ppx_driver ppx_expect ppx_inline_test ppx_jane ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/core; + description = "Jane Street Capital's standard library overlay"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/core_kernel.nix b/pkgs/development/ocaml-modules/janestreet/core_kernel.nix new file mode 100644 index 000000000000..93fcdde5bb38 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/core_kernel.nix @@ -0,0 +1,19 @@ +{stdenv, buildOcamlJane, fetchurl, + bin_prot, fieldslib, sexplib, typerep, variantslib, + ppx_assert, ppx_bench, ppx_driver, ppx_expect, ppx_inline_test, ppx_jane, + ocaml_oasis, opam, js_build_tools}: + +buildOcamlJane rec { + name = "core_kernel"; + hash = "13gamj056nlib04l7yh80lqpdx0pnswzlb52fkqa01awwp5nf3z6"; + propagatedBuildInputs = + [ bin_prot fieldslib sexplib typerep variantslib + ppx_assert ppx_bench ppx_driver ppx_expect ppx_inline_test ppx_jane ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/core_kernel; + description = "Jane Street Capital's standard library overlay (kernel)"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/fieldslib.nix b/pkgs/development/ocaml-modules/janestreet/fieldslib.nix new file mode 100644 index 000000000000..8823a0c8054d --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/fieldslib.nix @@ -0,0 +1,19 @@ +{ stdenv, type_conv, buildOcamlJane }: + +buildOcamlJane rec { + name = "fieldslib"; + version = "113.33.03"; + + minimumSupportedOcamlVersion = "4.02"; + + hash = "0mkbix32f8sq32q81hb10z2q31bw5f431jxv0jafbdrif0vr6xqd"; + + propagatedBuildInputs = [ type_conv ]; + + meta = with stdenv.lib; { + homepage = https://ocaml.janestreet.com/; + description = "OCaml syntax extension to define first class values representing record fields, to get and set record fields, iterate and fold over all fields of a record and create new record values"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.vbgl ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/js-build-tools-darwin.patch b/pkgs/development/ocaml-modules/janestreet/js-build-tools-darwin.patch new file mode 100644 index 000000000000..8878b4be68b8 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/js-build-tools-darwin.patch @@ -0,0 +1,11 @@ +--- a/ocamlbuild_goodies/jane_street_ocamlbuild_goodies.ml ++++ b/ocamlbuild_goodies/jane_street_ocamlbuild_goodies.ml +@@ -65,7 +65,7 @@ let track_external_deps = function + + let stat, md5sum = + match run_and_read "uname" |> String.trim with +- | "Darwin" -> ++ | "FreeBSD" | "NetBSD" -> + (S [A "stat"; A "-f"; A "%d:%i:%m"], + A "md5") + | _ -> diff --git a/pkgs/development/ocaml-modules/janestreet/js-build-tools.nix b/pkgs/development/ocaml-modules/janestreet/js-build-tools.nix new file mode 100644 index 000000000000..bf697eda8007 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/js-build-tools.nix @@ -0,0 +1,29 @@ +{stdenv, buildOcaml, fetchurl, ocaml_oasis, opam}: + +buildOcaml rec { + name = "js-build-tools"; + version = "113.33.06"; + + minimumSupportedOcamlVersion = "4.02"; + + src = fetchurl { + url = "https://github.com/janestreet/${name}/archive/${version}.tar.gz"; + sha256 = "1nvgyp4gsnlnpix3li6kr90b12iin5ihichv298p03i6h2809dia"; + }; + + hasSharedObjects = true; + + buildInputs = [ ocaml_oasis opam ]; + + dontAddPrefix = true; + configurePhase = "./configure --prefix $prefix"; + installPhase = "opam-installer -i --prefix $prefix --libdir `ocamlfind printconf destdir` ${name}.install"; + + patches = [ ./js-build-tools-darwin.patch ]; + + meta = with stdenv.lib; { + description = "Jane Street Build Tools"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-assert.nix b/pkgs/development/ocaml-modules/janestreet/ppx-assert.nix new file mode 100644 index 000000000000..b61874d3a7ea --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-assert.nix @@ -0,0 +1,16 @@ +{stdenv, buildOcamlJane, + ppx_compare, ppx_core, ppx_driver, ppx_here, ppx_sexp_conv, ppx_tools, ppx_type_conv, sexplib}: + +buildOcamlJane rec { + name = "ppx_assert"; + hash = "0n7fa1j79ykbkhp8xz0ksg5096asri5d0msshsaqhw5fz18chvz4"; + propagatedBuildInputs = + [ ppx_compare ppx_core ppx_driver ppx_here ppx_sexp_conv ppx_tools + ppx_type_conv sexplib ]; + + meta = with stdenv.lib; { + description = "Assert-like extension nodes that raise useful errors on failure"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-bench.nix b/pkgs/development/ocaml-modules/janestreet/ppx-bench.nix new file mode 100644 index 000000000000..56a124c5b691 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-bench.nix @@ -0,0 +1,18 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver, ppx_inline_test, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_bench"; + minimumSupportedOcamlVersion = "4.02"; + hash = "1l5jlwy1d1fqz70wa2fkf7izngp6nx3g4s9bmnd6ca4dx1x5bksk"; + + hasSharedObjects = true; + + propagatedBuildInputs = [ ppx_core ppx_driver ppx_inline_test ppx_tools ]; + + meta = with stdenv.lib; { + description = "Syntax extension for writing in-line benchmarks in ocaml code"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-bin-prot.nix b/pkgs/development/ocaml-modules/janestreet/ppx-bin-prot.nix new file mode 100644 index 000000000000..9dffbed69600 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-bin-prot.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_tools, ppx_type_conv, bin_prot}: + +buildOcamlJane rec { + name = "ppx_bin_prot"; + hash = "0kwmrrrybdkmphqczsr3lg3imsxcjb8iy41syvn44s3kcjfyyzbz"; + propagatedBuildInputs = [ ppx_core ppx_tools ppx_type_conv bin_prot ]; + + meta = with stdenv.lib; { + description = "Generation of bin_prot readers and writers from types"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-compare.nix b/pkgs/development/ocaml-modules/janestreet/ppx-compare.nix new file mode 100644 index 000000000000..d70fe6ddd550 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-compare.nix @@ -0,0 +1,15 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver, ppx_tools, ppx_type_conv}: + +buildOcamlJane rec { + name = "ppx_compare"; + hash = "05cnwxfxm8201lpfmcqkcqfy6plh5c2151jbj4qsnxhlvvjli459"; + propagatedBuildInputs = + [ppx_core ppx_driver ppx_tools ppx_type_conv ]; + + meta = with stdenv.lib; { + description = "Generation of fast comparison functions from type expressions and definitions"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-core.nix b/pkgs/development/ocaml-modules/janestreet/ppx-core.nix new file mode 100644 index 000000000000..4f5bb87b7675 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-core.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_core"; + hash = "0df7vyai488lfkyh8szw2hvn22jsyrkfvq1b91j1s0g0y27nnfax"; + propagatedBuildInputs = + [ ppx_tools ]; + + meta = with stdenv.lib; { + description = "PPX standard library"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-custom-printf.nix b/pkgs/development/ocaml-modules/janestreet/ppx-custom-printf.nix new file mode 100644 index 000000000000..3fe78e3e7e2e --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-custom-printf.nix @@ -0,0 +1,15 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver, ppx_sexp_conv, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_custom_printf"; + hash = "06y85m6ky376byja4w7gdwd339di5ag0xrf0czkylzjsnylhdr85"; + + propagatedBuildInputs = [ ppx_core ppx_driver ppx_sexp_conv ppx_tools ]; + + meta = with stdenv.lib; { + description = "Extensions to printf-style format-strings for user-defined string conversion"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-driver.nix b/pkgs/development/ocaml-modules/janestreet/ppx-driver.nix new file mode 100644 index 000000000000..7844756c7bfb --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-driver.nix @@ -0,0 +1,15 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_optcomp}: + +buildOcamlJane rec { + name = "ppx_driver"; + hash = "19cpfdn1n36vl5l9d6h7c61ffn0wmiipprn5by0354i5aywj8gpn"; + propagatedBuildInputs = + [ ppx_core ppx_optcomp ]; + + meta = with stdenv.lib; { + description = "A driver is an executable created from a set of OCaml AST transformers linked together with a command line frontend"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-enumerate.nix b/pkgs/development/ocaml-modules/janestreet/ppx-enumerate.nix new file mode 100644 index 000000000000..8dbf34ed2329 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-enumerate.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_tools, ppx_type_conv}: + +buildOcamlJane rec { + name = "ppx_enumerate"; + hash = "0m11921q2pjzkwckf21fynd2qfy83n9jjsgks23yagdai8a7ym16"; + propagatedBuildInputs = [ ppx_core ppx_tools ppx_type_conv ]; + + meta = with stdenv.lib; { + description = "Generate a list containing all values of a finite type"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-expect.nix b/pkgs/development/ocaml-modules/janestreet/ppx-expect.nix new file mode 100644 index 000000000000..7e688a1dc1c8 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-expect.nix @@ -0,0 +1,19 @@ +{stdenv, buildOcamlJane, + ppx_assert, ppx_compare, ppx_core, ppx_custom_printf, ppx_driver, + ppx_fields_conv, ppx_here, ppx_inline_test, ppx_sexp_conv, ppx_tools, + ppx_variants_conv, re, sexplib, variantslib, fieldslib}: + +buildOcamlJane rec { + name = "ppx_expect"; + hash = "0cwagb4cj3x1vsr19kyfa9pxlvaz9a5v863cahi5glinsh4mzgdx"; + propagatedBuildInputs = + [ ppx_assert ppx_compare ppx_core ppx_custom_printf ppx_driver + ppx_fields_conv ppx_here ppx_inline_test ppx_sexp_conv ppx_tools + ppx_variants_conv re sexplib variantslib fieldslib ]; + + meta = with stdenv.lib; { + description = "Cram-like framework for OCaml"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-fail.nix b/pkgs/development/ocaml-modules/janestreet/ppx-fail.nix new file mode 100644 index 000000000000..187d5db19995 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-fail.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver, ppx_here, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_fail"; + hash = "1ms5axpc0zg469zj4799nz3wwxi6rmmyvqj52dy03crmpj71s18l"; + propagatedBuildInputs = [ ppx_core ppx_driver ppx_here ppx_tools ]; + + meta = with stdenv.lib; { + description = "Syntax extension that makes failwith include a position"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-fields-conv.nix b/pkgs/development/ocaml-modules/janestreet/ppx-fields-conv.nix new file mode 100644 index 000000000000..a05cf149b268 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-fields-conv.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_tools, ppx_type_conv}: + +buildOcamlJane rec { + name = "ppx_fields_conv"; + hash = "11w9wfjgkv7yxv3rwlwi6m193zan6rhmi45q7n3ddi2s8ls3gra7"; + propagatedBuildInputs = [ ppx_core ppx_tools ppx_type_conv ]; + + meta = with stdenv.lib; { + description = "Generation of accessor and iteration functions for ocaml records"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-here.nix b/pkgs/development/ocaml-modules/janestreet/ppx-here.nix new file mode 100644 index 000000000000..3aa157a68c5b --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-here.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver}: + +buildOcamlJane rec { + name = "ppx_here"; + hash = "1mzdgn8k171zkwmbizf1a48l525ny0w3363c7gknpnifcinxniiw"; + propagatedBuildInputs = [ ppx_core ppx_driver ]; + + meta = with stdenv.lib; { + description = "A ppx rewriter that defines an extension node whose value is its source position"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-inline-test.nix b/pkgs/development/ocaml-modules/janestreet/ppx-inline-test.nix new file mode 100644 index 000000000000..cd16d7c32864 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-inline-test.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_inline_test"; + hash = "0ygapa54i0wwcj3jcqwiimrc6z0b7aafgjhbk37h6vvclnm5n7f6"; + propagatedBuildInputs = [ ppx_core ppx_driver ppx_tools ]; + + meta = with stdenv.lib; { + description = "Syntax extension for writing in-line tests in ocaml code"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-jane.nix b/pkgs/development/ocaml-modules/janestreet/ppx-jane.nix new file mode 100644 index 000000000000..86394f228e9d --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-jane.nix @@ -0,0 +1,22 @@ +{stdenv, buildOcamlJane, + ppx_assert, + ppx_bench, ppx_bin_prot, ppx_compare, ppx_custom_printf, ppx_driver, + ppx_enumerate, ppx_expect, ppx_fail, ppx_fields_conv, ppx_here, + ppx_inline_test, ppx_let, ppx_pipebang, ppx_sexp_conv, ppx_sexp_message, + ppx_sexp_value, ppx_typerep_conv, ppx_variants_conv}: + +buildOcamlJane rec { + name = "ppx_jane"; + hash = "1la0rp8fhzfglwb15gqh1pl1ld8ls4cnidaw9mjc5q1hb0yj1qd9"; + propagatedBuildInputs = + [ ppx_assert ppx_bench ppx_bin_prot ppx_compare ppx_custom_printf + ppx_driver ppx_enumerate ppx_expect ppx_fail ppx_fields_conv + ppx_here ppx_inline_test ppx_let ppx_pipebang ppx_sexp_conv + ppx_sexp_message ppx_sexp_value ppx_typerep_conv ppx_variants_conv ]; + + meta = with stdenv.lib; { + description = "A ppx_driver including all standard ppx rewriters"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-let.nix b/pkgs/development/ocaml-modules/janestreet/ppx-let.nix new file mode 100644 index 000000000000..3498affeb090 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-let.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver}: + +buildOcamlJane rec { + name = "ppx_let"; + hash = "0whnfq4rgkq4apfqnvc100wlk25pmqdyvy6s21dsn3fcm9hff467"; + propagatedBuildInputs = [ ppx_core ppx_driver ]; + + meta = with stdenv.lib; { + description = "A ppx rewriter for monadic and applicative let bindings and match statements"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-optcomp.nix b/pkgs/development/ocaml-modules/janestreet/ppx-optcomp.nix new file mode 100644 index 000000000000..5dcfc97bfa37 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-optcomp.nix @@ -0,0 +1,15 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_optcomp"; + hash = "09m2x2a5ics4bz1j29n5slhh1rlyhcwdfmf44v1jfxcby3f0riwd"; + propagatedBuildInputs = + [ ppx_core ppx_tools ]; + + meta = with stdenv.lib; { + description = "ppx_optcomp stands for Optional Compilation. It is a tool used to handle optional compilations of pieces of code depending of the word size, the version of the compiler, etc."; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-pipebang.nix b/pkgs/development/ocaml-modules/janestreet/ppx-pipebang.nix new file mode 100644 index 000000000000..f3f4bcdead59 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-pipebang.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_pipebang"; + hash = "0k25bhj9ziiw89xvs4svz7cgazbbmprba9wbic2llffg55fp7acc"; + propagatedBuildInputs = [ ppx_core ppx_driver ppx_tools ]; + + meta = with stdenv.lib; { + description = "A ppx rewriter that inlines reverse application operators |> and |!"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-sexp-conv.nix b/pkgs/development/ocaml-modules/janestreet/ppx-sexp-conv.nix new file mode 100644 index 000000000000..bf4a7b214dec --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-sexp-conv.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_tools, ppx_type_conv, sexplib}: + +buildOcamlJane rec { + name = "ppx_sexp_conv"; + hash = "1kgbmlc11w5jhbhmy5n0f734l44zwyry48342dm5qydi9sfzcgq2"; + propagatedBuildInputs = [ ppx_core ppx_tools ppx_type_conv sexplib]; + + meta = with stdenv.lib; { + description = "PPX syntax extension that generates code for converting OCaml types to and from s-expressions, as defined in the sexplib library"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-sexp-message.nix b/pkgs/development/ocaml-modules/janestreet/ppx-sexp-message.nix new file mode 100644 index 000000000000..e83aaa2c2723 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-sexp-message.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver, ppx_here, ppx_sexp_conv, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_sexp_message"; + hash = "0inbff25qii868p141jb1y8n3vjfyz66jpnsl9nma6nkkyjkp05j"; + propagatedBuildInputs = [ ppx_core ppx_driver ppx_here ppx_sexp_conv ppx_tools ]; + + meta = with stdenv.lib; { + description = "Easy construction of S-Expressions"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-sexp-value.nix b/pkgs/development/ocaml-modules/janestreet/ppx-sexp-value.nix new file mode 100644 index 000000000000..a1a1080d73d7 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-sexp-value.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_driver, ppx_here, ppx_sexp_conv, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_sexp_value"; + hash = "04602ppqfwx33ghjywam00hlqqzsz4d99r60k9q0v1mynk9pjhj0"; + propagatedBuildInputs = [ ppx_core ppx_driver ppx_here ppx_sexp_conv ppx_tools ]; + + meta = with stdenv.lib; { + description = "A ppx rewriter that simplifies building S-Expression from OCaml Values"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-type-conv.nix b/pkgs/development/ocaml-modules/janestreet/ppx-type-conv.nix new file mode 100644 index 000000000000..fc6d9ca03459 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-type-conv.nix @@ -0,0 +1,15 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_deriving, ppx_driver, ppx_tools}: + +buildOcamlJane rec { + name = "ppx_type_conv"; + hash = "0gv0mqwn97dwrfm6rj442565y8dz7kiq8s8vadnhywrl7j4znqyq"; + propagatedBuildInputs = + [ ppx_core ppx_deriving ppx_driver ppx_tools ]; + + meta = with stdenv.lib; { + description = "The type_conv library factors out functionality needed by different preprocessors that generate code from type specifications"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-typerep-conv.nix b/pkgs/development/ocaml-modules/janestreet/ppx-typerep-conv.nix new file mode 100644 index 000000000000..e6d23e0dbdd0 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-typerep-conv.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_tools, ppx_type_conv, typerep}: + +buildOcamlJane rec { + name = "ppx_typerep_conv"; + hash = "0dldlx73r07j6w0i7h4hxly0v678naa79na5rafsk2974gs5ih9g"; + propagatedBuildInputs = [ ppx_core ppx_tools ppx_type_conv typerep ]; + + meta = with stdenv.lib; { + description = "Automatic generation of runtime types from type definitions"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/ppx-variants-conv.nix b/pkgs/development/ocaml-modules/janestreet/ppx-variants-conv.nix new file mode 100644 index 000000000000..e5efb786a943 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/ppx-variants-conv.nix @@ -0,0 +1,14 @@ +{stdenv, buildOcamlJane, + ppx_core, ppx_tools, ppx_type_conv, sexplib}: + +buildOcamlJane rec { + name = "ppx_variants_conv"; + hash = "0kgal8b9yh7wrd75hllb9fyl6zbksfnr9k7pykpzdm3js98dirhn"; + propagatedBuildInputs = [ ppx_core ppx_tools ppx_type_conv sexplib]; + + meta = with stdenv.lib; { + description = "Generation of accessor and iteration functions for ocaml variant types"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/re2.nix b/pkgs/development/ocaml-modules/janestreet/re2.nix new file mode 100644 index 000000000000..6604a8d012c6 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/re2.nix @@ -0,0 +1,20 @@ +{stdenv, buildOcamlJane, + bin_prot, core_kernel, fieldslib, sexplib, typerep, variantslib, + ppx_assert, ppx_bench, ppx_driver, ppx_expect, ppx_inline_test, ppx_jane, + rsync}: + +buildOcamlJane rec { + name = "re2"; + hash = "0fw5jscb1i17aw8v4l965zw20kyimhfnmf4w83wqaaxkqy3l6fqw"; + buildInputs = [ rsync ]; + propagatedBuildInputs = + [ bin_prot core_kernel fieldslib sexplib typerep variantslib + ppx_assert ppx_bench ppx_driver ppx_expect ppx_inline_test ppx_jane ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/re2; + description = "OCaml bindings for RE2"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/sexplib.nix b/pkgs/development/ocaml-modules/janestreet/sexplib.nix new file mode 100644 index 000000000000..4a785d199c8c --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/sexplib.nix @@ -0,0 +1,18 @@ +{stdenv, buildOcamlJane, type_conv}: + +buildOcamlJane rec { + minimumSupportedOcamlVersion = "4.02"; + name = "sexplib"; + version = "113.33.03"; + + hash = "1klar4qw4s7bj47ig7kxz2m4j1q3c60pfppis4vxrxv15r0kfh22"; + + propagatedBuildInputs = [ type_conv ]; + + meta = with stdenv.lib; { + homepage = https://ocaml.janestreet.com/; + description = "Library for serializing OCaml values to and from S-expressions"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/textutils.nix b/pkgs/development/ocaml-modules/janestreet/textutils.nix new file mode 100644 index 000000000000..459743f055ab --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/textutils.nix @@ -0,0 +1,18 @@ +{stdenv, buildOcamlJane, + bin_prot, core, fieldslib, sexplib, typerep, variantslib, + ppx_assert, ppx_bench, ppx_driver, ppx_expect, ppx_inline_test, ppx_jane}: + +buildOcamlJane rec { + name = "textutils"; + hash = "0mkjm9b3k7db7zzrq4403v8qbkgqgkjlz120vcbqh6z7d7ql65vb"; + propagatedBuildInputs = + [ bin_prot core fieldslib sexplib typerep variantslib + ppx_assert ppx_bench ppx_driver ppx_expect ppx_inline_test ppx_jane ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/textutils; + description = "Text output utilities"; + maintainers = [ maintainers.maurer ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/ocaml-modules/janestreet/typerep.nix b/pkgs/development/ocaml-modules/janestreet/typerep.nix new file mode 100644 index 000000000000..81e6c4be9cbc --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/typerep.nix @@ -0,0 +1,20 @@ +{stdenv, buildOcamlJane, type_conv}: + +buildOcamlJane rec { + name = "typerep"; + version = "113.33.03"; + + minimumSupportedOcamlVersion = "4.00"; + + hash = "1ss34nq20vfgx8hwi5sswpmn3my9lvrpdy5dkng746xchwi33ar7"; + + propagatedBuildInputs = [ type_conv ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/typerep; + description = "Runtime types for OCaml (beta version)"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; + +} diff --git a/pkgs/development/ocaml-modules/janestreet/variantslib.nix b/pkgs/development/ocaml-modules/janestreet/variantslib.nix new file mode 100644 index 000000000000..d9acadbb6158 --- /dev/null +++ b/pkgs/development/ocaml-modules/janestreet/variantslib.nix @@ -0,0 +1,19 @@ +{stdenv, buildOcamlJane, type_conv}: + +buildOcamlJane rec { + name = "variantslib"; + version = "113.33.03"; + + minimumSupportedOcamlVersion = "4.00"; + + hash = "1hv0f75msrryxsl6wfnbmhc0n8kf7qxs5f82ry3b8ldb44s3wigp"; + + propagatedBuildInputs = [ type_conv ]; + + meta = with stdenv.lib; { + homepage = https://github.com/janestreet/variantslib; + description = "OCaml variants as first class values"; + license = licenses.asl20; + maintainers = [ maintainers.maurer maintainers.ericbmerritt ]; + }; +} diff --git a/pkgs/development/ocaml-modules/pa_test/default.nix b/pkgs/development/ocaml-modules/pa_test/default.nix index faf17e20dc1e..5acf931b2eac 100644 --- a/pkgs/development/ocaml-modules/pa_test/default.nix +++ b/pkgs/development/ocaml-modules/pa_test/default.nix @@ -1,4 +1,4 @@ -{stdenv, buildOcaml, fetchurl, type_conv, pa_ounit, sexplib, herelib}: +{stdenv, buildOcaml, fetchurl, type_conv, pa_ounit, sexplib_p4, herelib}: buildOcaml rec { name = "pa_test"; @@ -12,7 +12,7 @@ buildOcaml rec { }; buildInputs = [ pa_ounit ]; - propagatedBuildInputs = [ type_conv sexplib herelib ]; + propagatedBuildInputs = [ type_conv sexplib_p4 herelib ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/pa_test; diff --git a/pkgs/development/ocaml-modules/ppx_deriving/default.nix b/pkgs/development/ocaml-modules/ppx_deriving/default.nix new file mode 100644 index 000000000000..4b4056a69d72 --- /dev/null +++ b/pkgs/development/ocaml-modules/ppx_deriving/default.nix @@ -0,0 +1,28 @@ +{stdenv, buildOcaml, fetchurl, + cppo, ppx_tools, result, ounit}: + +buildOcaml rec { + name = "ppx_deriving"; + version = "v3.3"; + + minimumSupportedOcamlVersion = "4.02"; + + src = fetchurl { + url = "https://github.com/whitequark/${name}/archive/${version}.tar.gz"; + sha256 = "1j20c6r2v7h05a4v9m8z5m1yqgwif41yrp63mik14pf3dkrj8x3f"; + }; + + hasSharedObjects = true; + + buildInputs = [ cppo ounit ]; + propagatedBuildInputs = + [ ppx_tools result ]; + + installPhase = "OCAMLPATH=$OCAMLPATH:`ocamlfind printconf destdir` make install"; + + meta = with stdenv.lib; { + description = "deriving is a library simplifying type-driven code generation on OCaml >=4.02."; + maintainers = [ maintainers.maurer ]; + license = licenses.mit; + }; +} diff --git a/pkgs/development/ocaml-modules/re2/default.nix b/pkgs/development/ocaml-modules/re2/default.nix index e89e28fe1e55..9b26c4040959 100644 --- a/pkgs/development/ocaml-modules/re2/default.nix +++ b/pkgs/development/ocaml-modules/re2/default.nix @@ -1,5 +1,5 @@ -{stdenv, buildOcaml, fetchurl, ocaml, core, pa_ounit, pa_test, - bin_prot, comparelib, sexplib, rsync}: +{stdenv, buildOcaml, fetchurl, ocaml, core_p4, pa_ounit, pa_test, + bin_prot_p4, comparelib, sexplib_p4, rsync}: buildOcaml rec { name = "re2"; @@ -16,7 +16,7 @@ buildOcaml rec { else null; buildInputs = [ pa_ounit pa_test rsync ]; - propagatedBuildInputs = [ core bin_prot comparelib sexplib ]; + propagatedBuildInputs = [ core_p4 bin_prot_p4 comparelib sexplib_p4 ]; hasSharedObjects = true; diff --git a/pkgs/development/ocaml-modules/textutils/default.nix b/pkgs/development/ocaml-modules/textutils/default.nix index 377b94eff8b8..6f35b9702280 100644 --- a/pkgs/development/ocaml-modules/textutils/default.nix +++ b/pkgs/development/ocaml-modules/textutils/default.nix @@ -1,4 +1,4 @@ -{stdenv, buildOcaml, fetchurl, core, pa_ounit, pa_test, sexplib}: +{stdenv, buildOcaml, fetchurl, core_p4, pa_ounit, pa_test, sexplib_p4}: buildOcaml rec { name = "textutils"; @@ -12,7 +12,7 @@ buildOcaml rec { }; buildInputs = [ pa_test ]; - propagatedBuildInputs = [ core pa_ounit sexplib ]; + propagatedBuildInputs = [ core_p4 pa_ounit sexplib_p4 ]; meta = with stdenv.lib; { homepage = https://github.com/janestreet/textutils; diff --git a/pkgs/development/ocaml-modules/uri/default.nix b/pkgs/development/ocaml-modules/uri/default.nix index dca989c88efd..a6335274f737 100644 --- a/pkgs/development/ocaml-modules/uri/default.nix +++ b/pkgs/development/ocaml-modules/uri/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchzip, ocaml, findlib, re, sexplib, stringext, ounit }: +{ stdenv, fetchzip, ocaml, findlib, re, sexplib_p4, stringext, ounit }: assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4"; @@ -13,7 +13,7 @@ stdenv.mkDerivation { }; buildInputs = [ ocaml findlib ounit ]; - propagatedBuildInputs = [ re sexplib stringext ]; + propagatedBuildInputs = [ re sexplib_p4 stringext ]; configurePhase = "ocaml setup.ml -configure --prefix $out --enable-tests"; buildPhase = '' |