Date: Tue, 5 Mar 2013 00:52:14 +0000 (UTC) From: Colin Percival <cperciva@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r247826 - in user/cperciva: freebsd-update-build freebsd-update-build/patches freebsd-update-build/patches/5.5-RELEASE freebsd-update-build/patches/6.0-RELEASE freebsd-update-build/patc... Message-ID: <201303050052.r250qEkk060105@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: cperciva Date: Tue Mar 5 00:52:14 2013 New Revision: 247826 URL: http://svnweb.freebsd.org/changeset/base/247826 Log: Add FreeBSD Update build and mirroring code (formerly in the now-defunct CVS projects repository). Added: user/cperciva/freebsd-update-build/ user/cperciva/freebsd-update-build/README user/cperciva/freebsd-update-build/USAGE user/cperciva/freebsd-update-build/build-upgrade-patches.sh (contents, props changed) user/cperciva/freebsd-update-build/patches/ user/cperciva/freebsd-update-build/patches/5.5-RELEASE/ user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-mail0.nr user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-ms.diffs user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-newvers.sh (contents, props changed) user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-pxin0.n user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-vi.ref user/cperciva/freebsd-update-build/patches/6.0-RELEASE/ user/cperciva/freebsd-update-build/patches/6.0-RELEASE/0-cm.4 (contents, props changed) user/cperciva/freebsd-update-build/patches/6.1-RELEASE/ user/cperciva/freebsd-update-build/patches/6.2-RELEASE/ user/cperciva/freebsd-update-build/patches/6.3-RELEASE/ user/cperciva/freebsd-update-build/patches/6.4-RELEASE/ user/cperciva/freebsd-update-build/patches/7.0-RELEASE/ user/cperciva/freebsd-update-build/patches/7.1-RELEASE/ user/cperciva/freebsd-update-build/patches/7.2-RELEASE/ user/cperciva/freebsd-update-build/patches/7.3-RELEASE/ user/cperciva/freebsd-update-build/patches/7.4-RELEASE/ user/cperciva/freebsd-update-build/patches/8.0-RELEASE/ user/cperciva/freebsd-update-build/patches/8.1-RELEASE/ user/cperciva/freebsd-update-build/patches/8.2-RELEASE/ user/cperciva/freebsd-update-build/patches/8.3-RELEASE/ user/cperciva/freebsd-update-build/patches/9.0-RELEASE/ user/cperciva/freebsd-update-build/patches/9.0-RELEASE/0-clang.patch user/cperciva/freebsd-update-build/patches/9.1-RELEASE/ user/cperciva/freebsd-update-build/scripts/ user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/ user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/ user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/ user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/ user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/ user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/ user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/ user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/ user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/ user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/ user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/ user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/ user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/build.subr user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/ user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/build.subr user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/ user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/build.subr user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/ user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/build.subr user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/ user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/build.subr user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/9.1-RELEASE/ user/cperciva/freebsd-update-build/scripts/9.1-RELEASE/amd64/ user/cperciva/freebsd-update-build/scripts/9.1-RELEASE/amd64/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/9.1-RELEASE/build.subr user/cperciva/freebsd-update-build/scripts/9.1-RELEASE/i386/ user/cperciva/freebsd-update-build/scripts/9.1-RELEASE/i386/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/approve.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/build.conf (contents, props changed) user/cperciva/freebsd-update-build/scripts/build.subr user/cperciva/freebsd-update-build/scripts/diff.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/encryptkey.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/init.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/make.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/mountkey.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/multi.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/restage.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/umountkey.sh (contents, props changed) user/cperciva/freebsd-update-build/scripts/upload.sh (contents, props changed) user/cperciva/freebsd-update-build/src/ user/cperciva/freebsd-update-build/src/Makefile (contents, props changed) user/cperciva/freebsd-update-build/src/findstamps.c (contents, props changed) user/cperciva/freebsd-update-build/src/unstamp.c (contents, props changed) user/cperciva/freebsd-update-build/tools/ user/cperciva/freebsd-update-build/tools/build-upgrade-patches.sh (contents, props changed) user/cperciva/freebsd-update-mirror/ user/cperciva/freebsd-update-mirror/umirror-init.sh (contents, props changed) user/cperciva/freebsd-update-mirror/umirror-package.sh (contents, props changed) user/cperciva/freebsd-update-mirror/umirror-release.sh (contents, props changed) user/cperciva/freebsd-update-mirror/umirror.sh (contents, props changed) Added: user/cperciva/freebsd-update-build/README ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/README Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,39 @@ +$FreeBSD$ + +This directory contains FreeBSD Update build code. + +File Description +---- ----------- +scripts/build.subr The routines which do all the work. + +scripts/build.conf Configuration settings. + +scripts/*.sh User-accessible scripts. + +scripts/X.Y-Z/bar/build.conf Configuration for FreeBSD/bar X.Y-Z + +scripts/X.Y-Z/build.subr and These files, if present, can override +scripts/X.Y-Z/bar/build.subr the routines defined in scripts/build.subr + in order to provide special treatment for + a particular release or platform. + +src/findstamp.c Utility for comparing two binaries which + were built from the same source code and + printing out the locations where they + differ due to timestamps. + +src/unstamp.c Utility for erasing timestamps found by + findstamp.c. + +patches/X.Y-Z/0-* Patches to FreeBSD X.Y-Z which we pretend + were part of the release. In FreeBSD 5.5 + and FreeBSD 6.0 some of these are necessary + in order to get rid of some problematic + timestamps. + +patches/X.Y-Z/W-* Patches to FreeBSD X.Y-Z. These are applied + in order of increasing W (assuming it is an + integer), so a naming convention of setting + W equal to the FreeBSD patch level (e.g., 9 + for FreeBSD 6.0-RELEASE-p9) is strongly + recommended. Added: user/cperciva/freebsd-update-build/USAGE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/USAGE Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,86 @@ +$FreeBSD$ + +How to use the FreeBSD Update build code +======================================== + +0. Extract the files in this directory and the src, scripts, and +patches subdirectories somewhere; /usr/freebsd-update-server/ is a +good option. + +1. Edit scripts/build.conf as appropriate. + +2. Run `scripts/make.sh'. This will build some binaries, create some +directories, and generate an RSA signing key. You will be prompted to +enter a passphrase with which to encrypt the signing key. + +3. Run `scripts/init.sh ${ARCHITECTURE} ${RELEASE}' for each pair +(architecture, release) for which you want to be able to build updates. +Note that as of 6.1-RELEASE, cross-building releases doesn't work (some +files don't cross-build correctly); but once those problems are fixed +it will be possible to cross build updates. + +4. Read the output of each `init.sh' run, and check that everything +looks right. Problem signs to watch out for include: + * Files which are listed as "built but not released". + * Files which are listed as "released but not build". + * Files listed are "differ by more than contents" (this would include +files which have incorrect permissions or file flags). + * A very long list of files listed as "differ between release and build". + * A list of build stamps which includes any non-text characters. + +5. Run `scripts/mountkey.sh' to prepare the signing key for use. + +6. Run `scripts/approve.sh ${ARCHITECTURE} ${RELEASE}' for each +architecture / release pair. This signs the build, prepares it for +uploading, and "commits" various internal bookkeeping changes (e.g., +the list of locations of build stamps) in order to prepare for the +next build. + +7. Run `scripts/umountkey.sh' to remove the unencrypted signing key +from memory. + +8. Run `scripts/upload.sh ${ARCHITECTURE} ${RELEASE}' to upload the +files to your server. + +9. For each security / errata update, copy the patch distributed by the +security team into the appropriate `patches/${RELEASE}' directory(s), +and run `scripts/diff.sh ${ARCHITECTURE} ${RELEASE} ${PATCHNUM}', where +${PATCHNUM} is the patch number (e.g., 9 for 6.0-RELEASE-p9). + +10. Assuming the output from `diff.sh' looks ok, repeat steps 5-8 to +sign and upload the binary updates built. + +Tips +---- + +* If you want to allow two different users to sign updates, have the +person who ran `make.sh' run `mountkey.sh' to mount the key, then have +the other(s) run `encryptkey.sh' to save a copy of the key encrypted +with their own passphrase. (Obviously, everybody involved must use +su or sudo to become root in order to do this.) + +* If you want to distribute and update a customized version of FreeBSD, +there are two options: + + 1. Building a custom release. If you have a custom release and the + source code in your custom-build ISO matches the binaries you are + distributing, everything will Just Work once you edit the appropriate + build.conf files to reflect the location and SHA256 hash of the custom + release ISO. + + 2. Treating local customizations as a patch. Construct a patch file + via `cd /usr/src && cvs diff' (note that the patches MUST be relative + to /usr/src), and place it into the appropriate patches directory. + Run `diff.sh' specifying a patch number of zero; then install the + original FreeBSD release onto systems and use the FreeBSD Update + client to download "updates"; they will end up with your customized + release. + +* If something goes wrong in the `diff' run and you need to modify the +build by hand, BE VERY CAREFUL and modify the files in newworld/R/trees +and the build manifest newworld-index. Then run `restage.sh' before +running `approve.sh'. + +* If you're building updates for multiple releases, the `multi.sh' script +can be very helpful. It will run the same operation (e.g., "diff") on a +number of architectures and releases, and log the output of each. Added: user/cperciva/freebsd-update-build/build-upgrade-patches.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/build-upgrade-patches.sh Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,52 @@ +#!/bin/sh + +if [ $# -lt 3 ]; then + echo "usage: $0 ARCH TARGETREL OLDRELS" + exit 1 +fi + +BASEDIR=/usr/freebsd-update-server +ARCH=$1 +TARGETREL=$2 +OLDRELS=$3 + +WWWDIR=${BASEDIR}/pub + +mkdir -p ${WWWDIR}/to-${TARGETREL}/${ARCH}/bp/ +for V in ${OLDRELS}; do + zcat ${WWWDIR}/${V}/${ARCH}/m/* | + cut -f 3,4,9 -d '|' | + fgrep '|f|' | + cut -f 1,3 -d '|' | + sort -u | + grep -E '\|[0-9a-f]{64}' | + lam -s "${V}|" - +done | + sort -k 2,2 -t '|' > hashtab + +zcat ${WWWDIR}/${TARGETREL}/${ARCH}/m/* | + cut -f 3,4,9 -d '|' | + fgrep '|f|' | + cut -f 1,3 -d '|' | + sort -u | + grep -E '\|[0-9a-f]{64}' | + lam -s "${TARGETREL}|" - | + sort -k 2,2 -t '|' | + join -1 2 -2 2 -t '|' hashtab - | + cut -f 2- -d '|' | + sort -k 2,2 -t '|' | + tr '|' ' ' | + while read OR OH NR NH; do + if [ -f ${WWWDIR}/to-${TARGETREL}/${ARCH}/bp/${OH}-${NH} ]; then + continue + fi + if [ ${OH} = ${NH} ]; then + continue + fi + gunzip < ${WWWDIR}/${OR}/${ARCH}/f/${OH}.gz > ${OH} + gunzip < ${WWWDIR}/${NR}/${ARCH}/f/${NH}.gz > ${NH} + bsdiff ${OH} ${NH} ${WWWDIR}/to-${TARGETREL}/${ARCH}/bp/${OH}-${NH} + rm ${OH} ${NH} + done + +rm hashtab Added: user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-mail0.nr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-mail0.nr Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,15 @@ +Index: usr.bin/mail/USD.doc/mail0.nr +=================================================================== +RCS file: /home/ncvs/src/usr.bin/mail/USD.doc/mail0.nr,v +retrieving revision 1.1 +retrieving revision 1.2 +diff -u -I__FBSDID -r1.1 -r1.2 +--- usr.bin/mail/USD.doc/mail0.nr 27 May 1994 12:32:07 -0000 1.1 ++++ usr.bin/mail/USD.doc/mail0.nr 17 Aug 2005 15:56:04 -0000 1.2 +@@ -66,6 +66,5 @@ + Version 5.5 + + +-\*(td + .)l + .pn 2 Added: user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-ms.diffs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-ms.diffs Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,13 @@ +Index: share/doc/usd/18.msdiffs/ms.diffs +=================================================================== +RCS file: /home/ncvs/src/share/doc/usd/18.msdiffs/ms.diffs,v +retrieving revision 1.2 +retrieving revision 1.3 +diff -u -I__FBSDID -r1.2 -r1.3 +--- share/doc/usd/18.msdiffs/ms.diffs 1 Jan 2003 18:48:47 -0000 1.2 ++++ share/doc/usd/18.msdiffs/ms.diffs 1 Aug 2005 12:10:14 -0000 1.3 +@@ -286,4 +286,3 @@ + The code for the \*ms package lives in /usr/lib/tmac/tmac.s, + and sourced files reside in the directory /usr/ucb/lib/ms. + .sp +-.tl '''\*(DY' Added: user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-newvers.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-newvers.sh Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,31 @@ +Index: sys/conf/newvers.sh +--- sys/conf/newvers.sh 23 May 2006 04:09:11 -0000 ++++ sys/conf/newvers.sh 27 Aug 2006 01:55:22 -0000 +@@ -33,6 +33,9 @@ + TYPE="FreeBSD" + REVISION="5.5" + BRANCH="RELEASE" ++if [ "X${BRANCH_OVERRIDE}" != "X" ]; then ++ BRANCH=${BRANCH_OVERRIDE} ++fi + RELEASE=5.5-RELEASE + VERSION="${TYPE} ${RELEASE}" + +@@ -85,10 +88,14 @@ + i=`${MAKE:-make} -V KERN_IDENT` + cat << EOF > vers.c + $COPYRIGHT +-char sccs[] = "@(#)${VERSION} #${v}: ${t}"; +-char version[] = "${VERSION} #${v}: ${t}\\n ${u}@${h}:${d}\\n"; ++#define SCCSSTR "@(#)${VERSION} #${v}: ${t}" ++#define VERSTR "${VERSION} #${v}: ${t}\\n ${u}@${h}:${d}\\n" ++#define RELSTR "${RELEASE}" ++ ++char sccs[sizeof(SCCSSTR) > 128 ? sizeof(SCCSSTR) : 128] = SCCSSTR; ++char version[sizeof(VERSTR) > 256 ? sizeof(VERSTR) : 256] = VERSTR; + char ostype[] = "${TYPE}"; +-char osrelease[] = "${RELEASE}"; ++char osrelease[sizeof(RELSTR) > 32 ? sizeof(RELSTR) : 32] = RELSTR; + int osreldate = ${RELDATE}; + char kern_ident[] = "${i}"; + EOF Added: user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-pxin0.n ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-pxin0.n Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,15 @@ +Index: share/doc/papers/px/pxin0.n +=================================================================== +RCS file: /home/ncvs/src/share/doc/papers/px/Attic/pxin0.n,v +retrieving revision 1.2 +diff -u -I__FBSDID -r1.2 pxin0.n +--- share/doc/papers/px/pxin0.n 30 Nov 2000 17:06:28 -0000 1.2 ++++ share/doc/papers/px/pxin0.n 16 Jul 2006 00:19:53 -0000 +@@ -32,6 +32,7 @@ + .\" @(#)pxin0.n 5.2 (Berkeley) 4/17/91 + .\" $FreeBSD: src/share/doc/papers/px/pxin0.n,v 1.2 2000/11/30 17:06:28 ru Exp $ + .\" ++.ND 17 Apr 1991 + .RP + .TL + Berkeley Pascal Added: user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-vi.ref ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/5.5-RELEASE/0-vi.ref Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,16 @@ +Index: contrib/nvi/docs/USD.doc/vi.ref/vi.ref +=================================================================== +RCS file: /home/ncvs/src/contrib/nvi/docs/USD.doc/vi.ref/vi.ref,v +retrieving revision 1.1 +retrieving revision 1.2 +diff -u -I__FBSDID -r1.1 -r1.2 +--- contrib/nvi/docs/USD.doc/vi.ref/vi.ref 1 Nov 1996 06:45:34 -0000 1.1 ++++ contrib/nvi/docs/USD.doc/vi.ref/vi.ref 17 Aug 2005 15:56:04 -0000 1.2 +@@ -27,7 +27,6 @@ + University of California, Berkeley + Berkeley, California 94720 + .sp 1 +-\*(td + .)l + .sp 3 + .(l C Added: user/cperciva/freebsd-update-build/patches/6.0-RELEASE/0-cm.4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/6.0-RELEASE/0-cm.4 Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,17 @@ +Index: share/man/man4/cm.4 +=================================================================== +RCS file: /home/ncvs/src/share/man/man4/cm.4,v +retrieving revision 1.6.2.1 +retrieving revision 1.6.2.2 +diff -u -I__FBSDID -r1.6.2.1 -r1.6.2.2 +--- share/man/man4/cm.4 24 Sep 2005 01:59:37 -0000 1.6.2.1 ++++ share/man/man4/cm.4 2 Feb 2006 07:50:00 -0000 1.6.2.2 +@@ -25,7 +25,7 @@ + .\" + .\" $FreeBSD$ + .\" +-.Dd July 16,2005 ++.Dd July 16, 2005 + .Dt CM 4 + .Os + .Sh NAME Added: user/cperciva/freebsd-update-build/patches/9.0-RELEASE/0-clang.patch ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/patches/9.0-RELEASE/0-clang.patch Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,11 @@ +Index: lib/clang/clang.build.mk +--- lib/clang/clang.build.mk 2011-10-20 05:42:19.000000000 -0700 ++++ lib/clang/clang.build.mk 2011-10-20 05:42:54.000000000 -0700 +@@ -6,6 +6,7 @@ + -I${LLVM_SRCS}/${SRCDIR} ${INCDIR:C/^/-I${LLVM_SRCS}\//} -I. \ + -I${LLVM_SRCS}/../../lib/clang/include \ + -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD \ ++ -frandom-seed=RepeatabilityConsideredGood \ + -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS #-DNDEBUG + + # Correct for gcc miscompilation when compiling on PPC with -O2 Added: user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,15 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=f71eedf18ab24d973c938b473ca127018eb87ab1d1b4c96a5d8d1e9cd8f261d3 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="" + +# EOL date +export EOL=1212303600 + Added: user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/5.5-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,13 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=40d41ec7b567e7952d0f85729f340d409911368808256dae123ff1b97155c1ae + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs \ + compat1x compat20 compat21 compat22 compat3x compat4x" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="" + +# EOL date +export EOL=1212303600 Added: user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,15 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=449b08c98acc73508219e2a19de0787334fd9237123346b2c7949c3009540170 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="" + +# EOL date +export EOL=1164960000 + Added: user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.0-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,13 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=0ad601dae704e941beb7d4617bf96b04055849a24835275c716f518eee7a12f1 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="" + +# EOL date +export EOL=1164960000 + Added: user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,15 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=99f596f65f7860f2f7d1be7b926faab7c3a3561d8659527127ca39760afb0e00 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="generic smp" + +# EOL date +export EOL=1212303600 + Added: user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.1-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,13 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=cbc6f9389c85f3130baff5270316ece18d5e324e82f8aa167c61ab49174dd4d1 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="generic smp" + +# EOL date +export EOL=1212303600 + Added: user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=60d2d13a23c0e6ecac5547c5e83c53c378c37ae40a04ef4f5f0964c79955cc6f + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="generic smp" + +# EOL date +export EOL=1212303600 Added: user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.2-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=2099715d561df721833322bc56a4fa8b02c2b77713a1e0bc17fc4b2dded20212 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="generic smp" + +# EOL date +export EOL=1212303600 Added: user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=6ee1c2f00f8a1bc9d38b04b058b0549df9904ded52ddd19bae9dad070a5868e3 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="generic smp" + +# EOL date +export EOL=1264982400 Added: user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.3-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=15081a56d184a18c7cc3a5c3cd0d7d5b7d9304c9cc1d5fc40d875b0fd3047721 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="generic smp" + +# EOL date +export EOL=1264982400 Added: user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=6e8f24e153d78518268129db62e5efd3cd7b75e428a3c22bddf89eb901efa79e + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="generic smp" + +# EOL date +export EOL=1291161600 Added: user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/6.4-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=c4f688013a27632e97caefc71296f59c9597abdb4e724385130d72dbd9abd218 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5 \ + lib libexec release rescue sbin secure share sys tools \ + ubin usbin" +export KERNELPARTS="generic smp" + +# EOL date +export EOL=1291161600 Added: user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=d3b206eb74df7559041dd9054de7352b9a67d4f350e75f433c7fb001bf4b5c6f + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl compat contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1241136000 Added: user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.0-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=7480c74dda9a78805ab0d647b23eb71cac43f4afce83ff65ad9f2019423583af + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl compat contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1241136000 Added: user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=4f7deebbd5e3211d144c6e630b808e918fcbb901ff4689b64087ed4c2d6e781d + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1296518400 Added: user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.1-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=58e588c26d06b84d8c3c01d8507b2ffe2e237b167f72604c82d34011dc850a46 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1296518400 Added: user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=1ea1f6f652d7c5f5eab7ef9f8edbed50cb664b08ed761850f95f48e86cc71ef5 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1277942400 Added: user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.2-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=bf4d00102215b07f5a4c8acac80b9d9bd9bf8bd93ac554fe09b21302f0b41380 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1277942400 Added: user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=7f5970e095774c0cdf802e9a15b4419d0166fa7641c2b65f1a1431429105b98b + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1333238400 Added: user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.3-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=e1623209b45df700e624ed37d8526b298fddc48af14e40fbe8a62c0b3801819b + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1333238400 Added: user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=c6d560a010808929570818c6e5947ff4e488085de690dd2d8489d393cf59ddd2 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1362096000 Added: user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/7.4-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=3a4437fbd10a516f365d169457f9413fe1e8cbc28792935edd83145bd4d20f9d + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1362096000 Added: user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=7d4583c20c651093b208170a7fd4ed5f38ee5af0cbe19fb742f67175a9fee10f + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1291161600 Added: user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/build.subr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/build.subr Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,6 @@ +# Add extra docs to ${WORKDIR}/$1 +addextradocs () { + log "Extracting extra docs" + + # 8.0 doesn't have any extra docs +} Added: user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.0-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=d7ef47a76a20a716c006a635b476ed3515830b8442ded2702ed015f0bde32bcf + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1291161600 Added: user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=2b87563d876cfe6095d1a7fef164d0eb0d63a6a889320b4bb91f138dc29e01e1 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1343779200 Added: user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/build.subr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/build.subr Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,6 @@ +# Add extra docs to ${WORKDIR}/$1 +addextradocs () { + log "Extracting extra docs" + + # 8.0 doesn't have any extra docs +} Added: user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.1-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=7b80c34ad0cb49ace8def6261561ab22ab9346c58b69e79a82c148682a62bdc1 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1343779200 Added: user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=009938b49e9b989277fe93aae474b054918acaca5f5919fbabdfcb0b04cd8c60 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1343779200 Added: user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/build.subr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/build.subr Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,6 @@ +# Add extra docs to ${WORKDIR}/$1 +addextradocs () { + log "Extracting extra docs" + + # 8.0 doesn't have any extra docs +} Added: user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.2-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,12 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=fbfc3950674b3845a6cf0b74bd175b9ba19475b97bdc8bef23b50344bc33866c + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1343779200 Added: user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +# SHA256 hash of RELEASE disc1.iso image. +export RELH=26d4870f3a310a95e488ed14dd8e36eb52e857878f2b238b3b91e65c101eee93 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info lib32 manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1398902400 Added: user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/build.subr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/build.subr Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,6 @@ +# Add extra docs to ${WORKDIR}/$1 +addextradocs () { + log "Extracting extra docs" + + # 8.0 doesn't have any extra docs +} Added: user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/i386/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/8.3-RELEASE/i386/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,13 @@ +# SHA256 hash of RELEASE disc1.iso image. +export RELH=a83919b5104d8ec4e905693a6bd6b90b88b1c30923029146d1dab62b62a038e9 + +# Components of the world, source, and kernels +export WORLDPARTS="base catpages dict doc games info manpages proflibs" +export SOURCEPARTS="base bin cddl contrib crypto etc games gnu \ + include krb5 lib libexec release rescue sbin secure \ + share sys tools ubin usbin" +export KERNELPARTS="generic" + +# EOL date +export EOL=1398902400 + Added: user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/amd64/build.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/amd64/build.conf Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,11 @@ +# SHA256 hash of dvd1.iso image. +export RELH=bcc69320cd2f227411d55967113abc8ffa5ede0a6526090ca3fb5ab776fead9d + +# Components of the world, source, and kernels +export WORLDPARTS="base doc games lib32" +export SOURCEPARTS="src" +export KERNELPARTS="kernel" + +# EOL date +# Mon 1 Apr 2013 00:00:00 UTC +export EOL=1364774400 Added: user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/build.subr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/freebsd-update-build/scripts/9.0-RELEASE/build.subr Tue Mar 5 00:52:14 2013 (r247826) @@ -0,0 +1,199 @@ +# Overrides to FreeBSD Update build subroutines for FreeBSD 9.0. + +# Download and verify a release ISO image. +fetchiso () { + log "Starting fetch" + + # Figure out where the disc1 ISO image is + RELNUM=${REL%-*} +# ISO=${FTP}/${TARGET}/ISO-IMAGES/${RELNUM}/${REL}-${TARGET}-disc1.iso + ISO=${FTP}/FreeBSD-${REL}-${TARGET}-disc1.iso + + # Fetch the ISO image. We consider the ISO image to be + # the One True Release and don't look at the files used + # for FTP installs. The FreeBSD 4.7-RELEASE ISO and FTP + # files were not identical, but this should never happen + # again. + fetch -o ${WORKDIR}/iso.img -rR ${ISO} 2>&1 + + log "Verifying dvd1 hash" + + # Check that the downloaded ISO has the correct hash. + if ! [ "`sha256 -q ${WORKDIR}/iso.img`" = "${RELH}" ]; then + echo "FreeBSD ${REL}-${TARGET}-dvd1.iso has incorrect hash." + rm ${WORKDIR}/iso.img + return 1 + fi +} + +# Extract the released trees and, if appropriate, construct a world (base +# plus source code) in which to perform builds. +extractiso () { + # Create and mount a md(4) attached to the ISO image. + ISOMD=`mdconfig -a -t vnode -f ${WORKDIR}/iso.img -n` + mkdir -p ${WORKDIR}/iso + mount -t cd9660 -o ro,nosuid /dev/md${ISOMD} ${WORKDIR}/iso + + # Extract the various components into different directories + log "Extracting components" + for C in ${WORLDPARTS}; do + mkdir -p ${WORKDIR}/release/R/trees/world/${C} + cat ${WORKDIR}/iso/usr/freebsd-dist/${C}.txz | + tar -xpzf - -C ${WORKDIR}/release/R/trees/world/${C} + done + for C in ${KERNELPARTS}; do + mkdir -p ${WORKDIR}/release/R/trees/kernel/${C} + cat ${WORKDIR}/iso/usr/freebsd-dist/${C}.txz | + tar -xpzf - -C ${WORKDIR}/release/R/trees/kernel/${C} + done + for C in ${SOURCEPARTS}; do + mkdir -p ${WORKDIR}/release/R/trees/src/${C} + cat ${WORKDIR}/iso/usr/freebsd-dist/${C}.txz | + tar -xpzf - -C ${WORKDIR}/release/R/trees/src/${C} + done + + # If the release ISO we're handling belongs to the platform + # we're running right now, create a world image for future use. + if [ ${TARGET} = ${HOSTPLATFORM} ]; then + log "Constructing world+src image" + + # Create directory for world + mkdir ${WORKDIR}/world/ + + # Extract world and source distributions + for C in ${WORLDPARTS}; do + cat ${WORKDIR}/iso/usr/freebsd-dist/${C}.txz | + tar -xpzf - -C ${WORKDIR}/world/ + done + for C in ${SOURCEPARTS}; do + cat ${WORKDIR}/iso/usr/freebsd-dist/${C}.txz | + tar -xpzf - -C ${WORKDIR}/world/ + done + + # build a single tarball of them. + tar -czf ${WORKDIR}/../world.tgz -C ${WORKDIR}/world . + + # clean up + nuke world + fi + + # Unmount and detach the ISO image md(4). + umount ${WORKDIR}/iso + rmdir ${WORKDIR}/iso + mdconfig -d -u ${ISOMD} +} + +# Perform a build in ${WORKDIR}/$1 with BRANCH_OVERRIDE set to $2 +buildworld () { + # We need a devfs inside the jail. Note that we are using a + # jail here in order to keep the environment as "clean" as + # possible, not for security reasons; we assume that the + # original source code plus patches we add personally will + # not do anything evil. + mount -t devfs devfs ${WORKDIR}/$1/dev + + # We need to be able to set file flags + sysctl security.jail.chflags_allowed=1 >/dev/null + + # Build stuff. + jail ${WORKDIR}/$1 ${BUILDHOSTNAME} 127.1.2.3 \ + /usr/bin/env -i PATH=${PATH} RELP=${RELP} \ + BRANCH_OVERRIDE=$2 JFLAG=${JFLAG} \ + TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ + /bin/sh -e <<-"EOF" 2>&1 >${WORKDIR}/$1-build.log + # Function for logging what we're doing + log () { + echo "`date` $1 for FreeBSD/${TARGET} ${RELP}" 1>&2 + } + + # Build the world + log "Building world" + cd /usr/src && + make buildworld ${JFLAG} 2>&1 + + # Build and kernel + log "Building kernel" + cd /usr/src && + make buildkernel ${JFLAG} 2>&1 + + # Build and install release images + log "Building release" + cd /usr/src/release && + make release 2>&1 && + make install DESTDIR=/R 2>&1 + EOF + + # Put all the components into the right places. + log "Moving components into staging area" + jail ${WORKDIR}/$1 ${BUILDHOSTNAME} 127.1.2.3 \ + /usr/bin/env -i PATH=${PATH} \ + WORLDPARTS="${WORLDPARTS}" \ + KERNELPARTS="${KERNELPARTS}" \ + SOURCEPARTS="${SOURCEPARTS}" \ + /bin/sh -e <<-"EOF" 2>&1 >>${WORKDIR}/$1-build.log + # Create area for uncompressed components + mkdir -p /R/trees *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201303050052.r250qEkk060105>