Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Apr 2005 15:13:34 -0600 (MDT)
From:      Warner Losh <imp@bsdimp.com>
To:        ru@FreeBSD.org
Cc:        marcel@xcllnt.net
Subject:   Re: cvs commit: src/usr.sbin/config main.c
Message-ID:  <20050422.151334.08362499.imp@bsdimp.com>
In-Reply-To: <20050422201615.GD23926@ip.net.ua>
References:  <20050422200341.GA23926@ip.net.ua> <1b042838f6396ae9665fcb2f41f1c9a7@xcllnt.net> <20050422201615.GD23926@ip.net.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
From: Ruslan Ermilov <ru@freebsd.org>
Subject: Re: cvs commit: src/usr.sbin/config main.c
Date: Fri, 22 Apr 2005 23:16:15 +0300

> On Fri, Apr 22, 2005 at 01:08:14PM -0700, Marcel Moolenaar wrote:
> > On Apr 22, 2005, at 1:03 PM, Ruslan Ermilov wrote:
> > 
> > >>>What exactly is broken? I don't see a breakage, even when source
> > >>>files disappeared. I assume I must be forgetting something or not
> > >>>doing everything right.
> > >>
> > >>when an include file is removed, make depend can fail to recreate
> > >>.depend in the modules.
> > >>
> > >This is only a problem with NO_CLEAN builds, and it's not limited
> > >to just modules -- I often saw this problem with the world builds.
> > 
> > Ok. Does it help if there's an option to make that supresses the
> > automatic loading on .depend or more generically, allows one to
> > name the depend file and it merely defaults to .depend (suppression
> > is then accomplished by specifying /dev/null as the depend file)?
> > If such option would be used for "make depend", would that resolve
> > the problems in a generic way?
> > 
> Nope.  We only regenerate .depend when its dependencies are
> changed.  For bsd.prog.mk, this means that .depend is only
> regenerated when some of ${SRCS} are changed (but this does
> NOT cover headers these ${SRCS} include, and some of these
> headers may disappear).
> 
> To put it differently: when a header disappears, the breakage
> is not at the "make depend" stage (which doesn't do anything),
> but at a later "make all" stage.
> 
> I personally fail to see how this can be solved...  :-(

If make depend rebuilds the .depend file, then make depend && make
will work.

Warner



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