Open
Description
While working on reproducible builds for openSUSE, I found that
our ocaml-camlp-streams-5.0.1
package varied randomly unless we build with -j1
or with taskset 1 dune
or in a 1-core-VM.
This indicates that a race-condition happens.
To reproduce:
cd ~/rpmbuild/BUILD/ocaml-camlp-streams-5.0.1/ && for i in $(seq 100); do rm -rf _build ; "dune" "build" "--verbose" "--for-release-of-packages=camlp-streams" "-j4" "@install" >/dev/null 2>&1 ; md5sum _build/default/.camlp_streams.objs/byte/genlex.cmti ; done |sort|uniq -c
87 a5a708508e5844516c0252cbe4061dad _build/default/.camlp_streams.objs/byte/genlex.cmti
13 fcd764146f8d5cb31dccafdcf4dc77c1 _build/default/.camlp_streams.objs/byte/genlex.cmti
On another machine, I got a 99:1 distribution, so it might be tricky to reproduce.
stream.cmti
is another output file that varies.
Please make build output deterministic.
Metadata
Metadata
Assignees
Labels
No labels