summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/ocaml-modules/janestreet/ppx_compare-113_33_00.nix21
-rw-r--r--pkgs/top-level/ocaml-packages.nix5
2 files changed, 25 insertions, 1 deletions
diff --git a/pkgs/development/ocaml-modules/janestreet/ppx_compare-113_33_00.nix b/pkgs/development/ocaml-modules/janestreet/ppx_compare-113_33_00.nix
new file mode 100644
index 00000000000..79457040202
--- /dev/null
+++ b/pkgs/development/ocaml-modules/janestreet/ppx_compare-113_33_00.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
+, ppx_tools, ppx_deriving, ppx_type_conv
+}:
+
+stdenv.mkDerivation {
+  name = "ocaml${ocaml.version}-ppx_compare-113.33.00+4.03";
+  src = fetchurl {
+    url = http://ocaml.janestreet.com/ocaml-core/113.33/files/ppx_compare-113.33.00+4.03.tar.gz;
+    sha256 = "07drgg6c857lsvxdjscdcb1ncdr5p3183spw32sbfcrbnr12nzys";
+  };
+
+  buildInputs = [ ocaml findlib ocamlbuild opam ppx_tools ];
+  propagatedBuildInputs = [ ppx_type_conv ppx_deriving ];
+
+  inherit (topkg) installPhase;
+
+  meta = {
+    license = stdenv.lib.licenses.asl20;
+    inherit (ocaml.meta) platforms;
+  };
+}
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 5ad601af15d..e7354b92343 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -569,7 +569,10 @@ let
       then callPackage ../development/ocaml-modules/janestreet/ppx_type_conv-113_33_02.nix { }
       else callPackage ../development/ocaml-modules/janestreet/ppx-type-conv.nix {};
 
-    ppx_compare = callPackage ../development/ocaml-modules/janestreet/ppx-compare.nix {};
+    ppx_compare =
+      if lib.versionOlder "4.03" ocaml.version
+      then callPackage ../development/ocaml-modules/janestreet/ppx_compare-113_33_00.nix {}
+      else callPackage ../development/ocaml-modules/janestreet/ppx-compare.nix {};
 
     ppx_here = callPackage ../development/ocaml-modules/janestreet/ppx-here.nix {};