From e20b978708062ebfe00c73a08f71a5fbffe98d50 Mon Sep 17 00:00:00 2001 From: "Ricardo M. Correia" Date: Wed, 17 Feb 2016 18:53:48 +0100 Subject: [PATCH 1/3] ocamlPackages.gen: init at 0.3 --- .../development/ocaml-modules/gen/default.nix | 25 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/ocaml-modules/gen/default.nix diff --git a/pkgs/development/ocaml-modules/gen/default.nix b/pkgs/development/ocaml-modules/gen/default.nix new file mode 100644 index 00000000000..0b8f4253e76 --- /dev/null +++ b/pkgs/development/ocaml-modules/gen/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchFromGitHub, ocaml, findlib, qtest, ounit }: + +let version = "0.3"; in + +stdenv.mkDerivation { + name = "ocaml-gen-${version}"; + + src = fetchFromGitHub { + owner = "c-cube"; + repo = "gen"; + rev = "${version}"; + sha256 = "0xrnkcfa5q86ammf49j5hynw5563x5sa2mk7vqf7g097j1szif72"; + }; + + buildInputs = [ ocaml findlib qtest ounit ]; + + createFindlibDestdir = true; + + meta = { + homepage = https://github.com/c-cube/gen; + description = "Simple, efficient iterators for OCaml"; + license = stdenv.lib.licenses.bsd3; + platforms = ocaml.meta.platforms; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 605d39b6ac9..e9fa4615664 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4687,6 +4687,8 @@ let functory = callPackage ../development/ocaml-modules/functory { }; + gen = callPackage ../development/ocaml-modules/gen { }; + herelib = callPackage ../development/ocaml-modules/herelib { }; io-page = callPackage ../development/ocaml-modules/io-page { }; From a1e96c7cbe74f4c826eb55aad498f70ce345393e Mon Sep 17 00:00:00 2001 From: "Ricardo M. Correia" Date: Wed, 17 Feb 2016 18:54:23 +0100 Subject: [PATCH 2/3] ocamlPackages.sequence: init at 0.6 --- .../ocaml-modules/sequence/default.nix | 38 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 40 insertions(+) create mode 100644 pkgs/development/ocaml-modules/sequence/default.nix diff --git a/pkgs/development/ocaml-modules/sequence/default.nix b/pkgs/development/ocaml-modules/sequence/default.nix new file mode 100644 index 00000000000..d9c49ece60d --- /dev/null +++ b/pkgs/development/ocaml-modules/sequence/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchFromGitHub, ocaml, findlib, qtest, ounit }: + +let version = "0.6"; in + +stdenv.mkDerivation { + name = "ocaml-sequence-${version}"; + + src = fetchFromGitHub { + owner = "c-cube"; + repo = "sequence"; + rev = "${version}"; + sha256 = "0mky5qas3br2x4y14dzcky212z624ydqnx8mw8w00x0c1xjpafkb"; + }; + + buildInputs = [ ocaml findlib qtest ounit ]; + + configureFlags = [ + "--enable-tests" + ]; + + doCheck = true; + checkTarget = "test"; + + createFindlibDestdir = true; + + meta = { + homepage = https://github.com/c-cube/sequence; + description = "Simple sequence (iterator) datatype and combinators"; + longDescription = '' + Simple sequence datatype, intended to transfer a finite number of + elements from one data structure to another. Some transformations on sequences, + like `filter`, `map`, `take`, `drop` and `append` can be performed before the + sequence is iterated/folded on. + ''; + license = stdenv.lib.licenses.bsd2; + platforms = ocaml.meta.platforms; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e9fa4615664..c58df29cad0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4842,6 +4842,8 @@ let re2 = callPackage ../development/ocaml-modules/re2 { }; + sequence = callPackage ../development/ocaml-modules/sequence { }; + tuntap = callPackage ../development/ocaml-modules/tuntap { }; tyxml = callPackage ../development/ocaml-modules/tyxml { }; From 26415f963aec8dee29f8dab6ca1b36124f8b0abc Mon Sep 17 00:00:00 2001 From: "Ricardo M. Correia" Date: Wed, 17 Feb 2016 18:54:58 +0100 Subject: [PATCH 3/3] ocamlPackages.containers: init at 0.15 --- .../ocaml-modules/containers/default.nix | 47 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 49 insertions(+) create mode 100644 pkgs/development/ocaml-modules/containers/default.nix diff --git a/pkgs/development/ocaml-modules/containers/default.nix b/pkgs/development/ocaml-modules/containers/default.nix new file mode 100644 index 00000000000..5c2447614ad --- /dev/null +++ b/pkgs/development/ocaml-modules/containers/default.nix @@ -0,0 +1,47 @@ +{ stdenv, fetchFromGitHub, ocaml, findlib, cppo, gen, sequence, qtest, ounit }: + +let version = "0.15"; in + +stdenv.mkDerivation { + name = "ocaml-containers-${version}"; + + src = fetchFromGitHub { + owner = "c-cube"; + repo = "ocaml-containers"; + rev = "${version}"; + sha256 = "13mdl8jp4ymg1wip7lqmh4224x4jnji3frm1ik55vvm3ac8caqng"; + }; + + buildInputs = [ ocaml findlib cppo gen sequence qtest ounit ]; + + configureFlags = [ + "--enable-unix" + "--enable-thread" + "--enable-bigarray" + "--enable-advanced" + "--enable-tests" + "--disable-bench" + ]; + + doCheck = true; + checkTarget = "test"; + + createFindlibDestdir = true; + + meta = { + homepage = https://github.com/c-cube/ocaml-containers; + description = "A modular standard library focused on data structures"; + longDescription = '' + Containers is a standard library (BSD license) focused on data structures, + combinators and iterators, without dependencies on unix. Every module is + independent and is prefixed with 'CC' in the global namespace. Some modules + extend the stdlib (e.g. CCList provides safe map/fold_right/append, and + additional functions on lists). + + It also features optional libraries for dealing with strings, and + helpers for unix and threads. + ''; + license = stdenv.lib.licenses.bsd2; + platforms = ocaml.meta.platforms; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c58df29cad0..a761d7bfaea 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4637,6 +4637,8 @@ let config-file = callPackage ../development/ocaml-modules/config-file { }; + containers = callPackage ../development/ocaml-modules/containers { }; + cpdf = callPackage ../development/ocaml-modules/cpdf { }; cppo = callPackage ../development/tools/ocaml/cppo { };