Subject: Re: road map for new immigrants?
To: David Brownlee <>
From: None <>
List: current-users
Date: 09/18/1998 10:38:45
David Brownlee <> writes:

> 	We have someone looking at a 'Updating from a release to current
> 	page', but if you would like to come up with some notes for
> 	'now I have NetBSD running, what do I do to just recompile
> 	everything', that would be good - particularly as you shouldn't
> 	have any (NetBSD :) preconceptions

This is my crib sheet how to build the world.  (I think that it is
only good for -current to -current; at least, I know it works there.)
Phil gave me some hints about it.  The one thing it does not do at all
is worry about EXPORTABLE/nonEXPORTABLE issues

Get to a new upwards compatible kernel:
	cd /usr/src/usr.sbin/config ;	make && make install
	cd /sys/arch/<arch>/conf ;	cp GENERIC MYCONF
	vi MYCONF # (make any changes you need)
		  # consider changing the time zone
	config MYCONF
	cd ../compile/MYCONF ; make 
	mv /netbsd /onetbsd
	mv netbsd /
Run the kernel:

A few preliminaries:
	cd /usr/src/share/mk ; make install

??	cd /usr/src/bin/make ; make && make intall

??	cd /usr/src/usr.bin/xlint
??		make
??		make install

	cd /usr/src/gnu/usr.bin/binutils
	cd ../../lib/bfd
	make cleandir && make depend && make && make install
	cd ../../usr.bin/binutils
	make && make install

Fake Install:
#i.e. Build the world but don't mess up your system!!

#NOTE: you must cd to BSDSRCDIR then do a pwd there and use it
#in the setenv below.  In other words, links don't work!!
	setenv BSDSRCDIR /usr2/src
	cd /usr/src
	make obj
	setenv DESTDIR /usr1/BSD
	make build

Occassional Tricks:
#if you get thru the library stage but things crap out in compilation
#you can make build again but do setenv UPDATE true to avoid redoing
#the includes and library build
	setenv UPDATE true
	setenv WARNS 0

Real Install:
	unsetenv DESTDIR
	make includes
	make install
Distribution sets:
	setenv BSDSRCDIR /usr2/src
	setenv DESTDIR /usr1/BSD
	setenv INSTALL_DONE true
	cd /usr/src/etc;
		make distribution
	cd /usr/src/distrib
		setenv RELEASEDIR /usr1/REL.wxyz/sets
		cd sets
		sh maketars
	cd /usr/src/sys/arch/i386/conf
		config GENERIC
		config INSTALL
		cd ../compile
		(cd INSTALL;make)
		(cd INSTALL_SMALL;make)
		cd GENERIC; make
		tar cvzf /usr1/REL.wxyz/sets/kern.tgz ./netbsd
	cd /usr/src/distrib
		cd i386/floppies
		mkdir -p /usr1/REL.wxyz/installation/floppy
		cp -p */boot*.fs /usr1/REL.wxyz/installation/floppy