Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Sep 1996 14:38:33 -0700
From:      Steven Wallace <swallace@ece.uci.edu>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Object directory changes to make 
Message-ID:  <199609162138.OAA05187@newport.ece.uci.edu>
In-Reply-To: Your message of "Tue, 10 Sep 1996 07:00:19 %2B1000." <199609092100.HAA27432@godzilla.zeta.org.au> 

next in thread | previous in thread | raw e-mail | index | archive | help

I have made more changes to make and the makefiles as per our
previous discussion.  Bruce, will you look over ~swallace/work/make
and ~swallace/work/mk once more before I commit?

The object directory searching goes as follows.  If the env var
MAKEOBJDIRPREFIX is not set, then it's

${.CURDIR}/obj.`uname -m`
$(.CURDIR}/obj
${MAKEOBJDIRPREFIX}`cwd`
${.CURDIR}

If it IS set, then the order is
${MAKEOBJDIRPREFIX}`cwd`
${.CURDIR}

I chose to make obj by default have a higher priority if MAKEOBJDIRPREFIX
is not set because with an obj tree one may wish to use the object
tree for something at /usr/obj/a/b/c, but not for /usr/obj/a/b.
Since /usr/obj/a/b/ must be created for /usr/obj/a/b/c, /a/b/obj
will not be used.  The obj tree can be forced to used if MAKEOBJDIRPREFIX
is set.

.TARGETOBJDIR has been removed from make and CANONICALOBJDIR set in
bsd.obj.mk.  Also, a make target called objwarn checks to see
if ${.OBJDIR} != ${.CURDIR} and ${.OBJDIR} != ${CANONICALOBJDIR}
and outputs a warning.  (No warning for the latter if MAKEOBJDIR or MAKEOBJDIRPREFIX is set).  objwarn is called from bsd.prog.mk, bsd.kmod.mk,
and bsd.lib.mk.

Steven



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609162138.OAA05187>