diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4fc2a39..eb34f63 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -209,7 +209,7 @@
 # SET UP LINKS
 if(PNG_SHARED)
   set_target_properties(${PNG_LIB_NAME} PROPERTIES
-#   VERSION 14.${PNGLIB_RELEASE}.1.4.1beta09
+#   VERSION 14.${PNGLIB_RELEASE}.1.4.1beta10
     VERSION 14.${PNGLIB_RELEASE}.0
     SOVERSION 14
     CLEAN_DIRECT_OUTPUT 1)
diff --git a/INSTALL b/INSTALL
index 9fae903..a0fc4cf 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,5 @@
 
-Installing libpng version 1.4.1beta09 - February 8, 2010
+Installing libpng version 1.4.1beta10 - February 8, 2010
 
 On Unix/Linux and similar systems, you can simply type
 
@@ -46,7 +46,7 @@
 correspond to the version of zlib that's installed.
 
 You can rename the directories that you downloaded (they
-might be called "libpng-1.4.1beta09" or "libpng14" and "zlib-1.2.3"
+might be called "libpng-1.4.1beta10" or "libpng14" and "zlib-1.2.3"
 or "zlib123") so that you have directories called "zlib" and "libpng".
 
 Your directory structure should look like this:
diff --git a/LICENSE b/LICENSE
index 5e18ab4..954bb12 100644
--- a/LICENSE
+++ b/LICENSE
@@ -10,7 +10,7 @@
 
 This code is released under the libpng license.
 
