Use AM_SILENT_RULES.

Without them or colorgcc, spotting warnings is next to impossible.
Drop checks useless on unsigned numbers.
Update m4 stuff from the autoconf archive.
A whitespace fix.
gitignore some new automake junk.
Drop an unused argument.
Fix uninitialized usage.
Hush warnings about missing fields in array end markers.
Fix using an unsigned type where a return value can be -1.

To make things worse, the check was >0.
Fix a harmless signed/unsigned mismatch.
.xz support.
Let building POD use AM_SILENT_RULES.
Drop an unused piece of autoconfage.
Move autoconf includes to a new dir m4/
Add .gz and .xz to the test suite.
Test .gz/.bz2/.xz separately.

So it's easier to tell which one failed.
Use threads rather than fork() on all platforms.
Automake options: use -Wall, package as .tar.xz rather than .tar.gz
Die if asprintf() fails.

It shouldn't on any modern system (OOM), but here you go, incessant warnings.
Ignore a bogus warning on write().