Notes for ffmpeg - reproducible builds result

Version annotated: 7:4.3.2-0+deb11u1
Identified issues:
Identifier: 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.
This issue is only for miscellaneous issues which need individual fixes,
please create new issues for specific issues, e.g. gcc_captures_build_path.
Here follows some general tips for packages using the standard GNU toolchain:
If using autoconf, make sure you call ./configure via a relative and not absolute path.
If your issue is related to using the `__FILE__` macro, or the recording of
--debug-prefix-map flags in non-GCC non-debugging output, this is what is
fixed by our patch mentioned above; you should not need to fix it
specifically in your package.
For more background information see:
Identifier: nondeterministic_ordering_in_documentation_generated_by_doxygen
Description "Additional Inherited Members" has nondeterministic children in the (HTML?)
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.
Bugs noted: 985187+: "ffmpeg: reproducible builds: Embeds build path in binaries generated with cl2c"
Comments: Embeds build paths using tools/cl2c. Passing --disable-asm on
i386/amd64 to configure fixes other build path issues. Some
locales (used by reprotest) may change the order of links in

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