Subject: Re: rescue lossage (previously mentioned by others...)
To: None <current-users@netbsd.org>
From: Sean Davis <dive-nb@endersgame.net>
List: current-users
Date: 01/28/2005 17:42:38
On Fri, Jan 28, 2005 at 05:22:55PM -0500, J Chapman Flack wrote:
> > > Get rid of any -j entries in invocation of build.sh.
> > 
> > Forgive me for asking the obvious question, but is it going to actually be
> > fixed? Or is the -j option going to be removed?
> 
> The main problem seems to be that -j is overloaded.  It doesn't only specify
> whether to make in parallel or not.  BSD make has lots of useful semantic
> extensions over the original make.  According to the old BSD make paper,
> those extensions were on by default, with a way to turn them off.  But
> apparently the extensions cause enough trouble for old makefiles that
> were not written for BSD make, that the extensions have been made OFF by
> default.  They're only turned on by (you guessed it) -j.
> 
> So make is only BSD make when you use -j ... and it's only old make when
> you don't, and (this is the part that surprised me most), a lot of the
> makefiles in NetBSD require old make semantics and break under BSD make
> semantics.

Now that's something I never so much as suspected. I always assumed (yes, I
know, that's bad) that -j merely controlled the number of jobs to use.
Therefore I figured the problem was something along the lines of one thing
finishing after something that needed it had already started, and thus not
being there when it was needed. Hmm. I'll try to investigate further, but I
suspect someone else will fix it before I figure it out, due to my very
limited experience with make.

-Sean
 _
( ) ASCII Ribbon Campaign
 X
/ \ For Plain Text Email