xref: /freebsd/usr.sbin/config/config.5 (revision 39d44f7f15cf28df572028f198bc51ce2de510a5)
11518d129SJoseph Koshy.\" Copyright (c) 2003 Joseph Koshy
21518d129SJoseph Koshy.\"
31518d129SJoseph Koshy.\" Redistribution and use in source and binary forms, with or without
41518d129SJoseph Koshy.\" modification, are permitted provided that the following conditions
51518d129SJoseph Koshy.\" are met:
61518d129SJoseph Koshy.\" 1. Redistributions of source code must retain the above copyright
71518d129SJoseph Koshy.\"    notice, this list of conditions and the following disclaimer.
81518d129SJoseph Koshy.\" 2. Redistributions in binary form must reproduce the above copyright
91518d129SJoseph Koshy.\"    notice, this list of conditions and the following disclaimer in the
101518d129SJoseph Koshy.\"    documentation and/or other materials provided with the distribution.
111518d129SJoseph Koshy.\"
121518d129SJoseph Koshy.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
131518d129SJoseph Koshy.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
141518d129SJoseph Koshy.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
151518d129SJoseph Koshy.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
161518d129SJoseph Koshy.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
171518d129SJoseph Koshy.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
181518d129SJoseph Koshy.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
191518d129SJoseph Koshy.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
201518d129SJoseph Koshy.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
211518d129SJoseph Koshy.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
221518d129SJoseph Koshy.\" SUCH DAMAGE.
231518d129SJoseph Koshy.\"
241518d129SJoseph Koshy.\" $FreeBSD$
251518d129SJoseph Koshy.\"
26e2868734SKyle Evans.Dd June 26, 2018
271518d129SJoseph Koshy.Dt CONFIG 5
281518d129SJoseph Koshy.Os
291518d129SJoseph Koshy.Sh NAME
301518d129SJoseph Koshy.Nm config
311518d129SJoseph Koshy.Nd kernel configuration file format
321518d129SJoseph Koshy.Sh DESCRIPTION
331518d129SJoseph KoshyA kernel configuration file specifies the configuration of a
341518d129SJoseph Koshy.Fx
351518d129SJoseph Koshykernel.
361518d129SJoseph KoshyIt is processed by
371518d129SJoseph Koshy.Xr config 8
381518d129SJoseph Koshyto create a build environment where a kernel may be built using
391518d129SJoseph Koshy.Xr make 1 .
401518d129SJoseph Koshy.Ss Lexical Structure
411518d129SJoseph KoshyA kernel configuration file comprises a sequence of specification
421518d129SJoseph Koshydirectives.
431518d129SJoseph Koshy.Pp
441518d129SJoseph KoshyA specification directive starts with a keyword at the beginning
451518d129SJoseph Koshyof the line and is followed by additional parameters.
461518d129SJoseph Koshy.Pp
471518d129SJoseph KoshyA specification directive may be terminated by a semicolon
481518d129SJoseph Koshy.Ql \&;
491518d129SJoseph Koshyor by a newline.
501518d129SJoseph KoshyLong input lines may be broken into shorter lines by starting the
511518d129SJoseph Koshysecond and subsequent lines with a white space character.
521518d129SJoseph Koshy.Pp
531518d129SJoseph KoshyCase is significant,
541518d129SJoseph Koshy.Dq Li machine
551518d129SJoseph Koshyand
561518d129SJoseph Koshy.Dq Li MACHINE
571518d129SJoseph Koshyare different tokens.
581518d129SJoseph Koshy.Pp
591518d129SJoseph KoshyA double quote character
601518d129SJoseph Koshy.Ql \[dq]
611518d129SJoseph Koshystarts a quoted string.
621518d129SJoseph KoshyAll characters up to the next quote character form the value
631518d129SJoseph Koshyof the quoted string.
641518d129SJoseph KoshyA
651518d129SJoseph Koshy.Ql \[dq]
661518d129SJoseph Koshycharacter may be inserted into a quoted string by
671518d129SJoseph Koshyusing the sequence
681518d129SJoseph Koshy.Ql \e\[dq] .
691518d129SJoseph Koshy.Pp
701518d129SJoseph KoshyNumbers are specified using
711518d129SJoseph Koshy.Tn C Ns -style
721518d129SJoseph Koshysyntax.
731518d129SJoseph Koshy.Pp
741518d129SJoseph KoshyA
751518d129SJoseph Koshy.Ql #
761518d129SJoseph Koshycharacter starts a comment; all characters from the
771518d129SJoseph Koshy.Ql #
781518d129SJoseph Koshycharacter till the end of the current line are ignored.
791518d129SJoseph Koshy.Pp
801518d129SJoseph KoshyWhitespace between tokens is ignored, except inside quoted strings.
811518d129SJoseph KoshyWhitespace following a comment line is ignored.
821518d129SJoseph Koshy.Ss Configuration Directives
831518d129SJoseph KoshyKernel configuration directives may appear in any order
841518d129SJoseph Koshyin a kernel configuration file.
851518d129SJoseph KoshyDirectives are processed in order of appearance with subsequent
861518d129SJoseph Koshydirective lines overriding the effect of prior ones.
871518d129SJoseph Koshy.Pp
881518d129SJoseph KoshyThe list of keywords and their meanings are as follows:
899c398cc7SUlrich Spörlein.Pp
90198423bdSRuslan Ermilov.Bl -tag -width indent -compact
911518d129SJoseph Koshy.\" -------- CPU --------
921518d129SJoseph Koshy.It Ic cpu Ar cputype
931518d129SJoseph KoshySpecify the CPU this kernel will run on.
941518d129SJoseph KoshyThere can be more than one
951518d129SJoseph Koshy.Ic cpu
961518d129SJoseph Koshydirective in a configuration file.
971518d129SJoseph KoshyThe allowed list of CPU names is architecture specific and is
981518d129SJoseph Koshydefined in the file
991518d129SJoseph Koshy.Pa sys/conf/options. Ns Aq Ar arch .
1001518d129SJoseph Koshy.\" -------- DEVICE --------
101198423bdSRuslan Ermilov.Pp
102b83d741bSDag-Erling Smørgrav.It Ic device Ar name Op , Ar name Op ...
103b83d741bSDag-Erling Smørgrav.It Ic devices Ar name Op , Ar name Op ...
104b83d741bSDag-Erling SmørgravConfigures the specified devices
1051518d129SJoseph Koshyfor inclusion into the kernel image.
1061518d129SJoseph KoshyDevices that are common to all architectures are
1071518d129SJoseph Koshydefined in the file
1081518d129SJoseph Koshy.Pa sys/conf/files .
1091518d129SJoseph KoshyDevices that are specific to architecture
1101518d129SJoseph Koshy.Ar arch
1111518d129SJoseph Koshyare defined in the file
1121518d129SJoseph Koshy.Pa sys/conf/files. Ns Aq Ar arch .
1131518d129SJoseph Koshy.\" -------- ENV --------
114198423bdSRuslan Ermilov.Pp
1151518d129SJoseph Koshy.It Ic env Ar filename
1161518d129SJoseph KoshySpecifies a filename containing a kernel environment definition.
117*39d44f7fSKyle Evans.Pp
118*39d44f7fSKyle EvansThe kernel will augment this compiled-in environment with the environment
119*39d44f7fSKyle Evansprepared for it at boot time by
1201518d129SJoseph Koshy.Xr loader 8 .
121*39d44f7fSKyle EvansEnvironment variables specified in the
122*39d44f7fSKyle Evans.Xr loader 8
123*39d44f7fSKyle Evansenvironment will take precedence over environment variables specified in
124*39d44f7fSKyle Evans.Ar filename ,
125*39d44f7fSKyle Evansand environment variables specified in the dynamic environment take precedence
126*39d44f7fSKyle Evansover both of these.
127*39d44f7fSKyle Evans.Pp
128*39d44f7fSKyle Evans.Va static_env.disabled=1
129*39d44f7fSKyle Evansmay be specified in the
130*39d44f7fSKyle Evans.Xr loader 8
131*39d44f7fSKyle Evansenvironment to disable use of this compiled-in environment.
132*39d44f7fSKyle EvansThis option has no effect if specified in any environment after the
133*39d44f7fSKyle Evans.Xr loader 8
134*39d44f7fSKyle Evansenvironment is processed.
1351518d129SJoseph Koshy.Pp
1361518d129SJoseph KoshyThis directive is useful for setting kernel tunables in
1371518d129SJoseph Koshyembedded environments that do not start from
1381518d129SJoseph Koshy.Xr loader 8 .
1394edfa908SKyle Evans.Pp
1404edfa908SKyle EvansAll
1414edfa908SKyle Evans.Ic env
1424edfa908SKyle Evansand
1434edfa908SKyle Evans.Ic envvar
1446ffdd5efSKyle Evansdirectives will be processed and added to the static environment in reversed
1456ffdd5efSKyle Evansorder of appearance so that later specified variables properly override earlier
1466ffdd5efSKyle Evansspecified variables.
1474edfa908SKyle EvansNote that within
1484edfa908SKyle Evans.Ar filename ,
1494edfa908SKyle Evansthe first appearance of a given variable will be the first one seen by the
1504edfa908SKyle Evanskernel, effectively shadowing any later appearances of the same variable within
1514edfa908SKyle Evans.Ar filename .
1523b31596dSKyle Evans.\" -------- ENVVAR --------
1533b31596dSKyle Evans.Pp
1543b31596dSKyle Evans.It Ic envvar Ar setting
1553b31596dSKyle EvansSpecifies an individual environment setting to be added to the kernel's
1563b31596dSKyle Evanscompiled-in environment.
1573b31596dSKyle Evans.Ar setting
1583b31596dSKyle Evansmust be of the form
1593b31596dSKyle Evans.Dq Va name=value .
1603b31596dSKyle EvansOptional quotes are supported in both name and value.
1614edfa908SKyle Evans.Pp
1624edfa908SKyle EvansAll
1633b31596dSKyle Evans.Ic env
1644edfa908SKyle Evansand
1654edfa908SKyle Evans.Ic envvar
1666ffdd5efSKyle Evansdirectives will be processed and added to the static environment in reversed
1676ffdd5efSKyle Evansorder of appearance so that later specified variables properly override earlier
1686ffdd5efSKyle Evansspecified variables.
169fc0c46e3SOlivier Houchard.\" -------- FILES --------
170198423bdSRuslan Ermilov.Pp
171fc0c46e3SOlivier Houchard.It Ic files Ar filename
172fc0c46e3SOlivier HouchardSpecifies a file containing a list of files specific to that kernel
173bf7f20c2SRuslan Ermilovconfiguration file (a la
174bf7f20c2SRuslan Ermilov.Pa files. Ns Aq Ar arch ) .
1751518d129SJoseph Koshy.\" -------- HINTS --------
176198423bdSRuslan Ermilov.Pp
1771518d129SJoseph Koshy.It Ic hints Ar filename
1781518d129SJoseph KoshySpecifies a file to load a static device configuration specification
1791518d129SJoseph Koshyfrom.
1801518d129SJoseph KoshyFrom
1811518d129SJoseph Koshy.Fx 5.0
1821518d129SJoseph Koshyonwards, the kernel reads the system's device configuration at boot
1831518d129SJoseph Koshytime (see
1841518d129SJoseph Koshy.Xr device.hints 5 ) .
1851518d129SJoseph KoshyThis directive configures the kernel to use the static device configuration
1861518d129SJoseph Koshylisted in
187*39d44f7fSKyle Evans.Ar filename .
188*39d44f7fSKyle Evans.Pp
189*39d44f7fSKyle EvansHints provided in this static device configuration will be overwritten in the
190*39d44f7fSKyle Evansorder in which they're encountered.
191*39d44f7fSKyle EvansHints in the compiled-in environment takes precedence over compiled-in hints,
192*39d44f7fSKyle Evansand hints in the environment prepared for the kernel by
193*39d44f7fSKyle Evans.Xr loader 8
194*39d44f7fSKyle Evanstakes precedence over hints in the compiled-in environment.
195*39d44f7fSKyle Evans.Pp
196*39d44f7fSKyle EvansOnce the dynamic environment becomes available, all compiled-in hints will be
197*39d44f7fSKyle Evansadded to the dynamic environment if they do not already have an override in
198*39d44f7fSKyle Evansthe dynamic environment.
199*39d44f7fSKyle EvansThe dynamic environment will then be used for all searches of hints.
200*39d44f7fSKyle Evans.Pp
201*39d44f7fSKyle Evans.Va static_hints.disabled=1
202*39d44f7fSKyle Evansmay be specified in either a compiled-in environment or the
203*39d44f7fSKyle Evans.Xr loader 8
204*39d44f7fSKyle Evansenvironment to disable use of these hints files.
205*39d44f7fSKyle EvansThis option has no effect if specified in any environment after the
206*39d44f7fSKyle Evans.Xr loader 8
207*39d44f7fSKyle Evansenvironment is processed.
208*39d44f7fSKyle Evans.Pp
2091518d129SJoseph KoshyThe file
2101518d129SJoseph Koshy.Ar filename
2111518d129SJoseph Koshymust conform to the syntax specified by
2121518d129SJoseph Koshy.Xr device.hints 5 .
2135fd6a6b3SWarner LoshMultiple hints lines are allowed.
2146ffdd5efSKyle EvansThe resulting hints will be the files concatenated in reverse order of
2156ffdd5efSKyle Evansappearance so that hints in later files properly override hints in earlier
2166ffdd5efSKyle Evansfiles.
2171518d129SJoseph Koshy.\" -------- IDENT --------
218198423bdSRuslan Ermilov.Pp
2191518d129SJoseph Koshy.It Ic ident Ar name
2201518d129SJoseph KoshySet the kernel name to
2211518d129SJoseph Koshy.Ar name .
2221518d129SJoseph KoshyAt least one
2231518d129SJoseph Koshy.Ic ident
2241518d129SJoseph Koshydirective is required.
2251518d129SJoseph Koshy.\" -------- INCLUDE --------
226198423bdSRuslan Ermilov.Pp
2271518d129SJoseph Koshy.It Ic include Ar filename
2281518d129SJoseph KoshyRead subsequent text from file
2291518d129SJoseph Koshy.Ar filename
2301518d129SJoseph Koshyand return to the current file after
2311518d129SJoseph Koshy.Ar filename
2321518d129SJoseph Koshyis successfully processed.
2331518d129SJoseph Koshy.\" -------- MACHINE --------
234198423bdSRuslan Ermilov.Pp
2355fd6a6b3SWarner Losh.It Ic machine Ar arch Op Ar cpuarch
2361518d129SJoseph KoshySpecifies the architecture of the machine the kernel is being
2371518d129SJoseph Koshycompiled for.
2381518d129SJoseph KoshyLegal values for
2391518d129SJoseph Koshy.Ar arch
2401518d129SJoseph Koshyinclude:
2411518d129SJoseph Koshy.Pp
2421518d129SJoseph Koshy.Bl -tag -width ".Cm powerpc" -compact
2431518d129SJoseph Koshy.It Cm alpha
2441518d129SJoseph KoshyThe DEC Alpha architecture.
2455fd6a6b3SWarner Losh.It Cm arm
2465fd6a6b3SWarner LoshThe ARM architecture.
2471518d129SJoseph Koshy.It Cm amd64
2481518d129SJoseph KoshyThe AMD x86-64 architecture.
2491518d129SJoseph Koshy.It Cm i386
2501518d129SJoseph KoshyThe Intel x86 based PC architecture.
2515fd6a6b3SWarner Losh.It Cm mips
2525fd6a6b3SWarner LoshThe MIPS architecture.
2531518d129SJoseph Koshy.It Cm powerpc
2541518d129SJoseph KoshyThe IBM PowerPC architecture.
2551518d129SJoseph Koshy.It Cm sparc64
2561518d129SJoseph KoshyThe Sun Sparc64 architecture.
2571518d129SJoseph Koshy.El
2581518d129SJoseph Koshy.Pp
2594bb7c659SJoseph KoshyIf argument
2605fd6a6b3SWarner Losh.Ar cpuarch
2614bb7c659SJoseph Koshyis specified, it points
2624bb7c659SJoseph Koshy.Xr config 8
2635fd6a6b3SWarner Loshto the cpu architecture of the machine.
2645fd6a6b3SWarner LoshWhen
2655fd6a6b3SWarner Losh.Ar cpuarch
2665fd6a6b3SWarner Loshis not specified, it is assumed to be the same as
2675fd6a6b3SWarner Losh.Ar arch .
2685fd6a6b3SWarner Losh.Ar arch
2695fd6a6b3SWarner Loshcorresponds to MACHINE.
2705fd6a6b3SWarner Losh.Ar cpuarch
2715fd6a6b3SWarner Loshcorresponds to MACHINE_ARCH.
2724bb7c659SJoseph Koshy.Pp
2731518d129SJoseph KoshyA kernel configuration file may have only one
2741518d129SJoseph Koshy.Ic machine
2751518d129SJoseph Koshydirective.
2761518d129SJoseph Koshy.\" -------- MAKEOPTION --------
277198423bdSRuslan Ermilov.Pp
278198423bdSRuslan Ermilov.It Ic makeoption Ar options
2791518d129SJoseph Koshy.It Ic makeoptions Ar options
2801518d129SJoseph KoshyAdd
2811518d129SJoseph Koshy.Ar options
2821518d129SJoseph Koshyto the generated makefile.
2831518d129SJoseph Koshy.Pp
2841518d129SJoseph KoshyThe
2851518d129SJoseph Koshy.Ar options
2861518d129SJoseph Koshyargument is a comma separated list of one or more option
2871518d129SJoseph Koshyspecifications.
2881518d129SJoseph KoshyEach option specification has the form
2891518d129SJoseph Koshy.Pp
2901518d129SJoseph Koshy.D1 Ar MakeVariableName Ns Op = Ns Ar Value
2912880daebSAndrew Thompson.D1 Ar MakeVariableName Ns += Ns Ar Value
2921518d129SJoseph Koshy.Pp
2931518d129SJoseph Koshyand results in the appropriate
2941518d129SJoseph Koshy.Xr make 1
2951518d129SJoseph Koshyvariable definition being inserted into the generated makefile.
2961518d129SJoseph KoshyIf only the name of the
2971518d129SJoseph Koshy.Xr make 1
2981518d129SJoseph Koshyvariable is specified,
2991518d129SJoseph Koshy.Ar value
3001518d129SJoseph Koshyis assumed to be the empty string.
3011518d129SJoseph Koshy.Pp
3021518d129SJoseph KoshyExample:
3031518d129SJoseph Koshy.Bd -literal -offset indent -compact
3042880daebSAndrew Thompsonmakeoptions MYMAKEOPTION="foo"
3052880daebSAndrew Thompsonmakeoptions MYMAKEOPTION+="bar"
3061518d129SJoseph Koshymakeoptions MYNULLMAKEOPTION
3071518d129SJoseph Koshy.Ed
3081518d129SJoseph Koshy.\" -------- MAXUSERS --------
309198423bdSRuslan Ermilov.Pp
3101518d129SJoseph Koshy.It Ic maxusers Ar number
3111518d129SJoseph KoshyThis optional directive is used to configure the size
3121518d129SJoseph Koshyof some kernel data structures.
3131518d129SJoseph KoshyThe parameter
3141518d129SJoseph Koshy.Ar number
3151518d129SJoseph Koshycan be 0 (the default) or an integer greater than or equal to 2.
3161518d129SJoseph KoshyA value of 0 indicates that the kernel should configure
3171518d129SJoseph Koshyits data structures according to the size of available
3181518d129SJoseph Koshyphysical memory.
3191518d129SJoseph KoshyIf auto configuration is requested, the kernel will set
3201518d129SJoseph Koshythis tunable to a value between 32 and 384.
3211518d129SJoseph Koshy.Pp
3221518d129SJoseph KoshyAs explained in
3231518d129SJoseph Koshy.Xr tuning 7 ,
3241518d129SJoseph Koshythis tunable can also be set at boot time using
3251518d129SJoseph Koshy.Xr loader 8 .
326198423bdSRuslan Ermilov.\" -------- NOCPU --------
327198423bdSRuslan Ermilov.Pp
328198423bdSRuslan Ermilov.It Ic nocpu Ar cputype
329198423bdSRuslan ErmilovRemove the specified CPU
330198423bdSRuslan Ermilovfrom the list of previously selected CPUs.
331198423bdSRuslan ErmilovThis directive can be used to cancel the effect of
332198423bdSRuslan Ermilov.Ic cpu
333198423bdSRuslan Ermilovdirectives in files included using
334198423bdSRuslan Ermilov.Ic include .
335b83d741bSDag-Erling Smørgrav.\" -------- NODEVICE --------
336198423bdSRuslan Ermilov.Pp
337b83d741bSDag-Erling Smørgrav.It Ic nodevice Ar name Op , Ar name Op ...
338b83d741bSDag-Erling Smørgrav.It Ic nodevices Ar name Op , Ar name Op ...
339b83d741bSDag-Erling SmørgravRemove the specified devices
340b83d741bSDag-Erling Smørgravfrom the list of previously selected devices.
341b83d741bSDag-Erling SmørgravThis directive can be used to cancel the effects of
342b83d741bSDag-Erling Smørgrav.Ic device
343b83d741bSDag-Erling Smørgravor
344b83d741bSDag-Erling Smørgrav.Ic devices
345b83d741bSDag-Erling Smørgravdirectives in files included using
346b83d741bSDag-Erling Smørgrav.Ic include .
3471518d129SJoseph Koshy.\" -------- NOMAKEOPTION --------
348198423bdSRuslan Ermilov.Pp
3491518d129SJoseph Koshy.It Ic nomakeoption Ar name
350198423bdSRuslan Ermilov.It Ic nomakeoptions Ar name
3511518d129SJoseph KoshyRemoves previously defined
3521518d129SJoseph Koshy.Xr make 1
3531518d129SJoseph Koshyoption
3541518d129SJoseph Koshy.Ar name
3551518d129SJoseph Koshyfrom the kernel build.
3561518d129SJoseph KoshyThis directive can be used to cancel the effects of
3571518d129SJoseph Koshy.Ic makeoption
3581518d129SJoseph Koshydirectives in files included using
3591518d129SJoseph Koshy.Ic include .
3601518d129SJoseph Koshy.\" -------- NOOPTION --------
361198423bdSRuslan Ermilov.Pp
362b83d741bSDag-Erling Smørgrav.It Ic nooption Ar name Op , Ar name Op ...
363b83d741bSDag-Erling Smørgrav.It Ic nooptions Ar name Op , Ar name Op ...
364b83d741bSDag-Erling SmørgravRemove the specified kernel options
3651518d129SJoseph Koshyfrom the list of previously defined options.
3661518d129SJoseph KoshyThis directive can be used to cancel the effects of
367b83d741bSDag-Erling Smørgrav.Ic option
368b83d741bSDag-Erling Smørgravor
3691518d129SJoseph Koshy.Ic options
3701518d129SJoseph Koshydirectives in files included using
3711518d129SJoseph Koshy.Ic include .
3721518d129SJoseph Koshy.\" -------- OPTIONS --------
373198423bdSRuslan Ermilov.Pp
374b83d741bSDag-Erling Smørgrav.It Ic option Ar optionspec Op , Ar optionspec Op ...
375b83d741bSDag-Erling Smørgrav.It Ic options Ar optionspec Op , Ar optionspec Op ...
3761518d129SJoseph KoshyAdd compile time kernel options to the kernel build.
3771518d129SJoseph KoshyEach option specification has the form
3781518d129SJoseph Koshy.Pp
379b83d741bSDag-Erling Smørgrav.D1 Ar name Ns Op = Ns Ar value
3801518d129SJoseph Koshy.Pp
3811518d129SJoseph KoshyIf
382b83d741bSDag-Erling Smørgrav.Ar value
3831518d129SJoseph Koshyis not specified, it is assumed to be
3841518d129SJoseph Koshy.Dv NULL .
3851518d129SJoseph KoshyOptions common to all architectures are specified in
3861518d129SJoseph Koshythe file
3871518d129SJoseph Koshy.Pa sys/conf/options .
3881518d129SJoseph KoshyOptions specific to architecture
3891518d129SJoseph Koshy.Ar arch
3901518d129SJoseph Koshyare specified in the file
3911518d129SJoseph Koshy.Pa sys/conf/options. Ns Aq Ar arch .
3921518d129SJoseph Koshy.\" -------- PROFILE --------
393198423bdSRuslan Ermilov.Pp
3941518d129SJoseph Koshy.It Ic profile Ar number
3951518d129SJoseph KoshyEnables kernel profiling if
3961518d129SJoseph Koshy.Ar number
3971518d129SJoseph Koshyis non-zero.
3981518d129SJoseph KoshyIf
3991518d129SJoseph Koshy.Ar number
4001518d129SJoseph Koshyis 2 or greater, the kernel is configured for
4011518d129SJoseph Koshyhigh-resolution profiling.
4021518d129SJoseph KoshyKernels can also be built for profiling using the
4031518d129SJoseph Koshy.Fl p
4041518d129SJoseph Koshyoption to
4051518d129SJoseph Koshy.Xr config 8 .
4061518d129SJoseph Koshy.El
4071518d129SJoseph Koshy.Ss Obsolete Directives
4081518d129SJoseph KoshyThe following kernel configuration directives are obsolete.
4091518d129SJoseph Koshy.Bl -tag -width indent
4101518d129SJoseph Koshy.\" -------- CONFIG --------
4111518d129SJoseph Koshy.It Ic config
4121518d129SJoseph KoshyThis directive was used to specify the device to be used for the root
4131518d129SJoseph Koshyfile system.
4141518d129SJoseph KoshyFrom
4151518d129SJoseph Koshy.Fx 4.0
4161518d129SJoseph Koshyonwards, this information is passed to a booting kernel by
4171518d129SJoseph Koshy.Xr loader 8 .
4181518d129SJoseph Koshy.El
4191518d129SJoseph Koshy.Sh FILES
4201518d129SJoseph Koshy.Bl -tag -width ".Pa sys/conf/Makefile. Ns Ar arch" -compact
4211518d129SJoseph Koshy.It Pa sys/compile/ Ns Ar NAME
4221518d129SJoseph KoshyCompile directory created from a kernel configuration.
4231518d129SJoseph Koshy.It Pa sys/conf/Makefile. Ns Ar arch
4241518d129SJoseph Koshy.Pa Makefile
4251518d129SJoseph Koshyfragments for architecture
4261518d129SJoseph Koshy.Ar arch .
4271518d129SJoseph Koshy.It Pa sys/conf/files
4281518d129SJoseph KoshyDevices common to all architectures.
4291518d129SJoseph Koshy.It Pa sys/conf/files. Ns Ar arch
4301518d129SJoseph KoshyDevices for architecture
4311518d129SJoseph Koshy.Ar arch .
4321518d129SJoseph Koshy.It Pa sys/conf/options
4331518d129SJoseph KoshyOptions common to all architectures.
4341518d129SJoseph Koshy.It Pa sys/conf/options. Ns Ar arch
4351518d129SJoseph KoshyOptions for architecture
4361518d129SJoseph Koshy.Ar arch .
4371518d129SJoseph Koshy.El
4381518d129SJoseph Koshy.Sh SEE ALSO
4391518d129SJoseph Koshy.Xr kenv 1 ,
4401518d129SJoseph Koshy.Xr make 1 ,
4411518d129SJoseph Koshy.Xr device.hints 5 ,
4421518d129SJoseph Koshy.Xr loader.conf 5 ,
4431518d129SJoseph Koshy.Xr config 8 ,
4441518d129SJoseph Koshy.Xr kldload 8 ,
4451518d129SJoseph Koshy.Xr loader 8
4461518d129SJoseph Koshy.Rs
4471518d129SJoseph Koshy.%T "Building 4.4BSD Kernels with Config"
4481518d129SJoseph Koshy.%A "Samuel J. Leffler"
4491518d129SJoseph Koshy.%A "Michael J. Karels"
4501518d129SJoseph Koshy.Re
4511518d129SJoseph Koshy.Sh HISTORY
4521518d129SJoseph KoshyThe
4531518d129SJoseph Koshy.Xr config 8
4541518d129SJoseph Koshyutility first appeared in
4551518d129SJoseph Koshy.Bx 4.1 ,
4561518d129SJoseph Koshyand was subsequently revised in
4571518d129SJoseph Koshy.Bx 4.4 .
4581518d129SJoseph Koshy.Pp
4591518d129SJoseph KoshyThe kernel configuration mechanism changed further in
4601518d129SJoseph Koshy.Fx 4.0
4611518d129SJoseph Koshyand
4621518d129SJoseph Koshy.Fx 5.0 ,
4636203e1eaSJoseph Koshymoving toward an architecture supporting dynamic kernel
4641518d129SJoseph Koshyconfiguration.
465