-libpng versions 1.2.6, August 15, 2004, through 1.4.1beta09, February 8, 2010, are
+libpng versions 1.2.6, August 15, 2004, through 1.4.1beta10, February 8, 2010, 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
diff --git a/Makefile.am b/Makefile.am
index 9ba384c..c0abfa3 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -73,7 +73,7 @@
 	${srcdir}/contrib/pngsuite/* \
 	${srcdir}/contrib/visupng/* \
 	$(TESTS) \
-	example.c libpng-1.4.1beta09.txt
+	example.c libpng-1.4.1beta10.txt
 
 CLEANFILES= pngout.png libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.pc libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@-config libpng.vers \
 libpng.sym
diff --git a/Makefile.in b/Makefile.in
index f07d316..6bd161e 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -333,7 +333,7 @@
 	${srcdir}/contrib/pngsuite/* \
 	${srcdir}/contrib/visupng/* \
 	$(TESTS) \
-	example.c libpng-1.4.1beta09.txt
+	example.c libpng-1.4.1beta10.txt
 
 CLEANFILES = pngout.png libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.pc libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@-config libpng.vers \
 libpng.sym
diff --git a/README b/README
index 9f2451a..d8b4d5b 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-README for libpng version 1.4.1beta09 - February 8, 2010 (shared library 14.0)
+README for libpng version 1.4.1beta10 - February 8, 2010 (shared library 14.0)
 See the note about version numbers near the top of png.h
 
 See INSTALL for instructions on how to install libpng.
@@ -185,9 +185,9 @@
        makefile.std     =>  Generic UNIX makefile (cc, creates static
                             libpng.a)
        makefile.elf     =>  Linux/ELF makefile symbol versioning,
-                            gcc, creates libpng14.so.14.1.4.1beta09)
+                            gcc, creates libpng14.so.14.1.4.1beta10)
        makefile.linux   =>  Linux/ELF makefile
-                            (gcc, creates libpng14.so.14.1.4.1beta09)
+                            (gcc, creates libpng14.so.14.1.4.1beta10)
        makefile.gcc     =>  Generic makefile (gcc, creates static libpng.a)
        makefile.knr     =>  Archaic UNIX Makefile that converts files with
                             ansi2knr (Requires ansi2knr.c from
@@ -209,12 +209,12 @@
        makefile.openbsd =>  OpenBSD makefile
        makefile.sgi     =>  Silicon Graphics IRIX (cc, creates static lib)
        makefile.sggcc   =>  Silicon Graphics
-                            (gcc, creates libpng14.so.14.1.4.1beta09)
+                            (gcc, creates libpng14.so.14.1.4.1beta10)
        makefile.sunos   =>  Sun makefile
        makefile.solaris =>  Solaris 2.X makefile
-                            (gcc, creates libpng14.so.14.1.4.1beta09)
+                            (gcc, creates libpng14.so.14.1.4.1beta10)
        makefile.so9     =>  Solaris 9 makefile
-                            (gcc, creates libpng14.so.14.1.4.1beta09)
+                            (gcc, creates libpng14.so.14.1.4.1beta10)
        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/configure b/configure
index 1f760be..a43dc8c 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.65 for libpng 1.4.1beta09.
+# Generated by GNU Autoconf 2.65 for libpng 1.4.1beta10.
 #
 # Report bugs to <png-mng-implement@lists.sourceforge.net>.
 #
@@ -701,8 +701,8 @@
 # Identity of this package.
 PACKAGE_NAME='libpng'
 PACKAGE_TARNAME='libpng'
-PACKAGE_VERSION='1.4.1beta09'
-PACKAGE_STRING='libpng 1.4.1beta09'
+PACKAGE_VERSION='1.4.1beta10'
+PACKAGE_STRING='libpng 1.4.1beta10'
 PACKAGE_BUGREPORT='png-mng-implement@lists.sourceforge.net'
 PACKAGE_URL=''
 
@@ -1432,7 +1432,7 @@
   # 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.4.1beta09 to adapt to many kinds of systems.
+\`configure' configures libpng 1.4.1beta10 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1502,7 +1502,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libpng 1.4.1beta09:";;
+     short | recursive ) echo "Configuration of libpng 1.4.1beta10:";;
    esac
   cat <<\_ACEOF
 
@@ -1607,7 +1607,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libpng configure 1.4.1beta09
+libpng configure 1.4.1beta10
 generated by GNU Autoconf 2.65
 
 Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2032,7 +2032,7 @@
 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.4.1beta09, which was
+It was created by libpng $as_me 1.4.1beta10, which was
 generated by GNU Autoconf 2.65.  Invocation command line was
 
   $ $0 $@
@@ -2840,7 +2840,7 @@
 
 # Define the identity of the package.
  PACKAGE='libpng'
- VERSION='1.4.1beta09'
+ VERSION='1.4.1beta10'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2904,7 +2904,7 @@
 
 
 
-PNGLIB_VERSION=1.4.1beta09
+PNGLIB_VERSION=1.4.1beta10
 PNGLIB_MAJOR=1
 PNGLIB_MINOR=4
 PNGLIB_RELEASE=1
@@ -12027,7 +12027,7 @@
 # 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.4.1beta09, which was
+This file was extended by libpng $as_me 1.4.1beta10, which was
 generated by GNU Autoconf 2.65.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -12093,7 +12093,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-libpng config.status 1.4.1beta09
+libpng config.status 1.4.1beta10
 configured by $0, generated by GNU Autoconf 2.65,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index 901cdbf..fa4a5d4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -18,12 +18,12 @@
 
 dnl Version number stuff here:
 
-AC_INIT([libpng], [1.4.1beta09], [png-mng-implement@lists.sourceforge.net])
+AC_INIT([libpng], [1.4.1beta10], [png-mng-implement@lists.sourceforge.net])
 AM_INIT_AUTOMAKE
 dnl stop configure from automagically running automake
 AM_MAINTAINER_MODE
 
-PNGLIB_VERSION=1.4.1beta09
+PNGLIB_VERSION=1.4.1beta10
 PNGLIB_MAJOR=1
 PNGLIB_MINOR=4
 PNGLIB_RELEASE=1
diff --git a/libpng-1.4.1beta09.txt b/libpng-1.4.1beta10.txt
similarity index 99%
rename from libpng-1.4.1beta09.txt
rename to libpng-1.4.1beta10.txt
index 2e7e3d2..e7a741c 100644
--- a/libpng-1.4.1beta09.txt
+++ b/libpng-1.4.1beta10.txt
@@ -1,6 +1,6 @@
 libpng.txt - A description on how to use and modify libpng
 
- libpng version 1.4.1beta09 - February 8, 2010
+ libpng version 1.4.1beta10 - February 8, 2010
  Updated and distributed by Glenn Randers-Pehrson
  <glennrp at users.sourceforge.net>
  Copyright (c) 1998-2009 Glenn Randers-Pehrson
@@ -11,7 +11,7 @@
 
  Based on:
 
- libpng versions 0.97, January 1998, through 1.4.1beta09 - February 8, 2010
+ libpng versions 0.97, January 1998, through 1.4.1beta10 - February 8, 2010
  Updated and distributed by Glenn Randers-Pehrson
  Copyright (c) 1998-2009 Glenn Randers-Pehrson
 
@@ -899,7 +899,7 @@
 As of libpng version 1.2.9, png_set_expand_gray_1_2_4_to_8() was
 added.  It expands the sample depth without changing tRNS to alpha.
 
-As of libpng version 1.4.1beta09, not all possible expansions are supported.
+As of libpng version 1.4.1beta10, not all possible expansions are supported.
 
 In the following table, the 01 means grayscale with depth<8, 31 means
 indexed with depth<8, other numerals represent the color type, "T" means
@@ -3251,7 +3251,7 @@
 an official declaration.
 
 This is your unofficial assurance that libpng from version 0.71 and
-upward through 1.4.1beta09 are Y2K compliant.  It is my belief that earlier
+upward through 1.4.1beta10 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 294df17..5b43685 100644
--- a/libpng.3
+++ b/libpng.3
@@ -1,6 +1,6 @@
 .TH LIBPNG 3 "February 8, 2010"
 .SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.4.1beta09
+libpng \- Portable Network Graphics (PNG) Reference Library 1.4.1beta10
 .SH SYNOPSIS
 \fI\fB
 
@@ -785,7 +785,7 @@
 .SH LIBPNG.TXT
 libpng.txt - A description on how to use and modify libpng
 
- libpng version 1.4.1beta09 - February 8, 2010
+ libpng version 1.4.1beta10 - February 8, 2010
  Updated and distributed by Glenn Randers-Pehrson
  <glennrp at users.sourceforge.net>
  Copyright (c) 1998-2009 Glenn Randers-Pehrson
@@ -796,7 +796,7 @@
 
  Based on:
 
- libpng versions 0.97, January 1998, through 1.4.1beta09 - February 8, 2010
+ libpng versions 0.97, January 1998, through 1.4.1beta10 - February 8, 2010
  Updated and distributed by Glenn Randers-Pehrson
  Copyright (c) 1998-2009 Glenn Randers-Pehrson
 
@@ -1684,7 +1684,7 @@
 As of libpng version 1.2.9, png_set_expand_gray_1_2_4_to_8() was
 added.  It expands the sample depth without changing tRNS to alpha.
 
-As of libpng version 1.4.1beta09, not all possible expansions are supported.
+As of libpng version 1.4.1beta10, not all possible expansions are supported.
 
 In the following table, the 01 means grayscale with depth<8, 31 means
 indexed with depth<8, other numerals represent the color type, "T" means
@@ -4036,7 +4036,7 @@
 an official declaration.
 
 This is your unofficial assurance that libpng from version 0.71 and
-upward through 1.4.1beta09 are Y2K compliant.  It is my belief that earlier
+upward through 1.4.1beta10 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
@@ -4267,7 +4267,7 @@
 
 Thanks to Frank J. T. Wojcik for helping with the documentation.
 
-Libpng version 1.4.1beta09 - February 8, 2010:
+Libpng version 1.4.1beta10 - February 8, 2010:
 Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
 Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
 
@@ -4290,7 +4290,7 @@
 
 This code is released under the libpng license.
 
-libpng versions 1.2.6, August 15, 2004, through 1.4.1beta09, February 8, 2010, are
+libpng versions 1.2.6, August 15, 2004, through 1.4.1beta10, February 8, 2010, 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
diff --git a/libpngpf.3 b/libpngpf.3
index fe91fe3..9751985 100644
--- a/libpngpf.3
+++ b/libpngpf.3
@@ -1,6 +1,6 @@
 .TH LIBPNGPF 3 "February 8, 2010"
 .SH NAME
-libpng \- Portable Network Graphics (PNG) Reference Library 1.4.1beta09
+libpng \- Portable Network Graphics (PNG) Reference Library 1.4.1beta10
 (private functions)
 .SH SYNOPSIS
 \fB#include <png.h>\fP
diff --git a/png.c b/png.c
index 1799d45..da7863f 100644
--- a/png.c
+++ b/png.c
@@ -17,7 +17,7 @@
 #include "pngpriv.h"
 
 /* Generate a compiler error if there is an old png.h in the search path. */
