summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules/janestreet
diff options
context:
space:
mode:
authorsternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org>2021-03-06 21:17:28 +0100
committerVincent Laporte <vbgl@users.noreply.github.com>2021-03-10 16:12:03 +0100
commit1979284362af4d35bb602e2175b5986df778729d (patch)
treeb41577db38814ffdec0dc369551f70dcfc8ac058 /pkgs/development/ocaml-modules/janestreet
parent336ac1683896bad27836f4da5c4f2a6f982119a2 (diff)
downloadnixpkgs-1979284362af4d35bb602e2175b5986df778729d.tar
nixpkgs-1979284362af4d35bb602e2175b5986df778729d.tar.gz
nixpkgs-1979284362af4d35bb602e2175b5986df778729d.tar.bz2
nixpkgs-1979284362af4d35bb602e2175b5986df778729d.tar.lz
nixpkgs-1979284362af4d35bb602e2175b5986df778729d.tar.xz
nixpkgs-1979284362af4d35bb602e2175b5986df778729d.tar.zst
nixpkgs-1979284362af4d35bb602e2175b5986df778729d.zip
ocamlPackages.ctypes: 0.17.1 -> 0.18.0
https://github.com/ocamllabs/ocaml-ctypes/blob/0.18.0/CHANGES.md#ctypes-0180

* ocamlPackages.async_ssl: fix compatibility with ctypes 0.18.0 by using
  ctypes.foreign instead of ctypes.foreign.threaded since the distinction
  between threaded and unthreaded has been removed in this release.
* libbap: link with -thread so linking ctypes.foreign doesn't fail
  https://github.com/BinaryAnalysisPlatform/bap-bindings/issues/18
* ocaml-ng.ocamlPackages_4_07.sodium: patch lib_gen/_tags to also add
  the `package(bigarray)` directive since `ctypes.stubs` no longer
  propgates that, leading to module not found error.
* ocaml-ng.ocamlPackages_4_{04,05,06,07}.async_ssl: mark as broken: due to
  the bigarray-compat dependency, we need dune 2 for ctypes which breaks
  compilation of the legacy async_ssl 0.11 version since we can't
  upgrade to dune 2 for it since that version doesn't support the legacy
  jbuild files.
Diffstat (limited to 'pkgs/development/ocaml-modules/janestreet')
-rw-r--r--pkgs/development/ocaml-modules/janestreet/0.12.nix7
-rw-r--r--pkgs/development/ocaml-modules/janestreet/0.14.nix5
-rw-r--r--pkgs/development/ocaml-modules/janestreet/default.nix7
3 files changed, 17 insertions, 2 deletions
diff --git a/pkgs/development/ocaml-modules/janestreet/0.12.nix b/pkgs/development/ocaml-modules/janestreet/0.12.nix
index 4585a3b8596..295960764dc 100644
--- a/pkgs/development/ocaml-modules/janestreet/0.12.nix
+++ b/pkgs/development/ocaml-modules/janestreet/0.12.nix
@@ -382,7 +382,12 @@ rec {
   async_ssl = janePackage {
     pname = "async_ssl";
     hash = "02ard8x5q5c42d9jdqmyzfx624yjq8cxxmvq3zb82hf6p8cc57ml";
-    meta.description = "An Async-pipe-based interface with OpenSSL";
+    meta = {
+      description = "An Async-pipe-based interface with OpenSSL";
+      # ctypes no longer works with dune 1
+      # dune 2 no longer supports jbuild
+      broken = true;
+    };
     propagatedBuildInputs = [ async ctypes openssl ];
   };
 
diff --git a/pkgs/development/ocaml-modules/janestreet/0.14.nix b/pkgs/development/ocaml-modules/janestreet/0.14.nix
index 79df8b7cb7c..1c9cdb1532f 100644
--- a/pkgs/development/ocaml-modules/janestreet/0.14.nix
+++ b/pkgs/development/ocaml-modules/janestreet/0.14.nix
@@ -147,6 +147,11 @@ rec {
     meta.description = "Async wrappers for SSL";
     buildInputs = [ dune-configurator ];
     propagatedBuildInputs = [ async ctypes openssl ];
+    # in ctypes.foreign 0.18.0 threaded and unthreaded have been merged
+    postPatch = ''
+      substituteInPlace bindings/dune \
+        --replace "ctypes.foreign.threaded" "ctypes.foreign"
+    '';
   };
 
   async_unix = janePackage {
diff --git a/pkgs/development/ocaml-modules/janestreet/default.nix b/pkgs/development/ocaml-modules/janestreet/default.nix
index 25b498bb7da..a4c026ffb8b 100644
--- a/pkgs/development/ocaml-modules/janestreet/default.nix
+++ b/pkgs/development/ocaml-modules/janestreet/default.nix
@@ -417,7 +417,12 @@ rec {
     pname = "async_ssl";
     hash = "1p83fzfla4rb820irdrz3f2hp8kq5zrhw47rqmfv6qydlca1bq64";
     propagatedBuildInputs = [ async ctypes openssl ];
-    meta.description = "Async wrappers for SSL";
+    meta = {
+      description = "Async wrappers for SSL";
+      # ctypes no longer works with dune 1
+      # dune 2 no longer supports jbuild
+      broken = true;
+    };
   };
 
   sexp_pretty = janePackage {