This version of MinGW defines _SSIZE_T_ for ssize_t. This patch is
based on upstream libarchive SVN commit 3649 (Fix build with mingwrt
3.20, 2011-08-27).
Inspired-by: Tim Kientzle <kientzle@freebsd.org>
The commit "libarchive: Fix Borland integer constants" introduced use of
HAVE_* configured macros into archive.h and archive_entry.h where they
are not allowed. This commit replaces the logic with something that
does not depend on the configured macros.
Some versions of Borland provide <stdint.h>, so we use it when possible.
However, the 64-bit signed and unsigned integer min/max constants cause
overflow warnings from Borland itself! For these constants we fall back
on our default definitions.
This allows for a built in bzip and zip capability, so external tools
will not be needed for these packagers. The cmake -E tar xf should be
able to handle all compression types now as well.