-typedef version_1_4_1beta09 Your_png_h_is_not_version_1_4_1beta09;
+typedef version_1_4_1beta10 Your_png_h_is_not_version_1_4_1beta10;
 
 /* Version information for C files.  This had better match the version
  * string defined in png.h.
@@ -551,13 +551,13 @@
 #else
 #ifdef __STDC__
    return ((png_charp) PNG_STRING_NEWLINE \
-     "libpng version 1.4.1beta09 - February 8, 2010" PNG_STRING_NEWLINE \
+     "libpng version 1.4.1beta10 - February 8, 2010" PNG_STRING_NEWLINE \
      "Copyright (c) 1998-2010 Glenn Randers-Pehrson" PNG_STRING_NEWLINE \
      "Copyright (c) 1996-1997 Andreas Dilger" PNG_STRING_NEWLINE \
      "Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc." \
      PNG_STRING_NEWLINE);
 #else
-      return ((png_charp) "libpng version 1.4.1beta09 - February 8, 2010\
+      return ((png_charp) "libpng version 1.4.1beta10 - February 8, 2010\
       Copyright (c) 1998-2010 Glenn Randers-Pehrson\
       Copyright (c) 1996-1997 Andreas Dilger\
       Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.");
diff --git a/png.h b/png.h
index 74b9518..87c9a10 100644
--- a/png.h
+++ b/png.h
@@ -1,7 +1,7 @@
 
 /* png.h - header file for PNG reference library
  *
- * libpng version 1.4.1beta09 - February 8, 2010
+ * libpng version 1.4.1beta10 - February 8, 2010
  * Copyright (c) 1998-2010 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.)
@@ -11,7 +11,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.4.1beta09 - February 8, 2010: Glenn
+ *  libpng versions 0.97, January 1998, through 1.4.1beta10 - February 8, 2010: Glenn
  *  See also "Contributing Authors", below.
  *
  * Note about libpng version numbers:
@@ -168,7 +168,7 @@
  *
  * This code is released under the libpng license.
  *
- * libpng versions 1.2.6, August 15, 2004, through 1.4.1beta09, February 8, 2010, are
+ * libpng versions 1.2.6, August 15, 2004, through 1.4.1beta10, February 8, 2010, are
  * Copyright (c) 2004, 2006-2010 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:
@@ -286,7 +286,7 @@
  *    an official declaration.
  *
  *    This is your unofficial assurance that libpng from version 0.71 and
- *    upward through 1.4.1beta09 are Y2K compliant.  It is my belief that earlier
+ *    upward through 1.4.1beta10 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
@@ -342,9 +342,9 @@
  */
 
 /* Version information for png.h - this should match the version in png.c */
