sig
val runcmd : string -> int
val runcmdf : ('a, unit, string, int) Pervasives.format4 -> 'a
val findcmd : ?path:string list -> string -> string
val system_path : unit -> string list
val search_libs_path : unit -> string list
val read_file : string -> string
val write_file : string -> string -> unit
val read_from_cmd : string -> int * string
val read_from_cmdf :
('a, unit, string, int * string) Pervasives.format4 -> 'a
val env : string -> string
val env_req : string -> string
val env_opt : string -> string option
type 'a cmdstate
val code : 'a Godi_script.cmdstate -> int
val result : 'a Godi_script.cmdstate -> 'a option
val return_code : int -> 'a Godi_script.cmdstate -> 'a Godi_script.cmdstate
val return_result :
'a option -> 'a Godi_script.cmdstate -> 'a Godi_script.cmdstate
val initial_state : unit -> 'a Godi_script.cmdstate
type 'a cmdlet = 'a Godi_script.cmdstate -> 'a Godi_script.cmdstate
val cmd : string -> 'a Godi_script.cmdlet
val cmdf :
('a, unit, string, 'b Godi_script.cmdlet) Pervasives.format4 -> 'a
val cmd_output : string -> string Godi_script.cmdlet
val cmdf_output :
('a, unit, string, string Godi_script.cmdlet) Pervasives.format4 -> 'a
val set_code : int -> 'a Godi_script.cmdlet
val set_code_from :
('a Godi_script.cmdstate -> int) -> 'a Godi_script.cmdlet
val set_bool_code : bool -> 'a Godi_script.cmdlet
val set_bool_code_from :
('a Godi_script.cmdstate -> bool) -> 'a Godi_script.cmdlet
val ( &- ) :
'a Godi_script.cmdlet -> 'a Godi_script.cmdlet -> 'a Godi_script.cmdlet
val ( |- ) :
'a Godi_script.cmdlet -> 'a Godi_script.cmdlet -> 'a Godi_script.cmdlet
val ignore_code : 'a Godi_script.cmdlet -> 'a Godi_script.cmdlet
val eval : 'a Godi_script.cmdlet -> 'a option
val eval_test : 'a Godi_script.cmdlet -> bool
val log : string -> unit
val logf : ('a, unit, string, unit) Pervasives.format4 -> 'a
val print_conf_file : string -> (string * string) list -> unit
val parse_conf_file : string -> (string * string) list
type lang_env = [ `C of Godi_script.c_env ]
and c_env = {
c_env_file : (string * string) option;
c_incdirs : string list;
c_libdirs : string list;
c_libs : string list;
c_flags : string list;
c_ld_flags : string list;
c_elf_rpath : bool;
c_config_script : string option;
c_godi_deps : string list;
c_requirements : Godi_script.c_env list;
}
val empty_c_env : Godi_script.c_env
val c_env_from_config_script :
?arg_cflags:string ->
?arg_ldflags:string ->
?args:string list -> script_name:string -> unit -> Godi_script.c_env
val create_test_whether_c_function_exists : string -> string
val c_flags : ?with_requirements:bool -> Godi_script.c_env -> string list
val c_ld_flags :
?with_requirements:bool -> Godi_script.c_env -> string list
val c_compiler_name : unit -> string
val c_compile_test :
Godi_script.c_env -> string -> string Godi_script.cmdlet
val run_test : string Godi_script.cmdlet
val find_c_library :
?godi_deps:string list ->
?pref_incdir:string ->
?pref_libdir:string ->
?flags:string list ->
?ld_flags:string list ->
?inc_name:string ->
?requirements:Godi_script.c_env list ->
?locations:string list ->
?frameworks:string list ->
libs:string list ->
test:(Godi_script.c_env -> Godi_script.c_env option) ->
unit -> Godi_script.c_env Godi_script.cmdlet
val parse_c_result :
file:string -> prefix:string -> unit -> Godi_script.c_env
val print_c_result :
?vars:(string * string) list ->
file:string -> prefix:string -> Godi_script.c_env -> unit
val main_c_finder :
?godi_deps:string list Pervasives.ref ->
?pref_incdir:string option Pervasives.ref ->
?pref_libdir:string option Pervasives.ref ->
?c_flags:string list Pervasives.ref ->
?ld_flags:string list Pervasives.ref -> unit -> unit
val main_config_finder : script_basename:string -> unit -> string
end