Sprout from master 2006-01-15 18:10:48 UTC Jakub Bogusz <qboosh@pld-linux.org> '- updated to 3.09.1 (bugfixes)'
Cherrypick from master 2003-10-23 20:31:48 UTC Michal Moskal <michal@moskal.me> '- argh! remove Id stuff expanded by CVS':
ocaml-3.07-patch2.diffs -> 1.2
ocaml-mano.patch -> 1.2
ocaml-unused-var-warning.patch -> 1.1
Delete:
ocaml-DESTDIR.patch
ocaml-db3.patch
ocaml-ext_prof.patch
ocaml-nomanpages.patch
ocaml-opt.patch
--- /dev/null
+This patch (against OCaml 3.07) fixes the following issues:
+
+- Camlp4: parsing of labeled function arguments.
+- Emacs interface: portability issues between versions of GnuEmacs and XEmacs.
+- Incorrect code generated for certain recursive module definitions.
+- Name pollution issue on Mac OS X 10.3.
+
+How to apply this patch:
+
+* Go to the ocaml-3.07 source directory.
+
+* Do "make clean".
+
+* If you already applied the earlier patch ocaml-3.07-patch1.diffs,
+ un-apply it first by running patch -p1 -R < /path/to/ocaml-3.07-patch1.diffs
+
+* Run patch -p1 < /path/to/ocaml-3.07-patch2.diffs (this patch)
+
+* Compile and install as usual (see file INSTALL).
+
+--------------
+
+Index: csl/bytecomp/translmod.ml
+diff -u csl/bytecomp/translmod.ml:1.44 csl/bytecomp/translmod.ml:1.45
+--- csl/bytecomp/translmod.ml:1.44 Mon Jul 7 15:42:49 2003
++++ csl/bytecomp/translmod.ml Fri Oct 3 16:36:00 2003
+@@ -310,11 +310,12 @@
+ transl_module Tcoerce_none (field_path rootpath id) modl,
+ transl_structure (id :: fields) cc rootpath rem)
+ | Tstr_recmodule bindings :: rem ->
++ let ext_fields = List.rev_append (List.map fst bindings) fields in
+ compile_recmodule
+ (fun id modl ->
+ transl_module Tcoerce_none (field_path rootpath id) modl)
+ bindings
+- (transl_structure (map_end fst bindings fields) cc rootpath rem)
++ (transl_structure ext_fields cc rootpath rem)
+ | Tstr_modtype(id, decl) :: rem ->
+ transl_structure fields cc rootpath rem
+ | Tstr_open path :: rem ->
+Index: csl/camlp4/camlp4/ast2pt.ml
+diff -u csl/camlp4/camlp4/ast2pt.ml:1.25 csl/camlp4/camlp4/ast2pt.ml:1.26
+--- csl/camlp4/camlp4/ast2pt.ml:1.25 Wed Jul 16 20:59:12 2003
++++ csl/camlp4/camlp4/ast2pt.ml Tue Sep 30 16:39:26 2003
+@@ -177,10 +177,10 @@
+ | TyObj loc fl v -> mktyp loc (Ptyp_object (meth_list loc fl v))
+ | TyCls loc id ->
+ mktyp loc (Ptyp_class (long_id_of_string_list loc id) [] [])
+- | TyLab loc _ _ -> error loc "labeled type not allowed here"
++ | TyLab loc _ _ -> error loc "labelled type not allowed here"
+ | TyLid loc s -> mktyp loc (Ptyp_constr (lident s) [])
+- | TyMan loc _ _ -> error loc "type manifest not allowed here"
+- | TyOlb loc lab _ -> error loc "labeled type not allowed here"
++ | TyMan loc _ _ -> error loc "manifest type not allowed here"
++ | TyOlb loc lab _ -> error loc "labelled type not allowed here"
+ | TyPol loc pl t -> mktyp loc (Ptyp_poly pl (ctyp t))
+ | TyQuo loc s -> mktyp loc (Ptyp_var s)
+ | TyRec loc _ _ -> error loc "record type not allowed here"
+Index: csl/camlp4/etc/pa_o.ml
+diff -u csl/camlp4/etc/pa_o.ml:1.52 csl/camlp4/etc/pa_o.ml:1.54
+--- csl/camlp4/etc/pa_o.ml:1.52 Thu Sep 25 14:05:05 2003
++++ csl/camlp4/etc/pa_o.ml Tue Sep 30 16:39:38 2003
+@@ -1148,16 +1148,16 @@
+ | i = LIDENT -> [i] ] ]
+ ;
+ (* Labels *)
+- ctyp: AFTER "arrow"
+- [ NONA
++ ctyp: LEVEL "arrow"
++ [ RIGHTA
+ [ i = lident_colon; t1 = ctyp LEVEL "star"; "->"; t2 = SELF ->
+- <:ctyp< ~ $i$ : $t1$ -> $t2$ >>
++ <:ctyp< ( ~ $i$ : $t1$ ) -> $t2$ >>
+ | i = OPTLABEL; t1 = ctyp LEVEL "star"; "->"; t2 = SELF ->
+- <:ctyp< ? $i$ : $t1$ -> $t2$ >>
++ <:ctyp< ( ? $i$ : $t1$ ) -> $t2$ >>
+ | i = QUESTIONIDENT; ":"; t1 = ctyp LEVEL "star"; "->"; t2 = SELF ->
+- <:ctyp< ? $i$ : $t1$ -> $t2$ >>
++ <:ctyp< ( ? $i$ : $t1$ ) -> $t2$ >>
+ | "?"; i=lident_colon;t1 = ctyp LEVEL "star"; "->"; t2 = SELF ->
+- <:ctyp< ? $i$ : $t1$ -> $t2$ >> ] ]
++ <:ctyp< ( ? $i$ : $t1$ ) -> $t2$ >> ] ]
+ ;
+ ctyp: LEVEL "simple"
+ [ [ "["; OPT "|"; rfl = LIST1 row_field SEP "|"; "]" ->
+Index: csl/camlp4/meta/pa_r.ml
+diff -u csl/camlp4/meta/pa_r.ml:1.53 csl/camlp4/meta/pa_r.ml:1.55
+--- csl/camlp4/meta/pa_r.ml:1.53 Thu Sep 25 14:05:06 2003
++++ csl/camlp4/meta/pa_r.ml Thu Oct 2 14:33:43 2003
+@@ -542,6 +542,11 @@
+ <:ctyp< ! $list:pl$ . $t$ >> ]
+ | "arrow" RIGHTA
+ [ t1 = SELF; "->"; t2 = SELF -> <:ctyp< $t1$ -> $t2$ >> ]
++ | "label" NONA
++ [ i = TILDEIDENT; ":"; t = SELF -> <:ctyp< ~ $i$ : $t$ >>
++ | i = LABEL; t = SELF -> <:ctyp< ~ $i$ : $t$ >>
++ | i = QUESTIONIDENT; ":"; t = SELF -> <:ctyp< ? $i$ : $t$ >>
++ | i = OPTLABEL; t = SELF -> <:ctyp< ? $i$ : $t$ >> ]
+ | LEFTA
+ [ t1 = SELF; t2 = SELF -> <:ctyp< $t1$ $t2$ >> ]
+ | LEFTA
+@@ -746,14 +751,6 @@
+ class_longident:
+ [ [ m = UIDENT; "."; l = SELF -> [m :: l]
+ | i = LIDENT -> [i] ] ]
+- ;
+- (* Labels *)
+- ctyp: AFTER "arrow"
+- [ NONA
+- [ i = TILDEIDENT; ":"; t = SELF -> <:ctyp< ~ $i$ : $t$ >>
+- | i = LABEL; t = SELF -> <:ctyp< ~ $i$ : $t$ >>
+- | i = QUESTIONIDENT; ":"; t = SELF -> <:ctyp< ? $i$ : $t$ >>
+- | i = OPTLABEL; t = SELF -> <:ctyp< ? $i$ : $t$ >> ] ]
+ ;
+ ctyp: LEVEL "simple"
+ [ [ "["; "="; rfl = row_field_list; "]" ->
+Index: csl/camlp4/meta/q_MLast.ml
+diff -u csl/camlp4/meta/q_MLast.ml:1.51 csl/camlp4/meta/q_MLast.ml:1.53
+--- csl/camlp4/meta/q_MLast.ml:1.51 Wed Jul 16 14:50:08 2003
++++ csl/camlp4/meta/q_MLast.ml Thu Oct 2 14:33:43 2003
+@@ -127,7 +127,9 @@
+ value a_STRING = Grammar.Entry.create gram "a_STRING";
+ value a_CHAR = Grammar.Entry.create gram "a_CHAR";
+ value a_TILDEIDENT = Grammar.Entry.create gram "a_TILDEIDENT";
++value a_LABEL = Grammar.Entry.create gram "a_LABEL";
+ value a_QUESTIONIDENT = Grammar.Entry.create gram "a_QUESTIONIDENT";
++value a_OPTLABEL = Grammar.Entry.create gram "a_OPTLABEL";
+
+ value o2b =
+ fun
+@@ -793,6 +795,13 @@
+ Qast.Node "TyPol" [Qast.Loc; pl; t] ]
+ | "arrow" RIGHTA
+ [ t1 = SELF; "->"; t2 = SELF -> Qast.Node "TyArr" [Qast.Loc; t1; t2] ]
++ | "label" NONA
++ [ i = a_TILDEIDENT; ":"; t = SELF -> Qast.Node "TyLab" [Qast.Loc; i; t]
++ | i = a_LABEL; t = SELF -> Qast.Node "TyLab" [Qast.Loc; i; t]
++ | i = a_QUESTIONIDENT; ":"; t = SELF ->
++ Qast.Node "TyOlb" [Qast.Loc; i; t]
++ | i = a_OPTLABEL; t = SELF ->
++ Qast.Node "TyOlb" [Qast.Loc; i; t] ]
+ | LEFTA
+ [ t1 = SELF; t2 = SELF -> Qast.Node "TyApp" [Qast.Loc; t1; t2] ]
+ | LEFTA
+@@ -1006,13 +1015,6 @@
+ [ [ m = a_UIDENT; "."; l = SELF -> Qast.Cons m l
+ | i = a_LIDENT -> Qast.List [i] ] ]
+ ;
+- (* Labels *)
+- ctyp: AFTER "arrow"
+- [ NONA
+- [ i = a_TILDEIDENT; ":"; t = SELF -> Qast.Node "TyLab" [Qast.Loc; i; t]
+- | i = a_QUESTIONIDENT; ":"; t = SELF ->
+- Qast.Node "TyOlb" [Qast.Loc; i; t] ] ]
+- ;
+ ctyp: LEVEL "simple"
+ [ [ "["; "="; rfl = row_field_list; "]" ->
+ Qast.Node "TyVrn" [Qast.Loc; rfl; Qast.Option None]
+@@ -1044,11 +1046,16 @@
+ | "#"; sl = mod_ident -> Qast.Node "PaTyp" [Qast.Loc; sl]
+ | i = a_TILDEIDENT; ":"; p = SELF ->
+ Qast.Node "PaLab" [Qast.Loc; i; Qast.Option (Some p)]
++ | i = a_LABEL; p = SELF ->
++ Qast.Node "PaLab" [Qast.Loc; i; Qast.Option (Some p)]
+ | i = a_TILDEIDENT -> Qast.Node "PaLab" [Qast.Loc; i; Qast.Option None]
+ | i = a_QUESTIONIDENT; ":"; "("; p = patt_tcon; eo = SOPT eq_expr;
+ ")" ->
+ Qast.Node "PaOlb"
+ [Qast.Loc; i; Qast.Option (Some (Qast.Tuple [p; eo]))]
++ | i = a_OPTLABEL; "("; p = patt_tcon; eo = SOPT eq_expr; ")" ->
++ Qast.Node "PaOlb"
++ [Qast.Loc; i; Qast.Option (Some (Qast.Tuple [p; eo]))]
+ | i = a_QUESTIONIDENT ->
+ Qast.Node "PaOlb" [Qast.Loc; i; Qast.Option None]
+ | "?"; "("; p = patt_tcon; eo = SOPT eq_expr; ")" ->
+@@ -1063,11 +1070,16 @@
+ ipatt:
+ [ [ i = a_TILDEIDENT; ":"; p = SELF ->
+ Qast.Node "PaLab" [Qast.Loc; i; Qast.Option (Some p)]
++ | i = a_LABEL; p = SELF ->
++ Qast.Node "PaLab" [Qast.Loc; i; Qast.Option (Some p)]
+ | i = a_TILDEIDENT -> Qast.Node "PaLab" [Qast.Loc; i; Qast.Option None]
+ | i = a_QUESTIONIDENT; ":"; "("; p = ipatt_tcon; eo = SOPT eq_expr;
+ ")" ->
+ Qast.Node "PaOlb"
+ [Qast.Loc; i; Qast.Option (Some (Qast.Tuple [p; eo]))]
++ | i = a_OPTLABEL; "("; p = ipatt_tcon; eo = SOPT eq_expr; ")" ->
++ Qast.Node "PaOlb"
++ [Qast.Loc; i; Qast.Option (Some (Qast.Tuple [p; eo]))]
+ | i = a_QUESTIONIDENT ->
+ Qast.Node "PaOlb" [Qast.Loc; i; Qast.Option None]
+ | "?"; "("; p = ipatt_tcon; eo = SOPT eq_expr; ")" ->
+@@ -1086,9 +1098,13 @@
+ [ "label" NONA
+ [ i = a_TILDEIDENT; ":"; e = SELF ->
+ Qast.Node "ExLab" [Qast.Loc; i; Qast.Option (Some e)]
++ | i = a_LABEL; e = SELF ->
++ Qast.Node "ExLab" [Qast.Loc; i; Qast.Option (Some e)]
+ | i = a_TILDEIDENT -> Qast.Node "ExLab" [Qast.Loc; i; Qast.Option None]
+ | i = a_QUESTIONIDENT; ":"; e = SELF ->
+ Qast.Node "ExOlb" [Qast.Loc; i; Qast.Option (Some e)]
++ | i = a_OPTLABEL; e = SELF ->
++ Qast.Node "ExOlb" [Qast.Loc; i; Qast.Option (Some e)]
+ | i = a_QUESTIONIDENT ->
+ Qast.Node "ExOlb" [Qast.Loc; i; Qast.Option None] ] ]
+ ;
+@@ -1335,9 +1351,15 @@
+ [ [ "~"; a = ANTIQUOT -> antiquot "" loc a
+ | s = TILDEIDENT -> Qast.Str s ] ]
+ ;
++ a_LABEL:
++ [ [ s = LABEL -> Qast.Str s ] ]
++ ;
+ a_QUESTIONIDENT:
+ [ [ "?"; a = ANTIQUOT -> antiquot "" loc a
+ | s = QUESTIONIDENT -> Qast.Str s ] ]
++ ;
++ a_OPTLABEL:
++ [ [ s = OPTLABEL -> Qast.Str s ] ]
+ ;
+ END;
+
+Index: csl/camlp4/ocaml_src/camlp4/ast2pt.ml
+diff -u csl/camlp4/ocaml_src/camlp4/ast2pt.ml:1.24 csl/camlp4/ocaml_src/camlp4/ast2pt.ml:1.25
+--- csl/camlp4/ocaml_src/camlp4/ast2pt.ml:1.24 Thu Jul 24 00:26:18 2003
++++ csl/camlp4/ocaml_src/camlp4/ast2pt.ml Tue Sep 30 16:39:38 2003
+@@ -169,10 +169,10 @@
+ | TyObj (loc, fl, v) -> mktyp loc (Ptyp_object (meth_list loc fl v))
+ | TyCls (loc, id) ->
+ mktyp loc (Ptyp_class (long_id_of_string_list loc id, [], []))
+- | TyLab (loc, _, _) -> error loc "labeled type not allowed here"
++ | TyLab (loc, _, _) -> error loc "labelled type not allowed here"
+ | TyLid (loc, s) -> mktyp loc (Ptyp_constr (lident s, []))
+- | TyMan (loc, _, _) -> error loc "type manifest not allowed here"
+- | TyOlb (loc, lab, _) -> error loc "labeled type not allowed here"
++ | TyMan (loc, _, _) -> error loc "manifest type not allowed here"
++ | TyOlb (loc, lab, _) -> error loc "labelled type not allowed here"
+ | TyPol (loc, pl, t) -> mktyp loc (Ptyp_poly (pl, ctyp t))
+ | TyQuo (loc, s) -> mktyp loc (Ptyp_var s)
+ | TyRec (loc, _, _) -> error loc "record type not allowed here"
+Index: csl/camlp4/ocaml_src/meta/pa_r.ml
+diff -u csl/camlp4/ocaml_src/meta/pa_r.ml:1.48 csl/camlp4/ocaml_src/meta/pa_r.ml:1.50
+--- csl/camlp4/ocaml_src/meta/pa_r.ml:1.48 Thu Sep 25 14:05:07 2003
++++ csl/camlp4/ocaml_src/meta/pa_r.ml Thu Oct 2 14:33:44 2003
+@@ -1540,6 +1540,25 @@
+ Gramext.action
+ (fun (t2 : 'ctyp) _ (t1 : 'ctyp) (loc : int * int) ->
+ (MLast.TyArr (loc, t1, t2) : 'ctyp))];
++ Some "label", Some Gramext.NonA,
++ [[Gramext.Stoken ("OPTLABEL", ""); Gramext.Sself],
++ Gramext.action
++ (fun (t : 'ctyp) (i : string) (loc : int * int) ->
++ (MLast.TyOlb (loc, i, t) : 'ctyp));
++ [Gramext.Stoken ("QUESTIONIDENT", ""); Gramext.Stoken ("", ":");
++ Gramext.Sself],
++ Gramext.action
++ (fun (t : 'ctyp) _ (i : string) (loc : int * int) ->
++ (MLast.TyOlb (loc, i, t) : 'ctyp));
++ [Gramext.Stoken ("LABEL", ""); Gramext.Sself],
++ Gramext.action
++ (fun (t : 'ctyp) (i : string) (loc : int * int) ->
++ (MLast.TyLab (loc, i, t) : 'ctyp));
++ [Gramext.Stoken ("TILDEIDENT", ""); Gramext.Stoken ("", ":");
++ Gramext.Sself],
++ Gramext.action
++ (fun (t : 'ctyp) _ (i : string) (loc : int * int) ->
++ (MLast.TyLab (loc, i, t) : 'ctyp))];
+ None, Some Gramext.LeftA,
+ [[Gramext.Sself; Gramext.Sself],
+ Gramext.action
+@@ -2240,27 +2259,6 @@
+ Gramext.action
+ (fun (l : 'class_longident) _ (m : string) (loc : int * int) ->
+ (m :: l : 'class_longident))]];
+- Grammar.Entry.obj (ctyp : 'ctyp Grammar.Entry.e),
+- Some (Gramext.After "arrow"),
+- [None, Some Gramext.NonA,
+- [[Gramext.Stoken ("OPTLABEL", ""); Gramext.Sself],
+- Gramext.action
+- (fun (t : 'ctyp) (i : string) (loc : int * int) ->
+- (MLast.TyOlb (loc, i, t) : 'ctyp));
+- [Gramext.Stoken ("QUESTIONIDENT", ""); Gramext.Stoken ("", ":");
+- Gramext.Sself],
+- Gramext.action
+- (fun (t : 'ctyp) _ (i : string) (loc : int * int) ->
+- (MLast.TyOlb (loc, i, t) : 'ctyp));
+- [Gramext.Stoken ("LABEL", ""); Gramext.Sself],
+- Gramext.action
+- (fun (t : 'ctyp) (i : string) (loc : int * int) ->
+- (MLast.TyLab (loc, i, t) : 'ctyp));
+- [Gramext.Stoken ("TILDEIDENT", ""); Gramext.Stoken ("", ":");
+- Gramext.Sself],
+- Gramext.action
+- (fun (t : 'ctyp) _ (i : string) (loc : int * int) ->
+- (MLast.TyLab (loc, i, t) : 'ctyp))]];
+ Grammar.Entry.obj (ctyp : 'ctyp Grammar.Entry.e),
+ Some (Gramext.Level "simple"),
+ [None, None,
+Index: csl/camlp4/ocaml_src/meta/q_MLast.ml
+diff -u csl/camlp4/ocaml_src/meta/q_MLast.ml:1.56 csl/camlp4/ocaml_src/meta/q_MLast.ml:1.58
+--- csl/camlp4/ocaml_src/meta/q_MLast.ml:1.56 Thu Jul 24 00:26:19 2003
++++ csl/camlp4/ocaml_src/meta/q_MLast.ml Thu Oct 2 14:33:44 2003
+@@ -153,7 +153,9 @@
+ let a_STRING = Grammar.Entry.create gram "a_STRING";;
+ let a_CHAR = Grammar.Entry.create gram "a_CHAR";;
+ let a_TILDEIDENT = Grammar.Entry.create gram "a_TILDEIDENT";;
++let a_LABEL = Grammar.Entry.create gram "a_LABEL";;
+ let a_QUESTIONIDENT = Grammar.Entry.create gram "a_QUESTIONIDENT";;
++let a_OPTLABEL = Grammar.Entry.create gram "a_OPTLABEL";;
+
+ let o2b =
+ function
+@@ -626,7 +628,7 @@
+ Qast.Tuple [xx1; xx2; xx3] -> xx1, xx2, xx3
+ | _ ->
+ match () with
+- _ -> raise (Match_failure ("q_MLast.ml", 300, 19))
++ _ -> raise (Match_failure ("q_MLast.ml", 302, 19))
+ in
+ Qast.Node ("StExc", [Qast.Loc; c; tl; b]) :
+ 'str_item));
+@@ -896,7 +898,7 @@
+ Qast.Tuple [xx1; xx2; xx3] -> xx1, xx2, xx3
+ | _ ->
+ match () with
+- _ -> raise (Match_failure ("q_MLast.ml", 358, 19))
++ _ -> raise (Match_failure ("q_MLast.ml", 360, 19))
+ in
+ Qast.Node ("SgExc", [Qast.Loc; c; tl]) :
+ 'sig_item));
+@@ -2254,6 +2256,32 @@
+ Gramext.action
+ (fun (t2 : 'ctyp) _ (t1 : 'ctyp) (loc : int * int) ->
+ (Qast.Node ("TyArr", [Qast.Loc; t1; t2]) : 'ctyp))];
++ Some "label", Some Gramext.NonA,
++ [[Gramext.Snterm
++ (Grammar.Entry.obj (a_OPTLABEL : 'a_OPTLABEL Grammar.Entry.e));
++ Gramext.Sself],
++ Gramext.action
++ (fun (t : 'ctyp) (i : 'a_OPTLABEL) (loc : int * int) ->
++ (Qast.Node ("TyOlb", [Qast.Loc; i; t]) : 'ctyp));
++ [Gramext.Snterm
++ (Grammar.Entry.obj
++ (a_QUESTIONIDENT : 'a_QUESTIONIDENT Grammar.Entry.e));
++ Gramext.Stoken ("", ":"); Gramext.Sself],
++ Gramext.action
++ (fun (t : 'ctyp) _ (i : 'a_QUESTIONIDENT) (loc : int * int) ->
++ (Qast.Node ("TyOlb", [Qast.Loc; i; t]) : 'ctyp));
++ [Gramext.Snterm
++ (Grammar.Entry.obj (a_LABEL : 'a_LABEL Grammar.Entry.e));
++ Gramext.Sself],
++ Gramext.action
++ (fun (t : 'ctyp) (i : 'a_LABEL) (loc : int * int) ->
++ (Qast.Node ("TyLab", [Qast.Loc; i; t]) : 'ctyp));
++ [Gramext.Snterm
++ (Grammar.Entry.obj (a_TILDEIDENT : 'a_TILDEIDENT Grammar.Entry.e));
++ Gramext.Stoken ("", ":"); Gramext.Sself],
++ Gramext.action
++ (fun (t : 'ctyp) _ (i : 'a_TILDEIDENT) (loc : int * int) ->
++ (Qast.Node ("TyLab", [Qast.Loc; i; t]) : 'ctyp))];
+ None, Some Gramext.LeftA,
+ [[Gramext.Sself; Gramext.Sself],
+ Gramext.action
+@@ -3345,22 +3373,6 @@
+ (fun (l : 'class_longident) _ (m : 'a_UIDENT) (loc : int * int) ->
+ (Qast.Cons (m, l) : 'class_longident))]];
+ Grammar.Entry.obj (ctyp : 'ctyp Grammar.Entry.e),
+- Some (Gramext.After "arrow"),
+- [None, Some Gramext.NonA,
+- [[Gramext.Snterm
+- (Grammar.Entry.obj
+- (a_QUESTIONIDENT : 'a_QUESTIONIDENT Grammar.Entry.e));
+- Gramext.Stoken ("", ":"); Gramext.Sself],
+- Gramext.action
+- (fun (t : 'ctyp) _ (i : 'a_QUESTIONIDENT) (loc : int * int) ->
+- (Qast.Node ("TyOlb", [Qast.Loc; i; t]) : 'ctyp));
+- [Gramext.Snterm
+- (Grammar.Entry.obj (a_TILDEIDENT : 'a_TILDEIDENT Grammar.Entry.e));
+- Gramext.Stoken ("", ":"); Gramext.Sself],
+- Gramext.action
+- (fun (t : 'ctyp) _ (i : 'a_TILDEIDENT) (loc : int * int) ->
+- (Qast.Node ("TyLab", [Qast.Loc; i; t]) : 'ctyp))]];
+- Grammar.Entry.obj (ctyp : 'ctyp Grammar.Entry.e),
+ Some (Gramext.Level "simple"),
+ [None, None,
+ [[Gramext.Stoken ("", "["); Gramext.Stoken ("", "<");
+@@ -3518,6 +3530,30 @@
+ (fun (i : 'a_QUESTIONIDENT) (loc : int * int) ->
+ (Qast.Node ("PaOlb", [Qast.Loc; i; Qast.Option None]) : 'patt));
+ [Gramext.Snterm
++ (Grammar.Entry.obj (a_OPTLABEL : 'a_OPTLABEL Grammar.Entry.e));
++ Gramext.Stoken ("", "(");
++ Gramext.Snterm
++ (Grammar.Entry.obj (patt_tcon : 'patt_tcon Grammar.Entry.e));
++ Gramext.srules
++ [[Gramext.Sopt
++ (Gramext.Snterm
++ (Grammar.Entry.obj (eq_expr : 'eq_expr Grammar.Entry.e)))],
++ Gramext.action
++ (fun (a : 'eq_expr option) (loc : int * int) ->
++ (Qast.Option a : 'a_opt));
++ [Gramext.Snterm
++ (Grammar.Entry.obj (a_opt : 'a_opt Grammar.Entry.e))],
++ Gramext.action
++ (fun (a : 'a_opt) (loc : int * int) -> (a : 'a_opt))];
++ Gramext.Stoken ("", ")")],
++ Gramext.action
++ (fun _ (eo : 'a_opt) (p : 'patt_tcon) _ (i : 'a_OPTLABEL)
++ (loc : int * int) ->
++ (Qast.Node
++ ("PaOlb",
++ [Qast.Loc; i; Qast.Option (Some (Qast.Tuple [p; eo]))]) :
++ 'patt));
++ [Gramext.Snterm
+ (Grammar.Entry.obj
+ (a_QUESTIONIDENT : 'a_QUESTIONIDENT Grammar.Entry.e));
+ Gramext.Stoken ("", ":"); Gramext.Stoken ("", "(");
+@@ -3548,6 +3584,13 @@
+ (fun (i : 'a_TILDEIDENT) (loc : int * int) ->
+ (Qast.Node ("PaLab", [Qast.Loc; i; Qast.Option None]) : 'patt));
+ [Gramext.Snterm
++ (Grammar.Entry.obj (a_LABEL : 'a_LABEL Grammar.Entry.e));
++ Gramext.Sself],
++ Gramext.action
++ (fun (p : 'patt) (i : 'a_LABEL) (loc : int * int) ->
++ (Qast.Node ("PaLab", [Qast.Loc; i; Qast.Option (Some p)]) :
++ 'patt));
++ [Gramext.Snterm
+ (Grammar.Entry.obj (a_TILDEIDENT : 'a_TILDEIDENT Grammar.Entry.e));
+ Gramext.Stoken ("", ":"); Gramext.Sself],
+ Gramext.action
+@@ -3606,6 +3649,30 @@
+ (fun (i : 'a_QUESTIONIDENT) (loc : int * int) ->
+ (Qast.Node ("PaOlb", [Qast.Loc; i; Qast.Option None]) : 'ipatt));
+ [Gramext.Snterm
++ (Grammar.Entry.obj (a_OPTLABEL : 'a_OPTLABEL Grammar.Entry.e));
++ Gramext.Stoken ("", "(");
++ Gramext.Snterm
++ (Grammar.Entry.obj (ipatt_tcon : 'ipatt_tcon Grammar.Entry.e));
++ Gramext.srules
++ [[Gramext.Sopt
++ (Gramext.Snterm
++ (Grammar.Entry.obj (eq_expr : 'eq_expr Grammar.Entry.e)))],
++ Gramext.action
++ (fun (a : 'eq_expr option) (loc : int * int) ->
++ (Qast.Option a : 'a_opt));
++ [Gramext.Snterm
++ (Grammar.Entry.obj (a_opt : 'a_opt Grammar.Entry.e))],
++ Gramext.action
++ (fun (a : 'a_opt) (loc : int * int) -> (a : 'a_opt))];
++ Gramext.Stoken ("", ")")],
++ Gramext.action
++ (fun _ (eo : 'a_opt) (p : 'ipatt_tcon) _ (i : 'a_OPTLABEL)
++ (loc : int * int) ->
++ (Qast.Node
++ ("PaOlb",
++ [Qast.Loc; i; Qast.Option (Some (Qast.Tuple [p; eo]))]) :
++ 'ipatt));
++ [Gramext.Snterm
+ (Grammar.Entry.obj
+ (a_QUESTIONIDENT : 'a_QUESTIONIDENT Grammar.Entry.e));
+ Gramext.Stoken ("", ":"); Gramext.Stoken ("", "(");
+@@ -3636,6 +3703,13 @@
+ (fun (i : 'a_TILDEIDENT) (loc : int * int) ->
+ (Qast.Node ("PaLab", [Qast.Loc; i; Qast.Option None]) : 'ipatt));
+ [Gramext.Snterm
++ (Grammar.Entry.obj (a_LABEL : 'a_LABEL Grammar.Entry.e));
++ Gramext.Sself],
++ Gramext.action
++ (fun (p : 'ipatt) (i : 'a_LABEL) (loc : int * int) ->
++ (Qast.Node ("PaLab", [Qast.Loc; i; Qast.Option (Some p)]) :
++ 'ipatt));
++ [Gramext.Snterm
+ (Grammar.Entry.obj (a_TILDEIDENT : 'a_TILDEIDENT Grammar.Entry.e));
+ Gramext.Stoken ("", ":"); Gramext.Sself],
+ Gramext.action
+@@ -3669,6 +3743,13 @@
+ (fun (i : 'a_QUESTIONIDENT) (loc : int * int) ->
+ (Qast.Node ("ExOlb", [Qast.Loc; i; Qast.Option None]) : 'expr));
+ [Gramext.Snterm
++ (Grammar.Entry.obj (a_OPTLABEL : 'a_OPTLABEL Grammar.Entry.e));
++ Gramext.Sself],
++ Gramext.action
++ (fun (e : 'expr) (i : 'a_OPTLABEL) (loc : int * int) ->
++ (Qast.Node ("ExOlb", [Qast.Loc; i; Qast.Option (Some e)]) :
++ 'expr));
++ [Gramext.Snterm
+ (Grammar.Entry.obj
+ (a_QUESTIONIDENT : 'a_QUESTIONIDENT Grammar.Entry.e));
+ Gramext.Stoken ("", ":"); Gramext.Sself],
+@@ -3682,6 +3763,13 @@
+ (fun (i : 'a_TILDEIDENT) (loc : int * int) ->
+ (Qast.Node ("ExLab", [Qast.Loc; i; Qast.Option None]) : 'expr));
+ [Gramext.Snterm
++ (Grammar.Entry.obj (a_LABEL : 'a_LABEL Grammar.Entry.e));
++ Gramext.Sself],
++ Gramext.action
++ (fun (e : 'expr) (i : 'a_LABEL) (loc : int * int) ->
++ (Qast.Node ("ExLab", [Qast.Loc; i; Qast.Option (Some e)]) :
++ 'expr));
++ [Gramext.Snterm
+ (Grammar.Entry.obj (a_TILDEIDENT : 'a_TILDEIDENT Grammar.Entry.e));
+ Gramext.Stoken ("", ":"); Gramext.Sself],
+ Gramext.action
+@@ -4427,6 +4515,11 @@
+ Gramext.action
+ (fun (a : string) _ (loc : int * int) ->
+ (antiquot "" loc a : 'a_TILDEIDENT))]];
++ Grammar.Entry.obj (a_LABEL : 'a_LABEL Grammar.Entry.e), None,
++ [None, None,
++ [[Gramext.Stoken ("LABEL", "")],
++ Gramext.action
++ (fun (s : string) (loc : int * int) -> (Qast.Str s : 'a_LABEL))]];
+ Grammar.Entry.obj (a_QUESTIONIDENT : 'a_QUESTIONIDENT Grammar.Entry.e),
+ None,
+ [None, None,
+@@ -4437,7 +4530,12 @@
+ [Gramext.Stoken ("", "?"); Gramext.Stoken ("ANTIQUOT", "")],
+ Gramext.action
+ (fun (a : string) _ (loc : int * int) ->
+- (antiquot "" loc a : 'a_QUESTIONIDENT))]]];;
++ (antiquot "" loc a : 'a_QUESTIONIDENT))]];
++ Grammar.Entry.obj (a_OPTLABEL : 'a_OPTLABEL Grammar.Entry.e), None,
++ [None, None,
++ [[Gramext.Stoken ("OPTLABEL", "")],
++ Gramext.action
++ (fun (s : string) (loc : int * int) -> (Qast.Str s : 'a_OPTLABEL))]]];;
+
+ let apply_entry e =
+ let f s = Grammar.Entry.parse e (Stream.of_string s) in
+Index: csl/emacs/Makefile
+diff -u csl/emacs/Makefile:1.15 csl/emacs/Makefile:1.16
+--- csl/emacs/Makefile:1.15 Fri Aug 29 17:38:28 2003
++++ csl/emacs/Makefile Fri Oct 10 15:25:38 2003
+@@ -24,6 +24,7 @@
+ (byte-compile-file "caml.el") \
+ (byte-compile-file "inf-caml.el") \
+ (byte-compile-file "caml-help.el") \
++ (byte-compile-file "caml-types.el") \
+ (byte-compile-file "camldebug.el"))
+
+ install:
+Index: csl/emacs/caml-emacs.el
+diff -u csl/emacs/caml-emacs.el:1.4 csl/emacs/caml-emacs.el:1.5
+--- csl/emacs/caml-emacs.el:1.4 Mon Aug 25 17:01:20 2003
++++ csl/emacs/caml-emacs.el Fri Oct 10 15:25:38 2003
+@@ -8,7 +8,7 @@
+ (defun caml-event-window (e) (posn-window (event-start e)))
+ (defun caml-event-point-start (e) (posn-point (event-start e)))
+ (defun caml-event-point-end (e) (posn-point (event-end e)))
+-(defalias 'caml-track-mouse 'track-mouse)
+ (defalias 'caml-read-event 'read-event)
++(defmacro caml-track-mouse (&rest body) (cons 'track-mouse body))
+
+ (provide 'caml-emacs)
+Index: csl/emacs/caml-types.el
+diff -u csl/emacs/caml-types.el:1.24 csl/emacs/caml-types.el:1.26
+--- csl/emacs/caml-types.el:1.24 Fri Sep 5 20:01:46 2003
++++ csl/emacs/caml-types.el Sat Oct 11 02:00:14 2003
+@@ -21,6 +21,8 @@
+ (require 'caml-xemacs)
+ (require 'caml-emacs)))
+
++
++
+ (defvar caml-types-location-re nil "Regexp to parse *.annot files.
+
+ Annotation files *.annot may be generated with the \"-dtypes\" option
+@@ -160,8 +162,10 @@
+ (target-file (file-name-nondirectory (buffer-file-name)))
+ (target-date (nth 5 (file-attributes target-file))))
+ (unless (and caml-types-annotation-tree
++ type-date
++ caml-types-annotation-date
+ (not (caml-types-date< caml-types-annotation-date type-date)))
+- (if (caml-types-date< type-date target-date)
++ (if (and type-date target-date (caml-types-date< type-date target-date))
+ (error (format "%s is more recent than %s" target-file type-file)))
+ (message "Reading annotation file...")
+ (let* ((type-buf (caml-types-find-file type-file))
+@@ -376,10 +380,13 @@
+ (with-current-buffer buf (toggle-read-only 1))
+ )
+ (t
+- (error "No annotation file. You may compile with \"-dtypes\" option"))
++ (error "No annotation file. You should compile with option \"-dtypes\"."))
+ )
+ buf))
+
++(defun caml-types-mouse-ignore (event)
++ (interactive "e")
++ nil)
+
+ (defun caml-types-explore (event)
+ "Explore type annotations by mouse dragging.
+@@ -395,58 +402,79 @@
+ (target-line) (target-bol)
+ target-pos
+ Left Right limits cnum node mes type
+- (tree caml-types-annotation-tree)
+ region
++ target-tree
+ )
+- (caml-types-preprocess type-file)
+- (unless caml-types-buffer
+- (setq caml-types-buffer (get-buffer-create caml-types-buffer-name)))
+- ;; (message "Drag the mouse to explore types")
+ (unwind-protect
+- (caml-track-mouse
+- (setq region
+- (caml-types-typed-make-overlay target-buf
+- (caml-event-point-start event)))
+- (while (and event
+- (integer-or-marker-p
+- (setq cnum (caml-event-point-end event))))
+- (if (and region (<= (car region) cnum) (<= cnum (cdr region)))
+- (if (and limits (>= cnum (car limits)) (< cnum (cdr limits)))
+- (message mes)
+- (setq target-bol
+- (save-excursion (goto-char cnum)
+- (caml-line-beginning-position)))
+- (setq target-line
+- (1+ (count-lines (point-min) target-bol)))
+- (setq target-pos (vector target-file target-line target-bol cnum))
+- (save-excursion
+- (setq node (caml-types-find-location target-pos () tree))
+- (set-buffer caml-types-buffer)
+- (erase-buffer)
+- (cond
+- (node
+- (setq Left (caml-types-get-pos target-buf (elt node 0)))
+- (setq Right (caml-types-get-pos target-buf (elt node 1)))
+- (move-overlay caml-types-expr-ovl Left Right target-buf)
+- (setq limits (caml-types-find-interval target-buf target-pos
+- node))
+- (setq type (elt node 2))
+- )
+- (t
+- (delete-overlay caml-types-expr-ovl)
+- (setq type "*no type information*")
+- (setq limits (caml-types-find-interval target-buf target-pos
+- tree))
+- ))
+- (message (setq mes (format "type: %s" type)))
+- (insert type)
+- )))
+- (setq event (caml-read-event))
+- (unless (mouse-movement-p event) (setq event nil))
+- )
+- )
+- (delete-overlay caml-types-expr-ovl)
+- (delete-overlay caml-types-typed-ovl)
++ (progn
++ (caml-types-preprocess type-file)
++ (setq target-tree caml-types-annotation-tree)
++ (unless caml-types-buffer
++ (setq caml-types-buffer
++ (get-buffer-create caml-types-buffer-name)))
++ ;; (message "Drag the mouse to explore types")
++ (unwind-protect
++ (caml-track-mouse
++ (setq region
++ (caml-types-typed-make-overlay
++ target-buf (caml-event-point-start event)))
++ (while (and event
++ (integer-or-marker-p
++ (setq cnum (caml-event-point-end event))))
++ (if (and region (<= (car region) cnum) (< cnum (cdr region)))
++ (if (and limits
++ (>= cnum (car limits)) (< cnum (cdr limits)))
++ (message mes)
++ (setq target-bol
++ (save-excursion
++ (goto-char cnum) (caml-line-beginning-position))
++ target-line (1+ (count-lines (point-min)
++ target-bol))
++ target-pos
++ (vector target-file target-line target-bol cnum))
++ (save-excursion
++ (setq node (caml-types-find-location
++ target-pos () target-tree))
++ (set-buffer caml-types-buffer)
++ (erase-buffer)
++ (cond
++ (node
++ (setq Left
++ (caml-types-get-pos target-buf (elt node 0))
++ Right
++ (caml-types-get-pos target-buf (elt node 1)))
++ (move-overlay
++ caml-types-expr-ovl Left Right target-buf)
++ (setq limits
++ (caml-types-find-interval target-buf
++ target-pos node)
++ type (elt node 2))
++ )
++ (t
++ (delete-overlay caml-types-expr-ovl)
++ (setq type "*no type information*")
++ (setq limits
++ (caml-types-find-interval
++ target-buf target-pos target-tree))
++ ))
++ (message (setq mes (format "type: %s" type)))
++ (insert type)
++ )))
++ (setq event (caml-read-event))
++ (unless (mouse-movement-p event) (setq event nil))
++ )
++ )
++ (delete-overlay caml-types-expr-ovl)
++ (delete-overlay caml-types-typed-ovl)
++ ))
++ ;; the mouse is down. One should prevent against mouse release,
++ ;; which could do something undesirable.
++ ;; In most common cases, next event will be mouse release.
++ ;; However, it could also be a key stroke before mouse release.
++ ;; Will then execute the action for mouse release (if bound).
++ ;; Emacs does not allow to test whether mouse is up or down.
++ ;; Same problem may happen above while exploring
++ (if (and event (caml-read-event)))
+ )))
+
+ (defun caml-types-typed-make-overlay (target-buf pos)
+@@ -459,7 +487,7 @@
+ (if (and (equal target-buf (current-buffer))
+ (setq left (caml-types-get-pos target-buf (elt node 0))
+ right (caml-types-get-pos target-buf (elt node 1)))
+- (<= left pos) (>= right pos)
++ (<= left pos) (> right pos)
+ )
+ (setq start (min start left)
+ end (max end right))
+Index: csl/emacs/caml-xemacs.el
+diff -u csl/emacs/caml-xemacs.el:1.3 csl/emacs/caml-xemacs.el:1.4
+--- csl/emacs/caml-xemacs.el:1.3 Tue Jul 29 09:30:03 2003
++++ csl/emacs/caml-xemacs.el Fri Oct 10 15:25:38 2003
+@@ -12,8 +12,9 @@
+ (defun caml-event-window (e) (event-window e))
+ (defun caml-event-point-start (e) (event-closest-point e))
+ (defun caml-event-point-end (e) (event-closest-point e))
+-(defalias 'caml-track-mouse 'progn)
+ (defalias 'caml-read-event 'next-event)
++(defmacro caml-track-mouse (&rest body) (cons 'progn body))
++
+ (defun mouse-movement-p (e) (equal (event-type e) 'motion))
+
+ (provide 'caml-xemacs)
+Index: csl/emacs/caml.el
+diff -u csl/emacs/caml.el:1.34 csl/emacs/caml.el:1.35
+--- csl/emacs/caml.el:1.34 Mon Jul 28 20:06:49 2003
++++ csl/emacs/caml.el Fri Oct 10 15:25:38 2003
+@@ -283,6 +283,8 @@
+
+ ;; caml-types
+ (define-key caml-mode-map [?\C-c?\C-t] 'caml-types-show-type)
++ ;; to prevent misbehavior in case of error during exploration.
++ (define-key caml-mode-map [mouse-2] 'caml-types-mouse-ignore)
+ (define-key caml-mode-map [down-mouse-2] 'caml-types-explore)
+ ;; caml-help
+ (define-key caml-mode-map [?\C-c?i] 'ocaml-add-path)
+Index: csl/otherlibs/threads/scheduler.c
+diff -u csl/otherlibs/threads/scheduler.c:1.56 csl/otherlibs/threads/scheduler.c:1.57
+--- csl/otherlibs/threads/scheduler.c:1.56 Thu Mar 20 17:23:03 2003
++++ csl/otherlibs/threads/scheduler.c Fri Oct 10 15:13:21 2003
+@@ -72,10 +72,10 @@
+
+ /* The thread descriptors */
+
+-struct thread_struct {
++struct caml_thread_struct {
+ value ident; /* Unique id (for equality comparisons) */
+- struct thread_struct * next; /* Double linking of threads */
+- struct thread_struct * prev;
++ struct caml_thread_struct * next; /* Double linking of threads */
++ struct caml_thread_struct * prev;
+ value * stack_low; /* The execution stack for this thread */
+ value * stack_high;
+ value * stack_threshold;
+@@ -94,7 +94,7 @@
+ value retval; /* Value to return when thread resumes */
+ };
+
+-typedef struct thread_struct * thread_t;
++typedef struct caml_thread_struct * caml_thread_t;
+
+ #define RUNNABLE Val_int(0)
+ #define KILLED Val_int(1)
+@@ -122,7 +122,7 @@
+ #define DELAY_INFTY 1E30 /* +infty, for this purpose */
+
+ /* The thread currently active */
+-static thread_t curr_thread = NULL;
++static caml_thread_t curr_thread = NULL;
+ /* Identifier for next thread creation */
+ static value next_ident = Val_int(0);
+
+@@ -134,7 +134,7 @@
+
+ static void thread_scan_roots(scanning_action action)
+ {
+- thread_t th, start;
++ caml_thread_t th, start;
+
+ /* Scan all active descriptors */
+ start = curr_thread;
+@@ -161,7 +161,8 @@
+ if (curr_thread != NULL) return Val_unit;
+ /* Create a descriptor for the current thread */
+ curr_thread =
+- (thread_t) alloc_shr(sizeof(struct thread_struct) / sizeof(value), 0);
++ (caml_thread_t) alloc_shr(sizeof(struct caml_thread_struct)
++ / sizeof(value), 0);
+ curr_thread->ident = next_ident;
+ next_ident = Val_int(Int_val(next_ident) + 1);
+ curr_thread->next = curr_thread;
+@@ -218,10 +219,11 @@
+
+ value thread_new(value clos) /* ML */
+ {
+- thread_t th;
++ caml_thread_t th;
+ /* Allocate the thread and its stack */
+ Begin_root(clos);
+- th = (thread_t) alloc_shr(sizeof(struct thread_struct) / sizeof(value), 0);
++ th = (caml_thread_t) alloc_shr(sizeof(struct caml_thread_struct)
++ / sizeof(value), 0);
+ End_roots();
+ th->ident = next_ident;
+ next_ident = Val_int(Int_val(next_ident) + 1);
+@@ -268,7 +270,7 @@
+
+ value thread_id(value th) /* ML */
+ {
+- return ((struct thread_struct *)th)->ident;
++ return ((caml_thread_t)th)->ident;
+ }
+
+ /* Return the current time as a floating-point number */
+@@ -293,7 +295,7 @@
+
+ static value schedule_thread(void)
+ {
+- thread_t run_thread, th;
++ caml_thread_t run_thread, th;
+ fd_set readfds, writefds, exceptfds;
+ double delay, now;
+ int need_select, need_wait;
+@@ -353,7 +355,7 @@
+ }
+ }
+ if (th->status & (BLOCKED_JOIN - 1)) {
+- if (((thread_t)(th->joining))->status == KILLED) {
++ if (((caml_thread_t)(th->joining))->status == KILLED) {
+ th->status = RUNNABLE;
+ Assign(th->retval, RESUMED_JOIN);
+ }
+@@ -682,7 +684,7 @@
+ {
+ check_callback();
+ Assert(curr_thread != NULL);
+- if (((thread_t)th)->status == KILLED) return Val_unit;
++ if (((caml_thread_t)th)->status == KILLED) return Val_unit;
+ curr_thread->status = BLOCKED_JOIN;
+ Assign(curr_thread->joining, th);
+ return schedule_thread();
+@@ -703,7 +705,7 @@
+
+ value thread_wakeup(value thread) /* ML */
+ {
+- thread_t th = (thread_t) thread;
++ caml_thread_t th = (caml_thread_t) thread;
+ switch (th->status) {
+ case SUSPENDED:
+ th->status = RUNNABLE;
+@@ -730,7 +732,7 @@
+ value thread_kill(value thread) /* ML */
+ {
+ value retval = Val_unit;
+- thread_t th = (thread_t) thread;
++ caml_thread_t th = (caml_thread_t) thread;
+ if (th->status == KILLED) failwith("Thread.kill: killed thread");
+ /* Don't paint ourselves in a corner */
+ if (th == th->next) failwith("Thread.kill: cannot kill the last thread");
+@@ -740,7 +742,7 @@
+ if (th == curr_thread) {
+ Begin_root(thread);
+ retval = schedule_thread();
+- th = (thread_t) thread;
++ th = (caml_thread_t) thread;
+ End_roots();
+ }
+ /* Remove thread from the doubly-linked list */
+Index: csl/stdlib/buffer.mli
+diff -u csl/stdlib/buffer.mli:1.16 csl/stdlib/buffer.mli:1.17
+--- csl/stdlib/buffer.mli:1.16 Wed May 14 19:52:19 2003
++++ csl/stdlib/buffer.mli Wed Oct 8 15:12:44 2003
+@@ -74,7 +74,7 @@
+ - a non empty sequence of alphanumeric or [_] characters,
+ - an arbitrary sequence of characters enclosed by a pair of
+ matching parentheses or curly brackets.
+- An escaped [$] character is a [$] that immediately folows a backslash
++ An escaped [$] character is a [$] that immediately follows a backslash
+ character; it then stands for a plain [$].
+ Raise [Not_found] if the closing character of a parenthesized variable
+ cannot be found. *)
+Index: csl/stdlib/pervasives.mli
+diff -u csl/stdlib/pervasives.mli:1.93 csl/stdlib/pervasives.mli:1.94
+--- csl/stdlib/pervasives.mli:1.93 Thu Sep 4 14:44:48 2003
++++ csl/stdlib/pervasives.mli Wed Oct 8 15:13:33 2003
+@@ -800,7 +800,7 @@
+
+ external string_of_format :
+ ('a, 'b, 'c, 'd) format4 -> string = "%identity"
+-(** Converts a format string into a string.*)
++(** Converts a format string into a string. *)
+ external format_of_string :
+ ('a, 'b, 'c, 'd) format4 -> ('a, 'b, 'c, 'd) format4 = "%identity"
+ (** [format_of_string s] returns a format string read from the string
+Index: csl/stdlib/sys.ml
+diff -u csl/stdlib/sys.ml:1.78 csl/stdlib/sys.ml:1.80
+--- csl/stdlib/sys.ml:1.78 Fri Sep 12 09:46:23 2003
++++ csl/stdlib/sys.ml Mon Oct 13 09:39:46 2003
+@@ -78,4 +78,4 @@
+
+ (* OCaml version string, must be in the format described in sys.mli. *)
+
+-let ocaml_version = "3.07";;
++let ocaml_version = "3.07+2";;
+++ /dev/null
-diff -ur ocaml-3.04--/Makefile ocaml-3.04/Makefile
---- ocaml-3.04--/Makefile Tue Dec 11 09:32:41 2001
-+++ ocaml-3.04/Makefile Sat Feb 2 01:48:21 2002
-@@ -220,23 +220,23 @@
-
- # Installation
- install: FORCE
-- if test -d $(BINDIR); then : ; else $(MKDIR) $(BINDIR); fi
-- if test -d $(LIBDIR); then : ; else $(MKDIR) $(LIBDIR); fi
-- if test -d $(LIBDIR)/shlibs; then : ; else $(MKDIR) $(LIBDIR)/shlibs; fi
-- if test -d $(MANDIR); then : ; else $(MKDIR) $(MANDIR); fi
-- rm -f $(LIBDIR)/lib*.so
-+ if test -d $(DESTDIR)$(BINDIR); then : ; else $(MKDIR) $(DESTDIR)$(BINDIR); fi
-+ if test -d $(DESTDIR)$(LIBDIR); then : ; else $(MKDIR) $(DESTDIR)$(LIBDIR); fi
-+ if test -d $(DESTDIR)$(LIBDIR)/shlibs; then : ; else $(MKDIR) $(DESTDIR)$(LIBDIR)/shlibs; fi
-+ if test -d $(DESTDIR)$(MANDIR); then : ; else $(MKDIR) $(DESTDIR)$(MANDIR); fi
-+ rm -f $(DESTDIR)$(LIBDIR)/lib*.so
- cd byterun; $(MAKE) install
-- if test -r $(LIBDIR)/ld.conf; then :; else echo "$(LIBDIR)" > $(LIBDIR)/ld.conf; fi
-- cp ocamlc $(BINDIR)/ocamlc$(EXE)
-- cp ocaml $(BINDIR)/ocaml$(EXE)
-+ if test -r $(DESTDIR)$(LIBDIR)/ld.conf; then :; else echo "$(LIBDIR)" > $(DESTDIR)$(LIBDIR)/ld.conf; fi
-+ cp ocamlc $(DESTDIR)$(BINDIR)/ocamlc$(EXE)
-+ cp ocaml $(DESTDIR)$(BINDIR)/ocaml$(EXE)
- cd stdlib; $(MAKE) install
-- cp lex/ocamllex $(BINDIR)/ocamllex$(EXE)
-- cp yacc/ocamlyacc$(EXE) $(BINDIR)/ocamlyacc$(EXE)
-- cp toplevel/toplevellib.cma $(LIBDIR)/toplevellib.cma
-- cp expunge $(LIBDIR)/expunge$(EXE)
-- cp typing/outcometree.cmi typing/outcometree.mli $(LIBDIR)
-- cp toplevel/topmain.cmo $(LIBDIR)
-- cp toplevel/toploop.cmi toplevel/topdirs.cmi $(LIBDIR)
-+ cp lex/ocamllex $(DESTDIR)$(BINDIR)/ocamllex$(EXE)
-+ cp yacc/ocamlyacc$(EXE) $(DESTDIR)$(BINDIR)/ocamlyacc$(EXE)
-+ cp toplevel/toplevellib.cma $(DESTDIR)$(LIBDIR)/toplevellib.cma
-+ cp expunge $(DESTDIR)$(LIBDIR)/expunge$(EXE)
-+ cp typing/outcometree.cmi typing/outcometree.mli $(DESTDIR)$(LIBDIR)
-+ cp toplevel/topmain.cmo $(DESTDIR)$(LIBDIR)
-+ cp toplevel/toploop.cmi toplevel/topdirs.cmi $(DESTDIR)$(LIBDIR)
- cd tools; $(MAKE) install
- -cd man; $(MAKE) install
- for i in $(OTHERLIBRARIES); do \
-@@ -249,12 +249,12 @@
- # Installation of the native-code compiler
- installopt:
- cd asmrun; $(MAKE) install
-- cp ocamlopt $(BINDIR)/ocamlopt$(EXE)
-+ cp ocamlopt $(DESTDIR)$(BINDIR)/ocamlopt$(EXE)
- cd stdlib; $(MAKE) installopt
- for i in $(OTHERLIBRARIES); do (cd otherlibs/$$i; $(MAKE) installopt) || exit $$?; done
-- if test -f ocamlc.opt; then cp ocamlc.opt $(BINDIR)/ocamlc.opt$(EXE); else :; fi
-- if test -f ocamlopt.opt; then cp ocamlopt.opt $(BINDIR)/ocamlopt.opt$(EXE); else :; fi
-- if test -f lex/ocamllex.opt; then cp lex/ocamllex.opt $(BINDIR)/ocamllex.opt$(EXE); else :; fi
-+ if test -f ocamlc.opt; then cp ocamlc.opt $(DESTDIR)$(BINDIR)/ocamlc.opt$(EXE); else :; fi
-+ if test -f ocamlopt.opt; then cp ocamlopt.opt $(DESTDIR)$(BINDIR)/ocamlopt.opt$(EXE); else :; fi
-+ if test -f lex/ocamllex.opt; then cp lex/ocamllex.opt $(DESTDIR)$(BINDIR)/ocamllex.opt$(EXE); else :; fi
-
- clean:: partialclean
-
-diff -ur ocaml-3.04--/asmrun/Makefile ocaml-3.04/asmrun/Makefile
---- ocaml-3.04--/asmrun/Makefile Fri Dec 7 14:39:18 2001
-+++ ocaml-3.04/asmrun/Makefile Sat Feb 2 01:48:21 2002
-@@ -57,15 +57,15 @@
- install: install-default install-$(PROFILING)
-
- install-default:
-- cp libasmrun.a $(LIBDIR)/libasmrun.a
-- cd $(LIBDIR); $(RANLIB) libasmrun.a
-+ cp libasmrun.a $(DESTDIR)$(LIBDIR)/libasmrun.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libasmrun.a
-
- install-noprof:
-- rm -f $(LIBDIR)/libasmrunp.a; ln -s libasmrun.a $(LIBDIR)/libasmrunp.a
-+ rm -f $(DESTDIR)$(LIBDIR)/libasmrunp.a; ln -s libasmrun.a $(DESTDIR)$(LIBDIR)/libasmrunp.a
-
- install-prof:
-- cp libasmrunp.a $(LIBDIR)/libasmrunp.a
-- cd $(LIBDIR); $(RANLIB) libasmrunp.a
-+ cp libasmrunp.a $(DESTDIR)$(LIBDIR)/libasmrunp.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libasmrunp.a
-
- power.o: power-$(SYSTEM).o
- cp power-$(SYSTEM).o power.o
-diff -ur ocaml-3.04--/byterun/Makefile ocaml-3.04/byterun/Makefile
---- ocaml-3.04--/byterun/Makefile Fri Dec 7 14:39:21 2001
-+++ ocaml-3.04/byterun/Makefile Sat Feb 2 01:48:21 2002
-@@ -47,17 +47,17 @@
- prims.o libcamlrund.a $(BYTECCLIBS)
-
- install:
-- cp ocamlrun$(EXE) $(BINDIR)/ocamlrun$(EXE)
-- cp libcamlrun.a $(LIBDIR)/libcamlrun.a
-- cd $(LIBDIR); $(RANLIB) libcamlrun.a
-- if test -d $(LIBDIR)/caml; then : ; else mkdir $(LIBDIR)/caml; fi
-- cp $(PUBLIC_INCLUDES) $(LIBDIR)/caml
-+ cp ocamlrun$(EXE) $(DESTDIR)$(BINDIR)/ocamlrun$(EXE)
-+ cp libcamlrun.a $(DESTDIR)$(LIBDIR)/libcamlrun.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libcamlrun.a
-+ if test -d $(DESTDIR)$(LIBDIR)/caml; then : ; else mkdir $(DESTDIR)$(LIBDIR)/caml; fi
-+ cp $(PUBLIC_INCLUDES) $(DESTDIR)$(LIBDIR)/caml
- sed -e '/#include ".*\/m.h/r ../config/m.h' \
- -e '/#include ".*\/s.h/r ../config/s.h' \
-- -e '/#include "/d' config.h > $(LIBDIR)/caml/config.h
-+ -e '/#include "/d' config.h > $(DESTDIR)$(LIBDIR)/caml/config.h
- sed -e '/#include ".*gc\.h"/d' \
- -e '/#define Alloc_small/,/^}/d' \
-- -e '/Modify/,/^}/d' memory.h > $(LIBDIR)/caml/memory.h
-+ -e '/Modify/,/^}/d' memory.h > $(DESTDIR)$(LIBDIR)/caml/memory.h
-
- libcamlrun.a: $(OBJS)
- ar rc libcamlrun.a $(OBJS)
-diff -ur ocaml-3.04--/camlp4/Makefile ocaml-3.04/camlp4/Makefile
---- ocaml-3.04--/camlp4/Makefile Mon Sep 10 11:56:13 2001
-+++ ocaml-3.04/camlp4/Makefile Sat Feb 2 01:48:21 2002
-@@ -28,7 +28,9 @@
- for i in $(DIRS); do (cd $$i; $(MAKE) depend); done
-
- install:
-- for i in $(DIRS); do (cd $$i; $(MAKE) install BINDIR=$(BINDIR) LIBDIR=$(LIBDIR) MANDIR=$(MANDIR)); done
-+ for i in $(DIRS); do \
-+ (cd $$i; $(MAKE) install) || exit $$?; \
-+ done
-
- clean::
- $(MAKE) clean_hot clean_cold
-diff -ur ocaml-3.04--/camlp4/camlp4/Makefile ocaml-3.04/camlp4/camlp4/Makefile
---- ocaml-3.04--/camlp4/camlp4/Makefile Wed Oct 3 01:25:20 2001
-+++ ocaml-3.04/camlp4/camlp4/Makefile Sat Feb 2 01:48:21 2002
-@@ -61,10 +61,10 @@
- done
-
- install:
-- -$(MKDIR) $(BINDIR)
-- cp $(CAMLP4) $(BINDIR)/.
-- cp mLast.mli quotation.mli pcaml.mli spretty.mli $(LIBDIR)/.
-- cp mLast.cmi quotation.cmi ast2pt.cmi pcaml.cmi spretty.cmi $(LIBDIR)/.
-- cp camlp4.cma $(LIBDIR)/.
-+ -$(MKDIR) $(DESTDIR)$(BINDIR)
-+ cp $(CAMLP4) $(DESTDIR)$(BINDIR)/.
-+ cp mLast.mli quotation.mli pcaml.mli spretty.mli $(DESTDIR)$(LIBDIR)/.
-+ cp mLast.cmi quotation.cmi ast2pt.cmi pcaml.cmi spretty.cmi $(DESTDIR)$(LIBDIR)/.
-+ cp camlp4.cma $(DESTDIR)$(LIBDIR)/.
-
- include .depend
-diff -ur ocaml-3.04--/camlp4/etc/Makefile ocaml-3.04/camlp4/etc/Makefile
---- ocaml-3.04--/camlp4/etc/Makefile Fri Sep 28 14:11:43 2001
-+++ ocaml-3.04/camlp4/etc/Makefile Sat Feb 2 01:48:21 2002
-@@ -48,14 +48,14 @@
- get_promote:
-
- install:
-- -$(MKDIR) $(LIBDIR) $(BINDIR)
-- cp $(OBJS) $(LIBDIR)/.
-- cp $(INTF) $(LIBDIR)/.
-- cp lib.sml $(LIBDIR)/.
-- cp camlp4o$(EXE) $(BINDIR)/.
-- if test -f $(COPT); then cp $(COPT) $(BINDIR)/.; fi
-- cp mkcamlp4.sh $(BINDIR)/mkcamlp4
-- chmod a+x $(BINDIR)/mkcamlp4
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR) $(DESTDIR)$(BINDIR)
-+ cp $(OBJS) $(DESTDIR)$(LIBDIR)/.
-+ cp $(INTF) $(DESTDIR)$(LIBDIR)/.
-+ cp lib.sml $(DESTDIR)$(LIBDIR)/.
-+ cp camlp4o$(EXE) $(DESTDIR)$(BINDIR)/.
-+ if test -f $(COPT); then cp $(COPT) $(DESTDIR)$(BINDIR)/.; fi
-+ cp mkcamlp4.sh $(DESTDIR)$(BINDIR)/mkcamlp4
-+ chmod a+x $(DESTDIR)$(BINDIR)/mkcamlp4
-
- pa_lisp.cmo: pa_lispr.cmo
- pr_extend.cmo: pa_extfun.cmo
-diff -ur ocaml-3.04--/camlp4/lib/Makefile ocaml-3.04/camlp4/lib/Makefile
---- ocaml-3.04--/camlp4/lib/Makefile Fri Sep 7 09:58:12 2001
-+++ ocaml-3.04/camlp4/lib/Makefile Sat Feb 2 01:48:21 2002
-@@ -36,17 +36,17 @@
- done
-
- install:
-- -$(MKDIR) $(LIBDIR)
-- cp $(TARGET) *.mli $(LIBDIR)/.
-- cp *.cmi $(LIBDIR)/.
-- if test -f $(TARGET:.cma=.cmxa); then $(MAKE) installopt LIBDIR=$(LIBDIR); fi
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR)
-+ cp $(TARGET) *.mli $(DESTDIR)$(LIBDIR)/.
-+ cp *.cmi $(DESTDIR)$(LIBDIR)/.
-+ if test -f $(TARGET:.cma=.cmxa); then $(MAKE) installopt; fi
-
- installopt:
-- cp $(TARGET:.cma=.cmxa) *.cmx $(LIBDIR)/.
-+ cp $(TARGET:.cma=.cmxa) *.cmx $(DESTDIR)$(LIBDIR)/.
- if test -f $(TARGET:.cma=.lib); then \
-- cp $(TARGET:.cma=.lib) $(LIBDIR)/.; \
-+ cp $(TARGET:.cma=.lib) $(DESTDIR)$(LIBDIR)/.; \
- else \
-- tar cf - $(TARGET:.cma=.a) | (cd $(LIBDIR)/.; tar xf -); \
-+ tar cf - $(TARGET:.cma=.a) | (cd $(DESTDIR)$(LIBDIR)/.; tar xf -); \
- fi
-
- include .depend
-diff -ur ocaml-3.04--/camlp4/meta/Makefile ocaml-3.04/camlp4/meta/Makefile
---- ocaml-3.04--/camlp4/meta/Makefile Sat Feb 2 01:06:30 2002
-+++ ocaml-3.04/camlp4/meta/Makefile Sat Feb 2 01:48:21 2002
-@@ -42,10 +42,10 @@
- done
-
- install:
-- -$(MKDIR) $(LIBDIR) $(BINDIR)
-- cp $(OBJS) $(LIBDIR)/.
-- cp pa_ifdef.cmi $(LIBDIR)/.
-- cp camlp4r$(EXE) $(BINDIR)/.
-- if test -f $(COPT); then cp $(COPT) $(BINDIR)/.; fi
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR) $(DESTDIR)$(BINDIR)
-+ cp $(OBJS) $(DESTDIR)$(LIBDIR)/.
-+ cp pa_ifdef.cmi $(DESTDIR)$(LIBDIR)/.
-+ cp camlp4r$(EXE) $(DESTDIR)$(BINDIR)/.
-+ if test -f $(COPT); then cp $(COPT) $(DESTDIR)$(BINDIR)/.; fi
-
- include .depend
-diff -ur ocaml-3.04--/camlp4/ocaml_src/camlp4/Makefile ocaml-3.04/camlp4/ocaml_src/camlp4/Makefile
---- ocaml-3.04--/camlp4/ocaml_src/camlp4/Makefile Wed Oct 3 11:40:12 2001
-+++ ocaml-3.04/camlp4/ocaml_src/camlp4/Makefile Sat Feb 2 01:48:21 2002
-@@ -61,10 +61,10 @@
- done
-
- install:
-- -$(MKDIR) $(BINDIR)
-- cp $(CAMLP4) $(BINDIR)/.
-- cp mLast.mli quotation.mli pcaml.mli spretty.mli $(LIBDIR)/.
-- cp mLast.cmi quotation.cmi ast2pt.cmi pcaml.cmi spretty.cmi $(LIBDIR)/.
-- cp camlp4.cma $(LIBDIR)/.
-+ -$(MKDIR) $(DESTDIR)$(BINDIR)
-+ cp $(CAMLP4) $(DESTDIR)$(BINDIR)/.
-+ cp mLast.mli quotation.mli pcaml.mli spretty.mli $(DESTDIR)$(LIBDIR)/.
-+ cp mLast.cmi quotation.cmi ast2pt.cmi pcaml.cmi spretty.cmi $(DESTDIR)$(LIBDIR)/.
-+ cp camlp4.cma $(DESTDIR)$(LIBDIR)/.
-
- include .depend
-diff -ur ocaml-3.04--/camlp4/ocaml_src/lib/Makefile ocaml-3.04/camlp4/ocaml_src/lib/Makefile
---- ocaml-3.04--/camlp4/ocaml_src/lib/Makefile Fri Sep 7 09:20:28 2001
-+++ ocaml-3.04/camlp4/ocaml_src/lib/Makefile Sat Feb 2 01:48:21 2002
-@@ -36,17 +36,17 @@
- done
-
- install:
-- -$(MKDIR) $(LIBDIR)
-- cp $(TARGET) *.mli $(LIBDIR)/.
-- cp *.cmi $(LIBDIR)/.
-- if test -f $(TARGET:.cma=.cmxa); then $(MAKE) installopt LIBDIR=$(LIBDIR); fi
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR)
-+ cp $(TARGET) *.mli $(DESTDIR)$(LIBDIR)/.
-+ cp *.cmi $(DESTDIR)$(LIBDIR)/.
-+ if test -f $(TARGET:.cma=.cmxa); then $(MAKE) installopt; fi
-
- installopt:
-- cp $(TARGET:.cma=.cmxa) *.cmx $(LIBDIR)/.
-+ cp $(TARGET:.cma=.cmxa) *.cmx $(DESTDIR)$(LIBDIR)/.
- if test -f $(TARGET:.cma=.lib); then \
-- cp $(TARGET:.cma=.lib) $(LIBDIR)/.; \
-+ cp $(TARGET:.cma=.lib) $(DESTDIR)$(LIBDIR)/.; \
- else \
-- tar cf - $(TARGET:.cma=.a) | (cd $(LIBDIR)/.; tar xf -); \
-+ tar cf - $(TARGET:.cma=.a) | (cd $(DESTDIR)$(LIBDIR)/.; tar xf -); \
- fi
-
- include .depend
-diff -ur ocaml-3.04--/camlp4/ocaml_src/meta/Makefile ocaml-3.04/camlp4/ocaml_src/meta/Makefile
---- ocaml-3.04--/camlp4/ocaml_src/meta/Makefile Sat Feb 2 01:06:30 2002
-+++ ocaml-3.04/camlp4/ocaml_src/meta/Makefile Sat Feb 2 01:48:21 2002
-@@ -42,10 +42,10 @@
- done
-
- install:
-- -$(MKDIR) $(LIBDIR) $(BINDIR)
-- cp $(OBJS) $(LIBDIR)/.
-- cp pa_ifdef.cmi $(LIBDIR)/.
-- cp camlp4r$(EXE) $(BINDIR)/.
-- if test -f $(COPT); then cp $(COPT) $(BINDIR)/.; fi
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR) $(DESTDIR)$(BINDIR)
-+ cp $(OBJS) $(DESTDIR)$(LIBDIR)/.
-+ cp pa_ifdef.cmi $(DESTDIR)$(LIBDIR)/.
-+ cp camlp4r$(EXE) $(DESTDIR)$(BINDIR)/.
-+ if test -f $(COPT); then cp $(COPT) $(DESTDIR)$(BINDIR)/.; fi
-
- include .depend
-diff -ur ocaml-3.04--/camlp4/ocaml_src/odyl/Makefile ocaml-3.04/camlp4/ocaml_src/odyl/Makefile
---- ocaml-3.04--/camlp4/ocaml_src/odyl/Makefile Wed Oct 3 14:06:22 2001
-+++ ocaml-3.04/camlp4/ocaml_src/odyl/Makefile Sat Feb 2 01:48:21 2002
-@@ -49,8 +49,8 @@
- compare:
-
- install:
-- -$(MKDIR) $(LIBDIR) $(BINDIR)
-- cp odyl.cmo odyl.cma $(LIBDIR)
-- cp odyl$(EXE) $(BINDIR)/.
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR) $(DESTDIR)$(BINDIR)
-+ cp odyl.cmo odyl.cma $(DESTDIR)$(LIBDIR)
-+ cp odyl$(EXE) $(DESTDIR)$(BINDIR)/.
-
- include .depend
-diff -ur ocaml-3.04--/camlp4/ocpp/Makefile ocaml-3.04/camlp4/ocpp/Makefile
---- ocaml-3.04--/camlp4/ocpp/Makefile Fri Sep 7 09:57:04 2001
-+++ ocaml-3.04/camlp4/ocpp/Makefile Sat Feb 2 01:48:21 2002
-@@ -24,9 +24,9 @@
- rm -f *.cm[ioa] *.pp[io] *.o *.out *.bak .*.bak crc.ml ocpp$(EXE)
-
- install:
-- -$(MKDIR) $(LIBDIR) $(BINDIR)
-- cp $(OBJS) $(LIBDIR)
-- cp ocpp$(EXE) $(BINDIR)/.
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR) $(DESTDIR)$(BINDIR)
-+ cp $(OBJS) $(DESTDIR)$(LIBDIR)
-+ cp ocpp$(EXE) $(DESTDIR)$(BINDIR)/.
-
- depend:
-
-diff -ur ocaml-3.04--/camlp4/odyl/Makefile ocaml-3.04/camlp4/odyl/Makefile
---- ocaml-3.04--/camlp4/odyl/Makefile Wed Oct 3 13:50:08 2001
-+++ ocaml-3.04/camlp4/odyl/Makefile Sat Feb 2 01:48:21 2002
-@@ -49,8 +49,8 @@
- compare:
-
- install:
-- -$(MKDIR) $(LIBDIR) $(BINDIR)
-- cp odyl.cmo odyl.cma $(LIBDIR)
-- cp odyl$(EXE) $(BINDIR)/.
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR) $(DESTDIR)$(BINDIR)
-+ cp odyl.cmo odyl.cma $(DESTDIR)$(LIBDIR)
-+ cp odyl$(EXE) $(DESTDIR)$(BINDIR)/.
-
- include .depend
-diff -ur ocaml-3.04--/camlp4/top/Makefile ocaml-3.04/camlp4/top/Makefile
---- ocaml-3.04--/camlp4/top/Makefile Sat Sep 8 12:45:45 2001
-+++ ocaml-3.04/camlp4/top/Makefile Sat Feb 2 01:48:21 2002
-@@ -41,7 +41,7 @@
- get_promote:
-
- install:
-- -$(MKDIR) $(LIBDIR)
-- cp $(TARGET) $(LIBDIR)/.
-+ -$(MKDIR) $(DESTDIR)$(LIBDIR)
-+ cp $(TARGET) $(DESTDIR)$(LIBDIR)/.
-
- include .depend
-diff -ur ocaml-3.04--/debugger/Makefile ocaml-3.04/debugger/Makefile
---- ocaml-3.04--/debugger/Makefile Tue Oct 30 11:02:42 2001
-+++ ocaml-3.04/debugger/Makefile Sat Feb 2 01:48:21 2002
-@@ -79,7 +79,7 @@
- $(CAMLC) $(LINKFLAGS) -o ocamldebug$(EXE) $(OTHEROBJS) $(OBJS)
-
- install:
-- cp ocamldebug$(EXE) $(BINDIR)/ocamldebug$(EXE)
-+ cp ocamldebug$(EXE) $(DESTDIR)$(BINDIR)/ocamldebug$(EXE)
-
- clean::
- rm -f ocamldebug$(EXE)
-diff -ur ocaml-3.04--/emacs/Makefile ocaml-3.04/emacs/Makefile
---- ocaml-3.04--/emacs/Makefile Wed Nov 17 19:57:32 1999
-+++ ocaml-3.04/emacs/Makefile Sat Feb 2 01:48:21 2002
-@@ -38,9 +38,9 @@
-
- simple-install:
- @echo "Installing in $(EMACSDIR)..."
-- if test -d $(EMACSDIR); then : ; else mkdir -p $(EMACSDIR); fi
-- cp $(FILES) $(EMACSDIR)
-- cd $(EMACSDIR); $(EMACS) --batch --eval '$(COMPILECMD)'
-+ if test -d $(DESTDIR)$(EMACSDIR); then : ; else mkdir -p $(DESTDIR)$(EMACSDIR); fi
-+ cp $(FILES) $(DESTDIR)$(EMACSDIR)
-+ cd $(DESTDIR)$(EMACSDIR); $(EMACS) --batch --eval '$(COMPILECMD)'
-
- ocamltags: ocamltags.in
- sed -e 's:@EMACS@:$(EMACS):' ocamltags.in >ocamltags
-diff -ur ocaml-3.04--/man/Makefile ocaml-3.04/man/Makefile
---- ocaml-3.04--/man/Makefile Wed Nov 17 19:57:40 1999
-+++ ocaml-3.04/man/Makefile Sat Feb 2 01:48:21 2002
-@@ -15,6 +15,6 @@
- include ../config/Makefile
-
- install:
-- for i in *.m; do cp $$i $(MANDIR)/`basename $$i .m`.$(MANEXT); done
-- echo '.so man$(MANEXT)/ocamlc.$(MANEXT)' > $(MANDIR)/ocamlc.opt.$(MANEXT)
-- echo '.so man$(MANEXT)/ocamlopt.$(MANEXT)' > $(MANDIR)/ocamlopt.opt.$(MANEXT)
-+ for i in *.m; do cp $$i $(DESTDIR)$(MANDIR)/`basename $$i .m`.$(MANEXT); done
-+ echo '.so man$(MANEXT)/ocamlc.$(MANEXT)' > $(DESTDIR)$(MANDIR)/ocamlc.opt.$(MANEXT)
-+ echo '.so man$(MANEXT)/ocamlopt.$(MANEXT)' > $(DESTDIR)$(MANDIR)/ocamlopt.opt.$(MANEXT)
-diff -ur ocaml-3.04--/otherlibs/bigarray/Makefile ocaml-3.04/otherlibs/bigarray/Makefile
---- ocaml-3.04--/otherlibs/bigarray/Makefile Fri Dec 7 14:39:49 2001
-+++ ocaml-3.04/otherlibs/bigarray/Makefile Sat Feb 2 01:48:21 2002
-@@ -40,14 +40,14 @@
- $(CAML_OBJS:.cmo=.cmx)
-
- install:
-- if test -f dllbigarray.so; then cp dllbigarray.so $(LIBDIR)/dllbigarray.so; fi
-- cp bigarray.cmi bigarray.mli libbigarray.a bigarray.cma $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) libbigarray.a
-- cp bigarray.h $(LIBDIR)/caml/bigarray.h
-+ if test -f dllbigarray.so; then cp dllbigarray.so $(DESTDIR)$(LIBDIR)/dllbigarray.so; fi
-+ cp bigarray.cmi bigarray.mli libbigarray.a bigarray.cma $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libbigarray.a
-+ cp bigarray.h $(DESTDIR)$(LIBDIR)/caml/bigarray.h
-
- installopt:
-- cp bigarray.a $(CAML_OBJS:.cmo=.cmx) bigarray.cmxa $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) bigarray.a
-+ cp bigarray.a $(CAML_OBJS:.cmo=.cmx) bigarray.cmxa $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) bigarray.a
-
- partialclean:
- rm -f *.cm*
-diff -ur ocaml-3.04--/otherlibs/db/Makefile ocaml-3.04/otherlibs/db/Makefile
---- ocaml-3.04--/otherlibs/db/Makefile Fri Dec 7 14:39:50 2001
-+++ ocaml-3.04/otherlibs/db/Makefile Sat Feb 2 01:48:21 2002
-@@ -46,13 +46,13 @@
- rm -f *.a *.o
-
- install:
-- cp libmldb.a $(LIBDIR)/libmldb.a
-- cd $(LIBDIR); $(RANLIB) libmldb.a
-- cp db.cma db.cmi db.mli $(LIBDIR)
-+ cp libmldb.a $(DESTDIR)$(LIBDIR)/libmldb.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libmldb.a
-+ cp db.cma db.cmi db.mli $(DESTDIR)$(LIBDIR)
-
- installopt:
-- cp db.cmx db.cmxa db.a $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) db.a
-+ cp db.cmx db.cmxa db.a $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) db.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-
-diff -ur ocaml-3.04--/otherlibs/db/dbstubs.c ocaml-3.04/otherlibs/db/dbstubs.c
---- ocaml-3.04--/otherlibs/db/dbstubs.c Fri Dec 7 14:39:50 2001
-+++ ocaml-3.04/otherlibs/db/dbstubs.c Sat Feb 2 02:36:52 2002
-@@ -22,7 +22,7 @@
-
- #include <sys/types.h>
- #include <limits.h>
--#include <db.h>
-+#include <db_185.h>
- /* O_CREAT and others are not defined in db.h */
- #include <fcntl.h>
-
-diff -ur ocaml-3.04--/otherlibs/dbm/Makefile ocaml-3.04/otherlibs/dbm/Makefile
---- ocaml-3.04--/otherlibs/dbm/Makefile Fri Dec 7 14:39:51 2001
-+++ ocaml-3.04/otherlibs/dbm/Makefile Sat Feb 2 01:50:02 2002
-@@ -46,14 +46,14 @@
- rm -f *.a *.o *.so
-
- install:
-- if test -f dllmldbm.so; then cp dllmldbm.so $(LIBDIR)/dllmldbm.so; fi
-- cp libmldbm.a $(LIBDIR)/libmldbm.a
-- cd $(LIBDIR); $(RANLIB) libmldbm.a
-- cp dbm.cma dbm.cmi dbm.mli $(LIBDIR)
-+ if test -f dllmldbm.so; then cp dllmldbm.so $(DESTDIR)$(LIBDIR)/dllmldbm.so; fi
-+ cp libmldbm.a $(DESTDIR)$(LIBDIR)/libmldbm.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libmldbm.a
-+ cp dbm.cma dbm.cmi dbm.mli $(DESTDIR)$(LIBDIR)
-
- installopt:
-- cp dbm.cmx dbm.cmxa dbm.a $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) dbm.a
-+ cp dbm.cmx dbm.cmxa dbm.a $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) dbm.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-
-diff -ur ocaml-3.04--/otherlibs/dynlink/Makefile ocaml-3.04/otherlibs/dynlink/Makefile
---- ocaml-3.04--/otherlibs/dynlink/Makefile Fri Dec 7 14:39:51 2001
-+++ ocaml-3.04/otherlibs/dynlink/Makefile Sat Feb 2 01:48:21 2002
-@@ -38,7 +38,7 @@
- $(CAMLC) $(COMPFLAGS) -o extract_crc dynlink.cma extract_crc.cmo
-
- install:
-- cp dynlink.cmi dynlink.cma dynlink.mli extract_crc $(LIBDIR)
-+ cp dynlink.cmi dynlink.cma dynlink.mli extract_crc $(DESTDIR)$(LIBDIR)
-
- installopt:
-
-diff -ur ocaml-3.04--/otherlibs/graph/Makefile ocaml-3.04/otherlibs/graph/Makefile
---- ocaml-3.04--/otherlibs/graph/Makefile Fri Dec 7 14:39:52 2001
-+++ ocaml-3.04/otherlibs/graph/Makefile Sat Feb 2 01:48:21 2002
-@@ -49,14 +49,14 @@
- rm -f *.a *.so *.o
-
- install:
-- if test -f dllgraphics.so; then cp dllgraphics.so $(LIBDIR)/dllgraphics.so; fi
-- cp libgraphics.a $(LIBDIR)/libgraphics.a
-- cd $(LIBDIR); $(RANLIB) libgraphics.a
-- cp graphics.cm[ia] graphicsX11.cmi graphics.mli graphicsX11.mli $(LIBDIR)
-+ if test -f dllgraphics.so; then cp dllgraphics.so $(DESTDIR)$(LIBDIR)/dllgraphics.so; fi
-+ cp libgraphics.a $(DESTDIR)$(LIBDIR)/libgraphics.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libgraphics.a
-+ cp graphics.cm[ia] graphicsX11.cmi graphics.mli graphicsX11.mli $(DESTDIR)$(LIBDIR)
-
- installopt:
-- cp graphics.cmxa graphics.a $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) graphics.a
-+ cp graphics.cmxa graphics.a $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) graphics.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-
-diff -ur ocaml-3.04--/otherlibs/labltk/browser/Makefile ocaml-3.04/otherlibs/labltk/browser/Makefile
---- ocaml-3.04--/otherlibs/labltk/browser/Makefile Wed Oct 3 08:34:55 2001
-+++ ocaml-3.04/otherlibs/labltk/browser/Makefile Sat Feb 2 01:48:21 2002
-@@ -44,7 +44,7 @@
-
- install:
- if test -f ocamlbrowser$(EXE); then : ; \
-- cp ocamlbrowser$(EXE) $(BINDIR); fi
-+ cp ocamlbrowser$(EXE) $(DESTDIR)$(BINDIR); fi
-
- clean:
- rm -f *.cm? ocamlbrowser$(EXE) dummy.mli *~ *.orig
-diff -ur ocaml-3.04--/otherlibs/labltk/compiler/Makefile ocaml-3.04/otherlibs/labltk/compiler/Makefile
---- ocaml-3.04--/otherlibs/labltk/compiler/Makefile Thu Sep 6 10:52:25 2001
-+++ ocaml-3.04/otherlibs/labltk/compiler/Makefile Sat Feb 2 01:48:21 2002
-@@ -19,7 +19,7 @@
- rm -f *.cm* parser.ml parser.mli lexer.ml tkcompiler
-
- install:
-- cp tkcompiler $(LABLTKDIR)
-+ cp tkcompiler $(DESTDIR)$(LABLTKDIR)
-
- .SUFFIXES :
- .SUFFIXES : .mli .ml .cmi .cmo .mlp
-diff -ur ocaml-3.04--/otherlibs/labltk/jpf/Makefile ocaml-3.04/otherlibs/labltk/jpf/Makefile
---- ocaml-3.04--/otherlibs/labltk/jpf/Makefile Tue Feb 27 11:09:42 2001
-+++ ocaml-3.04/otherlibs/labltk/jpf/Makefile Sat Feb 2 01:48:21 2002
-@@ -21,10 +21,10 @@
- $(CAMLOPTLIBR) -o libjpf.cmxa $(OBJSX)
-
- install: libjpf.cma
-- cp $(OBJS:.cmo=.cmi) $(OBJS:.cmo=.mli) libjpf.cma $(LABLTKDIR)
-+ cp $(OBJS:.cmo=.cmi) $(OBJS:.cmo=.mli) libjpf.cma $(DESTDIR)$(LABLTKDIR)
-
- installopt: libjpf.cmxa
-- cp libjpf.cmxa libjpf.a $(OBJS:.cmo=.cmx) $(LABLTKDIR)
-+ cp libjpf.cmxa libjpf.a $(OBJS:.cmo=.cmx) $(DESTDIR)$(LABLTKDIR)
-
- clean:
- rm -f *.cm* *.o *.a *~ *test
-diff -ur ocaml-3.04--/otherlibs/labltk/lib/Makefile ocaml-3.04/otherlibs/labltk/lib/Makefile
---- ocaml-3.04--/otherlibs/labltk/lib/Makefile Tue Oct 30 10:32:31 2001
-+++ ocaml-3.04/otherlibs/labltk/lib/Makefile Sat Feb 2 01:48:21 2002
-@@ -45,28 +45,27 @@
- rm -f *.cm* *.ml *.mli *.o *.a labltktop$(EXE)
-
- install: labltk.cma labltktop$(EXE) labltk
-- if test -d $(LABLTKDIR); then : ; else mkdir $(LABLTKDIR); fi
-- if test `grep -s -c '^$(LABLTKDIR)$$' $(LIBDIR)/ld.conf || :` = 0; \
-- then echo $(LABLTKDIR) >> $(LIBDIR)/ld.conf; fi
-- cp $(WIDGETOBJS:.cmo=.cmi) tk.cmi $(LABLTKDIR)
-- cp labltk.cma labltktop$(EXE) $(LABLTKDIR)
-- chmod 644 $(LABLTKDIR)/*.cmi
-- chmod 644 $(LABLTKDIR)/labltk.cma
-- chmod 755 $(LABLTKDIR)/labltktop$(EXE)
-- @if test -d $(BINDIR); then : ; else mkdir $(BINDIR); fi
-- cp labltk $(BINDIR)
-- chmod 755 $(BINDIR)/labltk
-+ if test -d $(DESTDIR)$(LABLTKDIR); then : ; else mkdir $(DESTDIR)$(LABLTKDIR); fi
-+ if test `grep -s -c '^$(LABLTKDIR)$$' $(DESTDIR)$(LIBDIR)/ld.conf || :` = 0; \
-+ then echo $(LABLTKDIR) >> $(DESTDIR)$(LIBDIR)/ld.conf; fi
-+ cp $(WIDGETOBJS:.cmo=.cmi) tk.cmi $(DESTDIR)$(LABLTKDIR)
-+ cp labltk.cma labltktop$(EXE) $(DESTDIR)$(LABLTKDIR)
-+ chmod 644 $(DESTDIR)$(LABLTKDIR)/*.cmi
-+ chmod 644 $(DESTDIR)$(LABLTKDIR)/labltk.cma
-+ chmod 755 $(DESTDIR)$(LABLTKDIR)/labltktop$(EXE)
-+ @if test -d $(DESTDIR)$(BINDIR); then : ; else mkdir $(DESTDIR)$(BINDIR); fi
-+ cp labltk $(DESTDIR)$(BINDIR)
-+ chmod 755 $(DESTDIR)$(BINDIR)/labltk
-
-
- installopt: labltk.cmxa
-- @if test -d $(LABLTKDIR); then : ; else mkdir $(LABLTKDIR); fi
-- cp $(SUPPORTX) $(WIDGETOBJSX) tk.cmx $(LABLTKDIR)
-- cp labltk.cmxa labltk.a $(LABLTKDIR)
-- cd $(LABLTKDIR); $(RANLIB) labltk.a
-- chmod 644 $(LABLTKDIR)/*.cmx
-- chmod 644 $(LABLTKDIR)/labltk.cmxa
-- chmod 644 $(LABLTKDIR)/labltk.a
-- @if test -d $(BINDIR); then : ; else mkdir $(BINDIR); fi
-+ @if test -d $(DESTDIR)$(LABLTKDIR); then : ; else mkdir $(DESTDIR)$(LABLTKDIR); fi
-+ cp $(SUPPORTX) $(WIDGETOBJSX) tk.cmx $(DESTDIR)$(LABLTKDIR)
-+ cp labltk.cmxa labltk.a $(DESTDIR)$(LABLTKDIR)
-+ cd $(DESTDIR)$(LABLTKDIR); $(RANLIB) labltk.a
-+ chmod 644 $(DESTDIR)$(LABLTKDIR)/*.cmx
-+ chmod 644 $(DESTDIR)$(LABLTKDIR)/labltk.cmxa
-+ chmod 644 $(DESTDIR)$(LABLTKDIR)/labltk.a
-
- .SUFFIXES :
- .SUFFIXES : .mli .ml .cmi .cmx .cmo .mlp
-diff -ur ocaml-3.04--/otherlibs/labltk/support/Makefile ocaml-3.04/otherlibs/labltk/support/Makefile
---- ocaml-3.04--/otherlibs/labltk/support/Makefile Mon Dec 3 01:26:38 2001
-+++ ocaml-3.04/otherlibs/labltk/support/Makefile Sat Feb 2 01:48:21 2002
-@@ -25,13 +25,13 @@
- widget.cmi widget.mli
-
- install: liblabltk41.a $(PUB)
-- if test -d $(LABLTKDIR); then : ; else mkdir $(LABLTKDIR); fi
-- cp $(PUB) liblabltk41.a $(LABLTKDIR)
-- cd $(LABLTKDIR); $(RANLIB) liblabltk41.a
-- cd $(LABLTKDIR); chmod 644 $(PUB) liblabltk41.a
-+ if test -d $(DESTDIR)$(LABLTKDIR); then : ; else mkdir $(DESTDIR)$(LABLTKDIR); fi
-+ cp $(PUB) liblabltk41.a $(DESTDIR)$(LABLTKDIR)
-+ cd $(DESTDIR)$(LABLTKDIR); $(RANLIB) liblabltk41.a
-+ cd $(DESTDIR)$(LABLTKDIR); chmod 644 $(PUB) liblabltk41.a
- if test -f dlllabltk41.so; then \
-- cp dlllabltk41.so $(LABLTKDIR)/dlllabltk41.so; \
-- chmod 644 $(LABLTKDIR)/dlllabltk41.so; fi
-+ cp dlllabltk41.so $(DESTDIR)$(LABLTKDIR)/dlllabltk41.so; \
-+ chmod 644 $(DESTDIR)$(LABLTKDIR)/dlllabltk41.so; fi
-
- clean :
- rm -f *.cm* *.o *.a
-diff -ur ocaml-3.04--/otherlibs/num/Makefile ocaml-3.04/otherlibs/num/Makefile
---- ocaml-3.04--/otherlibs/num/Makefile Fri Dec 7 14:40:14 2001
-+++ ocaml-3.04/otherlibs/num/Makefile Sat Feb 2 01:48:21 2002
-@@ -52,14 +52,14 @@
- $(CAMLOBJS:.cmo=.cmx): ../../ocamlopt
-
- install:
-- if test -f dllnums.so; then cp dllnums.so $(LIBDIR)/dllnums.so; fi
-- cp libnums.a $(LIBDIR)/libnums.a
-- cd $(LIBDIR); $(RANLIB) libnums.a
-- cp nums.cma $(CMIFILES) $(CMIFILES:.cmi=.mli) $(LIBDIR)
-+ if test -f dllnums.so; then cp dllnums.so $(DESTDIR)$(LIBDIR)/dllnums.so; fi
-+ cp libnums.a $(DESTDIR)$(LIBDIR)/libnums.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libnums.a
-+ cp nums.cma $(CMIFILES) $(CMIFILES:.cmi=.mli) $(DESTDIR)$(LIBDIR)
-
- installopt:
-- cp $(CAMLOBJS:.cmo=.cmx) nums.cmxa nums.a $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) nums.a
-+ cp $(CAMLOBJS:.cmo=.cmx) nums.cmxa nums.a $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) nums.a
-
- partialclean:
- rm -f *.cm*
-diff -ur ocaml-3.04--/otherlibs/str/Makefile ocaml-3.04/otherlibs/str/Makefile
---- ocaml-3.04--/otherlibs/str/Makefile Fri Dec 7 14:40:17 2001
-+++ ocaml-3.04/otherlibs/str/Makefile Sat Feb 2 01:48:21 2002
-@@ -52,14 +52,14 @@
- cd $(REGEXLIB); if test -f Makefile; then $(MAKE) distclean; else exit 0; fi
-
- install:
-- if test -f dllstr.so; then cp dllstr.so $(LIBDIR)/dllstr.so; fi
-- cp libstr.a $(LIBDIR)/libstr.a
-- cd $(LIBDIR); $(RANLIB) libstr.a
-- cp str.cma str.cmi str.mli $(LIBDIR)
-+ if test -f dllstr.so; then cp dllstr.so $(DESTDIR)$(LIBDIR)/dllstr.so; fi
-+ cp libstr.a $(DESTDIR)$(LIBDIR)/libstr.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libstr.a
-+ cp str.cma str.cmi str.mli $(DESTDIR)$(LIBDIR)
-
- installopt:
-- cp str.cmx str.cmxa str.a $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) str.a
-+ cp str.cmx str.cmxa str.a $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) str.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-
-diff -ur ocaml-3.04--/otherlibs/systhreads/Makefile ocaml-3.04/otherlibs/systhreads/Makefile
---- ocaml-3.04--/otherlibs/systhreads/Makefile Fri Dec 7 14:40:18 2001
-+++ ocaml-3.04/otherlibs/systhreads/Makefile Sat Feb 2 01:48:21 2002
-@@ -69,19 +69,19 @@
- rm -f $(GENFILES)
-
- install:
-- if test -f dllthreads.so; then cp dllthreads.so $(LIBDIR)/dllthreads.so; fi
-- cp libthreads.a $(LIBDIR)/libthreads.a
-- cd $(LIBDIR); $(RANLIB) libthreads.a
-- if test -d $(LIBDIR)/threads; then :; else mkdir $(LIBDIR)/threads; fi
-- cp $(THREAD_OBJS:.cmo=.cmi) threads.cma $(LIBDIR)/threads
-- rm -f $(LIBDIR)/threads/stdlib.cma
-- cp thread.mli mutex.mli condition.mli event.mli threadUnix.mli $(LIBDIR)
-+ if test -f dllthreads.so; then cp dllthreads.so $(DESTDIR)$(LIBDIR)/dllthreads.so; fi
-+ cp libthreads.a $(DESTDIR)$(LIBDIR)/libthreads.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libthreads.a
-+ if test -d $(DESTDIR)$(LIBDIR)/threads; then :; else mkdir $(DESTDIR)$(LIBDIR)/threads; fi
-+ cp $(THREAD_OBJS:.cmo=.cmi) threads.cma $(DESTDIR)$(LIBDIR)/threads
-+ rm -f $(DESTDIR)$(LIBDIR)/threads/stdlib.cma
-+ cp thread.mli mutex.mli condition.mli event.mli threadUnix.mli $(DESTDIR)$(LIBDIR)
-
- installopt:
-- cp libthreadsnat.a $(LIBDIR)/libthreadsnat.a
-- cd $(LIBDIR); $(RANLIB) libthreadsnat.a
-- cp $(THREAD_OBJS:.cmo=.cmx) threads.cmxa threads.a $(LIBDIR)/threads
-- cd $(LIBDIR)/threads; $(RANLIB) threads.a
-+ cp libthreadsnat.a $(DESTDIR)$(LIBDIR)/libthreadsnat.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libthreadsnat.a
-+ cp $(THREAD_OBJS:.cmo=.cmx) threads.cmxa threads.a $(DESTDIR)$(LIBDIR)/threads
-+ cd $(DESTDIR)$(LIBDIR)/threads; $(RANLIB) threads.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-
-diff -ur ocaml-3.04--/otherlibs/threads/Makefile ocaml-3.04/otherlibs/threads/Makefile
---- ocaml-3.04--/otherlibs/threads/Makefile Fri Dec 7 14:40:21 2001
-+++ ocaml-3.04/otherlibs/threads/Makefile Sat Feb 2 01:48:21 2002
-@@ -96,12 +96,12 @@
- rm -f pervasives.mli marshal.mli unix.mli
-
- install:
-- if test -f dllthreads.so; then cp dllthreads.so $(LIBDIR)/dllthreads.so; fi
-- cp libthreads.a $(LIBDIR)/libthreads.a
-- cd $(LIBDIR); $(RANLIB) libthreads.a
-- if test -d $(LIBDIR)/threads; then : ; else mkdir $(LIBDIR)/threads; fi
-- cp thread.cmi mutex.cmi condition.cmi event.cmi threadUnix.cmi threads.cma stdlib.cma unix.cma $(LIBDIR)/threads
-- cp thread.mli mutex.mli condition.mli event.mli threadUnix.mli $(LIBDIR)
-+ if test -f dllthreads.so; then cp dllthreads.so $(DESTDIR)$(LIBDIR)/dllthreads.so; fi
-+ cp libthreads.a $(DESTDIR)$(LIBDIR)/libthreads.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libthreads.a
-+ if test -d $(DESTDIR)$(LIBDIR)/threads; then : ; else mkdir $(DESTDIR)$(LIBDIR)/threads; fi
-+ cp thread.cmi mutex.cmi condition.cmi event.cmi threadUnix.cmi threads.cma stdlib.cma unix.cma $(DESTDIR)$(LIBDIR)/threads
-+ cp thread.mli mutex.mli condition.mli event.mli threadUnix.mli $(DESTDIR)$(LIBDIR)
-
- installopt:
-
-diff -ur ocaml-3.04--/otherlibs/unix/Makefile ocaml-3.04/otherlibs/unix/Makefile
---- ocaml-3.04--/otherlibs/unix/Makefile Fri Dec 7 14:40:24 2001
-+++ ocaml-3.04/otherlibs/unix/Makefile Sat Feb 2 01:48:21 2002
-@@ -64,14 +64,14 @@
- rm -f *.a *.o *.so
-
- install:
-- if test -f dllunix.so; then cp dllunix.so $(LIBDIR)/dllunix.so; fi
-- cp libunix.a $(LIBDIR)/libunix.a
-- cd $(LIBDIR); $(RANLIB) libunix.a
-- cp unix.cma $(MLOBJS:.cmo=.cmi) $(MLOBJS:.cmo=.mli) $(LIBDIR)
-+ if test -f dllunix.so; then cp dllunix.so $(DESTDIR)$(LIBDIR)/dllunix.so; fi
-+ cp libunix.a $(DESTDIR)$(LIBDIR)/libunix.a
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) libunix.a
-+ cp unix.cma $(MLOBJS:.cmo=.cmi) $(MLOBJS:.cmo=.mli) $(DESTDIR)$(LIBDIR)
-
- installopt:
-- cp $(MLOBJS:.cmo=.cmx) unix.cmxa unix.a $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) unix.a
-+ cp $(MLOBJS:.cmo=.cmx) unix.cmxa unix.a $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) unix.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-
-diff -ur ocaml-3.04--/stdlib/Makefile ocaml-3.04/stdlib/Makefile
---- ocaml-3.04--/stdlib/Makefile Fri Dec 7 14:40:48 2001
-+++ ocaml-3.04/stdlib/Makefile Sat Feb 2 01:48:21 2002
-@@ -45,23 +45,23 @@
- allopt-prof: stdlib.p.cmxa std_exit.p.cmx
-
- install:
-- cp stdlib.cma std_exit.cmo *.cmi *.mli *.ml camlheader camlheader_ur $(LIBDIR)
-+ cp stdlib.cma std_exit.cmo *.cmi *.mli *.ml camlheader camlheader_ur $(DESTDIR)$(LIBDIR)
-
- installopt: installopt-default installopt-$(PROFILING)
-
- installopt-default:
-- cp stdlib.cmxa stdlib.a std_exit.o *.cmx $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) stdlib.a
-+ cp stdlib.cmxa stdlib.a std_exit.o *.cmx $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) stdlib.a
-
- installopt-noprof:
-- rm -f $(LIBDIR)/stdlib.p.cmxa; ln -s stdlib.cmxa $(LIBDIR)/stdlib.p.cmxa
-- rm -f $(LIBDIR)/stdlib.p.a; ln -s stdlib.a $(LIBDIR)/stdlib.p.a
-- rm -f $(LIBDIR)/std_exit.p.cmx; ln -s std_exit.cmx $(LIBDIR)/std_exit.p.cmx
-- rm -f $(LIBDIR)/std_exit.p.o; ln -s std_exit.o $(LIBDIR)/std_exit.p.o
-+ rm -f $(DESTDIR)$(LIBDIR)/stdlib.p.cmxa; ln -s stdlib.cmxa $(DESTDIR)$(LIBDIR)/stdlib.p.cmxa
-+ rm -f $(DESTDIR)$(LIBDIR)/stdlib.p.a; ln -s stdlib.a $(DESTDIR)$(LIBDIR)/stdlib.p.a
-+ rm -f $(DESTDIR)$(LIBDIR)/std_exit.p.cmx; ln -s std_exit.cmx $(DESTDIR)$(LIBDIR)/std_exit.p.cmx
-+ rm -f $(DESTDIR)$(LIBDIR)/std_exit.p.o; ln -s std_exit.o $(DESTDIR)$(LIBDIR)/std_exit.p.o
-
- installopt-prof:
-- cp stdlib.p.cmxa stdlib.p.a std_exit.p.cmx std_exit.p.o $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) stdlib.p.a
-+ cp stdlib.p.cmxa stdlib.p.a std_exit.p.cmx std_exit.p.o $(DESTDIR)$(LIBDIR)
-+ cd $(DESTDIR)$(LIBDIR); $(RANLIB) stdlib.p.a
-
- stdlib.cma: $(OBJS)
- $(CAMLC) -a -o stdlib.cma $(ALLOBJS)
-diff -ur ocaml-3.04--/tools/Makefile ocaml-3.04/tools/Makefile
---- ocaml-3.04--/tools/Makefile Fri Dec 7 15:25:00 2001
-+++ ocaml-3.04/tools/Makefile Sat Feb 2 01:48:21 2002
-@@ -38,7 +38,7 @@
- rm -f ocamldep
-
- install::
-- cp ocamldep $(BINDIR)/ocamldep$(EXE)
-+ cp ocamldep $(DESTDIR)$(BINDIR)/ocamldep$(EXE)
-
- # The profiler
-
-@@ -54,9 +54,9 @@
- $(CAMLC) $(LINKFLAGS) -o ocamlcp main_args.cmo ocamlcp.cmo
-
- install::
-- cp ocamlprof $(BINDIR)/ocamlprof$(EXE)
-- cp ocamlcp $(BINDIR)/ocamlcp$(EXE)
-- cp profiling.cmi profiling.cmo $(LIBDIR)
-+ cp ocamlprof $(DESTDIR)$(BINDIR)/ocamlprof$(EXE)
-+ cp ocamlcp $(DESTDIR)$(BINDIR)/ocamlcp$(EXE)
-+ cp profiling.cmi profiling.cmo $(DESTDIR)$(LIBDIR)
-
- clean::
- rm -f ocamlprof ocamlcp
-@@ -68,7 +68,7 @@
- chmod +x ocamlmktop
-
- install::
-- cp ocamlmktop $(BINDIR)/ocamlmktop
-+ cp ocamlmktop $(DESTDIR)$(BINDIR)/ocamlmktop
-
- clean::
- rm -f ocamlmktop
-@@ -79,7 +79,7 @@
- $(CAMLC) $(LINKFLAGS) -o ocamlmklib ocamlmklib.cmo
-
- install::
-- cp ocamlmklib $(BINDIR)/ocamlmklib
-+ cp ocamlmklib $(DESTDIR)$(BINDIR)/ocamlmklib
-
- clean::
- rm -f ocamlmklib
-@@ -127,7 +127,7 @@
- $(CAMLLEX) lexer301.mll
-
- install::
-- cp scrapelabels $(LIBDIR)
-+ cp scrapelabels $(DESTDIR)$(LIBDIR)
-
- clean::
- rm -f scrapelabels lexer301.ml
-@@ -143,7 +143,7 @@
- $(ADDLABELS_IMPORTS) addlabels.ml
-
- install::
-- cp addlabels $(LIBDIR)
-+ cp addlabels $(DESTDIR)$(LIBDIR)
-
- clean::
- rm -f addlabels
+++ /dev/null
-diff -ur ocaml-3.07beta2/configure ocaml-3.07beta2-/configure
---- ocaml-3.07beta2/configure 2003-08-20 17:10:58.000000000 +0200
-+++ ocaml-3.07beta2-/configure 2003-08-26 11:12:29.000000000 +0200
-@@ -1225,51 +1225,12 @@
-
- # See if we can compile the dbm library
-
--dbm_include="not found"
--dbm_link="not found"
- use_gdbm_ndbm=no
--
--for dir in /usr/include /usr/include/db1 /usr/include/gdbm; do
-- if test -f $dir/ndbm.h; then
-- dbm_include=$dir
-- if sh ./hasgot dbm_open; then
-- dbm_link=""
-- elif sh ./hasgot -lndbm dbm_open; then
-- dbm_link="-lndbm"
-- elif sh ./hasgot -ldb1 dbm_open; then
-- dbm_link="-ldb1"
-- elif sh ./hasgot -lgdbm dbm_open; then
-- dbm_link="-lgdbm"
-- elif sh ./hasgot -lgdbm_compat -lgdbm dbm_open; then
-- dbm_link="-lgdbm_compat -lgdbm"
-- fi
-- break
-- fi
-- if test -f $dir/gdbm-ndbm.h; then
-- dbm_include=$dir
-- use_gdbm_ndbm=yes
-- if sh ./hasgot -lgdbm_compat -lgdbm dbm_open; then
-- dbm_link="-lgdbm_compat -lgdbm"
-- fi
-- break
-- fi
--done
--if test "$dbm_include" = "not found" || test "$dbm_link" = "not found"; then
-- echo "NDBM not found, the \"dbm\" library will not be supported."
--else
-- echo "NDBM found (in $dbm_include)"
-- if test "$dbm_include" = "/usr/include"; then
-- dbm_include=""
-- else
-- dbm_include="-I$dbm_include"
-- fi
-- echo "DBM_INCLUDES=$dbm_include" >> Makefile
-- echo "DBM_LINK=$dbm_link" >> Makefile
-- if test "$use_gdbm_ndbm" = "yes"; then
-- echo "#define DBM_USES_GDBM_NDBM" >> s.h
-- fi
-- otherlibraries="$otherlibraries dbm"
--fi
-+dbm_include=""
-+dbm_link="-ldb"
-+echo "DBM_INCLUDES=$dbm_include" >> Makefile
-+echo "DBM_LINK=$dbm_link" >> Makefile
-+otherlibraries="$otherlibraries dbm"
-
- # Look for tcl/tk
-
-diff -ur ocaml-3.07beta2/otherlibs/dbm/cldbm.c ocaml-3.07beta2-/otherlibs/dbm/cldbm.c
---- ocaml-3.07beta2/otherlibs/dbm/cldbm.c 2003-07-08 15:50:31.000000000 +0200
-+++ ocaml-3.07beta2-/otherlibs/dbm/cldbm.c 2003-08-26 11:11:19.000000000 +0200
-@@ -24,7 +24,8 @@
- #ifdef DBM_USES_GDBM_NDBM
- #include <gdbm-ndbm.h>
- #else
--#include <ndbm.h>
-+#define DB_DBM_HSEARCH 1
-+#include <db.h>
- #endif
-
- /* Quite close to sys_open_flags, but we need RDWR */
+++ /dev/null
---- utils/config.mlp.orig Mon Aug 17 05:00:36 1998
-+++ utils/config.mlp Thu Sep 10 19:11:08 1998
-@@ -49,3 +49,4 @@
- let ext_obj = "%%EXT_OBJ%%"
- let ext_asm = "%%EXT_ASM%%"
- let ext_lib = "%%EXT_LIB%%"
-+let ext_prof = "%%EXT_PROF%%"
---- utils/config.mli.orig Wed May 27 10:10:13 1998
-+++ utils/config.mli Thu Sep 10 19:14:58 1998
-@@ -73,3 +73,9 @@
- (* Extension for assembler files, e.g. [.s] under Unix. *)
- val ext_lib: string
- (* Extension for library files, e.g. [.a] under Unix. *)
-+val ext_prof: string
-+ (* [.p] For OSs that support gprof call graph profiling:
-+ * an extra extension for obj/asm/lib files.
-+ * The full extension would be created by adding both ext_prof
-+ * and corresponding ext_obj/asm/lib extension, e.g.
-+ * profiled version of name.a would be named name.p.a *)
---- asmcomp/asmgen.ml.orig Mon Apr 27 11:16:44 1998
-+++ asmcomp/asmgen.ml Thu Sep 10 19:23:26 1998
-@@ -82,6 +82,8 @@
- | Cdata dl -> Emit.data dl
-
- let compile_implementation prefixname (size, lam) =
-+ let ext_asm = if !Clflags.gprofile then ext_prof ^ ext_asm else ext_asm in
-+ let ext_obj = if !Clflags.gprofile then ext_prof ^ ext_obj else ext_obj in
- let asmfile =
- if !keep_asm_file
- then prefixname ^ ext_asm
---- asmcomp/asmlibrarian.mli.orig Tue Apr 30 10:42:09 1996
-+++ asmcomp/asmlibrarian.mli Thu Sep 10 20:08:16 1998
-@@ -11,6 +11,10 @@
-
- (* $Id$ *)
-
-+(* Get filename based on the gprofile flag *)
-+
-+val get_filename: string -> string -> string
-+
- (* Build libraries of .cmx files *)
-
- val create_archive: string list -> string -> unit
---- asmcomp/asmlink.ml.orig Thu Aug 6 09:27:36 1998
-+++ asmcomp/asmlink.ml Thu Sep 10 20:15:21 1998
-@@ -173,7 +173,7 @@
- let call_linker file_list startup_file =
- let libname =
- if !Clflags.gprofile
-- then "libasmrunp" ^ ext_lib
-+ then "libasmrun" ^ ext_prof ^ ext_lib
- else "libasmrun" ^ ext_lib in
- let runtime_lib =
- try
-@@ -229,19 +229,18 @@
- with Not_found ->
- fatal_error "Asmlink.object_file_name: not found" in
- if Filename.check_suffix file_name ".cmx" then
-- Filename.chop_suffix file_name ".cmx" ^ ext_obj
-+ Asmlibrarian.get_filename (Filename.chop_suffix file_name ".cmx") ext_obj
- else if Filename.check_suffix file_name ".cmxa" then
-- Filename.chop_suffix file_name ".cmxa" ^ ext_lib
-+ Asmlibrarian.get_filename (Filename.chop_suffix file_name ".cmxa") ext_lib
- else
- fatal_error "Asmlink.object_file_name: bad ext"
-
- (* Main entry point *)
-
- let link objfiles =
-- let objfiles =
-- if !Clflags.gprofile
-- then "stdlib.p.cmxa" :: (objfiles @ ["std_exit.p.cmx"])
-- else "stdlib.cmxa" :: (objfiles @ ["std_exit.cmx"]) in
-+ let ext_asm = if !Clflags.gprofile then ext_prof ^ ext_asm else ext_asm in
-+ let ext_obj = if !Clflags.gprofile then ext_prof ^ ext_obj else ext_obj in
-+ let objfiles = "stdlib.cmxa" :: (objfiles @ ["std_exit.cmx"]) in
- let units_tolink = List.fold_right scan_file objfiles [] in
- Array.iter remove_required Runtimedef.builtin_exceptions;
- if not (StringSet.is_empty !missing_globals) then
---- asmcomp/asmlibrarian.ml.orig Thu Nov 7 05:55:00 1996
-+++ asmcomp/asmlibrarian.ml Thu Sep 10 21:10:52 1998
-@@ -23,6 +23,17 @@
-
- exception Error of error
-
-+let get_filename basename ext =
-+ if !Clflags.gprofile then begin
-+ let profname = basename ^ ext_prof ^ ext in
-+ if Sys.file_exists profname then profname else
-+ let unprofname = basename ^ ext in
-+ print_string "Warning: Profiled file ";
-+ print_string profname;
-+ print_string " not found, using the unprofiled one. The gprof call graph timing information would be inaccurate.\n";
-+ unprofname
-+ end else basename ^ ext
-+
- let read_info name =
- let filename =
- try
-@@ -36,9 +47,10 @@
- The linker, which is the only one that reads .cmxa files, does not
- need the approximation. *)
- info.ui_approx <- Clambda.Value_unknown;
-- (Filename.chop_suffix filename ".cmx" ^ ext_obj, (info, crc))
-+ (get_filename (Filename.chop_suffix filename ".cmx") ext_obj, (info, crc))
-
- let create_archive file_list lib_name =
-+ let ext_lib = if !Clflags.gprofile then ext_prof ^ ext_lib else ext_lib in
- let archive_name = Filename.chop_suffix lib_name ".cmxa" ^ ext_lib in
- let outchan = open_out_bin lib_name in
- try
---- otherlibs/db/Makefile.orig Mon Feb 23 07:42:22 1998
-+++ otherlibs/db/Makefile Thu Sep 10 21:33:18 1998
-@@ -22,6 +22,7 @@
- $(CAMLC) -a -o db.cma db.cmo
-
- db.cmxa: db.cmx
-+ $(CAMLOPT) -p -a -o db.cmxa db.cmx
- $(CAMLOPT) -a -o db.cmxa db.cmx
-
- partialclean:
-@@ -36,7 +37,7 @@
- cp db.cma db.cmi db.mli $(LIBDIR)
-
- installopt:
-- cp db.cmx db.cmxa db.a $(LIBDIR)
-+ cp db.cmx db.cmxa db*.a $(LIBDIR)
- cd $(LIBDIR); $(RANLIB) db.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-@@ -48,6 +49,7 @@
- $(CAMLC) -c $(COMPFLAGS) $<
-
- .ml.cmx:
-+ $(CAMLOPT) -p -c $(COMPFLAGS) $<
- $(CAMLOPT) -c $(COMPFLAGS) $<
-
- depend:
---- otherlibs/dbm/Makefile.orig Tue Apr 21 12:08:31 1998
-+++ otherlibs/dbm/Makefile Thu Sep 10 21:36:00 1998
-@@ -22,6 +22,7 @@
- $(CAMLC) -a -o dbm.cma dbm.cmo
-
- dbm.cmxa: dbm.cmx
-+ $(CAMLOPT) -p -a -o dbm.cmxa dbm.cmx
- $(CAMLOPT) -a -o dbm.cmxa dbm.cmx
-
- partialclean:
-@@ -36,7 +37,7 @@
- cp dbm.cma dbm.cmi dbm.mli $(LIBDIR)
-
- installopt:
-- cp dbm.cmx dbm.cmxa dbm.a $(LIBDIR)
-+ cp dbm.cmx dbm.cmxa dbm*.a $(LIBDIR)
- cd $(LIBDIR); $(RANLIB) dbm.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-@@ -48,6 +49,7 @@
- $(CAMLC) -c $(COMPFLAGS) $<
-
- .ml.cmx:
-+ $(CAMLOPT) -p -c $(COMPFLAGS) $<
- $(CAMLOPT) -c $(COMPFLAGS) $<
-
- depend:
---- otherlibs/graph/Makefile.orig Tue Apr 21 12:08:41 1998
-+++ otherlibs/graph/Makefile Thu Sep 10 21:38:44 1998
-@@ -24,6 +24,7 @@
- $(CAMLC) -a -o graphics.cma graphics.cmo
-
- graphics.cmxa: graphics.cmx
-+ $(CAMLOPT) -p -a -o graphics.cmxa graphics.cmx
- $(CAMLOPT) -a -o graphics.cmxa graphics.cmx
-
- partialclean:
-@@ -38,7 +39,7 @@
- cp graphics.cm[ia] graphics.mli $(LIBDIR)
-
- installopt:
-- cp graphics.cmxa graphics.a $(LIBDIR)
-+ cp graphics.cmxa graphics*.a $(LIBDIR)
- cd $(LIBDIR); $(RANLIB) graphics.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-@@ -48,6 +49,7 @@
- .ml.cmo:
- $(CAMLC) -c $<
- .ml.cmx:
-+ $(CAMLOPT) -p -c $(COMPFLAGS) $<
- $(CAMLOPT) -c $(COMPFLAGS) $<
-
- depend:
---- otherlibs/num/Makefile.orig Tue Apr 21 12:08:46 1998
-+++ otherlibs/num/Makefile Thu Sep 10 21:39:10 1998
-@@ -23,6 +23,7 @@
- $(CAMLC) -a -o nums.cma $(CAMLOBJS)
-
- nums.cmxa: $(CAMLOBJS:.cmo=.cmx)
-+ $(CAMLOPT) -p -a -o nums.cmxa $(CAMLOBJS:.cmo=.cmx)
- $(CAMLOPT) -a -o nums.cmxa $(CAMLOBJS:.cmo=.cmx)
-
- libnums.a: bignum/libbignum.a $(COBJS)
-@@ -41,7 +42,7 @@
- cp nums.cma $(CMIFILES) $(CMIFILES:.cmi=.mli) $(LIBDIR)
-
- installopt:
-- cp $(CAMLOBJS:.cmo=.cmx) nums.cmxa nums.a $(LIBDIR)
-+ cp $(CAMLOBJS:.cmo=.cmx) nums.cmxa nums*.a $(LIBDIR)
- cd $(LIBDIR); $(RANLIB) nums.a
-
- partialclean:
-@@ -61,6 +62,7 @@
- $(CAMLC) -c $(COMPFLAGS) $<
-
- .ml.cmx:
-+ $(CAMLOPT) -p -c $(COMPFLAGS) $<
- $(CAMLOPT) -c $(COMPFLAGS) $<
-
- nat_stubs.o: nat.h
---- otherlibs/str/Makefile.orig Tue Apr 21 12:08:52 1998
-+++ otherlibs/str/Makefile Thu Sep 10 21:39:47 1998
-@@ -23,6 +23,7 @@
- $(CAMLC) -a -o str.cma str.cmo
-
- str.cmxa: str.cmx
-+ $(CAMLOPT) -p -a -o str.cmxa str.cmx
- $(CAMLOPT) -a -o str.cmxa str.cmx
-
- $(REGEXLIB)/regex.o: $(REGEXLIB)/regex.c $(REGEXLIB)/regex.h
-@@ -43,7 +44,7 @@
- cp str.cma str.cmi str.mli $(LIBDIR)
-
- installopt:
-- cp str.cmx str.cmxa str.a $(LIBDIR)
-+ cp str.cmx str.cmxa str*.a $(LIBDIR)
- cd $(LIBDIR); $(RANLIB) str.a
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-@@ -55,6 +56,7 @@
- $(CAMLC) -c $(COMPFLAGS) $<
-
- .ml.cmx:
-+ $(CAMLOPT) -p -c $(COMPFLAGS) $<
- $(CAMLOPT) -c $(COMPFLAGS) $<
-
- depend:
---- otherlibs/threads/Makefile.orig Sat Aug 8 14:42:20 1998
-+++ otherlibs/threads/Makefile Thu Sep 10 21:43:42 1998
-@@ -70,6 +70,7 @@
- $(CAMLC) -c $(COMPFLAGS) $<
-
- .ml.cmx:
-+ $(CAMLOPT) -p -c $(COMPFLAGS) $<
- $(CAMLOPT) -c $(COMPFLAGS) $<
-
- depend:
---- configure.orig Thu Aug 6 10:25:22 1998
-+++ configure Fri Sep 11 15:37:38 1998
-@@ -724,6 +724,8 @@
- echo "OTHERLIBRARIES=$otherlibraries" >> Makefile
- echo "DEBUGGER=$debugger" >> Makefile
-
-+echo "EXT_PROF=.p" >> Makefile
-+
- rm -f tst hasgot.c
- rm -f ../m.h ../s.h ../Makefile
- mv m.h s.h Makefile ..
---- otherlibs/systhreads/Makefile.orig Sat Aug 8 14:42:21 1998
-+++ otherlibs/systhreads/Makefile Fri Sep 11 15:50:11 1998
-@@ -5,6 +5,7 @@
-
- BYTECODE_C_OBJS=posix_b.o
- NATIVECODE_C_OBJS=posix_n.o
-+PNATIVECODE_C_OBJS=$(NATIVECODE_C_OBJS:.o=$(EXT_PROF).o)
-
- THREAD_OBJS= thread.cmo mutex.cmo condition.cmo event.cmo threadUnix.cmo
-
-@@ -12,7 +13,7 @@
-
- all: libthreads.a threads.cma
-
--allopt: libthreadsnat.a threads.cmxa
-+allopt: libthreadsnat.a libthreadsnat$(EXT_PROF).a threads.cmxa
-
- libthreads.a: $(BYTECODE_C_OBJS)
- rm -f libthreads.a
-@@ -26,14 +27,23 @@
- rm -f libthreadsnat.a
- ar rc libthreadsnat.a $(NATIVECODE_C_OBJS)
-
-+libthreadsnat$(EXT_PROF).a: $(PNATIVECODE_C_OBJS)
-+ rm -f libthreadsnat$(EXT_PROF).a
-+ ar rc libthreadsnat$(EXT_PROF).a $(PNATIVECODE_C_OBJS)
-+
- posix_n.o: posix.c
- $(NATIVECC) -O -I../../asmrun -I../../byterun $(NATIVECCCOMPOPTS) -DNATIVE_CODE -DTARGET_$(ARCH) -DSYS_$(SYSTEM) -c posix.c
- mv posix.o posix_n.o
-
-+posix_n$(EXT_PROF).o: posix.c
-+ $(NATIVECC) -p -O -I../../asmrun -I../../byterun $(NATIVECCCOMPOPTS) -DNATIVE_CODE -DTARGET_$(ARCH) -DSYS_$(SYSTEM) -c posix.c
-+ mv posix.o posix_n$(EXT_PROF).o
-+
- threads.cma: $(THREAD_OBJS)
- $(CAMLC) -a -o threads.cma $(THREAD_OBJS)
-
- threads.cmxa: $(THREAD_OBJS:.cmo=.cmx)
-+ $(CAMLOPT) -p -a -o threads.cmxa $(THREAD_OBJS:.cmo=.cmx)
- $(CAMLOPT) -a -o threads.cmxa $(THREAD_OBJS:.cmo=.cmx)
-
- $(THREAD_OBJS:.cmo=.cmx): ../../ocamlopt
-@@ -56,7 +66,7 @@
-
- installopt:
-- cp libthreadsnat.a $(LIBDIR)/libthreadsnat.a
-- cp $(THREAD_OBJS:.cmo=.cmx) threads.cmxa threads.a $(LIBDIR)/threads
-+ cp libthreadsnat*.a $(LIBDIR)
-+ cp $(THREAD_OBJS:.cmo=.cmx) threads.cmxa threads*.a $(LIBDIR)/threads
-
- .SUFFIXES: .ml .mli .cmo .cmi .cmx
-
-@@ -67,6 +77,7 @@
- $(CAMLC) -c $(COMPFLAGS) $<
-
- .ml.cmx:
-+ $(CAMLOPT) -p -c $(COMPFLAGS) $<
- $(CAMLOPT) -c $(COMPFLAGS) $<
-
- depend: $(GENFILES)
---- otherlibs/unix/Makefile.orig Sat Aug 8 12:53:16 1998
-+++ otherlibs/unix/Makefile Fri Sep 11 16:13:07 1998
-@@ -24,19 +24,27 @@
- time.o times.o truncate.o umask.o unixsupport.o unlink.o \
- utimes.o wait.o write.o
-
-+POBJS=$(OBJS:.o=$(EXT_PROF).o)
-+
- all: libunix.a unix.cmi unix.cma
-
--allopt: libunix.a unix.cmi unix.cmxa
-+allopt: libunix.a libunix$(EXT_PROF).a unix.cmi unix.cmxa
-
- libunix.a: $(OBJS)
- rm -f libunix.a
- ar rc libunix.a $(OBJS)
- $(RANLIB) libunix.a
-
-+libunix$(EXT_PROF).a: $(POBJS)
-+ rm -f libunix$(EXT_PROF).a
-+ ar rc libunix$(EXT_PROF).a $(POBJS)
-+ $(RANLIB) libunix$(EXT_PROF).a
-+
- unix.cma: unix.cmo
- $(CAMLC) -a -linkall -o unix.cma unix.cmo
-
- unix.cmxa: unix.cmx
-+ $(CAMLOPT) -p -a -linkall -o unix.cmxa unix.cmx
- $(CAMLOPT) -a -linkall -o unix.cmxa unix.cmx
-
- unix.cmx: ../../ocamlopt
-@@ -53,10 +61,11 @@
- cp unix.cmi unix.cma unix.mli $(LIBDIR)
-
- installopt:
-- cp unix.cmx unix.cmxa unix.a $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) unix.a
-+ cp libunix?*.a $(LIBDIR)
-+ cp unix.cmx unix.cmxa unix*.a $(LIBDIR)
-+ cd $(LIBDIR); $(RANLIB) unix*.a
-
--.SUFFIXES: .ml .mli .cmo .cmi .cmx
-+.SUFFIXES: .ml .mli .cmo .cmi .cmx .c $(EXT_PROF).o
-
- .mli.cmi:
- $(CAMLC) -c $(COMPFLAGS) $<
-@@ -65,7 +74,11 @@
- $(CAMLC) -c $(COMPFLAGS) $<
-
- .ml.cmx:
-+ $(CAMLOPT) -p -c $(COMPFLAGS) $<
- $(CAMLOPT) -c $(COMPFLAGS) $<
-+
-+.c$(EXT_PROF).o:
-+ $(CC) -c -p $(CFLAGS) $< -o $*$(EXT_PROF).o
-
- depend:
- gcc -MM $(CFLAGS) *.c > .depend
---- Makefile.orig Wed Nov 18 13:10:50 1998
-+++ Makefile Thu Dec 10 23:50:23 1998
-@@ -60,7 +60,7 @@
- asmcomp/printlinear.cmo asmcomp/linearize.cmo \
- asmcomp/schedgen.cmo asmcomp/scheduling.cmo \
- asmcomp/emitaux.cmo asmcomp/emit.cmo asmcomp/asmgen.cmo \
-- asmcomp/asmlink.cmo asmcomp/asmlibrarian.cmo
-+ asmcomp/asmlibrarian.cmo asmcomp/asmlink.cmo
-
- DRIVER=driver/errors.cmo driver/compile.cmo driver/main_args.cmo driver/main.cmo
-
-@@ -256,6 +256,7 @@
- -e 's|%%EXT_OBJ%%|.o|' \
- -e 's|%%EXT_ASM%%|.s|' \
- -e 's|%%EXT_LIB%%|.a|' \
-+ -e 's|%%EXT_PROF%%|$(EXT_PROF)|' \
- utils/config.mlp > utils/config.ml
- @chmod -w utils/config.ml
-
-@@ -425,6 +426,8 @@
- cd asmrun; $(MAKE) all
- if test -f stdlib/libasmrun.a; then :; else \
- ln -s ../asmrun/libasmrun.a stdlib/libasmrun.a; fi
-+ if test -f stdlib/libasmrun$(EXT_PROF).a; then :; else \
-+ ln -s ../asmrun/libasmrun$(EXT_PROF).a stdlib/libasmrun$(EXT_PROF).a; fi
- clean::
- cd asmrun; $(MAKE) clean
- rm -f stdlib/libasmrun.a
---- asmrun/Makefile.orig Wed Jan 27 05:52:54 1999
-+++ asmrun/Makefile Fri Mar 5 17:16:49 1999
-@@ -16,7 +16,7 @@
-
- OBJS=$(COBJS) $(ASMOBJS)
- DOBJS=$(COBJS:.o=.d.o) $(ASMOBJS)
--POBJS=$(COBJS:.o=.p.o) $(ASMOBJS:.o=.p.o)
-+POBJS=$(COBJS:.o=$(EXT_PROF).o) $(ASMOBJS:.o=$(EXT_PROF).o)
-
- all: libasmrun.a all-$(PROFILING)
-
-@@ -32,12 +32,12 @@
-
- all-noprof:
-
--all-prof: libasmrunp.a
-+all-prof: libasmrun$(EXT_PROF).a
-
--libasmrunp.a: $(POBJS)
-- rm -f libasmrunp.a
-- ar rc libasmrunp.a $(POBJS)
-- $(RANLIB) libasmrunp.a
-+libasmrun$(EXT_PROF).a: $(POBJS)
-+ rm -f libasmrun$(EXT_PROF).a
-+ ar rc libasmrun$(EXT_PROF).a $(POBJS)
-+ $(RANLIB) libasmrun$(EXT_PROF).a
-
- install: install-default install-$(PROFILING)
-
-@@ -46,17 +46,17 @@
- cd $(LIBDIR); $(RANLIB) libasmrun.a
-
- install-noprof:
-- rm -f $(LIBDIR)/libasmrunp.a; ln -s libasmrun.a $(LIBDIR)/libasmrunp.a
-+ rm -f $(LIBDIR)/libasmrun$(EXT_PROF).a; ln -s libasmrun.a $(LIBDIR)/libasmrun$(EXT_PROF).a
-
- install-prof:
-- cp libasmrunp.a $(LIBDIR)/libasmrunp.a
-- cd $(LIBDIR); $(RANLIB) libasmrunp.a
-+ cp libasmrun$(EXT_PROF).a $(LIBDIR)/libasmrun$(EXT_PROF).a
-+ cd $(LIBDIR); $(RANLIB) libasmrun$(EXT_PROF).a
-
- power.o: power-$(SYSTEM).o
- cp power-$(SYSTEM).o power.o
-
--power.p.o: power-$(SYSTEM).o
-- cp power-$(SYSTEM).o power.p.o
-+power$(EXT_PROF).o: power-$(SYSTEM).o
-+ cp power-$(SYSTEM).o power$(EXT_PROF).o
-
- main.c: ../byterun/main.c
- ln -s ../byterun/main.c main.c
-@@ -123,13 +123,13 @@
- clean::
- rm -f $(LINKEDFILES)
-
--.SUFFIXES: .S .d.o .p.o
-+.SUFFIXES: .S .d.o $(EXT_PROF).o
-
- .S.o:
- $(ASPP) $(ASPPFLAGS) -o $*.o $*.S
-
--.S.p.o:
-- $(ASPP) $(ASPPFLAGS) $(ASPPPROFFLAGS) -o $*.p.o $*.S
-+.S$(EXT_PROF).o:
-+ $(ASPP) $(ASPPFLAGS) $(ASPPPROFFLAGS) -o $*$(EXT_PROF).o $*.S
-
- .c.d.o:
- @ if test -f $*.o; then mv $*.o $*.f.o; else :; fi
-@@ -137,17 +137,17 @@
- mv $*.o $*.d.o
- @ if test -f $*.f.o; then mv $*.f.o $*.o; else :; fi
-
--.c.p.o:
-+.c$(EXT_PROF).o:
- @ if test -f $*.o; then mv $*.o $*.f.o; else :; fi
- $(CC) -c $(PFLAGS) $<
-- mv $*.o $*.p.o
-+ mv $*.o $*$(EXT_PROF).o
- @ if test -f $*.f.o; then mv $*.f.o $*.o; else :; fi
-
- .s.o:
- $(ASPP) $(ASPPFLAGS) -o $*.o $*.s
-
--.s.p.o:
-- $(ASPP) $(ASPPFLAGS) $(ASPPPROFFLAGS) -o $*.p.o $*.s
-+.s$(EXT_PROF).o:
-+ $(ASPP) $(ASPPFLAGS) $(ASPPPROFFLAGS) -o $*$(EXT_PROF).o $*.s
-
- clean::
- rm -f *.o *.a *~
-@@ -155,7 +155,7 @@
- depend: $(COBJS:.o=.c)
- gcc -MM $(FLAGS) *.c > .depend
- gcc -MM $(FLAGS) -DDEBUG *.c | sed -e 's/\.o/.d.o/' >> .depend
-- gcc -MM $(FLAGS) -DDEBUG *.c | sed -e 's/\.o/.p.o/' >> .depend
-+ gcc -MM $(FLAGS) -DDEBUG *.c | sed -e 's/\.o/$(EXT_PROF).o/' >> .depend
-
- include .depend
-
---- stdlib/Makefile.orig Thu Feb 25 05:26:36 1999
-+++ stdlib/Makefile Fri Mar 5 17:19:43 1999
-@@ -23,7 +23,7 @@
-
- allopt-noprof:
-
--allopt-prof: stdlib.p.cmxa std_exit.p.cmx
-+allopt-prof:
-
- install:
- cp stdlib.cma std_exit.cmo *.cmi *.mli *.ml camlheader camlheader_ur $(LIBDIR)
-@@ -35,23 +35,20 @@
- cd $(LIBDIR); $(RANLIB) stdlib.a
-
- installopt-noprof:
-- rm -f $(LIBDIR)/stdlib.p.cmxa; ln -s stdlib.cmxa $(LIBDIR)/stdlib.p.cmxa
-- rm -f $(LIBDIR)/stdlib.p.a; ln -s stdlib.a $(LIBDIR)/stdlib.p.a
-- rm -f $(LIBDIR)/std_exit.p.cmx; ln -s std_exit.cmx $(LIBDIR)/std_exit.p.cmx
-- rm -f $(LIBDIR)/std_exit.p.o; ln -s std_exit.o $(LIBDIR)/std_exit.p.o
-+ rm -f $(LIBDIR)/stdlib$(EXT_PROF).a; ln -s stdlib.a $(LIBDIR)/stdlib$(EXT_PROF).a
-+ rm -f $(LIBDIR)/std_exit$(EXT_PROF).o; ln -s std_exit.o $(LIBDIR)/std_exit$(EXT_PROF).o
-
- installopt-prof:
-- cp stdlib.p.cmxa stdlib.p.a std_exit.p.cmx std_exit.p.o $(LIBDIR)
-- cd $(LIBDIR); $(RANLIB) stdlib.p.a
-+ cp stdlib$(EXT_PROF).a std_exit$(EXT_PROF).o $(LIBDIR)
-+ cd $(LIBDIR); $(RANLIB) stdlib$(EXT_PROF).a
-
- stdlib.cma: $(OBJS)
- $(CAMLC) -a -o stdlib.cma $(OBJS)
-
- stdlib.cmxa: $(OBJS:.cmo=.cmx)
- $(CAMLOPT) -a -o stdlib.cmxa $(OBJS:.cmo=.cmx)
-+ $(CAMLOPT) -p -a -o stdlib.cmxa $(OBJS:.cmo=.cmx)
-
--stdlib.p.cmxa: $(OBJS:.cmo=.p.cmx)
-- $(CAMLOPT) -a -o stdlib.p.cmxa $(OBJS:.cmo=.p.cmx)
-
- camlheader camlheader_ur: header.c ../config/Makefile
- if $(SHARPBANGSCRIPTS); then \
-@@ -73,22 +70,14 @@
- $(CAMLC) $(COMPFLAGS) -nopervasives -c pervasives.ml
-
- pervasives.cmx: pervasives.ml
-+ $(CAMLOPT) -p $(OPTCOMPFLAGS) -nopervasives -c pervasives.ml
- $(CAMLOPT) $(OPTCOMPFLAGS) -nopervasives -c pervasives.ml
-
--pervasives.p.cmx: pervasives.ml
-- @if test -f pervasives.cmx; then mv pervasives.cmx pervasives.n.cmx; else :; fi
-- @if test -f pervasives.o; then mv pervasives.o pervasives.n.o; else :; fi
-- $(CAMLOPT) $(OPTCOMPFLAGS) -p -nopervasives -c pervasives.ml
-- mv pervasives.cmx pervasives.p.cmx
-- mv pervasives.o pervasives.p.o
-- @if test -f pervasives.n.cmx; then mv pervasives.n.cmx pervasives.cmx; else :; fi
-- @if test -f pervasives.n.o; then mv pervasives.n.o pervasives.o; else :; fi
--
- # oo.cmi must be compiled with -nopervasives for applets
- oo.cmi: oo.mli
- $(CAMLC) $(COMPFLAGS) -nopervasives -c oo.mli
-
--.SUFFIXES: .mli .ml .cmi .cmo .cmx .p.cmx
-+.SUFFIXES: .mli .ml .cmi .cmo .cmx
-
- .mli.cmi:
- $(CAMLC) $(COMPFLAGS) -c $<
-@@ -97,20 +86,11 @@
- $(CAMLC) $(COMPFLAGS) -c $<
-
- .ml.cmx:
-+ $(CAMLOPT) -p $(OPTCOMPFLAGS) -c $<
- $(CAMLOPT) $(OPTCOMPFLAGS) -c $<
-
--.ml.p.cmx:
-- @if test -f $*.cmx; then mv $*.cmx $*.n.cmx; else :; fi
-- @if test -f $*.o; then mv $*.o $*.n.o; else :; fi
-- $(CAMLOPT) $(OPTCOMPFLAGS) -p -c $<
-- mv $*.cmx $*.p.cmx
-- mv $*.o $*.p.o
-- @if test -f $*.n.cmx; then mv $*.n.cmx $*.cmx; else :; fi
-- @if test -f $*.n.o; then mv $*.n.o $*.o; else :; fi
--
- $(OBJS) std_exit.cmo: pervasives.cmi $(COMPILER)
- $(OBJS:.cmo=.cmx) std_exit.cmx: pervasives.cmi $(OPTCOMPILER)
--$(OBJS:.cmo=.p.cmx) std_exit.p.cmx: pervasives.cmi $(OPTCOMPILER)
- $(OBJS:.cmo=.cmi) std_exit.cmi: $(COMPILER)
-
- clean::
--- /dev/null
+diff -ur ocaml-3.05/ocamldoc/odoc_messages.ml ocaml-3.05-/ocamldoc/odoc_messages.ml
+--- ocaml-3.05/ocamldoc/odoc_messages.ml Tue Jul 23 16:11:51 2002
++++ ocaml-3.05-/ocamldoc/odoc_messages.ml Thu Aug 8 14:09:56 2002
+@@ -63,7 +63,7 @@
+
+ let man_mini = " Generate man pages only for modules, module types,\n"^
+ " classes and class types "^man_only
+-let default_man_suffix = "o"
++let default_man_suffix = "3o"
+ let man_suffix = "<suffix> use <suffix> for man page files "^
+ "(default is "^default_man_suffix^") "^man_only^"\n"
+
+++ /dev/null
---- ocaml-3.06/ocamldoc/Makefile~ Wed Oct 22 16:23:07 2003
-+++ ocaml-3.06/ocamldoc/Makefile Wed Oct 22 16:23:07 2003
-@@ -179,7 +179,8 @@
- ../otherlibs/bigarray/bigarray.mli \
- ../otherlibs/num/num.mli
-
--all: exe lib manpages
-+#all: exe lib manpages
-+all: exe lib
- exe: $(OCAMLDOC)
- lib: $(OCAMLDOC_LIBCMA) $(OCAMLDOC_LIBCMI)
-
---- ocaml-3.06/ocamldoc/Makefile~ Wed Oct 22 17:07:16 2003
-+++ ocaml-3.06/ocamldoc/Makefile Wed Oct 22 17:07:16 2003
-@@ -279,7 +279,8 @@
- $(CP) ocamldoc.sty ocamldoc.hva *.cmi $(GENERATORS) $(OCAMLDOC_LIBCMA) $(INSTALL_LIBDIR)
- $(CP) $(INSTALL_MLIS) $(INSTALL_CMIS) $(INSTALL_LIBDIR)
- if test -d $(INSTALL_MANODIR); then : ; else $(MKDIR) $(INSTALL_MANODIR); fi
-- $(CP) stdlib_man/* $(INSTALL_MANODIR)
-+
-+# $(CP) stdlib_man/* $(INSTALL_MANODIR)
-
- installopt:
- if test -f $(OCAMLDOC_OPT) ; then $(MAKE) installopt_really ; fi
+++ /dev/null
-diff -urN ocaml-2.02.org/asmrun/Makefile ocaml-2.02/asmrun/Makefile
---- ocaml-2.02.org/asmrun/Makefile Fri Mar 24 16:57:06 2000
-+++ ocaml-2.02/asmrun/Makefile Fri Mar 24 17:02:22 2000
-@@ -2,9 +2,9 @@
-
- CC=$(NATIVECC)
- FLAGS=-I../byterun -DNATIVE_CODE -DTARGET_$(ARCH) -DSYS_$(SYSTEM)
--CFLAGS=$(FLAGS) -O $(NATIVECCCOMPOPTS)
-+CFLAGS=$(FLAGS) $(NATIVECCCOMPOPTS)
- DFLAGS=$(FLAGS) -g -DDEBUG $(NATIVECCCOMPOPTS)
--PFLAGS=$(FLAGS) -pg -O -DPROFILING $(NATIVECCCOMPOPTS)
-+PFLAGS=$(FLAGS) -pg -DPROFILING $(NATIVECCCOMPOPTS)
-
- COBJS=startup.o main.o fail.o roots.o signals.o \
- misc.o freelist.o major_gc.o minor_gc.o memory.o alloc.o compare.o ints.o \
-diff -urN ocaml-2.02.org/byterun/Makefile ocaml-2.02/byterun/Makefile
---- ocaml-2.02.org/byterun/Makefile Fri Mar 24 16:57:06 2000
-+++ ocaml-2.02/byterun/Makefile Fri Mar 24 17:02:37 2000
-@@ -1,7 +1,7 @@
- include ../config/Makefile
-
- CC=$(BYTECC)
--CFLAGS=-O $(BYTECCCOMPOPTS)
-+CFLAGS=$(BYTECCCOMPOPTS)
- DFLAGS=-g -DDEBUG $(BYTECCCOMPOPTS)
-
- OBJS=interp.o misc.o stacks.o fix_code.o startup.o main.o \
-diff -urN ocaml-2.02.org/configure ocaml-2.02/configure
---- ocaml-2.02.org/configure Fri Mar 24 16:57:05 2000
-+++ ocaml-2.02/configure Fri Mar 24 16:59:09 2000
-@@ -410,7 +410,7 @@
-
- # For the terminfo module
-
--for libs in "" "-lcurses" "-ltermcap" "-lcurses -ltermcap"; do
-+for libs in "" "-ltinfo" "-lcurses" "-ltermcap" "-lcurses -ltermcap"; do
- if sh ./hasgot $libs tgetent tgetstr tgetnum tputs; then
- echo "termcap functions found (with libraries '$libs')"
- echo "#define HAS_TERMCAP" >> s.h
-diff -urN ocaml-2.02.org/otherlibs/db/Makefile ocaml-2.02/otherlibs/db/Makefile
---- ocaml-2.02.org/otherlibs/db/Makefile Fri Mar 24 16:57:10 2000
-+++ ocaml-2.02/otherlibs/db/Makefile Fri Mar 24 17:03:03 2000
-@@ -3,10 +3,10 @@
- include ../../config/Makefile
-
- # Compilation optiosn
--CC=$(BYTECC) -g
-+CC=$(BYTECC)
- CAMLC=../../boot/ocamlrun ../../boot/ocamlc -I ../../stdlib
- CAMLOPT=../../boot/ocamlrun ../../ocamlopt -I ../../stdlib
--CFLAGS=-I../../byterun -O $(BYTECCCOMPOPTS)
-+CFLAGS=-I../../byterun $(BYTECCCOMPOPTS)
- COBJS=dbstubs.o
-
- all: libmldb.a db.cmi db.cma
-diff -urN ocaml-2.02.org/otherlibs/dbm/Makefile ocaml-2.02/otherlibs/dbm/Makefile
---- ocaml-2.02.org/otherlibs/dbm/Makefile Fri Mar 24 16:57:10 2000
-+++ ocaml-2.02/otherlibs/dbm/Makefile Fri Mar 24 17:03:13 2000
-@@ -3,10 +3,10 @@
- include ../../config/Makefile
-
- # Compilation optiosn
--CC=$(BYTECC) -g
-+CC=$(BYTECC)
- CAMLC=../../boot/ocamlrun ../../boot/ocamlc -I ../../stdlib
- CAMLOPT=../../boot/ocamlrun ../../ocamlopt -I ../../stdlib
--CFLAGS=-I../../byterun -O $(BYTECCCOMPOPTS)
-+CFLAGS=-I../../byterun $(BYTECCCOMPOPTS)
- COBJS=cldbm.o
-
- all: libmldbm.a dbm.cmi dbm.cma
-diff -urN ocaml-2.02.org/otherlibs/num/Makefile ocaml-2.02/otherlibs/num/Makefile
---- ocaml-2.02.org/otherlibs/num/Makefile Fri Mar 24 16:57:10 2000
-+++ ocaml-2.02/otherlibs/num/Makefile Fri Mar 24 17:03:41 2000
-@@ -15,7 +15,7 @@
-
- # Compilation options
- CC=$(BYTECC)
--CFLAGS=-O -I./bignum/h -I../../byterun $(BYTECCCOMPOPTS)
-+CFLAGS=-I./bignum/h -I../../byterun $(BYTECCCOMPOPTS)
- CAMLC=../../boot/ocamlrun ../../boot/ocamlc -I ../../stdlib -w s
- CAMLOPT=../../boot/ocamlrun ../../ocamlopt -I ../../stdlib -w s
-
-diff -urN ocaml-2.02.org/otherlibs/str/Makefile ocaml-2.02/otherlibs/str/Makefile
---- ocaml-2.02.org/otherlibs/str/Makefile Fri Mar 24 16:57:11 2000
-+++ ocaml-2.02/otherlibs/str/Makefile Fri Mar 24 17:04:04 2000
-@@ -4,7 +4,7 @@
-
- # Compilation options
- CC=$(BYTECC)
--CFLAGS=-O -I$(REGEXLIB) -I../../byterun $(BYTECCCOMPOPTS)
-+CFLAGS=-I$(REGEXLIB) -I../../byterun $(BYTECCCOMPOPTS)
- CAMLC=../../boot/ocamlrun ../../boot/ocamlc -I ../../stdlib
- CAMLOPT=../../boot/ocamlrun ../../ocamlopt -I ../../stdlib
- REGEXLIB=regex-0.12
-diff -urN ocaml-2.02.org/otherlibs/systhreads/Makefile ocaml-2.02/otherlibs/systhreads/Makefile
---- ocaml-2.02.org/otherlibs/systhreads/Makefile Fri Mar 24 16:57:11 2000
-+++ ocaml-2.02/otherlibs/systhreads/Makefile Fri Mar 24 17:04:28 2000
-@@ -19,7 +19,7 @@
- ar rc libthreads.a $(BYTECODE_C_OBJS)
-
- posix_b.o: posix.c
-- $(BYTECC) -O -I../../byterun $(BYTECCCOMPOPTS) -c posix.c
-+ $(BYTECC) -I../../byterun $(BYTECCCOMPOPTS) -c posix.c
- mv posix.o posix_b.o
-
- libthreadsnat.a: $(NATIVECODE_C_OBJS)
-@@ -27,7 +27,7 @@
- ar rc libthreadsnat.a $(NATIVECODE_C_OBJS)
-
- posix_n.o: posix.c
-- $(NATIVECC) -O -I../../asmrun -I../../byterun $(NATIVECCCOMPOPTS) -DNATIVE_CODE -DTARGET_$(ARCH) -DSYS_$(SYSTEM) -c posix.c
-+ $(NATIVECC) -I../../asmrun -I../../byterun $(NATIVECCCOMPOPTS) -DNATIVE_CODE -DTARGET_$(ARCH) -DSYS_$(SYSTEM) -c posix.c
- mv posix.o posix_n.o
-
- threads.cma: $(THREAD_OBJS)
-diff -urN ocaml-2.02.org/otherlibs/threads/Makefile ocaml-2.02/otherlibs/threads/Makefile
---- ocaml-2.02.org/otherlibs/threads/Makefile Fri Mar 24 16:57:11 2000
-+++ ocaml-2.02/otherlibs/threads/Makefile Fri Mar 24 17:04:43 2000
-@@ -1,7 +1,7 @@
- include ../../config/Makefile
-
- CC=$(BYTECC)
--CFLAGS=-I../../byterun -O $(BYTECCCOMPOPTS)
-+CFLAGS=-I../../byterun $(BYTECCCOMPOPTS)
- CAMLC=../../boot/ocamlrun ../../boot/ocamlc -I ../../stdlib -I ../unix
-
- C_OBJS=scheduler.o
-diff -urN ocaml-2.02.org/otherlibs/unix/Makefile ocaml-2.02/otherlibs/unix/Makefile
---- ocaml-2.02.org/otherlibs/unix/Makefile Fri Mar 24 16:57:11 2000
-+++ ocaml-2.02/otherlibs/unix/Makefile Fri Mar 24 17:04:53 2000
-@@ -4,7 +4,7 @@
-
- # Compilation options
- CC=$(BYTECC)
--CFLAGS=-I../../byterun -O $(BYTECCCOMPOPTS)
-+CFLAGS=-I../../byterun $(BYTECCCOMPOPTS)
- CAMLC=../../boot/ocamlrun ../../boot/ocamlc -I ../../stdlib
- CAMLOPT=../../boot/ocamlrun ../../ocamlopt -I ../../stdlib
-
-diff -urN ocaml-2.02.org/yacc/Makefile ocaml-2.02/yacc/Makefile
---- ocaml-2.02.org/yacc/Makefile Fri Mar 24 16:57:13 2000
-+++ ocaml-2.02/yacc/Makefile Fri Mar 24 17:05:12 2000
-@@ -3,7 +3,7 @@
- include ../config/Makefile
-
- CC=$(BYTECC)
--CFLAGS=-O -DNDEBUG $(BYTECCCOMPOPTS)
-+CFLAGS=-DNDEBUG $(BYTECCCOMPOPTS)
-
- OBJS= closure.o error.o lalr.o lr0.o main.o mkpar.o output.o reader.o \
- skeleton.o symtab.o verbose.o warshall.o
toplevel/genprintval.cmo toplevel/toploop.cmo \
toplevel/trace.cmo toplevel/topdirs.cmo toplevel/topmain.cmo
---- ocaml-3.08.0/driver/compile.ml.orig 2004-06-13 14:46:41.000000000 +0200
-+++ ocaml-3.08.0/driver/compile.ml 2004-07-21 23:25:27.788583360 +0200
+diff -ur ocaml-3.07beta2/driver/compile.ml ocaml-3.07beta2-/driver/compile.ml
+--- ocaml-3.07beta2/driver/compile.ml 2003-07-25 14:17:18.000000000 +0200
++++ ocaml-3.07beta2-/driver/compile.ml 2003-08-28 17:29:35.000000000 +0200
@@ -99,6 +99,7 @@
try
Pparse.file ppf inputfile Parse.implementation ast_impl_magic_number
++ print_if ppf Clflags.dump_parsetree Printast.implementation
+ ++ Warn_unused_variables.doit ppf
- ++ Typemod.type_implementation sourcefile outputprefix modulename env
+ ++ Typemod.type_implementation sourcefile prefixname modulename env
++ Translmod.transl_implementation modulename
++ print_if ppf Clflags.dump_rawlambda Printlambda.lambda
diff -ur ocaml-3.07beta2/driver/main_args.ml ocaml-3.07beta2-/driver/main_args.ml