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:
parent
59a07abdb2
commit
424c20414a
@ -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 [];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -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;
|
||||||
};
|
};
|
||||||
}
|
}
|
@ -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 { };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user