-#define PNG_LIBPNG_VER_STRING "1.4.1beta09"
+#define PNG_LIBPNG_VER_STRING "1.4.1beta10"
 #define PNG_HEADER_VERSION_STRING \
-   " libpng version 1.4.1beta09 - February 8, 2010\n"
+   " libpng version 1.4.1beta10 - February 8, 2010\n"
 
 #define PNG_LIBPNG_VER_SONUM   14
 #define PNG_LIBPNG_VER_DLLNUM  14
@@ -357,7 +357,7 @@
  * PNG_LIBPNG_VER_STRING, omitting any leading zero:
  */
 
-#define PNG_LIBPNG_VER_BUILD  09
+#define PNG_LIBPNG_VER_BUILD  10
 
 /* Release Status */
 #define PNG_LIBPNG_BUILD_ALPHA    1
@@ -1470,7 +1470,7 @@
 /* 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_4_1beta09;
+typedef png_structp version_1_4_1beta10;
 
 typedef png_struct FAR * FAR * png_structpp;
 
diff --git a/pngconf.h b/pngconf.h
index 02cbcb6..634ca74 100644
--- a/pngconf.h
+++ b/pngconf.h
@@ -1,7 +1,7 @@
 
 /* pngconf.h - machine configurable file for libpng
  *
- * libpng version 1.4.1beta09 - February 8, 2010
+ * libpng version 1.4.1beta10 - February 8, 2010
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2010 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngpriv.h b/pngpriv.h
index 67dfc8f..7fb9c7d 100644
--- a/pngpriv.h
+++ b/pngpriv.h
@@ -1,7 +1,7 @@
 
 /* pngpriv.h - private declarations for use inside libpng
  *
- * libpng version 1.4.1beta09 - February 8, 2010
+ * libpng version 1.4.1beta10 - February 8, 2010
  * For conditions of distribution and use, see copyright notice in png.h
  * Copyright (c) 1998-2010 Glenn Randers-Pehrson
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
diff --git a/pngtest.c b/pngtest.c
index 04700df..c909059 100644
--- a/pngtest.c
+++ b/pngtest.c
@@ -1627,4 +1627,4 @@
 }
 
 /* Generate a compiler error if there is an old png.h in the search path. */
