Subject: Re: Toolchain Update (27-Nov-2001)
To: Robert Elz <kre@munnari.OZ.AU>
From: Todd Vierling <tv@wasabisystems.com>
List: tech-toolchain
Date: 11/29/2001 12:26:56
On Thu, 29 Nov 2001, Robert Elz wrote:

:   | 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.

Sure, you can put whatever you like in it.  However, it *is* reasonable to
assume that src may affect the build procedure of any alien tree you put
inside it (see below).

: 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").

Basesrc/gnusrc/syssrc/sharesrc was split for some very different reasons;
they are collectively considered one component, "src", and have an
explicitly documented method of mergeing them into "src".

"pkgsrc" does not live one level below "src" -- it lives at the same
directory level.  It is not meant to be mergeable with "src".

:   | 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.

This is pretty standard treatment in the software world.

Source trees are set up to contain a specific set of subcomponents.  The
parent package's maintainer has no responsibility (in most cases, no
*ability*) to know that you put extra alien sources in its tree; it's up to
you to deal with changes in the parent's build structure which affect you.

: 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 "src" build system, however, has domain over how "src" (and everything
it contains) builds.  If you're leveraging the build structure of "src"
(<bsd.*.mk>) inside "src", you should fully expect your alien tree to behave
as if it were building with "src".  This should be rather obvious....

-- 
-- Todd Vierling <tv@wasabisystems.com>  *  Wasabi & NetBSD:  Run with it.
-- CDs, Integration, Embedding, Support -- http://www.wasabisystems.com/