1.\" 2.\" Copyright (c) 2006 The DragonFly Project. 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.\" 8.\" 1. Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in 12.\" the documentation and/or other materials provided with the 13.\" distribution. 14.\" 3. Neither the name of The DragonFly Project nor the names of its 15.\" contributors may be used to endorse or promote products derived 16.\" from this software without specific, prior written permission. 17.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 21.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 22.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 23.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, 24.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 25.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 26.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 27.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 28.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29.\" SUCH DAMAGE. 30.\" 31.\" $FreeBSD: src/share/man/man7/release.7,v 1.3.2.6 2003/04/12 20:42:30 murray Exp $ 32.\" $DragonFly: src/share/man/man7/release.7,v 1.9 2007/08/20 02:02:02 swildner Exp $ 33.\" 34.Dd August 19, 2007 35.Dt RELEASE 7 36.Os 37.Sh NAME 38.Nm release 39.Nd "release building infrastructure" 40.Sh DESCRIPTION 41.Dx 42provides a complete build environment suitable for users to make 43full releases of the 44.Dx 45operating system. 46All of the tools necessary to build releases are available from the 47CVS repository in 48.Pa src/nrelease . 49A complete release (that is, a live CD) can actually be built with 50only a single command. 51This command is aptly named 52.Dq Li "make release" . 53.Pp 54This document does not cover source code management, quality 55assurance, or other aspects of the release engineering process. 56.Sh TARGETS 57The release Makefile 58.Pq Pa src/nrelease/Makefile 59defines a number of targets which are roughly modeled after the 60targets used for building the system. 61.Bl -tag -width ".Cm realquickrel" 62.It Cm release 63Builds a vanilla live CD. 64.It Cm quickrel 65Same as 66.Cm release 67but uses the 68.Cm quickworld 69target (alias 70.Cm quick ) . 71.It Cm realquickrel 72Same as 73.Cm release 74but uses the 75.Cm realquickworld 76target (alias 77.Cm realquick ) . 78.It Cm clean 79Removes the ISO root directory and object files. 80.It Cm realclean 81Same as 82.Cm clean 83but also removes external packages. 84.El 85.Pp 86The 87.Cm quickrel 88and 89.Cm realquickrel 90targets will only work if a full 91.Dq Li "make release" 92has been done before. 93For a description of the corresponding build targets, see 94.Xr build 7 . 95.Pp 96If the 97.Cm installer 98target is specified along with a 99.Cm release , 100.Cm quickrel , 101or 102.Cm realquickrel 103target, the 104.Bx 105Installer will be added to the resulting ISO image. 106.Pp 107During the process of rolling a release a check is performed to find 108out if a number of external packages to be put on the CD exist on 109your system. 110If they cannot be found, the release process will stop and give 111proper commands for downloading and setting up these packages. 112.Sh ENVIRONMENT 113.Bl -tag -width ".Va WITHOUT_SRCS" 114.It Va WITHOUT_SRCS 115If set, this variable will prevent kernel source code from being copied 116to 117.Pa /usr/src-sys.tar.bz2 118on the ISO image. 119.El 120.Sh FILES 121.Bl -tag -compact 122.It Pa /etc/make.conf 123.It Pa src/Makefile 124.It Pa src/Makefile.inc1 125.It Pa src/nrelease/Makefile 126.El 127.Sh EXAMPLES 128The following sequence of commands is used to build a standard 129.Dx 1.10 130installation CD image (assuming that a local CVS repository is 131available): 132.Bd -literal -offset indent 133cd /usr 134cvs co -rDragonFly_RELEASE_1_10 src 135cd src/nrelease 136make installer release 137.Ed 138.Pp 139After running these commands, the image will be available in the 140.Pa /usr/release 141directory. 142.Sh SEE ALSO 143.Xr cvs 1 , 144.Xr make 1 , 145.Xr make.conf 5 , 146.Xr build 7 147.Sh HISTORY 148.Pa src/nrelease 149was added in 150.Dx 1.0 151to implement the idea of a 152.Dq "live CD" . 153.Sh AUTHORS 154.An -nosplit 155The 156.Nm 157infrastructure was written by 158.An Matthew Dillon . 159This manual page was written by 160.An Sascha Wildner . 161.Sh BUGS 162There are more targets and variables in 163.Pa src/nrelease/Makefile 164that should be documented. 165