X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2FmatitaInit.ml;h=70125f54c222bb5dc3c3d146a8a7cc8aecfee294;hb=2b4ed41c3d8a105f1f9921b37e7f11160001bbe7;hp=129f2dabdce3545fc5efe7b185fc801b3fc791c7;hpb=662f191b09d1b9e3d13e4f9ee5c174c1ac08fadb;p=helm.git diff --git a/helm/software/matita/matitaInit.ml b/helm/software/matita/matitaInit.ml index 129f2dabd..70125f54c 100644 --- a/helm/software/matita/matitaInit.ml +++ b/helm/software/matita/matitaInit.ml @@ -25,10 +25,10 @@ (* $Id$ *) -type thingsToInitilaize = +type thingsToInitialize = ConfigurationFile | Db | Environment | Getter | CmdLine | Registry -exception FailedToInitialize of thingsToInitilaize +exception FailedToInitialize of thingsToInitialize let wants s l = List.iter ( @@ -54,6 +54,7 @@ let registry_defaults = [ "matita.do_heavy_checks", "true"; "matita.moo", "true"; "matita.extract", "false"; + "matita.execcomments", "false"; ] let set_registry_values = @@ -170,16 +171,15 @@ let extra_cmdline_specs = ref [] let add_cmdline_spec l = extra_cmdline_specs := l @ !extra_cmdline_specs let parse_cmdline init_status = - let dump fname = - let atexit = MatitacLib.dump fname in - at_exit atexit - in if not (already_configured [CmdLine] init_status) then begin wants [Registry] init_status; let includes = ref [] in let default_includes = [ BuildTimeConf.stdlib_dir_devel; - BuildTimeConf.stdlib_dir_installed ; ] + BuildTimeConf.stdlib_dir_installed ; + BuildTimeConf.new_stdlib_dir_devel; + BuildTimeConf.new_stdlib_dir_installed ; + ] in let absolutize s = if Pcre.pmatch ~pat:"^/" s then s else Sys.getcwd () ^"/"^s @@ -196,6 +196,8 @@ let parse_cmdline init_status = (HExtlib.normalize_path (absolutize path)^" "^uri) | _ -> raise (Failure "bad baseuri, use -b 'path::uri'") in + let no_default_includes = ref false in + let execcomments = ref false in let arg_spec = let std_arg_spec = [ "-b", Arg.String set_baseuri, " forces the baseuri of path"; @@ -221,12 +223,14 @@ let parse_cmdline init_status = Helm_registry.set_bool "matita.system" true), ("Act on the system library instead of the user one" ^ "\n WARNING: not for the casual user"); - "-dump", Arg.String dump, - " Dump with expanded macros to "; - "-v", + "-no-default-includes", Arg.Set no_default_includes, + "Do not include the default searched paths for the include command"; + "-execcomments", Arg.Set execcomments, + "Execute the content of (** ... *) comments"; + "-v", Arg.Unit (fun () -> Helm_registry.set_bool "matita.verbose" true), "Verbose mode"; - "--version", Arg.Unit print_version, "Prints version"; + "--version", Arg.Unit print_version, "Prints version" ] in let debug_arg_spec = if BuildTimeConf.debug then @@ -235,7 +239,7 @@ let parse_cmdline init_status = ("Do not catch top-level exception " ^ "(useful for backtrace inspection)"); "-onepass", - Arg.Unit (fun () -> GrafiteDisambiguator.only_one_pass := true), + Arg.Unit (fun () -> MultiPassDisambiguator.only_one_pass := true), "Enable only one disambiguation pass"; ] else [] @@ -246,6 +250,8 @@ let parse_cmdline init_status = Helm_registry.set_list Helm_registry.of_string ~key ~value:l in Arg.parse arg_spec (add_l args) (usage ()); + Helm_registry.set_bool ~key:"matita.execcomments" ~value:!execcomments; + let default_includes = if !no_default_includes then [] else default_includes in let includes = List.map (fun x -> HExtlib.normalize_path (absolutize x)) ((List.rev !includes) @ default_includes) @@ -277,7 +283,8 @@ let other_components = let initialize_all () = status := List.fold_left (fun s f -> f s) !status - (conf_components @ other_components) + (conf_components @ other_components); + NCicLibrary.init () let parse_cmdline_and_configuration_file () = status := List.fold_left (fun s f -> f s) !status conf_components @@ -286,4 +293,8 @@ let initialize_environment () = status := initialize_environment !status let _ = - Inversion_principle.init () + CicFix.init (); + Inversion_principle.init (); + CicRecord.init (); + CicElim.init () +;;