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.\" 24*2f17efa0SBryan Drewery.Dd February 10, 2025 251518d129SJoseph Koshy.Dt CONFIG 5 261518d129SJoseph Koshy.Os 271518d129SJoseph Koshy.Sh NAME 281518d129SJoseph Koshy.Nm config 291518d129SJoseph Koshy.Nd kernel configuration file format 301518d129SJoseph Koshy.Sh DESCRIPTION 311518d129SJoseph KoshyA kernel configuration file specifies the configuration of a 321518d129SJoseph Koshy.Fx 331518d129SJoseph Koshykernel. 341518d129SJoseph KoshyIt is processed by 351518d129SJoseph Koshy.Xr config 8 361518d129SJoseph Koshyto create a build environment where a kernel may be built using 371518d129SJoseph Koshy.Xr make 1 . 381518d129SJoseph Koshy.Ss Lexical Structure 391518d129SJoseph KoshyA kernel configuration file comprises a sequence of specification 401518d129SJoseph Koshydirectives. 411518d129SJoseph Koshy.Pp 421518d129SJoseph KoshyA specification directive starts with a keyword at the beginning 431518d129SJoseph Koshyof the line and is followed by additional parameters. 441518d129SJoseph Koshy.Pp 451518d129SJoseph KoshyA specification directive may be terminated by a semicolon 461518d129SJoseph Koshy.Ql \&; 471518d129SJoseph Koshyor by a newline. 481518d129SJoseph KoshyLong input lines may be broken into shorter lines by starting the 491518d129SJoseph Koshysecond and subsequent lines with a white space character. 501518d129SJoseph Koshy.Pp 511518d129SJoseph KoshyCase is significant, 521518d129SJoseph Koshy.Dq Li machine 531518d129SJoseph Koshyand 541518d129SJoseph Koshy.Dq Li MACHINE 551518d129SJoseph Koshyare different tokens. 561518d129SJoseph Koshy.Pp 571518d129SJoseph KoshyA double quote character 581518d129SJoseph Koshy.Ql \[dq] 591518d129SJoseph Koshystarts a quoted string. 601518d129SJoseph KoshyAll characters up to the next quote character form the value 611518d129SJoseph Koshyof the quoted string. 621518d129SJoseph KoshyA 631518d129SJoseph Koshy.Ql \[dq] 641518d129SJoseph Koshycharacter may be inserted into a quoted string by 651518d129SJoseph Koshyusing the sequence 661518d129SJoseph Koshy.Ql \e\[dq] . 671518d129SJoseph Koshy.Pp 681518d129SJoseph KoshyNumbers are specified using 691518d129SJoseph Koshy.Tn C Ns -style 701518d129SJoseph Koshysyntax. 711518d129SJoseph Koshy.Pp 721518d129SJoseph KoshyA 731518d129SJoseph Koshy.Ql # 741518d129SJoseph Koshycharacter starts a comment; all characters from the 751518d129SJoseph Koshy.Ql # 761518d129SJoseph Koshycharacter till the end of the current line are ignored. 771518d129SJoseph Koshy.Pp 781518d129SJoseph KoshyWhitespace between tokens is ignored, except inside quoted strings. 791518d129SJoseph KoshyWhitespace following a comment line is ignored. 801518d129SJoseph Koshy.Ss Configuration Directives 811518d129SJoseph KoshyKernel configuration directives may appear in any order 821518d129SJoseph Koshyin a kernel configuration file. 831518d129SJoseph KoshyDirectives are processed in order of appearance with subsequent 841518d129SJoseph Koshydirective lines overriding the effect of prior ones. 851518d129SJoseph Koshy.Pp 861518d129SJoseph KoshyThe list of keywords and their meanings are as follows: 879c398cc7SUlrich Spörlein.Pp 88198423bdSRuslan Ermilov.Bl -tag -width indent -compact 891518d129SJoseph Koshy.\" -------- CPU -------- 901518d129SJoseph Koshy.It Ic cpu Ar cputype 911518d129SJoseph KoshySpecify the CPU this kernel will run on. 921518d129SJoseph KoshyThere can be more than one 931518d129SJoseph Koshy.Ic cpu 941518d129SJoseph Koshydirective in a configuration file. 951518d129SJoseph KoshyThe allowed list of CPU names is architecture specific and is 961518d129SJoseph Koshydefined in the file 971518d129SJoseph Koshy.Pa sys/conf/options . Ns Aq Ar arch . 981518d129SJoseph Koshy.\" -------- DEVICE -------- 99198423bdSRuslan Ermilov.Pp 100b83d741bSDag-Erling Smørgrav.It Ic device Ar name Op , Ar name Op ... 101b83d741bSDag-Erling Smørgrav.It Ic devices Ar name Op , Ar name Op ... 102b83d741bSDag-Erling SmørgravConfigures the specified devices 1031518d129SJoseph Koshyfor inclusion into the kernel image. 1041518d129SJoseph KoshyDevices that are common to all architectures are 1051518d129SJoseph Koshydefined in the file 1061518d129SJoseph Koshy.Pa sys/conf/files . 1071518d129SJoseph KoshyDevices that are specific to architecture 1081518d129SJoseph Koshy.Ar arch 1091518d129SJoseph Koshyare defined in the file 1101518d129SJoseph Koshy.Pa sys/conf/files . Ns Aq Ar arch . 1111518d129SJoseph Koshy.\" -------- ENV -------- 112198423bdSRuslan Ermilov.Pp 1131518d129SJoseph Koshy.It Ic env Ar filename 1141518d129SJoseph KoshySpecifies a filename containing a kernel environment definition. 11539d44f7fSKyle Evans.Pp 11639d44f7fSKyle EvansThe kernel will augment this compiled-in environment with the environment 11739d44f7fSKyle Evansprepared for it at boot time by 1181518d129SJoseph Koshy.Xr loader 8 . 11939d44f7fSKyle EvansEnvironment variables specified in the 12039d44f7fSKyle Evans.Xr loader 8 12139d44f7fSKyle Evansenvironment will take precedence over environment variables specified in 12239d44f7fSKyle Evans.Ar filename , 12339d44f7fSKyle Evansand environment variables specified in the dynamic environment take precedence 12439d44f7fSKyle Evansover both of these. 12539d44f7fSKyle Evans.Pp 12644314c35SKyle Evans.Va loader_env.disabled=1 12744314c35SKyle Evansmay be specified in the static environment to disable the 12844314c35SKyle Evans.Xr loader 8 12944314c35SKyle Evansenvironment. 13044314c35SKyle EvansDisabling the 13144314c35SKyle Evans.Xr loader 8 13244314c35SKyle Evansshould be done with caution and due consideration for whether or not it supplies 13344314c35SKyle Evansenvironment variables needed for properly booting the system. 13444314c35SKyle Evans.Pp 13539d44f7fSKyle Evans.Va static_env.disabled=1 13639d44f7fSKyle Evansmay be specified in the 13739d44f7fSKyle Evans.Xr loader 8 13844314c35SKyle Evansenvironment to disable use of the static environment. 13939d44f7fSKyle EvansThis option has no effect if specified in any environment after the 14039d44f7fSKyle Evans.Xr loader 8 14139d44f7fSKyle Evansenvironment is processed. 14244314c35SKyle EvansThis option is not usable in conjunction with 14344314c35SKyle Evans.Va loader_env.disabled . 1441518d129SJoseph Koshy.Pp 1451518d129SJoseph KoshyThis directive is useful for setting kernel tunables in 1461518d129SJoseph Koshyembedded environments that do not start from 1471518d129SJoseph Koshy.Xr loader 8 . 1484edfa908SKyle Evans.Pp 1494edfa908SKyle EvansAll 1504edfa908SKyle Evans.Ic env 1514edfa908SKyle Evansand 1524edfa908SKyle Evans.Ic envvar 1536ffdd5efSKyle Evansdirectives will be processed and added to the static environment in reversed 1546ffdd5efSKyle Evansorder of appearance so that later specified variables properly override earlier 1556ffdd5efSKyle Evansspecified variables. 1564edfa908SKyle EvansNote that within 1574edfa908SKyle Evans.Ar filename , 1584edfa908SKyle Evansthe first appearance of a given variable will be the first one seen by the 1594edfa908SKyle Evanskernel, effectively shadowing any later appearances of the same variable within 1604edfa908SKyle Evans.Ar filename . 1613b31596dSKyle Evans.\" -------- ENVVAR -------- 1623b31596dSKyle Evans.Pp 1633b31596dSKyle Evans.It Ic envvar Ar setting 1643b31596dSKyle EvansSpecifies an individual environment setting to be added to the kernel's 1653b31596dSKyle Evanscompiled-in environment. 1663b31596dSKyle Evans.Ar setting 1673b31596dSKyle Evansmust be of the form 1683b31596dSKyle Evans.Dq Va name=value . 1693b31596dSKyle EvansOptional quotes are supported in both name and value. 1704edfa908SKyle Evans.Pp 1714edfa908SKyle EvansAll 1723b31596dSKyle Evans.Ic env 1734edfa908SKyle Evansand 1744edfa908SKyle Evans.Ic envvar 1756ffdd5efSKyle Evansdirectives will be processed and added to the static environment in reversed 1766ffdd5efSKyle Evansorder of appearance so that later specified variables properly override earlier 1776ffdd5efSKyle Evansspecified variables. 178fc0c46e3SOlivier Houchard.\" -------- FILES -------- 179198423bdSRuslan Ermilov.Pp 180fc0c46e3SOlivier Houchard.It Ic files Ar filename 181fc0c46e3SOlivier HouchardSpecifies a file containing a list of files specific to that kernel 182bf7f20c2SRuslan Ermilovconfiguration file (a la 183bf7f20c2SRuslan Ermilov.Pa files . Ns Aq Ar arch ) . 1841518d129SJoseph Koshy.\" -------- HINTS -------- 185198423bdSRuslan Ermilov.Pp 1861518d129SJoseph Koshy.It Ic hints Ar filename 1871518d129SJoseph KoshySpecifies a file to load a static device configuration specification 1881518d129SJoseph Koshyfrom. 1891518d129SJoseph KoshyFrom 1901518d129SJoseph Koshy.Fx 5.0 1911518d129SJoseph Koshyonwards, the kernel reads the system's device configuration at boot 1921518d129SJoseph Koshytime (see 1931518d129SJoseph Koshy.Xr device.hints 5 ) . 1941518d129SJoseph KoshyThis directive configures the kernel to use the static device configuration 1951518d129SJoseph Koshylisted in 19639d44f7fSKyle Evans.Ar filename . 19739d44f7fSKyle Evans.Pp 19839d44f7fSKyle EvansHints provided in this static device configuration will be overwritten in the 19939d44f7fSKyle Evansorder in which they're encountered. 20039d44f7fSKyle EvansHints in the compiled-in environment takes precedence over compiled-in hints, 20139d44f7fSKyle Evansand hints in the environment prepared for the kernel by 20239d44f7fSKyle Evans.Xr loader 8 20339d44f7fSKyle Evanstakes precedence over hints in the compiled-in environment. 20439d44f7fSKyle Evans.Pp 20539d44f7fSKyle EvansOnce the dynamic environment becomes available, all compiled-in hints will be 20639d44f7fSKyle Evansadded to the dynamic environment if they do not already have an override in 20739d44f7fSKyle Evansthe dynamic environment. 20839d44f7fSKyle EvansThe dynamic environment will then be used for all searches of hints. 20939d44f7fSKyle Evans.Pp 21039d44f7fSKyle Evans.Va static_hints.disabled=1 21139d44f7fSKyle Evansmay be specified in either a compiled-in environment or the 21239d44f7fSKyle Evans.Xr loader 8 21339d44f7fSKyle Evansenvironment to disable use of these hints files. 21439d44f7fSKyle EvansThis option has no effect if specified in any environment after the 21539d44f7fSKyle Evans.Xr loader 8 21639d44f7fSKyle Evansenvironment is processed. 21739d44f7fSKyle Evans.Pp 2181518d129SJoseph KoshyThe file 2191518d129SJoseph Koshy.Ar filename 2201518d129SJoseph Koshymust conform to the syntax specified by 2211518d129SJoseph Koshy.Xr device.hints 5 . 2225fd6a6b3SWarner LoshMultiple hints lines are allowed. 2236ffdd5efSKyle EvansThe resulting hints will be the files concatenated in reverse order of 2246ffdd5efSKyle Evansappearance so that hints in later files properly override hints in earlier 2256ffdd5efSKyle Evansfiles. 2261518d129SJoseph Koshy.\" -------- IDENT -------- 227198423bdSRuslan Ermilov.Pp 2281518d129SJoseph Koshy.It Ic ident Ar name 2291518d129SJoseph KoshySet the kernel name to 2301518d129SJoseph Koshy.Ar name . 2311518d129SJoseph KoshyAt least one 2321518d129SJoseph Koshy.Ic ident 2331518d129SJoseph Koshydirective is required. 2341518d129SJoseph Koshy.\" -------- INCLUDE -------- 235198423bdSRuslan Ermilov.Pp 2361518d129SJoseph Koshy.It Ic include Ar filename 2371518d129SJoseph KoshyRead subsequent text from file 2381518d129SJoseph Koshy.Ar filename 2391518d129SJoseph Koshyand return to the current file after 2401518d129SJoseph Koshy.Ar filename 2411518d129SJoseph Koshyis successfully processed. 2429e2b8720SStephen J. Kiernan.\" -------- INCLUDEOPTIONS -------- 2439e2b8720SStephen J. Kiernan.Pp 244*2f17efa0SBryan Drewery.It Ic includeoptions Ar filename 2459e2b8720SStephen J. KiernanSpecifies a file containing a list of additional options 2469e2b8720SStephen J. Kiernanspecific to that kernel configuration file. 2479e2b8720SStephen J. KiernanThis is useful for build environments that need to add 2489e2b8720SStephen J. Kiernancustom options and is often used in conjunction with the 2499e2b8720SStephen J. Kiernan.Ic makeoption 2509e2b8720SStephen J. Kiernandirective. 2511518d129SJoseph Koshy.\" -------- MACHINE -------- 252198423bdSRuslan Ermilov.Pp 2535fd6a6b3SWarner Losh.It Ic machine Ar arch Op Ar cpuarch 2541518d129SJoseph KoshySpecifies the architecture of the machine the kernel is being 2551518d129SJoseph Koshycompiled for. 2561518d129SJoseph KoshyLegal values for 2571518d129SJoseph Koshy.Ar arch 2581518d129SJoseph Koshyinclude: 2591518d129SJoseph Koshy.Pp 2601518d129SJoseph Koshy.Bl -tag -width ".Cm powerpc" -compact 26131719b49SWarner Losh.It Cm arm64 26231719b49SWarner LoshThe 64-bit ARM application architecture. 2635fd6a6b3SWarner Losh.It Cm arm 26431719b49SWarner LoshThe ARM architecture 2651518d129SJoseph Koshy.It Cm amd64 2661518d129SJoseph KoshyThe AMD x86-64 architecture. 2671518d129SJoseph Koshy.It Cm i386 2681518d129SJoseph KoshyThe Intel x86 based PC architecture. 2691518d129SJoseph Koshy.It Cm powerpc 2701518d129SJoseph KoshyThe IBM PowerPC architecture. 27131719b49SWarner Losh.It Cm riscv 27231719b49SWarner LoshThe RISC-V architecture. 2731518d129SJoseph Koshy.El 2741518d129SJoseph Koshy.Pp 2754bb7c659SJoseph KoshyIf argument 2765fd6a6b3SWarner Losh.Ar cpuarch 2774bb7c659SJoseph Koshyis specified, it points 2784bb7c659SJoseph Koshy.Xr config 8 2795fd6a6b3SWarner Loshto the cpu architecture of the machine. 2805fd6a6b3SWarner LoshWhen 2815fd6a6b3SWarner Losh.Ar cpuarch 2825fd6a6b3SWarner Loshis not specified, it is assumed to be the same as 2835fd6a6b3SWarner Losh.Ar arch . 2845fd6a6b3SWarner Losh.Ar arch 2855fd6a6b3SWarner Loshcorresponds to MACHINE. 2865fd6a6b3SWarner Losh.Ar cpuarch 2875fd6a6b3SWarner Loshcorresponds to MACHINE_ARCH. 2884bb7c659SJoseph Koshy.Pp 2891518d129SJoseph KoshyA kernel configuration file may have only one 2901518d129SJoseph Koshy.Ic machine 2919bcb7418SWarner Loshdirective, unless the second one matches the 2929bcb7418SWarner Loshmachine argument in the first one exactly. 2931518d129SJoseph Koshy.\" -------- MAKEOPTION -------- 294198423bdSRuslan Ermilov.Pp 295198423bdSRuslan Ermilov.It Ic makeoption Ar options 2961518d129SJoseph Koshy.It Ic makeoptions Ar options 2971518d129SJoseph KoshyAdd 2981518d129SJoseph Koshy.Ar options 2991518d129SJoseph Koshyto the generated makefile. 3001518d129SJoseph Koshy.Pp 3011518d129SJoseph KoshyThe 3021518d129SJoseph Koshy.Ar options 3031518d129SJoseph Koshyargument is a comma separated list of one or more option 3041518d129SJoseph Koshyspecifications. 3051518d129SJoseph KoshyEach option specification has the form 3061518d129SJoseph Koshy.Pp 3071518d129SJoseph Koshy.D1 Ar MakeVariableName Ns Op = Ns Ar Value 3082880daebSAndrew Thompson.D1 Ar MakeVariableName Ns += Ns Ar Value 3091518d129SJoseph Koshy.Pp 3101518d129SJoseph Koshyand results in the appropriate 3111518d129SJoseph Koshy.Xr make 1 3121518d129SJoseph Koshyvariable definition being inserted into the generated makefile. 3131518d129SJoseph KoshyIf only the name of the 3141518d129SJoseph Koshy.Xr make 1 3151518d129SJoseph Koshyvariable is specified, 3161518d129SJoseph Koshy.Ar value 3171518d129SJoseph Koshyis assumed to be the empty string. 3181518d129SJoseph Koshy.Pp 3191518d129SJoseph KoshyExample: 3201518d129SJoseph Koshy.Bd -literal -offset indent -compact 3212880daebSAndrew Thompsonmakeoptions MYMAKEOPTION="foo" 3222880daebSAndrew Thompsonmakeoptions MYMAKEOPTION+="bar" 3231518d129SJoseph Koshymakeoptions MYNULLMAKEOPTION 3241518d129SJoseph Koshy.Ed 3251518d129SJoseph Koshy.\" -------- MAXUSERS -------- 326198423bdSRuslan Ermilov.Pp 3271518d129SJoseph Koshy.It Ic maxusers Ar number 3281518d129SJoseph KoshyThis optional directive is used to configure the size 3291518d129SJoseph Koshyof some kernel data structures. 3301518d129SJoseph KoshyThe parameter 3311518d129SJoseph Koshy.Ar number 3321518d129SJoseph Koshycan be 0 (the default) or an integer greater than or equal to 2. 3331518d129SJoseph KoshyA value of 0 indicates that the kernel should configure 3341518d129SJoseph Koshyits data structures according to the size of available 3351518d129SJoseph Koshyphysical memory. 3361518d129SJoseph KoshyIf auto configuration is requested, the kernel will set 337191c624dSFelix Johnsonthis tunable to a value between 32 and 384 for 32-bit systems, 338191c624dSFelix Johnsonor scale the value higher based on available memory for 64-bit 339191c624dSFelix Johnsonsystems. 3401518d129SJoseph Koshy.Pp 3411518d129SJoseph KoshyAs explained in 3421518d129SJoseph Koshy.Xr tuning 7 , 3431518d129SJoseph Koshythis tunable can also be set at boot time using 3441518d129SJoseph Koshy.Xr loader 8 . 345198423bdSRuslan Ermilov.\" -------- NOCPU -------- 346198423bdSRuslan Ermilov.Pp 347198423bdSRuslan Ermilov.It Ic nocpu Ar cputype 348198423bdSRuslan ErmilovRemove the specified CPU 349198423bdSRuslan Ermilovfrom the list of previously selected CPUs. 350198423bdSRuslan ErmilovThis directive can be used to cancel the effect of 351198423bdSRuslan Ermilov.Ic cpu 352198423bdSRuslan Ermilovdirectives in files included using 353198423bdSRuslan Ermilov.Ic include . 354b83d741bSDag-Erling Smørgrav.\" -------- NODEVICE -------- 355198423bdSRuslan Ermilov.Pp 356b83d741bSDag-Erling Smørgrav.It Ic nodevice Ar name Op , Ar name Op ... 357b83d741bSDag-Erling Smørgrav.It Ic nodevices Ar name Op , Ar name Op ... 358b83d741bSDag-Erling SmørgravRemove the specified devices 359b83d741bSDag-Erling Smørgravfrom the list of previously selected devices. 360b83d741bSDag-Erling SmørgravThis directive can be used to cancel the effects of 361b83d741bSDag-Erling Smørgrav.Ic device 362b83d741bSDag-Erling Smørgravor 363b83d741bSDag-Erling Smørgrav.Ic devices 364b83d741bSDag-Erling Smørgravdirectives in files included using 365b83d741bSDag-Erling Smørgrav.Ic include . 3661518d129SJoseph Koshy.\" -------- NOMAKEOPTION -------- 367198423bdSRuslan Ermilov.Pp 3681518d129SJoseph Koshy.It Ic nomakeoption Ar name 369198423bdSRuslan Ermilov.It Ic nomakeoptions Ar name 3701518d129SJoseph KoshyRemoves previously defined 3711518d129SJoseph Koshy.Xr make 1 3721518d129SJoseph Koshyoption 3731518d129SJoseph Koshy.Ar name 3741518d129SJoseph Koshyfrom the kernel build. 3751518d129SJoseph KoshyThis directive can be used to cancel the effects of 3761518d129SJoseph Koshy.Ic makeoption 3771518d129SJoseph Koshydirectives in files included using 3781518d129SJoseph Koshy.Ic include . 3791518d129SJoseph Koshy.\" -------- NOOPTION -------- 380198423bdSRuslan Ermilov.Pp 381b83d741bSDag-Erling Smørgrav.It Ic nooption Ar name Op , Ar name Op ... 382b83d741bSDag-Erling Smørgrav.It Ic nooptions Ar name Op , Ar name Op ... 383b83d741bSDag-Erling SmørgravRemove the specified kernel options 3841518d129SJoseph Koshyfrom the list of previously defined options. 3851518d129SJoseph KoshyThis directive can be used to cancel the effects of 386b83d741bSDag-Erling Smørgrav.Ic option 387b83d741bSDag-Erling Smørgravor 3881518d129SJoseph Koshy.Ic options 3891518d129SJoseph Koshydirectives in files included using 3901518d129SJoseph Koshy.Ic include . 3911518d129SJoseph Koshy.\" -------- OPTIONS -------- 392198423bdSRuslan Ermilov.Pp 393b83d741bSDag-Erling Smørgrav.It Ic option Ar optionspec Op , Ar optionspec Op ... 394b83d741bSDag-Erling Smørgrav.It Ic options Ar optionspec Op , Ar optionspec Op ... 3951518d129SJoseph KoshyAdd compile time kernel options to the kernel build. 3961518d129SJoseph KoshyEach option specification has the form 3971518d129SJoseph Koshy.Pp 398b83d741bSDag-Erling Smørgrav.D1 Ar name Ns Op = Ns Ar value 3991518d129SJoseph Koshy.Pp 4001518d129SJoseph KoshyIf 401b83d741bSDag-Erling Smørgrav.Ar value 4021518d129SJoseph Koshyis not specified, it is assumed to be 4031518d129SJoseph Koshy.Dv NULL . 4041518d129SJoseph KoshyOptions common to all architectures are specified in 4051518d129SJoseph Koshythe file 4061518d129SJoseph Koshy.Pa sys/conf/options . 4071518d129SJoseph KoshyOptions specific to architecture 4081518d129SJoseph Koshy.Ar arch 4091518d129SJoseph Koshyare specified in the file 4101518d129SJoseph Koshy.Pa sys/conf/options . Ns Aq Ar arch . 4111518d129SJoseph Koshy.El 4121518d129SJoseph Koshy.Sh FILES 4131518d129SJoseph Koshy.Bl -tag -width ".Pa sys/conf/Makefile. Ns Ar arch" -compact 4141518d129SJoseph Koshy.It Pa sys/compile/ Ns Ar NAME 4151518d129SJoseph KoshyCompile directory created from a kernel configuration. 4161518d129SJoseph Koshy.It Pa sys/conf/Makefile . Ns Ar arch 4171518d129SJoseph Koshy.Pa Makefile 4181518d129SJoseph Koshyfragments for architecture 4191518d129SJoseph Koshy.Ar arch . 4201518d129SJoseph Koshy.It Pa sys/conf/files 4211518d129SJoseph KoshyDevices common to all architectures. 4221518d129SJoseph Koshy.It Pa sys/conf/files . Ns Ar arch 4231518d129SJoseph KoshyDevices for architecture 4241518d129SJoseph Koshy.Ar arch . 4251518d129SJoseph Koshy.It Pa sys/conf/options 4261518d129SJoseph KoshyOptions common to all architectures. 4271518d129SJoseph Koshy.It Pa sys/conf/options . Ns Ar arch 4281518d129SJoseph KoshyOptions for architecture 4291518d129SJoseph Koshy.Ar arch . 4301518d129SJoseph Koshy.El 4311518d129SJoseph Koshy.Sh SEE ALSO 4321518d129SJoseph Koshy.Xr kenv 1 , 4331518d129SJoseph Koshy.Xr make 1 , 4341518d129SJoseph Koshy.Xr device.hints 5 , 4351518d129SJoseph Koshy.Xr loader.conf 5 , 4361518d129SJoseph Koshy.Xr config 8 , 4371518d129SJoseph Koshy.Xr kldload 8 , 4381518d129SJoseph Koshy.Xr loader 8 4391518d129SJoseph Koshy.Rs 4401518d129SJoseph Koshy.%T "Building 4.4BSD Kernels with Config" 4411518d129SJoseph Koshy.%A "Samuel J. Leffler" 4421518d129SJoseph Koshy.%A "Michael J. Karels" 4431518d129SJoseph Koshy.Re 4441518d129SJoseph Koshy.Sh HISTORY 4451518d129SJoseph KoshyThe 4461518d129SJoseph Koshy.Xr config 8 4471518d129SJoseph Koshyutility first appeared in 4481518d129SJoseph Koshy.Bx 4.1 , 4491518d129SJoseph Koshyand was subsequently revised in 4501518d129SJoseph Koshy.Bx 4.4 . 4511518d129SJoseph Koshy.Pp 4521518d129SJoseph KoshyThe kernel configuration mechanism changed further in 4531518d129SJoseph Koshy.Fx 4.0 4541518d129SJoseph Koshyand 4551518d129SJoseph Koshy.Fx 5.0 , 4566203e1eaSJoseph Koshymoving toward an architecture supporting dynamic kernel 4571518d129SJoseph Koshyconfiguration. 458