[Dropping Kerberos and SCM Migration, as they're really not involved
in this; it's a tools issue at best.]

Dan Mick writes:
> James Carlson wrote:
> > Only if you count printf("my version is %I%\n"); to be "good."
> 
> not printf, but %I% is perfectly sufficient for all the cases I've used it, 
> and there is no substitute.  I'm still wondering why we strip all the 
> #ident strings, as that's even better.
> 
> Many of the 'solutions' here don't lead immediately back to source files. 
> That's a real loss, however useless you think it is; it wasn't useless to 
> those of us who, well, used it.

Thanks.  You're talking to someone who has used these things himself
many times.

The problem is that this solution is lame.  It's just stunningly bad.
A great many modules consist of multiple .c files *and* that the ID
numbers mean nothing.  Guess what happens if someone modifies one of
those files without touching the one magic file with the version
number in it?  Or guess what happens when we need to map this back to
a particular package or patch version?  Or guess what happens when we
have separate gates for separate releases?  Or when someone delivers
an IDR built out of his own private workspace?  It's entertaining at
best, and a total waste of time in the worst case.

I reject per-file versioning based on simple SCCS IDs as a viable
answer for anything more complex than a "programming 101" class
project, and it's probably not even good enough for that.

What I'd really like to see here is versioning that makes sense to all
involved, so that administrators running "modinfo" (or its ilk) or
using "myutility -V" (or some such) get information that actually
means something about the version of the object, rather than something
about the alignment of the stars at the moment the binary was built.

This shouldn't be brain surgery.  I'm not asking for something deeply
complex -- just a set of usable version numbers that get applied to
packages and traced to the binaries delivered by those packages
through some _common_ mechanism; preferably something that is
implemented in Makefile.master or thereabouts so that nobody has to
code a single line to use it.

-- 
James Carlson, Solaris Networking              <[EMAIL PROTECTED]>
Sun Microsystems / 35 Network Drive        71.232W   Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757   42.496N   Fax +1 781 442 1677
_______________________________________________
tools-discuss mailing list
tools-discuss@opensolaris.org

Reply via email to