X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=matita%2Fmatitadep.ml;h=32de85707c65be5203d9261e40e408ff61a77c6d;hb=7fe420b959c50f9be603ae9e42a5f87451a1a922;hp=7f75a057bd21a751501604a5a5de934c22300a62;hpb=b4fb0f2e1117b441b18cead42be52f858e0400b4;p=helm.git diff --git a/matita/matitadep.ml b/matita/matitadep.ml index 7f75a057b..32de85707 100644 --- a/matita/matitadep.ml +++ b/matita/matitadep.ml @@ -31,12 +31,12 @@ module U = UriManager let obj_file_of_baseuri writable baseuri = try LibraryMisc.obj_file_of_baseuri - ~must_exist:true ~baseuri ~writable + ~must_exist:true ~baseuri ~writable with | Http_getter_types.Unresolvable_URI _ | Http_getter_types.Key_not_found _ -> LibraryMisc.obj_file_of_baseuri - ~must_exist:false ~baseuri ~writable:true + ~must_exist:false ~baseuri ~writable:true ;; let main () = @@ -66,6 +66,13 @@ let main () = exit 1 end; let ma_files = args in + let bof = Hashtbl.create 10 in + let baseuri_of_script s = + try Hashtbl.find bof s + with Not_found -> + let b,_ = DependenciesParser.baseuri_of_script ~include_paths s in + Hashtbl.add bof s b; b + in List.iter (fun ma_file -> let ic = open_in ma_file in @@ -84,8 +91,7 @@ let main () = Hashtbl.add baseuri_of_inv uri ma_file | DependenciesParser.IncludeDep path -> try - let baseuri,_ = - DependenciesParser.baseuri_of_script ~include_paths path in + let baseuri = baseuri_of_script path in if not (Http_getter_storage.is_legacy baseuri) then (let moo_file = obj_file_of_baseuri false baseuri in Hashtbl.add include_deps ma_file moo_file;