]> matita.cs.unibo.it Git - helm.git/commitdiff
get rid of gragrep, matitamake(Lib) and development windows,
authorEnrico Tassi <enrico.tassi@inria.fr>
Sat, 5 Jan 2008 15:43:47 +0000 (15:43 +0000)
committerEnrico Tassi <enrico.tassi@inria.fr>
Sat, 5 Jan 2008 15:43:47 +0000 (15:43 +0000)
added a tutor to create a root file

22 files changed:
components/library/librarian.ml
components/library/librarian.mli
matita/.depend
matita/Makefile
matita/gragrep.ml [deleted file]
matita/gragrep.mli [deleted file]
matita/matita.glade
matita/matita.ml
matita/matitaGui.ml
matita/matitaGuiTypes.mli
matita/matitaInit.ml
matita/matitaMathView.ml
matita/matitaScript.ml
matita/matitaScript.mli
matita/matitaTypes.ml
matita/matitaTypes.mli
matita/matitac.ml
matita/matitadep.ml
matita/matitamake.ml [deleted file]
matita/matitamake.mli [deleted file]
matita/matitamakeLib.ml [deleted file]
matita/matitamakeLib.mli [deleted file]

index e8d0e7da12120e7672282c7e1c9fa68314e2498d..417035a8138d36a118e2cf0d65bdcc7e05936034 100644 (file)
@@ -22,6 +22,18 @@ let remove_trailing_slash s =
   if s.[len-1] = '/' then String.sub s 0 (len-1) else s
 ;;
 
+let parse_root rootpath =
+  let data = HExtlib.input_file rootpath in
+  let lines = Str.split (Str.regexp "\n") data in
+  List.map 
+    (fun l -> 
+      match Str.split (Str.regexp "=") l with
+      | [k;v] -> Pcre.replace ~pat:" " k, Pcre.replace ~pat:" " v
+      | _ -> raise (Failure ("Malformed root file: " ^ rootpath)))
+    lines
+;;
+
+
 let find_root_for ~include_paths file = 
  let include_paths = "" :: Sys.getcwd () :: include_paths in
  let path = HExtlib.find_in include_paths file in
@@ -35,18 +47,7 @@ let find_root_for ~include_paths file =
      | _ -> raise (Helm_registry.Key_not_found "matita.baseuri")
    with Helm_registry.Key_not_found "matita.baseuri" -> 
      let rootpath = find_root path in
-     let data = HExtlib.input_file rootpath in
-     let buri = 
-       let lines = Str.split (Str.regexp "\n") data in
-       let lines = 
-         List.map (fun l -> 
-           match Str.split (Str.regexp "=") l with
-           | [k;v] -> Pcre.replace ~pat:" " k, Pcre.replace ~pat:" " v
-           | _ -> raise (Failure ("Malformed root file: " ^ rootpath)))
-           lines
-       in
-       List.assoc "baseuri" lines
-     in
+     let buri = List.assoc "baseuri" (parse_root rootpath) in
      rootpath, Filename.dirname rootpath, buri
  in
  (* HLog.debug ("file "^file^" rooted by "^rootpath^""); *)
index a6b3c6849a4245a9c18308a5c9bec0d1e9ce44dc..5280dbbf8a4c0460647380d4ad08117731ca025e 100644 (file)
@@ -1,6 +1,8 @@
 exception NoRootFor of string
 
