Subject: Re: Toolchain Update (27-Nov-2001)
To: Todd Vierling <>
From: Robert Elz <kre@munnari.OZ.AU>
List: tech-toolchain
Date: 12/01/2001 23:40:39
    Date:        Sat, 1 Dec 2001 11:12:31 -0500 (Eastern Standard Time)
    From:        Todd Vierling <>
    Message-ID:  <Pine.WNT.4.43.0112011107510.740-100000@todd>

  | This is the intentional behavior.  USETOOLS defaults to "yes" in a full
  | "src" tree.  If you don't have a complete "src" tree (just a partial one),
  | USETOOLS defaults to "no".

Really?   As it happens I do only have a partial source tree, I saved
some copying effort by not bothering to take sys/arch/* for any but i386
(at the minute).   But I guess this isn't the definition of complete...

But assuming that is the case, rather than collapsing with an obscure
error about a bizarre pathname not being found, wouldn't it be better to
simply go make the tools, and then use them - if that really is what is

  | We don't want this kind of irregularity.  If the src/tools compiler gets
  | used if it's installed, and is skipped if it's not, how do we have any kind
  | of consistency between builds?

Does it really matter?   The toolchain change isn't altering the ABI is it?
What difference should it make which version I use (on the ports where the
new one works of course)?   It should be possible to get into libc and
compile every second file with the new toolchain, and the others with the
old one...

  | This was discussed at excruciating length on tech-toolchain over a month
  | ago.

I vaguely recall that, but at the time, must not have understood just what
it all really meant to the end user type, like me...

  | The concensus was that, if a "src" tree is complete, then the user
  | will intend to build large portions, or all, of the tree at some point.

I think that's an error.   I have had complete source trees on most of
my systems forever, and until I did a build using the new toolchain just
for fun a couple of weeks ago (on a different system than the one being
considered here), I'd never done a build of a large portion of the tree.
The source is there for doc, and in case something breaks that I can
quickly fix.   It isn't there so I can rebuild it for no rational gain...
I suspect that's true of most of the end users.


ps: with your fix installed, all the pkgsrc build problems went away
with no mention of USETOOLS in mk.conf - thanks for that.