Subject: Re: Toolchain Update (27-Nov-2001)
To: Todd Vierling <firstname.lastname@example.org>
From: Robert Elz <kre@munnari.OZ.AU>
Date: 11/29/2001 18:22:57
Date: Wed, 28 Nov 2001 11:41:22 -0500 (Eastern Standard Time)
From: Todd Vierling <email@example.com>
First, thanks for installing the fix (I refuse to call it a work-around)...
I'll be testing that soon (I only cvs update once a day, and that change
missed last night's fetch).
| pkgsrc can go anywhere you like; it's the "src" tree that has restrictions.
That makes no sense. Nor is it reasonable. It is my /usr/src, and I
will put there whatever I like. That includes a whole bunch of NetBSD's
code, in NetBSD's source tree (which in cvs is "basesrc" "gnusrc" ... as
I recall it, not "src").
I have been doing this since forever, no BSD build tree has ever broken
it, nor should it now. The Makefile that goes in /usr/src defines what
gets built by the standard build procedure, always has (well, there was
a time there was no Makefile at that level, but that's ages ago now), and
still does. Anything else in /usr/src (including my /usr/src/local and
other stuff I stick there) gets built in its own way.
What's more the new NetBSD build procedures don't affect any of that either,
they don't attempt to delve in there and build stuff they don't understand,
and nor do my build procedures care in the slightest what directory the
sources happen to live in (I do, the build procedures don't).
| As I said before, it's not unreasonable to expect anything residing
| underneath "src" to be compiled with the same methodology as the rest of the
| NetBSD base system source tree.
I disagree, it is unreasonable.
| pkgsrc is *NOT* a component of "src"
| and should not reside under "src".
But that doesn't follow.
| This is not an articfact of the new toolchain -- it's just something that
| people have lucked out on in the past.
There has never been any luck about it, the build system has always quite
carefully gone only where it is supposed to go, and interfered nowhere else.
The only reason pkgsrc is having a problem (and the reason that I didn't
expect that xsrc would, which has been confirmed, and that I know my local
stuff doesn't), is that pkgsrc is digging into the regular BSD src build
mechanisms. Since pkgsrc these days works on non-BSD based systems, that
don't have all this stuff, perhaps it should be made to work just the same
way on NetBSD, and totally ignore the regular system build environment
(that is, /usr/share/mk/*) and rely entirely upon its own make setup.
(Sharing /etc/mk.conf can probably be handled without too much pain).