-val find_root : string -> string
+val find_root: string -> string
+
+val parse_root: string -> (string*string) list
 
 (* baseuri_of_script ?(inc:REG[matita.includes]) fname -> root, buri, fullpath 
  * sample: baseuri_of_script a.ma -> /home/pippo/devel/, cic:/matita/a,
index 9b802e20b7b8ccec8d57120ef6a3e67912a7a33a..1530bae72442447e39b951476482adf0512fd6b8 100644 (file)
@@ -2,8 +2,6 @@ applyTransformation.cmo: applyTransformation.cmi
 applyTransformation.cmx: applyTransformation.cmi 
 dump_moo.cmo: buildTimeConf.cmo 
 dump_moo.cmx: buildTimeConf.cmx 
-gragrep.cmo: matitaInit.cmi buildTimeConf.cmo gragrep.cmi 
-gragrep.cmx: matitaInit.cmx buildTimeConf.cmx gragrep.cmi 
 lablGraphviz.cmo: lablGraphviz.cmi 
 lablGraphviz.cmx: lablGraphviz.cmi 
 make.cmo: make.cmi 
@@ -14,18 +12,16 @@ matitaAutoGui.cmx: matitaGeneratedGui.cmx applyTransformation.cmx \
     matitaAutoGui.cmi 
 matitaclean.cmo: matitaMisc.cmi matitaInit.cmi matitaclean.cmi 
 matitaclean.cmx: matitaMisc.cmx matitaInit.cmx matitaclean.cmi 
-matitacLib.cmo: matitamakeLib.cmi matitaExcPp.cmi matitaEngine.cmi \
-    buildTimeConf.cmo applyTransformation.cmi matitacLib.cmi 
-matitacLib.cmx: matitamakeLib.cmx matitaExcPp.cmx matitaEngine.cmx \
-    buildTimeConf.cmx applyTransformation.cmx matitacLib.cmi 
-matitac.cmo: matitaprover.cmi matitamake.cmi matitadep.cmi matitaclean.cmi \
-    matitacLib.cmi matitaWiki.cmo matitaMisc.cmi matitaInit.cmi \
-    matitaEngine.cmi make.cmi gragrep.cmi 
-matitac.cmx: matitaprover.cmx matitamake.cmx matitadep.cmx matitaclean.cmx \
-    matitacLib.cmx matitaWiki.cmx matitaMisc.cmx matitaInit.cmx \
-    matitaEngine.cmx make.cmx gragrep.cmx 
-matitadep.cmo: matitamakeLib.cmi matitaInit.cmi matitadep.cmi 
-matitadep.cmx: matitamakeLib.cmx matitaInit.cmx matitadep.cmi 
+matitacLib.cmo: matitaExcPp.cmi matitaEngine.cmi buildTimeConf.cmo \
+    applyTransformation.cmi matitacLib.cmi 
+matitacLib.cmx: matitaExcPp.cmx matitaEngine.cmx buildTimeConf.cmx \
+    applyTransformation.cmx matitacLib.cmi 
+matitac.cmo: matitaprover.cmi matitadep.cmi matitaclean.cmi matitacLib.cmi \
+    matitaWiki.cmo matitaMisc.cmi matitaInit.cmi matitaEngine.cmi make.cmi 
+matitac.cmx: matitaprover.cmx matitadep.cmx matitaclean.cmx matitacLib.cmx \
+    matitaWiki.cmx matitaMisc.cmx matitaInit.cmx matitaEngine.cmx make.cmx 
+matitadep.cmo: matitaInit.cmi matitadep.cmi 
+matitadep.cmx: matitaInit.cmx matitadep.cmi 
 matitaEngine.cmo: matitaEngine.cmi 
 matitaEngine.cmx: matitaEngine.cmi 
 matitaExcPp.cmo: matitaExcPp.cmi 
@@ -34,30 +30,22 @@ matitaGtkMisc.cmo: matitaTypes.cmi matitaGeneratedGui.cmo buildTimeConf.cmo \
     matitaGtkMisc.cmi 
 matitaGtkMisc.cmx: matitaTypes.cmx matitaGeneratedGui.cmx buildTimeConf.cmx \
     matitaGtkMisc.cmi 
-matitaGui.cmo: matitaprover.cmi matitamakeLib.cmi matitaTypes.cmi \
-    matitaScript.cmi matitaMisc.cmi matitaMathView.cmi matitaGtkMisc.cmi \
+matitaGui.cmo: matitaprover.cmi matitaTypes.cmi matitaScript.cmi \
+    matitaMisc.cmi matitaMathView.cmi matitaGtkMisc.cmi \
     matitaGeneratedGui.cmo matitaExcPp.cmi matitaAutoGui.cmi \
     buildTimeConf.cmo matitaGui.cmi 
-matitaGui.cmx: matitaprover.cmx matitamakeLib.cmx matitaTypes.cmx \
-    matitaScript.cmx matitaMisc.cmx matitaMathView.cmx matitaGtkMisc.cmx \
+matitaGui.cmx: matitaprover.cmx matitaTypes.cmx matitaScript.cmx \
+    matitaMisc.cmx matitaMathView.cmx matitaGtkMisc.cmx \
     matitaGeneratedGui.cmx matitaExcPp.cmx matitaAutoGui.cmx \
     buildTimeConf.cmx matitaGui.cmi 
-matitaInit.cmo: matitamakeLib.cmi matitaExcPp.cmi buildTimeConf.cmo \
-    matitaInit.cmi 
-matitaInit.cmx: matitamakeLib.cmx matitaExcPp.cmx buildTimeConf.cmx \
-    matitaInit.cmi 
-matitamakeLib.cmo: buildTimeConf.cmo matitamakeLib.cmi 
-matitamakeLib.cmx: buildTimeConf.cmx matitamakeLib.cmi 
-matitamake.cmo: matitamakeLib.cmi matitaInit.cmi matitamake.cmi 
-matitamake.cmx: matitamakeLib.cmx matitaInit.cmx matitamake.cmi 
-matitaMathView.cmo: matitamakeLib.cmi matitaTypes.cmi matitaScript.cmi \
-    matitaMisc.cmi matitaGuiTypes.cmi matitaGtkMisc.cmi matitaExcPp.cmi \
-    lablGraphviz.cmi buildTimeConf.cmo applyTransformation.cmi \
-    matitaMathView.cmi 
-matitaMathView.cmx: matitamakeLib.cmx matitaTypes.cmx matitaScript.cmx \
-    matitaMisc.cmx matitaGuiTypes.cmi matitaGtkMisc.cmx matitaExcPp.cmx \
-    lablGraphviz.cmx buildTimeConf.cmx applyTransformation.cmx \
-    matitaMathView.cmi 
+matitaInit.cmo: matitaExcPp.cmi buildTimeConf.cmo matitaInit.cmi 
+matitaInit.cmx: matitaExcPp.cmx buildTimeConf.cmx matitaInit.cmi 
+matitaMathView.cmo: matitaTypes.cmi matitaScript.cmi matitaMisc.cmi \
+    matitaGuiTypes.cmi matitaGtkMisc.cmi matitaExcPp.cmi lablGraphviz.cmi \
+    buildTimeConf.cmo applyTransformation.cmi matitaMathView.cmi 
+matitaMathView.cmx: matitaTypes.cmx matitaScript.cmx matitaMisc.cmx \
+    matitaGuiTypes.cmi matitaGtkMisc.cmx matitaExcPp.cmx lablGraphviz.cmx \
+    buildTimeConf.cmx applyTransformation.cmx matitaMathView.cmi 
 matitaMisc.cmo: buildTimeConf.cmo matitaMisc.cmi 
 matitaMisc.cmx: buildTimeConf.cmx matitaMisc.cmi 
 matita.cmo: matitaTypes.cmi matitaScript.cmi matitaMathView.cmi \
@@ -70,12 +58,12 @@ matitaprover.cmo: matitaInit.cmi matitaExcPp.cmi matitaEngine.cmi \
     buildTimeConf.cmo matitaprover.cmi 
 matitaprover.cmx: matitaInit.cmx matitaExcPp.cmx matitaEngine.cmx \
     buildTimeConf.cmx matitaprover.cmi 
-matitaScript.cmo: matitamakeLib.cmi matitaTypes.cmi matitaMisc.cmi \
-    matitaGtkMisc.cmi matitaEngine.cmi buildTimeConf.cmo \
-    applyTransformation.cmi matitaScript.cmi 
-matitaScript.cmx: matitamakeLib.cmx matitaTypes.cmx matitaMisc.cmx \
-    matitaGtkMisc.cmx matitaEngine.cmx buildTimeConf.cmx \
-    applyTransformation.cmx matitaScript.cmi 
+matitaScript.cmo: matitaTypes.cmi matitaMisc.cmi matitaGtkMisc.cmi \
+    matitaEngine.cmi buildTimeConf.cmo applyTransformation.cmi \
+    matitaScript.cmi 
+matitaScript.cmx: matitaTypes.cmx matitaMisc.cmx matitaGtkMisc.cmx \
+    matitaEngine.cmx buildTimeConf.cmx applyTransformation.cmx \
+    matitaScript.cmi 
 matitaTypes.cmo: matitaTypes.cmi 
 matitaTypes.cmx: matitaTypes.cmi 
 matitaWiki.cmo: matitaInit.cmi matitaExcPp.cmi matitaEngine.cmi \
index 2aef5b8fa3b4870f12195cc1cb020d7cb88ba44d..6d1135a2303a3232fa5e82358b8752fc51dc8738 100644 (file)
@@ -18,8 +18,8 @@ OCAMLC = $(OCAMLFIND) ocamlc$(OCAML_PROF) $(OCAMLC_FLAGS) $(OCAML_DEBUG_FLAGS)
 OCAMLOPT = $(OCAMLFIND) opt $(OCAMLC_FLAGS) $(OCAMLOPT_DEBUG_FLAGS)
 OCAMLDEP = $(OCAMLFIND) ocamldep $(OCAMLDEP_FLAGS)
 INSTALL_PROGRAMS= matita matitac
-INSTALL_PROGRAMS_LINKS_MATITA= cicbrowser 
-INSTALL_PROGRAMS_LINKS_MATITAC= matitadep matitamake matitaclean matitaprover matitawiki
+INSTALL_PROGRAMS_LINKS_MATITA= 
+INSTALL_PROGRAMS_LINKS_MATITAC= matitadep matitaclean matitaprover matitawiki
 
 MATITA_FLAGS = -noprofile
 NODB=false
@@ -32,7 +32,6 @@ MLI = \
        lablGraphviz.mli        \
        matitaTypes.mli         \
        matitaMisc.mli          \
-       matitamakeLib.mli       \
        matitaExcPp.mli         \
        matitaInit.mli          \
        matitaEngine.mli        \
@@ -49,7 +48,6 @@ CMLI =                                \
         make.mli               \
        matitaTypes.mli         \
        matitaMisc.mli          \
-       matitamakeLib.mli       \
        matitaExcPp.mli         \
        matitaInit.mli          \
        matitaEngine.mli        \
@@ -61,8 +59,6 @@ CMLI =                                \
 MAINCMLI =                     \
        matitadep.mli           \
        matitaclean.mli         \
-       matitamake.mli          \
-       gragrep.mli             \
        $(NULL)
 # objects for matita (GTK GUI)
 ML = buildTimeConf.ml matitaGeneratedGui.ml $(MLI:%.mli=%.ml)
@@ -71,11 +67,11 @@ CML = buildTimeConf.ml $(CMLI:%.mli=%.ml)
 MAINCML = $(MAINCMLI:%.mli=%.ml)
        
 PROGRAMS_BYTE = \
-       matita matitac cicbrowser matitadep matitaclean \
-       matitamake matitaprover matitawiki
+       matita matitac matitadep matitaclean \
+       matitaprover matitawiki
 PROGRAMS = $(PROGRAMS_BYTE) 
 PROGRAMS_OPT = $(patsubst %,%.opt,$(PROGRAMS_BYTE))
-NOINST_PROGRAMS = dump_moo gragrep
+NOINST_PROGRAMS = dump_moo 
 NOINST_PROGRAMS_OPT = $(patsubst %,%.opt,$(EXTRA_PROGRAMS))
 
 .PHONY: all
@@ -169,21 +165,6 @@ matitaclean: matitac
 matitaclean.opt: matitac.opt
        $(H)test -f $@ || ln -s $< $@
 
-matitamake: matitac
-       $(H)test -f $@ || ln -s $< $@
-matitamake.opt: matitac.opt
-       $(H)test -f $@ || ln -s $< $@
-       
-gragrep: matitac
-       $(H)test -f $@ || ln -s $< $@
-gragrep.opt: matitac.opt
-       $(H)test -f $@ || ln -s $< $@
-       
-cicbrowser: matita
-       $(H)test -f $@ || ln -s $< $@
-cicbrowser.opt: matita.opt
-       $(H)test -f $@ || ln -s $< $@
-
 matitaGeneratedGui.ml: matita.glade
        $(H)$(LABLGLADECC) -embed $< > matitaGeneratedGui.ml
 
@@ -378,12 +359,6 @@ matitaclean.opt.static: matitac.opt.static
        $(H)test -f $@ || ln -s $< $@
 matitawiki.opt.static: matitac.opt.static
        $(H)test -f $@ || ln -s $< $@
-matitamake.opt.static: matitac.opt.static
-       $(H)test -f $@ || ln -s $< $@
-cicbrowser.opt.static: matita.opt.static
-       $(H)test -f $@ || ln -s $< $@
-cicbrowser.opt.static.upx: matita.opt.static.upx
-       $(H)test -f $@ || ln -s $< $@
 
 %.upx: %
        cp $< $@
diff --git a/matita/gragrep.ml b/matita/gragrep.ml
deleted file mode 100644 (file)
index d44c08d..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-(* Copyright (C) 2006, HELM Team.
- * 
- * This file is part of HELM, an Hypertextual, Electronic
- * Library of Mathematics, developed at the Computer Science
- * Department, University of Bologna, Italy.
- * 
- * HELM is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- * 
- * HELM is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HELM; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA  02111-1307, USA.
- * 
- * For details, see the HELM World-Wide-Web page,
- * http://helm.cs.unibo.it/
- *)
-
-open Printf
-
-let is_notation = function GrafiteParser.LNone _ -> true | _ -> false
-
-let grep () =
-  let recursive = ref false in
-  let spec = [
-    "-r", Arg.Set recursive, "enable directory recursion";
-  ] in
-  MatitaInit.add_cmdline_spec spec;
-  MatitaInit.initialize_all ();
-  let include_paths =
-    Helm_registry.get_list Helm_registry.string "matita.includes" in
-  let status =
-    CicNotation2.load_notation ~include_paths
-      BuildTimeConf.core_notation_script in
-  let path =
-    match Helm_registry.get_list Helm_registry.string "matita.args" with
-    | [ path ] -> path
-    | _ -> MatitaInit.die_usage () in
-  let grep_fun =
-    if !recursive then
-      (fun dirname ->
-        ignore (GrafiteWalker.rgrep_statement ~status
-          ~callback:(fun (fname, s) -> printf "%s: %s\n%!" fname s)
-          ~dirname is_notation))
-    else
-      (fun fname ->
-        ignore (GrafiteWalker.grep_statement ~status
-          ~callback:(fun s -> printf "%s\n%!" s)
-          ~fname is_notation)) in
-  grep_fun path
-
-let handle_localized_exns f arg =
-  try
-    f arg
-  with HExtlib.Localized (loc, exn) ->
-    let loc_begin, loc_end = HExtlib.loc_of_floc loc in
-    eprintf "Error at %d-%d: %s\n%!" loc_begin loc_end (Printexc.to_string exn)
-
-let main () = handle_localized_exns grep ()
-
diff --git a/matita/gragrep.mli b/matita/gragrep.mli
deleted file mode 100644 (file)
index f762adb..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-(* Copyright (C) 2006, HELM Team.
- * 
- * This file is part of HELM, an Hypertextual, Electronic
- * Library of Mathematics, developed at the Computer Science
- * Department, University of Bologna, Italy.
- * 
- * HELM is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- * 
- * HELM is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HELM; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA  02111-1307, USA.
- * 
- * For details, see the HELM World-Wide-Web page,
- * http://helm.cs.unibo.it/
- *)
-
-val main: unit -> unit
-
index 72ba3db8c62fcfb806e7c1bd0c601aa5930d7397..462d0c64c9db3961498babc5c6d6fd1245f145b1 100644 (file)
                                 </child>
                               </widget>
                             </child>
+                           <!--
                             <child>
                               <widget class="GtkImageMenuItem" id="developmentsMenuItem">
                                 <property name="visible">True</property>
                                 </child>
                               </widget>
                             </child>
+                           -->
                             <child>
                               <widget class="GtkSeparatorMenuItem" id="separator2">
                                 <property name="visible">True</property>
       </widget>
     </child>
   </widget>
-  <widget class="GtkWindow" id="NewDevelWin">
-    <property name="title" translatable="yes">Create development</property>
-    <property name="resizable">False</property>
+  <widget class="GtkWindow" id="NewRootWin">
+    <property name="title" translatable="yes">Create root file</property>
+    <property name="resizable">True</property>
     <property name="modal">True</property>
     <property name="window_position">GTK_WIN_POS_CENTER_ALWAYS</property>
     <property name="type_hint">GDK_WINDOW_TYPE_HINT_UTILITY</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkEntry" id="nameEntry">
+              <widget class="GtkEntry" id="buriEntry">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="invisible_char">*</property>
               <widget class="GtkLabel" id="label20">
                 <property name="visible">True</property>
                 <property name="xalign">0</property>
-                <property name="label" translatable="yes">Name</property>
+                <property name="label" translatable="yes">Base URI</property>
               </widget>
               <packing>
                 <property name="x_options">GTK_FILL</property>
       </widget>
     </child>
   </widget>
+  <!--
   <widget class="GtkWindow" id="DevelListWin">
     <property name="title" translatable="yes">Developments</property>
     <property name="window_position">GTK_WIN_POS_CENTER</property>
       </widget>
     </child>
   </widget>
+  -->
   <widget class="GtkDialog" id="DisambiguationErrors">
     <property name="width_request">450</property>
     <property name="height_request">400</property>
index b3c0373eb3120d9d326dccfdb174914b48a34654..198fad3c57fc54ab90d23ec58eee46e728fdfbe6 100644 (file)
@@ -65,7 +65,7 @@ let script =
         (fun ~title ~message -> 
             MatitaGtkMisc.ask_confirmation ~title ~message 
             ~parent:gui#main#toplevel ())
-      ~develcreator:gui#createDevelopment
+      ~rootcreator:gui#createRoot
       ()
   in
   gui#sourceView#source_buffer#begin_not_undoable_action ();
@@ -274,34 +274,16 @@ let _ =
   end
   (** Debugging }}} *)
 
