build: Distribute src/.depend with tarball.
[goals.git] / src / cmdline.mli
1 (* Goals command line
2  * Copyright (C) 2019 Richard W.M. Jones
3  * Copyright (C) 2019 Red Hat Inc.
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License along
16  * with this program; if not, write to the Free Software Foundation, Inc.,
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18  *)
19
20 val parse : unit -> (string * string) list * string list
21 (** Parse the command line.
22     Returns two lists:
23     anon_vars = List of anonymous variable assignments.
24     targets = List of target expressions on the command line. *)
25
26 val stdlibdir : string
27 (** Get the stdlib directory. *)
28
29 val prelude_gl_file : string
30 (** Get the absolute path of the prelude.gl file. *)
31
32 val prelude_sh_file : string
33 (** Get the absolute path of the prelude.sh file. *)
34
35 val input_file : unit -> string
36 (** Get the name of the input Goalfile. *)
37
38 val debug : ('a, unit, string, unit) format4 -> 'a
39 (** If debugging is enabled (-d option) then print the formatted
40     output.  If debugging was not enabled then nothing is printed. *)
41
42 val debug_flag : unit -> bool
43 (** If debugging is enabled. *)
44
45 val directory : unit -> string
46 (** Get the name of working directory (-C option). *)
47
48 val includes : unit -> string list
49 (** Get list of include directories (-I option). *)
50
51 val nr_jobs : unit -> int
52 (** Number of jobs (-j option). *)
53
54 val silent : unit -> bool
55 (** Silent operation (-s option). *)
56
57 val use_prelude : unit -> bool
58 (** True if we should load the prelude, or false if --no-prelude. *)