Accepting request 627983 from home:bmwiedemann:branches:Base:System

Add reproducible-debuginfo.patch to generate debuginfo in a reproducible way

OBS-URL: https://build.opensuse.org/request/show/627983
OBS-URL: https://build.opensuse.org/package/show/Base:System/rpm?expand=0&rev=476
This commit is contained in:
Michael Schröder 2018-08-08 13:17:48 +00:00 committed by Git OBS Bridge
parent b0a9b64c64
commit c96845c1e8
3 changed files with 36 additions and 1 deletions

View File

@ -0,0 +1,27 @@
commit 5b29a1d4b1d25a16c24c2365980ac5fd847e1aa6
Author: Bernhard M. Wiedemann <bwiedemann@suse.de>
Date: Mon Jul 30 19:02:46 2018 +0200
find-debuginfo.sh: sort output of find
to make build results more reproducible
in spite of indeterministic filesystem readdir order.
For openSUSE, this helped to make squid, openssh, postfix and shadow
packages build reproducibly.
See https://reproducible-builds.org/ for why this is good.
diff --git a/scripts/find-debuginfo.sh b/scripts/find-debuginfo.sh
index 44d164299..11397b7e8 100755
--- scripts/find-debuginfo.sh
+++ scripts/find-debuginfo.sh
@@ -487,7 +487,7 @@ fi
# Invoke the DWARF Compressor utility.
if $run_dwz \
&& [ -d "${RPM_BUILD_ROOT}/usr/lib/debug" ]; then
- readarray dwz_files < <(cd "${RPM_BUILD_ROOT}/usr/lib/debug"; find -type f -name \*.debug)
+ readarray dwz_files < <(cd "${RPM_BUILD_ROOT}/usr/lib/debug"; find -type f -name \*.debug | LC_ALL=C sort)
if [ ${#dwz_files[@]} -gt 0 ]; then
dwz_multifile_name="${RPM_PACKAGE_NAME}-${RPM_PACKAGE_VERSION}-${RPM_PACKAGE_RELEASE}.${RPM_ARCH}"
dwz_multifile_suffix=

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Aug 8 05:12:24 UTC 2018 - bwiedemann@suse.com
- Add reproducible-debuginfo.patch to generate debuginfo
in a reproducible way
-------------------------------------------------------------------
Fri Jul 20 13:15:28 CEST 2018 - mls@suse.de

View File

@ -121,6 +121,8 @@ Patch93: weakdepscompat.diff
Patch94: checksepwarn.diff
Patch99: enable-postin-scripts-error.diff
Patch100: rpm-findlang-inject-metainfo.patch
# https://github.com/rpm-software-management/rpm/pull/485
Patch101: reproducible-debuginfo.patch
Patch102: emptymanifest.diff
Patch103: find-lang-qt-qm.patch
Patch108: debugedit-macro.diff
@ -228,7 +230,7 @@ rm -f rpmdb/db.h
%patch -P 70 -P 71 -P 73 -P 74 -P 75 -P 77 -P 78
%patch -P 85
%patch -P 93 -P 94 -P 99
%patch -P 100 -P 102 -P 103 -P 108
%patch -P 100 -P 101 -P 102 -P 103 -P 108
%patch -P 109 -P 111 -P 112 -P 113 -P 114 -P 115 -P 116 -P 117
%ifarch aarch64 ppc64le riscv64