Subject: Proposed change to release target, was Re: 1.4.2 again (fwd)
To: Frank van der Linden <frank@wins.uva.nl>
From: Frederick Bruckman <fb@enteract.com>
List: tech-install
Date: 03/27/2000 08:14:51
On Mon, 27 Mar 2000, Frank van der Linden wrote:

> > > There's still no easy hook to make the security set. I've withheld my
> > > patches to that effect on the hope that the whole thing would just go
> > > away. Are we going to be stuck with having to do two builds for 1.5?

> For 1.5, it's very likely too late to do this, so we will be
> stuck with 2 builds.

<Sigh> The problem with the present release target is that, when
CRYPTOBASE exists, the sets that it builds are tainted, and therefore
useless. For the crypto pass, I prefer to build _only_ the security
set, as follows. The idea is that you can do "make release
CRYPTOBASE=none && make clean && make". It's still a pain, in that
you're doing an entire build just to get a handful of binaries.

Index: Makefile
===================================================================
RCS file: /cvsroot/basesrc/etc/Makefile,v
retrieving revision 1.140
diff -c -r1.140 Makefile
*** Makefile	2000/03/10 11:59:35	1.140
--- Makefile	2000/03/27 14:13:18
***************
*** 244,262 ****
  	@echo setenv RELEASEDIR before doing that!
  	@false
  .else
- release snapshot: distribution snap_pre snap_md_pre snap_kern snap_md_post
- 	sh ../distrib/sets/maketars -s ../distrib/sets \
- 		-d ${DESTDIR} -t ${RELEASEDIR}/binary/sets
  .if defined(CRYPTOPATH) && exists(${CRYPTOPATH})
  	sh ../distrib/sets/maketars -s ../distrib/sets \
  		-d ${DESTDIR} -t ${RELEASEDIR}/binary/security secr
  	sh ../distrib/sets/makesums -t ${RELEASEDIR}/binary/security
! .endif
  	sh ../distrib/sets/makesums -t ${RELEASEDIR}/binary/sets
  	sh ../distrib/sets/makesums -t ${RELEASEDIR}/binary/kernel '*.gz'
  
  snap_pre:
  	/bin/rm -rf ${RELEASEDIR}
  	${INSTALL} ${INSTPRIV} -d -o root -g wheel -m 755 ${RELEASEDIR}
  .for dir in ${INSTALLATION_DIRS}
  	${INSTALL} ${INSTPRIV} -d -o root -g wheel -m 755 ${RELEASEDIR}/${dir}
--- 244,266 ----
  	@echo setenv RELEASEDIR before doing that!
  	@false
  .else
  .if defined(CRYPTOPATH) && exists(${CRYPTOPATH})
+ release snapshot: distribution snap_pre
  	sh ../distrib/sets/maketars -s ../distrib/sets \
  		-d ${DESTDIR} -t ${RELEASEDIR}/binary/security secr
  	sh ../distrib/sets/makesums -t ${RELEASEDIR}/binary/security
! .else
! release snapshot: distribution snap_pre snap_md_pre snap_kern snap_md_post
! 	sh ../distrib/sets/maketars -s ../distrib/sets \
! 		-d ${DESTDIR} -t ${RELEASEDIR}/binary/sets
  	sh ../distrib/sets/makesums -t ${RELEASEDIR}/binary/sets
  	sh ../distrib/sets/makesums -t ${RELEASEDIR}/binary/kernel '*.gz'
+ .endif
  
  snap_pre:
+ .if !defined(CRYPTOPATH) || !exists(${CRYPTOPATH})
  	/bin/rm -rf ${RELEASEDIR}
+ .endif
  	${INSTALL} ${INSTPRIV} -d -o root -g wheel -m 755 ${RELEASEDIR}
  .for dir in ${INSTALLATION_DIRS}
  	${INSTALL} ${INSTPRIV} -d -o root -g wheel -m 755 ${RELEASEDIR}/${dir}