-typedef version_1_4_1beta09 your_png_h_is_not_version_1_4_1beta09;
+typedef version_1_4_1beta10 your_png_h_is_not_version_1_4_1beta10;
diff --git a/projects/xcode/libpng.xcodeproj/project.pbxproj b/projects/xcode/libpng.xcodeproj/project.pbxproj
index 84feb9b..0d6324e 100644
--- a/projects/xcode/libpng.xcodeproj/project.pbxproj
+++ b/projects/xcode/libpng.xcodeproj/project.pbxproj
@@ -226,7 +226,7 @@
 				COPY_PHASE_STRIP = NO;
 				DYLIB_COMPATIBILITY_VERSION = 14;
 				DYLIB_CURRENT_VERSION = 14;
-				FRAMEWORK_VERSION = 1.4.1beta09;
+				FRAMEWORK_VERSION = 1.4.1beta10;
 				GCC_PRECOMPILE_PREFIX_HEADER = NO;
 				GCC_PREFIX_HEADER = "";
 				INFOPLIST_FILE = Info.plist;
@@ -244,7 +244,7 @@
 			buildSettings = {
 				DYLIB_COMPATIBILITY_VERSION = 14;
 				DYLIB_CURRENT_VERSION = 14;
-				FRAMEWORK_VERSION = 1.4.1beta09;
+				FRAMEWORK_VERSION = 1.4.1beta10;
 				GCC_PRECOMPILE_PREFIX_HEADER = NO;
 				GCC_PREFIX_HEADER = "";
 				INFOPLIST_FILE = Info.plist;
diff --git a/scripts/README.txt b/scripts/README.txt
index 56f31d7..d98e4de 100644
--- a/scripts/README.txt
+++ b/scripts/README.txt
@@ -1,8 +1,8 @@
 
-Makefiles for  libpng version 1.4.1beta09 - February 8, 2010
+Makefiles for  libpng version 1.4.1beta10 - February 8, 2010
 
  makefile.linux    =>  Linux/ELF makefile
-                       (gcc, creates libpng14.so.14.1.4.1beta09)
+                       (gcc, creates libpng14.so.14.1.4.1beta10)
  makefile.gcc      =>  Generic makefile (gcc, creates static libpng.a)
  makefile.knr      =>  Archaic UNIX Makefile that converts files with
                        ansi2knr (Requires ansi2knr.c from
@@ -20,7 +20,7 @@
  makefile.dec      =>  DEC Alpha UNIX makefile
  makefile.dj2      =>  DJGPP 2 makefile
  makefile.elf      =>  Linux/ELF makefile symbol versioning,
-                       gcc, creates libpng14.so.14.1.4.1beta09)
+                       gcc, creates libpng14.so.14.1.4.1beta10)
  makefile.freebsd  =>  FreeBSD makefile
  makefile.gcc      =>  Generic gcc makefile
  makefile.hpgcc    =>  HPUX makefile using gcc
