sig
type options_t = {
ocaml : string Pervasives.ref;
ocamlc : string Pervasives.ref;
ocamlopt : string Pervasives.ref;
ocamldep : string Pervasives.ref;
ocamldoc : string Pervasives.ref;
ocamlyacc : string Pervasives.ref;
ocamllex : string Pervasives.ref;
ocamlglade : string Pervasives.ref;
ocaml_P4 : string Pervasives.ref;
ocaml_Flags : string Pervasives.ref;
ocaml_OptFlags : string Pervasives.ref;
ocaml_ByteFlags : string Pervasives.ref;
ocaml_LinkFlags : string Pervasives.ref;
ocaml_Includes : string list Pervasives.ref;
ocaml_ExtIncludes : string list Pervasives.ref;
ocaml_ExtLibraries : string list Pervasives.ref;
}
val options : YaM.options_t Pervasives.ref
val new_scope : 'a Lazy.t -> 'a
type unit_t
val ocaml_Module :
?o:YaM.options_t ->
?flags:string ->
?byte_flags:string ->
?opt_flags:string ->
?pp:string ->
?includes:string list ->
?ext_includes:string list -> string -> YaM.unit_t
val ocaml_IModule :
?o:YaM.options_t ->
?flags:string ->
?byte_flags:string ->
?opt_flags:string ->
?pp:string ->
?includes:string list ->
?ext_includes:string list -> string -> YaM.unit_t
val ocaml_Interface :
?o:YaM.options_t ->
?flags:string ->
?byte_flags:string ->
?opt_flags:string ->
?pp:string ->
?includes:string list ->
?ext_includes:string list -> string -> YaM.unit_t
val c_Module :
?o:YaM.options_t ->
?flags:string -> ?source_deps:string list -> string -> YaM.unit_t
val ocaml_Lexer :
?o:YaM.options_t ->
?flags:string ->
?byte_flags:string ->
?opt_flags:string ->
?lex_flags:string ->
?pp:string ->
?includes:string list ->
?ext_includes:string list -> string -> YaM.unit_t
val ocaml_Parser :
?o:YaM.options_t ->
?flags:string ->
?byte_flags:string ->
?opt_flags:string ->
?yacc_flags:string ->
?pp:string ->
?includes:string list ->
?ext_includes:string list -> string -> YaM.unit_t
val ocaml_Glade :
?o:YaM.options_t ->
?flags:string ->
?byte_flags:string ->
?opt_flags:string ->
?glade_flags:string ->
?pp:string ->
?includes:string list ->
?ext_includes:string list -> string -> YaM.unit_t
val ocaml_Package :
?o:YaM.options_t -> string -> YaM.unit_t list -> YaM.unit_t
val ocaml_PackageDir :
?o:YaM.options_t -> string -> YaM.unit_t list Lazy.t -> YaM.unit_t
val ocaml_Library :
?o:YaM.options_t ->
?flags:string ->
?byte_flags:string ->
?opt_flags:string ->
?includes:string list ->
?libraries:string list ->
?default:[ `Byte | `Native ] -> string -> YaM.unit_t list -> YaM.unit_t
val ocaml_Program :
?o:YaM.options_t ->
?flags:string ->
?byte_flags:string ->
?opt_flags:string ->
?includes:string list ->
?libraries:string list ->
?default:[ `Byte | `Native ] -> string -> YaM.unit_t list -> YaM.unit_t
val phony_unit :
?depends:string list -> ?command:string -> string -> YaM.unit_t
val main : ?rebuild:string -> ?deps:string list -> YaM.unit_t list -> unit
type project_t
val project :
?rebuild:string -> ?deps:string list -> YaM.unit_t list -> YaM.project_t
val print_deps : bool Pervasives.ref
val print_cmds : bool Pervasives.ref
val build : ?target:string -> YaM.project_t -> unit
val clean : YaM.project_t -> unit
val sources_of_project : YaM.project_t -> string list
val dir : string Pervasives.ref
val generic_unit :
?sources:string list ->
targets:string list ->
?trash:string list ->
?auto_targets:string list ->
?sub_units:YaM.unit_t list ->
?pregenerated:string list ->
?objects:string * string ->
dependencies:(native:bool -> string -> string list) ->
?dep_files:(string -> string list) ->
compile_cmd:(string -> string * string list) -> unit -> YaM.unit_t
val ( ^^ ) : string -> string -> string
val ( ^= ) : string Pervasives.ref -> string -> unit
val ( += ) : 'a list Pervasives.ref -> 'a -> unit
val ( @= ) : 'a list Pervasives.ref -> 'a list -> unit
val string_of_list : ('a -> string) -> 'a list -> string
val flatten : string list -> string
end