Spurious parallel make failures in libgcc.

Jeff Law law@redhat.com
Wed Jul 15 18:58:00 GMT 2015


On 07/15/2015 08:33 AM, Andrew MacLeod wrote:
> Oh, wait. this isnt on a scratch build this time, this is on an
> incremental rebuild I just noticed (I was doing stuff on  multiple
> machines, turn out the other one was a scratch build)
> make -j16 from the root build directory.
>
> and it may have happened with me putzing around with a .awk file in the
> gcc which required rebuilding.. so maybe configure did require
> re-running somehow?  still seems to be a timing issue tho.
>
> Maybe if gthr-default already existed (as well as config.status), the
> makefile would spawn the libgcov-interface.c object builds... meanwhile
> a reconfigure is going which ends up overwriting gthr-default.h at what
> turns out to be a poor time ?  that sort of makes sense I guess.   Im
> not sure how we synchronize the parallel bits.
I always blow away the target directory (and stage2-* stage3-*) when I 
do an incremental bootstrap.

If I had to guess, something is missing a dependency which allows 
compilation of libgcov-interface to start building prior to configure 
re-running (since I believe it's configure that sets up gthr-default).

I bet if you have libgcov-interface.o (and anything else which depends 
on gthr.h or gthr-default.h depend on config.status this problem would 
go away.

I'm not sure what the real fix is, but it's got to be a missing 
dependency that allows libgcov-interface.c to build prior to configure 
being completed.

jeff



More information about the Gcc mailing list