ugrep/reproducible.patch
Andreas Stieger 217b4bc19b Accepting request 818786 from home:bmwiedemann:branches:utilities
Disable avx
- Add reproducible.patch to drop march=native
  to make package build reproducible (boo#1100677)

if avx is wanted for performance, it could use _multibuild
but it would also need another patch for reproducibility

OBS-URL: https://build.opensuse.org/request/show/818786
OBS-URL: https://build.opensuse.org/package/show/utilities/ugrep?expand=0&rev=6
2020-07-05 07:07:54 +00:00

49 lines
1.8 KiB
Diff

https://github.com/Genivia/ugrep/pull/50
From e5413eeb4a98339587e9b32fe098e305b2bb9092 Mon Sep 17 00:00:00 2001
From: "Bernhard M. Wiedemann" <bwiedemann@suse.de>
Date: Sat, 4 Jul 2020 06:18:32 +0200
Subject: [PATCH] Disable march=native for SSE2
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 features
available 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.
---
configure | 4 ++--
configure.ac | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
Index: ugrep-2.3.2/configure
===================================================================
--- ugrep-2.3.2.orig/configure
+++ ugrep-2.3.2/configure
@@ -7708,7 +7709,7 @@ $as_echo "no" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${CXX} supports SSE2 intrinsics" >&5
$as_echo_n "checking whether ${CXX} supports SSE2 intrinsics... " >&6; }
save_CXXFLAGS=$CXXFLAGS
- CXXFLAGS="-march=native"
+ CXXFLAGS="-msse2"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <emmintrin.h>
@@ -7730,7 +7731,7 @@ rm -f core conftest.err conftest.$ac_obj
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $msse2_ok" >&5
$as_echo "$msse2_ok" >&6; }
if test "x$msse2_ok" = "xyes"; then
- SIMD_FLAGS="-march=native -msse2 -DHAVE_SSE2"
+ SIMD_FLAGS="-msse2 -DHAVE_SSE2"
fi
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5