1786aa69aSBen Smithurst.\" Copyright (c) 2000 2786aa69aSBen Smithurst.\" Mike W. Meyer 3786aa69aSBen Smithurst.\" 4786aa69aSBen Smithurst.\" Redistribution and use in source and binary forms, with or without 5786aa69aSBen Smithurst.\" modification, are permitted provided that the following conditions 6786aa69aSBen Smithurst.\" are met: 7786aa69aSBen Smithurst.\" 1. Redistributions of source code must retain the above copyright 8786aa69aSBen Smithurst.\" notice, this list of conditions and the following disclaimer. 9786aa69aSBen Smithurst.\" 2. Redistributions in binary form must reproduce the above copyright 10786aa69aSBen Smithurst.\" notice, this list of conditions and the following disclaimer in the 11786aa69aSBen Smithurst.\" documentation and/or other materials provided with the distribution. 12786aa69aSBen Smithurst.\" 13786aa69aSBen Smithurst.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND 14786aa69aSBen Smithurst.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15786aa69aSBen Smithurst.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16786aa69aSBen Smithurst.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE 17786aa69aSBen Smithurst.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18786aa69aSBen Smithurst.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19786aa69aSBen Smithurst.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20786aa69aSBen Smithurst.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21786aa69aSBen Smithurst.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22786aa69aSBen Smithurst.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23786aa69aSBen Smithurst.\" SUCH DAMAGE. 24786aa69aSBen Smithurst.\" 25786aa69aSBen Smithurst.\" $FreeBSD$ 26786aa69aSBen Smithurst.\" 27c8ef0ed5SRuslan Ermilov.Dd August 3, 2005 28786aa69aSBen Smithurst.Dt BUILD 7 293d45e180SRuslan Ermilov.Os 30786aa69aSBen Smithurst.Sh NAME 31786aa69aSBen Smithurst.Nm build 32eb083802SRuslan Ermilov.Nd information on how to build the system 33786aa69aSBen Smithurst.Sh DESCRIPTION 34786aa69aSBen SmithurstThe source for the 35d003b779SRuslan Ermilov.Fx 36786aa69aSBen Smithurstsystem and applications are contained in three different directories, 37786aa69aSBen Smithurstnormally 38786aa69aSBen Smithurst.Pa /usr/src , 39786aa69aSBen Smithurst.Pa /usr/doc , 40786aa69aSBen Smithurstand 41786aa69aSBen Smithurst.Pa /usr/ports . 42786aa69aSBen Smithurst.Pa /usr/src 43786aa69aSBen Smithurstcontains the 44786aa69aSBen Smithurst.Dq "base system" 45786aa69aSBen Smithurstsources, which is loosely defined as the things required to rebuild 46786aa69aSBen Smithurstthe system to a useful state. 47786aa69aSBen Smithurst.Pa /usr/doc 48786aa69aSBen Smithurstcontains the source for the system documentation, excluding the manual 49786aa69aSBen Smithurstpages. 50786aa69aSBen Smithurst.Pa /usr/ports 51786aa69aSBen Smithurstis a tree that provides a consistent interface for building and 52786aa69aSBen Smithurstinstalling third party applications. 53786aa69aSBen Smithurst.Pp 54786aa69aSBen SmithurstThe 55786aa69aSBen Smithurst.Xr make 1 56786aa69aSBen Smithurstcommand is used in each of these directories to build and install the 571caae057SRuslan Ermilovthings in that directory. 581caae057SRuslan ErmilovIssuing the 591caae057SRuslan Ermilov.Xr make 1 601caae057SRuslan Ermilovcommand in any directory or 61786aa69aSBen Smithurstsubdirectory of those directories has the same effect as issuing the 621caae057SRuslan Ermilovsame command in all subdirectories of that directory. 631caae057SRuslan ErmilovWith no target specified, the things in that directory are just built. 641caae057SRuslan ErmilovThe following 65786aa69aSBen Smithurstlist provides the names and actions for other targets: 661caae057SRuslan Ermilov.Bl -tag -width indent-two 671caae057SRuslan Ermilov.It Cm clean 68786aa69aSBen SmithurstRemoves any files created during the build process. 691caae057SRuslan Ermilov.It Cm install 70786aa69aSBen SmithurstInstalls the results of the build for this directory. 711caae057SRuslan Ermilov.It Cm update 72786aa69aSBen SmithurstGets updated sources as configured in 73786aa69aSBen Smithurst.Pa /etc/make.conf . 74786aa69aSBen Smithurst.El 75786aa69aSBen Smithurst.Pp 76786aa69aSBen SmithurstThe other 77786aa69aSBen Smithurst.Pa /usr/src 78786aa69aSBen Smithurstmake targets are: 791caae057SRuslan Ermilov.Bl -tag -width indent-two 801caae057SRuslan Ermilov.It Cm buildworld 81786aa69aSBen SmithurstRebuild everything but the kernel, configure files in 82786aa69aSBen Smithurst.Pa /etc , 83786aa69aSBen Smithurstand release. 841caae057SRuslan Ermilov.It Cm installworld 85786aa69aSBen SmithurstInstall everything built by 861caae057SRuslan Ermilov.Cm buildworld . 87722d16b7SDavid E. O'Brien.It Cm kernel-toolchain 88722d16b7SDavid E. O'BrienRebuild the tools needed for kernel compilation. 89722d16b7SDavid E. O'BrienUse this if you did do a buildworld first. 901caae057SRuslan Ermilov.It Cm buildkernel 911caae057SRuslan ErmilovRebuild the kernel and the kernel modules. 921caae057SRuslan Ermilov.It Cm installkernel 931caae057SRuslan ErmilovInstall the kernel and the kernel modules. 9461001d75STom Rhodes.It Cm reinstallkernel . 951caae057SRuslan ErmilovReinstall the kernel and the kernel modules. 96389e98a7STom Rhodes.It Cm kernel 97389e98a7STom RhodesEquivalent to 98389e98a7STom Rhodes.Cm buildkernel 99389e98a7STom Rhodesfollowed by 100389e98a7STom Rhodes.Cm installkernel 101e2a36081SAlexander Leidinger.It Cm delete-old 102e2a36081SAlexander LeidingerDelete obsolete base system files and directories interactively. 103e2a36081SAlexander LeidingerWhen -DBATCH_DELETE_OLD_FILES is specified at the command line, 104af3e19a6SAlexander Leidingerthe delete operation will be non-interactive. 105c8ef0ed5SRuslan ErmilovThe variables 106c8ef0ed5SRuslan Ermilov.Va DESTDIR , TARGET_ARCH 107c8ef0ed5SRuslan Ermilovand 108c8ef0ed5SRuslan Ermilov.Va TARGET 109c8ef0ed5SRuslan Ermilovshould be set as with 110c8ef0ed5SRuslan Ermilov.Dq Li "make installworld" . 111e2a36081SAlexander Leidinger.It Cm delete-old-libs 112e2a36081SAlexander LeidingerDelete obsolete base system libraries interactively. 113e2a36081SAlexander LeidingerThis should only be used if no 3rd party software uses the libraries anymore. 114e2a36081SAlexander LeidingerWhen -DBATCH_DELETE_OLD_FILES is specified at the command line, 115af3e19a6SAlexander Leidingerthe delete operation will be non-interactive. 116c8ef0ed5SRuslan ErmilovThe variables 117c8ef0ed5SRuslan Ermilov.Va DESTDIR , TARGET_ARCH 118c8ef0ed5SRuslan Ermilovand 119c8ef0ed5SRuslan Ermilov.Va TARGET 120c8ef0ed5SRuslan Ermilovshould be set as with 121c8ef0ed5SRuslan Ermilov.Dq Li "make installworld" . 122786aa69aSBen Smithurst.El 123786aa69aSBen Smithurst.Pp 124786aa69aSBen SmithurstFor more information about the ports build process, see 125786aa69aSBen Smithurst.Xr ports 7 . 126b82e53e2SMurray Stokely.Sh ENVIRONMENT 1276f9ac6feSMurray Stokely.Bl -tag -width ".Va TARGET_ARCH" 1286f9ac6feSMurray Stokely.It Va TARGET_ARCH 129b3a43ea3SMurray StokelyThe target machine processor architecture. 130365a17c0SMurray StokelyThis is analogous to the 1311caae057SRuslan Ermilov.Dq Nm uname Fl p 132b3a43ea3SMurray Stokelyoutput. 133b82e53e2SMurray StokelySet this to cross-build for a different architecture. 1346f9ac6feSMurray Stokely.It Va TARGET 135b3a43ea3SMurray StokelyThe target hardware platform. 136365a17c0SMurray StokelyThis is analogous to the 1371caae057SRuslan Ermilov.Dq Nm uname Fl m 138b3a43ea3SMurray Stokelyoutput. 139b3a43ea3SMurray StokelyThis is necessary to cross-build some target architectures. 140b3a43ea3SMurray StokelyFor example, cross-building for PC98 machines requires 1411caae057SRuslan Ermilov.Va TARGET_ARCH Ns = Ns Li i386 142b3a43ea3SMurray Stokelyand 1431caae057SRuslan Ermilov.Va TARGET Ns = Ns Li pc98 . 1446f9ac6feSMurray Stokely.It Va NO_WERROR 145b82e53e2SMurray StokelyIf defined, warnings will not cause the build to halt, even if the 146b82e53e2SMurray Stokelymakefile says otherwise. 1476f9ac6feSMurray Stokely.It Va DESTDIR 148b3a43ea3SMurray StokelyThe directory hierarchy where the resulting binaries will be 149b3a43ea3SMurray Stokelyinstalled. 150b82e53e2SMurray Stokely.El 151786aa69aSBen Smithurst.Sh FILES 1520c0eb9beSRuslan Ermilov.Bl -tag -width ".Pa /usr/share/examples/etc/make.conf" -compact 153786aa69aSBen Smithurst.It Pa /etc/make.conf 154786aa69aSBen Smithurst.It Pa /usr/doc/Makefile 155786aa69aSBen Smithurst.It Pa /usr/doc/share/mk/doc.project.mk 156786aa69aSBen Smithurst.It Pa /usr/ports/Mk/bsd.port.mk 157786aa69aSBen Smithurst.It Pa /usr/ports/Mk/bsd.sites.mk 1581caae057SRuslan Ermilov.It Pa /usr/share/examples/etc/make.conf 1590c0eb9beSRuslan Ermilov.It Pa /usr/src/Makefile 1600c0eb9beSRuslan Ermilov.It Pa /usr/src/Makefile.inc1 1613136363fSRuslan Ermilov.El 1623faf5fc9SBen Smithurst.Sh EXAMPLES 163be6a4760SRuslan ErmilovFor an 1643faf5fc9SBen Smithurst.Dq approved 165be6a4760SRuslan Ermilovmethod of updating your system from the latest sources, 166be6a4760SRuslan Ermilovplease see the 167be6a4760SRuslan Ermilov.Sx COMMON ITEMS 168be6a4760SRuslan Ermilovsection in 169be6a4760SRuslan Ermilov.Pa src/UPDATING . 170b82e53e2SMurray Stokely.Pp 171b82e53e2SMurray StokelyThe following sequence of commands can be used to cross-build the 172b82e53e2SMurray Stokelysystem for the Alpha architecture on an i386 host: 173b82e53e2SMurray Stokely.Bd -literal -offset indent 174b82e53e2SMurray Stokelycd /usr/src 175b3a43ea3SMurray Stokelymake TARGET_ARCH=alpha buildworld 176b3a43ea3SMurray Stokelymake TARGET_ARCH=alpha DESTDIR=/clients/axp installworld 177b82e53e2SMurray Stokely.Ed 178786aa69aSBen Smithurst.Sh SEE ALSO 1797c20a493SBen Smithurst.Xr cc 1 , 180786aa69aSBen Smithurst.Xr install 1 , 181786aa69aSBen Smithurst.Xr make 1 , 182786aa69aSBen Smithurst.Xr make.conf 5 , 183a81996b6SBen Smithurst.Xr ports 7 , 184a54bda91SMurray Stokely.Xr release 7 , 18561001d75STom Rhodes.Xr config 8 , 18647f77d8cSBen Smithurst.Xr mergemaster 8 , 187a81996b6SBen Smithurst.Xr reboot 8 , 188a81996b6SBen Smithurst.Xr shutdown 8 189786aa69aSBen Smithurst.Sh AUTHORS 190786aa69aSBen Smithurst.An Mike W. Meyer Aq mwm@mired.org . 191