Notes for proj - reproducible builds result

Version annotated: 4.9.3-1
Identified issues:
Identifier: graphviz_nondeterministic_output
Description graphviz appears to use a non-deterministic algorithm to optimally lay out
notes optimally. This can appear in class hierarchy documentation, etc. Can
presumably affect images of all complexity but, obviously, more likely to
affect images with lots of nodes.
.
see https://twitter.com/Graphviz/status/1039632469782396929
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: captures_kernel_variant
Description Similar to captures_kernel_version, but specifically refers to capturing
x86_64 vs i686. This can (currently) happen when testing the i386
architecture as we use a 64-bit kernel with a 32-bit Debian userland.
.
Notably, we do not use `linux32` to emulate the 32 bit personality when
running those builds, as normally this hides packages that are making use of
`uname` to detect the host architecture when they really should not.
Comments: rpath issue fixed by -DCMAKE_BUILD_RPATH_USE_ORIGIN=ON
.
Captures the kernel architecture in various
proj*-config-version.cmake files.
 

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