You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Instructions must produce the same result, but independent intermediate data elements can be built concurrently, and build tools actually do that. For example, make -j<N> (to run N compiler jobs in parallel) is extremely common in my scope and can create reproducible results, although the order of the instructions is not known and may change on each build.
This might require special attention, such as not including build.log with detailed filenames and alike, and of course it is easy to create a build process where the order does matter, so care is needed.
The text was updated successfully, but these errors were encountered:
I don't think this rule disallows something like make -j, that is reading a bit too much into it. That rule can also be part of a logic ordering (e.g., make you have the dependencies installed first).
comments about rule 9 "Order the instructions"
Instructions must produce the same result, but independent intermediate data elements can be built concurrently, and build tools actually do that. For example,
make -j<N>
(to runN
compiler jobs in parallel) is extremely common in my scope and can create reproducible results, although the order of the instructions is not known and may change on each build.This might require special attention, such as not including
build.log
with detailed filenames and alike, and of course it is easy to create a build process where the order does matter, so care is needed.The text was updated successfully, but these errors were encountered: