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
This commit is contained in:
parent
6ba6ce5830
commit
217b4bc19b
48
reproducible.patch
Normal file
48
reproducible.patch
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
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
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Jul 5 04:34:08 UTC 2020 - Bernhard Wiedemann <bwiedemann@suse.com>
|
||||||
|
|
||||||
|
- Disable avx
|
||||||
|
- Add reproducible.patch to drop march=native
|
||||||
|
to make package build reproducible (boo#1100677)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Jun 30 16:40:55 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de>
|
Tue Jun 30 16:40:55 UTC 2020 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ License: BSD-3-Clause
|
|||||||
Group: Productivity/File utilities
|
Group: Productivity/File utilities
|
||||||
URL: https://github.com/Genivia/ugrep
|
URL: https://github.com/Genivia/ugrep
|
||||||
Source: https://github.com/Genivia/ugrep/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
Source: https://github.com/Genivia/ugrep/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||||
|
Patch0: reproducible.patch
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
BuildRequires: pkgconfig(bzip2)
|
BuildRequires: pkgconfig(bzip2)
|
||||||
@ -38,9 +39,11 @@ fuzzy search.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch0 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure \
|
%configure \
|
||||||
|
--disable-avx \
|
||||||
--enable-color
|
--enable-color
|
||||||
%make_build
|
%make_build
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user