Hello community, here is the log from the commit of package ugrep for openSUSE:Factory checked in at 2020-07-06 16:29:17 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ugrep (Old) and /work/SRC/openSUSE:Factory/.ugrep.new.3060 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ugrep" Mon Jul 6 16:29:17 2020 rev:2 rq:818824 version:2.3.2 Changes: -------- --- /work/SRC/openSUSE:Factory/ugrep/ugrep.changes 2020-07-03 00:10:45.055736475 +0200 +++ /work/SRC/openSUSE:Factory/.ugrep.new.3060/ugrep.changes 2020-07-06 16:31:22.851547090 +0200 @@ -1,0 +2,7 @@ +Sun Jul 5 04:34:08 UTC 2020 - Bernhard Wiedemann <bwiedem...@suse.com> + +- Disable avx +- Add reproducible.patch to drop march=native + to make package build reproducible (boo#1100677) + +------------------------------------------------------------------- New: ---- reproducible.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ugrep.spec ++++++ --- /var/tmp/diff_new_pack.cKNXUM/_old 2020-07-06 16:31:24.051550777 +0200 +++ /var/tmp/diff_new_pack.cKNXUM/_new 2020-07-06 16:31:24.059550801 +0200 @@ -24,6 +24,7 @@ Group: Productivity/File utilities URL: https://github.com/Genivia/ugrep Source: https://github.com/Genivia/ugrep/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +Patch0: reproducible.patch BuildRequires: gcc-c++ BuildRequires: pkgconfig BuildRequires: pkgconfig(bzip2) @@ -38,9 +39,11 @@ %prep %setup -q +%patch0 -p1 %build %configure \ + --disable-avx \ --enable-color %make_build ++++++ reproducible.patch ++++++ https://github.com/Genivia/ugrep/pull/50 >From e5413eeb4a98339587e9b32fe098e305b2bb9092 Mon Sep 17 00:00:00 2001 From: "Bernhard M. Wiedemann" <bwiedem...@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