ocamlPackages.ppx_deriving: 4.1 -> 4.2

This fixes compilation of ppx_deriving with OCaml 4.05.

js_of_ocaml_2: mark as broken with OCaml 4.05

ocamlPackages.cohttp: propagates ppx_deriving
This commit is contained in:
Théo Zimmermann 2017-08-28 11:17:22 +02:00 committed by Vincent Laporte
parent 2a191ed853
commit a9be3c20d1
3 changed files with 19 additions and 7 deletions

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder { stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
, ppx_fields_conv, ppx_sexp_conv , ppx_fields_conv, ppx_sexp_conv, ppx_deriving
, base64, fieldslib, jsonm, logs, re, stringext, uri , base64, fieldslib, jsonm, logs, re, stringext, uri
}: }:
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ]; buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ];
propagatedBuildInputs = [ base64 fieldslib re stringext uri ]; propagatedBuildInputs = [ ppx_deriving base64 fieldslib re stringext uri ];
buildPhase = "jbuilder build -p cohttp"; buildPhase = "jbuilder build -p cohttp";

View File

@ -1,22 +1,34 @@
{ stdenv, buildOcaml, ocaml, fetchzip { stdenv, buildOcaml, ocaml, fetchzip
, cppo, ppx_tools, result, ounit , cppo, ppx_tools, ppx_derivers, result, ounit, ocaml-migrate-parsetree
}: }:
let param =
if ocaml.version == "4.03.0"
then {
version = "4.1";
sha256 = "0cy9p8d8cbcxvqyyv8fz2z9ypi121zrgaamdlp4ld9f3jnwz7my9";
extraPropagatedBuildInputs = [];
} else {
version = "4.2";
sha256 = "0scsg45wp6xdqj648fz155r4yngyl2xcd3hdszfzqwdpbax33914";
extraPropagatedBuildInputs = [ ocaml-migrate-parsetree ppx_derivers ];
}; in
buildOcaml rec { buildOcaml rec {
name = "ppx_deriving"; name = "ppx_deriving";
version = "4.1"; inherit (param) version;
minimumSupportedOcamlVersion = "4.02"; minimumSupportedOcamlVersion = "4.02";
src = fetchzip { src = fetchzip {
url = "https://github.com/whitequark/${name}/archive/v${version}.tar.gz"; url = "https://github.com/whitequark/${name}/archive/v${version}.tar.gz";
sha256 = "0cy9p8d8cbcxvqyyv8fz2z9ypi121zrgaamdlp4ld9f3jnwz7my9"; inherit (param) sha256;
}; };
hasSharedObjects = true; hasSharedObjects = true;
buildInputs = [ cppo ounit ]; buildInputs = [ cppo ounit ];
propagatedBuildInputs = propagatedBuildInputs = param.extraPropagatedBuildInputs ++
[ ppx_tools result ]; [ ppx_tools result ];
installPhase = "OCAMLPATH=$OCAMLPATH:`ocamlfind printconf destdir` make install"; installPhase = "OCAMLPATH=$OCAMLPATH:`ocamlfind printconf destdir` make install";
@ -25,6 +37,5 @@ buildOcaml rec {
description = "deriving is a library simplifying type-driven code generation on OCaml >=4.02."; description = "deriving is a library simplifying type-driven code generation on OCaml >=4.02.";
maintainers = [ maintainers.maurer ]; maintainers = [ maintainers.maurer ];
license = licenses.mit; license = licenses.mit;
broken = versionAtLeast ocaml.version "4.05";
}; };
} }

View File

@ -34,5 +34,6 @@ stdenv.mkDerivation {
maintainers = [ maintainers = [
maintainers.gal_bolle maintainers.gal_bolle
]; ];
broken = versionAtLeast ocaml.version "4.05";
}; };
} }