Description
Follow-up from #2825/#2828 and thoughts that came along: the make dist
archives (further verified by make distcheck
) identify source files to include into the archive by several means, including EXTRA_DIST
spelled out in Makefile.am
, template transformations in configure.ac
, and numerous *_SOURCE
, *_HEADERS
, *_DATA
etc. make variables used in the recipes.
In many cases, where optional builds are involved, we go the way of either declaring some files as sources for a program or library (or its certain optional feature), or explicitly EXTRA_DIST
'ing them.
If we miss some mark during such manual maintenance, it is potentially possible that a "dist" archive created from a build configuration without some optional build products would not include the sources needed to create those products on a more capable system.
This issue proposes a couple of checks:
configure --without-everything && make distcheck(-light)
to produce a dist archive with the possibly incomplete set of source files, and then try to build everything possible on the current system (to make sure we have the sources for that)- configure and create dist archives under various combinations of
--with-all
,--with-dev
,--with-docs
and specific features (may require dependencies to be installed on the agent doing this), unpack each into a separate directory, and verify that they have same contents.
This may be related to (solution automated along with) issue #1400