[libpng16]Check ZLIB_VERNUM for mismatches, enclose #error in quotes

This commit is contained in:
John Bowler 2013-05-08 14:35:21 -05:00 committed by Glenn Randers-Pehrson
parent 9afb90f885
commit 122bec17f2
4 changed files with 22 additions and 2 deletions

View File

@ -71,6 +71,7 @@ Version 1.6.3beta05 [May 8, 2013]
invalid values.
Attempt to detect configuration issues with pngdeflate, which requires
both the correct libpng and the correct zlib to function correctly.
Check ZLIB_VERNUM for mismatches, enclose #error in quotes
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit

View File

@ -4554,6 +4554,7 @@ Version 1.6.3beta05 [May 8, 2013]
invalid values.
Attempt to detect configuration issues with pngdeflate, which requires
both the correct libpng and the correct zlib to function correctly.
Check ZLIB_VERNUM for mismatches, enclose #error in quotes
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit

View File

@ -26,14 +26,14 @@
#endif
#if PNG_LIBPNG_VER < 10603 /* 1.6.3 */
# error pngdeflate will not work with libpng versions prior to 1.6.3
# error "pngdeflate will not work with libpng versions prior to 1.6.3"
#endif
#ifdef PNG_READ_SUPPORTED
#include <zlib.h>
#ifndef PNG_MAXIMUM_INFLATE_WINDOW
# error pngdeflate not supported in this libpng version
# error "pngdeflate not supported in this libpng version"
#endif
#if PNG_ZLIB_VERNUM >= 0x1240

View File

@ -694,6 +694,24 @@
#include "pngstruct.h"
#include "pnginfo.h"
/* Validate the include paths - the include path used to generate pnglibconf.h
* must match that used in the build, or we must be using pnglibconf.h.prebuilt:
*/
#if PNG_ZLIB_VERNUM != 0 && PNG_ZLIB_VERNUM != ZLIB_VERNUM
# error ZLIB_VERNUM != PNG_ZLIB_VERNUM \
"-I (include path) error: see the notes in pngpriv.h"
/* This means that when pnglibconf.h was built the copy of zlib.h that it
* used is not the same as the one being used here. Because the build of
* libpng makes decisions to use inflateInit2 and inflateReset2 based on the
* zlib version number and because this affects handling of certain broken
* PNG files the -I directives must match.
*
* The most likely explanation is that you passed a -I in CFLAGS, this will
* not work; all the preprocessor directories and in particular all the -I
* directives must be in CPPFLAGS.
*/
#endif
/* This is used for 16 bit gamma tables -- only the top level pointers are
* const; this could be changed:
*/