-  (** {2 Command line parsing} *)
-
-let set_matita_mode () =
-  let matita_mode =
-    if Filename.basename Sys.argv.(0) = "cicbrowser" || 
-       Filename.basename Sys.argv.(0) = "cicbrowser.opt"
-    then "cicbrowser"
-    else "matita"
-  in
-  Helm_registry.set "matita.mode" matita_mode
-
   (** {2 Main} *)
 
 let _ =
-  set_matita_mode ();
   at_exit (fun () -> print_endline "\nThanks for using Matita!\n");
   Sys.catch_break true;
   let args = Helm_registry.get_list Helm_registry.string "matita.args" in
-  if Helm_registry.get "matita.mode" = "cicbrowser" then  (* cicbrowser *)
-    let browser = MatitaMathView.cicBrowser () in
-    let uri = match args with [] -> "cic:/" | _ -> String.concat " " args in
-    browser#loadInput uri
-  else begin  (* matita *)
-    (try gui#loadScript (List.hd args) with Failure _ -> ());
-    gui#main#mainWin#show ();
-  end;
+  (try gui#loadScript (List.hd args) with Failure _ -> ());
+  gui#main#mainWin#show ();
   try
-    GtkThread.main ()
+   GtkThread.main ()
   with Sys.Break ->
    Sys.set_signal Sys.sigint
     (Sys.Signal_handle
index ff1281fde74770946d3db9210b9b0eea59681beb..7fe9cdedb5357e94917da928a74ddb9de96ba3e4 100644 (file)
@@ -362,8 +362,7 @@ class gui () =
   let main = new mainWin () in
   let fileSel = new fileSelectionWin () in
   let findRepl = new findReplWin () in
-  let develList = new develListWin () in
-  let newDevel = new newDevelWin () in
+  let newRoot = new newRootWin () in
   let keyBindingBoxes = (* event boxes which should receive global key events *)
     [ main#mainWinEventBox ]
   in
@@ -387,7 +386,7 @@ class gui () =
     val mutable _ok_not_exists = false
     val mutable _only_directory = false
     val mutable font_size = default_font_size
-    val mutable next_devel_must_contain = None
+    val mutable next_root_must_contain = None
     val mutable next_ligatures = []
     val clipboard = GData.clipboard Gdk.Atom.clipboard
     val primary = GData.clipboard Gdk.Atom.primary
@@ -632,13 +631,11 @@ class gui () =
         (* interface lockers *)
       let lock_world _ =
         main#buttonsToolbar#misc#set_sensitive false;
-        develList#buttonsHbox#misc#set_sensitive false;
         main#scriptMenu#misc#set_sensitive false;
         source_view#set_editable false
       in
       let unlock_world _ =
         main#buttonsToolbar#misc#set_sensitive true;
-        develList#buttonsHbox#misc#set_sensitive true;
         main#scriptMenu#misc#set_sensitive true;
         source_view#set_editable true;
         (*The next line seems sufficient to avoid some unknown race condition *)
@@ -723,128 +720,26 @@ class gui () =
           f (); source_view#misc#grab_focus ()
          with
           exc -> source_view#misc#grab_focus (); raise exc in
-        (* developments win *)
-      let model = 
-        new MatitaGtkMisc.multiStringListModel 
-          ~cols:2 develList#developmentsTreeview
-      in
-      let refresh_devels_win () =
-        model#list_store#clear ();
-        List.iter 
-          (fun (name, root) -> model#easy_mappend [name;root]) 
-          (MatitamakeLib.list_known_developments ())
-      in
-      let get_devel_selected () = 
-        match model#easy_mselection () with
-        | [[name;_]] -> MatitamakeLib.development_for_name name
-        | _ -> None
-      in
-      let refresh () = 
-        while Glib.Main.pending () do 
-          ignore(Glib.Main.iteration false); 
-        done
-      in
-      connect_button develList#newButton
-        (fun () -> 
-          next_devel_must_contain <- None;
-          newDevel#toplevel#misc#show());
-      connect_button develList#deleteButton
-        (locker (fun () -> 
-          (match get_devel_selected () with
-          | None -> ()
-          | Some d -> MatitamakeLib.destroy_development_in_bg refresh d);
-          refresh_devels_win ()));
-      connect_button develList#buildButton 
-        (locker (fun () -> 
-          match get_devel_selected () with
-          | None -> ()
-          | Some d -> 
-              let build = locker 
-                (fun () -> MatitamakeLib.build_development_in_bg refresh d)
-              in
-              ignore(build ())));
-      connect_button develList#cleanButton 
-        (locker (fun () -> 
-          match get_devel_selected () with
-          | None -> ()
-          | Some d -> 
-              let clean = locker 
-                (fun () -> MatitamakeLib.clean_development_in_bg refresh d)
-              in
-              ignore(clean ())));
-      (* publish button hidden, use command line 
-      connect_button develList#publishButton 
-        (locker (fun () -> 
-          match get_devel_selected () with
-          | None -> ()
-          | Some d -> 
-              let publish = locker (fun () ->
-                MatitamakeLib.publish_development_in_bg refresh d) in
-              ignore(publish ())));
-              *)
-      develList#publishButton#misc#hide ();
-      connect_button develList#graphButton (fun () -> 
-        match get_devel_selected () with
-        | None -> ()
-        | Some d ->
-            (match MatitamakeLib.dot_for_development d with
-            | None -> ()
-            | Some _ ->
-                let browser = MatitaMathView.cicBrowser () in
-                browser#load (`Development
-                  (MatitamakeLib.name_for_development d))));
-      connect_button develList#closeButton 
-        (fun () -> develList#toplevel#misc#hide());
-      ignore(develList#toplevel#event#connect#delete 
-        (fun _ -> develList#toplevel#misc#hide();true));
-      connect_menu_item main#developmentsMenuItem
-        (fun () -> refresh_devels_win ();develList#toplevel#misc#show ());
-      
-        (* add development win *)
-      let check_if_root_contains root =
-        match next_devel_must_contain with
-        | None -> true
-        | Some path -> 
-            let is_prefix_of d1 d2 =
-              let d1 = MatitamakeLib.normalize_path d1 in
-              let d2 = MatitamakeLib.normalize_path d2 in
-              let len1 = String.length d1 in
-              let len2 = String.length d2 in
-              if len2 < len1 then 
-                false
-              else
-                let pref = String.sub d2 0 len1 in
-                pref = d1
-            in
-            is_prefix_of root path
-      in
-      connect_button newDevel#addButton 
+      (* add root win *)
+      connect_button newRoot#addButton 
        (fun () -> 
-          let name = newDevel#nameEntry#text in
-          let root = newDevel#rootEntry#text in
-          if check_if_root_contains root then
-            begin
-              ignore (MatitamakeLib.initialize_development name root);
-              refresh_devels_win ();
-              newDevel#nameEntry#set_text "";
-              newDevel#rootEntry#set_text "";
-              newDevel#toplevel#misc#hide()
-            end
-          else
-            HLog.error ("The selected root does not contain " ^ 
-              match next_devel_must_contain with 
-              | Some x -> x 
-              | _ -> assert false));
-      connect_button newDevel#chooseRootButton 
+          let name = newRoot#buriEntry#text in
+          let root = newRoot#rootEntry#text in
+          if next_root_must_contain = Some "xxx" then ();
+          HLog.error ("implement me: "^root^" "^name);
+          newRoot#buriEntry#set_text "";
+          newRoot#rootEntry#set_text "";
+          newRoot#toplevel#misc#hide());
+      connect_button newRoot#chooseRootButton 
        (fun () ->
          let path = self#chooseDir () in
          match path with
-         | Some path -> newDevel#rootEntry#set_text path
+         | Some path -> newRoot#rootEntry#set_text path
          | None -> ());
-      connect_button newDevel#cancelButton 
-       (fun () -> newDevel#toplevel#misc#hide ());
-      ignore(newDevel#toplevel#event#connect#delete 
-        (fun _ -> newDevel#toplevel#misc#hide();true));
+      connect_button newRoot#cancelButton 
+       (fun () -> newRoot#toplevel#misc#hide ());
+      ignore(newRoot#toplevel#event#connect#delete 
+        (fun _ -> newRoot#toplevel#misc#hide();true));
       
         (* file selection win *)
       ignore (fileSel#fileSelectionWin#event#connect#delete (fun _ -> true));
@@ -1291,8 +1186,7 @@ class gui () =
     method fileSel = fileSel
     method findRepl = findRepl
     method main = main
-    method develList = develList
-    method newDevel = newDevel
+    method newRoot = newRoot
 
     method newBrowserWin () =
       object (self)
@@ -1346,9 +1240,9 @@ class gui () =
       (* we should check that this is a directory *)
       chosen_file
   
-    method createDevelopment ~containing =
-      next_devel_must_contain <- containing;
-      newDevel#toplevel#misc#show()
+    method createRoot ~containing =
+      next_root_must_contain <- containing;
+      newRoot#toplevel#misc#show()
 
     method askText ?(title = "") ?(msg = "") () =
       let dialog = new textDialog () in
index 71cda4ac9d42044e0e2def2d89113fddcba8f740..5a166fbd43c5b5988c85151da05181987eca861e 100644 (file)
@@ -49,8 +49,7 @@ object
   method fileSel :      MatitaGeneratedGui.fileSelectionWin
   method main :         MatitaGeneratedGui.mainWin
   method findRepl :     MatitaGeneratedGui.findReplWin
-  method develList:     MatitaGeneratedGui.develListWin
-  method newDevel:      MatitaGeneratedGui.newDevelWin
+  method newRoot:      MatitaGeneratedGui.newRootWin
 (*   method toolbar :      MatitaGeneratedGui.toolBarWin *)
 
   method console:       console
@@ -87,7 +86,7 @@ object
     * @param ok_not_exists if set to true returns also non existent files
     * (useful for save). Defaults to false *)
   method chooseFile: ?ok_not_exists:bool -> unit -> string option
-  method createDevelopment: containing:string option -> unit
+  method createRoot: containing:string option -> unit
 
     (** prompt the user for a (multiline) text entry *)
   method askText: ?title:string -> ?msg:string -> unit -> string option
index 58aadf76f45c2d85b6a55603e72ca42692d355cf..7bdf36a1a69203e9d2c7c3dc176bf4270943f368 100644 (file)
@@ -26,7 +26,7 @@
 (* $Id$ *)
 
 type thingsToInitilaize = 
-  ConfigurationFile | Db | Environment | Getter | Makelib | CmdLine | Registry
+  ConfigurationFile | Db | Environment | Getter | CmdLine | Registry
   
 exception FailedToInitialize of thingsToInitilaize
 
@@ -102,16 +102,6 @@ let initialize_db init_status =
   else
     init_status
 
-let initialize_makelib init_status = 
-  wants [ConfigurationFile] init_status;
-  if not (already_configured [Makelib] init_status) then
-    begin
-      MatitamakeLib.initialize (); 
-      Makelib::init_status
-    end
-  else
-    init_status
-
 let initialize_environment init_status = 
   wants [CmdLine] init_status;
   if not (already_configured [Getter;Environment] init_status) then
@@ -324,18 +314,12 @@ let conf_components =
   [ load_configuration; fill_registry; parse_cmdline]
 
 let other_components =
-  [ initialize_makelib; initialize_db; initialize_environment ]
+  [ initialize_db; initialize_environment ]
 
 let initialize_all () =
   status := 
     List.fold_left (fun s f -> f s) !status
     (conf_components @ other_components)
-(*     initialize_notation 
-      (initialize_environment 
-        (initialize_db 
-          (initialize_makelib
-            (load_configuration
-              (parse_cmdline !status))))) *)
 
 let parse_cmdline_and_configuration_file () =
   status := List.fold_left (fun s f -> f s) !status conf_components
index 23f57820df80601337c8ba86ff5b958a0f428383..ff79f54ed05ee8d59a7bcfde9a1bff29538eef76 100644 (file)
@@ -904,10 +904,6 @@ class cicBrowser_impl ~(history:MatitaTypes.mathViewer_entry MatitaMisc.history)
       ignore (win#toplevel#event#connect#delete (fun _ ->
         let my_id = Oo.id self in
         cicBrowsers := List.filter (fun b -> Oo.id b <> my_id) !cicBrowsers;
-        if !cicBrowsers = [] &&
-          Helm_registry.get "matita.mode" = "cicbrowser"
-        then
-          GMain.quit ();
         false));
       ignore(win#whelpResultTreeview#connect#row_activated 
         ~callback:(fun _ _ ->
@@ -1045,7 +1041,6 @@ class cicBrowser_impl ~(history:MatitaTypes.mathViewer_entry MatitaMisc.history)
           | `About `Coercions -> self#coerchgraph true ()
           | `Check term -> self#_loadCheck term
           | `Cic (term, metasenv) -> self#_loadTermCic term metasenv
-          | `Development d -> self#_showDevelDeps d
           | `Dir dir -> self#_loadDir dir
           | `HBugs `Tutors -> self#_loadHBugsTutors
           | `Metadata (`Deps ((`Fwd | `Back) as dir, uri)) ->
@@ -1136,16 +1131,6 @@ class cicBrowser_impl ~(history:MatitaTypes.mathViewer_entry MatitaMisc.history)
       win#browserUri#entry#set_text (MatitaTypes.string_of_entry entry);
       current_entry <- entry
 
-    method private _showDevelDeps d =
-      match MatitamakeLib.development_for_name d with
-      | None -> ()
-      | Some devel ->
-          (match MatitamakeLib.dot_for_development devel with
-          | None -> ()
-          | Some fname ->
-              gviz#load_graph_from_file ~gviz_cmd:"tred | dot" fname;
-              self#_showGviz)
-
     method private _loadObj obj =
       (* showMath must be done _before_ loading the document, since if the
        * widget is not mapped (hidden by the notebook) the document is not
index c4cb286b382a9f58ec31d4dba37ff2a1948fe8e6..255a0dde1ef7ebfbfb2d83153055717274220ac1 100644 (file)
@@ -69,7 +69,6 @@ type guistuff = {
   mathviewer:MatitaTypes.mathViewer;
   urichooser: UriManager.uri list -> UriManager.uri list;
   ask_confirmation: title:string -> message:string -> [`YES | `NO | `CANCEL];
-  develcreator: containing:string option -> unit;
 }
 
 let eval_with_engine guistuff lexicon_status grafite_status user_goal
@@ -101,80 +100,32 @@ let eval_with_engine guistuff lexicon_status grafite_status user_goal
       ([],skipped_txt) enriched_history_fragment
   in
   res,"",parsed_text_length
+;;
 
-let wrap_with_developments guistuff f arg = 
-  let compile_needed_and_go_on lexiconfile d exc =
-    let target = Pcre.replace ~pat:"lexicon$" ~templ:"moo" lexiconfile in
-    let target = Pcre.replace ~pat:"metadata$" ~templ:"moo" target in
-    let refresh_cb () = 
-      while Glib.Main.pending () do ignore(Glib.Main.iteration false); done
-    in
-    if not(MatitamakeLib.build_development_in_bg ~target refresh_cb d) then
-      raise exc
-    else
-      f arg
-  in
-  let do_nothing () = raise (ActionCancelled "Inclusion not performed") in
-  let check_if_file_is_exists f =
-    assert(Pcre.pmatch ~pat:"ma$" f);
-    let pwd = Sys.getcwd () in
-    let f_pwd = pwd ^ "/" ^ f in
-    if not (HExtlib.is_regular f_pwd) then
-      raise (ActionCancelled ("File "^f_pwd^" does not exists!"))
-    else
-      raise 
-        (ActionCancelled 
-          ("Internal error: "^f_pwd^" exists but I'm unable to include it!"))
-  in
-  let handle_with_devel d lexiconfile mafile exc =
-    let name = MatitamakeLib.name_for_development d in
-    let title = "Unable to include " ^ lexiconfile in
-    let message = 
-      mafile ^ " is handled by development <b>" ^ name ^ "</b>.\n\n" ^
-      "<i>Should I compile it and Its dependencies?</i>"
-    in
-    (match guistuff.ask_confirmation ~title ~message with
-    | `YES -> compile_needed_and_go_on lexiconfile d exc
-    | `NO -> raise exc
-    | `CANCEL -> do_nothing ())
-  in
-  let handle_without_devel mafilename exc =
-    let title = "Unable to include " ^ mafilename in
-    let message = 
-     mafilename ^ " is <b>not</b> handled by a development.\n" ^
-     "All dependencies are automatically solved for a development.\n\n" ^
-     "<i>Do you want to set up a development?</i>"
-    in
-    (match guistuff.ask_confirmation ~title ~message with
-    | `YES -> 
-        guistuff.develcreator ~containing:(Some (Filename.dirname mafilename));
-        do_nothing ()
-    | `NO -> raise exc
-    | `CANCEL -> do_nothing())
-  in
-  try 
-    f arg
+let wrap_with_make g f x = 
+  try      
+    f x
   with
-  | DependenciesParser.UnableToInclude mafilename -> 
+(*
+  | DependenciesParser.UnableToInclude mafilename ->
       assert (Pcre.pmatch ~pat:"ma$" mafilename);
       check_if_file_is_exists mafilename
-  | LexiconEngine.IncludedFileNotCompiled (xfilename,mafilename) 
+*)
+  | LexiconEngine.IncludedFileNotCompiled (xfilename,mafilename)
   | GrafiteEngine.IncludedFileNotCompiled (xfilename,mafilename) as exn ->
       assert (Pcre.pmatch ~pat:"ma$" mafilename);
-      assert (Pcre.pmatch ~pat:"lexicon$" xfilename || 
+      assert (Pcre.pmatch ~pat:"lexicon$" xfilename ||
               Pcre.pmatch ~pat:"mo$" xfilename );
       (* we know that someone was able to include the .ma, get the baseuri
        * but was unable to get the compilation output 'xfilename' *)
-      match MatitamakeLib.development_for_dir (Filename.dirname mafilename) with
-      | None -> handle_without_devel mafilename exn
-      | Some d -> handle_with_devel d xfilename mafilename exn
+      raise exn
 ;;
-    
+
 let eval_with_engine
      guistuff lexicon_status grafite_status user_goal 
        skipped_txt nonskipped_txt st
 =
-  wrap_with_developments guistuff
+  wrap_with_make guistuff
     (eval_with_engine 
       guistuff lexicon_status grafite_status user_goal 
         skipped_txt nonskipped_txt) st
@@ -680,7 +631,7 @@ and eval_statement include_paths (buffer : GText.buffer) guistuff lexicon_status
     | `Raw text ->
         if Pcre.pmatch ~rex:only_dust_RE text then raise Margin;
         let ast = 
-          wrap_with_developments guistuff
+          wrap_with_make guistuff
             (GrafiteParser.parse_statement 
               (Ulexing.from_utf8_string text) ~include_paths) lexicon_status 
         in
@@ -739,7 +690,7 @@ class script  ~(source_view: GSourceView.source_view)
               ~set_star
               ~ask_confirmation
               ~urichooser 
-              ~develcreator 
+              ~rootcreator 
               () =
 let buffer = source_view#buffer in
 let source_buffer = source_view#source_buffer in
@@ -765,7 +716,6 @@ object (self)
     mathviewer = mathviewer;
     urichooser = urichooser;
     ask_confirmation = ask_confirmation;
-    develcreator=develcreator;
   }
 
   val mutable filename_ = (None : string option)
@@ -1162,10 +1112,10 @@ end
 
 let _script = ref None
 
-let script ~source_view ~mathviewer ~urichooser ~develcreator ~ask_confirmation ~set_star ()
+let script ~source_view ~mathviewer ~urichooser ~rootcreator ~ask_confirmation ~set_star ()
 =
   let s = new script 
-    ~source_view ~mathviewer ~ask_confirmation ~urichooser ~develcreator ~set_star () 
+    ~source_view ~mathviewer ~ask_confirmation ~urichooser ~rootcreator ~set_star () 
   in
   _script := Some s;
   s
index 8f120b29632c3c34e219baef41ca3f79b66f7d2a..89986ead7e0cd01a6600758bcf5369a3b309017c 100644 (file)
@@ -92,7 +92,7 @@ val script:
   source_view:GSourceView.source_view -> 
   mathviewer: MatitaTypes.mathViewer-> 
   urichooser: (UriManager.uri list -> UriManager.uri list) -> 
-  develcreator: (containing:string option -> unit) ->
+  rootcreator: (containing:string option -> unit) ->
   ask_confirmation: 
     (title:string -> message:string -> [`YES | `NO | `CANCEL]) -> 
   set_star: (bool -> unit) ->
index 23d0d832f238947adef0cb875c86b65ddd750af4..0c8952e89777016f954536df2f416895c5d0a6fc 100644 (file)
@@ -43,7 +43,6 @@ type mathViewer_entry =
   [ `About of abouts  (* current proof *)
   | `Check of string  (* term *)
   | `Cic of Cic.term * Cic.metasenv
-  | `Development of string
   | `Dir of string  (* "directory" in cic uris namespace *)
   | `HBugs of [ `Tutors ] (* list of available HBugs tutors *)
   | `Metadata of [ `Deps of [`Fwd | `Back] * UriManager.uri ]
@@ -59,7 +58,6 @@ let string_of_entry = function
   | `About `CoercionsFull -> "about:coercions"
   | `Check _ -> "check:"
   | `Cic (_, _) -> "term:"
-  | `Development d -> "devel:/" ^ d
   | `Dir uri -> uri
   | `HBugs `Tutors -> "hbugs:/tutors/"
   | `Metadata meta ->
index c71c99dcc9adc1eea9ad23a780eca3113baa3ce7..67655c921e449e68106976f7bbda2dea8b556e0f 100644 (file)
@@ -31,7 +31,6 @@ type mathViewer_entry =
   [ `About of abouts
   | `Check of string
   | `Cic of Cic.term * Cic.metasenv
-  | `Development of string
   | `Dir of string
   | `HBugs of [ `Tutors ]
   | `Metadata of [ `Deps of [`Fwd | `Back] * UriManager.uri ]
index 8645d21755ca4460c9747715ad5c024e2a53de86..8f8a19b2da8c94e43082b54b6ec02497d1d76a4f 100644 (file)
@@ -145,12 +145,9 @@ let main_compiler () =
 let main () =
  Helm_registry.set_bool "matita.moo" true;
  match Filename.basename Sys.argv.(0) with
- |"gragrep"    |"gragrep.opt"    |"gragrep.opt.static"    ->Gragrep.main()
  |"matitadep"  |"matitadep.opt"  |"matitadep.opt.static"  ->Matitadep.main()
  |"matitaclean"|"matitaclean.opt"|"matitaclean.opt.static"->Matitaclean.main()
- |"matitamake" |"matitamake.opt" |"matitamake.opt.static" ->Matitamake.main()
- |"matitaprover"|"matitaprover.opt"
- |"matitaprover.opt.static" ->Matitaprover.main()
+ |"matitaprover"|"matitaprover.opt"|"matitaprover.opt.static"->Matitaprover.main()
  |"matitawiki"|"matitawiki.opt" ->MatitaWiki.main()
  | _ ->
     let dump_msg = "<filename> Dump with expanded macros to <filename>" in
index 4e309ae7585be99d31c82967ab9013cd84a410e2..995230c451e9082fd995b62ee6a2274eeec6ca20 100644 (file)
@@ -66,7 +66,6 @@ let main () =
     "<file> Save dependency graph in dot format to the given file";];
   MatitaInit.parse_cmdline_and_configuration_file ();
   MatitaInit.initialize_environment ();
-  MatitamakeLib.initialize ();
   let args = Helm_registry.get_list Helm_registry.string "matita.args" in
   let args = 
     if args = [] then
diff --git a/matita/matitamake.ml b/matita/matitamake.ml
deleted file mode 100644 (file)
index ad43687..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-(* Copyright (C) 2005, HELM Team.
- * 
- * This file is part of HELM, an Hypertextual, Electronic
- * Library of Mathematics, developed at the Computer Science
- * Department, University of Bologna, Italy.
- * 
- * HELM is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- * 
- * HELM is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HELM; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA  02111-1307, USA.
- * 
- * For details, see the HELM World-Wide-Web page,
- * http://helm.cs.unibo.it/
- *)
-
-(* $Id$ *)
-
-module MK = MatitamakeLib ;;
-
-let main () =
-  MatitaInit.parse_cmdline_and_configuration_file ();
-  MK.initialize ();
-  let usage = ref (fun () -> ()) in
-  let dev_of_name name = 
-    match MK.development_for_name name with
-    | None -> 
-        prerr_endline ("Unable to find a development called " ^ name);
-        exit 1
-    | Some d -> d
-  in
-  let dev_for_dir dir =
-    match MK.development_for_dir dir with
-    | None -> 
-        prerr_endline ("Unable to find a development holding directory: "^ dir);
-        exit 1
-    | Some d -> d
-  in
-  let init_dev args =
-    let name, path =
-      match args with
-      | [ name; path ] when path.[0] = '/' -> name, path
-      | [ name; path ] -> name, Unix.getcwd () ^ "/" ^ path
-      | [ name ] -> name, Unix.getcwd ()
-      | _ -> !usage (); (* should not be reached *) assert false
-    in
-    match MK.initialize_development name path with
-    | None -> exit 2
-    | Some _ -> exit 0
-  in
-  let list_dev args =
-    if List.length args <> 0 then !usage ();
-    match MK.list_known_developments () with
-    | [] -> print_string "No developments found.\n"; exit 0
-    | l ->
-        List.iter 
-          (fun (name, root) -> 
-            print_string (Printf.sprintf "%-10s\trooted in %s\n" name root)) 
-          l;
-        exit 0
-  in
-  let destroy_dev args = 
-    if List.length args <> 1 then !usage ();
-    let name = (List.hd args) in
-    let dev = dev_of_name name in
-    MK.destroy_development dev; 
-    exit 0
-  in
-  let clean_dev args = 
-    let dev = 
-      match args with
-      | [] -> dev_for_dir (Unix.getcwd ())
-      | [name] -> dev_of_name name
-      | _ -> !usage (); exit 1
-    in
-    match MK.clean_development dev with
-    | true -> exit 0
-    | false -> exit 1
-  in
-  let build_dev args = 
-    if List.length args <> 1 then !usage ();
-    let name = (List.hd args) in
-    let dev = dev_of_name name in
-    match MK.build_development dev with
-    | true -> exit 0
-    | false -> exit 1
-  in
-  let publish_dev args = 
-    if List.length args <> 1 then !usage ();
-    let name = (List.hd args) in
-    let dev = dev_of_name name in
-    match MK.publish_development dev with
-    | true -> exit 0
-    | false -> exit 1
-  in
-  let target args = 
-    if List.length args < 1 then !usage ();
-    let dev = dev_for_dir (Unix.getcwd ()) in
-    List.iter 
-      (fun t -> 
-        ignore(MK.build_development ~target:t dev)) 
-      args
-  in
-  let params = [
-    "init", init_dev;
-    "clean", clean_dev;
-    "list", list_dev;
-    "destroy", destroy_dev;
-    "build", build_dev;
-    "publish", publish_dev;
-  ]
-  in
-  usage := MatitaInit.die_usage;
-  let parse args = 
-    match args with
-    | [] -> target [ "all" ]
-    | s :: tl ->
-        let f, args = 
-          try 
-            (List.assoc s params), tl
-          with Not_found -> 
-            if s.[0] = '-' then (!usage ();assert false) else target, args
-        in
-        f args
-  in
-  parse (Helm_registry.get_list Helm_registry.string "matita.args")
diff --git a/matita/matitamake.mli b/matita/matitamake.mli
deleted file mode 100644 (file)
index 47ea2fe..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-(* Copyright (C) 2006, HELM Team.
- * 
- * This file is part of HELM, an Hypertextual, Electronic
- * Library of Mathematics, developed at the Computer Science
- * Department, University of Bologna, Italy.
- * 
- * HELM is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- * 
- * HELM is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HELM; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA  02111-1307, USA.
- * 
- * For details, see the HELM World-Wide-Web page,
- * http://helm.cs.unibo.it/
- *)
-
-val main : unit -> unit
-
diff --git a/matita/matitamakeLib.ml b/matita/matitamakeLib.ml
deleted file mode 100644 (file)
index 499d0ea..0000000
+++ /dev/null
@@ -1,394 +0,0 @@
-(* Copyright (C) 2005, HELM Team.
- * 
- * This file is part of HELM, an Hypertextual, Electronic
- * Library of Mathematics, developed at the Computer Science
- * Department, University of Bologna, Italy.
- * 
- * HELM is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- * 
- * HELM is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HELM; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA  02111-1307, USA.
- * 
- * For details, see the HELM World-Wide-Web page,
- * http://helm.cs.unibo.it/
- *)
-
-(* $Id$ *)
-
-open Printf
-
-let logger = fun mark -> 
-  match mark with 
-  | `Error -> HLog.error
-  | `Warning -> HLog.warn
-  | `Debug -> HLog.debug
-  | `Message -> HLog.message
-
-type development = 
-  { root: string ; name: string }
-
-let developments = ref []
-  
-let pool () = Helm_registry.get "matita.basedir" ^ "/matitamake/" ;;
-let rootfile = "/root" ;;
-
-(* /foo/./bar/..//baz -> /foo/baz *)
-let normalize_path s = 
-  let s = Str.global_replace (Str.regexp "//") "/" s in
-  let l = Str.split (Str.regexp "/") s in
-  let rec aux = function
-    | [] -> []
-    | he::".."::tl -> aux tl
-    | he::"."::tl -> aux (he::tl)
-    | he::tl -> he :: aux tl
-  in
-  (if Str.string_match (Str.regexp "^/") s 0 then "/" else "") ^
-  String.concat "/" (aux l)
-  ^ (if Str.string_match (Str.regexp "/$") s 0 then "/" else "")
-;;
-
-let ls_dir dir = 
-  try
-    let d = Unix.opendir dir in
-    let content = ref [] in
-    try
-      while true do
-        let name = Unix.readdir d in
-        if name <> "." && name <> ".." then
-          content := name :: !content
-      done;
-      Some []
-    with End_of_file -> Unix.closedir d; Some !content
-  with Unix.Unix_error _ -> None
-
-let initialize () = 
-  (* create a base env if none *)
-  HExtlib.mkdir (pool ());
-  (* load developments *)
-  match ls_dir (pool ()) with
-  | None -> logger `Error ("Unable to list directory " ^ pool ()) 
-  | Some l -> 
-      let paths = 
-        List.fold_left 
-          (fun acc name -> 
-            let root = 
-              try 
-                Some (HExtlib.input_file (pool () ^ name ^ rootfile))
-              with Unix.Unix_error _ -> 
-                logger `Warning ("Malformed development " ^ name);
-                None
-            in 
-            match root with 
-            | None -> acc
-            | Some root -> 
-                developments := {root = root ; name = name} :: !developments;
-                root::acc)
-         [] l
-      in
-      let inc = Helm_registry.get_list Helm_registry.string "matita.includes" in
-      Helm_registry.set_list Helm_registry.of_string 
-        ~key:"matita.includes" ~value:(inc @ paths)
-
-(* finds the makefile path for development devel *)
-let makefile_for_development devel =
-  let develdir = pool () ^ devel.name in
-  develdir ^ "/makefile"
-
-let dot_for_development devel = 
-  let dot_fname = pool () ^ devel.name ^ "/depend.dot" in
-  if Sys.file_exists dot_fname then Some dot_fname else None
-
-(* given a dir finds a development that is radicated in it or below *)
-let development_for_dir dir =
-  let dir = normalize_path dir in
-  let is_prefix_of d1 d2 =
-    let len1 = String.length d1 in
-    let len2 = String.length d2 in
-    if len2 < len1 then 
-      false
-    else
-      let pref = String.sub d2 0 len1 in
-      pref = d1 && (len1 = len2 || d2.[len1] = '/')
-  in
-  try
-    Some (List.find (fun d -> is_prefix_of d.root dir) !developments)
-  with Not_found | Failure _ -> None
-
-let development_for_name name =
-  try 
-    Some (List.find (fun d -> d.name = name) !developments)
-  with Not_found -> None
-
-(* dumps the deveopment to disk *)
-let dump_development devel =
-  let devel_dir = pool () ^ devel.name in 
-  HExtlib.mkdir devel_dir;
-  HExtlib.output_file ~filename:(devel_dir ^ rootfile) ~text:devel.root
-
-let list_known_developments () = 
-  List.map (fun r -> r.name,r.root) !developments
-
-let am_i_opt = lazy (
-  if Pcre.pmatch ~pat:"\\.opt$" Sys.argv.(0) then ".opt" else "")
-  
-let rebuild_makefile development = 
-  let makefilepath = makefile_for_development development in
-  let template = 
-    HExtlib.input_file BuildTimeConf.matitamake_makefile_template 
-  in
-  let ext = Lazy.force am_i_opt in
-  let binpath = 
-    if HExtlib.is_executable 
-      (BuildTimeConf.runtime_base_dir ^ "/matitac" ^ ext)
-    then BuildTimeConf.runtime_base_dir ^ "/" else ""
-  in
-  let cc = binpath ^ "matitac" ^ ext in
-  let rm = binpath ^ "matitaclean" ^ ext in
-  let mm = binpath ^ "matitadep" ^ ext in
-  let df = pool () ^ development.name ^ "/depend" in
-  let template = Pcre.replace ~pat:"@ROOT@" ~templ:development.root template in
-  let template = Pcre.replace ~pat:"@CC@" ~templ:cc template in
-  let template = Pcre.replace ~pat:"@DEP@" ~templ:mm template in
-  let template = Pcre.replace ~pat:"@DEPFILE@" ~templ:df template in
-  let template = Pcre.replace ~pat:"@CLEAN@" ~templ:rm template in
-  HExtlib.output_file ~filename:makefilepath ~text:template
-  
-let rebuild_makefile_devel development = 
-  let path = development.root ^ "/makefile" in
-  if not (Sys.file_exists path) then
-    begin
-      let template = 
-        HExtlib.input_file BuildTimeConf.matitamake_makefile_template_devel
-      in
-      let template = 
-        Pcre.replace ~pat:"@MATITA_RT_BASE_DIR@"
-          ~templ:BuildTimeConf.runtime_base_dir template
-      in
-      HExtlib.output_file ~filename:path ~text:template
-    end
-  
-(* creates a new development if possible *)
-let initialize_development name dir =
-  let dir = normalize_path dir in
-  let name = Pcre.replace ~pat:" " ~templ:"_" name in 
-  let dev = {name = name ; root = dir} in
-  dump_development dev;
-  rebuild_makefile dev;
-  rebuild_makefile_devel dev;
-  developments := dev :: !developments;
-  Some dev
-
-let make chdir args = 
-  let old = Unix.getcwd () in
-  try
-    Unix.chdir chdir;
-    let cmd = String.concat " " ("make" :: List.map Filename.quote args) in
-    let rc = Unix.system cmd in
-    Unix.chdir old;
-    match rc with
-    | Unix.WEXITED 0 -> true
-    | Unix.WEXITED i -> logger `Error ("make returned " ^ string_of_int i);false
-    | _ -> logger `Error "make STOPPED or SIGNALED!";false
-  with Unix.Unix_error (_,cmd,err) -> 
-    logger `Warning ("Unix Error: " ^ cmd ^ ": " ^ err);
-    false
-      
-let call_make ?matita_flags development target make =
-  let matita_flags = 
-    let already_defined = 
-      match matita_flags with 
-      | None -> (try Sys.getenv "MATITA_FLAGS" with Not_found -> "")
-      | Some s -> s 
-    in
-    let bench = 
-      if Helm_registry.get_bool "matita.bench" then " -bench" else ""
-    in
-    let system = 
-      if Helm_registry.get_bool "matita.system" then " -system" else ""
-    in
-    let noinnertypes = 
-      if Helm_registry.get_bool "matita.noinnertypes" then " -noinnertypes" else ""
-    in
-    already_defined ^ bench ^ system ^ noinnertypes
-  in
-  let csc = try ["SRC=" ^ Sys.getenv "SRC"] with Not_found -> [] in
-  rebuild_makefile development;
-  let makefile = makefile_for_development development in
-  let flags = [] in 
-  let flags =
-    try
-      flags @ [ sprintf "MATITA_FLAGS=%s" matita_flags ]
-    with Not_found -> flags in
-  let flags = flags @ csc in
-  let args = 
-    ["--no-print-directory"; "-s"; "-k"; "-f"; makefile; target] @ flags 
-  in
- (*    prerr_endline (String.concat " " args);   *)
-  make development.root args
-      
-let build_development ?matita_flags ?(target="all") development =
-  call_make ?matita_flags development target make
-
-(* not really good vt100 *)
-let vt100 s =
-  let rex = Pcre.regexp "\e\\[[0-9;]+m" in
-  let rex_i = Pcre.regexp "^Info" in
-  let rex_w = Pcre.regexp "^Warning" in
-  let rex_e = Pcre.regexp "^Error" in
-  let rex_d = Pcre.regexp "^Debug" in
-  let rex_noendline = Pcre.regexp "\\n" in
-  let s = Pcre.replace ~rex:rex_noendline s in
-  let tokens = Pcre.split ~rex s in
-  let logger = ref HLog.message in
-  let rec aux = 
-    function
-    | [] -> ()
-    | s::tl ->
-        (if Pcre.pmatch ~rex:rex_i s then
-          logger := HLog.message
-        else if Pcre.pmatch ~rex:rex_w s then
-          logger := HLog.warn
-        else if Pcre.pmatch ~rex:rex_e s then
-          logger := HLog.error
-        else if Pcre.pmatch ~rex:rex_d s then
-          logger := HLog.debug
-        else 
-          !logger s);
-        aux tl
-  in
-  aux tokens
-  
-
-let mk_maker refresh_cb =
-  (fun chdir args ->
-    let out_r,out_w = Unix.pipe () in
-    let err_r,err_w = Unix.pipe () in
-    let pid = ref ~-1 in
-    let oldhandler = Sys.signal Sys.sigchld (Sys.Signal_ignore) in
-    try
-(*       prerr_endline (String.concat " " args); *)
-      let argv = Array.of_list ("make"::args) in
-      pid := Unix.create_process "make" argv Unix.stdin out_w err_w;
-      Unix.close out_w;
-      Unix.close err_w;
-      let buf = String.create 1024 in
-      let rec aux = function 
-        | f::tl ->
-            let len = Unix.read f buf 0 1024 in
-            if len = 0 then 
-              raise 
-                (Unix.Unix_error 
-                  (Unix.EPIPE,"read","len = 0 (matita internal)"));
-            vt100 (String.sub buf 0 len);
-            aux tl
-        | _ -> ()
-      in
-      while true do
-        let r,_,_ = Unix.select [out_r; err_r] [] [] (-. 1.) in
-        aux r;
-        refresh_cb ()
-      done;
-      ignore(Sys.signal Sys.sigchld oldhandler);
-      true
-    with 
-    | Unix.Unix_error (_,"read",_)
-    | Unix.Unix_error (_,"select",_) -> 
-        ignore(Sys.signal Sys.sigchld oldhandler);
-        true)
-
-let build_development_in_bg ?matita_flags ?(target="all") refresh_cb development =
-  call_make ?matita_flags development target (mk_maker refresh_cb)
-
-let clean_development ?matita_flags development =
-  call_make ?matita_flags development "clean" make
-
-let clean_development_in_bg ?matita_flags  refresh_cb development =
-  call_make development ?matita_flags  "clean" (mk_maker refresh_cb)
-
-let destroy_development_aux development clean_development =
-  let delete_development development = 
-    let unlink = HExtlib.safe_remove in
-    let rmdir dir =
-      try
-        Unix.rmdir dir 
-      with Unix.Unix_error _ -> 
-        logger `Warning ("Unable to remove dir " ^ dir);
-        match ls_dir dir with
-        | None -> logger `Error ("Unable to list directory " ^ dir) 
-        | Some [] -> ()
-        | Some l -> logger `Error ("The directory is not empty")
-    in
-    unlink (makefile_for_development development);
-    unlink (pool () ^ development.name ^ rootfile);
-    unlink (pool () ^ development.name ^ "/depend");
-    unlink (pool () ^ development.name ^ "/depend.errors");
-    unlink (pool () ^ development.name ^ "/depend.dot");
-    rmdir (pool () ^ development.name);
-    developments := 
-      List.filter (fun d -> d.name <> development.name) !developments
-  in
-  if not(clean_development development) then
-    begin
-      logger `Warning "Unable to clean the development problerly.";
-      logger `Warning "This may cause garbage."
-    end;
-  delete_development development 
-let destroy_development ?matita_flags development = 
-  destroy_development_aux development (clean_development ?matita_flags)
-
-let destroy_development_in_bg ?matita_flags refresh development = 
-  destroy_development_aux development 
-    (clean_development_in_bg refresh ?matita_flags ) 
-  
-let root_for_development development = development.root
-let name_for_development development = development.name
-
-let publish_development_bstract build clean devel = 
-  let matita_flags, matita_flags_system = 
-    let orig_matita_flags = 
-      try Sys.getenv "MATITA_FLAGS" with Not_found -> "" 
-    in
-    orig_matita_flags, orig_matita_flags ^ " -system" 
-  in
-  HLog.message "cleaning the development before publishing";
-  if clean ~matita_flags devel then
-    begin
-      HLog.message "rebuilding the development in 'system' space";
-      (* here we should use pristine metadata if we use sqlite *)
-      if build ~matita_flags:matita_flags_system devel then
-        begin
-          HLog.message "publishing succeded";
-          true
-        end
-      else
-        begin
-          HLog.error "building process failed, reverting";
-          if not (clean ~matita_flags devel) then
-            HLog.error "cleaning failed, end of the world (2)";
-          false
-        end
-    end
-  else
-    (HLog.error "unable to clean the development, publishing failed"; false)
-  
-let publish_development devel = 
-  publish_development_bstract 
-    (fun ~matita_flags devel -> build_development ~matita_flags devel) 
-    (fun ~matita_flags devel -> clean_development ~matita_flags devel) devel
-let publish_development_in_bg cb devel = 
-  publish_development_bstract 
-    (fun ~matita_flags devel -> build_development_in_bg cb ~matita_flags devel)
-    (fun ~matita_flags devel -> clean_development_in_bg cb ~matita_flags devel)
-    devel
-
diff --git a/matita/matitamakeLib.mli b/matita/matitamakeLib.mli
deleted file mode 100644 (file)
index 8f6fda2..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-(* Copyright (C) 2005, HELM Team.
- * 
- * This file is part of HELM, an Hypertextual, Electronic
- * Library of Mathematics, developed at the Computer Science
- * Department, University of Bologna, Italy.
- * 
- * HELM is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- * 
- * HELM is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HELM; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
- * MA  02111-1307, USA.
- * 
- * For details, see the HELM World-Wide-Web page,
- * http://helm.cs.unibo.it/
- *)
-
-type development
-
-(* initialize_development [name] [dir]
- * ask matitamake to recorder [dir] as the root for thedevelopment [name] *)
-val initialize_development: string -> string -> development option
-(* make target [default all] *)
-val build_development: ?matita_flags:string -> ?target:string -> development -> bool
-(* make target [default all], the refresh cb is called after every output *)
-val build_development_in_bg: 
-  ?matita_flags:string -> ?target:string -> (unit -> unit) -> development -> bool
-(* make clean *)
-val clean_development: ?matita_flags:string -> development -> bool
-val clean_development_in_bg: ?matita_flags:string -> (unit -> unit) -> development -> bool
-
-val publish_development_in_bg: (unit -> unit) -> development -> bool
-val publish_development: development -> bool
-
-(* return the development that handles dir *)
-val development_for_dir: string -> development option
-(* return the development *)
-val development_for_name: string -> development option
-(* return the known list of name, development_root *)
-val list_known_developments: unit -> (string * string ) list
-(* cleans the development, forgetting about it *)
-val destroy_development: ?matita_flags:string -> development -> unit
-val destroy_development_in_bg: ?matita_flags:string -> (unit -> unit) -> development -> unit
-(* initiale internal data structures *)
-val initialize : unit -> unit
-(* gives back the root *)
-val root_for_development : development -> string 
-(* gives back the name *)
-val name_for_development : development -> string 
-
-(** @return dot file for a given development, if it exists *)
-val dot_for_development : development -> string option
-
-val normalize_path: string -> string