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.
Without this patch, the code would only build binaries with SSE2,
if the build machine CPU supported SSE2.
And through the
-march=native
flag, it would then use more CPU featuresavailable on the build CPU that might not be available
on the target machine CPU. That can cause an illegal instruction
exception on the target machine.
This patch changes behaviour so that only configure options determine the
result of the build, regarding SSE2.
See https://reproducible-builds.org/ for why this is good.
This PR was done while working on reproducible builds for openSUSE.
note that there are similar issues around AVX and neon extensions, but they are more tricky to resolve. e.g. the AVX test needs
-avx2
for some reason and maybe avx512 should be decoupled.Maybe an option for compile-time detection is wanted there by some users?