Doxygen uses timestamps in manpages produced. See ReproducibleBuilds/TimestampsInDocumentationGeneratedByDoxygen for Doxygen's html output.

Known affected packages


Example debbindiff output


Timestamps can currently only be properly removed for HTML output.

Replace the timestamp (and strip the version while we are at it) in the man pages during package building with the timestamp of e.g. the debian/changelog entry. Example code from the brltty package in the build target:

# doxygen inserts the current time into all the man-pages it creates without
# a possibility to turn that off (AFAICT). So replacing the date with something
# more reasonable: the timestamp of the last Debian changelog entry.
sed --in-place -e \
                "s/\(.TH.* 3 \"\).*\(\" \"Version .*\)/\1$$(LC_ALL=C date --date='$(CL_DATE)' +'%a %b %d %Y')\2/" \

where CL_DATE is created first with:

CL_DATE=$(shell dpkg-parsechangelog --show-field=Date)


None yet.

Doxygen bug:

Upstream bug: