Re: Why isn't NOCLEAN the default? (was: Re: Cross-Development with NetBSD)

2002-11-22 Thread Ruslan Ermilov
On Thu, Nov 21, 2002 at 02:48:01PM -0800, David Schultz wrote:
 Thus spake Kris Kennaway [EMAIL PROTECTED]:
   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?
  
  It often causes problems during upgrades (but is usually fine when
  just rebuilding a non-updated tree)
 
 Sounds reasonable.  Maybe it should be documented in build(7), though.
 
Yet it's documented in make.conf(5).


Cheers,
-- 
Ruslan Ermilov  Sysadmin and DBA,
[EMAIL PROTECTED]   Sunbay Software AG,
[EMAIL PROTECTED]  FreeBSD committer,
+380.652.512.251Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age



msg47178/pgp0.pgp
Description: PGP signature


Re: Why isn't NOCLEAN the default?

2002-11-22 Thread Ruslan Ermilov
On Thu, Nov 21, 2002 at 04:30:02PM -0700, M. Warner Losh wrote:
 In message: [EMAIL PROTECTED]
 David Schultz [EMAIL PROTECTED] writes:
 : Thus spake John Baldwin [EMAIL PROTECTED]:
 :  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=alpha
 :  everything I would prefer that.
 : 
 : 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?
 
 Because the number of times that NOCLEAN screws you is high enough
 that we don't want to hear the noise from novice users
 
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,
-- 
Ruslan Ermilov  Sysadmin and DBA,
[EMAIL PROTECTED]   Sunbay Software AG,
[EMAIL PROTECTED]  FreeBSD committer,
+380.652.512.251Simferopol, Ukraine

http://www.FreeBSD.org  The Power To Serve
http://www.oracle.com   Enabling The Information Age



msg47181/pgp0.pgp
Description: PGP signature


Why isn't NOCLEAN the default? (was: Re: Cross-Development with NetBSD)

2002-11-21 Thread David Schultz
Thus spake John Baldwin [EMAIL PROTECTED]:
 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=alpha
 everything I would prefer that.

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?

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Why isn't NOCLEAN the default? (was: Re: Cross-Development with NetBSD)

2002-11-21 Thread Kris Kennaway
On Thu, Nov 21, 2002 at 02:02:20PM -0800, David Schultz wrote:
 Thus spake John Baldwin [EMAIL PROTECTED]:
  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=alpha
  everything I would prefer that.
 
 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?

It often causes problems during upgrades (but is usually fine when
just rebuilding a non-updated tree)

Kris



msg47132/pgp0.pgp
Description: PGP signature


Re: Why isn't NOCLEAN the default? (was: Re: Cross-Development with NetBSD)

2002-11-21 Thread David Schultz
Thus spake Kris Kennaway [EMAIL PROTECTED]:
  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?
 
 It often causes problems during upgrades (but is usually fine when
 just rebuilding a non-updated tree)

Sounds reasonable.  Maybe it should be documented in build(7), though.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message



Re: Why isn't NOCLEAN the default?

2002-11-21 Thread M. Warner Losh
In message: [EMAIL PROTECTED]
David Schultz [EMAIL PROTECTED] writes:
: Thus spake John Baldwin [EMAIL PROTECTED]:
:  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=alpha
:  everything I would prefer that.
: 
: 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?

Because the number of times that NOCLEAN screws you is high enough
that we don't want to hear the noise from novice users

Warner

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-current in the body of the message