From 2f0994010ab75d209240b882cec80a7376d686e3 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Fri, 12 Sep 2014 09:40:09 +0200 Subject: [PATCH 1/4] Adds ocaml-fix Fix is a simple OCaml module for computing the least solution of a system of monotone equations. Homepage: http://gallium.inria.fr/~fpottier/fix/ --- .../development/ocaml-modules/fix/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/development/ocaml-modules/fix/default.nix diff --git a/pkgs/development/ocaml-modules/fix/default.nix b/pkgs/development/ocaml-modules/fix/default.nix new file mode 100644 index 000000000000..5ead575d0886 --- /dev/null +++ b/pkgs/development/ocaml-modules/fix/default.nix @@ -0,0 +1,23 @@ +{stdenv, fetchurl, ocaml, findlib}: + +stdenv.mkDerivation { + + name = "ocaml-fix-20130611"; + + src = fetchurl { + url = http://gallium.inria.fr/~fpottier/fix/fix-20130611.tar.gz; + sha256 = "1phlqcs1nb93x9cf0w0hnq2ck4dmn71zm4mxf60w96vb9yb9qzp0"; + }; + + buildInputs = [ ocaml findlib ]; + + createFindlibDestdir = true; + + meta = with stdenv.lib; { + homepage = http://gallium.inria.fr/~fpottier/fix/; + description = "A simple OCaml module for computing the least solution of a system of monotone equations"; + license = licenses.cecill-c; + platforms = ocaml.meta.platforms; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 415f7263e3e3..867dddfa48e8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3340,6 +3340,8 @@ let findlib = callPackage ../development/tools/ocaml/findlib { }; + fix = callPackage ../development/ocaml-modules/fix { }; + javalib = callPackage ../development/ocaml-modules/javalib { extlib = ocaml_extlib_maximal; }; From ed7259000440c4a809349a69e34b600cce0abbbf Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Fri, 12 Sep 2014 09:45:38 +0200 Subject: [PATCH 2/4] Adds ocaml-pprint MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pprint is an OCaml adaptation of Wadler’s and Leijen’s prettier printer. Homepage: http://gallium.inria.fr/~fpottier/pprint/ --- .../ocaml-modules/pprint/default.nix | 27 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 pkgs/development/ocaml-modules/pprint/default.nix diff --git a/pkgs/development/ocaml-modules/pprint/default.nix b/pkgs/development/ocaml-modules/pprint/default.nix new file mode 100644 index 000000000000..e025801bb21c --- /dev/null +++ b/pkgs/development/ocaml-modules/pprint/default.nix @@ -0,0 +1,27 @@ +{stdenv, fetchurl, ocaml, findlib}: + +stdenv.mkDerivation { + + name = "ocaml-pprint-20140424"; + + src = fetchurl { + url = http://gallium.inria.fr/~fpottier/pprint/pprint-20140424.tar.gz; + sha256 = "0sc9q89dnyarcg24czyhr6ams0ylqvia3745s6rfwd2nldpygsdk"; + }; + + buildInputs = [ ocaml findlib ]; + + createFindlibDestdir = true; + + dontBuild = true; + installFlags = "-C src"; + + meta = with stdenv.lib; { + homepage = http://gallium.inria.fr/~fpottier/pprint/; + description = "An OCaml adaptation of Wadler’s and Leijen’s prettier printer"; + license = licenses.cecill-c; + platforms = ocaml.meta.platforms; + }; +} + + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 867dddfa48e8..7b33c9e494cc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3439,6 +3439,8 @@ let minimal = false; }; + pprint = callPackage ../development/ocaml-modules/pprint { }; + pycaml = callPackage ../development/ocaml-modules/pycaml { }; opam_1_0_0 = callPackage ../development/tools/ocaml/opam/1.0.0.nix { }; From cc387fa886cb48cd375922e347ba790999f9cb74 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Fri, 12 Sep 2014 10:17:15 +0200 Subject: [PATCH 3/4] Adds ocaml-functory Functory is a distributed computing library for Objective Caml which facilitates distributed execution of parallelizable computations in a seamless fashion. Further, it is polymorphic, incorporates a robust fault-tolerant mechanism and is already being deployed in real-world applications. Homepage: https://www.lri.fr/~filliatr/functory/ --- .../ocaml-modules/functory/default.nix | 26 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/development/ocaml-modules/functory/default.nix diff --git a/pkgs/development/ocaml-modules/functory/default.nix b/pkgs/development/ocaml-modules/functory/default.nix new file mode 100644 index 000000000000..b596272655e4 --- /dev/null +++ b/pkgs/development/ocaml-modules/functory/default.nix @@ -0,0 +1,26 @@ +{stdenv, fetchurl, ocaml, findlib}: + +stdenv.mkDerivation { + + name = "ocaml-functory-0.5"; + + src = fetchurl { + url = https://www.lri.fr/~filliatr/functory/download/functory-0.5.tar.gz; + sha256 = "1j17rhifdjv1z262dma148ywg34x0zjn8vczdrnkwajsm4qg1hw3"; + }; + + buildInputs = [ ocaml findlib ]; + + installTargets = "ocamlfind-install"; + + createFindlibDestdir = true; + + meta = with stdenv.lib; { + homepage = https://www.lri.fr/~filliatr/functory/; + description = "A distributed computing library for Objective Caml which facilitates distributed execution of parallelizable computations in a seamless fashion"; + license = licenses.lgpl21; + platforms = ocaml.meta.platforms; + }; +} + + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7b33c9e494cc..2b1f2fceef15 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3342,6 +3342,8 @@ let fix = callPackage ../development/ocaml-modules/fix { }; + functory = callPackage ../development/ocaml-modules/functory { }; + javalib = callPackage ../development/ocaml-modules/javalib { extlib = ocaml_extlib_maximal; }; From 829c49a686657d5779c83098506e86046db1a174 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Sat, 13 Sep 2014 09:33:17 +0200 Subject: [PATCH 4/4] Adds mezzo Mezzo is a programming language in the ML tradition, which places strong emphasis on the control of aliasing and access to mutable memory. Homepage: http://protz.github.io/mezzo/ --- pkgs/development/compilers/mezzo/default.nix | 29 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 31 insertions(+) create mode 100644 pkgs/development/compilers/mezzo/default.nix diff --git a/pkgs/development/compilers/mezzo/default.nix b/pkgs/development/compilers/mezzo/default.nix new file mode 100644 index 000000000000..183640f5985d --- /dev/null +++ b/pkgs/development/compilers/mezzo/default.nix @@ -0,0 +1,29 @@ +{stdenv, fetchurl, ocaml, findlib, menhir, yojson, ulex, pprint, fix, functory}: + +stdenv.mkDerivation { + + name = "mezzo-0.0.m8"; + + src = fetchurl { + url = https://github.com/protz/mezzo/archive/m8.tar.gz; + sha256 = "17mfapgqp8ssa5x9blv72zg9l561zbiwv3ikwi6nl9dd36lwkkc6"; + }; + + buildInputs = [ ocaml findlib yojson menhir ulex pprint fix functory ]; + + createFindlibDestdir = true; + + postInstall = '' + mkdir $out/bin + cp mezzo $out/bin/ + ''; + + meta = with stdenv.lib; { + homepage = http://protz.github.io/mezzo/; + description = "A programming language in the ML tradition, which places strong emphasis on the control of aliasing and access to mutable memory"; + license = licenses.gpl2; + platforms = ocaml.meta.platforms; + }; +} + + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2b1f2fceef15..3fe33209372f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3372,6 +3372,8 @@ let merlin = callPackage ../development/tools/ocaml/merlin { }; + mezzo = callPackage ../development/compilers/mezzo { }; + mldonkey = callPackage ../applications/networking/p2p/mldonkey { }; mlgmp = callPackage ../development/ocaml-modules/mlgmp { };