summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules
diff options
context:
space:
mode:
authorVincent Laporte <vbgl@users.noreply.github.com>2018-07-21 06:21:37 +0000
committerGitHub <noreply@github.com>2018-07-21 06:21:37 +0000
commitdf6534d04a6e9c49327533402ec79c9d725f56f1 (patch)
tree712e1e22d7c2b52136dc8a84d731580fef7ec24b /pkgs/development/ocaml-modules
parentf517b5a8ddcc73319f0dc531cf82d68c6204a500 (diff)
parent6d9ffeaa2ec4816bc432e7d28b5aa85165562740 (diff)
downloadnixpkgs-df6534d04a6e9c49327533402ec79c9d725f56f1.tar
nixpkgs-df6534d04a6e9c49327533402ec79c9d725f56f1.tar.gz
nixpkgs-df6534d04a6e9c49327533402ec79c9d725f56f1.tar.bz2
nixpkgs-df6534d04a6e9c49327533402ec79c9d725f56f1.tar.lz
nixpkgs-df6534d04a6e9c49327533402ec79c9d725f56f1.tar.xz
nixpkgs-df6534d04a6e9c49327533402ec79c9d725f56f1.tar.zst
nixpkgs-df6534d04a6e9c49327533402ec79c9d725f56f1.zip
Merge pull request #43535 from vbgl/ocaml-js_of_ocaml-3.2.0
ocamlPackages.js_of_ocaml: 3.1.0 -> 3.2.0
Diffstat (limited to 'pkgs/development/ocaml-modules')
-rw-r--r--pkgs/development/ocaml-modules/astring/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/ipaddr/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/ppx_deriving/default.nix20
-rw-r--r--pkgs/development/ocaml-modules/ppx_tools/default.nix3
-rw-r--r--pkgs/development/ocaml-modules/tyxml/default.nix9
5 files changed, 27 insertions, 19 deletions
diff --git a/pkgs/development/ocaml-modules/astring/default.nix b/pkgs/development/ocaml-modules/astring/default.nix
index 97c59d8581f..827487be69b 100644
--- a/pkgs/development/ocaml-modules/astring/default.nix
+++ b/pkgs/development/ocaml-modules/astring/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
 
