Accepting request 626807 from devel:libraries:c_c++

OBS-URL: https://build.opensuse.org/request/show/626807
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libdnet?expand=0&rev=22
This commit is contained in:
Dominique Leuenberger 2018-08-03 10:35:32 +00:00 committed by Git OBS Bridge
commit df396a753f
3 changed files with 37 additions and 0 deletions

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Aug 1 04:22:18 UTC 2018 - bwiedemann@suse.com
- Add reproducible.patch to sort linked .o files
to make package build reproducible (boo#1041090)
-------------------------------------------------------------------
Tue Jul 25 00:45:47 UTC 2017 - jengelh@inai.de

View File

@ -31,6 +31,7 @@ Patch1: libdnet-config-multilib.patch
# PATCH-FIX-UPSTREAM: do include string.h when needed, this is autogenerated
# file which can't be generated with today tools :(
Patch2: libdnet-fortify.patch
Patch3: reproducible.patch
BuildRequires: libbsd-devel
BuildRequires: libtool
BuildRequires: python-devel
@ -88,6 +89,7 @@ Dnet library Python 2 bindings.
%patch0
%patch1
%patch2 -p1
%patch3 -p1
%build
ACLOCAL="aclocal -I config" autoreconf -fvi

29
reproducible.patch Normal file
View File

@ -0,0 +1,29 @@
Author: Bernhard M. Wiedemann <bwiedemann suse de>
Date: 2017-09-02
https://github.com/dugsong/libdnet/pull/42
https://bugzilla.opensuse.org/show_bug.cgi?id=1041090
sort linker file list
so that dnet.so builds in a reproducible way
in spite of indeterministic filesystem readdir order
and http://bugs.python.org/issue30461
See https://reproducible-builds.org/ for why this is good.
This allows the libdnet package in openSUSE Tumbleweed
to produce identical rpms on different builds.
Index: libdnet-libdnet-1.12/python/setup.py.in
===================================================================
--- libdnet-libdnet-1.12.orig/python/setup.py.in
+++ libdnet-libdnet-1.12/python/setup.py.in
@@ -20,7 +20,7 @@ else:
# XXX - can't build on Cygwin+MinGW yet.
#if sys.platform == 'cygwin':
# dnet_extargs.append('-mno-cygwin')
- dnet_extobj.extend(glob.glob('@top_builddir@/src/.libs/*.o'))
+ dnet_extobj.extend(sorted(glob.glob('@top_builddir@/src/.libs/*.o')))
dnet = Extension('dnet',
dnet_srcs,