Package: binutils
Version: 2.20.1-15
Invoking "make -j 12" with a Makefile containing a line like
libfoo.a: libfoo.a(a.o b.o c.o)
can make the multiple invocations of ar to update each of the .o files
into the .a library in parallel. This proceeds to fail miserably.
The "right" solution, I think, would be for ar to lock the .a file
using flock(2) or lockf() or whatever, and queue up nicely via
blocking and retrying when there is contention.
If there is some serious efficiency issue associated with this (which
I rather doubt) a switch to disable locking would be appropriate.
That would make ar work in a multicore-build-safe way by default.
--Barak.
--
Barak A. Pearlmutter
Hamilton Institute & Dept Comp Sci, NUI Maynooth, Co. Kildare, Ireland
http://www.bcl.hamilton.ie/~barak/
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]