Subject: Re: make -j and failure modes
To: Simon J. Gerraty <firstname.lastname@example.org>
From: James Chacon <jmc@NetBSD.org>
Date: 12/10/2003 18:46:39
On Wed, Dec 10, 2003 at 03:56:29PM -0800, Simon J. Gerraty wrote:
> >It is absurd to require the shell to look inside the commands run by the
> >sub-shell and see if they're the kind that should cause "set -e" mode to
> >cause the shell to exit - but not doing so would mean the parent shell exiting
> >if the sub-shell exits with an error code, even though that error code didn't
> >actually cause the sub-shell to exit 1 because of the -e.
> Ok, I buy your argument that our shell is correct.
As did I after review. I don't often find kre's points in error but needed
a better example to see it.
> If the shell is correct, then the makefiles should be fixed.
> Make should not attempt to edit the scripts in the above manner - as it
> is likely to get it wrong as often as not.
Doing a scan of the tree shows me ~245 Makefiles to review. No more than
a nights work I'd guess. With additional documentation to make's man page
I think that would get 99% of it. The rest can be found the same way we find
places to add .WAIT's as builds fail for folks.
The main reason I want to fix this is it's much easier to fire off
sequential make -j6 jobs, 1 for each arch than it is to try and keep 4-6
jobs running at all times for a build box I'm experimenting on.