Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 May 2001 09:53:06 -0700
From:      "David O'Brien" <obrien@freebsd.org>
To:        Sheldon Hearn <sheldonh@uunet.co.za>, netch@lucky.net, Ruslan Ermilov <ru@freebsd.org>, cvs-committers@freebsd.org, cvs-all@freebsd.org
Subject:   Re: -DNOCLEAN - was: Re: cvs commit: src/contrib/amd/include am_defs.h src/usr.sbin/amd/includeconfig.h src/etc/mtree BSD.include.dist src/include Makefilesrc/sbin/mount_msdos mount_msdos.c src/sbin/mountd mountd.csrc/share/man/man7 hier.7 src/sys/boot/forth loader.conf ...
Message-ID:  <20010528095306.A16164@dragon.nuxi.com>
In-Reply-To: <20010528134222.B588@ringworld.oblivion.bg>; from roam@orbitel.bg on Mon, May 28, 2001 at 01:42:22PM %2B0300
References:  <20010528130402.A15634@lucky.net> <51548.991045043@axl.fw.uunet.co.za> <20010528134222.B588@ringworld.oblivion.bg>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, May 28, 2001 at 01:42:22PM +0300, Peter Pentchev wrote:
> On Mon, May 28, 2001 at 12:17:23PM +0200, Sheldon Hearn wrote:
> > 
> > 
> > On Mon, 28 May 2001 13:04:02 +0300, Valentin Nechayev wrote:
> > 
> > > Is -DNOCLEAN guaranteed to work when /usr/obj/`/bin/pwd` was already
> > > cleaned manually (rm -rf)?
> > 
> > No, because you may have .depend files in your src tree.  Have a look:
> > 
> > 	find /usr/src -name '.depend'
> 
> Hmm.. I thought the src tree was not touched at all during the build
> process?

make(1) does what you tell it to.  If you do not have a /usr/obj (or what
ever you've set MAKEOBJDIRPREFIX to), then generated files (ie, compiler
output + .depends, etc...) will be in the directory with the source.  If
the source directory has has a ./obj/ directory that will be used for
output instead.

> The usual process
> of 'make world' or 'make buildworld' does not generate them there,
> it places them all within the /usr/obj tree.

Only if /usr/obj/ exists.

> On second thoughts, make(1) appears to use a .depend file in the current
> directory, even if MAKEOBJDIRPREFIX is set to /usr/obj.  So it might indeed
> be a good idea to do a 'find /usr/src -name .depend -delete', just in case.

No, the proper way is either ``make cleandir ; make cleandir'' --or--
``rm -rf /usr/obj/* ; make cleandir''.  If after you do this, and a
``cvs up'' finds files not in the repository (noted by "?"), then someone
left a generated file out of the `CLEANFILES' list.

-- 
-- David  (obrien@FreeBSD.org)

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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