Notes for php7.4 - reproducible builds result

Version annotated: 7.4.1-1
Identified issues:
Identifier: paths_vary_due_to_usrmerge
Description eg. /bin/ vs /usr/bin/ or /lib vs. /usr/lib
Identifier: user_hostname_manually_added_requiring_further_investigation
Description Packages which intentionally capture the username or hostname into a custom format,
but aren't obviously using any tool or system which has this as a core issue.
Interesting because they could be fixed by fixing these things at build time.
Identifier: captures_kernel_version
Description Stores the kernel version (uname -a, /proc/version, etc.) output, normally for debugging purposes.
.
Sub-issue: captures_kernel_version_via_CMAKE_SYSTEM
Identifier: test_suite_logs
Description Package embeds test suite logs, which may include a variety of
issues such as timestamps, timing information, kernel, username,
hostname, etc.
Identifier: records_build_flags
Description Records $CFLAGS, which vary intentionally due to the «-fdebug-prefix-map=${BUILDPATH}=.»,
«-ffile-prefix-map=${BUILDPATH}=.» or «-fmacro-prefix-map=${BUILDPATH}=.» flags.
.
We have a patch pending to GCC to fix this issue centrally:
.
https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00182.html
.
Though the patch is currently unlikely to be merged. If/when this
is accepted, this issue should be fixed for all packages and you
should not need to fix it specifically in your package.
.
There is also a work-in-progress patch to dpkg that could address this issue:
.
https://bugs.debian.org/985553
.
For more background information see:
.
• https://alioth-lists.debian.net/pipermail/reproducible-builds/Week-of-Mon-20160822/006788.html
• https://alioth-lists.debian.net/pipermail/reproducible-builds/Week-of-Mon-20160905/006984.html
• https://alioth-lists.debian.net/pipermail/reproducible-builds/Week-of-Mon-20160912/007076.html
Bugs noted: 991154
Comments: Testsuite results require sanitisation of hostname, build paths, timestamps, etc.
 

Our notes about issues affecting packages are stored in notes.git and are targeted at packages in Debian in 'unstable/amd64' (unless they say otherwise).