From owner-cvs-src@FreeBSD.ORG Fri Apr 22 21:16:30 2005 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7B13A16A4E1; Fri, 22 Apr 2005 21:16:27 +0000 (GMT) Received: from harmony.village.org (rover.village.org [168.103.84.182]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F47F43D41; Fri, 22 Apr 2005 21:16:27 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from localhost (localhost.village.org [127.0.0.1]) by harmony.village.org (8.13.3/8.13.1) with ESMTP id j3MLDYWQ044535; Fri, 22 Apr 2005 15:13:34 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Fri, 22 Apr 2005 15:13:34 -0600 (MDT) Message-Id: <20050422.151334.08362499.imp@bsdimp.com> To: ru@FreeBSD.org From: Warner Losh In-Reply-To: <20050422201615.GD23926@ip.net.ua> References: <20050422200341.GA23926@ip.net.ua> <1b042838f6396ae9665fcb2f41f1c9a7@xcllnt.net> <20050422201615.GD23926@ip.net.ua> X-Mailer: Mew version 3.3 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org cc: marcel@xcllnt.net Subject: Re: cvs commit: src/usr.sbin/config main.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Apr 2005 21:16:30 -0000 From: Ruslan Ermilov 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