Notes for imath - reproducible builds result

Version annotated: 3.1.3-9
Identified issues:
Identifier: cmake_rpath_contains_build_path
URL https://gitlab.kitware.com/cmake/cmake/issues/18413
Description When an executable is linked with a shared library from the same project,
RPATH will contain the build path. Even if this is stripped on installation,
the build-id will remain unchanged.
.
With CMake 3.14+, packages can set `-DCMAKE_BUILD_RPATH_USE_ORIGIN=ON` to
fix the issue. This is done automatically when using the currently
experimental debhelper compat level v14.
https://cmake.org/cmake/help/latest/prop_tgt/BUILD_RPATH_USE_ORIGIN.html
.
When working with older CMake versions, the `CMAKE_SKIP_RPATH` option can be
enabled instead, but it may be required to also set `LD_LIBRARY_PATH` while
running tests.
Identifier: randomness_in_documentation_generated_by_sphinx
URL https://wiki.debian.org/ReproducibleBuilds/SphinxIssues
Description Sphinx might output references to memory addresses and generate a json index file
with entries in random order or with non-deterministic values (eg. searchindex.js).
See https://bugs.debian.org/822197 for memory address issue
.
searchindex.js needs sort_keys=True (jsonimpl.py) but the key values vary too.
Identifier: build_dir_in_documentation_generated_by_doxygen
Description If FULL_PATH_NAMES = YES, doxygen will include a build path into the
documentation based on dirname(1). (Can also include it via other means,
including generating SVG images with build paths)
Comments: Errors from the doxygen command are embedded in documentation,
including the build path. The searchindex.js embeds parts of the
build path as well.
 

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