Author: maggesi
Date: Mon Dec 20 10:32:22 2010
New Revision: 25206
URL: https://svn.nixos.org/websvn/nix/?rev=25206&sc=1
Log:
* Update camlp5
Added:
nixpkgs/trunk/pkgs/development/tools/ocaml/camlp5/META
Modified:
nixpkgs/trunk/pkgs/applications/science/logic/coq/default.nix
nixpkgs/trunk/pkgs/development/tools/ocaml/camlp5/default.nix
nixpkgs/trunk/pkgs/top-level/all-packages.nix
Modified: nixpkgs/trunk/pkgs/applications/science/logic/coq/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/applications/science/logic/coq/default.nix Mon Dec
20 09:53:41 2010 (r25205)
+++ nixpkgs/trunk/pkgs/applications/science/logic/coq/default.nix Mon Dec
20 10:32:22 2010 (r25206)
@@ -1,7 +1,7 @@
# TODO:
# - coqide compilation should be optional or (better) separate;
-{stdenv, fetchurl, ocaml, camlp5, lablgtk, ncurses}:
+{stdenv, fetchurl, ocaml, findlib, camlp5, lablgtk, ncurses}:
let
version = "8.3";
@@ -15,15 +15,17 @@
sha256 = "02iy4rxz1n1kc85fb3vs4xpxqfxjw87y2gvmi39fxrj8742qx0dx";
};
- buildInputs = [ ocaml camlp5 ncurses lablgtk ];
+ buildInputs = [ ocaml findlib camlp5 ncurses lablgtk ];
prefixKey = "-prefix ";
- configureFlags =
- "-camldir ${ocaml}/bin " +
- "-camlp5dir ${camlp5}/lib/ocaml/camlp5 " +
- "-lablgtkdir ${lablgtk}/lib/ocaml/lablgtk2 " +
- "-opt -coqide opt";
+ preConfigure = ''
+ configureFlagsArray=(
+ -camldir ${ocaml}/bin
+ -camlp5dir $(ocamlfind query camlp5)
+ -lablgtkdir ${lablgtk}/lib/ocaml/lablgtk2 -opt -coqide opt
+ )
+ '';
buildFlags = "world"; # Debug with "world VERBOSE=1";
Added: nixpkgs/trunk/pkgs/development/tools/ocaml/camlp5/META
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ nixpkgs/trunk/pkgs/development/tools/ocaml/camlp5/META Mon Dec 20
10:32:22 2010 (r25206)
@@ -0,0 +1,94 @@
+# Specifications for the "camlp5" preprocessor:
+requires = ""
+version = "[distributed with Ocaml]"
+description = "Base for camlp5 syntax extensions"
+
+# For the toploop:
+archive(byte,toploop,camlp5o) = "camlp5o.cma"
+archive(byte,toploop,camlp5r) = "camlp5r.cma"
+
+# Scheme-like syntax:
+# Do #predicates "syntax,camlp5scheme", followed by #require "camlp5"
+archive(byte,toploop,camlp5scheme) = "camlp5sch.cma"
+
+# Standard ML-like syntax:
+# Do #predicates "syntax,camlp5sml", followed by #require "camlp5"
+archive(byte,toploop,camlp5sml) = "gramlib.cma camlp5_top.cma pa_sml.cmo"
+
+# Lisp-like syntax:
+# Do #predicates "syntax,camlp5lisp", followed by #require "camlp5"
+archive(byte,toploop,camlp5lisp) = "gramlib.cma camlp5_top.cma pa_lisp.cmo"
+
+# For the preprocessor itself:
+archive(syntax,preprocessor,camlp5o) = "pa_o.cmo pa_op.cmo pr_dump.cmo"
+archive(syntax,preprocessor,camlp5r) = "pa_r.cmo pa_rp.cmo pr_dump.cmo"
+archive(syntax,preprocessor,camlp5sml) = "pa_sml.cmo pr_dump.cmo"
+archive(syntax,preprocessor,camlp5scheme) = "pa_scheme.cmo pr_dump.cmo"
+archive(syntax,preprocessor,camlp5lisp) = "pa_lisp.cmo pr_dump.cmo"
+preprocessor = "camlp5 -nolib"
+
+package "gramlib" (
+ requires(toploop) = "camlp5"
+ version = "[distributed with Ocaml]"
+ description = "Grammar library to create syntax extensions"
+ archive(byte) = "gramlib.cma"
+ archive(byte,toploop) = "" # already contained in camlp5*.cma
+ archive(native) = "gramlib.cmxa"
+)
+
+package "quotations" (
+ requires = "camlp5"
+ version = "[distributed with Ocaml]"
+ description = "Syntax extension: Quotations to create AST nodes"
+ archive(syntax,preprocessor) = "q_MLast.cmo"
+ archive(syntax,toploop) = "q_MLast.cmo"
+)
+
+package "phony_quotations" (
+ requires = "camlp5"
+ version = "[distributed with Ocaml]"
+ description = "Syntax extension: Phony quotations"
+ archive(syntax,preprocessor) = "q_phony.cmo"
+ archive(syntax,toploop) = "q_phony.cmo"
+)
+
+package "extend" (
+ requires = "camlp5"
+ version = "[distributed with Ocaml]"
+ description = "Syntax extension: EXTEND the camlp5 grammar"
+ archive(syntax,preprocessor) = "pa_extend.cmo"
+ archive(syntax,toploop) = "pa_extend.cmo"
+)
+
+package "extfun" (
+ requires = "camlp5"
+ version = "[distributed with Ocaml]"
+ description = "Syntax extension: Extensible functions"
+ archive(syntax,preprocessor) = "pa_extfun.cmo"
+ archive(syntax,toploop) = "pa_extfun.cmo"
+)
+
+package "fstream" (
+ requires = "camlp5"
+ version = "[distributed with Ocaml]"
+ description = "Syntax extension: Functional stream parsers"
+ archive(syntax,preprocessor) = "pa_fstream.cmo"
+ archive(syntax,toploop) = "pa_fstream.cmo"
+)
+
+package "macro" (
+ requires = "camlp5"
+ version = "[distributed with Ocaml]"
+ description = "Syntax extension: Conditional compilation"
+ archive(syntax,preprocessor) = "pa_macro.cmo"
+ archive(syntax,toploop) = "pa_macro.cmo"
+)
+
+package "unit_constraints" (
+ requires = "camlp5"
+ version = "[distributed with Ocaml]"
+ description = "Syntax extension: Type constraints of type unit (revised
syntax only)"
+ archive(syntax,preprocessor,camlp5r) = "pa_ru.cmo"
+ archive(syntax,toploop,camlp5r) = "pa_ru.cmo"
+ error(syntax,-camlp5r) = "Not available"
+)
Modified: nixpkgs/trunk/pkgs/development/tools/ocaml/camlp5/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/development/tools/ocaml/camlp5/default.nix Mon Dec
20 09:53:41 2010 (r25205)
+++ nixpkgs/trunk/pkgs/development/tools/ocaml/camlp5/default.nix Mon Dec
20 10:32:22 2010 (r25206)
@@ -1,9 +1,11 @@
{stdenv, fetchurl, ocaml, transitional ? false}:
let
+ ocaml_version = (builtins.parseDrvName ocaml.name).version;
pname = "camlp5";
- version = "5.12";
+ version = "5.15";
webpage = http://pauillac.inria.fr/~ddr/camlp5/;
+ metafile = ./META;
in
stdenv.mkDerivation {
@@ -12,17 +14,20 @@
src = fetchurl {
url = "${webpage}/distrib/src/${pname}-${version}.tgz";
- sha256 =
"985a5e373ea75f89667e71bc857c868c395769fce664cba88aa76f93b0ad8461";
+ sha256 = "1sx5wlfpydqskm97gp7887p3avbl3vanlmrwj35wx5mbzj6kn9nq";
};
buildInputs = [ ocaml ];
prefixKey = "-prefix ";
- configureFlags = if transitional then "--transitional" else "--strict";
+ preConfigure = "configureFlagsArray=(" + (if transitional then
"--transitional" else "--strict") +
+ " --libdir $out/lib/ocaml/${ocaml_version}/site-lib)";
buildFlags = "world.opt";
+ postInstall = "cp ${metafile}
$out/lib/ocaml/${ocaml_version}/site-lib/camlp5/META";
+
meta = {
description = "Preprocessor-pretty-printer for OCaml";
longDescription = ''
@@ -31,5 +36,9 @@
'';
homepage = "${webpage}";
license = "BSD";
+ platforms = ocaml.meta.platforms;
+ maintainers = [
+ stdenv.lib.maintainers.z77z
+ ];
};
}
Modified: nixpkgs/trunk/pkgs/top-level/all-packages.nix
==============================================================================
--- nixpkgs/trunk/pkgs/top-level/all-packages.nix Mon Dec 20 09:53:41
2010 (r25205)
+++ nixpkgs/trunk/pkgs/top-level/all-packages.nix Mon Dec 20 10:32:22
2010 (r25206)
@@ -1985,6 +1985,12 @@
mkOcamlPackages = ocaml: self: let callPackage = newScope self; in rec {
inherit ocaml;
+ camlp5_strict = callPackage ../development/tools/ocaml/camlp5 { };
+
+ camlp5_transitional = callPackage ../development/tools/ocaml/camlp5 {
+ transitional = true;
+ };
+
camlzip = callPackage ../development/ocaml-modules/camlzip { };
camomile = camomile_0_7_3;
@@ -2404,12 +2410,6 @@
byacc = callPackage ../development/tools/parsing/byacc { };
- camlp5_strict = callPackage ../development/tools/ocaml/camlp5 { };
-
- camlp5_transitional = callPackage ../development/tools/ocaml/camlp5 {
- transitional = true;
- };
-
ccache = callPackage ../development/tools/misc/ccache { };
ctags = callPackage ../development/tools/misc/ctags { };
@@ -7012,7 +7012,8 @@
### SCIENCE/LOGIC
coq = callPackage ../applications/science/logic/coq {
- camlp5 = camlp5_transitional;
+ inherit (ocamlPackages) findlib;
+ camlp5 = ocamlPackages.camlp5_transitional;
};
cvc3 = callPackage ../applications/science/logic/cvc3 {};
@@ -7027,7 +7028,9 @@
hol = callPackage ../applications/science/logic/hol { };
- hol_light = callPackage ../applications/science/logic/hol_light { };
+ hol_light = callPackage ../applications/science/logic/hol_light {
+ inherit (ocamlPackages) camlp5_transitional;
+ };
hol_light_sources = callPackage
../applications/science/logic/hol_light/sources.nix { };
@@ -7056,7 +7059,7 @@
spass = callPackage ../applications/science/logic/spass {};
ssreflect = callPackage ../applications/science/logic/ssreflect {
- camlp5 = camlp5_transitional;
+ camlp5 = ocamlPackages.camlp5_transitional;
};
### SCIENCE / ELECTRONICS
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits