Imported from libpng-1.2.1beta1.tar
diff --git a/ANNOUNCE b/ANNOUNCE
index c8cd5cc..41a45d1 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 fb6bc37..f4fd1e5 100644
--- a/CHANGES
+++ b/CHANGES
@@ -733,10 +733,11 @@
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.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 4bac89c..6972118 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 @@
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 @@
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 @@
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 1f4a8bc..4950f18 100644
--- a/LICENSE
+++ b/LICENSE
@@ -8,7 +8,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 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 @@
Glenn Randers-Pehrson
randeg@alum.rpi.edu
-September 1, 2001
+October 19, 2001
diff --git a/README b/README
index 06f9278..6b775f5 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 @@
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 @@
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 e3f9108..e15ff9f 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 a469913..08b8b87 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 c98cd64..074047d 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
+#CC=cc
+CC=gcc
+LD=$(CC)
-PNGPATH = /usr/local
-PNGINC = $(PNGPATH)/include
-#PNGLIB = $(PNGPATH)/lib -lpng
-PNGLIB = $(PNGPATH)/lib/libpng.a
+RM=rm -f
-ZPATH = /usr/local
-ZINC = $(ZPATH)/include
-#ZLIB = $(ZPATH)/lib -lz
-ZLIB = $(ZPATH)/lib/libz.a
+#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
-CCFLAGS=-I$(PNGINC) -I$(ZINC)
-LDFLAGS=-L$(PNGLIB) -L$(ZLIB)
+#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 @@
# 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 0f0ad5f..f196a01 100644
--- a/example.c
+++ b/example.c
@@ -480,21 +480,47 @@
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 @@
* 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 8fed9c6..ed0bed2 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 @@
.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
<randeg@alum.rpi.edu>
Copyright (c) 1998-2001 Glenn Randers-Pehrson
@@ -3635,13 +3635,13 @@
.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 @@
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 @@
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 @@
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 @@
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 fd08096..615c0e6 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
<randeg@alum.rpi.edu>
Copyright (c) 1998-2001 Glenn Randers-Pehrson
@@ -2848,13 +2848,13 @@
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 f3eb09d..78a978f 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 <png.h>\fP
diff --git a/png.5 b/png.5
index e2d44f0..7bab523 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 8b56fee..6544b94 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_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 @@
{
/* 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_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 f9d4cbd..ff88203 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 @@
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 @@
/* 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 @@
/* 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 @@
#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 420f5fe..01ffc0b 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 18d6f65..3ed28a3 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 cf04c91..9139bb8 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 ce519c5..d4f77bf 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 d95d246..1435d19 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 4cf4db6..31ea4c0 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 4f7baf6..9296565 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 cec672a..301495a 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 @@
* 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 @@
* 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 97fcdaa..ddafdce 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 e045c94..7329ccf 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 @@
}
#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 @@
}
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 @@
#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 @@
}
}
}
-#endif
+#endif /* PNG_READ_BACKGROUND_SUPPORTED */
#if defined(PNG_READ_SHIFT_SUPPORTED)
if ((png_ptr->transformations & PNG_SHIFT) &&
@@ -977,7 +977,7 @@
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 @@
((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 @@
*/
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 @@
{
*dp = *sp;
}
+#if defined(PNG_READ_GAMMA_SUPPORTED)
else if (a == 0)
{
*dp = (png_byte)background->gray;
@@ -2940,6 +2947,9 @@
{
png_composite(*dp, *sp, a, background_1->gray);
}
+#else
+ *dp = (png_byte)background->gray;
+#endif
}
}
}
@@ -2963,12 +2973,17 @@
*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 @@
*dp = (png_byte)((w >> 8) & 0xff);
*(dp + 1) = (png_byte)(w & 0xff);
}
+#endif
}
}
else
@@ -2993,11 +3009,16 @@
{
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 @@
*dp = (png_byte)((v >> 8) & 0xff);
*(dp + 1) = (png_byte)(v & 0xff);
}
+#endif
}
}
}
diff --git a/pngrutil.c b/pngrutil.c
index 1977783..5086297 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 8845d38..02cce73 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 5ed1b33..556f6d9 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 @@
}
/* 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 6398dcf..e3b182f 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 d92c546..42f3118 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 efc39e6..4578cca 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 afec136..1a67b70 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 7a38b9c..aa6b5f8 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 5613a1f..8282da6 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 fce0052..3185e56 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 70c0599..e8bc6ea 100644
--- a/projects/msvc/png32ms.def
+++ b/projects/msvc/png32ms.def
@@ -6,7 +6,7 @@
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 74422b4..e03cb80 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 f078ac5..28fa6af 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 7d93564..e684034 100644
--- a/scripts/makefile.aix
+++ b/scripts/makefile.aix
@@ -18,7 +18,7 @@
# 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 803cc1e..b123514 100644
--- a/scripts/makefile.beos
+++ b/scripts/makefile.beos
@@ -13,7 +13,7 @@
# 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 7471611..b464e81 100644
--- a/scripts/makefile.cygwin
+++ b/scripts/makefile.cygwin
@@ -39,8 +39,8 @@
# 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 0000000..d2e3dfa
--- /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 5bb3f49..a867c17 100644
--- a/scripts/makefile.dec
+++ b/scripts/makefile.dec
@@ -17,7 +17,7 @@
# 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 541dc73..842e926 100644
--- a/scripts/makefile.gcmmx
+++ b/scripts/makefile.gcmmx
@@ -55,7 +55,7 @@
# 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 dfe2561..cddbf6b 100644
--- a/scripts/makefile.hpgcc
+++ b/scripts/makefile.hpgcc
@@ -34,7 +34,7 @@
# 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 f4a56a2..12f4605 100644
--- a/scripts/makefile.hpux
+++ b/scripts/makefile.hpux
@@ -19,7 +19,7 @@
# 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 9ea620e..bca411d 100644
--- a/scripts/makefile.linux
+++ b/scripts/makefile.linux
@@ -34,7 +34,7 @@
# 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 093ea77..4ca44c4 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 <kyrah@sim.no> 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 @@
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 @@
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 @@
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 03ba397..a752665 100644
--- a/scripts/makefile.netbsd
+++ b/scripts/makefile.netbsd
@@ -11,7 +11,7 @@
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 @@
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 8b5c51f..b801021 100644
--- a/scripts/makefile.sco
+++ b/scripts/makefile.sco
@@ -25,7 +25,7 @@
# 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 0c3f846..389fe58 100644
--- a/scripts/makefile.sggcc
+++ b/scripts/makefile.sggcc
@@ -22,7 +22,7 @@
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 6a15f32..556c34b 100644
--- a/scripts/makefile.sgi
+++ b/scripts/makefile.sgi
@@ -27,7 +27,7 @@
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 d4db9f5..2d6d17d 100644
--- a/scripts/makefile.solaris
+++ b/scripts/makefile.solaris
@@ -31,7 +31,7 @@
# 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 507447d..b0edbf0 100644
--- a/scripts/pngdef.pas
+++ b/scripts/pngdef.pas
@@ -7,8 +7,8 @@
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 fd6550a..9ff0d33 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"