-buildOcaml rec {
+stdenv.mkDerivation rec {
   version = "0.8.3";
-  name = "astring";
+  name = "ocaml${ocaml.version}-astring-${version}";
 
   src = fetchurl {
     url = "http://erratique.ch/software/astring/releases/astring-${version}.tbz";
diff --git a/pkgs/development/ocaml-modules/ipaddr/default.nix b/pkgs/development/ocaml-modules/ipaddr/default.nix
index 20d558e37c1..2f0aa342995 100644
--- a/pkgs/development/ocaml-modules/ipaddr/default.nix
+++ b/pkgs/development/ocaml-modules/ipaddr/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, buildOcaml, fetchurl, ocamlbuild, findlib
+{ stdenv, fetchurl, ocaml, ocamlbuild, findlib
 , jbuilder, sexplib, ppx_sexp_conv
 }:
 
-buildOcaml rec {
-  name = "ipaddr";
+stdenv.mkDerivation rec {
+  name = "ocaml${ocaml.version}-ipaddr-${version}";
   version = "2.8.0";
 
   src = fetchurl {
@@ -11,7 +11,7 @@ buildOcaml rec {
     sha256 = "1amb1pbm9ybpxy6190qygpj6nmbzzs2r6vx4xh5r6v89szx9rfxw";
   };
 
-  buildInputs = [ findlib ocamlbuild jbuilder ];
+  buildInputs = [ ocaml findlib ocamlbuild jbuilder ];
   propagatedBuildInputs = [ ppx_sexp_conv sexplib ];
 
   inherit (jbuilder) installPhase;
diff --git a/pkgs/development/ocaml-modules/ppx_deriving/default.nix b/pkgs/development/ocaml-modules/ppx_deriving/default.nix
index 3afe4149fa3..24cfbcf5b7a 100644
--- a/pkgs/development/ocaml-modules/ppx_deriving/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_deriving/default.nix
@@ -1,7 +1,11 @@
-{ stdenv, buildOcaml, ocaml, fetchzip
+{ stdenv, ocaml, findlib, ocamlbuild, fetchzip
 , cppo, ppx_tools, ppx_derivers, result, ounit, ocaml-migrate-parsetree
 }:
 
+if !stdenv.lib.versionAtLeast ocaml.version "4.02"
+then throw "ppx_deriving is not available for OCaml ${ocaml.version}"
+else
+
 let param =
   if ocaml.version == "4.03.0"
   then {
@@ -14,23 +18,21 @@ let param =
     extraPropagatedBuildInputs = [ ocaml-migrate-parsetree ppx_derivers ];
 }; in
 
-buildOcaml rec {
-  name = "ppx_deriving";
+stdenv.mkDerivation rec {
+  name = "ocaml${ocaml.version}-ppx_deriving-${version}";
   inherit (param) version;
 
-  minimumSupportedOcamlVersion = "4.02";
-
   src = fetchzip {
-    url = "https://github.com/whitequark/${name}/archive/v${version}.tar.gz";
+    url = "https://github.com/ocaml-ppx/ppx_deriving/archive/v${version}.tar.gz";
     inherit (param) sha256;
   };
 
-  hasSharedObjects = true;
-
-  buildInputs = [ cppo ounit ];
+  buildInputs = [ ocaml findlib ocamlbuild cppo ounit ];
   propagatedBuildInputs = param.extraPropagatedBuildInputs ++
     [ ppx_tools result ];
 
+  createFindlibDestdir = true;
+
   installPhase = "OCAMLPATH=$OCAMLPATH:`ocamlfind printconf destdir` make install";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/ocaml-modules/ppx_tools/default.nix b/pkgs/development/ocaml-modules/ppx_tools/default.nix
index 53d7847acee..2aa74d751db 100644
--- a/pkgs/development/ocaml-modules/ppx_tools/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_tools/default.nix
@@ -17,6 +17,9 @@ let param = {
   "4.06" = {
     version = "5.1+4.06.0";
     sha256 = "1ww4cspdpgjjsgiv71s0im5yjkr3544x96wsq1vpdacq7dr7zwiw"; };
+  "4.07" = {
+    version = "5.1+4.06.0";
+    sha256 = "1ww4cspdpgjjsgiv71s0im5yjkr3544x96wsq1vpdacq7dr7zwiw"; };
 }."${ocaml.meta.branch}";
 in
   stdenv.mkDerivation {
diff --git a/pkgs/development/ocaml-modules/tyxml/default.nix b/pkgs/development/ocaml-modules/tyxml/default.nix
index a965d6ed116..b34c9279c30 100644
--- a/pkgs/development/ocaml-modules/tyxml/default.nix
+++ b/pkgs/development/ocaml-modules/tyxml/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, camlp4, uutf, markup, ppx_tools_versioned, re
+{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, uutf, markup, ppx_tools_versioned, re
+, withP4 ? !stdenv.lib.versionAtLeast ocaml.version "4.07"
+, camlp4 ? null
 }:
 
 assert stdenv.lib.versionAtLeast ocaml.version "4.02";
@@ -13,13 +15,14 @@ stdenv.mkDerivation rec {
     sha256 = "1zrkrmxyj5a2cdh4b9zr9anwfk320wv3x0ynxnyxl5za2ix8sld8";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild camlp4 ppx_tools_versioned markup ];
+  buildInputs = [ ocaml findlib ocamlbuild ppx_tools_versioned markup ]
+  ++ stdenv.lib.optional withP4 camlp4;
 
   propagatedBuildInputs = [ uutf re ];
 
   createFindlibDestdir = true;
 
-  configureFlags = "--enable-syntax";
+  configureFlags = stdenv.lib.optional withP4 "--enable-syntax";
 
   meta = with stdenv.lib; {
     homepage = http://ocsigen.org/tyxml/;