This patch modifies src/leveldb/build_detect_platform to ensure that the sorted PORTABLE_FILES is collated in a canonical order and hence varying locale collation order will not cause generated objects to vary. Patch due to Reiner Herrmann from Debian's reproducible build project.
leveldb: generate lib independent of locale sort #8575
pull ajtowns wants to merge 1 commits into bitcoin:master from ajtowns:leveldb-locale-reproducible changing 1 files +1 −1-
ajtowns commented at 10:00 AM on August 24, 2016: member
-
4706f507aa
leveldb: generate lib independent of locale sort
This patch modifies src/leveldb/build_detect_platform to ensure that the sorted PORTABLE_FILES is collated in a canonical order and hence varying locale collation order will not cause generated objects to vary. Patch due to Reiner Herrmann from Debian's reproducible build project.
- MarcoFalke added the label Upstream on Aug 24, 2016
-
ajtowns commented at 10:03 AM on August 24, 2016: member
This patch is applied in the 0.12.1 and 0.13.0 builds I've done in Debian. The corresponding Debian bug report is at https://bugs.debian.org/791834 and reproducible build history is at https://tests.reproducible-builds.org/debian/history/bitcoin.html
Debian patch as applied can be seen at either:
http://sources.debian.net/src/bitcoin/0.12.1-0.1/debian/patches/1008_reproducible_build.patch http://sources.debian.net/src/bitcoin/0.13.0-0.1~exp1/debian/patches/1008_reproducible_build.patch
-
laanwj commented at 8:58 AM on August 25, 2016: member
I'm not sure how to handle this. As said, for 0.13 we don't specifically need it, and 0.12 likely won't get a leveldb subtree update anymore. However, merging this directly into the 0.12 branch is going to mess up future subtree updates if we do happen to need one.
In any case I think it would make sense to get this into upstream leveldb at https://github.com/google/leveldb.
-
sipa commented at 9:31 AM on August 25, 2016: member
Agree, I think you should propose this for upstream. If it goes in there, we'll include it in the next subtree update, but even then, that's unlikely to go in 0.12, which is the only place where it would matter.
-
ajtowns commented at 9:50 AM on August 27, 2016: member
If this isn't useful for master or 0.13, it doesn't seem worth worrying about? Given how long https://github.com/google/leveldb/pull/291 has been open, upstreaming doesn't seem likely...
- ajtowns closed this on Aug 27, 2016
- ajtowns referenced this in commit c7557ee988 on Oct 21, 2016
- MarcoFalke locked this on Sep 8, 2021