]> matita.cs.unibo.it Git - helm.git/blob - components/library/librarian.mli
removed all Developments related stuff in glade file,
[helm.git] / components / library / librarian.mli
1 exception NoRootFor of string
2
3 val absolutize: string -> string 
4
5 val find_root: string -> string
6 val load_root_file: string -> (string*string) list
7
8 (* baseuri_of_script ?(inc:REG[matita.includes]) fname 
9  *   -> 
10  * root, buri, fullpath, rootrelativepath
11  * sample: baseuri_of_script a.ma -> /home/pippo/devel/, cic:/matita/a,
12  * /home/pippo/devel/a.ma, a.ma *)
13 val baseuri_of_script: 
14   include_paths:string list -> string -> string * string * string * string
15
16 (* finds all the roots files in the specified dir *)
17 val find_roots_in_dir: string -> string list
18
19 (* make *)
20 type options = (string * string) list
21
22 module type Format =
23   sig
24     type source_object
25     type target_object
26     val load_deps_file: string -> (source_object * source_object list) list
27     val target_of: options -> source_object -> target_object
28     val string_of_source_object: source_object -> string
29     val string_of_target_object: target_object -> string
30     val build: options -> source_object -> bool
31     val root_of: options -> source_object -> string option
32     val mtime_of_source_object: source_object -> float option
33     val mtime_of_target_object: target_object -> float option
34   end
35
36 module Make :
37   functor (F : Format) ->
38     sig
39       (* make [root dir] [targets], targets = [] means make all *)
40       val make : string -> F.source_object list ->  bool
41     end
42
43 val load_deps_file: string -> (string * string list) list
44 val write_deps_file: string -> (string * string list) list -> unit