ocamlPackages.containers: 1.4 → 2.6.1

ocamlPackages.sequence/iter: 1.1 → 1.2.1

Ensures compatibility with OCaml 4.08
This commit is contained in:
Vincent Laporte 2019-09-20 05:29:05 +00:00
parent 59a07abdb2
commit 424c20414a
No known key found for this signature in database
GPG Key ID: EBD582ADDDB1F81F
3 changed files with 22 additions and 52 deletions

View File

@ -1,53 +1,26 @@
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, cppo, gen, sequence, qtest, ounit, result { lib, fetchFromGitHub, buildDunePackage, ocaml
, qcheck }: , iter, result, uchar
, gen, mdx, ounit, qcheck, uutf
}:
let buildDunePackage rec {
version = "2.6.1";
mkpath = p: pname = "containers";
"${p}/lib/ocaml/${ocaml.version}/site-lib";
version = "1.4";
in
stdenv.mkDerivation {
name = "ocaml${ocaml.version}-containers-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "c-cube"; owner = "c-cube";
repo = "ocaml-containers"; repo = "ocaml-containers";
rev = version; rev = version;
sha256 = "1wbarxphdrxvy7qsdp4p837h1zrv0z83pgs5lbz2h3kdnyvz2f1i"; sha256 = "02iq01pq6047hab5s8zpprwr21cygvzfcfj2lpsyj823f28crhmv";
}; };
buildInputs = [ ocaml findlib ocamlbuild cppo gen sequence qtest ounit qcheck ]; buildInputs = [ iter ];
propagatedBuildInputs = [ result ]; checkInputs = lib.optionals doCheck [ gen mdx ounit qcheck uutf ];
preConfigure = '' propagatedBuildInputs = [ result uchar ];
# The following is done so that the '#use "topfind"' directive works in the ocaml top-level
export HOME="$(mktemp -d)"
export OCAML_TOPLEVEL_PATH="${mkpath findlib}"
cat <<EOF > $HOME/.ocamlinit
let () =
try Topdirs.dir_directory (Sys.getenv "OCAML_TOPLEVEL_PATH")
with Not_found -> ()
;;
EOF
'';
configureFlags = [ doCheck = !lib.versionAtLeast ocaml.version "4.08";
"--enable-unix"
"--enable-thread"
"--enable-tests"
"--enable-docs"
"--disable-bench"
];
doCheck = true;
checkTarget = "test";
createFindlibDestdir = true;
meta = { meta = {
homepage = https://github.com/c-cube/ocaml-containers; homepage = https://github.com/c-cube/ocaml-containers;
@ -62,7 +35,6 @@ EOF
It also features optional libraries for dealing with strings, and It also features optional libraries for dealing with strings, and
helpers for unix and threads. helpers for unix and threads.
''; '';
license = stdenv.lib.licenses.bsd2; license = lib.licenses.bsd2;
platforms = ocaml.meta.platforms or [];
}; };
} }

View File

@ -1,22 +1,20 @@
{ stdenv, fetchFromGitHub, buildDunePackage, qtest, result }: { lib, fetchFromGitHub, buildDunePackage, ocaml, mdx, qtest, result }:
buildDunePackage rec { buildDunePackage rec {
pname = "sequence"; pname = "iter";
version = "1.1"; version = "1.2.1";
minimumOCamlVersion = "4.02";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "c-cube"; owner = "c-cube";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "08j37nldw47syq3yw4mzhhvya43knl0d7biddp0q9hwbaxhzgi44"; sha256 = "0j2sg50byn0ppmf6l36ksip7zx1d3gv7sc4hbbxs2rmx39jr7vxh";
}; };
buildInputs = [ qtest ]; buildInputs = lib.optionals doCheck [ mdx qtest ];
propagatedBuildInputs = [ result ]; propagatedBuildInputs = [ result ];
doCheck = true; doCheck = lib.versionAtLeast ocaml.version "4.04";
meta = { meta = {
homepage = https://github.com/c-cube/sequence; homepage = https://github.com/c-cube/sequence;
@ -27,6 +25,6 @@ buildDunePackage rec {
like `filter`, `map`, `take`, `drop` and `append` can be performed before the like `filter`, `map`, `take`, `drop` and `append` can be performed before the
sequence is iterated/folded on. sequence is iterated/folded on.
''; '';
license = stdenv.lib.licenses.bsd2; license = lib.licenses.bsd2;
}; };
} }

View File

@ -304,6 +304,8 @@ let
iso8601 = callPackage ../development/ocaml-modules/iso8601 { }; iso8601 = callPackage ../development/ocaml-modules/iso8601 { };
iter = callPackage ../development/ocaml-modules/iter { };
javalib = callPackage ../development/ocaml-modules/javalib { javalib = callPackage ../development/ocaml-modules/javalib {
extlib = ocaml_extlib; extlib = ocaml_extlib;
}; };
@ -621,8 +623,6 @@ let
seq = callPackage ../development/ocaml-modules/seq { }; seq = callPackage ../development/ocaml-modules/seq { };
sequence = callPackage ../development/ocaml-modules/sequence { };
spacetime_lib = callPackage ../development/ocaml-modules/spacetime_lib { }; spacetime_lib = callPackage ../development/ocaml-modules/spacetime_lib { };
sqlexpr = callPackage ../development/ocaml-modules/sqlexpr { }; sqlexpr = callPackage ../development/ocaml-modules/sqlexpr { };