bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Intermittent parallel make rebuild failures


From: David Highley
Subject: Re: Intermittent parallel make rebuild failures
Date: Thu, 7 Oct 2010 09:22:40 -0700 (PDT)

OK, after more testing I now believe that I have leaped to the "Island
of Conclusions in the Sea of Wisdom" more than once, or more accurately
"I have fallen into the unconscious incompetent syndrome."

Let us just cut to the essence of the issue we are running into, how do
target prerequisites get processed in version 3.81 of make?

Example:
$(LIBRARY): $(INF_DIST_SVCS_OBJS)

$(INF_DIST_SVCS_OBJS): $(DIRS)

$(DIRS):

.PHONY: $(DIRS)

With parallel building how does the macro $(INF_DIST_SVCS_OBJS) get
evaluated before the target $(DIRS) is done? Is there a method to stop
this other than turning parallel building off?

I did read the update NEWS and looked through all the backward
incompatibles and down loaded the latest manual so I'm really not
understanding what is causing this issue. The target $(DIRS) does invoke
sub make processes but I do not see the why that would matter in the
context of understanding how the prerequisites are processed.

"David Highley wrote:"
> 
> Well, I'm going to have to eat crow on this one. After much digging into
> this issue, down loading older versions of make back to 3.78.1.
> Researching our large build process and its history I find that we had
> disabled parallel building for this one library build in the past. We
> use the build construct describe before all over our build process and I
> find only this one library build where we disabled parallel building for
> the top makefile. I can find nothing unique about this library build as
> compared to our other library builds so I'm still not able to understand
> why we need to disable parallel building for this one library. Note the
> disabling is only for the top makefile, all the sub makes are still
> parallel which in effect means that only one source directory has sub
> make launched at a time. We have larger library builds and we have
> smaller library builds so we see no reason why this one exhibits a
> parallel build issue.
> 
> What I also found was the lack of comments for the reason we disabled
> parallel building before, which I have now corrected. I did retest with
> the current version of make 3.82 and found no issue. But since I only
> did testing with the problematic area I'm not able say whether it works
> in general. Paul, if you would like me to do a larger test with the
> latest version let me know and I can work that in.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]