Imported from libpng-1.2.2beta2.tar

This commit is contained in:
Glenn Randers-Pehrson 2002-02-23 18:55:25 -06:00
parent 9c0f094b21
commit c6de22da1d
56 changed files with 530 additions and 337 deletions

View File

@ -1,5 +1,5 @@
Libpng 1.2.2beta1 - February 22, 2002 Libpng 1.2.2beta2 - February 24, 2002
This is not intended to be a public release. It will be replaced 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. within a few weeks by a public version or by another test version.
@ -9,13 +9,19 @@ Changes since the last public release (1.2.1):
version 1.2.2beta1 [February 22, 2002] version 1.2.2beta1 [February 22, 2002]
Fixed a bug with reading the length of iCCP profiles (Larry Reeves). Fixed a bug with reading the length of iCCP profiles (Larry Reeves).
Revised makefile.linux, makefile.gcmmx, and makefile.sgi to generate Revised makefile.linux, makefile.gcmmx, and makefile.sgi to generate
libpng.a, libpng12.so (not libpng.so.3), and libpng12/png.h (not png.h) libpng.a, libpng12.so (not libpng.so.3), and libpng12/png.h
Revised makefile.darwin to remove "-undefined suppress" option. Revised makefile.darwin to remove "-undefined suppress" option.
Added checks for gamma and chromaticity values over 21474.83, which exceed Added checks for gamma and chromaticity values over 21474.83, which exceed
the limit for PNG unsigned 32-bit integers when encoded. the limit for PNG unsigned 32-bit integers when encoded.
Revised calls to png_create_read_struct() and png_create_write_struct() Revised calls to png_create_read_struct() and png_create_write_struct()
for simpler debugging. for simpler debugging.
Revised png_zalloc() so zlib handles errors (uses PNG_FLAG_MALLOC_NULL_MEM_OK) Revised png_zalloc() so zlib handles errors (uses PNG_FLAG_MALLOC_NULL_MEM_OK)
version 1.2.2beta2 [February 24, 2002]
Check chunk_length and idat_size for invalid (over PNG_MAX_UINT) lengths.
Check for invalid image dimensions in png_get_IHDR.
Added missing "fi;" in the install target of the SGI makefiles.
Added install-static to all makefiles that make shared libraries.
Always do gamma compensation when image is partially transparent.
Send comments/corrections/commendations to Send comments/corrections/commendations to
png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu

View File

@ -1017,13 +1017,19 @@ version 1.2.1 [December 7, 2001]
version 1.2.2beta1 [February 22, 2002] version 1.2.2beta1 [February 22, 2002]
Fixed a bug with reading the length of iCCP profiles (Larry Reeves). Fixed a bug with reading the length of iCCP profiles (Larry Reeves).
Revised makefile.linux, makefile.gcmmx, and makefile.sgi to generate Revised makefile.linux, makefile.gcmmx, and makefile.sgi to generate
libpng.a, libpng12.so (not libpng.so.3), and libpng12/png.h (not png.h) libpng.a, libpng12.so (not libpng.so.3), and libpng12/png.h
Revised makefile.darwin to remove "-undefined suppress" option. Revised makefile.darwin to remove "-undefined suppress" option.
Added checks for gamma and chromaticity values over 21474.83, which exceed Added checks for gamma and chromaticity values over 21474.83, which exceed
the limit for PNG unsigned 32-bit integers when encoded. the limit for PNG unsigned 32-bit integers when encoded.
Revised calls to png_create_read_struct() and png_create_write_struct() Revised calls to png_create_read_struct() and png_create_write_struct()
for simpler debugging. for simpler debugging.
Revised png_zalloc() so zlib handles errors (uses PNG_FLAG_MALLOC_NULL_MEM_OK) Revised png_zalloc() so zlib handles errors (uses PNG_FLAG_MALLOC_NULL_MEM_OK)
version 1.2.2beta2 [February 24, 2002]
Check chunk_length and idat_size for invalid (over PNG_MAX_UINT) lengths.
Check for invalid image dimensions in png_get_IHDR.
Added missing "fi;" in the install target of the SGI makefiles.
Added install-static to all makefiles that make shared libraries.
Always do gamma compensation when image is partially transparent.
Send comments/corrections/commendations to Send comments/corrections/commendations to
png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu

14
INSTALL
View File

@ -1,5 +1,5 @@
Installing libpng version 1.2.2beta1 - February 22, 2002 Installing libpng version 1.2.2beta2 - February 24, 2002
Before installing libpng, you must first install zlib. zlib Before installing libpng, you must first install zlib. zlib
can usually be found wherever you got libpng. zlib can be can usually be found wherever you got libpng. zlib can be
@ -10,7 +10,7 @@ zlib.h and zconf.h include files that correspond to the
version of zlib that's installed. version of zlib that's installed.
You can rename the directories that you downloaded (they You can rename the directories that you downloaded (they
might be called "libpng-1.2.2beta1" or "lpng109" and "zlib-1.1.3" might be called "libpng-1.2.2beta2" or "lpng109" and "zlib-1.1.3"
or "zlib113") so that you have directories called "zlib" and "libpng". or "zlib113") so that you have directories called "zlib" and "libpng".
Your directory structure should look like this: Your directory structure should look like this:
@ -64,8 +64,8 @@ The files that are presently available in the scripts directory
include include
makefile.std => Generic UNIX makefile (cc, creates static libpng.a) makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
makefile.linux => Linux/ELF makefile (gcc, creates libpng.so.0.1.2.2beta1) makefile.linux => Linux/ELF makefile (gcc, creates libpng.so.0.1.2.2beta2)
makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng.so.0.1.2.2beta1, makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng.so.0.1.2.2beta2,
uses assembler code tuned for Intel MMX platform) uses assembler code tuned for Intel MMX platform)
makefile.gcc => Generic makefile (gcc, creates static libpng.a) makefile.gcc => Generic makefile (gcc, creates static libpng.a)
makefile.knr => Archaic UNIX Makefile that converts files with makefile.knr => Archaic UNIX Makefile that converts files with
@ -83,10 +83,10 @@ include
makefile.macosx => MACOS X Makefile makefile.macosx => MACOS X Makefile
makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD
makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib) makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib)
makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.0.1.2.2beta1) makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.0.1.2.2beta2)
makefile.sunos => Sun makefile makefile.sunos => Sun makefile
makefile.solaris => Solaris 2.X makefile (gcc, creates libpng.so.0.1.2.2beta1) makefile.solaris => Solaris 2.X makefile (gcc, creates libpng.so.0.1.2.2beta2)
makefile.so9 => Solaris 9 makefile (gcc, creates libpng.so.0.1.2.2beta1) makefile.so9 => Solaris 9 makefile (gcc, creates libpng.so.0.1.2.2beta2)
makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc
makefile.mips => MIPS makefile makefile.mips => MIPS makefile
makefile.acorn => Acorn makefile makefile.acorn => Acorn makefile

View File

@ -1,5 +1,5 @@
Known bugs in libpng version 1.2.2beta1 Known bugs in libpng version 1.2.2beta2
1. April 22, 2001: pnggccrd.c has been reported to crash on NetBSD when 1. April 22, 2001: pnggccrd.c has been reported to crash on NetBSD when
reading interlaced PNG files, when assembler code is enabled. reading interlaced PNG files, when assembler code is enabled.

View File

@ -8,7 +8,7 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE:
If you modify libpng you may insert additional notices immediately following If you modify libpng you may insert additional notices immediately following
this sentence. this sentence.
libpng versions 1.0.7, July 1, 2000, through 1.2.2beta1, February 22, 2002, are libpng versions 1.0.7, July 1, 2000, through 1.2.2beta2, February 24, 2002, are
Copyright (c) 2000 Glenn Randers-Pehrson Copyright (c) 2000 Glenn Randers-Pehrson
and are distributed according to the same disclaimer and license as libpng-1.0.6 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 with the following individuals added to the list of Contributing Authors
@ -99,4 +99,4 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson Glenn Randers-Pehrson
randeg@alum.rpi.edu randeg@alum.rpi.edu
February 22, 2002 February 24, 2002

12
README
View File

@ -1,4 +1,4 @@
README for libpng 1.2.2beta1 - February 22, 2002 (shared library 2.1) README for libpng 1.2.2beta2 - February 24, 2002 (shared library 2.1)
See the note about version numbers near the top of png.h See the note about version numbers near the top of png.h
See INSTALL for instructions on how to install libpng. See INSTALL for instructions on how to install libpng.
@ -187,9 +187,9 @@ Files in this distribution:
descrip.mms => VMS makefile for MMS or MMK descrip.mms => VMS makefile for MMS or MMK
makefile.std => Generic UNIX makefile (cc, creates static libpng.a) makefile.std => Generic UNIX makefile (cc, creates static libpng.a)
makefile.linux => Linux/ELF makefile makefile.linux => Linux/ELF makefile
(gcc, creates libpng.so.0.1.2.2beta1) (gcc, creates libpng.so.0.1.2.2beta2)
makefile.gcmmx => Linux/ELF makefile (gcc, creates makefile.gcmmx => Linux/ELF makefile (gcc, creates
libpng.so.0.1.2.2beta1, uses assembler code libpng.so.0.1.2.2beta2, uses assembler code
tuned for Intel MMX platform) tuned for Intel MMX platform)
makefile.gcc => Generic makefile (gcc, creates static libpng.a) makefile.gcc => Generic makefile (gcc, creates static libpng.a)
makefile.knr => Archaic UNIX Makefile that converts files with makefile.knr => Archaic UNIX Makefile that converts files with
@ -207,12 +207,12 @@ Files in this distribution:
makefile.macosx => MACOS X Makefile makefile.macosx => MACOS X Makefile
makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD
makefile.sgi => Silicon Graphics IRIX (cc, creates static lib) makefile.sgi => Silicon Graphics IRIX (cc, creates static lib)
makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.0.1.2.2beta1) makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.0.1.2.2beta2)
makefile.sunos => Sun makefile makefile.sunos => Sun makefile
makefile.solaris => Solaris 2.X makefile makefile.solaris => Solaris 2.X makefile
(gcc, creates libpng.so.0.1.2.2beta1) (gcc, creates libpng.so.0.1.2.2beta2)
makefile.so9 => Solaris 9 makefile makefile.so9 => Solaris 9 makefile
(gcc, creates libpng.so.0.1.2.2beta1) (gcc, creates libpng.so.0.1.2.2beta2)
makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc
makefile.mips => MIPS makefile makefile.mips => MIPS makefile
makefile.acorn => Acorn makefile makefile.acorn => Acorn makefile

