Date: Tue, 25 Aug 1998 10:43:27 -0700 From: Jon Simola <jon@abccom.bc.ca> To: Charles Quarri <randy@hackerz.org> Cc: "Jordan K. Hubbard" <jkh@time.cdrom.com>, "Dag-Erling Coidan Smørgrav" <dag-erli@ifi.uio.no>, Mike Holling <myke@ees.com>, freebsd-stable@FreeBSD.ORG Subject: Re: Making a local FreeBSD distribution? Message-ID: <35E2F7BF.CE2A21A6@abccom.bc.ca> References: <19980824184334.23594@hackerz.org> <2849.904004705@time.cdrom.com> <19980825114250.44922@hackerz.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Charles Quarri wrote: > I asked about this problem several weeks ago, and I never got an > answer. I am prefectly willing to concede that my procedures are > wrong for generating a release. I had been following the release > generation procedures as stated in the FAQ. I'm not an expert, but here's what worked for me, with the exception of a couple missing parts due to non-exportable cryptography stuff. I actually build off /u0 which is an empty 6gig drive, so /usr/src points to /u0/src. 1. Grab the CVS tree. My supfile (for cvsup) looks like: *default prefix=/u0/cvs *default base=/usr/local/cvsup *default host=cvsup.ca.freebsd.org *default release=cvs *default delete use-rel-suffix ## Main Source Tree cvs-all 2. Local /usr/src full of the sources you want to build a release with. I used the following supfile, but you could just use cvs to check them out of the local CVS tree you have. *default tag=RELENG_2_2_7_RELEASE *default prefix=/u0 *default base=/usr/local/cvsup *default host=cvsup.ca.freebsd.org *default release=cvs *default delete use-rel-suffix ## Main Source Tree src-all src-eBones src-secure # other stuff ports-all www doc-all distrib 3. I could never get a make release to work unless it was the same as the version running on the machine. My release of 2.2.7-Release was made on a machine running 2.2.7-Release. I couldn't get a 3.0-Current or 2.2.6-Release machine to make the 2.2.7-Release. # uname -r 2.2.7-RELEASE 4. Also couldn't get it to go unless there was a loaded /usr/obj dir. (Error was: install: crt0.o: No such file or directory) # cd /usr/src && make buildworld 5. Lots of free space. This solution used nearly a gigabyte, IIRC. 6. Make sure the include files are there. # cd /usr/src && make include 7. The CVSROOT environment variable should be set the same as the prefix in the CVS tree supfile. # export CVSROOT=/u0/cvs 8. Start the build # cd /usr/src/release # make release CHROOTDIR=/u0/227release BUILDNAME=2.2.7-RELEASE \ RELEASETAG=RELENG_2_2_7_RELEASE 9. The next hitch was Kerberos. Some time into the make release, cvs will check the entire source tree out of your local CVS tree. This includes the Makefile (I /think/) and the Kerberos skeleton tree. The skeleton tree contains only Makefiles. After the tree is checked out, but before it is actually compiled, you have to either delete the kerberosIV dir (the solution I used) or fill it with actual source files. If you don't, libroken will stop the make release with "Stop: Don't know how to make k_getpwuid.c" or similar. I didn't need Kerberos so I nuked it. (If the Makefile can't find the kerberos directory, it'll skip it) # cd /u0/227release/usr/src && rm -rf kerberosIV 10. Many hours later (~8 for my PPro180), you'll have a release in /u0/227release/R with an ftp-able distribution and 2 CD images. That release (at least in my case) won't have the DES or the Kerberos bits. But it is installable, you'll just have to get those bits elsewhere. And a couple days later, my pretty 2.2.7 CD arrived, which I hadn't been expecting, which is why I went through this in the first place. Questions? Comments? TTYL... Jon jon@abccom.bc.ca To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?35E2F7BF.CE2A21A6>