Subject: stand/.../newvers.sh
To: None <tech-kern@netbsd.org>
From: Simon Burge <simonb@telstra.com.au>
List: tech-kern
Date: 04/05/1999 17:33:05
Folks,

We've got a number of scripts that produce a vers.c for the stand-alone
programs that are almost exactly the same now.

Here's a table of features for the ports' newvers.sh:

	alpha			rev	date	maker	mrgvers
	bebox		name	rev	date	maker
	hp300		name	rev	date	maker
	i386		name	rev	date	maker
	macppc		name	rev	date	maker
	ofppc		name	rev	date	maker
	pc532		name	rev	date	maker
	pmax		name	rev	date	maker	mrgvers
	sparc		name	rev	date	maker	mrgvers
	sparc64		name	rev	date	maker

"mrgvers" is the scheme of looking for "^Version: " in the version file
rather than guessing where the real version number is.

next68k does something entirely different, and amiga, arm32, atari
mac68k, mvme68k, newsmips, sun3, vax and x68k don't use a newvers.sh
scheme.

The pmax version uses ${MACHINE} from make(1) to get the machine type.
The Alpha doesn't use the bootprog_name[] variable, but at first glance
looks like to could be changed to do so.  However, the Alpha does add
the building OS revision to what it uses for bootprog_name[], which I
don't think is a bad thing either.

I'm proposing that we copy the pmax newvers.sh (which does the ${MACHINE}
thang) to sys/stand/newvers.sh, add the OS release as per the Alpha, and
change all the version files to "mrg" syntax.  I will do this for all[*]
current newvers.sh ports, but obviously can't test every one further
than making a vers.c and seeing if it looks right.  I'll also look into
what the other ports that don't use a newvers.sh scheme are doing.

[*] next68k I'm not sure about :-) If Darrin want to get in touch with
    me so we can convert the version stuff to what other ports are
    doing, that'd be great.

Simon.