View File

@ -1,13 +1,13 @@
Y2K compliance in libpng: Y2K compliance in libpng:
========================= =========================
February 22, 2002 February 24, 2002
Since the PNG Development group is an ad-hoc body, we can't make Since the PNG Development group is an ad-hoc body, we can't make
an official declaration. an official declaration.
This is your unofficial assurance that libpng from version 0.71 and This is your unofficial assurance that libpng from version 0.71 and
upward through 1.2.2beta1 are Y2K compliant. It is my belief that earlier upward through 1.2.2beta2 are Y2K compliant. It is my belief that earlier
versions were also Y2K compliant. versions were also Y2K compliant.
Libpng only has three year fields. One is a 2-byte unsigned integer Libpng only has three year fields. One is a 2-byte unsigned integer

2
configure vendored
View File

@ -1,5 +1,5 @@
echo " echo "
There is no \"configure\" script for Libpng-1.2.2beta1. Instead, please There is no \"configure\" script for Libpng-1.2.2beta2. Instead, please
copy the appropriate makefile for your system from the \"scripts\" copy the appropriate makefile for your system from the \"scripts\"
directory. Read the INSTALL file for more details. directory. Read the INSTALL file for more details.
" "

View File

@ -1,6 +1,6 @@
.TH LIBPNG 3 "February 22, 2002" .TH LIBPNG 3 "February 24, 2002"
.SH NAME .SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.2.2beta1 libpng \- Portable Network Graphics (PNG) Reference Library 1.2.2beta2
.SH SYNOPSIS .SH SYNOPSIS
\fI\fB \fI\fB
@ -787,10 +787,10 @@ Following is a copy of the libpng.txt file that accompanies libpng.
.SH LIBPNG.TXT .SH LIBPNG.TXT
libpng.txt - A description on how to use and modify libpng libpng.txt - A description on how to use and modify libpng
libpng version 1.2.2beta1 - February 22, 2002 libpng version 1.2.2beta2 - February 24, 2002
Updated and distributed by Glenn Randers-Pehrson Updated and distributed by Glenn Randers-Pehrson
<randeg@alum.rpi.edu> <randeg@alum.rpi.edu>
Copyright (c) 1998-2001 Glenn Randers-Pehrson Copyright (c) 1998-2002 Glenn Randers-Pehrson
For conditions of distribution and use, see copyright For conditions of distribution and use, see copyright
notice in png.h. notice in png.h.
@ -3635,13 +3635,13 @@ application:
.SH IX. Y2K Compliance in libpng .SH IX. Y2K Compliance in libpng
February 22, 2002 February 24, 2002
Since the PNG Development group is an ad-hoc body, we can't make Since the PNG Development group is an ad-hoc body, we can't make
an official declaration. an official declaration.
This is your unofficial assurance that libpng from version 0.71 and This is your unofficial assurance that libpng from version 0.71 and
upward through 1.2.2beta1 are Y2K compliant. It is my belief that earlier upward through 1.2.2beta2 are Y2K compliant. It is my belief that earlier
versions were also Y2K compliant. versions were also Y2K compliant.
Libpng only has three year fields. One is a 2-byte unsigned integer that Libpng only has three year fields. One is a 2-byte unsigned integer that
@ -3764,7 +3764,7 @@ the first widely used release:
1.2.1beta-4 3 10201 3.1.2.1beta1-4 1.2.1beta-4 3 10201 3.1.2.1beta1-4
1.2.1rc1-2 3 10201 3.1.2.1rc1-2 1.2.1rc1-2 3 10201 3.1.2.1rc1-2
1.2.1 3 10201 3.1.2.1 1.2.1 3 10201 3.1.2.1
1.2.2beta1 12 10202 12.so.0.1.2.2beta1 1.2.2beta1-2 12 10202 12.so.0.1.2.2beta1-2
Henceforth the source version will match the shared-library minor Henceforth the source version will match the shared-library minor
and patch numbers; the shared-library major version number will be and patch numbers; the shared-library major version number will be
@ -3822,7 +3822,7 @@ possible without all of you.
Thanks to Frank J. T. Wojcik for helping with the documentation. Thanks to Frank J. T. Wojcik for helping with the documentation.
Libpng version 1.2.2beta1 - February 22, 2002: Libpng version 1.2.2beta2 - February 24, 2002:
Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
Currently maintained by Glenn Randers-Pehrson (randeg@alum.rpi.edu). Currently maintained by Glenn Randers-Pehrson (randeg@alum.rpi.edu).
@ -3839,8 +3839,8 @@ included in the libpng distribution, the latter shall prevail.)
If you modify libpng you may insert additional notices immediately following If you modify libpng you may insert additional notices immediately following
this sentence. this sentence.
libpng versions 1.0.7, July 1, 2000, through 1.2.2beta1, February 22, 2002, are libpng versions 1.0.7, July 1, 2000, through 1.2.2beta2, February 24, 2002, are
Copyright (c) 2000-2001 Glenn Randers-Pehrson, and are Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
distributed according to the same disclaimer and license as libpng-1.0.6 distributed according to the same disclaimer and license as libpng-1.0.6
with the following individuals added to the list of Contributing Authors with the following individuals added to the list of Contributing Authors
@ -3931,7 +3931,7 @@ certification mark of the Open Source Initiative.
Glenn Randers-Pehrson Glenn Randers-Pehrson
randeg@alum.rpi.edu randeg@alum.rpi.edu
February 22, 2002 February 24, 2002
.\" end of man page .\" end of man page

View File

@ -1,9 +1,9 @@
libpng.txt - A description on how to use and modify libpng libpng.txt - A description on how to use and modify libpng
libpng version 1.2.2beta1 - February 22, 2002 libpng version 1.2.2beta2 - February 24, 2002
Updated and distributed by Glenn Randers-Pehrson Updated and distributed by Glenn Randers-Pehrson
<randeg@alum.rpi.edu> <randeg@alum.rpi.edu>
Copyright (c) 1998-2001 Glenn Randers-Pehrson Copyright (c) 1998-2002 Glenn Randers-Pehrson
For conditions of distribution and use, see copyright For conditions of distribution and use, see copyright
notice in png.h. notice in png.h.
@ -2848,13 +2848,13 @@ application:
IX. Y2K Compliance in libpng IX. Y2K Compliance in libpng
February 22, 2002 February 24, 2002
Since the PNG Development group is an ad-hoc body, we can't make Since the PNG Development group is an ad-hoc body, we can't make
an official declaration. an official declaration.
This is your unofficial assurance that libpng from version 0.71 and This is your unofficial assurance that libpng from version 0.71 and
upward through 1.2.2beta1 are Y2K compliant. It is my belief that earlier upward through 1.2.2beta2 are Y2K compliant. It is my belief that earlier
versions were also Y2K compliant. versions were also Y2K compliant.
Libpng only has three year fields. One is a 2-byte unsigned integer that Libpng only has three year fields. One is a 2-byte unsigned integer that

View File

@ -1,6 +1,6 @@
.TH LIBPNGPF 3 "February 22, 2002" .TH LIBPNGPF 3 "February 24, 2002"
.SH NAME .SH NAME
libpng \- Portable Network Graphics (PNG) Reference Library 1.2.2beta1 libpng \- Portable Network Graphics (PNG) Reference Library 1.2.2beta2
(private functions) (private functions)
.SH SYNOPSIS .SH SYNOPSIS
\fB#include <png.h>\fP \fB#include <png.h>\fP

2
png.5
View File

@ -1,4 +1,4 @@
.TH PNG 5 "February 22, 2002" .TH PNG 5 "February 24, 2002"
.SH NAME .SH NAME
png \- Portable Network Graphics (PNG) format png \- Portable Network Graphics (PNG) format
.SH DESCRIPTION .SH DESCRIPTION

16
png.c
View File

