forked from pool/python
Accepting request 478704 from home:bmwiedemann:reproducible:test
- Add reproducible.patch to allow reproducible builds of various python packages like python-amqp Upstream: https://github.com/python/cpython/pull/296 OBS-URL: https://build.opensuse.org/request/show/478704 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python?expand=0&rev=203
This commit is contained in:
parent
e76bc8d64f
commit
536145348f
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 24 17:08:25 UTC 2017 - bwiedemann@suse.com
|
||||||
|
|
||||||
|
- Add reproducible.patch to allow reproducible builds of various
|
||||||
|
python packages like python-amqp
|
||||||
|
Upstream: https://github.com/python/cpython/pull/296
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Jan 3 16:59:24 UTC 2017 - jmatejek@suse.com
|
Tue Jan 3 16:59:24 UTC 2017 - jmatejek@suse.com
|
||||||
|
|
||||||
|
@ -56,6 +56,8 @@ Patch34: python-2.7.9-sles-disable-verification-by-default.patch
|
|||||||
Patch35: python-ncurses-6.0-accessors.patch
|
Patch35: python-ncurses-6.0-accessors.patch
|
||||||
Patch36: python-2.7.13-overflow_check.patch
|
Patch36: python-2.7.13-overflow_check.patch
|
||||||
Patch37: python-2.7.12-makeopcode.patch
|
Patch37: python-2.7.12-makeopcode.patch
|
||||||
|
# PATCH-FIX-UPSTREAM bmwiedemann@suse.de -- allow python packages to build reproducibly
|
||||||
|
Patch38: reproducible.patch
|
||||||
# COMMON-PATCH-END
|
# COMMON-PATCH-END
|
||||||
%define python_version %(echo %{tarversion} | head -c 3)
|
%define python_version %(echo %{tarversion} | head -c 3)
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
@ -156,6 +158,7 @@ other applications.
|
|||||||
%patch35 -p1
|
%patch35 -p1
|
||||||
%patch36 -p1
|
%patch36 -p1
|
||||||
%patch37 -p1
|
%patch37 -p1
|
||||||
|
%patch38 -p1
|
||||||
|
|
||||||
# drop Autoconf version requirement
|
# drop Autoconf version requirement
|
||||||
sed -i 's/^version_required/dnl version_required/' configure.ac
|
sed -i 's/^version_required/dnl version_required/' configure.ac
|
||||||
|
@ -57,6 +57,8 @@ Patch34: python-2.7.9-sles-disable-verification-by-default.patch
|
|||||||
Patch35: python-ncurses-6.0-accessors.patch
|
Patch35: python-ncurses-6.0-accessors.patch
|
||||||
Patch36: python-2.7.13-overflow_check.patch
|
Patch36: python-2.7.13-overflow_check.patch
|
||||||
Patch37: python-2.7.12-makeopcode.patch
|
Patch37: python-2.7.12-makeopcode.patch
|
||||||
|
# PATCH-FIX-UPSTREAM bmwiedemann@suse.de -- allow python packages to build reproducibly
|
||||||
|
Patch38: reproducible.patch
|
||||||
# COMMON-PATCH-END
|
# COMMON-PATCH-END
|
||||||
Provides: pyth_doc
|
Provides: pyth_doc
|
||||||
Provides: pyth_ps
|
Provides: pyth_ps
|
||||||
@ -107,6 +109,7 @@ Python, and Macintosh Module Reference in PDF format.
|
|||||||
%patch35 -p1
|
%patch35 -p1
|
||||||
%patch36 -p1
|
%patch36 -p1
|
||||||
%patch37 -p1
|
%patch37 -p1
|
||||||
|
%patch38 -p1
|
||||||
|
|
||||||
# drop Autoconf version requirement
|
# drop Autoconf version requirement
|
||||||
sed -i 's/^version_required/dnl version_required/' configure.ac
|
sed -i 's/^version_required/dnl version_required/' configure.ac
|
||||||
|
@ -62,6 +62,8 @@ Patch34: python-2.7.9-sles-disable-verification-by-default.patch
|
|||||||
Patch35: python-ncurses-6.0-accessors.patch
|
Patch35: python-ncurses-6.0-accessors.patch
|
||||||
Patch36: python-2.7.13-overflow_check.patch
|
Patch36: python-2.7.13-overflow_check.patch
|
||||||
Patch37: python-2.7.12-makeopcode.patch
|
Patch37: python-2.7.12-makeopcode.patch
|
||||||
|
# PATCH-FIX-UPSTREAM bmwiedemann@suse.de -- allow python packages to build reproducibly
|
||||||
|
Patch38: reproducible.patch
|
||||||
# COMMON-PATCH-END
|
# COMMON-PATCH-END
|
||||||
BuildRequires: automake
|
BuildRequires: automake
|
||||||
BuildRequires: db-devel
|
BuildRequires: db-devel
|
||||||
@ -212,6 +214,7 @@ that rely on earlier non-verification behavior.
|
|||||||
%patch35 -p1
|
%patch35 -p1
|
||||||
%patch36 -p1
|
%patch36 -p1
|
||||||
%patch37 -p1
|
%patch37 -p1
|
||||||
|
%patch38 -p1
|
||||||
|
|
||||||
# drop Autoconf version requirement
|
# drop Autoconf version requirement
|
||||||
sed -i 's/^version_required/dnl version_required/' configure.ac
|
sed -i 's/^version_required/dnl version_required/' configure.ac
|
||||||
|
15
reproducible.patch
Normal file
15
reproducible.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
Index: Python-2.7.13/Lib/py_compile.py
|
||||||
|
===================================================================
|
||||||
|
--- Python-2.7.13.orig/Lib/py_compile.py
|
||||||
|
+++ Python-2.7.13/Lib/py_compile.py
|
||||||
|
@@ -108,6 +108,10 @@ def compile(file, cfile=None, dfile=None
|
||||||
|
timestamp = long(os.fstat(f.fileno()).st_mtime)
|
||||||
|
except AttributeError:
|
||||||
|
timestamp = long(os.stat(file).st_mtime)
|
||||||
|
+ sde = os.environ.get('SOURCE_DATE_EPOCH')
|
||||||
|
+ if sde and timestamp > int(sde):
|
||||||
|
+ timestamp = int(sde)
|
||||||
|
+ os.utime(file, (timestamp, timestamp))
|
||||||
|
codestring = f.read()
|
||||||
|
try:
|
||||||
|
codeobject = __builtin__.compile(codestring, dfile or file,'exec')
|
Loading…
x
Reference in New Issue
Block a user