Subject: Re: misc/55: bootblocks 'make install' should create the target directory
To: None <conklin@kaleida.com>
From: Chris G. Demetriou <cgd@nobozo.CS.Berkeley.EDU>
List: netbsd-bugs
Date: 01/07/1994 14:34:30
> >> The 'make install' step copies the boot block images to the target
> >> directory /usr/mdec. If the directory does not exist, the operation
> >> fails.
> 
> Kim> Shouldn't it be made when going to src/etc and make-ing
> Kim> distrib-dirs ?  I guess this little directory is mostly
> Kim> overlooked.
> 
> Actually, I think that we should remove all the mkdirs/chowns/chmods
> from the distrib-dirs target, update the mtree datafiles, and use
> mtree to create them.

yes, and from the install targets!

> If we break the distribution-building process into these steps.
> 
> 	1. make directories with mtree
> 
> 	2. install binaries into ${DESTDIR}
> 
> 	3. install source into ${DESTDIR}
> 
> 	4. install /etc config files

that's a good outline.

> We could change that line to:
> 	(chroot ${DESTDIR}/etc pwd_mkdb -p master.passwd)

that sounds reasonable.

> Chris, could you comment on how you make the official distributions?
> You have a unique perspective on this, since you've actually done it.

this would be a wonderful improvement.  one of the reasons that
i hate making distributions is because i do the bootstrapping by
hand...  i.e. rather than use mtree and DESTDIR, i've in the
past "cvs get"ted a /usr/src tree, "make obj"ed, made the binaries,
copied a few binaries out of the new tree (e.g. sh), chrooted
into the new tree, dragged binaries out of th obj dirs as necessary
until i could get the thing to install itself.  The method you
outline is the way to do it, but, for 0.8, i didn't have time
to set things up that way.

then 0.9 happened, and again, time hadn't been found, so...

and so on.

all of the distribution directories hacks in etc/Makefile are
brokennesses to facilitate my alien release buiding strategy.
They (and the "install -d"s in program/library install targets,
which are there for the sam reason) should go away, and mtree
should be used instead, as you stated.



chris

------------------------------------------------------------------------------