@ -1,8 +1,8 @@
/* png.c - location for general purpose libpng functions /* png.c - location for general purpose libpng functions
* *
* libpng version 1.2.2beta1 - February 22, 2002 * libpng version 1.2.2beta2 - February 24, 2002
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *
@ -13,14 +13,14 @@
#include "png.h" #include "png.h"
/* Generate a compiler error if there is an old png.h in the search path. */ /* Generate a compiler error if there is an old png.h in the search path. */
typedef version_1_2_2beta1 Your_png_h_is_not_version_1_2_2beta1; typedef version_1_2_2beta2 Your_png_h_is_not_version_1_2_2beta2;
/* Version information for C files. This had better match the version /* Version information for C files. This had better match the version
* string defined in png.h. */ * string defined in png.h. */
#ifdef PNG_USE_GLOBAL_ARRAYS #ifdef PNG_USE_GLOBAL_ARRAYS
/* png_libpng_ver was changed to a function in version 1.0.5c */ /* png_libpng_ver was changed to a function in version 1.0.5c */
const char png_libpng_ver[18] = "1.2.2beta1"; const char png_libpng_ver[18] = "1.2.2beta2";
/* png_sig was changed to a function in version 1.0.5c */ /* png_sig was changed to a function in version 1.0.5c */
/* Place to hold the signature string for a PNG file. */ /* Place to hold the signature string for a PNG file. */
@ -651,8 +651,8 @@ png_charp PNGAPI
png_get_copyright(png_structp png_ptr) png_get_copyright(png_structp png_ptr)
{ {
if (png_ptr != NULL || png_ptr == NULL) /* silence compiler warning */ if (png_ptr != NULL || png_ptr == NULL) /* silence compiler warning */
return ((png_charp) "\n libpng version 1.2.2beta1 - February 22, 2002\n\ return ((png_charp) "\n libpng version 1.2.2beta2 - February 24, 2002\n\
Copyright (c) 1998-2001 Glenn Randers-Pehrson\n\ Copyright (c) 1998-2002 Glenn Randers-Pehrson\n\
Copyright (c) 1996, 1997 Andreas Dilger\n\ Copyright (c) 1996, 1997 Andreas Dilger\n\
Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.\n"); Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.\n");
return ((png_charp) ""); return ((png_charp) "");
@ -669,8 +669,8 @@ png_get_libpng_ver(png_structp png_ptr)
{ {
/* Version of *.c files used when building libpng */ /* Version of *.c files used when building libpng */
if(png_ptr != NULL) /* silence compiler warning about unused png_ptr */ if(png_ptr != NULL) /* silence compiler warning about unused png_ptr */
return((png_charp) "1.2.2beta1"); return((png_charp) "1.2.2beta2");
return((png_charp) "1.2.2beta1"); return((png_charp) "1.2.2beta2");
} }
png_charp PNGAPI png_charp PNGAPI

26
png.h
View File

@ -1,15 +1,15 @@
/* png.h - header file for PNG reference library /* png.h - header file for PNG reference library
* *
* libpng version 1.2.2beta1 - February 22, 2002 * libpng version 1.2.2beta2 - February 24, 2002
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *
* Authors and maintainers: * Authors and maintainers:
* libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat * 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.89c, June 1996, through 0.96, May 1997: Andreas Dilger
* libpng versions 0.97, January 1998, through 1.2.2beta1 - February 22, 2002: Glenn * libpng versions 0.97, January 1998, through 1.2.2beta2 - February 24, 2002: Glenn
* See also "Contributing Authors", below. * See also "Contributing Authors", below.
* *
* Note about libpng version numbers: * Note about libpng version numbers:
@ -81,7 +81,7 @@
* 1.2.1beta1-4 3 10201 3.1.2.1beta1-4 * 1.2.1beta1-4 3 10201 3.1.2.1beta1-4
* 1.2.1rc1-2 3 10201 3.1.2.1rc1-2 * 1.2.1rc1-2 3 10201 3.1.2.1rc1-2
* 1.2.1 3 10201 3.1.2.1 * 1.2.1 3 10201 3.1.2.1
* 1.2.2beta1 12 10202 12.so.0.1.2.2beta1 * 1.2.2beta1-2 12 10202 12.so.0.1.2.2beta1-2
* *
* Henceforth the source version will match the shared-library major * Henceforth the source version will match the shared-library major
* and minor numbers; the shared-library major version number will be * and minor numbers; the shared-library major version number will be
@ -111,8 +111,8 @@
* If you modify libpng you may insert additional notices immediately following * If you modify libpng you may insert additional notices immediately following
* this sentence. * this sentence.
* *
* libpng versions 1.0.7, July 1, 2000, through 1.2.2beta1, February 22, 2002, are * libpng versions 1.0.7, July 1, 2000, through 1.2.2beta2, February 24, 2002, are
* Copyright (c) 2000, 2001 Glenn Randers-Pehrson, and are * Copyright (c) 2000, 2002 Glenn Randers-Pehrson, and are
* distributed according to the same disclaimer and license as libpng-1.0.6 * distributed according to the same disclaimer and license as libpng-1.0.6
* with the following individuals added to the list of Contributing Authors * with the following individuals added to the list of Contributing Authors
* *
@ -216,13 +216,13 @@
* Y2K compliance in libpng: * Y2K compliance in libpng:
* ========================= * =========================
* *
* February 22, 2002 * February 24, 2002
* *
* Since the PNG Development group is an ad-hoc body, we can't make * Since the PNG Development group is an ad-hoc body, we can't make
* an official declaration. * an official declaration.
* *
* This is your unofficial assurance that libpng from version 0.71 and * This is your unofficial assurance that libpng from version 0.71 and
* upward through 1.2.2beta1 are Y2K compliant. It is my belief that earlier * upward through 1.2.2beta2 are Y2K compliant. It is my belief that earlier
* versions were also Y2K compliant. * versions were also Y2K compliant.
* *
* Libpng only has three year fields. One is a 2-byte unsigned integer * Libpng only has three year fields. One is a 2-byte unsigned integer
@ -278,7 +278,7 @@
*/ */
/* Version information for png.h - this should match the version in png.c */ /* Version information for png.h - this should match the version in png.c */
#define PNG_LIBPNG_VER_STRING "1.2.2beta1" #define PNG_LIBPNG_VER_STRING "1.2.2beta2"
#define PNG_LIBPNG_VER_SONUM 0 #define PNG_LIBPNG_VER_SONUM 0
#define PNG_LIBPNG_VER_DLLNUM %DLLNUM% #define PNG_LIBPNG_VER_DLLNUM %DLLNUM%
@ -290,7 +290,7 @@
/* This should match the numeric part of the final component of /* This should match the numeric part of the final component of
* PNG_LIBPNG_VER_STRING, omitting any leading zero: */ * PNG_LIBPNG_VER_STRING, omitting any leading zero: */
#define PNG_LIBPNG_VER_BUILD 1 #define PNG_LIBPNG_VER_BUILD 2
#define PNG_LIBPNG_BUILD_ALPHA 1 #define PNG_LIBPNG_BUILD_ALPHA 1
#define PNG_LIBPNG_BUILD_BETA 2 #define PNG_LIBPNG_BUILD_BETA 2
@ -1254,9 +1254,9 @@ struct png_struct_def
/* This prevents a compiler error in png_get_copyright() in png.c if png.c /* This prevents a compiler error in png_get_copyright() in png.c if png.c
and png.h are both at version 1.2.2beta1 and png.h are both at version 1.2.2beta2
*/ */
typedef png_structp version_1_2_2beta1; typedef png_structp version_1_2_2beta2;
typedef png_struct FAR * FAR * png_structpp; typedef png_struct FAR * FAR * png_structpp;
@ -2373,7 +2373,7 @@ extern PNG_EXPORT(void,png_set_strip_error_numbers) PNGARG((png_structp
/* Maintainer: Put new public prototypes here ^, in libpng.3, and project defs */ /* Maintainer: Put new public prototypes here ^, in libpng.3, and project defs */
#define PNG_HEADER_VERSION_STRING \ #define PNG_HEADER_VERSION_STRING \
" libpng version 1.2.2beta1 - February 22, 2002 (header)\n" " libpng version 1.2.2beta2 - February 24, 2002 (header)\n"
#ifdef PNG_READ_COMPOSITE_NODIV_SUPPORTED #ifdef PNG_READ_COMPOSITE_NODIV_SUPPORTED
/* With these routines we avoid an integer divide, which will be slower on /* With these routines we avoid an integer divide, which will be slower on

View File

@ -1,8 +1,8 @@
/* pngasmrd.h - assembler version of utilities to read a PNG file /* pngasmrd.h - assembler version of utilities to read a PNG file
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 2001 Glenn Randers-Pehrson * Copyright (c) 2002 Glenn Randers-Pehrson
* *
*/ */

View File

@ -1,8 +1,8 @@
/* pngconf.h - machine configurable file for libpng /* pngconf.h - machine configurable file for libpng
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
*/ */

View File

@ -1,9 +1,9 @@
/* pngerror.c - stub functions for i/o and memory allocation /* pngerror.c - stub functions for i/o and memory allocation
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *

View File

@ -6,9 +6,9 @@
* and http://www.intel.com/drg/pentiumII/appnotes/923/923.htm * and http://www.intel.com/drg/pentiumII/appnotes/923/923.htm
* for Intel's performance analysis of the MMX vs. non-MMX code. * for Intel's performance analysis of the MMX vs. non-MMX code.
* *
* libpng version 1.2.2beta1 - February 22, 2002 * libpng version 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation * Copyright (c) 1998, Intel Corporation
* *
* Based on MSVC code contributed by Nirav Chhatrapati, Intel Corp., 1998. * Based on MSVC code contributed by Nirav Chhatrapati, Intel Corp., 1998.

View File

@ -1,9 +1,9 @@
/* pngget.c - retrieval of values from info struct /* pngget.c - retrieval of values from info struct
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
*/ */
@ -566,6 +566,10 @@ png_get_IHDR(png_structp png_ptr, png_infop info_ptr,
channels++; channels++;
pixel_depth = *bit_depth * channels; pixel_depth = *bit_depth * channels;
rowbytes_per_pixel = (pixel_depth + 7) >> 3; rowbytes_per_pixel = (pixel_depth + 7) >> 3;
if (width == 0 || *width > PNG_MAX_UINT)
png_error(png_ptr, "Invalid image width");
if (height == 0 || *height > PNG_MAX_UINT)
png_error(png_ptr, "Invalid image height");
if ((*width > PNG_MAX_UINT/rowbytes_per_pixel)) if ((*width > PNG_MAX_UINT/rowbytes_per_pixel))
{ {
png_warning(png_ptr, png_warning(png_ptr,

View File

@ -1,9 +1,9 @@
/* pngmem.c - stub functions for memory allocation /* pngmem.c - stub functions for memory allocation
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *

View File

@ -1,9 +1,9 @@
/* pngpread.c - read a png file in push mode /* pngpread.c - read a png file in push mode
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
*/ */

View File

@ -1,9 +1,9 @@
/* pngread.c - read a PNG file /* pngread.c - read a PNG file
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *
@ -374,6 +374,9 @@ png_read_info(png_structp png_ptr, png_infop info_ptr)
png_debug2(0, "Reading %s chunk, length=%lu.\n", png_ptr->chunk_name, png_debug2(0, "Reading %s chunk, length=%lu.\n", png_ptr->chunk_name,
length); length);
if (length > PNG_MAX_UINT)
png_error(png_ptr, "Invalid chunk length.");
/* This should be a binary subdivision search or a hash for /* This should be a binary subdivision search or a hash for
* matching the chunk name rather than a linear search. * matching the chunk name rather than a linear search.
*/ */
@ -657,6 +660,9 @@ png_read_row(png_structp png_ptr, png_bytep row, png_bytep dsp_row)
png_read_data(png_ptr, chunk_length, 4); png_read_data(png_ptr, chunk_length, 4);
png_ptr->idat_size = png_get_uint_32(chunk_length); png_ptr->idat_size = png_get_uint_32(chunk_length);
if (png_ptr->idat_size > PNG_MAX_UINT)
png_error(png_ptr, "Invalid chunk length.");
png_reset_crc(png_ptr); png_reset_crc(png_ptr);
png_crc_read(png_ptr, png_ptr->chunk_name, 4); png_crc_read(png_ptr, png_ptr->chunk_name, 4);
if (png_memcmp(png_ptr->chunk_name, png_IDAT, 4)) if (png_memcmp(png_ptr->chunk_name, png_IDAT, 4))
@ -768,7 +774,7 @@ png_read_row(png_structp png_ptr, png_bytep row, png_bytep dsp_row)
* not called png_set_interlace_handling(), the display_row buffer will * not called png_set_interlace_handling(), the display_row buffer will
* be ignored, so pass NULL to it. * be ignored, so pass NULL to it.
* *
* [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2beta1 * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2beta2
*/ */
void PNGAPI void PNGAPI
@ -817,7 +823,7 @@ png_read_rows(png_structp png_ptr, png_bytepp row,
* only call this function once. If you desire to have an image for * only call this function once. If you desire to have an image for
* each pass of a interlaced image, use png_read_rows() instead. * each pass of a interlaced image, use png_read_rows() instead.
* *
* [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2beta1 * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2beta2
*/ */
void PNGAPI void PNGAPI
png_read_image(png_structp png_ptr, png_bytepp image) png_read_image(png_structp png_ptr, png_bytepp image)
@ -935,6 +941,9 @@ png_read_end(png_structp png_ptr, png_infop info_ptr)
png_debug1(0, "Reading %s chunk.\n", png_ptr->chunk_name); png_debug1(0, "Reading %s chunk.\n", png_ptr->chunk_name);
if (length > PNG_MAX_UINT)
png_error(png_ptr, "Invalid chunk length.");
if (!png_memcmp(png_ptr->chunk_name, png_IHDR, 4)) if (!png_memcmp(png_ptr->chunk_name, png_IHDR, 4))
png_handle_IHDR(png_ptr, info_ptr, length); png_handle_IHDR(png_ptr, info_ptr, length);
else if (!png_memcmp(png_ptr->chunk_name, png_IEND, 4)) else if (!png_memcmp(png_ptr->chunk_name, png_IEND, 4))

View File

@ -1,9 +1,9 @@
/* pngrio.c - functions for data input /* pngrio.c - functions for data input
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *

View File

@ -1,9 +1,9 @@
/* pngrtran.c - transforms the data in a row for PNG readers /* pngrtran.c - transforms the data in a row for PNG readers
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *
@ -510,13 +510,19 @@ png_set_dither(png_structp png_ptr, png_colorp palette,
* only do transformations on images where the file_gamma and screen_gamma * only do transformations on images where the file_gamma and screen_gamma
* are not close reciprocals, otherwise it slows things down slightly, and * are not close reciprocals, otherwise it slows things down slightly, and
* also needlessly introduces small errors. * also needlessly introduces small errors.
*
* We will turn off gamma transformation later if no semitransparent entries
* are present in the tRNS array for palette images. We can't do it here
* because we don't necessarily have the tRNS chunk yet.
*/ */
void PNGAPI void PNGAPI
png_set_gamma(png_structp png_ptr, double scrn_gamma, double file_gamma) png_set_gamma(png_structp png_ptr, double scrn_gamma, double file_gamma)
{ {
png_debug(1, "in png_set_gamma\n"); png_debug(1, "in png_set_gamma\n");
if (fabs(scrn_gamma * file_gamma - 1.0) > PNG_GAMMA_THRESHOLD) if ((fabs(scrn_gamma * file_gamma - 1.0) > PNG_GAMMA_THRESHOLD) ||
png_ptr->transformations |= PNG_GAMMA; (png_ptr->color_type & PNG_COLOR_MASK_ALPHA) ||
(png_ptr->color_type == PNG_COLOR_TYPE_PALETTE))
png_ptr->transformations |= PNG_GAMMA;
png_ptr->gamma = (float)file_gamma; png_ptr->gamma = (float)file_gamma;
png_ptr->screen_gamma = (float)scrn_gamma; png_ptr->screen_gamma = (float)scrn_gamma;
} }
@ -746,6 +752,22 @@ png_init_read_transformations(png_structp png_ptr)
png_ptr->background_1 = png_ptr->background; png_ptr->background_1 = png_ptr->background;
#endif #endif
#if defined(PNG_READ_GAMMA_SUPPORTED) && defined(PNG_FLOATING_POINT_SUPPORTED) #if defined(PNG_READ_GAMMA_SUPPORTED) && defined(PNG_FLOATING_POINT_SUPPORTED)
if ((color_type == PNG_COLOR_TYPE_PALETTE && png_ptr->num_trans != 0)
&& (fabs(png_ptr->screen_gamma * png_ptr->gamma - 1.0)
< PNG_GAMMA_THRESHOLD))
{
int i,k;
k=0;
for (i=0; i<png_ptr->num_trans; i++)
{
if (png_ptr->trans[i] != 0 && png_ptr->trans[i] != 0xff)
k=1; /* partial transparency is present */
}
if (k == 0)
png_ptr->transformations &= (~PNG_GAMMA);
}
if (png_ptr->transformations & (PNG_GAMMA | PNG_RGB_TO_GRAY)) if (png_ptr->transformations & (PNG_GAMMA | PNG_RGB_TO_GRAY))
{ {
png_build_gamma_table(png_ptr); png_build_gamma_table(png_ptr);
@ -754,6 +776,8 @@ png_init_read_transformations(png_structp png_ptr)
{ {
if (color_type == PNG_COLOR_TYPE_PALETTE) if (color_type == PNG_COLOR_TYPE_PALETTE)
{ {
/* could skip if no transparency and
*/
png_color back, back_1; png_color back, back_1;
png_colorp palette = png_ptr->palette; png_colorp palette = png_ptr->palette;
int num_palette = png_ptr->num_palette; int num_palette = png_ptr->num_palette;
@ -3150,17 +3174,17 @@ png_do_background(png_row_infop row_info, png_bytep row,
png_uint_16 v, w, x; png_uint_16 v, w, x;
v = gamma_16_to_1[*(sp + 1) >> gamma_shift][*sp]; v = gamma_16_to_1[*(sp + 1) >> gamma_shift][*sp];
png_composite_16(w, v, a, background->red); png_composite_16(w, v, a, background_1->red);
x = gamma_16_from_1[((w&0xff) >> gamma_shift)][w >> 8]; x = gamma_16_from_1[((w&0xff) >> gamma_shift)][w >> 8];
*dp = (png_byte)((x >> 8) & 0xff); *dp = (png_byte)((x >> 8) & 0xff);
*(dp + 1) = (png_byte)(x & 0xff); *(dp + 1) = (png_byte)(x & 0xff);
v = gamma_16_to_1[*(sp + 3) >> gamma_shift][*(sp + 2)]; v = gamma_16_to_1[*(sp + 3) >> gamma_shift][*(sp + 2)];
png_composite_16(w, v, a, background->green); png_composite_16(w, v, a, background_1->green);
x = gamma_16_from_1[((w&0xff) >> gamma_shift)][w >> 8]; x = gamma_16_from_1[((w&0xff) >> gamma_shift)][w >> 8];
*(dp + 2) = (png_byte)((x >> 8) & 0xff); *(dp + 2) = (png_byte)((x >> 8) & 0xff);
*(dp + 3) = (png_byte)(x & 0xff); *(dp + 3) = (png_byte)(x & 0xff);
v = gamma_16_to_1[*(sp + 5) >> gamma_shift][*(sp + 4)]; v = gamma_16_to_1[*(sp + 5) >> gamma_shift][*(sp + 4)];
png_composite_16(w, v, a, background->blue); png_composite_16(w, v, a, background_1->blue);
x = gamma_16_from_1[(w & 0xff) >> gamma_shift][w >> 8]; x = gamma_16_from_1[(w & 0xff) >> gamma_shift][w >> 8];
*(dp + 4) = (png_byte)((x >> 8) & 0xff); *(dp + 4) = (png_byte)((x >> 8) & 0xff);
*(dp + 5) = (png_byte)(x & 0xff); *(dp + 5) = (png_byte)(x & 0xff);

View File

@ -1,9 +1,9 @@
/* pngrutil.c - utilities to read a PNG file /* pngrutil.c - utilities to read a PNG file
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *

View File

@ -1,9 +1,9 @@
/* pngset.c - storage of image information into info struct /* pngset.c - storage of image information into info struct
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *

View File

@ -1,9 +1,9 @@
/* pngtest.c - a simple test program to test libpng /* pngtest.c - a simple test program to test libpng
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *
@ -1512,4 +1512,4 @@ main(int argc, char *argv[])
} }
/* Generate a compiler error if there is an old png.h in the search path. */ /* Generate a compiler error if there is an old png.h in the search path. */
typedef version_1_2_2beta1 your_png_h_is_not_version_1_2_2beta1; typedef version_1_2_2beta2 your_png_h_is_not_version_1_2_2beta2;

View File

@ -1,9 +1,9 @@
/* pngtrans.c - transforms the data in a row (used by both readers and writers) /* pngtrans.c - transforms the data in a row (used by both readers and writers)
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
*/ */

View File

@ -2,9 +2,9 @@
* *
* For Intel x86 CPU and Microsoft Visual C++ compiler * For Intel x86 CPU and Microsoft Visual C++ compiler
* *
* libpng version 1.2.2beta1 - February 22, 2002 * libpng version 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* Copyright (c) 1998, Intel Corporation * Copyright (c) 1998, Intel Corporation
* *
* Contributed by Nirav Chhatrapati, Intel Corporation, 1998 * Contributed by Nirav Chhatrapati, Intel Corporation, 1998

View File

@ -1,9 +1,9 @@
/* pngwio.c - functions for data output /* pngwio.c - functions for data output
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
* *

View File

@ -1,9 +1,9 @@
/* pngwrite.c - general routines to write a PNG file /* pngwrite.c - general routines to write a PNG file
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
*/ */

View File

@ -1,9 +1,9 @@
/* pngwtran.c - transforms the data in a row for PNG writers /* pngwtran.c - transforms the data in a row for PNG writers
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
*/ */

View File

@ -1,9 +1,9 @@
/* pngwutil.c - utilities to write a PNG file /* pngwutil.c - utilities to write a PNG file
* *
* libpng 1.2.2beta1 - February 22, 2002 * libpng 1.2.2beta2 - February 24, 2002
* For conditions of distribution and use, see copyright notice in png.h * For conditions of distribution and use, see copyright notice in png.h
* Copyright (c) 1998-2001 Glenn Randers-Pehrson * Copyright (c) 1998-2002 Glenn Randers-Pehrson
* (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
* (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
*/ */

View File

@ -1,5 +1,5 @@
Microsoft Developer Studio Build File, Format Version 6.00 for Microsoft Developer Studio Build File, Format Version 6.00 for
libpng 1.2.2beta1 (February 22, 2002) and zlib libpng 1.2.2beta2 (February 24, 2002) and zlib
Copyright (C) 2000 Simon-Pierre Cadieux Copyright (C) 2000 Simon-Pierre Cadieux
For conditions of distribution and use, see copyright notice in png.h For conditions of distribution and use, see copyright notice in png.h

View File

@ -81,7 +81,7 @@ BEGIN
VALUE "FileDescription", "PNG image compression library\000" VALUE "FileDescription", "PNG image compression library\000"
VALUE "FileVersion", PNG_LIBPNG_VER_STRING "\000" VALUE "FileVersion", PNG_LIBPNG_VER_STRING "\000"
VALUE "InternalName", PNG_LIBPNG_DLLFNAME QUOTE(PNG_LIBPNG_VER_MAJOR) DLLFNAME_POSTFIX " (Windows 32 bit)\000" VALUE "InternalName", PNG_LIBPNG_DLLFNAME QUOTE(PNG_LIBPNG_VER_MAJOR) DLLFNAME_POSTFIX " (Windows 32 bit)\000"
VALUE "LegalCopyright", "\251 1998-2000 Glenn Randers-Pehrson\000" VALUE "LegalCopyright", "\251 1998-2002 Glenn Randers-Pehrson\000"
VALUE "OriginalFilename", PNG_LIBPNG_DLLFNAME QUOTE(PNG_LIBPNG_VER_MAJOR) DLLFNAME_POSTFIX ".DLL\000" VALUE "OriginalFilename", PNG_LIBPNG_DLLFNAME QUOTE(PNG_LIBPNG_VER_MAJOR) DLLFNAME_POSTFIX ".DLL\000"
#ifdef PRIVATEBUILD #ifdef PRIVATEBUILD
VALUE "PrivateBuild", PRIVATEBUILD VALUE "PrivateBuild", PRIVATEBUILD

View File

@ -6,7 +6,7 @@ LIBRARY
DESCRIPTION "PNG image compression library for Windows" DESCRIPTION "PNG image compression library for Windows"
EXPORTS EXPORTS
;Version 1.2.2beta1 ;Version 1.2.2beta2
png_build_grayscale_palette @1 png_build_grayscale_palette @1
png_check_sig @2 png_check_sig @2
png_chunk_error @3 png_chunk_error @3

View File

@ -1,6 +1,6 @@
A set of project files is available for Netware. Get A set of project files is available for Netware. Get
libpng-1.2.2beta1-project-netware.zip from a libpng distribution libpng-1.2.2beta2-project-netware.zip from a libpng distribution
site such as http://libpng.sourceforge.net site such as http://libpng.sourceforge.net
Put the zip file in this directory (projects) and then run Put the zip file in this directory (projects) and then run
"unzip -a libpng-1.2.2beta1-project-netware.zip" "unzip -a libpng-1.2.2beta2-project-netware.zip"

View File

@ -1,6 +1,6 @@
A set of project files is available for WinCE. Get A set of project files is available for WinCE. Get
libpng-1.2.2beta1-project-wince.zip from a libpng distribution libpng-1.2.2beta2-project-wince.zip from a libpng distribution
site such as http://libpng.sourceforge.net site such as http://libpng.sourceforge.net
Put the zip file in this directory (projects) and then run Put the zip file in this directory (projects) and then run
"unzip -a libpng-1.2.2beta1-project-wince.zip" "unzip -a libpng-1.2.2beta2-project-wince.zip"

View File

@ -18,7 +18,7 @@ RM = rm -f
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
prefix=/usr/local prefix=/usr/local

View File

@ -1,5 +1,6 @@
# makefile for libpng on BeOS x86 ELF with gcc # makefile for libpng on BeOS x86 ELF with gcc
# modified from makefile.linux by Sander Stoks # modified from makefile.linux by Sander Stoks
# Copyright (C) 2002 Glenn Randers-Pehrson
# Copyright (C) 1999 Greg Roelofs # Copyright (C) 1999 Greg Roelofs
# Copyright (C) 1996, 1997 Andreas Dilger # Copyright (C) 1996, 1997 Andreas Dilger
# For conditions of distribution and use, see copyright notice in png.h # For conditions of distribution and use, see copyright notice in png.h
@ -13,7 +14,7 @@ ZLIBINC=/usr/local/include
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
ALIGN= ALIGN=
@ -67,26 +68,41 @@ $(LIBNAME).so.$(PNGVER) \
$(OBJSDLL) $(OBJSDLL)
pngtest: pngtest.o $(LIBNAME).so pngtest: pngtest.o $(LIBNAME).so
$(CC) -L$(ZLIBLIB) -lz -lpng -o pngtest pngtest.o $(CC) -L$(ZLIBLIB) -lz -lpng12 -o pngtest pngtest.o
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a $(LIBNAME).so.$(PNGVER) install-static: libpng.a
-@mkdir $(INCPATH) $(LIBPATH) -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
cp png.h pngconf.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
-@mkdir $(INCPATH) $(LIBPATH)/$(LIBNAME) cp libpng.a $(LIBPATH)
chmod 644 $(LIBPATH)/libpng.a
install: libpng.a $(LIBNAME).so.$(PNGVER)
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH)/$(LIBNAME) cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
cp libpng.a $(LIBNAME).so.$(PNGVER) $(LIBPATH) -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER) chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ) $(LIBPATH)/$(LIBNAME).so -@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \ (cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so) ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
clean: clean:
/bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)* pngtest pngout.png /bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)* \
pngtest pngout.png
# DO NOT DELETE THIS LINE -- make depend depends on it. # DO NOT DELETE THIS LINE -- make depend depends on it.

View File

@ -39,7 +39,7 @@ CFLAGS=-I$(ZLIBINC) -Wall -O3 $(ALIGN) -funroll-loops \
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
#PNGDLL = $12 #PNGDLL = $12
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGMIN_BASE = 1.2.2 PNGMIN_BASE = 1.2.2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)

View File

@ -25,7 +25,7 @@ RANLIB=ranlib
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12 LIBNAME = libpng12
@ -68,20 +68,32 @@ pngtest: pngtest.o $(LIBNAME).dylib
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a $(LIBNAME).dylib install-static: libpng.a
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
cp libpng.a $(LIBPATH)
chmod 644 $(LIBPATH)/libpng.a
install: libpng.a $(LIBNAME).dylib
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
cp libpng.a $(LIBNAME).$(PNGVER).dylib $(LIBPATH) -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).$(PNGVER).dylib $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).$(PNGVER).dylib chmod 755 $(LIBPATH)/$(LIBNAME).$(PNGVER).dylib
ranlib $(LIBPATH)/libpng.a -@/bin/rm -f $(LIBPATH)/$(LIBNAME).$(PNGMAJ)*.dylib
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).$(PNGMAJ).dylib
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).dylib -@/bin/rm -f $(LIBPATH)/$(LIBNAME).dylib
(cd $(LIBPATH); \ (cd $(LIBPATH);
ln -sf $(LIBNAME).$(PNGVER).dylib $(LIBNAME).$(PNGMAJ).dylib; \ ln -sf $(LIBNAME).$(PNGVER).dylib $(LIBNAME).$(PNGMAJ).dylib; \
ln -sf $(LIBNAME).$(PNGMAJ).dylib $(LIBNAME).dylib) ln -sf $(LIBNAME).$(PNGMAJ).dylib $(LIBNAME).dylib)

View File

@ -17,7 +17,7 @@ ZLIBINC=../zlib
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12 LIBNAME = libpng12
@ -53,25 +53,34 @@ pngtest: pngtest.o libpng.a
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a $(LIBNAME).so.$(PNGVER)
-@mkdir $(INCPATH) install-static: libpng.a
-@mkdir $(LIBPATH) -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@mkdir $(INCPATH)/$(LIBNAME) -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
cp png.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
cp pngconf.h $(INCPATH) chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
chmod 644 $(INCPATH)/png.h
chmod 644 $(INCPATH)/pngconf.h
cp png.h $(INCPATH)/$(LIBNAME)
cp pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h
chmod 644 $(INCPATH)/$(LIBNAME)/pngconf.h
cp libpng.a $(LIBPATH) cp libpng.a $(LIBPATH)
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 644 $(LIBPATH)/libpng.a chmod 644 $(LIBPATH)/libpng.a
chmod 644 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ) $(LIBPATH)/$(LIBNAME).so install: libpng.a $(LIBNAME).so.$(PNGVER)
(cd $(LIBPATH); ln -f -s $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \ -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
ln -f -s $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so) -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
-@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -f -s $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -f -s $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -f -s $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH); \
ln -f -s $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
ln -f -s $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
clean: clean:
/bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)* pngtest pngout.png /bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)* pngtest pngout.png

View File

@ -15,7 +15,7 @@
LIBNAME = libpng12 LIBNAME = libpng12
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
CC=gcc CC=gcc
@ -112,22 +112,32 @@ test: pngtest pngtest-static
@echo "" @echo ""
./pngtest-static ./pngtest-static
install: libpng.a $(LIBNAME).so.$(PNGVER) install-static: libpng.a
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h cp libpng.a $(LIBPATH)
cp libpng.a $(LIBNAME).so.$(PNGVER) $(LIBPATH) chmod 644 $(LIBPATH)/libpng.a
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ) \
$(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) \
$(LIBNAME).so.$(PNGMAJ); \
ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
install: libpng.a $(LIBNAME).so.$(PNGVER)
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
-@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
clean: clean:
/bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)* pngtest pngout.png /bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)* pngtest pngout.png

View File

@ -35,9 +35,9 @@ RANLIB=ranlib
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
SHAREDLIB = libpng12 LIBNAME = libpng12
INCPATH=$(prefix)/include INCPATH=$(prefix)/include
LIBPATH=$(prefix)/lib LIBPATH=$(prefix)/lib
@ -53,43 +53,54 @@ OBJSDLL = $(OBJS:.o=.pic.o)
.c.pic.o: .c.pic.o:
$(CC) -c $(CFLAGS) -fPIC -o $@ $*.c $(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
all: libpng.a $(SHAREDLIB).sl pngtest all: libpng.a $(LIBNAME).sl pngtest
libpng.a: $(OBJS) libpng.a: $(OBJS)
ar rc $@ $(OBJS) ar rc $@ $(OBJS)
$(RANLIB) $@ $(RANLIB) $@
$(SHAREDLIB).sl: $(SHAREDLIB).sl.$(PNGMAJ) $(LIBNAME).sl: $(LIBNAME).sl.$(PNGMAJ)
ln -f -s $(SHAREDLIB).sl.$(PNGMAJ) $(SHAREDLIB).sl ln -f -s $(LIBNAME).sl.$(PNGMAJ) $(LIBNAME).sl
$(SHAREDLIB).sl.$(PNGMAJ): $(SHAREDLIB).sl.$(PNGVER) $(LIBNAME).sl.$(PNGMAJ): $(LIBNAME).sl.$(PNGVER)
ln -f -s $(SHAREDLIB).sl.$(PNGVER) $(SHAREDLIB).sl.$(PNGMAJ) ln -f -s $(LIBNAME).sl.$(PNGVER) $(LIBNAME).sl.$(PNGMAJ)
$(SHAREDLIB).sl.$(PNGVER): $(OBJSDLL) $(LIBNAME).sl.$(PNGVER): $(OBJSDLL)
$(LD) -b -L$(ZLIBLIB) +s +b $(ZLIBLIB) \ $(LD) -b -L$(ZLIBLIB) +s +b $(ZLIBLIB) \
+h libpng.sl.$(PNGMAJ) -o libpng.sl.$(PNGVER) $(OBJSDLL) -lz +h libpng.sl.$(PNGMAJ) -o libpng.sl.$(PNGVER) $(OBJSDLL) -lz
pngtest: pngtest.o $(SHAREDLIB).sl pngtest: pngtest.o $(LIBNAME).sl
$(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a $(SHAREDLIB).sl.$(PNGVER) install-static: libpng.a
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
cp libpng.a $(LIBPATH)
chmod 644 $(LIBPATH)/libpng.a
install: libpng.a $(LIBNAME).sl.$(PNGVER)
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
cp libpng.a $(SHAREDLIB).sl.$(PNGVER) $(LIBPATH) -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
chmod 755 $(LIBPATH)/$(SHAREDLIB).sl.$(PNGVER) ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
-@/bin/rm -f $(LIBPATH)/$(SHAREDLIB).sl.$(PNGMAJ) \ ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
$(LIBPATH)/$(SHAREDLIB).sl cp libpng.a $(LIBPATH)/$(LIBNAME).a
(cd $(LIBPATH); ln -sf $(SHAREDLIB).sl.$(PNGVER) \ chmod 644 $(LIBPATH)/$(LIBNAME).a
$(SHAREDLIB).sl.$(PNGMAJ); \ -@/bin/rm -f $(LIBPATH)/libpng.a
ln -sf $(SHAREDLIB).sl.$(PNGMAJ) $(SHAREDLIB).sl) ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).sl.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).sl.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).sl.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).sl
(cd $(LIBPATH); ln -sf $(LIBNAME).sl.$(PNGVER) $(LIBNAME).sl.$(PNGMAJ); \
ln -sf $(LIBNAME).sl.$(PNGMAJ) $(LIBNAME).sl)
clean: clean:
/bin/rm -f *.o libpng.a $(SHAREDLIB).sl $(SHAREDLIB).sl.$(PNGMAJ)* \ /bin/rm -f *.o libpng.a $(SHAREDLIB).sl $(SHAREDLIB).sl.$(PNGMAJ)* \

