Note: You are viewing an old version of this page. View the current version.

Differences between version 2 and previous revision of KnowledgeBase/FreeBSD/MakeRelease.

Other diffs: Previous Major Revision, Previous Author

Newer page: version 2 Last edited on Saturday, 11 June 2011 21:14:05 by CyberLeo Revert
Older page: version 1 Last edited on Saturday, 11 June 2011 20:40:02 by CyberLeo Revert
@@ -3,8 +3,64 @@
 cd /usr/src 
 make buildworld 
 </code> 
  
+!! Build options  
+  
+BUILDNAME:  
+ The name of the release (usually '<release>-<arch>', i.e. '8.2-RELEASE-amd64'; if undefined, defaults to '<base>-<date>-SNAP', i.e. '8.2-20110611-SNAP')  
+CHROOTDIR:  
+ Directory in which the chroot will be seeded and the release will be built (will be deleted before use)  
+WORLD_FLAGS:  
+ Flags to pass to make buildworld (-j8)  
+KERNEL_FLAGS:  
+ Flags to pass to make buildkernel (-j8)  
+KERNELS_BASE:  
+ List of kernel configs to build  
+KERNELS:  
+ I'm not sure.  
+NODOC:  
+ Do not build documentation  
+NOPORTS:  
+ Do not build ports for the release process or as packages for the release ISOs  
+RELEASENOUPDATE:  
+ Do not update the src tree during make rerelease  
+  
+!!Location of sources:  
+  
+!Building from CVS:  
+CVSROOT:  
+ Location of the CVS tree from which to check out the current sources  
+RELEASETAG:  
+ CVS tag to check out  
+CVSARGS:  
+ Arguments to pass to the CVS command  
+CVSCMDARGS:  
+ Arguments to pass to the CVS subcommand invocation  
+CVSPREFIX:  
+ Prefix the CVS command with another command  
+  
+!Building from SVN:  
+SVNROOT:  
+ Location of the SVN tree from which to check out the current sources  
+SVNBRANCH:  
+ SVN branch to check out  
+SVNARGS:  
+ Arguments to pass to the SVN command  
+SVNCMDARGS:  
+ Arguments to pass to the SVN subcommand invocation  
+SVNPREFIX:  
+ Prefix the SVN command with another command  
+  
+!Building from local src tree:  
+EXTSRCDIR:  
+ To test a release with a source tree containing patches and other work. This tree will get copied instead of getting the src/ tree from a CVS checkout. For 'rerelease', this will NOT be copied; cvs update will be used instead  
+EXTPORTSDIR:  
+ To use a checked-out ports collection directory instead of checking out from a local CVS repository  
+EXTDOCDIR:  
+ To use a checked-out doc/ directory instead of checking out from a local CVS repository  
+  
+----  
 KERNELS_BASE: 
  Lists the configs for all the kernels to build for this release 
 KERNELS: 
  Dunno yet 

version 2

The release target uses the results of make buildworld to seed a chroot for release building.

cd /usr/src
make buildworld

Build options

BUILDNAME
The name of the release (usually '<release>-<arch>', i.e. '8.2-RELEASE-amd64'; if undefined, defaults to '<base>-<date>-SNAP', i.e. '8.2-20110611-SNAP')
CHROOTDIR
Directory in which the chroot will be seeded and the release will be built (will be deleted before use)
WORLD_FLAGS
Flags to pass to make buildworld (-j8)
KERNEL_FLAGS
Flags to pass to make buildkernel (-j8)
KERNELS_BASE
List of kernel configs to build
KERNELS
I'm not sure.
NODOC
Do not build documentation
NOPORTS
Do not build ports for the release process or as packages for the release ISOs
RELEASENOUPDATE
Do not update the src tree during make rerelease

Location of sources:

Building from CVS:

CVSROOT
Location of the CVS tree from which to check out the current sources
RELEASETAG
CVS tag to check out
CVSARGS
Arguments to pass to the CVS command
CVSCMDARGS
Arguments to pass to the CVS subcommand invocation
CVSPREFIX
Prefix the CVS command with another command

Building from SVN:

SVNROOT
Location of the SVN tree from which to check out the current sources
SVNBRANCH
SVN branch to check out
SVNARGS
Arguments to pass to the SVN command
SVNCMDARGS
Arguments to pass to the SVN subcommand invocation
SVNPREFIX
Prefix the SVN command with another command

Building from local src tree:

EXTSRCDIR
To test a release with a source tree containing patches and other work. This tree will get copied instead of getting the src/ tree from a CVS checkout. For 'rerelease', this will NOT be copied; cvs update will be used instead
EXTPORTSDIR
To use a checked-out ports collection directory instead of checking out from a local CVS repository
EXTDOCDIR
To use a checked-out doc/ directory instead of checking out from a local CVS repository

KERNELS_BASE
Lists the configs for all the kernels to build for this release
KERNELS
Dunno yet
CHROOTDIR
Directory in which the chroot will be seeded and the release will be built (will be deleted)
BUILDNAME
Name of the build (used for naming isos and probably tweaking sysinstall defines)
CVSROOT
Location of the CVS tree to check out for sources
RELEASETAG
CVS tag to check out for sources
CD_PACKAGE_TREE
A tree of packages to include in the install CD images
KERNEL_FLAGS
make flags to pass in during chrooted buildkernel
WORLD_FLAGS
make flags to pass in during chrooted buildworld
LOCAL_PATCHES
Patch files to apply to the freshly checked out source tree before building
PATCH_FLAGS
Flags to pass to the patch(1) command