diff --git a/ANNOUNCE b/ANNOUNCE index c8cd5ccebc288dbcb0fbf3d2243d0edfa7015694..41a45d1ddbf47b5ef10978502dbd6d5fbe299e7f 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,30 +1,14 @@ -Libpng 1.2.0 - September 1, 2001 +Libpng 1.2.1beta1 - October 19, 2001 This is a public release of libpng, intended for use in production codes. -Changes since the last public release (1.0.12): +Changes since the last public release (1.2.0): - Enabled PNG_MNG_FEATURES_SUPPORTED and enabled PNG_ASSEMBLER_CODE_SUPPORTED - by default. - Added runtime selection of MMX features. - Added png_set_strip_error_numbers function and related macros. - Enabled user memory function by default. - Increased png_mng_features flag from png_byte to png_uint_32. - Bumped shared-library (so-number) and dll-number to 3. - Updated makefile.ibmc, makefile.gcmmx - Added some typecasts to eliminate gcc 3.0 warnings. Changed prototypes - of png_write_oFFS width and height from png_uint_32 to png_int_32. - Updated example.c - Revised prototypes for png_debug_malloc and png_debug_free in pngtest.c - Revised pnggccrd.c to conditionally compile some thread-unsafe code only - when PNG_THREAD_UNSAFE_OK is defined. - Added tests to prevent pngwutil.c from writing a bKGD or tRNS chunk with - value exceeding 2^bit_depth-1 - Removed restriction that do_invert_mono only operate on 1-bit opaque files - Replaced calls to fprintf(stderr,...) with png_warning() or png_debug() - in pnggccrd.c - Fixed contrib/gregbook/rpng-x.c, rpng2-x.c to avoid crash with XFreeGC(). + Revised makefile.std in contrib/pngminus + Include background_1 in png_struct regardless of gamma support. + Revised makefile.netbsd and makefile.macosx, added makefile.darwin. + Revised example.c to provide more details about using row_callback(). Send comments/corrections/commendations to png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu diff --git a/CHANGES b/CHANGES index fb6bc371c828c3d195c16ef7e0807f486dbc4400..f4fd1e5c837d31bb3d0701fd97989773d10f3927 100644 --- a/CHANGES +++ b/CHANGES @@ -733,10 +733,11 @@ version 1.0.6j [May 3, 2000] version 1.0.7beta11 [May 7, 2000] Removed the new PNG_CREATED_READ_STRUCT and PNG_CREATED_WRITE_STRUCT modes which are no longer used. - Eliminated the three new members of png_text when PNG_NO_iTXt_SUPPORTED - or PNG_LEGACY_SUPPORTED is defined. - Made PNG_NO_ITXT_SUPPORTED the default setting, to avoid memory overrun - when old applications fill the info_ptr->text structure directly. + Eliminated the three new members of png_text when PNG_LEGACY_SUPPORTED is + defined or when neither PNG_READ_iTXt_SUPPORTED nor PNG_WRITE_iTXT_SUPPORTED + is defined. + Made PNG_NO_READ|WRITE_iTXt the default setting, to avoid memory + overrun when old applications fill the info_ptr->text structure directly. Added PNGAPI macro, and added it to the definitions of all exported functions. Relocated version macro definitions ahead of the includes of zlib.h and pngconf.h in png.h. @@ -980,6 +981,11 @@ version 1.2.0beta5 [August 8, 2001] version 1.2.0 [September 1, 2001] Changed a png_warning() to png_debug() in pnggccrd.c Fixed contrib/gregbook/rpng-x.c, rpng2-x.c to avoid crash with XFreeGC(). +version 1.2.1beta1 [October 19, 2001] + Revised makefile.std in contrib/pngminus + Include background_1 in png_struct regardless of gamma support. + Revised makefile.netbsd and makefile.macosx, added makefile.darwin. + Revised example.c to provide more details about using row_callback(). Send comments/corrections/commendations to png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu diff --git a/INSTALL b/INSTALL index 4bac89c80cc1e866c95a6e18e67cd0c32595d5d2..69721184b20252bfe3e7345fee734c458d937eb6 100644 --- a/INSTALL +++ b/INSTALL @@ -1,5 +1,5 @@ -Installing libpng version 1.2.0 - September 1, 2001 +Installing libpng version 1.2.1beta1 - October 19, 2001 Before installing libpng, you must first install zlib. zlib can usually be found wherever you got libpng. zlib can be @@ -10,7 +10,7 @@ zlib.h and zconf.h include files that correspond to the version of zlib that's installed. You can rename the directories that you downloaded (they -might be called "libpng-1.2.0" or "lpng109" and "zlib-1.1.3" +might be called "libpng-1.2.1beta1" or "lpng109" and "zlib-1.1.3" or "zlib113") so that you have directories called "zlib" and "libpng". Your directory structure should look like this: @@ -64,8 +64,8 @@ The files that are presently available in the scripts directory include makefile.std => Generic UNIX makefile (cc, creates static libpng.a) - makefile.linux => Linux/ELF makefile (gcc, creates libpng.so.2.1.2.0) - makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng.so.2.1.2.0, + makefile.linux => Linux/ELF makefile (gcc, creates libpng.so.2.1.2.1beta1) + makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng.so.2.1.2.1beta1, uses assembler code tuned for Intel MMX platform) makefile.gcc => Generic makefile (gcc, creates static libpng.a) makefile.knr => Archaic UNIX Makefile that converts files with @@ -82,9 +82,9 @@ include makefile.macosx => MACOS X Makefile makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib) - makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.2.1.2.0) + makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.2.1.2.1beta1) makefile.sunos => Sun makefile - makefile.solaris => Solaris 2.X makefile (gcc, creates libpng.so.2.1.2.0) + makefile.solaris => Solaris 2.X makefile (gcc, creates libpng.so.2.1.2.1beta1) makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc makefile.mips => MIPS makefile makefile.acorn => Acorn makefile diff --git a/LICENSE b/LICENSE index 1f4a8bcd2e2aa7cb7db1a1a0adc596f7c06fe50d..4950f180d412e85cf2f9ef8bc8e57d1bc73773c9 100644 --- a/LICENSE +++ b/LICENSE @@ -8,7 +8,7 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: If you modify libpng you may insert additional notices immediately following this sentence. -libpng versions 1.0.7, July 1, 2000, through 1.2.0, September 1, 2001, are +libpng versions 1.0.7, July 1, 2000, through 1.2.1beta1, October 19, 2001, are Copyright (c) 2000 Glenn Randers-Pehrson and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors @@ -99,4 +99,4 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson randeg@alum.rpi.edu -September 1, 2001 +October 19, 2001 diff --git a/README b/README index 06f927865a5d71df917be79801a5ed7cba52541a..6b775f505cbec37b9a9d8244a730d1c93ca14b08 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -README for libpng 1.2.0 - September 1, 2001 (shared library 2.1) +README for libpng 1.2.1beta1 - October 19, 2001 (shared library 2.1) See the note about version numbers near the top of png.h See INSTALL for instructions on how to install libpng. @@ -187,9 +187,9 @@ Files in this distribution: descrip.mms => VMS makefile for MMS or MMK makefile.std => Generic UNIX makefile (cc, creates static libpng.a) makefile.linux => Linux/ELF makefile - (gcc, creates libpng.so.2.1.2.0) + (gcc, creates libpng.so.2.1.2.1beta1) makefile.gcmmx => Linux/ELF makefile (gcc, creates - libpng.so.2.1.2.0, uses assembler code + libpng.so.2.1.2.1beta1, uses assembler code tuned for Intel MMX platform) makefile.gcc => Generic makefile (gcc, creates static libpng.a) makefile.knr => Archaic UNIX Makefile that converts files with @@ -206,10 +206,10 @@ Files in this distribution: makefile.macosx => MACOS X Makefile makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD makefile.sgi => Silicon Graphics IRIX (cc, creates static lib) - makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.2.1.2.0) + makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.2.1.2.1beta1) makefile.sunos => Sun makefile makefile.solaris => Solaris 2.X makefile - (gcc, creates libpng.so.2.1.2.0) + (gcc, creates libpng.so.2.1.2.1beta1) makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc makefile.mips => MIPS makefile makefile.acorn => Acorn makefile diff --git a/Y2KINFO b/Y2KINFO index e3f91083fe3d58aa978139dcea46db6f61ca6e0b..e15ff9f6d04f5417136142201ebabad4f7b30344 100644 --- a/Y2KINFO +++ b/Y2KINFO @@ -1,13 +1,13 @@ Y2K compliance in libpng: ========================= - September 1, 2001 + October 19, 2001 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and - upward through 1.2.0 are Y2K compliant. It is my belief that earlier + upward through 1.2.1beta1 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has three year fields. One is a 2-byte unsigned integer diff --git a/configure b/configure index a469913b3adf0b87f305310a1815f4f1de8358f3..08b8b87ccbcd59bffe7c6b4cb603e24fb78606b5 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ echo " - There is no \"configure\" script for Libpng-1.2.0. Instead, please + There is no \"configure\" script for Libpng-1.2.1beta1. Instead, please copy the appropriate makefile for your system from the \"scripts\" directory. Read the INSTALL file for more details. " diff --git a/contrib/pngminus/makefile.std b/contrib/pngminus/makefile.std index c98cd640b5490dcfe8cb4f1fea967cfe24a08e7d..074047d6ff94248957aab2794c1d07f32756b0c7 100644 --- a/contrib/pngminus/makefile.std +++ b/contrib/pngminus/makefile.std @@ -1,26 +1,31 @@ # Makefile for PngMinus (png2pnm and pnm2png) # Linux / Unix -CC=cc -O -LD=cc -O -#CC=gcc -O -#LD=gcc -O -LB=ar -RM=rm -CP=cp - -PNGPATH = /usr/local -PNGINC = $(PNGPATH)/include -#PNGLIB = $(PNGPATH)/lib -lpng -PNGLIB = $(PNGPATH)/lib/libpng.a - -ZPATH = /usr/local -ZINC = $(ZPATH)/include -#ZLIB = $(ZPATH)/lib -lz -ZLIB = $(ZPATH)/lib/libz.a - -CCFLAGS=-I$(PNGINC) -I$(ZINC) -LDFLAGS=-L$(PNGLIB) -L$(ZLIB) +#CC=cc +CC=gcc +LD=$(CC) + +RM=rm -f + +#PNGPATH = /usr/local +#PNGINC = -I$(PNGPATH)/include +#PNGLIB = -L$(PNGPATH)/lib -lpng +#PNGLIBS = $(PNGPATH)/lib/libpng.a +PNGINC = -I../.. +PNGLIB = -L../.. -lpng +PNGLIBS = ../../libpng.a + +#ZPATH = /usr/local +#ZINC = -I$(ZPATH)/include +#ZLIB = -L$(ZPATH)/lib -lz +#ZLIBS = $(ZPATH)/lib/libz.a +ZINC = -I../../../zlib +ZLIB = -L../../../zlib -lz +ZLIBS = ../../../zlib/libz.a + +CFLAGS=-O3 $(PNGINC) $(ZINC) +LDFLAGS=$(PNGLIB) $(ZLIB) +LDFLAGSS=$(PNGLIBS) $(ZLIBS) C=.c O=.o L=.a @@ -28,25 +33,33 @@ E= # dependencies -all: png2pnm$(E) pnm2png$(E) +#all: png2pnm$(E) pnm2png$(E) +all: png2pnm$(E) pnm2png$(E) png2pnm-static$(E) pnm2png-static$(E) png2pnm$(O): png2pnm$(C) - $(CC) -c $(CCFLAGS) png2pnm$(C) + $(CC) -c $(CFLAGS) png2pnm$(C) png2pnm$(E): png2pnm$(O) - $(LD) -o png2pnm$(E) png2pnm$(O) $(LDFLAGS) -lpng -lz -lm + $(LD) -o png2pnm$(E) png2pnm$(O) $(LDFLAGS) -lm + +png2pnm-static$(E): png2pnm$(O) + $(LD) -o png2pnm-static$(E) png2pnm$(O) $(LDFLAGSS) -lm pnm2png$(O): pnm2png$(C) - $(CC) -c $(CCFLAGS) pnm2png$(C) + $(CC) -c $(CFLAGS) pnm2png$(C) pnm2png$(E): pnm2png$(O) - $(LD) -o pnm2png$(E) pnm2png$(O) $(LDFLAGS) -lpng -lz -lm + $(LD) -o pnm2png$(E) pnm2png$(O) $(LDFLAGS) -lm + +pnm2png-static$(E): pnm2png$(O) + $(LD) -o pnm2png-static$(E) pnm2png$(O) $(LDFLAGSS) -lm clean: $(RM) png2pnm$(O) $(RM) pnm2png$(O) $(RM) png2pnm$(E) $(RM) pnm2png$(E) + $(RM) png2pnm-static$(E) + $(RM) pnm2png-static$(E) # End of makefile for png2pnm / pnm2png - diff --git a/example.c b/example.c index 0f0ad5f23014cd2189145131c21555efc1411431..f196a01c62b38a34c87a3f2486f13d3614f82ab9 100644 --- a/example.c +++ b/example.c @@ -480,21 +480,47 @@ info_callback(png_structp png_ptr, png_infop info) row_callback(png_structp png_ptr, png_bytep new_row, png_uint_32 row_num, int pass) { -/* this function is called for every row in the image. If the - * image is interlacing, and you turned on the interlace handler, +/* + * This function is called for every row in the image. If the + * image is interlaced, and you turned on the interlace handler, * this function will be called for every row in every pass. - * Some of these rows will not be changed from the previous pass. - * When the row is not changed, the new_row variable will be NULL. + * + * In this function you will receive a pointer to new row data from + * libpng called new_row that is to replace a corresponding row (of + * the same data format) in a buffer allocated by your application. + * + * The new row data pointer new_row may be NULL, indicating there is + * no new data to be replaced (in cases of interlace loading). + * + * If new_row is not NULL then you need to call + * png_progressive_combine_row() to replace the corresponding row as + * shown below: + */ + /* Check if row_num is in bounds. */ + if((row_num >= 0) && (row_num < height)) + { + /* Get pointer to corresponding row in our + * PNG read buffer. + */ + png_bytep old_row = ((png_bytep *)our_data)[row_num]; + + /* If both rows are allocated then copy the new row + * data to the corresponding row data. + */ + if((old_row != NULL) && (new_row != NULL)) + png_progressive_combine_row(png_ptr, old_row, new_row); + } +/* * The rows and passes are called in order, so you don't really * need the row_num and pass, but I'm supplying them because it * may make your life easier. * * For the non-NULL rows of interlaced images, you must call - * png_progressive_combine_row() passing in the row and the - * old row. You can call this function for NULL rows (it will - * just return) and for non-interlaced images (it just does the - * png_memcpy for you) if it will make the code easier. Thus, you - * can just do this for all cases: + * png_progressive_combine_row() passing in the new row and the + * old row, as demonstrated above. You can call this function for + * NULL rows (it will just return) and for non-interlaced images + * (it just does the png_memcpy for you) if it will make the code + * easier. Thus, you can just do this for all cases: */ png_progressive_combine_row(png_ptr, old_row, new_row); @@ -503,8 +529,8 @@ row_callback(png_structp png_ptr, png_bytep new_row, * that the first pass (pass == 0 really) will completely cover * the old row, so the rows do not have to be initialized. After * the first pass (and only for interlaced images), you will have - * to pass the current row, and the function will combine the - * old row and the new row. + * to pass the current row as new_row, and the function will combine + * the old row and the new row. */ } diff --git a/libpng.3 b/libpng.3 index 8fed9c6dd516f41cef51bbe62a15347c2b851feb..ed0bed2e7bf8f2b3f41ce9a03eb06271c4c59855 100644 --- a/libpng.3 +++ b/libpng.3 @@ -1,6 +1,6 @@ -.TH LIBPNG 3 "September 1, 2001" +.TH LIBPNG 3 "October 19, 2001" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.2.0 +libpng \- Portable Network Graphics (PNG) Reference Library 1.2.1beta1 .SH SYNOPSIS \fI\fB @@ -787,7 +787,7 @@ Following is a copy of the libpng.txt file that accompanies libpng. .SH LIBPNG.TXT libpng.txt - A description on how to use and modify libpng - libpng version 1.2.0 - September 1, 2001 + libpng version 1.2.1beta1 - October 19, 2001 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2001 Glenn Randers-Pehrson @@ -3635,13 +3635,13 @@ application: .SH IX. Y2K Compliance in libpng -September 1, 2001 +October 19, 2001 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and -upward through 1.2.0 are Y2K compliant. It is my belief that earlier +upward through 1.2.1beta1 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has three year fields. One is a 2-byte unsigned integer that @@ -3758,7 +3758,10 @@ the first widely used release: 1.0.12 2 10012 2.1.0.12 1.1.0a-f - 10100 2.1.1.0a-f abandoned 1.2.0beta1-2 2 10200 2.1.2.0beta1-2 - 1.2.0beta3-4 3 10200 3.1.2.0beta3-4 + 1.2.0beta3-5 3 10200 3.1.2.0beta3-5 + 1.2.0rc1 3 10200 3.1.2.0rc1 + 1.2.0 3 10200 3.1.2.0 + 1.2.1beta1 3 10201 3.1.2.1beta1 Henceforth the source version will match the shared-library minor and patch numbers; the shared-library major version number will be @@ -3816,7 +3819,7 @@ possible without all of you. Thanks to Frank J. T. Wojcik for helping with the documentation. -Libpng version 1.2.0 - September 1, 2001: +Libpng version 1.2.1beta1 - October 19, 2001: Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Currently maintained by Glenn Randers-Pehrson (randeg@alum.rpi.edu). @@ -3833,7 +3836,7 @@ included in the libpng distribution, the latter shall prevail.) If you modify libpng you may insert additional notices immediately following this sentence. -libpng versions 1.0.7, July 1, 2000, through 1.2.0, September 1, 2001, are +libpng versions 1.0.7, July 1, 2000, through 1.2.1beta1, October 19, 2001, are Copyright (c) 2000-2001 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors @@ -3925,7 +3928,7 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson randeg@alum.rpi.edu -September 1, 2001 +October 19, 2001 .\" end of man page diff --git a/libpng.txt b/libpng.txt index fd08096012e0d21a07d6726933649e8a38dc707a..615c0e63ab0af26c590c7096f9adaac22c3f0f30 100644 --- a/libpng.txt +++ b/libpng.txt @@ -1,6 +1,6 @@ libpng.txt - A description on how to use and modify libpng - libpng version 1.2.0 - September 1, 2001 + libpng version 1.2.1beta1 - October 19, 2001 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2001 Glenn Randers-Pehrson @@ -2848,13 +2848,13 @@ application: IX. Y2K Compliance in libpng -September 1, 2001 +October 19, 2001 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and -upward through 1.2.0 are Y2K compliant. It is my belief that earlier +upward through 1.2.1beta1 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has three year fields. One is a 2-byte unsigned integer that diff --git a/libpngpf.3 b/libpngpf.3 index f3eb09d735d883edda62f2ddea97a2378b23e1a1..78a978f39b4077e2af2af055c51a01e5e910f171 100644 --- a/libpngpf.3 +++ b/libpngpf.3 @@ -1,6 +1,6 @@ -.TH LIBPNGPF 3 "September 1, 2001" +.TH LIBPNGPF 3 "October 19, 2001" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.2.0 +libpng \- Portable Network Graphics (PNG) Reference Library 1.2.1beta1 (private functions) .SH SYNOPSIS \fB#include \fP diff --git a/png.5 b/png.5 index e2d44f0d4326b95c15536879b05c9ed84c9a46f6..7bab523f2fa9b77809f6994642d42e8839eefa69 100644 --- a/png.5 +++ b/png.5 @@ -1,4 +1,4 @@ -.TH PNG 5 "September 1, 2001" +.TH PNG 5 "October 19, 2001" .SH NAME png \- Portable Network Graphics (PNG) format .SH DESCRIPTION diff --git a/png.c b/png.c index 8b56feed3b25cf08ce1ab4a36b2b889aec649caa..6544b94bb3c4c38699761e13ec1ee73f68a12472 100644 --- a/png.c +++ b/png.c @@ -1,7 +1,7 @@ /* png.c - location for general purpose libpng functions * - * libpng version 1.2.0 - September 1, 2001 + * libpng version 1.2.1beta1 - October 19, 2001 * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -13,14 +13,14 @@ #include "png.h" /* Generate a compiler error if there is an old png.h in the search path. */ -typedef version_1_2_0 Your_png_h_is_not_version_1_2_0; +typedef version_1_2_1beta1 Your_png_h_is_not_version_1_2_1beta1; /* Version information for C files. This had better match the version * string defined in png.h. */ #ifdef PNG_USE_GLOBAL_ARRAYS /* png_libpng_ver was changed to a function in version 1.0.5c */ -const char png_libpng_ver[18] = "1.2.0"; +const char png_libpng_ver[18] = "1.2.1beta1"; /* png_sig was changed to a function in version 1.0.5c */ /* Place to hold the signature string for a PNG file. */ @@ -646,7 +646,7 @@ png_charp PNGAPI png_get_copyright(png_structp png_ptr) { if (png_ptr != NULL || png_ptr == NULL) /* silence compiler warning */ - return ((png_charp) "\n libpng version 1.2.0 - September 1, 2001\n\ + return ((png_charp) "\n libpng version 1.2.1beta1 - October 19, 2001\n\ Copyright (c) 1998-2001 Glenn Randers-Pehrson\n\ Copyright (c) 1996, 1997 Andreas Dilger\n\ Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.\n"); @@ -664,8 +664,8 @@ png_get_libpng_ver(png_structp png_ptr) { /* Version of *.c files used when building libpng */ if(png_ptr != NULL) /* silence compiler warning about unused png_ptr */ - return((png_charp) "1.2.0"); - return((png_charp) "1.2.0"); + return((png_charp) "1.2.1beta1"); + return((png_charp) "1.2.1beta1"); } png_charp PNGAPI @@ -715,7 +715,7 @@ png_uint_32 PNGAPI png_access_version_number(void) { /* Version of *.c files used when building libpng */ - return((png_uint_32) 10200L); + return((png_uint_32) 10201L); } diff --git a/png.h b/png.h index f9d4cbd84cc63574f6038fea8efae6df16450c04..ff88203abfd723e321b4a50a091a6f8a868c6fdb 100644 --- a/png.h +++ b/png.h @@ -1,7 +1,7 @@ /* png.h - header file for PNG reference library * - * libpng version 1.2.0 - September 1, 2001 + * libpng version 1.2.1beta1 - October 19, 2001 * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -9,7 +9,7 @@ * Authors and maintainers: * 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.97, January 1998, through 1.2.0 - September 1, 2001: Glenn + * libpng versions 0.97, January 1998, through 1.2.1beta1 - October 19, 2001: Glenn * See also "Contributing Authors", below. * * Note about libpng version numbers: @@ -75,7 +75,10 @@ * 1.0.12 2 10012 2.1.0.12 * 1.1.0a-f - 10100 2.1.1.0a-f (branch abandoned) * 1.2.0beta1-2 2 10200 2.1.2.0beta1-2 - * 1.2.0beta3-4 3 10200 3.1.2.0beta3-4 + * 1.2.0beta3-5 3 10200 3.1.2.0beta3-5 + * 1.2.0rc1 3 10200 3.1.2.0rc1 + * 1.2.0 3 10200 3.1.2.0 + * 1.2.1beta1 3 10201 3.1.2.1beta1 * * Henceforth the source version will match the shared-library major * and minor numbers; the shared-library major version number will be @@ -105,7 +108,7 @@ * If you modify libpng you may insert additional notices immediately following * this sentence. * - * libpng versions 1.0.7, July 1, 2000, through 1.2.0, September 1, 2001, are + * libpng versions 1.0.7, July 1, 2000, through 1.2.1beta1, October 19, 2001, are * Copyright (c) 2000, 2001 Glenn Randers-Pehrson, and are * distributed according to the same disclaimer and license as libpng-1.0.6 * with the following individuals added to the list of Contributing Authors @@ -210,13 +213,13 @@ * Y2K compliance in libpng: * ========================= * - * September 1, 2001 + * October 19, 2001 * * Since the PNG Development group is an ad-hoc body, we can't make * an official declaration. * * This is your unofficial assurance that libpng from version 0.71 and - * upward through 1.2.0 are Y2K compliant. It is my belief that earlier + * upward through 1.2.1beta1 are Y2K compliant. It is my belief that earlier * versions were also Y2K compliant. * * Libpng only has three year fields. One is a 2-byte unsigned integer @@ -272,7 +275,7 @@ */ /* Version information for png.h - this should match the version in png.c */ -#define PNG_LIBPNG_VER_STRING "1.2.0" +#define PNG_LIBPNG_VER_STRING "1.2.1beta1" #define PNG_LIBPNG_VER_SONUM 3 #define PNG_LIBPNG_VER_DLLNUM %DLLNUM% @@ -280,11 +283,11 @@ /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */ #define PNG_LIBPNG_VER_MAJOR 1 #define PNG_LIBPNG_VER_MINOR 2 -#define PNG_LIBPNG_VER_RELEASE 0 +#define PNG_LIBPNG_VER_RELEASE 1 /* This should match the numeric part of the final component of * PNG_LIBPNG_VER_STRING, omitting any leading zero: */ -#define PNG_LIBPNG_VER_BUILD 0 +#define PNG_LIBPNG_VER_BUILD 1 #define PNG_LIBPNG_BUILD_ALPHA 1 #define PNG_LIBPNG_BUILD_BETA 2 @@ -292,14 +295,14 @@ #define PNG_LIBPNG_BUILD_STABLE 4 #define PNG_LIBPNG_BUILD_TYPEMASK 7 #define PNG_LIBPNG_BUILD_PATCH 8 /* Can be OR'ed with STABLE only */ -#define PNG_LIBPNG_BUILD_TYPE 4 +#define PNG_LIBPNG_BUILD_TYPE 2 /* Careful here. At one time, Guy wanted to use 082, but that would be octal. * We must not include leading zeros. * Versions 0.7 through 1.0.0 were in the range 0 to 100 here (only * version 1.0.0 was mis-numbered 100 instead of 10000). From * version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release */ -#define PNG_LIBPNG_VER 10200 /* 1.2.0 */ +#define PNG_LIBPNG_VER 10201 /* 1.2.1 */ #ifndef PNG_VERSION_INFO_ONLY @@ -1044,9 +1047,9 @@ struct png_struct_def float background_gamma; # endif png_color_16 background; /* background color in screen gamma space */ -# if defined(PNG_READ_GAMMA_SUPPORTED) - png_color_16 background_1; /* background normalized to gamma 1.0 */ -# endif /* PNG_READ_GAMMA && PNG_bKGD_SUPPORTED */ +#if defined(PNG_READ_GAMMA_SUPPORTED) + png_color_16 background_1; /* background normalized to gamma 1.0 */ +#endif #endif /* PNG_bKGD_SUPPORTED */ #if defined(PNG_WRITE_FLUSH_SUPPORTED) @@ -1214,9 +1217,9 @@ struct png_struct_def /* This prevents a compiler error in png_get_copyright() in png.c if png.c - and png.h are both at version 1.2.0 + and png.h are both at version 1.2.1beta1 */ -typedef png_structp version_1_2_0; +typedef png_structp version_1_2_1beta1; typedef png_struct FAR * FAR * png_structpp; @@ -2333,7 +2336,7 @@ extern PNG_EXPORT(void,png_set_strip_error_numbers) PNGARG((png_structp /* Maintainer: Put new public prototypes here ^, in libpng.3, and project defs */ #define PNG_HEADER_VERSION_STRING \ - " libpng version 1.2.0 - September 1, 2001 (header)\n" + " libpng version 1.2.1beta1 - October 19, 2001 (header)\n" #ifdef PNG_READ_COMPOSITE_NODIV_SUPPORTED /* With these routines we avoid an integer divide, which will be slower on @@ -2947,11 +2950,14 @@ PNG_EXTERN void png_do_shift PNGARG((png_row_infop row_info, png_bytep row, #if defined(PNG_READ_BACKGROUND_SUPPORTED) PNG_EXTERN void png_do_background PNGARG((png_row_infop row_info, png_bytep row, - png_color_16p trans_values, png_color_16p background, - png_color_16p background_1, + png_color_16p trans_values, png_color_16p background +#if defined(PNG_READ_GAMMA_SUPPORTED) + , png_color_16p background_1, png_bytep gamma_table, png_bytep gamma_from_1, png_bytep gamma_to_1, png_uint_16pp gamma_16, png_uint_16pp gamma_16_from_1, - png_uint_16pp gamma_16_to_1, int gamma_shift)); + png_uint_16pp gamma_16_to_1, int gamma_shift +#endif + )); #endif #if defined(PNG_READ_GAMMA_SUPPORTED) diff --git a/pngasmrd.h b/pngasmrd.h index 420f5fed780ace85fa20effee6a2dd0077d4e50e..01ffc0b29c125b6137413fe956a5fbfc5e64a737 100644 --- a/pngasmrd.h +++ b/pngasmrd.h @@ -1,6 +1,6 @@ /* pngasmrd.h - assembler version of utilities to read a PNG file * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 2001 Glenn Randers-Pehrson * diff --git a/pngconf.h b/pngconf.h index 18d6f653eeafc3e6861bf3f3994aa79717e85202..3ed28a34115e0f348fe038e72880f73d44327840 100644 --- a/pngconf.h +++ b/pngconf.h @@ -1,6 +1,6 @@ /* pngconf.h - machine configurable file for libpng * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -399,10 +399,10 @@ */ #ifndef PNG_iTXt_SUPPORTED -# ifndef PNG_READ_iTXt_SUPPORTED +# if !defined(PNG_READ_iTXt_SUPPORTED) && !defined(PNG_NO_READ_iTXt) # define PNG_NO_READ_iTXt # endif -# ifndef PNG_WRITE_iTXt_SUPPORTED +# if !defined(PNG_WRITE_iTXt_SUPPORTED) && !defined(PNG_NO_WRITE_iTXt) # define PNG_NO_WRITE_iTXt # endif #endif @@ -726,8 +726,12 @@ # define PNG_iCCP_SUPPORTED #endif #ifndef PNG_NO_READ_iTXt -# define PNG_READ_iTXt_SUPPORTED -# define PNG_iTXt_SUPPORTED +# ifndef PNG_READ_iTXt_SUPPORTED +# define PNG_READ_iTXt_SUPPORTED +# endif +# ifndef PNG_iTXt_SUPPORTED +# define PNG_iTXt_SUPPORTED +# endif #endif #ifndef PNG_NO_READ_oFFs # define PNG_READ_oFFs_SUPPORTED @@ -842,7 +846,9 @@ # endif #endif #ifndef PNG_NO_WRITE_iTXt -# define PNG_WRITE_iTXt_SUPPORTED +# ifndef PNG_WRITE_iTXt_SUPPORTED +# define PNG_WRITE_iTXt_SUPPORTED +# endif # ifndef PNG_iTXt_SUPPORTED # define PNG_iTXt_SUPPORTED # endif diff --git a/pngerror.c b/pngerror.c index cf04c91574d5de53033dbd27bb90af0920c10117..9139bb817a3e0000c9f573f77303e0bbb04da5a4 100644 --- a/pngerror.c +++ b/pngerror.c @@ -1,7 +1,7 @@ /* pngerror.c - stub functions for i/o and memory allocation * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pnggccrd.c b/pnggccrd.c index ce519c51eb730374547be5004fef252b25204512..d4f77bf956468c170754746c89e34d50d4d308d7 100644 --- a/pnggccrd.c +++ b/pnggccrd.c @@ -6,7 +6,7 @@ * and http://www.intel.com/drg/pentiumII/appnotes/923/923.htm * for Intel's performance analysis of the MMX vs. non-MMX code. * - * libpng version 1.2.0 - September 1, 2001 + * libpng version 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998, Intel Corporation diff --git a/pngget.c b/pngget.c index d95d246fadf9e398144cc775bf2fbc087e881f37..1435d195e0301c1f1b3f8f25693e7c50ccb3368f 100644 --- a/pngget.c +++ b/pngget.c @@ -1,7 +1,7 @@ /* pngget.c - retrieval of values from info struct * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngmem.c b/pngmem.c index 4cf4db62319f745b861494389b8a82b2924af900..31ea4c076f5e4bc29740080bbdeddfdab3ef01db 100644 --- a/pngmem.c +++ b/pngmem.c @@ -1,7 +1,7 @@ /* pngmem.c - stub functions for memory allocation * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngpread.c b/pngpread.c index 4f7baf66ccf2d358fd5f9052ae440e12f1970952..92965651bb3d560fdd1e9731f67002428eedae3a 100644 --- a/pngpread.c +++ b/pngpread.c @@ -1,7 +1,7 @@ /* pngpread.c - read a png file in push mode * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngread.c b/pngread.c index cec672a9c8a9039f5cd18b10edbeb3f949dee4fe..301495a47a7d6af58f99e9d9fa37cea774f57bd8 100644 --- a/pngread.c +++ b/pngread.c @@ -1,7 +1,7 @@ /* pngread.c - read a PNG file * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -769,7 +769,7 @@ png_read_row(png_structp png_ptr, png_bytep row, png_bytep dsp_row) * not called png_set_interlace_handling(), the display_row buffer will * be ignored, so pass NULL to it. * - * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.0 + * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.1beta1 */ void PNGAPI @@ -818,7 +818,7 @@ png_read_rows(png_structp png_ptr, png_bytepp row, * only call this function once. If you desire to have an image for * each pass of a interlaced image, use png_read_rows() instead. * - * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.0 + * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.1beta1 */ void PNGAPI png_read_image(png_structp png_ptr, png_bytepp image) diff --git a/pngrio.c b/pngrio.c index 97fcdaa65cb0b6eb919388352ddf8206233467d9..ddafdce16b58b69738865d8d606a64a5e14ef028 100644 --- a/pngrio.c +++ b/pngrio.c @@ -1,7 +1,7 @@ /* pngrio.c - functions for data input * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngrtran.c b/pngrtran.c index e045c94cba35181712db03e1581e1f425d61ec3e..7329ccf9d8e8f33c1f264d35670b4d33591784ce 100644 --- a/pngrtran.c +++ b/pngrtran.c @@ -1,7 +1,7 @@ /* pngrtran.c - transforms the data in a row for PNG readers * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -742,7 +742,7 @@ png_init_read_transformations(png_structp png_ptr) } #endif -#if defined(PNG_READ_BACKGROUND_SUPPORTED) +#if defined(PNG_READ_BACKGROUND_SUPPORTED) && defined(PNG_READ_GAMMA_SUPPORTED) png_ptr->background_1 = png_ptr->background; #endif #if defined(PNG_READ_GAMMA_SUPPORTED) && defined(PNG_FLOATING_POINT_SUPPORTED) @@ -901,7 +901,7 @@ png_init_read_transformations(png_structp png_ptr) } else /* transformation does not include PNG_BACKGROUND */ -#endif +#endif /* PNG_READ_BACKGROUND_SUPPORTED */ if (color_type == PNG_COLOR_TYPE_PALETTE) { png_colorp palette = png_ptr->palette; @@ -919,7 +919,7 @@ png_init_read_transformations(png_structp png_ptr) #if defined(PNG_READ_BACKGROUND_SUPPORTED) else #endif -#endif +#endif /* PNG_READ_GAMMA_SUPPORTED && PNG_FLOATING_POINT_SUPPORTED */ #if defined(PNG_READ_BACKGROUND_SUPPORTED) /* No GAMMA transformation */ if ((png_ptr->transformations & PNG_BACKGROUND) && @@ -952,7 +952,7 @@ png_init_read_transformations(png_structp png_ptr) } } } -#endif +#endif /* PNG_READ_BACKGROUND_SUPPORTED */ #if defined(PNG_READ_SHIFT_SUPPORTED) if ((png_ptr->transformations & PNG_SHIFT) && @@ -977,7 +977,7 @@ png_init_read_transformations(png_structp png_ptr) png_ptr->palette[i].blue >>= sb; } } -#endif +#endif /* PNG_READ_SHIFT_SUPPORTED */ } #if !defined(PNG_READ_GAMMA_SUPPORTED) && !defined(PNG_READ_SHIFT_SUPPORTED) \ && !defined(PNG_READ_BACKGROUND_SUPPORTED) @@ -1227,12 +1227,15 @@ From Andreas Dilger e-mail to png-implement, 26 March 1998: ((png_ptr->num_trans != 0 ) || (png_ptr->color_type & PNG_COLOR_MASK_ALPHA))) png_do_background(&(png_ptr->row_info), png_ptr->row_buf + 1, - &(png_ptr->trans_values), &(png_ptr->background), - &(png_ptr->background_1), + &(png_ptr->trans_values), &(png_ptr->background) +#if defined(PNG_READ_GAMMA_SUPPORTED) + , &(png_ptr->background_1), png_ptr->gamma_table, png_ptr->gamma_from_1, png_ptr->gamma_to_1, png_ptr->gamma_16_table, png_ptr->gamma_16_from_1, png_ptr->gamma_16_to_1, - png_ptr->gamma_shift); + png_ptr->gamma_shift +#endif +); #endif #if defined(PNG_READ_GAMMA_SUPPORTED) @@ -2545,11 +2548,14 @@ png_correct_palette(png_structp png_ptr, png_colorp palette, */ void /* PRIVATE */ png_do_background(png_row_infop row_info, png_bytep row, - png_color_16p trans_values, png_color_16p background, - png_color_16p background_1, + png_color_16p trans_values, png_color_16p background +#if defined(PNG_READ_GAMMA_SUPPORTED) + , png_color_16p background_1, png_bytep gamma_table, png_bytep gamma_from_1, png_bytep gamma_to_1, png_uint_16pp gamma_16, png_uint_16pp gamma_16_from_1, - png_uint_16pp gamma_16_to_1, int gamma_shift) + png_uint_16pp gamma_16_to_1, int gamma_shift +#endif + ) { png_bytep sp, dp; png_uint_32 i; @@ -2932,6 +2938,7 @@ png_do_background(png_row_infop row_info, png_bytep row, { *dp = *sp; } +#if defined(PNG_READ_GAMMA_SUPPORTED) else if (a == 0) { *dp = (png_byte)background->gray; @@ -2940,6 +2947,9 @@ png_do_background(png_row_infop row_info, png_bytep row, { png_composite(*dp, *sp, a, background_1->gray); } +#else + *dp = (png_byte)background->gray; +#endif } } } @@ -2963,12 +2973,17 @@ png_do_background(png_row_infop row_info, png_bytep row, *dp = (png_byte)((v >> 8) & 0xff); *(dp + 1) = (png_byte)(v & 0xff); } +#if defined(PNG_READ_GAMMA_SUPPORTED) else if (a == 0) +#else + else +#endif { /* background is already in screen gamma */ *dp = (png_byte)((background->gray >> 8) & 0xff); *(dp + 1) = (png_byte)(background->gray & 0xff); } +#if defined(PNG_READ_GAMMA_SUPPORTED) else { png_uint_16 g, v, w; @@ -2979,6 +2994,7 @@ png_do_background(png_row_infop row_info, png_bytep row, *dp = (png_byte)((w >> 8) & 0xff); *(dp + 1) = (png_byte)(w & 0xff); } +#endif } } else @@ -2993,11 +3009,16 @@ png_do_background(png_row_infop row_info, png_bytep row, { png_memcpy(dp, sp, 2); } +#if defined(PNG_READ_GAMMA_SUPPORTED) else if (a == 0) +#else + else +#endif { *dp = (png_byte)((background->gray >> 8) & 0xff); *(dp + 1) = (png_byte)(background->gray & 0xff); } +#if defined(PNG_READ_GAMMA_SUPPORTED) else { png_uint_16 g, v; @@ -3007,6 +3028,7 @@ png_do_background(png_row_infop row_info, png_bytep row, *dp = (png_byte)((v >> 8) & 0xff); *(dp + 1) = (png_byte)(v & 0xff); } +#endif } } } diff --git a/pngrutil.c b/pngrutil.c index 1977783fbe953032e4ba3346a5937714905cb39a..5086297de7936eb711c3e79c0cd397cb26a5b3ed 100644 --- a/pngrutil.c +++ b/pngrutil.c @@ -1,7 +1,7 @@ /* pngrutil.c - utilities to read a PNG file * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngset.c b/pngset.c index 8845d38a4e8dd77558872590760e68b5764ceccf..02cce732ad6158e924ee628dd15a99a3e58c05f9 100644 --- a/pngset.c +++ b/pngset.c @@ -1,7 +1,7 @@ /* pngset.c - storage of image information into info struct * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngtest.c b/pngtest.c index 5ed1b336c50ebadab98180fa7ab0cd8687957848..556f6d92d36c1d60bbe042d2ef997d57510390c4 100644 --- a/pngtest.c +++ b/pngtest.c @@ -1,7 +1,7 @@ /* pngtest.c - a simple test program to test libpng * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -1510,4 +1510,4 @@ main(int argc, char *argv[]) } /* Generate a compiler error if there is an old png.h in the search path. */ -typedef version_1_2_0 your_png_h_is_not_version_1_2_0; +typedef version_1_2_1beta1 your_png_h_is_not_version_1_2_1beta1; diff --git a/pngtrans.c b/pngtrans.c index 6398dcf34161d1902488a5d2fecd131e03a14a0a..e3b182fb25ff20454504365348cb2481dae669dc 100644 --- a/pngtrans.c +++ b/pngtrans.c @@ -1,7 +1,7 @@ /* pngtrans.c - transforms the data in a row (used by both readers and writers) * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngvcrd.c b/pngvcrd.c index d92c5464db02f87d793bdfbaf17103f08f52d8ca..42f3118ef8150ccfe57da9bbe9e8701467aa4935 100644 --- a/pngvcrd.c +++ b/pngvcrd.c @@ -2,7 +2,7 @@ * * For Intel x86 CPU and Microsoft Visual C++ compiler * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998, Intel Corporation diff --git a/pngwio.c b/pngwio.c index efc39e690c9e3863058dc0f3726c328724b2a1d5..4578ccac1369aabe0a44b341cea0616e52655083 100644 --- a/pngwio.c +++ b/pngwio.c @@ -1,7 +1,7 @@ /* pngwio.c - functions for data output * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwrite.c b/pngwrite.c index afec136cb65356b6b307aa938379df1b8f45044c..1a67b70da57baca0c9828dc7cf975aeab1cbf3ee 100644 --- a/pngwrite.c +++ b/pngwrite.c @@ -1,7 +1,7 @@ /* pngwrite.c - general routines to write a PNG file * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwtran.c b/pngwtran.c index 7a38b9c41a152eb61d77c46c07ee5d68cfd4a25a..aa6b5f85755e82edfeb53a0604149253263301a1 100644 --- a/pngwtran.c +++ b/pngwtran.c @@ -1,7 +1,7 @@ /* pngwtran.c - transforms the data in a row for PNG writers * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwutil.c b/pngwutil.c index 5613a1f17d81b4dfe4f89d6a4268f01eebe6daa6..8282da67193b1cef81220b9f5fded25e1c5607ae 100644 --- a/pngwutil.c +++ b/pngwutil.c @@ -1,7 +1,7 @@ /* pngwutil.c - utilities to write a PNG file * - * libpng 1.2.0 - September 1, 2001 + * libpng 1.2.1beta1 - October 19, 2001 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2001 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/projects/msvc/README.txt b/projects/msvc/README.txt index fce0052e9306c899476b87d2b00aa49ef1d691c5..3185e56bde37c6f080c367a514de643961ace015 100644 --- a/projects/msvc/README.txt +++ b/projects/msvc/README.txt @@ -1,5 +1,5 @@ Microsoft Developer Studio Build File, Format Version 6.00 for -libpng 1.2.0 (September 1, 2001) and zlib +libpng 1.2.1beta1 (October 19, 2001) and zlib Copyright (C) 2000 Simon-Pierre Cadieux For conditions of distribution and use, see copyright notice in png.h diff --git a/projects/msvc/png32ms.def b/projects/msvc/png32ms.def index 70c0599267345b42dc915d50db63ef523b4b15ba..e8bc6ea39310344684532a6ca6324585cc04a652 100644 --- a/projects/msvc/png32ms.def +++ b/projects/msvc/png32ms.def @@ -6,7 +6,7 @@ LIBRARY DESCRIPTION "PNG image compression library for Windows" EXPORTS -;Version 1.2.0 +;Version 1.2.1beta1 png_build_grayscale_palette @1 png_check_sig @2 png_chunk_error @3 diff --git a/projects/netware.txt b/projects/netware.txt index 74422b4aad93d83d2c0a6db256222424b3156bce..e03cb805efcd251a7e756f74c31a2625cf6fa856 100644 --- a/projects/netware.txt +++ b/projects/netware.txt @@ -1,6 +1,6 @@ A set of project files is available for Netware. Get -libpng-1.2.0-project-netware.zip from a libpng distribution +libpng-1.2.1beta1-project-netware.zip from a libpng distribution site such as http://libpng.sourceforge.net Put the zip file in this directory (projects) and then run -"unzip -a libpng-1.2.0-project-netware.zip" +"unzip -a libpng-1.2.1beta1-project-netware.zip" diff --git a/projects/wince.txt b/projects/wince.txt index f078ac541fe5ca56fc65417458476d8bfc1fb232..28fa6afaf7e199649e2fefdba294a3aaf44332e8 100644 --- a/projects/wince.txt +++ b/projects/wince.txt @@ -1,6 +1,6 @@ A set of project files is available for WinCE. Get -libpng-1.2.0-project-wince.zip from a libpng distribution +libpng-1.2.1beta1-project-wince.zip from a libpng distribution site such as http://libpng.sourceforge.net Put the zip file in this directory (projects) and then run -"unzip -a libpng-1.2.0-project-wince.zip" +"unzip -a libpng-1.2.1beta1-project-wince.zip" diff --git a/scripts/makefile.aix b/scripts/makefile.aix index 7d935642ee3622c603b75a25356be026d02e0d5e..e6840348aa5062237d1615ce559877e5e6c4dabb 100644 --- a/scripts/makefile.aix +++ b/scripts/makefile.aix @@ -18,7 +18,7 @@ RM = rm -f # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) prefix=/usr/local diff --git a/scripts/makefile.beos b/scripts/makefile.beos index 803cc1e47860fb93886c9e710575dc3d052ec647..b12351441c122635d8aaea9acd7f993062d9b14f 100644 --- a/scripts/makefile.beos +++ b/scripts/makefile.beos @@ -13,7 +13,7 @@ ZLIBINC=/usr/local/include # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) ALIGN= diff --git a/scripts/makefile.cygwin b/scripts/makefile.cygwin index 7471611eb773b9e2b9540f5ba25292122bb616c7..b464e8126178a8f7243dc3706c6da8eda8c58802 100644 --- a/scripts/makefile.cygwin +++ b/scripts/makefile.cygwin @@ -39,8 +39,8 @@ CFLAGS=-I$(ZLIBINC) -Wall -O3 $(ALIGN) -funroll-loops \ # have to change it. PNGMAJ = 3 #PNGDLL = $3 -PNGMIN = 1.2.0 -PNGMIN_BASE = 1.2.0 +PNGMIN = 1.2.1beta1 +PNGMIN_BASE = 1.2.1 PNGVER = $(PNGMAJ).$(PNGMIN) SHAREDLIB=cygpng$(PNGDLL).dll diff --git a/scripts/makefile.darwin b/scripts/makefile.darwin new file mode 100644 index 0000000000000000000000000000000000000000..d2e3dfa87e05fe493cc23ec0dabe9237f6dff57a --- /dev/null +++ b/scripts/makefile.darwin @@ -0,0 +1,106 @@ +# makefile for libpng on Darwin / Mac OS X +# Copyright (C) 2001 Christoph Pfisterer +# derived from makefile.linux: +# Copyright (C) 1998, 1999 Greg Roelofs +# Copyright (C) 1996, 1997 Andreas Dilger +# For conditions of distribution and use, see copyright notice in png.h + +# where "make install" puts libpng.a, libpng.dylib, png.h and pngconf.h +prefix=/usr/local + +# Where the zlib library and include files are located +#ZLIBLIB=/usr/local/lib +#ZLIBINC=/usr/local/include +ZLIBLIB=../zlib +ZLIBINC=../zlib + +CC=cc +CFLAGS=-I$(ZLIBINC) -Wall -O3 -funroll-loops +LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz + +#RANLIB=echo +RANLIB=ranlib + +# read libpng.txt or png.h to see why PNGMAJ is 3. You should not +# have to change it. +PNGMAJ = 3 +PNGMIN = 1.2.1beta1 +PNGVER = $(PNGMAJ).$(PNGMIN) + +INCPATH=$(prefix)/include +LIBPATH=$(prefix)/lib + +OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \ + pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \ + pngwtran.o pngmem.o pngerror.o pngpread.o + +OBJSDLL = $(OBJS:.o=.pic.o) + +.SUFFIXES: .c .o .pic.o + +.c.pic.o: + $(CC) -c $(CFLAGS) -fno-common -o $@ $*.c + +all: libpng.a libpng.dylib pngtest + +libpng.a: $(OBJS) + ar rc $@ $(OBJS) + $(RANLIB) $@ + +libpng.dylib: libpng.$(PNGMAJ).dylib + ln -sf libpng.$(PNGMAJ).dylib libpng.dylib + +libpng.$(PNGMAJ).dylib: libpng.$(PNGVER).dylib + ln -sf libpng.$(PNGVER).dylib libpng.$(PNGMAJ).dylib + +libpng.$(PNGVER).dylib: $(OBJSDLL) + $(CC) -dynamiclib -undefined suppress \ + -install_name $(LIBPATH)/libpng.$(PNGMAJ).dylib \ + -current_version $(PNGMIN) -compatibility_version $(PNGMIN) \ + -o libpng.$(PNGVER).dylib \ + $(OBJSDLL) -L$(ZLIBLIB) -lz + +pngtest: pngtest.o libpng.dylib + $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) + +test: pngtest + ./pngtest + +install: libpng.a libpng.dylib + -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi + -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi + cp png.h pngconf.h $(INCPATH) + chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h + cp libpng.a libpng.$(PNGVER).dylib $(LIBPATH) + chmod 755 $(LIBPATH)/libpng.$(PNGVER).dylib + ranlib $(LIBPATH)/libpng.a + -@/bin/rm -f $(LIBPATH)/libpng.$(PNGMAJ).dylib $(LIBPATH)/libpng.dylib + (cd $(LIBPATH); ln -sf libpng.$(PNGVER).dylib libpng.$(PNGMAJ).dylib; \ + ln -sf libpng.$(PNGMAJ).dylib libpng.dylib) + +clean: + rm -f *.o libpng.a libpng.*dylib pngtest pngout.png + +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +writelock: + chmod a-w *.[ch35] $(DOCS) scripts/* + +# DO NOT DELETE THIS LINE -- make depend depends on it. + +png.o png.pic.o: png.h pngconf.h +pngerror.o pngerror.pic.o: png.h pngconf.h +pngrio.o pngrio.pic.o: png.h pngconf.h +pngwio.o pngwio.pic.o: png.h pngconf.h +pngmem.o pngmem.pic.o: png.h pngconf.h +pngset.o pngset.pic.o: png.h pngconf.h +pngget.o pngget.pic.o: png.h pngconf.h +pngread.o pngread.pic.o: png.h pngconf.h +pngrtran.o pngrtran.pic.o: png.h pngconf.h +pngrutil.o pngrutil.pic.o: png.h pngconf.h +pngtrans.o pngtrans.pic.o: png.h pngconf.h +pngwrite.o pngwrite.pic.o: png.h pngconf.h +pngwtran.o pngwtran.pic.o: png.h pngconf.h +pngwutil.o pngwutil.pic.o: png.h pngconf.h +pngpread.o pngpread.pic.o: png.h pngconf.h + +pngtest.o: png.h pngconf.h diff --git a/scripts/makefile.dec b/scripts/makefile.dec index 5bb3f497e2c8fe762633dc41413721d7bbb20f1e..a867c179fbc95f583d731f64c31877267a5e2e1a 100644 --- a/scripts/makefile.dec +++ b/scripts/makefile.dec @@ -17,7 +17,7 @@ ZLIBINC=../zlib # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) CC=cc diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx index 541dc73831aa674ed9d01df417db1e6420820877..842e9262dec1ec12f814829f3c35ccac49b5898b 100644 --- a/scripts/makefile.gcmmx +++ b/scripts/makefile.gcmmx @@ -55,7 +55,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.hpgcc b/scripts/makefile.hpgcc index dfe2561d20de50dc933abd81a5a1347cf7ecb497..cddbf6b61812c85acf14c91ab0155f7a64c29e6d 100644 --- a/scripts/makefile.hpgcc +++ b/scripts/makefile.hpgcc @@ -34,7 +34,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.hpux b/scripts/makefile.hpux index f4a56a23c2dbc5aa6f2b8bec1b5fe8192210e891..12f4605751a37662fc6a5f3744e4fb651df9682b 100644 --- a/scripts/makefile.hpux +++ b/scripts/makefile.hpux @@ -19,7 +19,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) # where make install puts libpng.a and png.h diff --git a/scripts/makefile.linux b/scripts/makefile.linux index 9ea620e02c754558f6d872872ad2365cc0ca57d6..bca411d716d7b07967c3639189aa52b8361c8ffd 100644 --- a/scripts/makefile.linux +++ b/scripts/makefile.linux @@ -34,7 +34,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.macosx b/scripts/makefile.macosx index 093ea77672ddececb7dd8a96213fcd98dcca106b..4ca44c458459611e018b8a1659f351c2ca710bd4 100644 --- a/scripts/makefile.macosx +++ b/scripts/makefile.macosx @@ -1,5 +1,7 @@ # makefile for libpng, MACOS X # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc. +# Modified by Karin Kosina 20011010: +# build shared library (*.dylib) # For conditions of distribution and use, see copyright notice in png.h # where make install puts libpng.a and png.h @@ -12,8 +14,16 @@ ZLIBLIB=../zlib ZLIBINC=../zlib CC=cc -CFLAGS=-I$(ZLIBINC) -O # -g -DPNG_DEBUG=5 +CFLAGS=-fno-common -I$(ZLIBINC) -O # -g -DPNG_DEBUG=5 LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz +LDSHARED=cc -lz -dynamiclib -compatibility_version $(VER) -current_version $(VER) + +PNGMAJ = 3 +PNGMIN = 1.2.1beta1 +VER = $(PNGMAJ).$(PNGMIN) +SHAREDLIB=libpng +SHAREDLIB_POSTFIX=dylib +libdir=$(prefix)/lib #RANLIB=echo RANLIB=ranlib @@ -22,12 +32,17 @@ OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \ pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \ pngwtran.o pngmem.o pngerror.o pngpread.o -all: libpng.a pngtest +all: libpng.a pngtest shared + +shared: $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) libpng.a: $(OBJS) ar rc $@ $(OBJS) $(RANLIB) $@ +$(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX): $(OBJS) + $(LDSHARED) -o $@ $(OBJS) + pngtest: pngtest.o libpng.a $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) @@ -44,8 +59,13 @@ install: libpng.a cp libpng.a $(prefix)/lib chmod 644 $(prefix)/lib/libpng.a +install-shared: $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) + cp $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) $(libdir) + (cd $(libdir); \ + ln -s $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) $(SHAREDLIB).$(SHAREDLIB_POSTFIX)) + clean: - rm -f *.o libpng.a pngtest pngout.png + rm -f *.o libpng.a pngtest pngout.png $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) $(SHAREDLIB).$(SHAREDLIB_POSTFIX) DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO writelock: diff --git a/scripts/makefile.netbsd b/scripts/makefile.netbsd index 03ba3975e092a0a7288060b9042d0a94f5dbc5e6..a7526659ed10339bd4014d5286b3e2b8d97c0048 100644 --- a/scripts/makefile.netbsd +++ b/scripts/makefile.netbsd @@ -11,7 +11,7 @@ INCSDIR=${LOCALBASE}/include LIB=png SHLIB_MAJOR= 3 -SHLIB_MINOR= 1.2.0 +SHLIB_MINOR= 1.2.1beta1 SRCS= pnggccrd.c png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \ pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \ pngwtran.c pngmem.c pngerror.c pngpread.c @@ -20,12 +20,12 @@ MAN= libpng.3 libpngpf.3 png.5 CPPFLAGS+=-I${.CURDIR} -DPNG_USE_PNGGCCRD -CPPFLAGS+=-DPNG_NO_ASSEMBLER_CODE # something like this for mmx assembler, but it core dumps for me at the moment # .if ${MACHINE_ARCH} == "i386" +# CPPFLAGS+=-DPNG_THREAD_UNSAFE_OK # MKLINT= no # .else -# CPPFLAGS+=-DPNG_NO_ASSEMBLER_CODE + CPPFLAGS+=-DPNG_NO_ASSEMBLER_CODE # .endif CLEANFILES+=pngtest.o pngtest diff --git a/scripts/makefile.sco b/scripts/makefile.sco index 8b5c51f080e1c13b60729f50ef5a020885af6e65..b801021e2f38ac1967dc518c45adfa9f9b1818db 100644 --- a/scripts/makefile.sco +++ b/scripts/makefile.sco @@ -25,7 +25,7 @@ RANLIB=echo # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.sggcc b/scripts/makefile.sggcc index 0c3f846e37e2ae71bb553fcda02a7984e7a9ff21..389fe58026acaf0597baf8e1739da5fbde0a854f 100644 --- a/scripts/makefile.sggcc +++ b/scripts/makefile.sggcc @@ -22,7 +22,7 @@ CFLAGS=$(ABI) -I$(ZLIBINC) -O2 $(WARNMORE) -fPIC -mabi=n32 LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm LDSHARED=CC $(ABI) -shared -VER=1.2.0 +VER=1.2.1beta1 # See "man dso" for info about shared objects SONUM=3 LIBS=libpng.so.$(SONUM).$(VER) diff --git a/scripts/makefile.sgi b/scripts/makefile.sgi index 6a15f322e6365add1aec65d1ac48863228d674e0..556c34b0f2de436dfc9dc77f5285072e172af80f 100644 --- a/scripts/makefile.sgi +++ b/scripts/makefile.sgi @@ -27,7 +27,7 @@ CFLAGS=$(ABI) -I$(ZLIBINC) -O $(WARNMORE) -DPNG_USE_PNGGCCRD -DPNG_NO_ASSEMBLER_ LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm LDSHARED=cc $(ABI) -shared -VER=1.2.0 +VER=1.2.1beta1 # See "man dso" for info about shared objects SONUM=3 SHAREDLIB=libpng.so diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris index d4db9f5424909d36ed4336764670fc355cb1ca89..2d6d17d730c0182e35405573662dc0c0b9a465cb 100644 --- a/scripts/makefile.solaris +++ b/scripts/makefile.solaris @@ -31,7 +31,7 @@ RANLIB=echo # read libpng.txt or png.h to see why PNGMAJ is 3. You should not # have to change it. PNGMAJ = 3 -PNGMIN = 1.2.0 +PNGMIN = 1.2.1beta1 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/pngdef.pas b/scripts/pngdef.pas index 507447d2d5c971ccace3add64ad7488d73005ff5..b0edbf08770944a45faf422a4d9a8e2ecadcb4f8 100644 --- a/scripts/pngdef.pas +++ b/scripts/pngdef.pas @@ -7,8 +7,8 @@ unit pngdef; interface const - PNG_LIBPNG_VER_STRING = '1.2.0'; - PNG_LIBPNG_VER = 10200; + PNG_LIBPNG_VER_STRING = '1.2.1beta1'; + PNG_LIBPNG_VER = 10201; type png_uint_32 = Cardinal; diff --git a/scripts/pngos2.def b/scripts/pngos2.def index fd6550a005820e279ccea1b4fb67407b78220aab..9ff0d33450f49a11f411984db291d3327e0e9ca4 100644 --- a/scripts/pngos2.def +++ b/scripts/pngos2.def @@ -2,7 +2,7 @@ ; PNG.LIB module definition file for OS/2 ;---------------------------------------- -; Version 1.2.0 +; Version 1.2.1beta1 LIBRARY PNG DESCRIPTION "PNG image compression library for OS/2"