On 28.11.2008 23:03, Stefan Reinauer wrote:
Corey Osgood wrote:
This is exactly the error the change was supposed to fix.
Is it possible the build system didn't rebuild abuild or some part of the config system before it ran?
-Corey
It's odd. I couldn't reproduce any failure in 5 complete abuild runs after we made the patch.
The problem is that we end up with a valid option_table.o file (not truncated) but it has no symbols and no data in there. The file is 900 something bytes, which is exactly the size of an elf object created by touch foo.c gcc -c foo.c -o foo.o
At least in one of the targets that failed, buid_opt_table was called 5 times, whereas it should only be called twice in the whole build process.
This makes me think make gets confused during the build process. Patrick suggested it might be some serialization issue, but I'm slowly running out of ideas for things that we can check without wasting a lot of time.
I think I can fix that serialization problem, but it seems r3777 makes the situation a bit better than it was before. That alone is an improvement. Stefan, you are right about the time/result tradeoff. If the failure rate stays low enough, we might want to leave your fix in place and simply accept the occassional failure.
Regards, Carl-Daniel