Notes for insighttoolkit5 - reproducible builds result

Version annotated: 5.2.1-2
Identified issues:
Identifier: timestamps_in_cmake
Description Timestamps generated by cmake TIMESTAMP function respect
SOURCE_DATE_EPOCH, but use the local timezone. In CMakeLists.txt,
uses of the TIMESTAMP function need to specify the timezone as
UTC:
.
string(TIMESTAMP CURRENT_TIME "%Y-%m-%d" UTC)
.
Likely affected packages:
https://codesearch.debian.net/search?q=string%5C%28TIMESTAMP.*%5B%5EU%5D%5B%5ET%5D%5B%5EC%5D%5C%29&literal=0
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
Comments: uses cmake TIMESTAMP without specifying UTC timezone
Modules/Core/Common/src/CMakeLists.txt:string(TIMESTAMP CONFIGURE_DATE "%Y-%m-%d %H:%M")
Build path captured via *FLAGS and also in CMakeLists.txt via ITK_SOURCE_DIR.
 

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).