View File

@ -19,12 +19,14 @@ RANLIB=ranlib
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12 LIBNAME = libpng12
# where make install puts libpng.a, libpng12.sl, and png.h # where make install puts libpng.a, libpng12.sl, and png.h
prefix=/opt/libpng prefix=/opt/libpng
LIBPATH=$prefix/lib
INCPATH=$prefix/include
OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \ OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \ pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
@ -60,22 +62,31 @@ pngtest: pngtest.o libpng.a
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a install-static: libpng.a
-@mkdir $(prefix)/include -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@mkdir $(prefix)/include/$(LIBNAME) -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@mkdir $(prefix)/lib cp png.h pngconf.h $(INCPATH)
cp png.h $(prefix)/include chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
cp pngconf.h $(prefix)/include cp libpng.a $(LIBPATH)
cp png.h $(prefix)/include/$(LIBNAME) chmod 644 $(LIBPATH)/libpng.a
cp pngconf.h $(prefix)/include/$(LIBNAME)
chmod 644 $(prefix)/include/png.h install: libpng.a $(LIBNAME).sl.$(PNGVER)
chmod 644 $(prefix)/include/pngconf.h -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
chmod 644 $(prefix)/include/$(LIBNAME)/png.h -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
chmod 644 $(prefix)/include/$(LIBNAME)/pngconf.h -@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp libpng.a $(LIBNAME).sl.$(PNGVER) $(prefix)/lib cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(prefix)/lib/libpng.a chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
chmod 755 $(prefix)/lib/$(LIBNAME).sl.$(PNGVER) -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
(cd $(prefix)/lib; \ ln -f -s $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -f -s $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -f -s $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).sl.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).sl.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).sl.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).sl
(cd $(LIBPATH); \
ln -f -s $(LIBNAME).sl.$(PNGVER) $(LIBNAME).sl.$(PNGMAJ); \ ln -f -s $(LIBNAME).sl.$(PNGVER) $(LIBNAME).sl.$(PNGMAJ); \
ln -f -s $(LIBNAME).sl.$(PNGMAJ) $(LIBNAME).sl) ln -f -s $(LIBNAME).sl.$(PNGMAJ) $(LIBNAME).sl)

