13.3 The distcheck rule
make dist documentation sounds nice, and
make dist did
do something, but how do you know it really works? It is a terrible
feeling when you realize your carefully crafted distribution is missing
a file and won't compile on a user's machine.
I wouldn't write such an introduction unless Automake provided a
solution. The solution is a smoke test known as
This rule performs a
make dist as usual, but it doesn't stop
there. Instead, it then proceeds to untar the new archive into a fresh
directory, build it in a fresh build directory separate from the source
directory, install it into a third fresh directory, and finally run
make check in the build tree. If any step fails,
distcheck aborts, leaving you to fix the problem before it will
create a distribution.
While not a complete test -- it only tries one architecture, after all
distcheck nevertheless catches most packaging errors (as
opposed to portability bugs), and its use is highly recommended.