summary refs log tree commit diff
path: root/pkgs/development/tools/ocaml/camlp5/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools/ocaml/camlp5/default.nix')
-rw-r--r--pkgs/development/tools/ocaml/camlp5/default.nix35
1 files changed, 35 insertions, 0 deletions
diff --git a/pkgs/development/tools/ocaml/camlp5/default.nix b/pkgs/development/tools/ocaml/camlp5/default.nix
new file mode 100644
index 0000000000000..7c87243054bd7
--- /dev/null
+++ b/pkgs/development/tools/ocaml/camlp5/default.nix
@@ -0,0 +1,35 @@
+{stdenv, fetchurl, ocaml, transitional ? false}:
+
+let
+  pname = "camlp5";
+  version = "5.12";
+  webpage = http://pauillac.inria.fr/~ddr/camlp5/;
+in
+
+stdenv.mkDerivation {
+
+  name = "${pname}${if transitional then "_transitional" else ""}-${version}";
+
+  src = fetchurl {
+    url = "${webpage}/distrib/src/${pname}-${version}.tgz";
+    sha256 = "985a5e373ea75f89667e71bc857c868c395769fce664cba88aa76f93b0ad8461";
+  };
+
+  buildInputs = [ ocaml ];
+
+  prefixKey = "-prefix ";
+
+  configureFlags = if transitional then "--transitional" else "--strict";
+
+  buildFlags = "world.opt";
+
+  meta = {
+    description = "Preprocessor-pretty-printer for OCaml";
+    longDescription = ''
+      Camlp5 is a preprocessor and pretty-printer for OCaml programs.
+      It also provides parsing and printing tools.
+    '';
+    homepage = "${webpage}";
+    license = "BSD";
+  };
+}