Date: Fri, 22 Nov 2002 13:51:26 +0200 From: Ruslan Ermilov <ru@FreeBSD.ORG> To: "M. Warner Losh" <imp@bsdimp.com> Cc: dschultz@uclink.Berkeley.EDU, jhb@FreeBSD.ORG, tlambert2@mindspring.com, current@FreeBSD.ORG Subject: Re: Why isn't NOCLEAN the default? Message-ID: <20021122115126.GE11000@sunbay.com> In-Reply-To: <20021121.163002.08630706.imp@bsdimp.com> References: <3DDD2CB8.7E080912@mindspring.com> <XFMail.20021121143119.jhb@FreeBSD.org> <20021121220220.GB6062@HAL9000.homeunix.com> <20021121.163002.08630706.imp@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--WkfBGePaEyrk4zXB Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Nov 21, 2002 at 04:30:02PM -0700, M. Warner Losh wrote: > In message: <20021121220220.GB6062@HAL9000.homeunix.com> > David Schultz <dschultz@uclink.Berkeley.EDU> writes: > : Thus spake John Baldwin <jhb@FreeBSD.ORG>: > : > Make release is a very poor example b/c make release goes to great > : > efforts to create a clean-room environment for a release. make > : > rerelease is quite helpful though and does do what you want to > : > restart a previous release. :) Also, make buildworld -DNOCLEAN > : > isn't too shabby, though if I could do make TARGET_ARCH=3Dalpha > : > everything I would prefer that. > :=20 > : I have long wondered why NOCLEAN isn't the default. There seem to > : be a few cases where it doesn't DTRT for kernel builds, but it > : seems a bit conservative to make incremental world builds require > : that an undocumented variable be defined. Any ideas? >=20 > Because the number of times that NOCLEAN screws you is high enough > that we don't want to hear the noise from novice users.... >=20 I would like to point out that NOCLEAN is only safe to use if sources did not change in between, or you know the nature of the change and are sure that it does not require cleaning .OBJDIR. It is common to see a problem with NOCLEAN caused by changes to makefiles. For example, with this Makefile: a: b c cat ${.ALLSRC} > ${.TARGET} You first `make a' and later modify the Makefile to read: a: c b cat ${.ALLSRC} > ${.TARGET} If you don't clean .OBJDIR before repeating `make a', you'll get the (`a' is up to date.) message, and the result will be wrong. Cheers, --=20 Ruslan Ermilov Sysadmin and DBA, ru@sunbay.com Sunbay Software AG, ru@FreeBSD.org FreeBSD committer, +380.652.512.251 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age --WkfBGePaEyrk4zXB Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (FreeBSD) iD8DBQE93ho+Ukv4P6juNwoRAuTrAJ4hcaP28sTfHxrhC1h9Y6avzkvLxQCfaIjx wc+hFfMR6y4SGwNQftr54RI= =TnX6 -----END PGP SIGNATURE----- --WkfBGePaEyrk4zXB-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021122115126.GE11000>