contrib/asdf fails parallel build since 1.2.3
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Homebrew is currently stuck at v1.2.2 of SBCL [0] because 1.2.3 broke parallel builds. I've tracked the cause to the commit that upgrades to asdf 3.1.3 [1], which introduces a race condition in contrib/
attempt to load an empty FASL file:
"/private/
...snip...
WARNING! Some of the contrib modules did not build successfully or pass
their self-tests. Failed contribs:"
asdf
As best as I can tell, the $(ASDF_FASL) task has an undeclared dependency on the $(UIOP_FASL) task. Make doesn't know about this, runs the tasks in parallel, and the test fails.
To reproduce:
1. Find a box with multiple cores. (Probably.)
2. Instruct Make to parallelize the build: MAKEFLAGS=-j2
3. Compile like normal.
The race condition occurs reliably for me on a 4-core MacBook Pro with -j4 and SBCL 1.2.9.
NOTE: This parallelization is unrelated to #1010646 [2].
[0]: https:/
[1]: https:/
[2]: https:/
Changed in sbcl: | |
status: | New → Fix Released |
Thank you; I've merged this patch as commit cd239cc85774a9d cab2f5a78f.
92fb90203c40602
Christophe