[devel] Don't include standard header files in png.h while building the symbol

table, to avoid cpp failure on SunOS (introduced PNG_BUILDING_SYMBOL_TABLE
macro).
This commit is contained in:
Glenn Randers-Pehrson 2011-03-24 23:06:26 -05:00
parent 77fd083041
commit 80de04e560
6 changed files with 42 additions and 31 deletions

View File

@ -1,5 +1,5 @@
Libpng 1.5.2rc03 - March 24, 2011 Libpng 1.5.2rc03 - March 25, 2011
This is not intended to be a public release. It will be replaced This is not intended to be a public release. It will be replaced
within a few weeks by a public version or by another test version. within a few weeks by a public version or by another test version.
@ -64,7 +64,9 @@ Version 1.5.2rc02 [March 22, 2011]
Fixed a bug (present since libpng-1.0.7) that makes png_handle_sPLT() fail Fixed a bug (present since libpng-1.0.7) that makes png_handle_sPLT() fail
to compile when PNG_NO_POINTER_INDEXING is defined (Chubanov Kirill) to compile when PNG_NO_POINTER_INDEXING is defined (Chubanov Kirill)
Version 1.5.2rc03 [March 24, 2011] Version 1.5.2rc03 [March 25, 2011]
Don't include standard header files in png.h while building the symbol table,
to avoid cpp failure on SunOS (introduced PNG_BUILDING_SYMBOL_TABLE macro).
Send comments/corrections/commendations to png-mng-implement at lists.sf.net: Send comments/corrections/commendations to png-mng-implement at lists.sf.net:
(subscription required; visit (subscription required; visit

View File

@ -3280,7 +3280,9 @@ Version 1.5.2rc02 [March 22, 2011]
Fixed a bug (present since libpng-1.0.7) that makes png_handle_sPLT() fail Fixed a bug (present since libpng-1.0.7) that makes png_handle_sPLT() fail
to compile when PNG_NO_POINTER_INDEXING is defined (Chubanov Kirill) to compile when PNG_NO_POINTER_INDEXING is defined (Chubanov Kirill)
Version 1.5.2rc03 [March 24, 2011] Version 1.5.2rc03 [March 25, 2011]
Don't include standard header files in png.h while building the symbol table,
to avoid cpp failure on SunOS (introduced PNG_BUILDING_SYMBOL_TABLE macro).
Send comments/corrections/commendations to png-mng-implement at lists.sf.net Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit (subscription required; visit

View File

@ -124,7 +124,7 @@ pngvalid.o pngtest.o: pnglibconf.h
SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\ SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\
-DPNGLIB_VERSION='@PNGLIB_VERSION@'\ -DPNGLIB_VERSION='@PNGLIB_VERSION@'\
-DSYMBOL_PREFIX='$(SYMBOL_PREFIX)'\ -DSYMBOL_PREFIX='$(SYMBOL_PREFIX)'\
-DPNG_NO_USE_READ_MACROS -DPNG_NO_USE_READ_MACROS -DPNG_BUILDING_SYMBOL_TABLE
.dfn.out: .dfn.out:
rm -f $@ dfn.c dfn?.out rm -f $@ dfn.c dfn?.out

View File

@ -362,7 +362,7 @@ SUFFIXES = .chk .dfn .out
SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\ SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\
-DPNGLIB_VERSION='@PNGLIB_VERSION@'\ -DPNGLIB_VERSION='@PNGLIB_VERSION@'\
-DSYMBOL_PREFIX='$(SYMBOL_PREFIX)'\ -DSYMBOL_PREFIX='$(SYMBOL_PREFIX)'\
-DPNG_NO_USE_READ_MACROS -DPNG_NO_USE_READ_MACROS -DPNG_BUILDING_SYMBOL_TABLE
all: config.h all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-am $(MAKE) $(AM_MAKEFLAGS) all-am

37
png.h
View File

@ -1,7 +1,7 @@
/* png.h - header file for PNG reference library /* png.h - header file for PNG reference library
* *
* libpng version 1.5.2rc03 - March 24, 2011 * libpng version 1.5.2rc03 - March 25, 2011
* Copyright (c) 1998-2011 Glenn Randers-Pehrson * Copyright (c) 1998-2011 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
@ -11,7 +11,7 @@
* Authors and maintainers: * Authors and maintainers:
* libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat
* libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger * libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger
* libpng versions 0.97, January 1998, through 1.5.2rc03 - March 24, 2011: Glenn * libpng versions 0.97, January 1998, through 1.5.2rc03 - March 25, 2011: Glenn
* See also "Contributing Authors", below. * See also "Contributing Authors", below.
* *
* Note about libpng version numbers: * Note about libpng version numbers:
@ -180,7 +180,7 @@
* *
* This code is released under the libpng license. * This code is released under the libpng license.
* *
* libpng versions 1.2.6, August 15, 2004, through 1.5.2rc03, March 24, 2011, are * libpng versions 1.2.6, August 15, 2004, through 1.5.2rc03, March 25, 2011, are
* Copyright (c) 2004, 2006-2011 Glenn Randers-Pehrson, and are * Copyright (c) 2004, 2006-2011 Glenn Randers-Pehrson, and are
* distributed according to the same disclaimer and license as libpng-1.2.5 * distributed according to the same disclaimer and license as libpng-1.2.5
* with the following individual added to the list of Contributing Authors: * with the following individual added to the list of Contributing Authors:
@ -292,7 +292,7 @@
* Y2K compliance in libpng: * Y2K compliance in libpng:
* ========================= * =========================
* *
* March 24, 2011 * March 25, 2011
* *
* Since the PNG Development group is an ad-hoc body, we can't make * Since the PNG Development group is an ad-hoc body, we can't make
* an official declaration. * an official declaration.
@ -356,7 +356,7 @@
/* Version information for png.h - this should match the version in png.c */ /* Version information for png.h - this should match the version in png.c */
#define PNG_LIBPNG_VER_STRING "1.5.2rc03" #define PNG_LIBPNG_VER_STRING "1.5.2rc03"
#define PNG_HEADER_VERSION_STRING \ #define PNG_HEADER_VERSION_STRING \
" libpng version 1.5.2rc03 - March 24, 2011\n" " libpng version 1.5.2rc03 - March 25, 2011\n"
#define PNG_LIBPNG_VER_SONUM 15 #define PNG_LIBPNG_VER_SONUM 15
#define PNG_LIBPNG_VER_DLLNUM 15 #define PNG_LIBPNG_VER_DLLNUM 15
@ -407,18 +407,23 @@
#endif #endif
#ifndef PNG_VERSION_INFO_ONLY #ifndef PNG_VERSION_INFO_ONLY
/* Standard header files (not needed for the version info) */ # ifndef PNG_BUILDING_SYMBOL_TABLE
# ifdef PNG_SETJMP_SUPPORTED /*
# include <setjmp.h> * Standard header files (not needed for the version info or while
# endif * building symbol table -- see scripts/pnglibconf.dfa)
*/
# ifdef PNG_SETJMP_SUPPORTED
# include <setjmp.h>
# endif
/* Need the time information for converting tIME chunks, it /* Need the time information for converting tIME chunks, it
* defines struct tm: * defines struct tm:
*/ */
#ifdef PNG_CONVERT_tIME_SUPPORTED # ifdef PNG_CONVERT_tIME_SUPPORTED
/* "time.h" functions are not supported on all operating systems */ /* "time.h" functions are not supported on all operating systems */
# include <time.h> # include <time.h>
#endif # endif
# endif
/* Machine specific configuration. */ /* Machine specific configuration. */
# include "pngconf.h" # include "pngconf.h"

View File

@ -22,29 +22,31 @@
#ifndef PNGCONF_H #ifndef PNGCONF_H
#define PNGCONF_H #define PNGCONF_H
#ifndef PNG_BUILDING_SYMBOL_TABLE
/* PNG_NO_LIMITS_H may be used to turn off the use of the standard C /* PNG_NO_LIMITS_H may be used to turn off the use of the standard C
* definition file for machine specific limits, this may impact the * definition file for machine specific limits, this may impact the
* correctness of the definitons below (see uses of INT_MAX). * correctness of the definitons below (see uses of INT_MAX).
*/ */
#ifndef PNG_NO_LIMITS_H # ifndef PNG_NO_LIMITS_H
# include <limits.h> # include <limits.h>
#endif # endif
/* For the memory copy APIs (i.e. the standard definitions of these), /* For the memory copy APIs (i.e. the standard definitions of these),
* because this file defines png_memcpy and so on the base APIs must * because this file defines png_memcpy and so on the base APIs must
* be defined here. * be defined here.
*/ */
#ifdef BSD # ifdef BSD
# include <strings.h> # include <strings.h>
#else # else
# include <string.h> # include <string.h>
#endif # endif
/* For png_FILE_p - this provides the standard definition of a /* For png_FILE_p - this provides the standard definition of a
* FILE * FILE
*/ */
#ifdef PNG_STDIO_SUPPORTED # ifdef PNG_STDIO_SUPPORTED
# include <stdio.h> # include <stdio.h>
# endif
#endif #endif
/* This controls optimization of the reading of 16 and 32 bit values /* This controls optimization of the reading of 16 and 32 bit values