Subject: Re: build.sh to prevent DESTDIR=/ by default ...
To: None <tech-toolchain@netbsd.org>
From: Luke Mewburn <lukem@netbsd.org>
List: tech-toolchain
Date: 12/12/2002 20:01:16
On Sun, Dec 08, 2002 at 05:52:51PM +0100, Martin Husemann wrote:
  | May I ask you another little helpful feature in build.sh (or the toplevel
  | makefile)?
  | 
  | It would be realy convenient if another build.sh option could take care of
  | shuffling the new build DESTDIR contents to /.

I've just committed support for this.

After a "make DESTDIR=/foo build", you can install the sets from
DESTDIR into / with:
	cd distrib/sets
	make INSTALLDIR=/ installsets

The default operation is to act as if the sets
	base comp games man misc text
(but *not* "etc") are extracted, which is effectively what "make build"
performs anyway.  You can change the sets to copy by setting
INSTALLSETS to a space separated list of sets you want to copy.

This even works for UNPRIVED builds.
(Don't forget to run the "make ... installsets" as root :-)


Once I'm happy that this is working fairly well, I'll add a build.sh option
or src/Makefile target to support this.


  | And it would be extremly cool if it would be possible to do this last step
  | optionaly on another machine: think the big cross compile machine and the
  | slow client accessing the same DESTDIR via NFS (but where DESTDIR is not the
  | NFS / of the client).

This should work.

If you're using UNPRIVED, $DESTDIR should be the same path on the client
and server, because at this time, the full path name is stored in the
${DESTDIR}/METALOG when UNPRIVED is used.  This restriction may be
lifted in the future.


Luke.