summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Randers-Pehrson <glennrp at users.sourceforge.net>2007-05-24 06:06:08 -0500
committerGlenn Randers-Pehrson <glennrp at users.sourceforge.net>2009-04-06 16:13:19 -0500
commitc1523ad16d03676d32271f5c07de4612c2b043cf (patch)
tree28525f757b6fcc82b272276677ba5de1352a36ee
parentd0be8e27de438bffc0b6bc3f5018d63a4fcf33fb (diff)
downloadlibpng-1.2.19beta10.tar.gz
Imported from libpng-1.2.19beta10.tarv1.2.19beta10
-rw-r--r--ANNOUNCE29
-rw-r--r--CHANGES5
-rw-r--r--INSTALL20
-rw-r--r--KNOWNBUG2
-rw-r--r--LICENSE4
-rw-r--r--README14
-rw-r--r--Y2KINFO4
-rwxr-xr-xconfigure22
-rw-r--r--configure.ac4
-rw-r--r--libpng-1.2.19beta10.txt (renamed from libpng-1.2.19beta9.txt)6
-rw-r--r--libpng.318
-rw-r--r--libpngpf.34
-rw-r--r--png.52
-rw-r--r--png.c6
-rw-r--r--png.h20
-rw-r--r--pngconf.h2
-rw-r--r--pngerror.c2
-rw-r--r--pnggccrd.c394
-rw-r--r--pngpread.c2
-rw-r--r--pngread.c2
-rw-r--r--pngrtran.c2
-rw-r--r--pngrutil.c2
-rw-r--r--pngtest.c2
-rw-r--r--pngvcrd.c2
-rw-r--r--pngwutil.c2
-rw-r--r--scripts/CMakeLists.txt2
-rwxr-xr-xscripts/libpng-config-head.in2
-rw-r--r--scripts/libpng.pc-configure.in2
-rw-r--r--scripts/libpng.pc.in2
-rw-r--r--scripts/makefile.32sunu2
-rw-r--r--scripts/makefile.64sunu2
-rw-r--r--scripts/makefile.aix2
-rw-r--r--scripts/makefile.beos2
-rw-r--r--scripts/makefile.cygwin2
-rw-r--r--scripts/makefile.darwin2
-rw-r--r--scripts/makefile.dec2
-rw-r--r--scripts/makefile.elf2
-rw-r--r--scripts/makefile.gcmmx2
-rw-r--r--scripts/makefile.hp642
-rw-r--r--scripts/makefile.hpgcc2
-rw-r--r--scripts/makefile.hpux2
-rw-r--r--scripts/makefile.linux2
-rw-r--r--scripts/makefile.mingw2
-rw-r--r--scripts/makefile.ne12bsd2
-rw-r--r--scripts/makefile.netbsd2
-rw-r--r--scripts/makefile.nommx2
-rw-r--r--scripts/makefile.openbsd2
-rw-r--r--scripts/makefile.sco2
-rw-r--r--scripts/makefile.sggcc2
-rw-r--r--scripts/makefile.sgi2
-rw-r--r--scripts/makefile.so92
-rw-r--r--scripts/makefile.solaris2
-rw-r--r--scripts/makefile.solaris-x862
-rw-r--r--scripts/pngos2.def2
-rw-r--r--scripts/pngw32.def2
55 files changed, 349 insertions, 283 deletions
diff --git a/ANNOUNCE b/ANNOUNCE
index 56a556107..b564ea3ca 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -1,5 +1,5 @@
-Libpng 1.2.19beta9 - May 23, 2007
+Libpng 1.2.19beta10 - May 24, 2007
This is not intended to be a public release. It will be replaced
within a few weeks by a public version or by another test version.
@@ -9,32 +9,32 @@ Files available for download:
Source files with LF line endings (for Unix/Linux) and with a
"configure" script
- libpng-1.2.19beta9.tar.gz
- libpng-1.2.19beta9.tar.bz2
+ libpng-1.2.19beta10.tar.gz
+ libpng-1.2.19beta10.tar.bz2
Source files with LF line endings (for Unix/Linux) without the
"configure" script
- libpng-1.2.19beta9-no-config.tar.gz
- libpng-1.2.19beta9-no-config.tar.bz2
+ libpng-1.2.19beta10-no-config.tar.gz
+ libpng-1.2.19beta10-no-config.tar.bz2
Source files with CRLF line endings (for Windows), without the
"configure" script
- lp1219b09.zip
- lp1219b09.tar.bz2
+ lp1219b10.zip
+ lp1219b10.tar.bz2
Project files
- libpng-1.2.19beta9-project-netware.zip
- libpng-1.2.19beta9-project-wince.zip
+ libpng-1.2.19beta10-project-netware.zip
+ libpng-1.2.19beta10-project-wince.zip
Other information:
- libpng-1.2.19beta9-README.txt
- libpng-1.2.19beta9-KNOWNBUGS.txt
- libpng-1.2.19beta9-LICENSE.txt
- libpng-1.2.19beta9-Y2K-compliance.txt
+ libpng-1.2.19beta10-README.txt
+ libpng-1.2.19beta10-KNOWNBUGS.txt
+ libpng-1.2.19beta10-LICENSE.txt
+ libpng-1.2.19beta10-Y2K-compliance.txt
Changes since the last public release (1.2.18):
@@ -75,6 +75,9 @@ version 1.2.19beta9 [May 23, 2007]
Revised png_squelch_warnings() so it might work.
Updated makefile.sgcc and makefile.solaris; added makefile.solaris-x86.
+version 1.2.19beta10 [May 24, 2007]
+ Resquelched png_squelch_warnings(), use "__attribute__((used))" instead.
+
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
diff --git a/CHANGES b/CHANGES
index 915925f84..9ab1693dc 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1763,11 +1763,14 @@ version 1.2.19beta7 [May 22, 2007]
version 1.2.19beta8 [May 22, 2007]
Removed __MMX__ from test in pngconf.h.
-version 1.2.19beta9 [May 23, 2007]
+version 1.2.19beta9 [May 24, 2007]
Made png_squelch_warnings() available via PNG_SQUELCH_WARNINGS macro.
Revised png_squelch_warnings() so it might work.
Updated makefile.sgcc and makefile.solaris; added makefile.solaris-x86.
+version 1.2.19beta10 [May 24, 2007]
+ Resquelched png_squelch_warnings(), use "__attribute__((used))" instead.
+
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
(subscription required; visit
https://lists.sourceforge.net/lists/listinfo/png-mng-implement
diff --git a/INSTALL b/INSTALL
index 9ee9f2ea8..6a1ed019c 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,5 @@
-Installing libpng version 1.2.19beta9 - May 23, 2007
+Installing libpng version 1.2.19beta10 - May 24, 2007
On Unix/Linux and similar systems, you can simply type
@@ -44,7 +44,7 @@ to have access to the 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.19beta9" or "lpng109" and "zlib-1.2.1"
+might be called "libpng-1.2.19beta10" or "lpng109" and "zlib-1.2.1"
or "zlib121") so that you have directories called "zlib" and "libpng".
Your directory structure should look like this:
@@ -101,14 +101,14 @@ include
CMakeLists.txt => "cmake" script
makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
makefile.elf => Linux/ELF makefile symbol versioning,
- gcc, creates libpng12.so.0.1.2.19beta9)
+ gcc, creates libpng12.so.0.1.2.19beta10)
makefile.linux => Linux/ELF makefile
- (gcc, creates libpng12.so.0.1.2.19beta9)
+ (gcc, creates libpng12.so.0.1.2.19beta10)
makefile.gcmmx => Linux/ELF makefile
- (gcc, creates libpng12.so.0.1.2.19beta9,
+ (gcc, creates libpng12.so.0.1.2.19beta10,
uses assembler code tuned for Intel MMX platform)
makefile.nommx => Linux/ELF makefile
- (gcc, creates libpng12.so.0.1.2.19beta9
+ (gcc, creates libpng12.so.0.1.2.19beta10
does not use Intel MMX assembler code)
makefile.gcc => Generic makefile (gcc, creates static libpng.a)
makefile.knr => Archaic UNIX Makefile that converts files with
@@ -131,14 +131,14 @@ include
makefile.openbsd => OpenBSD makefile
makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib)
makefile.sggcc => Silicon Graphics (gcc,
- creates libpng12.so.0.1.2.19beta9)
+ creates libpng12.so.0.1.2.19beta10)
makefile.sunos => Sun makefile
makefile.solaris => Solaris 2.X makefile (gcc,
- creates libpng12.so.0.1.2.19beta9)
+ creates libpng12.so.0.1.2.19beta10)
makefile.solaris-x86 => Solaris/intelMMX 2.X makefile (gcc,
- creates libpng12.so.0.1.2.19beta9)
+ creates libpng12.so.0.1.2.19beta10)
makefile.so9 => Solaris 9 makefile (gcc,
- creates libpng12.so.0.1.2.19beta9)
+ creates libpng12.so.0.1.2.19beta10)
makefile.32sunu => Sun Ultra 32-bit makefile
makefile.64sunu => Sun Ultra 64-bit makefile
makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc
diff --git a/KNOWNBUG b/KNOWNBUG
index 64dfb980b..714c1724b 100644
--- a/KNOWNBUG
+++ b/KNOWNBUG
@@ -1,5 +1,5 @@
-Known bugs in libpng version 1.2.19beta9
+Known bugs in libpng version 1.2.19beta10
1. April 22, 2001: pnggccrd.c has been reported to crash on NetBSD when
reading interlaced PNG files, when assembler code is enabled but running
diff --git a/LICENSE b/LICENSE
index cd3101e57..1175842bb 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.2.6, August 15, 2004, through 1.2.19beta9, May 23, 2007, are
+libpng versions 1.2.6, August 15, 2004, through 1.2.19beta10, May 24, 2007, are
Copyright (c) 2004, 2006-2007 Glenn Randers-Pehrson, and are
distributed according to the same disclaimer and license as libpng-1.2.5
with the following individual added to the list of Contributing Authors
@@ -106,4 +106,4 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
glennrp at users.sourceforge.net
-May 23, 2007
+May 24, 2007
diff --git a/README b/README
index d8c08e197..ce80662c4 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README for libpng version 1.2.19beta9 - May 23, 2007 (shared library 12.0)
+README for libpng version 1.2.19beta10 - May 24, 2007 (shared library 12.0)
See the note about version numbers near the top of png.h
See INSTALL for instructions on how to install libpng.
@@ -190,11 +190,11 @@ Files in this distribution:
descrip.mms => VMS makefile for MMS or MMK
makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
makefile.elf => Linux/ELF makefile symbol versioning,
- gcc, creates libpng12.so.0.1.2.19beta9)
+ gcc, creates libpng12.so.0.1.2.19beta10)
makefile.linux => Linux/ELF makefile
- (gcc, creates libpng12.so.0.1.2.19beta9)
+ (gcc, creates libpng12.so.0.1.2.19beta10)
makefile.gcmmx => Linux/ELF makefile
- (gcc, creates libpng12.so.0.1.2.19beta9,
+ (gcc, creates libpng12.so.0.1.2.19beta10,
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
@@ -216,12 +216,12 @@ Files in this distribution:
makefile.openbsd => OpenBSD makefile
makefile.sgi => Silicon Graphics IRIX (cc, creates static lib)
makefile.sggcc => Silicon Graphics
- (gcc, creates libpng12.so.0.1.2.19beta9)
+ (gcc, creates libpng12.so.0.1.2.19beta10)
makefile.sunos => Sun makefile
makefile.solaris => Solaris 2.X makefile
- (gcc, creates libpng12.so.0.1.2.19beta9)
+ (gcc, creates libpng12.so.0.1.2.19beta10)
makefile.so9 => Solaris 9 makefile
- (gcc, creates libpng12.so.0.1.2.19beta9)
+ (gcc, creates libpng12.so.0.1.2.19beta10)
makefile.32sunu => Sun Ultra 32-bit makefile
makefile.64sunu => Sun Ultra 64-bit makefile
makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc
diff --git a/Y2KINFO b/Y2KINFO
index eea9000a0..44fff2de6 100644
--- a/Y2KINFO
+++ b/Y2KINFO
@@ -1,13 +1,13 @@
Y2K compliance in libpng:
=========================
- May 23, 2007
+ May 24, 2007
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.19beta9 are Y2K compliant. It is my belief that earlier
+ upward through 1.2.19beta10 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 a3d006aca..e3a7e6548 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for libpng 1.2.19beta9.
+# Generated by GNU Autoconf 2.61 for libpng 1.2.19beta10.
#
# Report bugs to <png-mng-implement@lists.sourceforge.net>.
#
@@ -728,8 +728,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='libpng'
PACKAGE_TARNAME='libpng'
-PACKAGE_VERSION='1.2.19beta9'
-PACKAGE_STRING='libpng 1.2.19beta9'
+PACKAGE_VERSION='1.2.19beta10'
+PACKAGE_STRING='libpng 1.2.19beta10'
PACKAGE_BUGREPORT='png-mng-implement@lists.sourceforge.net'
ac_unique_file="pngget.c"
@@ -1405,7 +1405,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures libpng 1.2.19beta9 to adapt to many kinds of systems.
+\`configure' configures libpng 1.2.19beta10 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1475,7 +1475,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of libpng 1.2.19beta9:";;
+ short | recursive ) echo "Configuration of libpng 1.2.19beta10:";;
esac
cat <<\_ACEOF
@@ -1585,7 +1585,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-libpng configure 1.2.19beta9
+libpng configure 1.2.19beta10
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1599,7 +1599,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by libpng $as_me 1.2.19beta9, which was
+It was created by libpng $as_me 1.2.19beta10, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2269,7 +2269,7 @@ fi
# Define the identity of the package.
PACKAGE='libpng'
- VERSION='1.2.19beta9'
+ VERSION='1.2.19beta10'
cat >>confdefs.h <<_ACEOF
@@ -2440,7 +2440,7 @@ fi
-PNGLIB_VERSION=1.2.19beta9
+PNGLIB_VERSION=1.2.19beta10
PNGLIB_MAJOR=1
PNGLIB_MINOR=2
PNGLIB_RELEASE=19
@@ -21119,7 +21119,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by libpng $as_me 1.2.19beta9, which was
+This file was extended by libpng $as_me 1.2.19beta10, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -21172,7 +21172,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-libpng config.status 1.2.19beta9
+libpng config.status 1.2.19beta10
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/configure.ac b/configure.ac
index adfc8a64a..bb09f2a2b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -18,12 +18,12 @@ AC_PREREQ(2.59)
dnl Version number stuff here:
-AC_INIT([libpng], [1.2.19beta9], [png-mng-implement@lists.sourceforge.net])
+AC_INIT([libpng], [1.2.19beta10], [png-mng-implement@lists.sourceforge.net])
AM_INIT_AUTOMAKE
dnl stop configure from automagically running automake
AM_MAINTAINER_MODE
-PNGLIB_VERSION=1.2.19beta9
+PNGLIB_VERSION=1.2.19beta10
PNGLIB_MAJOR=1
PNGLIB_MINOR=2
PNGLIB_RELEASE=19
diff --git a/libpng-1.2.19beta9.txt b/libpng-1.2.19beta10.txt
index 80d45fa23..e94816f88 100644
--- a/libpng-1.2.19beta9.txt
+++ b/libpng-1.2.19beta10.txt
@@ -1,6 +1,6 @@
libpng.txt - A description on how to use and modify libpng
- libpng version 1.2.19beta9 - May 23, 2007
+ libpng version 1.2.19beta10 - May 24, 2007
Updated and distributed by Glenn Randers-Pehrson
<glennrp at users.sourceforge.net>
Copyright (c) 1998-2007 Glenn Randers-Pehrson
@@ -2921,13 +2921,13 @@ application:
IX. Y2K Compliance in libpng
-May 23, 2007
+May 24, 2007
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.19beta9 are Y2K compliant. It is my belief that earlier
+upward through 1.2.19beta10 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/libpng.3 b/libpng.3
index a74c6bc80..11a7a4ca5 100644
--- a/libpng.3
+++ b/libpng.3
@@ -1,6 +1,6 @@
-.TH LIBPNG 3 "May 23, 2007"
+.TH LIBPNG 3 "May 24, 2007"
.SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.2.19beta9
+libpng \- Portable Network Graphics (PNG) Reference Library 1.2.19beta10
.SH SYNOPSIS
\fB
#include <png.h>\fP
@@ -410,7 +410,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.19beta9 - May 23, 2007
+ libpng version 1.2.19beta10 - May 24, 2007
Updated and distributed by Glenn Randers-Pehrson
<glennrp at users.sourceforge.net>
Copyright (c) 1998-2007 Glenn Randers-Pehrson
@@ -3331,13 +3331,13 @@ application:
.SH IX. Y2K Compliance in libpng
-May 23, 2007
+May 24, 2007
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.19beta9 are Y2K compliant. It is my belief that earlier
+upward through 1.2.19beta10 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
@@ -3526,7 +3526,7 @@ the first widely used release:
1.2.17 13 10217 12.so.0.17[.0]
1.0.26 10 10026 10.so.0.26[.0]
1.2.18 13 10218 12.so.0.18[.0]
- 1.2.19beta1-9 13 10219 12.so.0.19[.0]
+ 1.2.19beta1-10 13 10219 12.so.0.19[.0]
Henceforth the source version will match the shared-library minor
and patch numbers; the shared-library major version number will be
@@ -3582,7 +3582,7 @@ possible without all of you.
Thanks to Frank J. T. Wojcik for helping with the documentation.
-Libpng version 1.2.19beta9 - May 23, 2007:
+Libpng version 1.2.19beta10 - May 24, 2007:
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
@@ -3603,7 +3603,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.2.6, August 15, 2004, through 1.2.19beta9, May 23, 2007, are
+libpng versions 1.2.6, August 15, 2004, through 1.2.19beta10, May 24, 2007, are
Copyright (c) 2004,2006-2007 Glenn Randers-Pehrson, and are
distributed according to the same disclaimer and license as libpng-1.2.5
with the following individual added to the list of Contributing Authors
@@ -3702,7 +3702,7 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
glennrp at users.sourceforge.net
-May 23, 2007
+May 24, 2007
.\" end of man page
diff --git a/libpngpf.3 b/libpngpf.3
index 5abe43b84..a61b73cf5 100644
--- a/libpngpf.3
+++ b/libpngpf.3
@@ -1,6 +1,6 @@
-.TH LIBPNGPF 3 "May 23, 2007"
+.TH LIBPNGPF 3 "May 24, 2007"
.SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.2.19beta9
+libpng \- Portable Network Graphics (PNG) Reference Library 1.2.19beta10
(private functions)
.SH SYNOPSIS
\fB#include <png.h>\fP
diff --git a/png.5 b/png.5
index feaabae04..fef90b2a4 100644
--- a/png.5
+++ b/png.5
@@ -1,4 +1,4 @@
-.TH PNG 5 "May 23, 2007"
+.TH PNG 5 "May 24, 2007"
.SH NAME
png \- Portable Network Graphics (PNG) format
.SH DESCRIPTION
diff --git a/png.c b/png.c
index 7994e7b89..b27c8c6e5 100644
--- a/png.c
+++ b/png.c
@@ -1,7 +1,7 @@
/* png.c - location for general purpose libpng functions
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -13,7 +13,7 @@
#include "png.h"
/* Generate a compiler error if there is an old png.h in the search path. */
-typedef version_1_2_19beta9 Your_png_h_is_not_version_1_2_19beta9;
+typedef version_1_2_19beta10 Your_png_h_is_not_version_1_2_19beta10;
/* Version information for C files. This had better match the version
* string defined in png.h. */
@@ -706,7 +706,7 @@ png_charp PNGAPI
png_get_copyright(png_structp png_ptr)
{
png_ptr = png_ptr; /* silence compiler warning about unused png_ptr */
- return ((png_charp) "\n libpng version 1.2.19beta9 - May 23, 2007\n\
+ return ((png_charp) "\n libpng version 1.2.19beta10 - May 24, 2007\n\
Copyright (c) 1998-2007 Glenn Randers-Pehrson\n\
Copyright (c) 1996-1997 Andreas Dilger\n\
Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.\n");
diff --git a/png.h b/png.h
index c0f63412b..ee8c1d0a5 100644
--- a/png.h
+++ b/png.h
@@ -1,7 +1,7 @@
/* png.h - header file for PNG reference library
*
- * libpng version 1.2.19beta9 - May 23, 2007
+ * libpng version 1.2.19beta10 - May 24, 2007
* Copyright (c) 1998-2007 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.19beta9 - May 23, 2007: Glenn
+ * libpng versions 0.97, January 1998, through 1.2.19beta10 - May 24, 2007: Glenn
* See also "Contributing Authors", below.
*
* Note about libpng version numbers:
@@ -150,7 +150,7 @@
* 1.2.17 13 10217 12.so.0.17[.0]
* 1.0.26 10 10026 10.so.0.26[.0]
* 1.2.18 13 10218 12.so.0.18[.0]
- * 1.2.19beta1-9 13 10219 12.so.0.19[.0]
+ * 1.2.19beta1-10 13 10219 12.so.0.19[.0]
*
* Henceforth the source version will match the shared-library major
* and minor numbers; the shared-library major version number will be
@@ -180,7 +180,7 @@
* If you modify libpng you may insert additional notices immediately following
* this sentence.
*
- * libpng versions 1.2.6, August 15, 2004, through 1.2.19beta9, May 23, 2007, are
+ * libpng versions 1.2.6, August 15, 2004, through 1.2.19beta10, May 24, 2007, are
* Copyright (c) 2004, 2006-2007 Glenn Randers-Pehrson, and are
* distributed according to the same disclaimer and license as libpng-1.2.5
* with the following individual added to the list of Contributing Authors:
@@ -292,13 +292,13 @@
* Y2K compliance in libpng:
* =========================
*
- * May 23, 2007
+ * May 24, 2007
*
* 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.19beta9 are Y2K compliant. It is my belief that earlier
+ * upward through 1.2.19beta10 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
@@ -354,9 +354,9 @@
*/
/* Version information for png.h - this should match the version in png.c */
-#define PNG_LIBPNG_VER_STRING "1.2.19beta9"
+#define PNG_LIBPNG_VER_STRING "1.2.19beta10"
#define PNG_HEADER_VERSION_STRING \
- " libpng version 1.2.19beta9 - May 23, 2007 (header)\n"
+ " libpng version 1.2.19beta10 - May 24, 2007 (header)\n"
#define PNG_LIBPNG_VER_SONUM 0
#define PNG_LIBPNG_VER_DLLNUM 13
@@ -368,7 +368,7 @@
/* This should match the numeric part of the final component of
* PNG_LIBPNG_VER_STRING, omitting any leading zero: */
-#define PNG_LIBPNG_VER_BUILD 9
+#define PNG_LIBPNG_VER_BUILD 10
/* Release Status */
#define PNG_LIBPNG_BUILD_ALPHA 1
@@ -1407,7 +1407,7 @@ struct png_struct_def
/* This triggers a compiler error in png.c, if png.c and png.h
* do not agree upon the version number.
*/
-typedef png_structp version_1_2_19beta9;
+typedef png_structp version_1_2_19beta10;
typedef png_struct FAR * FAR * png_structpp;
diff --git a/pngconf.h b/pngconf.h
index 743a54ae9..e57df0227 100644
--- a/pngconf.h
+++ b/pngconf.h
@@ -1,7 +1,7 @@
/* pngconf.h - machine configurable file for libpng
*
- * libpng version 1.2.19beta9 - May 23, 2007
+ * libpng version 1.2.19beta10 - May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngerror.c b/pngerror.c
index a631aff6e..4b2aed3ed 100644
--- a/pngerror.c
+++ b/pngerror.c
@@ -1,7 +1,7 @@
/* pngerror.c - stub functions for i/o and memory allocation
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2006 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pnggccrd.c b/pnggccrd.c
index 56230cd92..f36e69a96 100644
--- a/pnggccrd.c
+++ b/pnggccrd.c
@@ -7,7 +7,7 @@
* and http://www.intel.com/drg/pentiumII/appnotes/923/923.htm
* for Intel's performance analysis of the MMX vs. non-MMX code.
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 22, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation
@@ -225,8 +225,20 @@
* - eliminated incorrect use of width_mmx in pixel_bytes == 8 case
*
* 20040724:
- * - more tinkering with clobber list at lines 4529 and 5033, to get
- * it to compile on gcc-3.4.
+ * - more tinkering with clobber list at lines 4529 and 5033 to get it to
+ * compile with gcc 3.4
+ *
+ * 20070313:
+ * - finally applied Giuseppe Ghibò's 64-bit patch of 20060803 (completely
+ * overlooked Dylan Alex Simon's similar patch of 20060414, oops...)
+ *
+ * 20070524:
+ * - fixed link failure caused by asm-only variables being optimized out
+ * (identified by Dimitri of TrollTech) with __attribute__((used)), which
+ * also gets rid of warnings => nuked ugly png_squelch_warnings() hack
+ * - dropped redundant ifdef
+ * - moved png_mmx_support() back up where originally intended (as in
+ * pngvcrd.c), using __attribute__((noinline)) in extra prototype
*
* STILL TO DO:
* - test png_do_read_interlace() 64-bit case (pixel_bytes == 8)
@@ -256,6 +268,7 @@ static PNG_CONST int FARDATA png_pass_width[7] = {8, 4, 4, 2, 2, 1, 1};
#endif
#if defined(PNG_MMX_CODE_SUPPORTED)
+
/* djgpp, Win32, Cygwin, and OS2 add their own underscores to global variables,
* so define them without: */
#if defined(__DJGPP__) || defined(WIN32) || defined(__CYGWIN__) || \
@@ -295,100 +308,177 @@ static PNG_CONST int FARDATA png_pass_width[7] = {8, 4, 4, 2, 2, 1, 1};
# define _pbtemp pbtemp
# define _pctemp pctemp
#endif
-#endif
+#endif // djgpp, Win32, Cygwin, OS2
-/* These constants are used in the inlined MMX assembly code.
- Ignore gcc's "At top level: defined but not used" warnings. */
+/* These constants are used in the inlined MMX assembly code. */
-/* GRR 20000706: originally _unmask was needed only when compiling with -fPIC,
- * since that case uses the %ebx register for indexing the Global Offset Table
- * and there were no other registers available. But gcc 2.95 and later emit
- * "more than 10 operands in `asm'" errors when %ebx is used to preload unmask
- * in the non-PIC case, so we'll just use the global unconditionally now.
- */
-#ifdef PNG_THREAD_UNSAFE_OK
-static int _unmask;
-#endif
+typedef unsigned long long ull;
-#if defined(PNG_MMX_CODE_SUPPORTED)
-static PNG_CONST unsigned long long _mask8_0 = 0x0102040810204080LL;
+static PNG_CONST ull _mask8_0 __attribute__((used)) = 0x0102040810204080LL;
-static PNG_CONST unsigned long long _mask16_1 = 0x0101020204040808LL;
-static PNG_CONST unsigned long long _mask16_0 = 0x1010202040408080LL;
+static PNG_CONST ull _mask16_1 __attribute__((used)) = 0x0101020204040808LL;
+static PNG_CONST ull _mask16_0 __attribute__((used)) = 0x1010202040408080LL;
-static PNG_CONST unsigned long long _mask24_2 = 0x0101010202020404LL;
-static PNG_CONST unsigned long long _mask24_1 = 0x0408080810101020LL;
-static PNG_CONST unsigned long long _mask24_0 = 0x2020404040808080LL;
+static PNG_CONST ull _mask24_2 __attribute__((used)) = 0x0101010202020404LL;
+static PNG_CONST ull _mask24_1 __attribute__((used)) = 0x0408080810101020LL;
+static PNG_CONST ull _mask24_0 __attribute__((used)) = 0x2020404040808080LL;
-static PNG_CONST unsigned long long _mask32_3 = 0x0101010102020202LL;
-static PNG_CONST unsigned long long _mask32_2 = 0x0404040408080808LL;
-static PNG_CONST unsigned long long _mask32_1 = 0x1010101020202020LL;
-static PNG_CONST unsigned long long _mask32_0 = 0x4040404080808080LL;
+static PNG_CONST ull _mask32_3 __attribute__((used)) = 0x0101010102020202LL;
+static PNG_CONST ull _mask32_2 __attribute__((used)) = 0x0404040408080808LL;
+static PNG_CONST ull _mask32_1 __attribute__((used)) = 0x1010101020202020LL;
+static PNG_CONST ull _mask32_0 __attribute__((used)) = 0x4040404080808080LL;
-static PNG_CONST unsigned long long _mask48_5 = 0x0101010101010202LL;
-static PNG_CONST unsigned long long _mask48_4 = 0x0202020204040404LL;
-static PNG_CONST unsigned long long _mask48_3 = 0x0404080808080808LL;
-static PNG_CONST unsigned long long _mask48_2 = 0x1010101010102020LL;
-static PNG_CONST unsigned long long _mask48_1 = 0x2020202040404040LL;
-static PNG_CONST unsigned long long _mask48_0 = 0x4040808080808080LL;
+static PNG_CONST ull _mask48_5 __attribute__((used)) = 0x0101010101010202LL;
+static PNG_CONST ull _mask48_4 __attribute__((used)) = 0x0202020204040404LL;
+static PNG_CONST ull _mask48_3 __attribute__((used)) = 0x0404080808080808LL;
+static PNG_CONST ull _mask48_2 __attribute__((used)) = 0x1010101010102020LL;
+static PNG_CONST ull _mask48_1 __attribute__((used)) = 0x2020202040404040LL;
+static PNG_CONST ull _mask48_0 __attribute__((used)) = 0x4040808080808080LL;
-static PNG_CONST unsigned long long _const4 = 0x0000000000FFFFFFLL;
-//static PNG_CONST unsigned long long _const5 = 0x000000FFFFFF0000LL; // NOT USED
-static PNG_CONST unsigned long long _const6 = 0x00000000000000FFLL;
+static PNG_CONST ull _const4 = 0x0000000000FFFFFFLL;
+//static PNG_CONST ull _const5 = 0x000000FFFFFF0000LL; // NOT USED
+static PNG_CONST ull _const6 = 0x00000000000000FFLL;
// These are used in the row-filter routines and should/would be local
-// variables if not for gcc addressing limitations.
+// variables if not for gcc addressing limitations (apparently lifted
+// in either 3.x or 4.x).
// WARNING: Their presence probably defeats the thread safety of libpng.
#ifdef PNG_THREAD_UNSAFE_OK
+// GRR 20000706: originally _unmask was needed only when compiling with -fPIC,
+// since that case uses the %ebx register to index the Global Offset Table,
+// and there were no other registers available. But gcc 2.95 and later emit
+// "more than 10 operands in `asm'" errors when %ebx is used to preload
+// unmask in non-PIC case, so we'll just use the global unconditionally now.
+static int _unmask;
+
static png_uint_32 _FullLength;
-static png_uint_32 _MMXLength;
-static int _dif;
-static int _patemp; // temp variables for Paeth routine
-static int _pbtemp;
-static int _pctemp;
-#endif
-#endif
+static png_uint_32 _MMXLength __attribute__((used));
+static int _dif __attribute__((used));
+static int _patemp __attribute__((used)); // temp variables for
+static int _pbtemp __attribute__((used)); // Paeth routine
+static int _pctemp __attribute__((used));
+#endif // PNG_THREAD_UNSAFE_OK
-#ifdef PNG_SQUELCH_WARNINGS
-void /* PRIVATE */
-png_squelch_warnings(void)
+#endif // PNG_MMX_CODE_SUPPORTED
+
+
+
+static int _mmx_supported = 2;
+
+/*===========================================================================*/
+/* */
+/* P N G _ M M X _ S U P P O R T */
+/* */
+/*===========================================================================*/
+
+/* GRR NOTES: (1) the following code assumes 386 or better (pushfl/popfl)
+ * (2) all instructions compile with gcc 2.7.2.3 and later
+ * x (3) the function is moved down here to prevent gcc from
+ * x inlining it in multiple places and then barfing be-
+ * x cause the ".NOT_SUPPORTED" label is multiply defined
+ */
+
+// GRR 20070524: This declaration apparently is compatible with but supersedes
+// the one in png.h; in any case, the generated object file is slightly
+// smaller. It is unnecessary with gcc 4.1.2, but gcc 2.x apparently
+// replicated the ".NOT_SUPPORTED" label in each location the function was
+// inlined, leading to compilation errors due to the "multiply defined"
+// label. Old workaround was to leave the function at the end of this
+// file; new one (still testing) is to use a gcc-specific function attribute
+// to prevent inlining.
+int PNGAPI
+png_mmx_support(void) __attribute__((noinline));
+
+int PNGAPI
+png_mmx_support(void)
{
- unsigned long long junk_ll;
-#ifdef PNG_THREAD_UNSAFE_OK
- _dif = _dif;
- _patemp = _patemp;
- _pbtemp = _pbtemp;
- _pctemp = _pctemp;
- _MMXLength= _MMXLength;
+#if defined(PNG_MMX_CODE_SUPPORTED)
+ int result;
+ __asm__ __volatile__ (
+#ifdef __x86_64__
+ "pushq %%rbx \n\t" // rbx gets clobbered by CPUID instruction
+ "pushq %%rcx \n\t" // so does rcx...
+ "pushq %%rdx \n\t" // ...and rdx (but rcx & rdx safe on Linux)
+ "pushfq \n\t" // save Eflag to stack
+ "popq %%rax \n\t" // get Eflag from stack into rax
+ "movq %%rax, %%rcx \n\t" // make another copy of Eflag in rcx
+ "xorl $0x200000, %%eax \n\t" // toggle ID bit in Eflag (i.e., bit 21)
+ "pushq %%rax \n\t" // save modified Eflag back to stack
+ "popfq \n\t" // restore modified value to Eflag reg
+ "pushfq \n\t" // save Eflag to stack
+ "popq %%rax \n\t" // get Eflag from stack
+ "pushq %%rcx \n\t" // save original Eflag to stack
+ "popfq \n\t" // restore original Eflag
+#else
+ "pushl %%ebx \n\t" // ebx gets clobbered by CPUID instruction
+ "pushl %%ecx \n\t" // so does ecx...
+ "pushl %%edx \n\t" // ...and edx (but ecx & edx safe on Linux)
+ "pushfl \n\t" // save Eflag to stack
+ "popl %%eax \n\t" // get Eflag from stack into eax
+ "movl %%eax, %%ecx \n\t" // make another copy of Eflag in ecx
+ "xorl $0x200000, %%eax \n\t" // toggle ID bit in Eflag (i.e., bit 21)
+ "pushl %%eax \n\t" // save modified Eflag back to stack
+ "popfl \n\t" // restore modified value to Eflag reg
+ "pushfl \n\t" // save Eflag to stack
+ "popl %%eax \n\t" // get Eflag from stack
+ "pushl %%ecx \n\t" // save original Eflag to stack
+ "popfl \n\t" // restore original Eflag
#endif
- junk_ll = _const4;
- junk_ll = _const6;
- junk_ll = _mask8_0;
- junk_ll = _mask16_1;
- junk_ll = _mask16_0;
- junk_ll = _mask24_2;
- junk_ll = _mask24_1;
- junk_ll = _mask24_0;
- junk_ll = _mask32_3;
- junk_ll = _mask32_2;
- junk_ll = _mask32_1;
- junk_ll = _mask32_0;
- junk_ll = _mask48_5;
- junk_ll = _mask48_4;
- junk_ll = _mask48_3;
- junk_ll = _mask48_2;
- junk_ll = _mask48_1;
- junk_ll = _mask48_0;
- junk_ll = junk_ll;
-}
-#endif /* PNG_SQUELCH_WARNINGS */
-#endif /* PNG_MMX_CODE_SUPPORTED */
+ "xorl %%ecx, %%eax \n\t" // compare new Eflag with original Eflag
+ "jz 0f \n\t" // if same, CPUID instr. is not supported
+ "xorl %%eax, %%eax \n\t" // set eax to zero
+// ".byte 0x0f, 0xa2 \n\t" // CPUID instruction (two-byte opcode)
+ "cpuid \n\t" // get the CPU identification info
+ "cmpl $1, %%eax \n\t" // make sure eax return non-zero value
+ "jl 0f \n\t" // if eax is zero, MMX is not supported
+ "xorl %%eax, %%eax \n\t" // set eax to zero and...
+ "incl %%eax \n\t" // ...increment eax to 1. This pair is
+ // faster than the instruction "mov eax, 1"
+ "cpuid \n\t" // get the CPU identification info again
+ "andl $0x800000, %%edx \n\t" // mask out all bits but MMX bit (23)
+ "cmpl $0, %%edx \n\t" // 0 = MMX not supported
+ "jz 0f \n\t" // non-zero = yes, MMX IS supported
+
+ "movl $1, %%eax \n\t" // set return value to 1
+ "jmp 1f \n\t" // DONE: have MMX support
+
+ "0: \n\t" // .NOT_SUPPORTED: target label for jump instructions
+ "movl $0, %%eax \n\t" // set return value to 0
+ "1: \n\t" // .RETURN: target label for jump instructions
+#ifdef __x86_64__
+ "popq %%rdx \n\t" // restore rdx
+ "popq %%rcx \n\t" // restore rcx
+ "popq %%rbx \n\t" // restore rbx
+#else
+ "popl %%edx \n\t" // restore edx
+ "popl %%ecx \n\t" // restore ecx
+ "popl %%ebx \n\t" // restore ebx
+#endif
+
+// "ret \n\t" // DONE: no MMX support
+ // (fall through to standard C "ret")
+
+ : "=a" (result) // output list
+
+ : // any variables used on input (none)
+
+ // no clobber list
+// , "%ebx", "%ecx", "%edx" // GRR: we handle these manually
+// , "memory" // if write to a variable gcc thought was in a reg
+// , "cc" // "condition codes" (flag bits)
+ );
+ _mmx_supported = result;
+#else
+ _mmx_supported = 0;
+#endif /* PNG_MMX_CODE_SUPPORTED */
+
+ return _mmx_supported;
+}
-static int _mmx_supported = 2;
/*===========================================================================*/
/* */
@@ -1746,7 +1836,7 @@ png_do_read_interlace(png_structp png_ptr)
int dummy_value_c; // fix 'forbidden register spilled'
int dummy_value_S;
int dummy_value_D;
- int dummy_value_a;
+ long dummy_value_a;
__asm__ __volatile__ (
"subl $21, %%edi \n\t"
@@ -1799,7 +1889,7 @@ png_do_read_interlace(png_structp png_ptr)
int dummy_value_c; // fix 'forbidden register spilled'
int dummy_value_S;
int dummy_value_D;
- int dummy_value_a;
+ long dummy_value_a;
__asm__ __volatile__ (
"subl $9, %%edi \n\t"
@@ -1853,8 +1943,8 @@ png_do_read_interlace(png_structp png_ptr)
int dummy_value_c; // fix 'forbidden register spilled'
int dummy_value_S;
int dummy_value_D;
- int dummy_value_a;
- int dummy_value_d;
+ long dummy_value_a;
+ long dummy_value_d;
__asm__ __volatile__ (
"subl $3, %%esi \n\t"
@@ -2802,8 +2892,12 @@ png_read_filter_row_mmx_avg(png_row_infop row_info, png_bytep row,
__asm__ __volatile__ (
// initialize address pointers and offset
#ifdef __PIC__
+#ifdef __x86_64__
+ "pushq %%rbx \n\t" // save index to Global Offset Table
+#else
"pushl %%ebx \n\t" // save index to Global Offset Table
#endif
+#endif
//pre "movl row, %%edi \n\t" // edi: Avg(x)
"xorl %%ebx, %%ebx \n\t" // ebx: x
"movl %%edi, %%edx \n\t"
@@ -2858,8 +2952,12 @@ png_read_filter_row_mmx_avg(png_row_infop row_info, png_bytep row,
"subl %%eax, %%ecx \n\t" // drop over bytes from original length
"movl %%ecx, _MMXLength \n\t"
#ifdef __PIC__
+#ifdef __x86_64__
+ "popq %%rbx \n\t" // restore index to Global Offset Table
+#else
"popl %%ebx \n\t" // restore index to Global Offset Table
#endif
+#endif
: "=c" (dummy_value_c), // output regs (dummy)
"=S" (dummy_value_S),
@@ -3234,8 +3332,12 @@ png_read_filter_row_mmx_avg(png_row_infop row_info, png_bytep row,
__asm__ __volatile__ (
// re-init address pointers and offset
#ifdef __PIC__
+#ifdef __x86_64__
+ "pushq %%rbx \n\t" // save Global Offset Table index
+#else
"pushl %%ebx \n\t" // save Global Offset Table index
#endif
+#endif
"movl _dif, %%ebx \n\t" // ebx: x = offset to alignment
// boundary
// preload "movl row, %%edi \n\t" // edi: Avg(x)
@@ -3265,8 +3367,12 @@ png_read_filter_row_mmx_avg(png_row_infop row_info, png_bytep row,
"avg_1end: \n\t"
#ifdef __PIC__
+#ifdef __x86_64
+ "popq %%rbx \n\t" // Global Offset Table index
+#else
"popl %%ebx \n\t" // Global Offset Table index
#endif
+#endif
: "=c" (dummy_value_c), // output regs (dummy)
"=S" (dummy_value_S),
@@ -3394,8 +3500,12 @@ png_read_filter_row_mmx_avg(png_row_infop row_info, png_bytep row,
// MMX acceleration complete; now do clean-up
// check if any remaining bytes left to decode
#ifdef __PIC__
+#ifdef __x86_64__
+ "pushq %%rbx \n\t" // save index to Global Offset Table
+#else
"pushl %%ebx \n\t" // save index to Global Offset Table
#endif
+#endif
"movl _MMXLength, %%ebx \n\t" // ebx: x == offset bytes after MMX
//pre "movl row, %%edi \n\t" // edi: Avg(x)
"cmpl _FullLength, %%ebx \n\t" // test if offset at end of array
@@ -3424,8 +3534,12 @@ png_read_filter_row_mmx_avg(png_row_infop row_info, png_bytep row,
"avg_end: \n\t"
"EMMS \n\t" // end MMX; prep for poss. FP instrs.
#ifdef __PIC__
+#ifdef __x86_64__
+ "popq %%rbx \n\t" // restore index to Global Offset Table
+#else
"popl %%ebx \n\t" // restore index to Global Offset Table
#endif
+#endif
: "=c" (dummy_value_c), // output regs (dummy)
"=S" (dummy_value_S),
@@ -3469,8 +3583,12 @@ png_read_filter_row_mmx_paeth(png_row_infop row_info, png_bytep row,
__asm__ __volatile__ (
#ifdef __PIC__
+#ifdef __x86_64__
+ "pushq %%rbx \n\t" // save index to Global Offset Table
+#else
"pushl %%ebx \n\t" // save index to Global Offset Table
#endif
+#endif
"xorl %%ebx, %%ebx \n\t" // ebx: x offset
//pre "movl row, %%edi \n\t"
"xorl %%edx, %%edx \n\t" // edx: x-bpp offset
@@ -3579,8 +3697,12 @@ png_read_filter_row_mmx_paeth(png_row_infop row_info, png_bytep row,
"subl %%eax, %%ecx \n\t" // drop over bytes from original length
"movl %%ecx, _MMXLength \n\t"
#ifdef __PIC__
+#ifdef __x86_64__
+ "popq %%rbx \n\t" // restore index to Global Offset Table
+#else
"popl %%ebx \n\t" // restore index to Global Offset Table
#endif
+#endif
: "=c" (dummy_value_c), // output regs (dummy)
"=S" (dummy_value_S),
@@ -4279,8 +4401,12 @@ png_read_filter_row_mmx_paeth(png_row_infop row_info, png_bytep row,
{
__asm__ __volatile__ (
#ifdef __PIC__
+#ifdef __x86_64__
+ "pushq %%rbx \n\t" // save Global Offset Table index
+#else
"pushl %%ebx \n\t" // save Global Offset Table index
#endif
+#endif
"movl _dif, %%ebx \n\t"
"cmpl _FullLength, %%ebx \n\t"
"jnb paeth_dend \n\t"
@@ -4366,8 +4492,12 @@ png_read_filter_row_mmx_paeth(png_row_infop row_info, png_bytep row,
"paeth_dend: \n\t"
#ifdef __PIC__
+#ifdef __x86_64__
+ "popq %%rbx \n\t" // index to Global Offset Table
+#else
"popl %%ebx \n\t" // index to Global Offset Table
#endif
+#endif
: "=c" (dummy_value_c), // output regs (dummy)
"=S" (dummy_value_S),
@@ -4391,8 +4521,12 @@ png_read_filter_row_mmx_paeth(png_row_infop row_info, png_bytep row,
// MMX acceleration complete; now do clean-up
// check if any remaining bytes left to decode
#ifdef __PIC__
+#ifdef __x86_64__
+ "pushq %%rbx \n\t" // save index to Global Offset Table
+#else
"pushl %%ebx \n\t" // save index to Global Offset Table
#endif
+#endif
"movl _MMXLength, %%ebx \n\t"
"cmpl _FullLength, %%ebx \n\t"
"jnb paeth_end \n\t"
@@ -4478,8 +4612,12 @@ png_read_filter_row_mmx_paeth(png_row_infop row_info, png_bytep row,
"paeth_end: \n\t"
"EMMS \n\t" // end MMX; prep for poss. FP instrs.
#ifdef __PIC__
+#ifdef __x86_64__
+ "popq %%rbx \n\t" // restore index to Global Offset Table
+#else
"popl %%ebx \n\t" // restore index to Global Offset Table
#endif
+#endif
: "=c" (dummy_value_c), // output regs (dummy)
"=S" (dummy_value_S),
@@ -4947,8 +5085,12 @@ png_read_filter_row_mmx_up(png_row_infop row_info, png_bytep row,
//pre "movl row, %%edi \n\t"
// get # of bytes to alignment
#ifdef __PIC__
+#ifdef __x86_64__
+ "pushq %%rbx \n\t"
+#else
"pushl %%ebx \n\t"
#endif
+#endif
"movl %%edi, %%ecx \n\t"
"xorl %%ebx, %%ebx \n\t"
"addl $0x7, %%ecx \n\t"
@@ -5049,8 +5191,12 @@ png_read_filter_row_mmx_up(png_row_infop row_info, png_bytep row,
"up_end: \n\t"
"EMMS \n\t" // conversion of filtered row complete
#ifdef __PIC__
+#ifdef __x86_64__
+ "popq %%rbx \n\t"
+#else
"popl %%ebx \n\t"
#endif
+#endif
: "=d" (dummy_value_d), // 0 // output regs (dummy)
"=S" (dummy_value_S), // 1
@@ -5336,92 +5482,6 @@ png_read_filter_row(png_structp png_ptr, png_row_infop row_info, png_bytep
#endif /* PNG_HAVE_MMX_READ_FILTER_ROW */
-/*===========================================================================*/
-/* */
-/* P N G _ M M X _ S U P P O R T */
-/* */
-/*===========================================================================*/
-
-/* GRR NOTES: (1) the following code assumes 386 or better (pushfl/popfl)
- * (2) all instructions compile with gcc 2.7.2.3 and later
- * (3) the function is moved down here to prevent gcc from
- * inlining it in multiple places and then barfing be-
- * cause the ".NOT_SUPPORTED" label is multiply defined
- * [is there a way to signal that a *single* function should
- * not be inlined? is there a way to modify the label for
- * each inlined instance, e.g., by appending _1, _2, etc.?
- * maybe if don't use leading "." in label name? (nope...sigh)]
- */
-
-int PNGAPI
-png_mmx_support(void)
-{
-#if defined(PNG_MMX_CODE_SUPPORTED)
- int result;
- __asm__ __volatile__ (
- "pushl %%ebx \n\t" // ebx gets clobbered by CPUID instruction
- "pushl %%ecx \n\t" // so does ecx...
- "pushl %%edx \n\t" // ...and edx (but ecx & edx safe on Linux)
-// ".byte 0x66 \n\t" // convert 16-bit pushf to 32-bit pushfd
-// "pushf \n\t" // 16-bit pushf
- "pushfl \n\t" // save Eflag to stack
- "popl %%eax \n\t" // get Eflag from stack into eax
- "movl %%eax, %%ecx \n\t" // make another copy of Eflag in ecx
- "xorl $0x200000, %%eax \n\t" // toggle ID bit in Eflag (i.e., bit 21)
- "pushl %%eax \n\t" // save modified Eflag back to stack
-// ".byte 0x66 \n\t" // convert 16-bit popf to 32-bit popfd
-// "popf \n\t" // 16-bit popf
- "popfl \n\t" // restore modified value to Eflag reg
- "pushfl \n\t" // save Eflag to stack
- "popl %%eax \n\t" // get Eflag from stack
- "pushl %%ecx \n\t" // save original Eflag to stack
- "popfl \n\t" // restore original Eflag
- "xorl %%ecx, %%eax \n\t" // compare new Eflag with original Eflag
- "jz 0f \n\t" // if same, CPUID instr. is not supported
-
- "xorl %%eax, %%eax \n\t" // set eax to zero
-// ".byte 0x0f, 0xa2 \n\t" // CPUID instruction (two-byte opcode)
- "cpuid \n\t" // get the CPU identification info
- "cmpl $1, %%eax \n\t" // make sure eax return non-zero value
- "jl 0f \n\t" // if eax is zero, MMX is not supported
-
- "xorl %%eax, %%eax \n\t" // set eax to zero and...
- "incl %%eax \n\t" // ...increment eax to 1. This pair is
- // faster than the instruction "mov eax, 1"
- "cpuid \n\t" // get the CPU identification info again
- "andl $0x800000, %%edx \n\t" // mask out all bits but MMX bit (23)
- "cmpl $0, %%edx \n\t" // 0 = MMX not supported
- "jz 0f \n\t" // non-zero = yes, MMX IS supported
-
- "movl $1, %%eax \n\t" // set return value to 1
- "jmp 1f \n\t" // DONE: have MMX support
-
- "0: \n\t" // .NOT_SUPPORTED: target label for jump instructions
- "movl $0, %%eax \n\t" // set return value to 0
- "1: \n\t" // .RETURN: target label for jump instructions
- "popl %%edx \n\t" // restore edx
- "popl %%ecx \n\t" // restore ecx
- "popl %%ebx \n\t" // restore ebx
-
-// "ret \n\t" // DONE: no MMX support
- // (fall through to standard C "ret")
-
- : "=a" (result) // output list
-
- : // any variables used on input (none)
-
- // no clobber list
-// , "%ebx", "%ecx", "%edx" // GRR: we handle these manually
-// , "memory" // if write to a variable gcc thought was in a reg
-// , "cc" // "condition codes" (flag bits)
- );
- _mmx_supported = result;
-#else
- _mmx_supported = 0;
-#endif /* PNG_MMX_CODE_SUPPORTED */
-
- return _mmx_supported;
-}
+#endif /* PNG_USE_PNGGCCRD */
-#endif /* PNG_USE_PNGGCCRD */
diff --git a/pngpread.c b/pngpread.c
index 0637118a5..5bb0d69b1 100644
--- a/pngpread.c
+++ b/pngpread.c
@@ -1,7 +1,7 @@
/* pngpread.c - read a png file in push mode
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngread.c b/pngread.c
index 21ad84a33..408d270fe 100644
--- a/pngread.c
+++ b/pngread.c
@@ -1,7 +1,7 @@
/* pngread.c - read a PNG file
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngrtran.c b/pngrtran.c
index 86ad5ccaa..82608d778 100644
--- a/pngrtran.c
+++ b/pngrtran.c
@@ -1,7 +1,7 @@
/* pngrtran.c - transforms the data in a row for PNG readers
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngrutil.c b/pngrutil.c
index 7e68068e4..3353f2508 100644
--- a/pngrutil.c
+++ b/pngrutil.c
@@ -1,7 +1,7 @@
/* pngrutil.c - utilities to read a PNG file
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngtest.c b/pngtest.c
index 3cf642d49..7859e8bbd 100644
--- a/pngtest.c
+++ b/pngtest.c
@@ -1551,4 +1551,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_19beta9 your_png_h_is_not_version_1_2_19beta9;
+typedef version_1_2_19beta10 your_png_h_is_not_version_1_2_19beta10;
diff --git a/pngvcrd.c b/pngvcrd.c
index d55e2f542..811cd0ddf 100644
--- a/pngvcrd.c
+++ b/pngvcrd.c
@@ -3,7 +3,7 @@
*
* For Intel x86 CPU and Microsoft Visual C++ compiler
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation
diff --git a/pngwutil.c b/pngwutil.c
index 2120672a1..990fe4f4a 100644
--- a/pngwutil.c
+++ b/pngwutil.c
@@ -1,7 +1,7 @@
/* pngwutil.c - utilities to write a PNG file
*
- * Last changed in libpng 1.2.19 May 23, 2007
+ * Last changed in libpng 1.2.19 May 24, 2007
* For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2007 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
index e777dd041..66697f893 100644
--- a/scripts/CMakeLists.txt
+++ b/scripts/CMakeLists.txt
@@ -179,7 +179,7 @@ configure_file(${PNG_SOURCE_DIR}/scripts/libpng-config.in
# SET UP LINKS
set_target_properties(${PNG_LIB_NAME} PROPERTIES
-# VERSION 0.${PNGLIB_RELEASE}.1.2.19beta9
+# VERSION 0.${PNGLIB_RELEASE}.1.2.19beta10
VERSION 0.${PNGLIB_RELEASE}.0
SOVERSION 0
CLEAN_DIRECT_OUTPUT 1)
diff --git a/scripts/libpng-config-head.in b/scripts/libpng-config-head.in
index 1c28c32c3..2bb67d8ab 100755
--- a/scripts/libpng-config-head.in
+++ b/scripts/libpng-config-head.in
@@ -8,7 +8,7 @@
# Modeled after libxml-config.
-version=1.2.19beta9
+version=1.2.19beta10
prefix=""
libdir=""
libs=""
diff --git a/scripts/libpng.pc-configure.in b/scripts/libpng.pc-configure.in
index 17b006457..84ba2b588 100644
--- a/scripts/libpng.pc-configure.in
+++ b/scripts/libpng.pc-configure.in
@@ -5,6 +5,6 @@ includedir=@includedir@/libpng12
Name: libpng
Description: Loads and saves PNG files
-Version: 1.2.19beta9
+Version: 1.2.19beta10
Libs: -L${libdir} -lpng12
Cflags: -I${includedir} @LIBPNG_NO_MMX@
diff --git a/scripts/libpng.pc.in b/scripts/libpng.pc.in
index afb84efe4..40aa42618 100644
--- a/scripts/libpng.pc.in
+++ b/scripts/libpng.pc.in
@@ -5,6 +5,6 @@ includedir=@includedir@/libpng12
Name: libpng
Description: Loads and saves PNG files
-Version: 1.2.19beta9
+Version: 1.2.19beta10
Libs: -L${libdir} -lpng12
Cflags: -I${includedir}
diff --git a/scripts/makefile.32sunu b/scripts/makefile.32sunu
index f5866daa2..62585d93e 100644
--- a/scripts/makefile.32sunu
+++ b/scripts/makefile.32sunu
@@ -8,7 +8,7 @@
# Library name:
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.64sunu b/scripts/makefile.64sunu
index 9bc070d24..68f6a19a5 100644
--- a/scripts/makefile.64sunu
+++ b/scripts/makefile.64sunu
@@ -8,7 +8,7 @@
# Library name:
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.aix b/scripts/makefile.aix
index ad1e193d4..6fbefab5b 100644
--- a/scripts/makefile.aix
+++ b/scripts/makefile.aix
@@ -20,7 +20,7 @@ LN_SF = ln -f -s
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
prefix=/usr/local
diff --git a/scripts/makefile.beos b/scripts/makefile.beos
index 550fe3712..f3c04471a 100644
--- a/scripts/makefile.beos
+++ b/scripts/makefile.beos
@@ -8,7 +8,7 @@
# Library name:
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.cygwin b/scripts/makefile.cygwin
index b2f7d822b..6a7f32e6f 100644
--- a/scripts/makefile.cygwin
+++ b/scripts/makefile.cygwin
@@ -80,7 +80,7 @@ CFLAGS= $(strip $(MINGW_CCFLAGS) $(addprefix -I,$(ZLIBINC)) \
LIBNAME = libpng12
PNGMAJ = 0
CYGDLL = 12
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
SHAREDLIB=cygpng$(CYGDLL).dll
diff --git a/scripts/makefile.darwin b/scripts/makefile.darwin
index 62c27bd7c..b42cdd933 100644
--- a/scripts/makefile.darwin
+++ b/scripts/makefile.darwin
@@ -19,7 +19,7 @@ ZLIBINC=../zlib
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.dec b/scripts/makefile.dec
index a92ac9ecb..25afa5574 100644
--- a/scripts/makefile.dec
+++ b/scripts/makefile.dec
@@ -5,7 +5,7 @@
# Library name:
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/makefile.elf b/scripts/makefile.elf
index fe61c1423..1a30ff8c5 100644
--- a/scripts/makefile.elf
+++ b/scripts/makefile.elf
@@ -12,7 +12,7 @@
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx
index 055225281..52cb6c31f 100644
--- a/scripts/makefile.gcmmx
+++ b/scripts/makefile.gcmmx
@@ -16,7 +16,7 @@
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.hp64 b/scripts/makefile.hp64
index 9c1b42bc1..9ac04df75 100644
--- a/scripts/makefile.hp64
+++ b/scripts/makefile.hp64
@@ -18,7 +18,7 @@ ZLIBINC=/opt/zlib/include
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.hpgcc b/scripts/makefile.hpgcc
index 8d681d2e0..15a0d7329 100644
--- a/scripts/makefile.hpgcc
+++ b/scripts/makefile.hpgcc
@@ -8,7 +8,7 @@
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.hpux b/scripts/makefile.hpux
index cd2a414c5..7664ce2f6 100644
--- a/scripts/makefile.hpux
+++ b/scripts/makefile.hpux
@@ -18,7 +18,7 @@ ZLIBINC=/opt/zlib/include
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.linux b/scripts/makefile.linux
index ecc248280..c84fb3d6d 100644
--- a/scripts/makefile.linux
+++ b/scripts/makefile.linux
@@ -6,7 +6,7 @@
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.mingw b/scripts/makefile.mingw
index f8b2e2e53..30af8bcb1 100644
--- a/scripts/makefile.mingw
+++ b/scripts/makefile.mingw
@@ -76,7 +76,7 @@ CFLAGS= $(strip $(MINGW_CCFLAGS) $(addprefix -I,$(ZLIBINC)) \
LIBNAME = libpng12
PNGMAJ = 0
MINGDLL = 12
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
SHAREDLIB=libpng$(MINGDLL).dll
diff --git a/scripts/makefile.ne12bsd b/scripts/makefile.ne12bsd
index afb635d70..0d017e5b3 100644
--- a/scripts/makefile.ne12bsd
+++ b/scripts/makefile.ne12bsd
@@ -14,7 +14,7 @@ INCSDIR=${LOCALBASE}/include/libpng12
LIB= png12
SHLIB_MAJOR= 0
-SHLIB_MINOR= 1.2.19beta9
+SHLIB_MINOR= 1.2.19beta10
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
diff --git a/scripts/makefile.netbsd b/scripts/makefile.netbsd
index 842465cf9..740523807 100644
--- a/scripts/makefile.netbsd
+++ b/scripts/makefile.netbsd
@@ -14,7 +14,7 @@ INCSDIR=${LOCALBASE}/include/libpng
LIB= png
SHLIB_MAJOR= 3
-SHLIB_MINOR= 1.2.19beta9
+SHLIB_MINOR= 1.2.19beta10
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
diff --git a/scripts/makefile.nommx b/scripts/makefile.nommx
index ecb7ce408..ac9c96629 100644
--- a/scripts/makefile.nommx
+++ b/scripts/makefile.nommx
@@ -7,7 +7,7 @@
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.openbsd b/scripts/makefile.openbsd
index 4a4065fa6..1ee7e942b 100644
--- a/scripts/makefile.openbsd
+++ b/scripts/makefile.openbsd
@@ -8,7 +8,7 @@ LIBDIR= ${PREFIX}/lib
MANDIR= ${PREFIX}/man/cat
SHLIB_MAJOR= 0
-SHLIB_MINOR= 1.2.19beta9
+SHLIB_MINOR= 1.2.19beta10
LIB= png
SRCS= png.c pngerror.c pnggccrd.c pngget.c pngmem.c pngpread.c \
diff --git a/scripts/makefile.sco b/scripts/makefile.sco
index 4065b385e..a6e37a235 100644
--- a/scripts/makefile.sco
+++ b/scripts/makefile.sco
@@ -9,7 +9,7 @@
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.sggcc b/scripts/makefile.sggcc
index 1ab490088..d98dee8bc 100644
--- a/scripts/makefile.sggcc
+++ b/scripts/makefile.sggcc
@@ -6,7 +6,7 @@
# Library name:
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.sgi b/scripts/makefile.sgi
index 5a8847245..cd574d140 100644
--- a/scripts/makefile.sgi
+++ b/scripts/makefile.sgi
@@ -6,7 +6,7 @@
# Library name:
LIBNAME=libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.so9 b/scripts/makefile.so9
index 77915509a..933eca117 100644
--- a/scripts/makefile.so9
+++ b/scripts/makefile.so9
@@ -8,7 +8,7 @@
# Library name:
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris
index 9e95abcd1..b89beecfa 100644
--- a/scripts/makefile.solaris
+++ b/scripts/makefile.solaris
@@ -8,7 +8,7 @@
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/makefile.solaris-x86 b/scripts/makefile.solaris-x86
index d5560aeb3..8bd773201 100644
--- a/scripts/makefile.solaris-x86
+++ b/scripts/makefile.solaris-x86
@@ -8,7 +8,7 @@
# Library name:
LIBNAME = libpng12
PNGMAJ = 0
-PNGMIN = 1.2.19beta9
+PNGMIN = 1.2.19beta10
PNGVER = $(PNGMAJ).$(PNGMIN)
# Shared library names:
diff --git a/scripts/pngos2.def b/scripts/pngos2.def
index af092f4d0..1a3795c13 100644
--- a/scripts/pngos2.def
+++ b/scripts/pngos2.def
@@ -2,7 +2,7 @@
; PNG.LIB module definition file for OS/2
;----------------------------------------
-; Version 1.2.19beta9
+; Version 1.2.19beta10
LIBRARY PNG
DESCRIPTION "PNG image compression library for OS/2"
diff --git a/scripts/pngw32.def b/scripts/pngw32.def
index 2f2631c9c..243bf313f 100644
--- a/scripts/pngw32.def
+++ b/scripts/pngw32.def
@@ -5,7 +5,7 @@
LIBRARY
EXPORTS
-;Version 1.2.19beta9
+;Version 1.2.19beta10
png_build_grayscale_palette @1
png_check_sig @2
png_chunk_error @3