1.\" Copyright (c) 1980, 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. All advertising materials mentioning features or use of this software 13.\" must display the following acknowledgement: 14.\" This product includes software developed by the University of 15.\" California, Berkeley and its contributors. 16.\" 4. Neither the name of the University nor the names of its contributors 17.\" may be used to endorse or promote products derived from this software 18.\" without specific prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30.\" SUCH DAMAGE. 31.\" 32.\" @(#)config.8 8.2 (Berkeley) 4/19/94 33.\" 34.Dd April 19, 1994 35.Dt CONFIG 8 36.Os BSD 4 37.Sh NAME 38.Nm config 39.Nd build system configuration files 40.Sh SYNOPSIS 41.Nm config 42.Op Fl gpn 43.Ar SYSTEM_NAME 44.Sh DESCRIPTION 45.Pp 46This is the old version of the 47.Nm config 48program. 49It understands the old autoconfiguration scheme 50used on the HP300, i386, DECstation, and derivative platforms. 51The new version of config is used with the 52SPARC platform. 53Only the version of 54.Nm config 55applicable to the architecture that you are running 56will be installed on your machine. 57.Pp 58.Nm Config 59builds a set of system configuration files from the file 60.Ar SYSTEM_NAME 61which describes 62the system to configure. 63A second file 64tells 65.Nm config 66what files are needed to generate a system and 67can be augmented by configuration specific set of files 68that give alternate files for a specific machine. 69(see the 70.Sx FILES 71section below) 72.Pp 73Available options and operands: 74.Pp 75.Bl -tag -width SYSTEM_NAME 76.It Fl g 77If the 78.Fl g 79option is supplied, 80.Nm config 81will configure a system for debugging. 82.It Fl p 83If the 84.Fl p 85option is supplied, 86.Nm config 87will configure a system for profiling; for example, 88.Xr kgmon 8 89and 90.Xr gprof 1 . 91If two or more 92.Fl p 93options are supplied, 94.Nm config 95will configure a system for high resolution profiling. 96.It Fl n 97If the 98.Fl n 99flag is specified, 100.Nm config 101will not remove the old compile directory (see below). 102.It Ar SYSTEM_NAME 103specifies the name of the system configuration file 104containing device specifications, configuration options 105and other system parameters for one system configuration. 106.El 107.Pp 108.Nm Config 109should be run from the 110.Pa conf 111subdirectory of the system source (usually 112.Pa /sys/ARCH/conf ) . 113.Nm Config 114will create the directory 115.Pa ../../compile/SYSTEM_NAME 116as necessary and place all output files there. 117If the directory already exists, it will be removed 118first unless the 119.Pa -n 120flag was specified or the environment variable 121.Nm NO_CONFIG_CLOBBER 122is set. 123The output of 124.Nm config 125consists of a number of files; for the 126.Tn i386 , 127they are: 128.Pa ioconf.c , 129a description 130of what I/O devices are attached to the system; 131.Pa vector.h , 132definitions of 133macros related to counting interrupts; 134.Pa Makefile , 135used by 136.Xr make 1 137in building the system; 138header files, 139definitions of 140the number of various devices that will be compiled into the system; 141swap configuration files, 142definitions for 143the disk areas to be used for swapping, the root file system, 144argument processing, and system dumps. 145.Pp 146After running 147.Nm config , 148it is necessary to run 149.Dq Li make depend 150in the directory where the new makefile 151was created. 152.Nm Config 153prints a reminder of this when it completes. 154.Pp 155If any other error messages are produced by 156.Nm config , 157the problems in the configuration file should be corrected and 158.Nm config 159should be run again. 160Attempts to compile a system that had configuration errors 161are likely to fail. 162.Sh FILES 163.Bl -tag -width /sys/i386/conf/Makefile.i386 -compact 164.It Pa /sys/conf/files 165list of common files system is built from 166.It Pa /sys/i386/conf/Makefile.i386 167generic makefile for the 168.Tn i386 169.It Pa /sys/i386/conf/files.i386 170list of 171.Tn i386 172specific files 173.It Pa /sys/i386/conf/devices.i386 174name to major device mapping file for the 175.Tn i386 176.It Pa /sys/i386/conf/files. Ns Em ERNIE 177list of files specific to 178.Em ERNIE 179system 180.El 181.Sh SEE ALSO 182The SYNOPSIS portion of each device in section 4. 183.Rs 184.%T "Building 4.3 BSD UNIX System with Config" 185.Re 186.Sh BUGS 187The line numbers reported in error messages are usually off by one. 188.Sh HISTORY 189The 190.Nm 191command appeared in 192.Bx 4.1 . 193