On Mon, Sep 24, 2007 at 01:34:34PM +0200, Erik Cederstrand wrote: > Hi! > > In an effort to run benchmarks on the latest CURRENT on a couple of slave > machines, I need to build the distribution sets necessary for an NFS install > as fast as possible (the slaves are installing over PXE), but still ending > up with something as close as possible to a normal default installation on > the slaves. > > Right now, I'm doing a very basic run to create the distribution sets (using > a default make.conf and a 6.2-STABLE build machine): > > # /cd /usr/src > # csup /etc/current-supfile > # make buildworld > # cd /release > # make release BUILDNAME=CURRENT-YYYYMMDDHHMMSS CVSROOT=/home/ncvs > CHROOTDIR=/home/chroot > > Using the above commands, a lot of stuff gets compiled unnecessarily, and > the process takes 5-6 hours on a 2GHz P4. I'd like to cut that to 2 hours > max. I tried to use some of the NO_* settings in make.conf, but it's not > clear to me what I can omit. Some things are needed later in make release > (e.g. NO_CXX) even though I don't need a C++ compiler on the slave systems. > I also looked a ccache, but I consider it somewhat dangerous, since I need > to have an absolutely correct, reproducible installation rather than a fast > build. > > If I ignore documentation distfiles (will this affect benchmarks in any > way?), AFAICT the only distribution sets I need are base, proflibs, kernels > and (maybe) lib32. Is there a way to get "make release" to do just that? I'm > open to other suggestions, of course.
To just create a working image you can just do: make buildworld make buildkernel make DESTDIR=/target/directory installworld make DESTDIR=/target/directory distribution make DESTDIR=/target/directory installkernel -- Brooks
pgppNtZdaLNX6.pgp
Description: PGP signature