View File

@ -5,7 +5,7 @@
LIBNAME = libpng12 LIBNAME = libpng12
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
CC=gcc CC=gcc
@ -86,21 +86,32 @@ test: pngtest pngtest-static
@echo "" @echo ""
./pngtest-static ./pngtest-static
install: libpng.a $(LIBNAME).so.$(PNGVER) install-static: libpng.a
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
cp libpng.a $(LIBPATH)
chmod 644 $(LIBPATH)/libpng.a
install: libpng.a $(LIBNAME).so.$(PNGVER)
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
cp libpng.a $(LIBNAME).so.$(PNGVER) $(LIBPATH) -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER) chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ) \ -@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
$(LIBPATH)/$(LIBNAME).so (cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
(cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) \ ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
$(LIBNAME).so.$(PNGMAJ); \
ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
clean: clean:
/bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNMAJ)* \ /bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNMAJ)* \

View File

@ -20,11 +20,12 @@ LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz
LDSHARED=cc -lz -dynamiclib -compatibility_version $(VER) -current_version $(VER) LDSHARED=cc -lz -dynamiclib -compatibility_version $(VER) -current_version $(VER)
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
VER = $(PNGMAJ).$(PNGMIN) VER = $(PNGMAJ).$(PNGMIN)
SHAREDLIB=libpng12 LIBNAME=libpng12
SHAREDLIB_POSTFIX=dylib SHAREDLIB_POSTFIX=dylib
libdir=$(prefix)/lib LIBPATH=$(prefix)/lib
INCPATH=$(prefix)/include
#RANLIB=echo #RANLIB=echo
RANLIB=ranlib RANLIB=ranlib
@ -35,13 +36,13 @@ OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
all: libpng.a pngtest shared all: libpng.a pngtest shared
shared: $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) shared: $(LIBNAME).$(VER).$(SHAREDLIB_POSTFIX)
libpng.a: $(OBJS) libpng.a: $(OBJS)
ar rc $@ $(OBJS) ar rc $@ $(OBJS)
$(RANLIB) $@ $(RANLIB) $@
$(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX): $(OBJS) $(LIBNAME).$(VER).$(SHAREDLIB_POSTFIX): $(OBJS)
$(LDSHARED) -o $@ $(OBJS) $(LDSHARED) -o $@ $(OBJS)
pngtest: pngtest.o libpng.a pngtest: pngtest.o libpng.a
@ -50,31 +51,40 @@ pngtest: pngtest.o libpng.a
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a install-static: libpng.a
-@mkdir $(prefix)/include -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@mkdir $(prefix)/lib -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@mkdir $(prefix)/include/$(SHAREDLIB) cp png.h pngconf.h $(INCPATH)
cp png.h $(prefix)/include chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
cp pngconf.h $(prefix)/include cp libpng.a $(LIBPATH)
cp png.h $(prefix)/include/$(SHAREDLIB) chmod 644 $(LIBPATH)/libpng.a
cp pngconf.h $(prefix)/include/$(SHAREDLIB)
chmod 644 $(prefix)/include/png.h
chmod 644 $(prefix)/include/pngconf.h
chmod 644 $(prefix)/include/$(SHAREDLIB)/png.h
chmod 644 $(prefix)/include/$(SHAREDLIB)/pngconf.h
cp libpng.a $(prefix)/lib
chmod 644 $(prefix)/lib/libpng.a
install-shared: $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) install: libpng.a $(LIBNAME).$(PNGVER).$(SHAREDLIB_POSTFIX)
cp $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) $(libdir) -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
(cd $(libdir); \ -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
ln -s $(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) \ -@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
$(SHAREDLIB).$(SHAREDLIB_POSTFIX)) cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
-@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).$(PNGVER).$(SHAREDLIB_POSTFIX) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).$(PNGVER).$(SHAREDLIB_POSTFIX)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).$(PNGMAJ)*.$(SHAREDLIB_POSTFIX)
-@/bin/rm -f$(LIBPATH)/$(LIBNAME).$(SHAREDLIB_POSTFIX)
(cd $(LIBPATH); ln -sf $(LIBNAME).$(PNGVER).$(SHAREDLIB_POSTFIX) \
$(LIBNAME).$(PNGMAJ).$(SHAREDLIB_POSTFIX); \
ln -sf $(LIBNAME).$(PNGMAJ).$(SHAREDLIB_POSTFIX) \
$(LIBNAME).$(SHAREDLIB_POSTFIX))
clean: clean:
rm -f *.o libpng.a pngtest pngout.png \ rm -f *.o libpng.a pngtest pngout.png \
$(SHAREDLIB).$(VER).$(SHAREDLIB_POSTFIX) \ $(LIBNAME).$(VER).$(SHAREDLIB_POSTFIX) \
$(SHAREDLIB).$(SHAREDLIB_POSTFIX) $(LIBNAME).$(SHAREDLIB_POSTFIX)
DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
writelock: writelock:

