Subject: Re: Building -current from 1.4.1?
To: None <port-vax@netbsd.org>
From: Chuck McManis <cmcmanis@mcmanis.com>
List: port-vax
Date: 03/13/2000 11:18:36
At 07:45 PM 3/13/00 +0100, Manuel Bouyer wrote:
>Building -current from the last release is not the supported way to
>upgrade to current (you'll have troubles with a lot of other things,
>including the compiler, config, lex/yacc, lint, ...).
>Better install a -current snapshot first and rebuild from here.

#define RANT_MODE_ON

That this statement could be delivered without any incredulity at all is
what I mean about the lack of discipline in open source projects. At some
point there will be _no_ environment where the "next" or "current" release
of the system can be built. And when that happens, all the newbies who
haven't been building large scale software systems for the last 20 years
will be shocked and dismayed and I'll be laughing my ass off.

There is "product"

There are "tools"

These are two different things. The manufacturing business has known this
for at least 1600 years now. 

The "build system" is the tool used to build the release, and in a properly
managed development environment the current build tools would be sacrosanct
and 100% stable. This doesn't mean that the build tools can't evolve and
change, just that they should be stablized _first_ then the build done.

So -current should be built with *ONLY* 1.4.x systems (stable tools) and
then once 1.5 gets cut, -current can switch over to being built with the
1.5 set. 

Without this discipline you get to our current situation, and one that will
only get worse, where you need -current to build -current. And if you don't
have -current there is no straightforward way to build a release. Thus you
impede new progress as new developers get "on board" with NO DEVELOPMENT
VALUE IN TOOLS. 

Now this is important, if you don't "lose" anything by using the stable
tools to build the new release and new tools and you gain a tremendous
amount in terms of buildability. 

Anyway, this is not a lesson that anyone who is promoting the currently
broken system will ever learn by having it explained to them. They need a
big chunk-o-arse(tm) removed from their backside by a massive meltdown of
the maintainability of the system in order to "internalize" what it really
means to build and evolve large scale systems.

#endif

--Chuck