Subject: Removing USR_OBJMACHINE
To: None <tech-toolchain@NetBSD.ORG>
From: Curt Sampson <cjs@portal.ca>
List: tech-toolchain
Date: 05/31/1997 20:15:29
I'm going to prepose that we remove the USR_OBJMACHINE variable in
the build system. This is because it's a feature that provides no
useful functionality; it simply makes the build process more complex,
and is yet another point for errors to creep in when modifying
other parts of the build system.

USR_OBJMACHINE is used only if you build with BSDOBJDIR. It
determines whether your directory names look like this:

	/usr/obj/bin/cat.i386		(with it unset)

or like this:

	/usr/obj.i386/bin/cat		(with it set).

I propose that we use the latter format exclusively. 

The objections I've heard to date have been:

1. If you mount a disk on /usr/obj for your object files, you can
no longer use /usr/obj as your BSDOBJDIR. The solution to this is
to use /usr/obj/obj as your BSDOBJDIR, and everything will still
go under /usr/obj.

2. /usr/obj/obj.i386 has redundancy in the pathname. Well, yes it
does, but I don't consider this a problem. Our source tree is
already full of pathnames with redunancy in them (src/lib/libxxx,
for example) and nobody has found that to be a problem.

3. This change would force people compiling without USR_OBJMACHINE
set to recompile from scratch. This is unfortunate, but not
debiliating. I'm willing to time of the change so that it makes
this as convenient as possible for those users.

cjs

Curt Sampson    cjs@portal.ca		Info at http://www.portal.ca/
Internet Portal Services, Inc.		`And malt does more than Milton can
Vancouver, BC   (604) 257-9400		 To justify God's ways to man.'