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 . 91.It Fl n 92If the 93.Fl n 94flag is specified, 95.Nm config 96will not remove the old compile directory (see below). 97.It Ar SYSTEM_NAME 98specifies the name of the system configuration file 99containing device specifications, configuration options 100and other system parameters for one system configuration. 101.El 102.Pp 103.Nm Config 104should be run from the 105.Pa conf 106subdirectory of the system source (usually 107.Pa /sys/ARCH/conf ) . 108.Nm Config 109will create the directory 110.Pa ../../compile/SYSTEM_NAME 111as necessary and place all output files there. 112If the directory already exists, it will be removed 113first unless the 114.Pa -n 115flag was specified or the environment variable 116.Nm NO_CONFIG_CLOBBER 117is set. 118The output of 119.Nm config 120consists of a number of files; for the 121.Tn i386 , 122they are: 123.Pa ioconf.c , 124a description 125of what I/O devices are attached to the system; 126.Pa vector.h , 127definitions of 128macros related to counting interrupts; 129.Pa Makefile , 130used by 131.Xr make 1 132in building the system; 133header files, 134definitions of 135the number of various devices that will be compiled into the system; 136swap configuration files, 137definitions for 138the disk areas to be used for swapping, the root file system, 139argument processing, and system dumps. 140.Pp 141After running 142.Nm config , 143it is necessary to run 144.Dq Li make depend 145in the directory where the new makefile 146was created. 147.Nm Config 148prints a reminder of this when it completes. 149.Pp 150If any other error messages are produced by 151.Nm config , 152the problems in the configuration file should be corrected and 153.Nm config 154should be run again. 155Attempts to compile a system that had configuration errors 156are likely to fail. 157.Sh FILES 158.Bl -tag -width /sys/i386/conf/Makefile.i386 -compact 159.It Pa /sys/conf/files 160list of common files system is built from 161.It Pa /sys/i386/conf/Makefile.i386 162generic makefile for the 163.Tn i386 164.It Pa /sys/i386/conf/files.i386 165list of 166.Tn i386 167specific files 168.It Pa /sys/i386/conf/devices.i386 169name to major device mapping file for the 170.Tn i386 171.It Pa /sys/i386/conf/files. Ns Em ERNIE 172list of files specific to 173.Em ERNIE 174system 175.El 176.Sh SEE ALSO 177The SYNOPSIS portion of each device in section 4. 178.Rs 179.%T "Building 4.3 BSD UNIX System with Config" 180.Re 181.Sh BUGS 182The line numbers reported in error messages are usually off by one. 183.Sh HISTORY 184The 185.Nm 186command appeared in 187.Bx 4.1 . 188