X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;ds=sidebyside;f=myocamlbuild.ml;h=5d04a11a8aef4ba55a883c92a0da6141c00c0d2d;hb=18482b8b36fbdc5b904cf44e106075af39eef912;hp=a1fe8e98e993a1c4b603ba13d6d0c9fdc4c8af2f;hpb=29afc3e757d710479de98f3077698a350f810cef;p=tatoo.git diff --git a/myocamlbuild.ml b/myocamlbuild.ml index a1fe8e9..5d04a11 100644 --- a/myocamlbuild.ml +++ b/myocamlbuild.ml @@ -1,30 +1,14 @@ -open Ocamlbuild_plugin -open Command +open Ocamlbuild_plugin ;; -let includes = Hashtbl.create 17 -let register_include dir = - if not (Hashtbl.mem includes dir) then begin - Hashtbl.add includes dir (); - dep [ "extension:ml" ] - (List.map (fun s -> dir ^ "/" ^ s ) - (Array.to_list (Pathname.readdir dir))) - end +let includes = [ "include/utils.ml"; "include/utils32.ml"; "include/utils64.ml"; "include/debug.ml" ] -let macro_flags = [ - "macro_include", - (fun s -> register_include s; S [A"-ppopt"; A "-I"; A"-ppopt"; A s]); - "macro_define", (fun s -> S [A"-ppopt"; A ("-D"^s)]); -] +let () = + dispatch begin function + | After_rules -> + dep ["ocaml";"compile";] includes; + dep ["ocaml";"ocamldep"; ] includes; + pflag ["ocaml";"compile";] "ppopt" (fun s -> S [A"-ppopt"; A (s)]); + pflag ["ocaml";"ocamldep";] "ppopt" (fun s -> S [A"-ppopt"; A (s)]); + | _ -> () -let () = dispatch begin - function - | Before_rules -> - List.iter (fun s -> - List.iter (fun (fl, fu) -> - pflag s fl fu) macro_flags - ) - [["ocaml";"compile"]; - ["ocaml";"ocamldep"] ] -; - | _ -> () -end +end;;