Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Feb 1998 11:09:58 -0700
From:      Nate Williams <nate@mt.sri.com>
To:        dag-erli@ifi.uio.no (Dag-Erling Coidan Smørgrav)
Cc:        Nate Williams <nate@mt.sri.com>, Warner Losh <imp@village.org>, hackers@FreeBSD.ORG
Subject:   Re: Recompiling just kmem programs?
Message-ID:  <199802021809.LAA28241@mt.sri.com>
In-Reply-To: <xzpra5lopf2.fsf@hrotti.ifi.uio.no>
References:  <199801301658.JAA26173@harmony.village.org> <199801301957.MAA17366@mt.sri.com> <xzp3ei2cdsc.fsf@grjottunagard.ifi.uio.no> <199802021747.KAA27920@mt.sri.com> <xzpra5lopf2.fsf@hrotti.ifi.uio.no>

next in thread | previous in thread | raw e-mail | index | archive | help
> > > > # make obj && make depend && make && make install

> > > 'make obj depend all install' oughta be enough for anyone.
> > Actually, no.
> 
> Would you care to elaborate? :)
> 
> The general idea is that you want to make each of these targets, in
> order, and stop everything if one of them fails. Doesn't 'make obj
> depend all install' do just that?

Yep, but if you do a 'make obj depend', the .depend file won't end up in
the obj directory, simple because make doesn't 'reset' it's build
environment to take advantage of the obj directory.  In the same manner,
if you do a 'make depend all', then make won't re-read the dependency
files before making 'all' to determine if a file is out-of-date with
respect to it's dependencies.

This is just a generic problem with all Unix makes, and nothing new to
BSD-Make.  Normally it works fine since most targets don't depend on the
ouytput of the previous target, but if they do there is a chance of not
getting the correct results.

> I usually (and successfully) do 'make depend all install' to rebuild
> my kernel...

This works after a new 'config' run since everything needs to be
re-built, so you end up building a .depend file for the next build
(though if you're blowing everything away everytime the depend step is
un-necessary).


Nate



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