aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/deterministic-build.patch
diff options
context:
space:
mode:
authorMx Kookie <kookie@spacekookie.de>2020-10-31 19:35:09 +0100
committerMx Kookie <kookie@spacekookie.de>2020-10-31 19:35:09 +0100
commitc4625b175f8200f643fd6e11010932ea44c78433 (patch)
treebce3f89888c8ac3991fa5569a878a9eab6801ccc /infra/libkookie/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/deterministic-build.patch
parent49f735974dd103039ddc4cb576bb76555164a9e7 (diff)
parentd661aa56a8843e991261510c1bb28fdc2f6975ae (diff)
Add 'infra/libkookie/' from commit 'd661aa56a8843e991261510c1bb28fdc2f6975ae'
git-subtree-dir: infra/libkookie git-subtree-mainline: 49f735974dd103039ddc4cb576bb76555164a9e7 git-subtree-split: d661aa56a8843e991261510c1bb28fdc2f6975ae
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/deterministic-build.patch')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/deterministic-build.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/deterministic-build.patch b/infra/libkookie/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/deterministic-build.patch
new file mode 100644
index 000000000000..98d9d339fa11
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/deterministic-build.patch
@@ -0,0 +1,36 @@
+diff -ur orig/Lib/py_compile.py new/Lib/py_compile.py
+--- orig/Lib/py_compile.py
++++ new/Lib/py_compile.py
+@@ -122,7 +122,10 @@
+ cfile = file + (__debug__ and 'c' or 'o')
+ with open(cfile, 'wb') as fc:
+ fc.write('\0\0\0\0')
+- wr_long(fc, timestamp)
++ if "DETERMINISTIC_BUILD" in os.environ:
++ fc.write('\0\0\0\0')
++ else:
++ wr_long(fc, timestamp)
+ marshal.dump(codeobject, fc)
+ fc.flush()
+ fc.seek(0, 0)
+diff -ur orig/Python/import.c new/Python/import.c
+--- orig/Python/import.c
++++ new/Python/import.c
+@@ -939,10 +939,12 @@
+ return;
+ }
+ /* Now write the true mtime (as a 32-bit field) */
+- fseek(fp, 4L, 0);
+- assert(mtime <= 0xFFFFFFFF);
+- PyMarshal_WriteLongToFile((long)mtime, fp, Py_MARSHAL_VERSION);
+- fflush(fp);
++ if (Py_GETENV("DETERMINISTIC_BUILD") == NULL) {
++ fseek(fp, 4L, 0);
++ assert(mtime <= 0xFFFFFFFF);
++ PyMarshal_WriteLongToFile((long)mtime, fp, Py_MARSHAL_VERSION);
++ fflush(fp);
++ }
+ fclose(fp);
+ if (Py_VerboseFlag)
+ PySys_WriteStderr("# wrote %s\n", cpathname);
+