@@ -36,12 +36,12 @@
  makefile.os2      =>  OS/2 Makefile (gcc and emx, requires pngos2.def)
  makefile.sco      =>  For SCO OSr5  ELF and Unixware 7 with Native cc
  makefile.sggcc    =>  Silicon Graphics (gcc,
-                       creates libpng14.so.14.1.4.1beta09)
+                       creates libpng14.so.14.1.4.1beta10)
  makefile.sgi      =>  Silicon Graphics IRIX makefile (cc, creates static lib)
  makefile.solaris  =>  Solaris 2.X makefile (gcc,
-                       creates libpng14.so.14.1.4.1beta09)
+                       creates libpng14.so.14.1.4.1beta10)
  makefile.so9      =>  Solaris 9 makefile (gcc,
-                       creates libpng14.so.14.1.4.1beta09)
+                       creates libpng14.so.14.1.4.1beta10)
  makefile.std      =>  Generic UNIX makefile (cc, creates static libpng.a)
  makefile.sunos    =>  Sun makefile
  makefile.32sunu   =>  Sun Ultra 32-bit makefile
diff --git a/scripts/libpng-config-head.in b/scripts/libpng-config-head.in
index 30d7a26..82e5a69 100755
--- a/scripts/libpng-config-head.in
+++ b/scripts/libpng-config-head.in
@@ -11,7 +11,7 @@
 
 # Modeled after libxml-config.
 
-version=1.4.1beta09
+version=1.4.1beta10
 prefix=""
 libdir=""
 libs=""
diff --git a/scripts/libpng.pc.in b/scripts/libpng.pc.in
index 1ae80e6..042303f 100644
--- a/scripts/libpng.pc.in
+++ b/scripts/libpng.pc.in
@@ -5,6 +5,6 @@
 
 Name: libpng
 Description: Loads and saves PNG files
-Version: 1.4.1beta09
+Version: 1.4.1beta10
 Libs: -L${libdir} -lpng14
 Cflags: -I${includedir}
diff --git a/scripts/makefile.ne12bsd b/scripts/makefile.ne12bsd
index 080fc8b..e50cae1 100644
--- a/scripts/makefile.ne12bsd
+++ b/scripts/makefile.ne12bsd
@@ -17,7 +17,7 @@
 
 LIB=	png14
 SHLIB_MAJOR=	0
-SHLIB_MINOR=	1.4.1beta09
+SHLIB_MINOR=	1.4.1beta10
 SRCS=	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 7228ee5..0d680f3 100644
--- a/scripts/makefile.netbsd
+++ b/scripts/makefile.netbsd
@@ -17,7 +17,7 @@
 
 LIB=	png
 SHLIB_MAJOR=	3
-SHLIB_MINOR=	1.4.1beta09
+SHLIB_MINOR=	1.4.1beta10
 SRCS=	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.openbsd b/scripts/makefile.openbsd
index 844e709..b361a29 100644
--- a/scripts/makefile.openbsd
+++ b/scripts/makefile.openbsd
@@ -11,7 +11,7 @@
 MANDIR= ${PREFIX}/man/cat
 
 SHLIB_MAJOR=	0
-SHLIB_MINOR=	1.4.1beta09
+SHLIB_MINOR=	1.4.1beta10
 
 LIB=	png
 SRCS=	png.c pngerror.c pngget.c pngmem.c pngpread.c \
diff --git a/scripts/png32ce.def b/scripts/png32ce.def
index b21cc01..9fdfffc 100644
--- a/scripts/png32ce.def
+++ b/scripts/png32ce.def
@@ -15,7 +15,7 @@
  png_get_int_32
 
 EXPORTS
-;Version 1.4.1beta09
+;Version 1.4.1beta10
   png_build_grayscale_palette  @1
 ;  png_check_sig        @2
   png_chunk_error      @3
diff --git a/scripts/pngos2.def b/scripts/pngos2.def
index 35918e2..8f85a47 100644
--- a/scripts/pngos2.def
+++ b/scripts/pngos2.def
@@ -2,7 +2,7 @@
 ; PNG.LIB module definition file for OS/2
 ;----------------------------------------
 
-; Version 1.4.1beta09
+; Version 1.4.1beta10
 
 LIBRARY		PNG
 DESCRIPTION	"PNG image compression library for OS/2"
diff --git a/scripts/pngwin.def b/scripts/pngwin.def
index ddceeb6..eee1728 100644
--- a/scripts/pngwin.def
+++ b/scripts/pngwin.def
@@ -5,7 +5,7 @@
 LIBRARY
 
 EXPORTS
-;Version 1.4.1beta09
+;Version 1.4.1beta10
   png_build_grayscale_palette
   png_chunk_error
   png_chunk_warning
