To build, simply run configure from the source directory by
specifying its path. That path will be used to find the source
files. The source directory will not be touched. All new and
modified files will be made in the current directory. Discovered
in the process that not all makes understand % or $<, and not all
compilers understand -include or -I-. This required a larger
Makefile.in with explicit dependencies.
Add a cover target in Makefile and the test/infcover.c test program
to cover all of the code lines in the inf*.c source files. The
coverage is run with memory allocation checking in order to expose
memory leaks. The coverage testing is run using:
./configure --cover && make cover
This adds the -fprofile-arcs and -ftest-coverage options when compiling
the source code for the static library. Those same options must then be
used when linking the static library into an executable. This updates
Makefile.in to remove and .gitignore to ignore the files generated when
testing coverage.
A common request has been the ability to compile zlib to require no
other libraries. This --solo option provides that ability. The price
is that the gz*, compress*, and uncompress functions are eliminated,
and that the user must provide memory allocation and free routines to
deflate and inflate when initializing.
The DESTDIR should not be encoded into symlinks as it is only a
temporary path. Further, since we install the symlinks into the
same dir as the files, let's use relative links so that they can
always resolve.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Also added "-motley" to ZLIB_VERSION in zlib.h, so that versions
in-between 1.2.5.1 and 1.2.5.2 that are pulled down from github
can be identified as such if bugs are reported on them.