View File

@ -13,7 +13,7 @@ INCSDIR=${LOCALBASE}/include
LIB=png LIB=png
# Shared lib name should be png12. # Shared lib name should be png12.
SHLIB_MAJOR= 0 SHLIB_MAJOR= 0
SHLIB_MINOR= 1.2.2beta1 SHLIB_MINOR= 1.2.2beta2
SRCS= pnggccrd.c png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \ 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 \ pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \
pngwtran.c pngmem.c pngerror.c pngpread.c pngwtran.c pngmem.c pngerror.c pngpread.c

View File

@ -25,7 +25,7 @@ RANLIB=echo
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12 LIBNAME = libpng12
@ -65,15 +65,30 @@ pngtest: pngtest.o $(LIBNAME).so
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a $(LIBNAME).so.$(PNGVER) install-static: libpng.a
-@mkdir $(INCPATH) $(LIBPATH) $(INCPATH)/$(LIBNAME) -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
cp png.h pngconf.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
cp libpng.a $(LIBPATH)
chmod 644 $(LIBPATH)/libpng.a
install: libpng.a $(LIBNAME).so.$(PNGVER)
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
cp libpng.a $(LIBNAME).so.$(PNGVER) $(LIBPATH) -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -f -s $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -f -s $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -f -s $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER) chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ) $(LIBPATH)/$(LIBNAME).so -@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH); \ (cd $(LIBPATH); \
ln -f -s $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \ ln -f -s $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
ln -f -s $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so) ln -f -s $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)

