Subject: Re: another makefile mystery: COPTS
To: Simon Burge <simonb@NetBSD.ORG>
From: Todd Whitesel <toddpw@best.com>
List: tech-install
Date: 01/20/2000 02:16:33
> I'm curious - what does "make world" do that's different to "make snapshot"?

In the simple case: almost nothing.

Most of the extra intelligence is to give me tools for dealing with simple
errors, like:

  - If I didn't make the new kernel yet, it insists on doing that first
	(including the "come back when you've rebooted with the new kernel"
	message). I can circumvent this check, but rarely need to.

  - It does the make-build portion as discrete steps, so if something dumb
	stops the build (swap ran out because make bloated while building
	libc, for example) then I can continue without having to repeat
	nearly as much as if I ran the whole thing from the top. On slow
	machines this is vital; on fast machines it is still nice to have.

  - It runs checkflist and refuses to do the dist-sets if there is anything
	wrong. I've also got a couple tools to help fix up the file lists.

It could do the snapshot portion in discrete steps, but doesn't -- I
have a bunch of patches for etc/Makefile and friends that treat much
of the RELEASEDIR contents as real make output targets, and avoid
rebuilding stuff that has already been successfully deposited in
RELEASEDIR. So ``make snapshot INSTALL_DONE=1 UPDATE=1 ...'' does a
good job of avoiding useless redundant work when I have to rerun it,
say because one of the vnd filesystems filled up and halted everything.

It also remembers my usual environment variable settings. I use this on
9 arch's (and counting, hpcmips is on order). So less typing is Good.

Todd Whitesel
toddpw @ best.com