Quoting Paul Gevers (2022-10-13 10:00:42) > Please also consider supporting the nodoc build profile. We are aware > that nodoc is regularly used in a non-reproducible way (as intended, > but with this consequence), so checking for correctness of this > profile may be a bit harder. Ideally, using the profile would just > make documentation binaries virtually empty.
No. Ideally, using the nodoc profile would make documentation binaries not be
emitted at all. This then also makes checking for correctness a lot easier
because then all binary packages built with the nodoc profile will be
bit-by-bit identical if your source package builds reproducibly.
This can be achieved by adding this to the binary package stanza in d/control:
Package: foo-doc
Architecture: all
Build-Profiles: <!nodoc>
Then, in d/rules you can surround code that creates the foo-doc package with a
conditional like this one:
ifneq (,$(filter foo-doc,$(shell dh_listpackages)))
# do stuff needed to build foo-doc
endif
Using dh_listpackages you also automatically catch other cases in which foo-doc
might not get built other than the nodoc build profile being active, for
example for an arch:any-only build.
Also, do not forget to add the build dependencies necessary to build foo-doc to
Build-Depends-Indep instead of keeping them in Build-Depends if your foo-doc
package is Architecture:all.
Thanks!
cheers, josch
signature.asc
Description: signature

