1 (***********************************************************************)
5 (* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
7 (* Copyright 1996 Institut National de Recherche en Informatique et *)
8 (* en Automatique. All rights reserved. This file is distributed *)
9 (* under the terms of the Q Public License version 1.0. *)
11 (***********************************************************************)
13 (* $Id: asmlink.mli 8477 2007-11-06 15:16:56Z frisch $ *)
15 (* Link a set of .cmx/.o files and produce an executable or a plugin *)
19 val link: formatter -> string list -> string -> unit
21 val link_shared: formatter -> string list -> string -> unit
23 val call_linker_shared: string list -> string -> unit
25 val check_consistency: string -> Compilenv.unit_infos -> Digest.t -> unit
26 val extract_crc_interfaces: unit -> (string * Digest.t) list
27 val extract_crc_implementations: unit -> (string * Digest.t) list
30 File_not_found of string
31 | Not_an_object_file of string
32 | Missing_implementations of (string * string list) list
33 | Inconsistent_interface of string * string * string
34 | Inconsistent_implementation of string * string * string
35 | Assembler_error of string
37 | Multiple_definition of string * string * string
38 | Missing_cmx of string * string
40 exception Error of error
42 val report_error: formatter -> error -> unit