Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Jan 2006 10:39:22 +0200
From:      Ruslan Ermilov <ru@FreeBSD.org>
To:        Scott Long <scottl@samsco.org>
Cc:        src-committers@FreeBSD.org, flz@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org, obrien@FreeBSD.org, "M. Warner Losh" <imp@bsdimp.com>
Subject:   Re: cvs commit: src/usr.sbin/config main.c
Message-ID:  <20060116083922.GD81316@ip.net.ua>
In-Reply-To: <43CB42A9.8090601@samsco.org>
References:  <200601140812.k0E8CQPI036267@repoman.freebsd.org> <20060116041146.GA23438@dragon.NUXI.org> <20060115.231029.62233420.imp@bsdimp.com> <43CB42A9.8090601@samsco.org>

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

--d01dLTUuW90fS44H
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Jan 15, 2006 at 11:52:25PM -0700, Scott Long wrote:
> M. Warner Losh wrote:
>=20
> >In message: <20060116041146.GA23438@dragon.NUXI.org>
> >            "David O'Brien" <obrien@FreeBSD.org> writes:
> >: On Sat, Jan 14, 2006 at 08:12:25AM +0000, Florent Thoumie wrote:
> >: >   Modified files:
> >: >     usr.sbin/config      main.c=20
> >: >   Log:
> >: >   - Change the exit message from "make cleandepend; make depend" to
> >: >   "make cleandepend && make depend".
> >:=20
> >: I still think we should go back to the traditional:
> >:     "Don't forget to do ``make depend''\n"
> >:=20
> >: The 'make cleandepend' step was to work around brokeness in 'make=20
> >depend'.
> >: If 'make depend' is still so broken that one must do 'make cleandepend'
> >: first, then 'make depend' should just blow away all the .depend files
> >: first.
> >
> >Sadly, that won't work.
> >
> >Warner
>=20
> Not that I don't believe you, but can you explain why it won't work?=20
> What happened that caused 10+ years of 'working' to turn to 'not working'?
>=20
Several reasons:

-  Before we were always regenerating the kernel .depend file, even if
   nothing has changed.  This was contrary to other .depend files that
   are only regenerated if some of the sources or their known dependencies
   have changed.  The config/main.c commit log said this on the subject:
   : Ask that "make cleandepend" be run before "make depend", now that
   : we don't do this automatically.

- "make cleandepend" wasn't to work around brokenness in "make depend".
  Instead, it's to make things work when make(1) cannot figure out by
  itself that it should regenerate .depend, e.g. when supporting .mk
  files change (kern.{pre,post}.mk, Makefile.<arch>, Makefile built by
  config(8), etc.).

In short, not runnign "make cleandepend" is equivalent to building world
with -DNO_CLEAN, which is often possible but not guaranteed to work, and
for the same set of reasons.


Cheers,
--=20
Ruslan Ermilov
ru@FreeBSD.org
FreeBSD committer

--d01dLTUuW90fS44H
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (FreeBSD)

iD8DBQFDy1u6qRfpzJluFF4RAh1BAKCVc72Af2TmK+nYZq6laUDdXyf1xgCdHNjO
5DBs+RmFifFpxBBm8AZuwwY=
=9yvR
-----END PGP SIGNATURE-----

--d01dLTUuW90fS44H--



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