View File

@ -23,12 +23,13 @@ CFLAGS=$(ABI) -I$(ZLIBINC) -O2 $(WARNMORE) -fPIC -mabi=n32
LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm
LDSHARED=CC $(ABI) -shared LDSHARED=CC $(ABI) -shared
VER=1.2.2beta1 PNGMAJ = 0
PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN)
# See "man dso" for info about shared objects # See "man dso" for info about shared objects
SONUM=0 LIBS=libpng12.so.$(PNGMAJ).$(PNGVER)
LIBS=libpng12.so.$(SONUM).$(VER) LIBNAME=libpng12
SHAREDLIB=libpng12.so LIBPATH=$(prefix)/lib32
libdir=$(prefix)/lib32
RANLIB=echo RANLIB=echo
#RANLIB=ranlib #RANLIB=ranlib
@ -37,17 +38,17 @@ OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \ pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
pngwtran.o pngmem.o pngerror.o pngpread.o pngwtran.o pngmem.o pngerror.o pngpread.o
all: libpng.a $(SHAREDLIB).$(VER) pngtest all: libpng.a $(LIBNAME).so.$(PNGVER) pngtest
libpng.a: $(OBJS) libpng.a: $(OBJS)
ar rc $@ $(OBJS) ar rc $@ $(OBJS)
$(RANLIB) $@ $(RANLIB) $@
$(SHAREDLIB).$(VER): $(OBJS) $(LIBNAME).so.$(PNGVER): $(OBJS)
$(LDSHARED) -o $@ $(OBJS) $(LDSHARED) -o $@ $(OBJS)
rm -f $(SHAREDLIB) $(SHAREDLIB).$(SONUM) rm -f $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)
ln -s $@ $(SHAREDLIB) ln -s $@ $(LIBNAME).so
ln -s $@ $(SHAREDLIB).$(SONUM) ln -s $@ $(LIBNAME).so.$(PNGMAJ)
pngtest: pngtest.o libpng.a pngtest: pngtest.o libpng.a
$(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
@ -55,25 +56,32 @@ pngtest: pngtest.o libpng.a
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a install-static: libpng.a
-@mkdir $(prefix)/include -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@mkdir $(prefix)/lib -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
cp png.h pngconf.h $(prefix)/include cp png.h pngconf.h $(INCPATH)
chmod 644 $(prefix)/include/png.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
chmod 644 $(prefix)/include/pngconf.h cp libpng.a $(LIBPATH)
cp libpng.a $(prefix)/lib chmod 644 $(LIBPATH)/libpng.a
chmod 644 $(prefix)/lib/libpng.a
install-shared: $(SHAREDLIB).$(VER) install: libpng.a $(LIBNAME).so.$(PNGVER)
-@mkdir $(prefix)/include/libpng12 -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
cp png.h pngconf.h $(prefix)/include/libpng12 -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
chmod 644 $(prefix)/include/libpng12/png.h -@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
chmod 644 $(prefix)/include/libpng12/pngconf.h cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
cp $(SHAREDLIB).$(VER) $(libdir); chmod 755 $(SHAREDLIB).$(VER) chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
(cd $(libdir); if test -f $(SHAREDLIB).$(VER); then \ -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
rm -f $(SHAREDLIB) $(SHAREDLIB).$(SONUM); \ ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -s $(SHAREDLIB).$(VER) $(SHAREDLIB); \ ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
ln -s $(SHAREDLIB).$(VER) $(SHAREDLIB).$(SONUM); \ cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
(ldconfig || true) >/dev/null 2>&1; \ (ldconfig || true) >/dev/null 2>&1; \
fi) fi)

View File

