Subject: Re: build.sh failure?
To: der Mouse <mouse@Rodents.Montreal.QC.CA>
From: Todd Vierling <email@example.com>
Date: 04/29/2002 13:43:46
On Sat, 27 Apr 2002, der Mouse wrote:
: >> cc -O -o nbmake *.o
: >> BSDOBJDIR /usr/obj does not exist, bailing...
: > BSDSRCDIR defaults to /usr/src. If that path matches the front of
: > $PWD, you get the Magical BSDOBJDIR handling (and you have to create
: > /usr/obj my hand as a sanity check to make sure you really want this
: > type of objdir handling).
: > This has been around for ~years, so unfortunately, its functionality
: > cannot simply be yanked.
: Does _all_ its functionality have to be preserved? Would it be
: acceptable to have the "sanity check", when it fails, disable BSDOBJDIR
: handling (as if `pwd` didn't begin with /usr/src) rather than bombing
: the build?
This is even more indeterminate. If you build with this "fallback" and then
add /usr/obj later, the build system will get really confusing when it tries
to create the symlinks in place of the existing obj directories under
/usr/src. The sanity check removes the ambiguity -- if the
BSDSRCDIR->BSDOBJDIR rewrite would kick in, it makes sure BSDOBJDIR exists
This has been the topic of past heated threads, and there are people who
Really Want the /usr/src->/usr/obj historic handling to remain. So it can't
simply be pulled without some real discussion.
: Also, it's functionality may be yankable for the system in question;
: how would I go about doing that? Or is that too complicated to explain
Simple answer: change your value of BSDSRCDIR to a nonexistent path. That
yanks the functionality in the cleanest manner.
(I don't recommend hacking bsd.obj.mk, as I plan to give that whole file a
facelift in the near future.)
-- Todd Vierling <firstname.lastname@example.org> * Wasabi & NetBSD: Run with it.
-- CDs, Integration, Embedding, Support -- http://www.wasabisystems.com/