xref: /aosp_15_r20/external/toybox/kconfig/kconfig-language.txt (revision cf5a6c84e2b8763fc1a7db14496fd4742913b199)
1*cf5a6c84SAndroid Build Coastguard WorkerLinux 2.6.12 Documentation/kbuild/kconfig-language.txt
2*cf5a6c84SAndroid Build Coastguard Worker
3*cf5a6c84SAndroid Build Coastguard WorkerIntroduction
4*cf5a6c84SAndroid Build Coastguard Worker------------
5*cf5a6c84SAndroid Build Coastguard Worker
6*cf5a6c84SAndroid Build Coastguard WorkerThe configuration database is collection of configuration options
7*cf5a6c84SAndroid Build Coastguard Workerorganized in a tree structure:
8*cf5a6c84SAndroid Build Coastguard Worker
9*cf5a6c84SAndroid Build Coastguard Worker	+- Code maturity level options
10*cf5a6c84SAndroid Build Coastguard Worker	|  +- Prompt for development and/or incomplete code/drivers
11*cf5a6c84SAndroid Build Coastguard Worker	+- General setup
12*cf5a6c84SAndroid Build Coastguard Worker	|  +- Networking support
13*cf5a6c84SAndroid Build Coastguard Worker	|  +- System V IPC
14*cf5a6c84SAndroid Build Coastguard Worker	|  +- BSD Process Accounting
15*cf5a6c84SAndroid Build Coastguard Worker	|  +- Sysctl support
16*cf5a6c84SAndroid Build Coastguard Worker	+- Loadable module support
17*cf5a6c84SAndroid Build Coastguard Worker	|  +- Enable loadable module support
18*cf5a6c84SAndroid Build Coastguard Worker	|     +- Set version information on all module symbols
19*cf5a6c84SAndroid Build Coastguard Worker	|     +- Kernel module loader
20*cf5a6c84SAndroid Build Coastguard Worker	+- ...
21*cf5a6c84SAndroid Build Coastguard Worker
22*cf5a6c84SAndroid Build Coastguard WorkerEvery entry has its own dependencies. These dependencies are used
23*cf5a6c84SAndroid Build Coastguard Workerto determine the visibility of an entry. Any child entry is only
24*cf5a6c84SAndroid Build Coastguard Workervisible if its parent entry is also visible.
25*cf5a6c84SAndroid Build Coastguard Worker
26*cf5a6c84SAndroid Build Coastguard WorkerMenu entries
27*cf5a6c84SAndroid Build Coastguard Worker------------
28*cf5a6c84SAndroid Build Coastguard Worker
29*cf5a6c84SAndroid Build Coastguard WorkerMost entries define a config option, all other entries help to organize
30*cf5a6c84SAndroid Build Coastguard Workerthem. A single configuration option is defined like this:
31*cf5a6c84SAndroid Build Coastguard Worker
32*cf5a6c84SAndroid Build Coastguard Workerconfig MODVERSIONS
33*cf5a6c84SAndroid Build Coastguard Worker	bool "Set version information on all module symbols"
34*cf5a6c84SAndroid Build Coastguard Worker	depends MODULES
35*cf5a6c84SAndroid Build Coastguard Worker	help
36*cf5a6c84SAndroid Build Coastguard Worker	  Usually, modules have to be recompiled whenever you switch to a new
37*cf5a6c84SAndroid Build Coastguard Worker	  kernel.  ...
38*cf5a6c84SAndroid Build Coastguard Worker
39*cf5a6c84SAndroid Build Coastguard WorkerEvery line starts with a key word and can be followed by multiple
40*cf5a6c84SAndroid Build Coastguard Workerarguments.  "config" starts a new config entry. The following lines
41*cf5a6c84SAndroid Build Coastguard Workerdefine attributes for this config option. Attributes can be the type of
42*cf5a6c84SAndroid Build Coastguard Workerthe config option, input prompt, dependencies, help text and default
43*cf5a6c84SAndroid Build Coastguard Workervalues. A config option can be defined multiple times with the same
44*cf5a6c84SAndroid Build Coastguard Workername, but every definition can have only a single input prompt and the
45*cf5a6c84SAndroid Build Coastguard Workertype must not conflict.
46*cf5a6c84SAndroid Build Coastguard Worker
47*cf5a6c84SAndroid Build Coastguard WorkerMenu attributes
48*cf5a6c84SAndroid Build Coastguard Worker---------------
49*cf5a6c84SAndroid Build Coastguard Worker
50*cf5a6c84SAndroid Build Coastguard WorkerA menu entry can have a number of attributes. Not all of them are
51*cf5a6c84SAndroid Build Coastguard Workerapplicable everywhere (see syntax).
52*cf5a6c84SAndroid Build Coastguard Worker
53*cf5a6c84SAndroid Build Coastguard Worker- type definition: "bool"/"tristate"/"string"/"hex"/"int"
54*cf5a6c84SAndroid Build Coastguard Worker  Every config option must have a type. There are only two basic types:
55*cf5a6c84SAndroid Build Coastguard Worker  tristate and string, the other types are based on these two. The type
56*cf5a6c84SAndroid Build Coastguard Worker  definition optionally accepts an input prompt, so these two examples
57*cf5a6c84SAndroid Build Coastguard Worker  are equivalent:
58*cf5a6c84SAndroid Build Coastguard Worker
59*cf5a6c84SAndroid Build Coastguard Worker	bool "Networking support"
60*cf5a6c84SAndroid Build Coastguard Worker  and
61*cf5a6c84SAndroid Build Coastguard Worker	bool
62*cf5a6c84SAndroid Build Coastguard Worker	prompt "Networking support"
63*cf5a6c84SAndroid Build Coastguard Worker
64*cf5a6c84SAndroid Build Coastguard Worker- input prompt: "prompt" <prompt> ["if" <expr>]
65*cf5a6c84SAndroid Build Coastguard Worker  Every menu entry can have at most one prompt, which is used to display
66*cf5a6c84SAndroid Build Coastguard Worker  to the user. Optionally dependencies only for this prompt can be added
67*cf5a6c84SAndroid Build Coastguard Worker  with "if".
68*cf5a6c84SAndroid Build Coastguard Worker
69*cf5a6c84SAndroid Build Coastguard Worker- default value: "default" <expr> ["if" <expr>]
70*cf5a6c84SAndroid Build Coastguard Worker  A config option can have any number of default values. If multiple
71*cf5a6c84SAndroid Build Coastguard Worker  default values are visible, only the first defined one is active.
72*cf5a6c84SAndroid Build Coastguard Worker  Default values are not limited to the menu entry, where they are
73*cf5a6c84SAndroid Build Coastguard Worker  defined, this means the default can be defined somewhere else or be
74*cf5a6c84SAndroid Build Coastguard Worker  overridden by an earlier definition.
75*cf5a6c84SAndroid Build Coastguard Worker  The default value is only assigned to the config symbol if no other
76*cf5a6c84SAndroid Build Coastguard Worker  value was set by the user (via the input prompt above). If an input
77*cf5a6c84SAndroid Build Coastguard Worker  prompt is visible the default value is presented to the user and can
78*cf5a6c84SAndroid Build Coastguard Worker  be overridden by him.
79*cf5a6c84SAndroid Build Coastguard Worker  Optionally dependencies only for this default value can be added with
80*cf5a6c84SAndroid Build Coastguard Worker  "if".
81*cf5a6c84SAndroid Build Coastguard Worker
82*cf5a6c84SAndroid Build Coastguard Worker- dependencies: "depends on"/"requires" <expr>
83*cf5a6c84SAndroid Build Coastguard Worker  This defines a dependency for this menu entry. If multiple
84*cf5a6c84SAndroid Build Coastguard Worker  dependencies are defined they are connected with '&&'. Dependencies
85*cf5a6c84SAndroid Build Coastguard Worker  are applied to all other options within this menu entry (which also
86*cf5a6c84SAndroid Build Coastguard Worker  accept an "if" expression), so these two examples are equivalent:
87*cf5a6c84SAndroid Build Coastguard Worker
88*cf5a6c84SAndroid Build Coastguard Worker	bool "foo" if BAR
89*cf5a6c84SAndroid Build Coastguard Worker	default y if BAR
90*cf5a6c84SAndroid Build Coastguard Worker  and
91*cf5a6c84SAndroid Build Coastguard Worker	depends on BAR
92*cf5a6c84SAndroid Build Coastguard Worker	bool "foo"
93*cf5a6c84SAndroid Build Coastguard Worker	default y
94*cf5a6c84SAndroid Build Coastguard Worker
95*cf5a6c84SAndroid Build Coastguard Worker- reverse dependencies: "select" <symbol> ["if" <expr>]
96*cf5a6c84SAndroid Build Coastguard Worker  While normal dependencies reduce the upper limit of a symbol (see
97*cf5a6c84SAndroid Build Coastguard Worker  below), reverse dependencies can be used to force a lower limit of
98*cf5a6c84SAndroid Build Coastguard Worker  another symbol. The value of the current menu symbol is used as the
99*cf5a6c84SAndroid Build Coastguard Worker  minimal value <symbol> can be set to. If <symbol> is selected multiple
100*cf5a6c84SAndroid Build Coastguard Worker  times, the limit is set to the largest selection.
101*cf5a6c84SAndroid Build Coastguard Worker  Reverse dependencies can only be used with boolean or tristate
102*cf5a6c84SAndroid Build Coastguard Worker  symbols.
103*cf5a6c84SAndroid Build Coastguard Worker
104*cf5a6c84SAndroid Build Coastguard Worker- numerical ranges: "range" <symbol> <symbol> ["if" <expr>]
105*cf5a6c84SAndroid Build Coastguard Worker  This allows to limit the range of possible input values for int
106*cf5a6c84SAndroid Build Coastguard Worker  and hex symbols. The user can only input a value which is larger than
107*cf5a6c84SAndroid Build Coastguard Worker  or equal to the first symbol and smaller than or equal to the second
108*cf5a6c84SAndroid Build Coastguard Worker  symbol.
109*cf5a6c84SAndroid Build Coastguard Worker
110*cf5a6c84SAndroid Build Coastguard Worker- help text: "help" or "---help---"
111*cf5a6c84SAndroid Build Coastguard Worker  This defines a help text. The end of the help text is determined by
112*cf5a6c84SAndroid Build Coastguard Worker  the indentation level, this means it ends at the first line which has
113*cf5a6c84SAndroid Build Coastguard Worker  a smaller indentation than the first line of the help text.
114*cf5a6c84SAndroid Build Coastguard Worker  "---help---" and "help" do not differ in behaviour, "---help---" is
115*cf5a6c84SAndroid Build Coastguard Worker  used to help visually seperate configuration logic from help within
116*cf5a6c84SAndroid Build Coastguard Worker  the file as an aid to developers.
117*cf5a6c84SAndroid Build Coastguard Worker
118*cf5a6c84SAndroid Build Coastguard Worker
119*cf5a6c84SAndroid Build Coastguard WorkerMenu dependencies
120*cf5a6c84SAndroid Build Coastguard Worker-----------------
121*cf5a6c84SAndroid Build Coastguard Worker
122*cf5a6c84SAndroid Build Coastguard WorkerDependencies define the visibility of a menu entry and can also reduce
123*cf5a6c84SAndroid Build Coastguard Workerthe input range of tristate symbols. The tristate logic used in the
124*cf5a6c84SAndroid Build Coastguard Workerexpressions uses one more state than normal boolean logic to express the
125*cf5a6c84SAndroid Build Coastguard Workermodule state. Dependency expressions have the following syntax:
126*cf5a6c84SAndroid Build Coastguard Worker
127*cf5a6c84SAndroid Build Coastguard Worker<expr> ::= <symbol>                             (1)
128*cf5a6c84SAndroid Build Coastguard Worker           <symbol> '=' <symbol>                (2)
129*cf5a6c84SAndroid Build Coastguard Worker           <symbol> '!=' <symbol>               (3)
130*cf5a6c84SAndroid Build Coastguard Worker           '(' <expr> ')'                       (4)
131*cf5a6c84SAndroid Build Coastguard Worker           '!' <expr>                           (5)
132*cf5a6c84SAndroid Build Coastguard Worker           <expr> '&&' <expr>                   (6)
133*cf5a6c84SAndroid Build Coastguard Worker           <expr> '||' <expr>                   (7)
134*cf5a6c84SAndroid Build Coastguard Worker
135*cf5a6c84SAndroid Build Coastguard WorkerExpressions are listed in decreasing order of precedence.
136*cf5a6c84SAndroid Build Coastguard Worker
137*cf5a6c84SAndroid Build Coastguard Worker(1) Convert the symbol into an expression. Boolean and tristate symbols
138*cf5a6c84SAndroid Build Coastguard Worker    are simply converted into the respective expression values. All
139*cf5a6c84SAndroid Build Coastguard Worker    other symbol types result in 'n'.
140*cf5a6c84SAndroid Build Coastguard Worker(2) If the values of both symbols are equal, it returns 'y',
141*cf5a6c84SAndroid Build Coastguard Worker    otherwise 'n'.
142*cf5a6c84SAndroid Build Coastguard Worker(3) If the values of both symbols are equal, it returns 'n',
143*cf5a6c84SAndroid Build Coastguard Worker    otherwise 'y'.
144*cf5a6c84SAndroid Build Coastguard Worker(4) Returns the value of the expression. Used to override precedence.
145*cf5a6c84SAndroid Build Coastguard Worker(5) Returns the result of (2-/expr/).
146*cf5a6c84SAndroid Build Coastguard Worker(6) Returns the result of min(/expr/, /expr/).
147*cf5a6c84SAndroid Build Coastguard Worker(7) Returns the result of max(/expr/, /expr/).
148*cf5a6c84SAndroid Build Coastguard Worker
149*cf5a6c84SAndroid Build Coastguard WorkerAn expression can have a value of 'n', 'm' or 'y' (or 0, 1, 2
150*cf5a6c84SAndroid Build Coastguard Workerrespectively for calculations). A menu entry becomes visible when it's
151*cf5a6c84SAndroid Build Coastguard Workerexpression evaluates to 'm' or 'y'.
152*cf5a6c84SAndroid Build Coastguard Worker
153*cf5a6c84SAndroid Build Coastguard WorkerThere are two types of symbols: constant and nonconstant symbols.
154*cf5a6c84SAndroid Build Coastguard WorkerNonconstant symbols are the most common ones and are defined with the
155*cf5a6c84SAndroid Build Coastguard Worker'config' statement. Nonconstant symbols consist entirely of alphanumeric
156*cf5a6c84SAndroid Build Coastguard Workercharacters or underscores.
157*cf5a6c84SAndroid Build Coastguard WorkerConstant symbols are only part of expressions. Constant symbols are
158*cf5a6c84SAndroid Build Coastguard Workeralways surrounded by single or double quotes. Within the quote any
159*cf5a6c84SAndroid Build Coastguard Workerother character is allowed and the quotes can be escaped using '\'.
160*cf5a6c84SAndroid Build Coastguard Worker
161*cf5a6c84SAndroid Build Coastguard WorkerMenu structure
162*cf5a6c84SAndroid Build Coastguard Worker--------------
163*cf5a6c84SAndroid Build Coastguard Worker
164*cf5a6c84SAndroid Build Coastguard WorkerThe position of a menu entry in the tree is determined in two ways. First
165*cf5a6c84SAndroid Build Coastguard Workerit can be specified explicitly:
166*cf5a6c84SAndroid Build Coastguard Worker
167*cf5a6c84SAndroid Build Coastguard Workermenu "Network device support"
168*cf5a6c84SAndroid Build Coastguard Worker	depends NET
169*cf5a6c84SAndroid Build Coastguard Worker
170*cf5a6c84SAndroid Build Coastguard Workerconfig NETDEVICES
171*cf5a6c84SAndroid Build Coastguard Worker	...
172*cf5a6c84SAndroid Build Coastguard Worker
173*cf5a6c84SAndroid Build Coastguard Workerendmenu
174*cf5a6c84SAndroid Build Coastguard Worker
175*cf5a6c84SAndroid Build Coastguard WorkerAll entries within the "menu" ... "endmenu" block become a submenu of
176*cf5a6c84SAndroid Build Coastguard Worker"Network device support". All subentries inherit the dependencies from
177*cf5a6c84SAndroid Build Coastguard Workerthe menu entry, e.g. this means the dependency "NET" is added to the
178*cf5a6c84SAndroid Build Coastguard Workerdependency list of the config option NETDEVICES.
179*cf5a6c84SAndroid Build Coastguard Worker
180*cf5a6c84SAndroid Build Coastguard WorkerThe other way to generate the menu structure is done by analyzing the
181*cf5a6c84SAndroid Build Coastguard Workerdependencies. If a menu entry somehow depends on the previous entry, it
182*cf5a6c84SAndroid Build Coastguard Workercan be made a submenu of it. First, the previous (parent) symbol must
183*cf5a6c84SAndroid Build Coastguard Workerbe part of the dependency list and then one of these two conditions
184*cf5a6c84SAndroid Build Coastguard Workermust be true:
185*cf5a6c84SAndroid Build Coastguard Worker- the child entry must become invisible, if the parent is set to 'n'
186*cf5a6c84SAndroid Build Coastguard Worker- the child entry must only be visible, if the parent is visible
187*cf5a6c84SAndroid Build Coastguard Worker
188*cf5a6c84SAndroid Build Coastguard Workerconfig MODULES
189*cf5a6c84SAndroid Build Coastguard Worker	bool "Enable loadable module support"
190*cf5a6c84SAndroid Build Coastguard Worker
191*cf5a6c84SAndroid Build Coastguard Workerconfig MODVERSIONS
192*cf5a6c84SAndroid Build Coastguard Worker	bool "Set version information on all module symbols"
193*cf5a6c84SAndroid Build Coastguard Worker	depends MODULES
194*cf5a6c84SAndroid Build Coastguard Worker
195*cf5a6c84SAndroid Build Coastguard Workercomment "module support disabled"
196*cf5a6c84SAndroid Build Coastguard Worker	depends !MODULES
197*cf5a6c84SAndroid Build Coastguard Worker
198*cf5a6c84SAndroid Build Coastguard WorkerMODVERSIONS directly depends on MODULES, this means it's only visible if
199*cf5a6c84SAndroid Build Coastguard WorkerMODULES is different from 'n'. The comment on the other hand is always
200*cf5a6c84SAndroid Build Coastguard Workervisible when MODULES is visible (the (empty) dependency of MODULES is
201*cf5a6c84SAndroid Build Coastguard Workeralso part of the comment dependencies).
202*cf5a6c84SAndroid Build Coastguard Worker
203*cf5a6c84SAndroid Build Coastguard Worker
204*cf5a6c84SAndroid Build Coastguard WorkerKconfig syntax
205*cf5a6c84SAndroid Build Coastguard Worker--------------
206*cf5a6c84SAndroid Build Coastguard Worker
207*cf5a6c84SAndroid Build Coastguard WorkerThe configuration file describes a series of menu entries, where every
208*cf5a6c84SAndroid Build Coastguard Workerline starts with a keyword (except help texts). The following keywords
209*cf5a6c84SAndroid Build Coastguard Workerend a menu entry:
210*cf5a6c84SAndroid Build Coastguard Worker- config
211*cf5a6c84SAndroid Build Coastguard Worker- menuconfig
212*cf5a6c84SAndroid Build Coastguard Worker- choice/endchoice
213*cf5a6c84SAndroid Build Coastguard Worker- comment
214*cf5a6c84SAndroid Build Coastguard Worker- menu/endmenu
215*cf5a6c84SAndroid Build Coastguard Worker- if/endif
216*cf5a6c84SAndroid Build Coastguard Worker- source
217*cf5a6c84SAndroid Build Coastguard WorkerThe first five also start the definition of a menu entry.
218*cf5a6c84SAndroid Build Coastguard Worker
219*cf5a6c84SAndroid Build Coastguard Workerconfig:
220*cf5a6c84SAndroid Build Coastguard Worker
221*cf5a6c84SAndroid Build Coastguard Worker	"config" <symbol>
222*cf5a6c84SAndroid Build Coastguard Worker	<config options>
223*cf5a6c84SAndroid Build Coastguard Worker
224*cf5a6c84SAndroid Build Coastguard WorkerThis defines a config symbol <symbol> and accepts any of above
225*cf5a6c84SAndroid Build Coastguard Workerattributes as options.
226*cf5a6c84SAndroid Build Coastguard Worker
227*cf5a6c84SAndroid Build Coastguard Workermenuconfig:
228*cf5a6c84SAndroid Build Coastguard Worker	"menuconfig" <symbol>
229*cf5a6c84SAndroid Build Coastguard Worker	<config options>
230*cf5a6c84SAndroid Build Coastguard Worker
231*cf5a6c84SAndroid Build Coastguard WorkerThis is similiar to the simple config entry above, but it also gives a
232*cf5a6c84SAndroid Build Coastguard Workerhint to front ends, that all suboptions should be displayed as a
233*cf5a6c84SAndroid Build Coastguard Workerseparate list of options.
234*cf5a6c84SAndroid Build Coastguard Worker
235*cf5a6c84SAndroid Build Coastguard Workerchoices:
236*cf5a6c84SAndroid Build Coastguard Worker
237*cf5a6c84SAndroid Build Coastguard Worker	"choice"
238*cf5a6c84SAndroid Build Coastguard Worker	<choice options>
239*cf5a6c84SAndroid Build Coastguard Worker	<choice block>
240*cf5a6c84SAndroid Build Coastguard Worker	"endchoice"
241*cf5a6c84SAndroid Build Coastguard Worker
242*cf5a6c84SAndroid Build Coastguard WorkerThis defines a choice group and accepts any of above attributes as
243*cf5a6c84SAndroid Build Coastguard Workeroptions. A choice can only be of type bool or tristate, while a boolean
244*cf5a6c84SAndroid Build Coastguard Workerchoice only allows a single config entry to be selected, a tristate
245*cf5a6c84SAndroid Build Coastguard Workerchoice also allows any number of config entries to be set to 'm'. This
246*cf5a6c84SAndroid Build Coastguard Workercan be used if multiple drivers for a single hardware exists and only a
247*cf5a6c84SAndroid Build Coastguard Workersingle driver can be compiled/loaded into the kernel, but all drivers
248*cf5a6c84SAndroid Build Coastguard Workercan be compiled as modules.
249*cf5a6c84SAndroid Build Coastguard WorkerA choice accepts another option "optional", which allows to set the
250*cf5a6c84SAndroid Build Coastguard Workerchoice to 'n' and no entry needs to be selected.
251*cf5a6c84SAndroid Build Coastguard Worker
252*cf5a6c84SAndroid Build Coastguard Workercomment:
253*cf5a6c84SAndroid Build Coastguard Worker
254*cf5a6c84SAndroid Build Coastguard Worker	"comment" <prompt>
255*cf5a6c84SAndroid Build Coastguard Worker	<comment options>
256*cf5a6c84SAndroid Build Coastguard Worker
257*cf5a6c84SAndroid Build Coastguard WorkerThis defines a comment which is displayed to the user during the
258*cf5a6c84SAndroid Build Coastguard Workerconfiguration process and is also echoed to the output files. The only
259*cf5a6c84SAndroid Build Coastguard Workerpossible options are dependencies.
260*cf5a6c84SAndroid Build Coastguard Worker
261*cf5a6c84SAndroid Build Coastguard Workermenu:
262*cf5a6c84SAndroid Build Coastguard Worker
263*cf5a6c84SAndroid Build Coastguard Worker	"menu" <prompt>
264*cf5a6c84SAndroid Build Coastguard Worker	<menu options>
265*cf5a6c84SAndroid Build Coastguard Worker	<menu block>
266*cf5a6c84SAndroid Build Coastguard Worker	"endmenu"
267*cf5a6c84SAndroid Build Coastguard Worker
268*cf5a6c84SAndroid Build Coastguard WorkerThis defines a menu block, see "Menu structure" above for more
269*cf5a6c84SAndroid Build Coastguard Workerinformation. The only possible options are dependencies.
270*cf5a6c84SAndroid Build Coastguard Worker
271*cf5a6c84SAndroid Build Coastguard Workerif:
272*cf5a6c84SAndroid Build Coastguard Worker
273*cf5a6c84SAndroid Build Coastguard Worker	"if" <expr>
274*cf5a6c84SAndroid Build Coastguard Worker	<if block>
275*cf5a6c84SAndroid Build Coastguard Worker	"endif"
276*cf5a6c84SAndroid Build Coastguard Worker
277*cf5a6c84SAndroid Build Coastguard WorkerThis defines an if block. The dependency expression <expr> is appended
278*cf5a6c84SAndroid Build Coastguard Workerto all enclosed menu entries.
279*cf5a6c84SAndroid Build Coastguard Worker
280*cf5a6c84SAndroid Build Coastguard Workersource:
281*cf5a6c84SAndroid Build Coastguard Worker
282*cf5a6c84SAndroid Build Coastguard Worker	"source" <prompt>
283*cf5a6c84SAndroid Build Coastguard Worker
284*cf5a6c84SAndroid Build Coastguard WorkerThis reads the specified configuration file. This file is always parsed.
285