X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c801d85f158c4cba50b588807daabdcbd0ed3853..24b9f055150de329d1fb61df5ce8d14e6d657cd0:/src/png/pngconf.h?ds=inline diff --git a/src/png/pngconf.h b/src/png/pngconf.h index 675f292bab..028f2a1a70 100644 --- a/src/png/pngconf.h +++ b/src/png/pngconf.h @@ -1,12 +1,11 @@ /* pngconf.h - machine configurable file for libpng * - * libpng 1.0.1 + * libpng 1.0.3 - January 14, 1999 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc. * Copyright (c) 1996, 1997 Andreas Dilger - * Copyright (c) 1998, Glenn Randers-Pehrson - * March 15, 1998 + * Copyright (c) 1998, 1999 Glenn Randers-Pehrson */ /* Any machine specific code is near the front of this file, so if you @@ -18,6 +17,7 @@ #ifndef PNGCONF_H #define PNGCONF_H + /* This is the size of the compression buffer, and thus the size of * an IDAT chunk. Make this whatever size you feel is best for your * machine. One of these will be allocated per png_struct. When this @@ -47,16 +47,31 @@ #define PNG_MAX_MALLOC_64K #endif -/* This protects us against compilers which run on a windowing system +/* This protects us against compilers that run on a windowing system * and thus don't have or would rather us not use the stdio types: * stdin, stdout, and stderr. The only one currently used is stderr - * in png_error() and png_warning(). #defining PNG_NO_STDIO will - * prevent these from being compiled and used. + * in png_error() and png_warning(). #defining PNG_NO_CONSOLE_IO will + * prevent these from being compiled and used. #defining PNG_NO_STDIO + * will also prevent these, plus will prevent the entire set of stdio + * macros and functions (FILE *, printf, etc.) from being compiled and used, + * unless PNG_DEBUG has been #defined. + * + * #define PNG_NO_CONSOLE_IO * #define PNG_NO_STDIO */ -#ifndef PNG_NO_STDIO -#include +#ifdef PNG_DEBUG +# if (PNG_DEBUG > 0) +# include +# endif +#else +# ifdef PNG_NO_STDIO +# ifndef PNG_NO_CONSOLE_IO +# define PNG_NO_CONSOLE_IO +# endif +# else +# include +# endif #endif /* This macro protects us against machines that don't have function @@ -237,72 +252,139 @@ __dont__ include it again /* Any transformations you will not be using can be undef'ed here */ /* GR-P, 0.96a: Set "*TRANSFORMS_SUPPORTED as default but allow user - to turn it off with "*TRANSFORMS_NOT_SUPPORTED" on the compile line, - then pick and choose which ones to define without having to edit - this file. It is safe to use the *TRANSFORMS_NOT_SUPPORTED if you - only want to have a png-compliant reader/writer but don't need + to turn it off with "*TRANSFORMS_NOT_SUPPORTED" or *PNG_NO_*_TRANSFORMS + on the compile line, then pick and choose which ones to define without + having to edit this file. It is safe to use the *TRANSFORMS_NOT_SUPPORTED + if you only want to have a png-compliant reader/writer but don't need any of the extra transformations. This saves about 80 kbytes in a - typical installation of the library. + typical installation of the library. (PNG_NO_* form added in version + 1.0.1c, for consistency) */ -#ifndef PNG_READ_TRANSFORMS_NOT_SUPPORTED +#if !defined(PNG_READ_TRANSFORMS_NOT_SUPPORTED) && \ + !defined(PNG_NO_READ_TRANSFORMS) #define PNG_READ_TRANSFORMS_SUPPORTED #endif -#ifndef PNG_WRITE_TRANSFORMS_NOT_SUPPORTED +#if !defined(PNG_WRITE_TRANSFORMS_NOT_SUPPORTED) && \ + !defined(PNG_NO_WRITE_TRANSFORMS) #define PNG_WRITE_TRANSFORMS_SUPPORTED #endif #ifdef PNG_READ_TRANSFORMS_SUPPORTED +#ifndef PNG_NO_READ_EXPAND #define PNG_READ_EXPAND_SUPPORTED +#endif +#ifndef PNG_NO_READ_SHIFT #define PNG_READ_SHIFT_SUPPORTED +#endif +#ifndef PNG_NO_READ_PACK #define PNG_READ_PACK_SUPPORTED +#endif +#ifndef PNG_NO_READ_BGR #define PNG_READ_BGR_SUPPORTED +#endif +#ifndef PNG_NO_READ_SWAP #define PNG_READ_SWAP_SUPPORTED +#endif +#ifndef PNG_NO_READ_PACKSWAP #define PNG_READ_PACKSWAP_SUPPORTED +#endif +#ifndef PNG_NO_READ_INVERT #define PNG_READ_INVERT_SUPPORTED +#endif +#ifndef PNG_NO_READ_DITHER #define PNG_READ_DITHER_SUPPORTED +#endif +#ifndef PNG_NO_READ_BACKGROUND #define PNG_READ_BACKGROUND_SUPPORTED +#endif +#ifndef PNG_NO_READ_16_TO_8 #define PNG_READ_16_TO_8_SUPPORTED +#endif +#ifndef PNG_NO_READ_FILLER #define PNG_READ_FILLER_SUPPORTED +#endif +#ifndef PNG_NO_READ_GAMMA #define PNG_READ_GAMMA_SUPPORTED +#endif +#ifndef PNG_NO_READ_GRAY_TO_RGB #define PNG_READ_GRAY_TO_RGB_SUPPORTED +#endif +#ifndef PNG_NO_READ_SWAP_ALPHA #define PNG_READ_SWAP_ALPHA_SUPPORTED +#endif +#ifndef PNG_NO_READ_INVERT_ALPHA #define PNG_READ_INVERT_ALPHA_SUPPORTED +#endif +#ifndef PNG_NO_READ_STRIP_ALPHA #define PNG_READ_STRIP_ALPHA_SUPPORTED +#endif +#ifndef PNG_NO_READ_USER_TRANSFORM #define PNG_READ_USER_TRANSFORM_SUPPORTED -/* the following aren't implemented yet +#endif +#ifndef PNG_NO_READ_RGB_TO_GRAY #define PNG_READ_RGB_TO_GRAY_SUPPORTED - */ +#endif #endif /* PNG_READ_TRANSFORMS_SUPPORTED */ -#ifndef PNG_PROGRESSIVE_READ_NOT_SUPPORTED /* if you don't do progressive */ +#if !defined(PNG_NO_PROGRESSIVE_READ) && \ + !defined(PNG_PROGRESSIVE_READ_NOT_SUPPORTED) /* if you don't do progressive */ #define PNG_PROGRESSIVE_READ_SUPPORTED /* reading. This is not talking */ #endif /* about interlacing capability! You'll */ /* still have interlacing unless you change the following line: */ #define PNG_READ_INTERLACING_SUPPORTED /* required for PNG-compliant decoders */ + +#ifndef PNG_NO_READ_COMPOSITED_NODIV #define PNG_READ_COMPOSITE_NODIV_SUPPORTED /* well tested on Intel and SGI */ +#endif #ifdef PNG_WRITE_TRANSFORMS_SUPPORTED +#ifndef PNG_NO_WRITE_SHIFT #define PNG_WRITE_SHIFT_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_PACK #define PNG_WRITE_PACK_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_BGR #define PNG_WRITE_BGR_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_SWAP #define PNG_WRITE_SWAP_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_PACKSWAP #define PNG_WRITE_PACKSWAP_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_INVERT #define PNG_WRITE_INVERT_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_FILLER #define PNG_WRITE_FILLER_SUPPORTED /* This is the same as WRITE_STRIP_ALPHA */ -#define PNG_WRITE_FLUSH_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_SWAP_ALPHA #define PNG_WRITE_SWAP_ALPHA_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_INVERT_ALPHA #define PNG_WRITE_INVERT_ALPHA_SUPPORTED -#define PNG_WRITE_WEIGHTED_FILTER_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_USER_TRANSFORM #define PNG_WRITE_USER_TRANSFORM_SUPPORTED +#endif #endif /* PNG_WRITE_TRANSFORMS_SUPPORTED */ #define PNG_WRITE_INTERLACING_SUPPORTED /* not required for PNG-compliant encoders, but can cause trouble if left undefined */ -#if !defined(PNG_NO_STDIO) +#ifndef PNG_NO_WRITE_WEIGHTED_FILTER +#define PNG_WRITE_WEIGHTED_FILTER_SUPPORTED +#endif + +#ifndef PNG_NO_WRITE_FLUSH +#define PNG_WRITE_FLUSH_SUPPORTED +#endif + +#ifndef PNG_NO_STDIO #define PNG_TIME_RFC1123_SUPPORTED #endif @@ -322,7 +404,7 @@ __dont__ include it again * png_get_x_offset_microns() * png_get_y_offset_microns() */ -#if !defined(PNG_NO_EASY_ACCESS) +#ifndef PNG_NO_EASY_ACCESS #define PNG_EASY_ACCESS_SUPPORTED #endif @@ -331,6 +413,7 @@ __dont__ include it again /* very little testing */ /* #define PNG_READ_16_TO_8_ACCURATE_SCALE_SUPPORTED +#define PNG_USER_MEM_SUPPORTED */ /* This is only for PowerPC big-endian and 680x0 systems */ @@ -351,45 +434,100 @@ __dont__ include it again * a bit smaller. */ -#ifndef PNG_READ_ANCILLARY_CHUNKS_NOT_SUPPORTED +#if !defined(PNG_READ_ANCILLARY_CHUNKS_NOT_SUPPORTED) && \ + !defined(PNG_NO_READ_ANCILLARY_CHUNKS) #define PNG_READ_ANCILLARY_CHUNKS_SUPPORTED #endif -#ifndef PNG_WRITE_ANCILLARY_CHUNKS_NOT_SUPPORTED +#if !defined(PNG_WRITE_ANCILLARY_CHUNKS_NOT_SUPPORTED) && \ + !defined(PNG_NO_WRITE_ANCILLARY_CHUNKS) #define PNG_WRITE_ANCILLARY_CHUNKS_SUPPORTED #endif #ifdef PNG_READ_ANCILLARY_CHUNKS_SUPPORTED +#ifndef PNG_NO_READ_bKGD #define PNG_READ_bKGD_SUPPORTED +#endif +#ifndef PNG_NO_READ_cHRM #define PNG_READ_cHRM_SUPPORTED +#endif +#ifndef PNG_NO_READ_gAMA #define PNG_READ_gAMA_SUPPORTED +#endif +#ifndef PNG_NO_READ_hIST #define PNG_READ_hIST_SUPPORTED +#endif +#ifndef PNG_NO_READ_oFFs #define PNG_READ_oFFs_SUPPORTED +#endif +#ifndef PNG_NO_READ_pCAL #define PNG_READ_pCAL_SUPPORTED +#endif +#ifndef PNG_NO_READ_pHYs #define PNG_READ_pHYs_SUPPORTED +#endif +#ifndef PNG_NO_READ_sBIT #define PNG_READ_sBIT_SUPPORTED +#endif +#ifndef PNG_NO_READ_sRGB #define PNG_READ_sRGB_SUPPORTED +#endif +#ifndef PNG_NO_READ_tEXt #define PNG_READ_tEXt_SUPPORTED +#endif +#ifndef PNG_NO_READ_tIME #define PNG_READ_tIME_SUPPORTED +#endif +#ifndef PNG_NO_READ_tRNS #define PNG_READ_tRNS_SUPPORTED +#endif +#ifndef PNG_NO_READ_zTXt #define PNG_READ_zTXt_SUPPORTED +#endif +#ifndef PNG_NO_READ_OPT_PLTE #define PNG_READ_OPT_PLTE_SUPPORTED /* only affects support of the optional */ - /* PLTE chunk in RGB and RGBA images */ +#endif /* PLTE chunk in RGB and RGBA images */ #endif /* PNG_READ_ANCILLARY_CHUNKS_SUPPORTED */ #ifdef PNG_WRITE_ANCILLARY_CHUNKS_SUPPORTED +#ifndef PNG_NO_WRITE_bKGD #define PNG_WRITE_bKGD_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_cHRM #define PNG_WRITE_cHRM_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_gAMA #define PNG_WRITE_gAMA_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_hIST #define PNG_WRITE_hIST_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_oFFs #define PNG_WRITE_oFFs_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_pCAL #define PNG_WRITE_pCAL_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_pHYs #define PNG_WRITE_pHYs_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_sBIT #define PNG_WRITE_sBIT_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_sRGB #define PNG_WRITE_sRGB_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_tEXt #define PNG_WRITE_tEXt_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_tIME #define PNG_WRITE_tIME_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_tRNS #define PNG_WRITE_tRNS_SUPPORTED +#endif +#ifndef PNG_NO_WRITE_zTXt #define PNG_WRITE_zTXt_SUPPORTED +#endif #endif /* PNG_WRITE_ANCILLARY_CHUNKS_SUPPORTED */ /* need the time information for reading tIME chunks */ @@ -507,7 +645,7 @@ typedef char FAR * FAR * FAR * png_charppp; */ typedef charf * png_zcharp; typedef charf * FAR * png_zcharpp; -typedef z_stream FAR * png_zstreamp; +typedef z_stream FAR * png_zstreamp; /* allow for compilation as dll under MS Windows */ #ifdef __WIN32DLL__ @@ -539,6 +677,7 @@ typedef z_stream FAR * png_zstreamp; # define NOCHECK 0 # define CVT_PTR(ptr) (png_far_to_near(png_ptr,ptr,CHECK)) # define CVT_PTR_NOCHECK(ptr) (png_far_to_near(png_ptr,ptr,NOCHECK)) +# define png_strcpy _fstrcpy # define png_strlen _fstrlen # define png_memcmp _fmemcmp /* SJT: added */ # define png_memcpy _fmemcpy @@ -546,6 +685,7 @@ typedef z_stream FAR * png_zstreamp; #else /* use the usual functions */ # define CVT_PTR(ptr) (ptr) # define CVT_PTR_NOCHECK(ptr) (ptr) +# define png_strcpy strcpy # define png_strlen strlen # define png_memcmp memcmp /* SJT: added */ # define png_memcpy memcpy @@ -554,7 +694,7 @@ typedef z_stream FAR * png_zstreamp; /* End of memory model independent support */ /* Just a double check that someone hasn't tried to define something - * contradictory. + * contradictory. */ #if (PNG_ZBUF_SIZE > 65536) && defined(PNG_MAX_MALLOC_64K) #undef PNG_ZBUF_SIZE