Commits

camlspotter committed 2cf610a Merge

merge + move to ocaml 4.00.0

Comments (0)

Files changed (5)

 .*~$
 tests_out/.*\.ml
 docs/_build
-lexer\.ml$
-linenum\.ml$
-ocaml-indent$
+^lexer\.ml$
+^linenum\.ml$
+^\.omake.*
+ocaml-indent
 
-
+Requirements
+================
+You need omake, type-conv and sexplib.
+
+Compile
+==========
+
+Create OMakeroot by omake --install, then answer "no". I repeat. NO.
+
+Then, omake should build the binary.
+
 
 OCAMLINCLUDES +=
 
-OCAMLFLAGS    = -annot -w A-4-9 -warn-error A-4-9
+OCAMLFLAGS    = -annot -w A-4-9 -warn-error A-4-9-32
 OCAMLCFLAGS   +=
 OCAMLOPTFLAGS +=
 OCAML_LINK_FLAGS +=
 OMyManagedPackages(packages) =
    return $(set-diff $(packages), $(OCAML_PREINSTALLED_PACKS))
 
-#|Add dependencies of any build activity of this directory over $(files).
+#|Add dependencies of OCaml compiled files (cmx, cmo, etc.) over $(files).
 #
 # .. note:: These functions introduce implicit rules: *you may need to export it, if you use this function in a local context.*
-RequireFiles(files) =
-    .SCANNER: scan-%: $(files)
-    % : $(files)
-    export
-
-#|Add dependencies of any build activity over $(packages).
-#
-# .. note:: These functions introduce implicit rules: *you may need to export it, if you use this function in a local context.*
-RequirePackages(packages) =
-    RequireFiles($(OMyManagedPackages $(packages)))
-    export
-
-#|Add dependencies of any build activity of this directory over $(targets) and their dependencies
-# Creates an intermidiate md5 memo dependencies.md5
-#
-# .. note:: These functions introduce implicit rules: *you may need to export it, if you use this function in a local context.*
-RequireBuild(targets) =
-    dependencies.md5: $(targets)
-        CreateCheckSum($@, $(sequence-sort $(compare), $(dependencies-all $(targets))))
-    RequireFiles(dependencies.md5)
+OCamlRequire(files) =
+    %.cmx %.cmo %.cmi %.cma %.cmxa %.annot %.spot %.spit : $(files)
     export
 
 #|Add dependencies of OCaml compiled files (cmx, cmo, etc.) over $(packages).
   # CR jfuruse: I guess we do not need the following
   # export # export the implicit rule above
 
-  .DEFAULT: $(library_name).cmo $(library_name).cmx $(library_name).cma $(library_name).cmxa $(MyOCamlPackageExtras)
+  .PHONY: install-lib
+  install-lib: $(library_name).cmo $(library_name).cmx $(library_name).cma $(library_name).cmxa $(MyOCamlPackageExtras)
 
   $(CMA) $(CMXA) $(library_name).a $(CSTUBLIBRARIES) : $(CSTUBS) $(CMOS) $(CMXS)
       if $(not $(equal $(cmodules), $(EMPTY)))
   export # The above thing is local: need to be exported
 
   # CR jfuruse: forgot to add the deps over the packages!
-  .DEFAULT: $(OCamlLibrary $(name), $(files))
+  install-lib: $(OCamlLibrary $(name), $(files))
 
   # The following clean the files twice if MyOCamlPacakge coexists,
   # but who cases ?
   type t = elt list with sexp_of
 
   (* CR jfuruse: strange *)
-  let rec indent _last_indent  = function
+  let indent _last_indent  = function
     | [] -> 0
     | { indent = n } :: _ -> n
 end
 open Parser
 
 (* Check the previous token and tell the LET is toplevel or not *)
-let rec is_top_let = function
+let is_top_let = function
   | None -> true
   | Some t ->
       match t with
       | FUNCTION -> false
       | _ -> true
 
-let rec lbrace_read_ahead lnum str =
+let lbrace_read_ahead lnum str =
   match Tokenstr.destr str with
   | None -> false
   | Some (i, _) when Region.lnum i.Tokenstr.region <> lnum -> false