(* $Id$ *)
-open Printf
-
type thingsToInitilaize =
ConfigurationFile | Db | Environment | Getter | Makelib | CmdLine | Registry
init_status
let load_configuration init_status =
- wants [ Registry ] init_status;
if not (already_configured [ConfigurationFile] init_status) then
begin
Helm_registry.load_from !conffile;
init_status
let initialize_environment init_status =
- wants [ConfigurationFile] init_status;
+ wants [CmdLine] init_status;
if not (already_configured [Getter;Environment] init_status) then
begin
Http_getter.init ();
List.iter
(fun (name, s) -> Hashtbl.replace usages name s)
[ "matitac",
- sprintf "MatitaC v%s
+ Printf.sprintf "MatitaC v%s
Usage: matitac [ OPTION ... ] FILE
Options:"
BuildTimeConf.version;
"gragrep",
- sprintf "Grafite Grep v%s
+ Printf.sprintf "Grafite Grep v%s
Usage: gragrep [ -r ] PATH
Options:"
BuildTimeConf.version;
"matitaprover",
- sprintf "Matita's prover v%s
+ Printf.sprintf "Matita's prover v%s
Usage: matitaprover [ -tptppath ] FILE.p
Options:"
BuildTimeConf.version;
"matita",
- sprintf "Matita v%s
+ Printf.sprintf "Matita v%s
Usage: matita [ OPTION ... ] [ FILE ... ]
Options:"
BuildTimeConf.version;
"cicbrowser",
- sprintf
+ Printf.sprintf
"CIC Browser v%s
Usage: cicbrowser [ URL | WHELP QUERY ]
Options:"
BuildTimeConf.version;
"matitadep",
- sprintf "MatitaDep v%s
+ Printf.sprintf "MatitaDep v%s
Usage: matitadep [ OPTION ... ] FILE ...
Options:"
BuildTimeConf.version;
"matitaclean",
- sprintf "MatitaClean v%s
+ Printf.sprintf "MatitaClean v%s
Usage: matitaclean all
matitaclean [ (FILE | URI) ... ]
Options:"
BuildTimeConf.version;
"matitamake",
- sprintf "MatitaMake v%s
+ Printf.sprintf "MatitaMake v%s
Usage: matitamake [ OPTION ... ] (init | clean | list | destroy | build)
init
Parameters: name (the name of the development, required)
BuildTimeConf.version;
]
let default_usage =
- sprintf "Matita v%s\nUsage: matita [ ARG ]\nOptions:" BuildTimeConf.version
+ Printf.sprintf
+ "Matita v%s\nUsage: matita [ ARG ]\nOptions:" BuildTimeConf.version
let usage () =
let basename = Filename.basename Sys.argv.(0) in
let parse_cmdline init_status =
if not (already_configured [CmdLine] init_status) then begin
+ wants [Registry] init_status;
let includes = ref [] in
let default_includes = [
".";
Arg.Unit (fun () -> Helm_registry.set_bool "matita.debug" true),
("Do not catch top-level exception "
^ "(useful for backtrace inspection)");
+ "-onepass",
+ Arg.Unit (fun () -> GrafiteDisambiguator.only_one_pass := true),
+ "Enable only one disambiguation pass";
]
else []
in
print_endline (usage ());
exit 1
+let conf_components =
+ [ load_configuration; fill_registry; parse_cmdline]
+
+let other_components =
+ [ initialize_makelib; initialize_db; initialize_environment ]
+
let initialize_all () =
status :=
List.fold_left (fun s f -> f s) !status
- [ fill_registry; parse_cmdline; load_configuration; initialize_makelib;
- initialize_db; initialize_environment ]
+ (conf_components @ other_components)
(* initialize_notation
(initialize_environment
(initialize_db
(load_configuration
(parse_cmdline !status))))) *)
-let load_configuration_file () =
- status := load_configuration !status
-
-let parse_cmdline () =
- status := parse_cmdline !status
+let parse_cmdline_and_configuration_file () =
+ status := List.fold_left (fun s f -> f s) !status conf_components
-let fill_registry () =
- status := fill_registry !status
-;;
+let initialize_environment () =
+ status := initialize_environment !status
-Inversion_principle.init ()
+let _ =
+ Inversion_principle.init ()