Browse Source

lang/python/python-package-install.sh: assign SOURCE_DATE_EPOCH to PYTHONHASHSEED

Following a discussion on bugs.python.org:
* https://bugs.python.org/issue29708
* https://bugs.python.org/msg313384

It seems that setting a fixed value to PYTHONHASHSEED guarantees that
the bytecodes are generated consistently/in a reproducible manner.

Hopefully, this is the last bit to make Python3 build reproducible.
Tested this locally on a few files [that were not reproducible without
this change].

The PYTHONHASHSEED is only assigned to the host Python/Python3 during
compilation of byte-codes [from python source].

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
lilik-openwrt-22.03
Alexandru Ardelean 7 years ago
parent
commit
f53904ebda
1 changed files with 5 additions and 0 deletions
  1. +5
    -0
      lang/python/python-package-install.sh

+ 5
- 0
lang/python/python-package-install.sh View File

@ -1,6 +1,11 @@
#!/bin/sh #!/bin/sh
set -e set -e
[ -z "$SOURCE_DATE_EPOCH" ] || {
PYTHONHASHSEED="$SOURCE_DATE_EPOCH"
export PYTHONHASHSEED
}
process_filespec() { process_filespec() {
local src_dir="$1" local src_dir="$1"
local dst_dir="$2" local dst_dir="$2"


Loading…
Cancel
Save