BLD: Make NumPy build reproducibly #26540
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Backport of #26474.
This pull request fixes two non-deterministic build outcomes to make the NumPy build fully reproducible:
The
__config__.py
configuration dict should take the LAPACK metainfo from thelapack
object, not thelapack_dep
object, because the latter contains a (randomly) generated name of the formdepXXXXXXXXXXX
.If the
.s
source files for SVML support are added asobjects
,gcc
will implicitly build them to object files with a random temporary filename of the formccXXXXX.o
in the linking stage. If added as source files, Meson will create the object files explicitly and assign sane, reproducible file names.