Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Jun 1996 09:02:48 -0700
From:      "Jordan K. Hubbard" <jkh@time.cdrom.com>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        freebsd-current@FreeBSD.org, nate@sri.MT.net
Subject:   Re: Building inside of /usr/src? 
Message-ID:  <18586.835718568@time.cdrom.com>
In-Reply-To: Your message of "Tue, 25 Jun 1996 18:26:34 %2B1000." <199606250826.SAA31406@godzilla.zeta.org.au> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Make's path building and priorities for finding the obj directory are now
> broken.  Not only the source tree is broken.  Try this:

But it's not!

> 	$ cd /tmp
> 	$ cvs co cat
> 	$ cd cat
> 	$ make		# builds in ".", OK
> 	$ make clean
> 	$ mkdir obj
> 	$ make		# still builds in ".", not OK

WRONG.  This is not how it works now!  I don't know what this weird
fixation people have with trampling on /usr/src now is, but there's no
reason for this to work because it's not looking in ${.SRCDIR}/obj and
never will again.  Don't be fooled by the `objlink' stuff as that's
only user convenience - the make system does *not* follow the link!

> 	$ make clean
> 	$ mkdir /usr/obj/tmp /usr/obj/tmp/cat

"make obj" is recommended.

> 	$ make		# now builds in /usr/obj/tmp/cat :-(

Exactly!  That's correct.

> 	$ rm -rf /usr/obj/tmp	# don't leave this trap
> 	$ export MAKEOBJDIR=obj

Again, this is wrong and I explained this!  MAKEOBJDIR is an absolute
path now, NOT the name of the obj directory itself.

> 	$ mkdir obj
> 	$ make		# still builds in ".", not OK

Totally OK.  This is correct.

> 	$ mkdir obj/tmp obj/tmp/cat
> 	$ make		# now builds in /tmp/cat/obj/tmp/cat :-(.

And still correct.

Sorry Bruce, but there's nothing broken here except your expectation
that everything should be still broken in the ways it was broken
before! :-)

						Jordan



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