Notes for sofia-sip - reproducible builds result

Version annotated: 1.12.11+20110422.1-2.1
Identified issues:
Identifier: nondeterministic_ordering_in_documentation_generated_by_doxygen
Description "Additional Inherited Members" has nondeterministic children in the (HTML?)
docs.
.
This can also happen when there is a real C function and a hash-define with
the same name. Doxygen sorts the member names but it only appears to use
the name so it is not stable relative to their type, resulting in
nondeterministic output.
.
MemberNameSDict::compareValues in doxygen's membername.cpp is suspicious.
Identifier: build_path_in_include_graphs_generated_by_doxygen
Description INCLUDE_GRAPHS generates a PNG (or similar) to represent the dependencies
between header files. However, these can include the full path of some
header files.
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)
Identifier: gcc_captures_build_path
Description Captures build path, e.g., /build/1st/foo-42.0 v. /build/foo-42.0/2nd
Currently we vary the build path only when testing packages from unstable
and experimental, for testing and stable we recommend that rebuilds
are done in the same path as the original build.
.
dpkg-buildflags version 1.20.6+ sets -ffile-prefix-map by default
(and -fdebug-prefix-map in older versions) which fixes this issue
in many cases, but not all (see: records_build_flags).
.
There are patches submitted upstream to address this specific issue, but they
are unlikely to be merged at this point:
.
https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00513.html
.
When this is accepted into GCC upstream, we could remove this note.
In the meantime, please do not remove this issue, nor mark it as deterministic,
nor untag these packages.
Bugs noted: 984845+: "sofia-sip: reproducible builds: Embeds build path in binaries"
 

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