@ -28,10 +28,11 @@ LDFLAGS_A=$(ABI) -L. -L$(ZLIBLIB) -lpng12 -lz -lm
LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm
LDSHARED=cc $(ABI) -shared LDSHARED=cc $(ABI) -shared
VER=1.2.2beta1
# See "man dso" for info about shared objects # See "man dso" for info about shared objects
SONUM=0 LIBNAME=libpng12
SHAREDLIB=libpng12.so PNGMAJ = 0
PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN)
RANLIB=echo RANLIB=echo
#RANLIB=ranlib #RANLIB=ranlib
@ -46,17 +47,17 @@ OBJS = pnggccrd.o png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
all: libpng.a pngtest shared all: libpng.a pngtest shared
shared: $(SHAREDLIB).$(SONUM).$(VER) shared: $(LIBNAME).so.$(PNGMAJ).$(PNGVER)
libpng.a: $(OBJS) libpng.a: $(OBJS)
ar rc $@ $(OBJS) ar rc $@ $(OBJS)
$(RANLIB) $@ $(RANLIB) $@
$(SHAREDLIB).$(SONUM).$(VER): $(OBJS) $(LIBNAME).so.$(PNGVER): $(OBJS)
$(LDSHARED) -o $@ $(OBJS) $(LDSHARED) -o $@ $(OBJS)
rm -f $(SHAREDLIB) $(SHAREDLIB).$(SONUM) rm -f $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)
ln -s $@ $(SHAREDLIB) ln -s $@ $(LIBNAME).so
ln -s $@ $(SHAREDLIB).$(SONUM) ln -s $@ $(LIBNAME).so.$(PNGMAJ)
pngtest: pngtest.o libpng.a pngtest: pngtest.o libpng.a
$(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
@ -64,33 +65,36 @@ pngtest: pngtest.o libpng.a
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a install-static: libpng.a
-@mkdir $(INCPATH) -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@mkdir $(LIBPATH) -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
cp png.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
cp pngconf.h $(INCPATH) chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
chmod 644 $(INCPATH)/png.h
chmod 644 $(INCPATH)/pngconf.h
cp libpng.a $(LIBPATH) cp libpng.a $(LIBPATH)
chmod 644 $(LIBPATH)/libpng.a chmod 644 $(LIBPATH)/libpng.a
install-shared: $(SHAREDLIB).$(SONUM).$(VER) install: libpng.a $(LIBNAME).so.$(PNGVER)
-@mkdir $(LIBPATH) -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@mkdir $(INCPATH) -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@mkdir $(INCPATH)/libpng12 -@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h $(INCPATH)/libpng12 cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
cp pngconf.h $(INCPATH)/libpng12 chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
chmod 644 $(INCPATH)/libpng12/png.h -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
chmod 644 $(INCPATH)/libpng12/pngconf.h ln -sf $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
cp $(SHAREDLIB).$(SONUM).$(VER) $(LIBPATH) ln -sf $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
chmod 755 $(SHAREDLIB).$(SONUM).$(VER) cp libpng.a $(LIBPATH)/$(LIBNAME).a
(cd $(LIBPATH); if test -f $(SHAREDLIB).$(SONUM).$(VER); then \ chmod 644 $(LIBPATH)/$(LIBNAME).a
rm -f $(SHAREDLIB) $(SHAREDLIB).$(SONUM); \ -@/bin/rm -f $(LIBPATH)/libpng.a
ln -s $(SHAREDLIB).$(SONUM).$(VER) $(SHAREDLIB).$(SONUM); \ ln -sf $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
ln -s $(SHAREDLIB).$(SONUM) $(SHAREDLIB)) cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH); ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
clean: clean:
rm -f *.o libpng.a pngtest pngout.png $(SHAREDLIB) $(SHAREDLIB).$(SONUM)* rm -f *.o libpng.a pngtest pngout.png $(LIBNAME).so \
$(LIBNAME).so.$(PNGMAJ)*
DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
writelock: writelock:

View File

@ -35,7 +35,7 @@ RANLIB=echo
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12 LIBNAME = libpng12
@ -87,16 +87,30 @@ pngtest: pngtest.o $(LIBNAME).so
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a $(LIBNAME).so.$(PNGVER) install-static: libpng.a
-@mkdir $(INCPATH) $(LIBPATH) -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@mkdir $(INCPATH)/$(LIBNAME) -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
cp png.h pngconf.h $(INCPATH) cp png.h pngconf.h $(INCPATH)
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
cp libpng.a $(LIBPATH)
chmod 644 $(LIBPATH)/libpng.a
install: libpng.a $(LIBNAME).so.$(PNGVER)
-@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
-@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
cp libpng.a $(LIBNAME).so.$(PNGVER) $(LIBPATH) -@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -f -s $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -f -s $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -f -s $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER) chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ) $(LIBPATH)/$(LIBNAME).so -@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH); \ (cd $(LIBPATH); \
ln -f -s $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \ ln -f -s $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
ln -f -s $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so) ln -f -s $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)

View File

@ -32,8 +32,9 @@ RANLIB=echo
# read libpng.txt or png.h to see why PNGMAJ is 0. You should not # read libpng.txt or png.h to see why PNGMAJ is 0. You should not
# have to change it. # have to change it.
PNGMAJ = 0 PNGMAJ = 0
PNGMIN = 1.2.2beta1 PNGMIN = 1.2.2beta2
PNGVER = $(PNGMAJ).$(PNGMIN) PNGVER = $(PNGMAJ).$(PNGMIN)
LIBNAME = libpng12
INCPATH=$(prefix)/include INCPATH=$(prefix)/include
LIBPATH=$(prefix)/lib LIBPATH=$(prefix)/lib
@ -49,19 +50,19 @@ OBJSDLL = $(OBJS:.o=.pic.o)
.c.pic.o: .c.pic.o:
$(CC) -c $(CFLAGS) -fPIC -o $@ $*.c $(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
all: libpng.a libpng12.so pngtest all: libpng.a $(LIBNAME).so pngtest
libpng.a: $(OBJS) libpng.a: $(OBJS)
ar rc $@ $(OBJS) ar rc $@ $(OBJS)
$(RANLIB) $@ $(RANLIB) $@
libpng12.so: libpng12.so.$(PNGMAJ) $(LIBNAME).so: $(LIBNAME).so.$(PNGMAJ)
ln -f -s libpng12.so.$(PNGMAJ) libpng12.so ln -f -s $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so
libpng12.so.$(PNGMAJ): libpng12.so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ): $(LIBNAME).so.$(PNGVER)
ln -f -s libpng12.so.$(PNGVER) libpng12.so.$(PNGMAJ) ln -f -s $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ)
libpng12.so.$(PNGVER): $(OBJSDLL) $(LIBNAME).so.$(PNGVER): $(OBJSDLL)
@case "`type ld`" in *ucb*) \ @case "`type ld`" in *ucb*) \
echo; \ echo; \
echo '## WARNING:'; \ echo '## WARNING:'; \
@ -74,33 +75,45 @@ libpng12.so.$(PNGVER): $(OBJSDLL)
echo; \ echo; \
;; \ ;; \
esac esac
$(LD) -G -L$(ZLIBLIB) -R$(ZLIBLIB) -h libpng12.so.$(PNGMAJ) \ $(LD) -G -L$(ZLIBLIB) -R$(ZLIBLIB) -h $(LIBNAME).so.$(PNGMAJ) \
-o libpng12.so.$(PNGVER) $(OBJSDLL) -lz -o $(LIBNAME).so.$(PNGVER) $(OBJSDLL) -lz
pngtest: pngtest.o libpng12.so pngtest: pngtest.o $(LIBNAME).so
$(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
test: pngtest test: pngtest
./pngtest ./pngtest
install: libpng.a libpng12.so.$(PNGVER) install-static: libpng.a
-@mkdir $(INCPATH) $(LIBPATH) -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
-@mkdir $(INCPATH)/libpng12 -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
cp png.h pngconf.h $(INCPATH)/libpng12 cp png.h pngconf.h $(INCPATH)
cp png.h pngconf.h $(INCPATH)/libpng12
chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
chmod 644 $(INCPATH)/libpng12/png.h \ cp libpng.a $(LIBPATH)
$(INCPATH)/libpng12/pngconf.h chmod 644 $(LIBPATH)/libpng.a
cp libpng.a libpng12.so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/libpng12.so.$(PNGVER) install: libpng.a $(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/libpng12.so.$(PNGMAJ) \ -@if [ ! -d $(INCPATH) ]; then mkdir $(INCPATH); fi
$(LIBPATH)/libpng12.so -@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
(cd $(LIBPATH); \ -@if [ ! -d $(INCPATH)/$(LIBNAME) ]; then mkdir $(INCPATH)/$(LIBNAME); fi
ln -f -s libpng12.so.$(PNGVER) libpng12.so.$(PNGMAJ); \ cp png.h pngconf.h $(INCPATH)/$(LIBNAME)
ln -f -s libpng12.so.$(PNGMAJ) libpng12.so) chmod 644 $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)/$(LIBNAME)/pngconf.h
-@/bin/rm -f $(INCPATH)/png.h $(INCPATH)/pngconf.h
ln -f -s $(INCPATH)/$(LIBNAME)/png.h $(INCPATH)
ln -f -s $(INCPATH)/$(LIBNAME)/pngconf.h $(INCPATH)
cp libpng.a $(LIBPATH)/$(LIBNAME).a
chmod 644 $(LIBPATH)/$(LIBNAME).a
-@/bin/rm -f $(LIBPATH)/libpng.a
ln -f -s $(LIBPATH)/$(LIBNAME).a $(LIBPATH)/libpng.a
cp $(LIBNAME).so.$(PNGVER) $(LIBPATH)
chmod 755 $(LIBPATH)/$(LIBNAME).so.$(PNGVER)
-@/bin/rm -f $(LIBPATH)/$(LIBNAME).so.$(PNGMAJ)* $(LIBPATH)/$(LIBNAME).so
(cd $(LIBPATH);
ln -f -s $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
ln -f -s $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
clean: clean:
/bin/rm -f *.o libpng.a libpng12.so libpng12.so.$(PNGMAJ)* \ /bin/rm -f *.o libpng.a $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)* \
pngtest pngout.png pngtest pngout.png
DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO

View File

@ -7,7 +7,7 @@ unit pngdef;
interface interface
const const
PNG_LIBPNG_VER_STRING = '1.2.2beta1'; PNG_LIBPNG_VER_STRING = '1.2.2beta2';
PNG_LIBPNG_VER = 10202; PNG_LIBPNG_VER = 10202;
type type

View File

@ -2,7 +2,7 @@
; PNG.LIB module definition file for OS/2 ; PNG.LIB module definition file for OS/2
;---------------------------------------- ;----------------------------------------
; Version 1.2.2beta1 ; Version 1.2.2beta2
LIBRARY PNG LIBRARY PNG
DESCRIPTION "PNG image compression library for OS/2" DESCRIPTION "PNG image compression library for OS/2"