From a4d54bdb4ab6b727e6b98b6990950f0864b1e067 Mon Sep 17 00:00:00 2001 From: Glenn Randers-Pehrson Date: Fri, 14 Jul 2000 08:15:12 -0500 Subject: [PATCH] Imported from libpng-1.0.8beta4.tar --- ANNOUNCE | 5 +- CHANGES | 6 +- INSTALL | 12 +-- KNOWNBUG | 22 +++++- LICENSE | 6 +- README | 13 +-- Y2KINFO | 4 +- configure | 2 +- libpng.3 | 18 ++--- libpng.txt | 6 +- libpngpf.3 | 4 +- msvc/README.txt | 2 +- msvc/png32ms.def | 2 +- png.5 | 2 +- png.c | 14 ++-- png.h | 22 +++--- pngasmrd.h | 2 +- pngbar.jpg | Bin 0 -> 2498 bytes pngbar.png | Bin 0 -> 2399 bytes pngconf.h | 123 ++++++++++++++++++++++++++--- pngerror.c | 2 +- pnggccrd.c | 6 +- pngget.c | 2 +- pngmem.c | 2 +- pngpread.c | 2 +- pngread.c | 6 +- pngrio.c | 2 +- pngrtran.c | 2 +- pngrutil.c | 2 +- pngset.c | 2 +- pngtest.c | 4 +- pngtrans.c | 2 +- pngvcrd.c | 2 +- pngwio.c | 2 +- pngwrite.c | 2 +- pngwtran.c | 2 +- pngwutil.c | 2 +- scripts/makefile.beos | 2 +- scripts/makefile.cygwin | 165 +++++++++++++++++++++++++++++++++++++++ scripts/makefile.dec | 2 +- scripts/makefile.gcmmx | 4 +- scripts/makefile.linux | 2 +- scripts/makefile.sco | 2 +- scripts/makefile.sggcc | 4 +- scripts/makefile.solaris | 2 +- scripts/pngdef.pas | 2 +- 46 files changed, 391 insertions(+), 103 deletions(-) create mode 100644 pngbar.jpg create mode 100644 pngbar.png create mode 100644 scripts/makefile.cygwin diff --git a/ANNOUNCE b/ANNOUNCE index d1b9d77bf..0bba759c0 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,5 +1,5 @@ -Libpng 1.0.8beta3 - July 11, 2000 +Libpng 1.0.8beta4 - July 14, 2000 This is a public release of libpng, intended for use in production codes. @@ -15,6 +15,9 @@ Changes since the last public release (1.0.7): Only set the PNG_FLAG_FREE_TRNS or PNG_FREE_TRNS flag in png_handle_tRNS() for indexed-color input files to avoid potential double-freeing trans array under some unusual conditions; problem was introduced in version 1.0.7. + Added the files pngbar.png and pngbar.jpg to the distribution. + Added cygwin subdirectory, makefile.cygwin, and cygwin support in pngconf.h + Added PNG_NO_ZALLOC_ZERO macro (makes png_zalloc skip zeroing memory) Send comments/corrections/commendations to png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu diff --git a/CHANGES b/CHANGES index 4e75e438f..15cd3cc1a 100644 --- a/CHANGES +++ b/CHANGES @@ -797,7 +797,7 @@ version 1.0.7rc2 [June 28, 2000] Fixed "DJBPP" typo in pnggccrd.c introduced in beta18. version 1.0.7 [July 1, 2000] Revised the definition of "trans_values" in libpng.3/libpng.txt -version 1.0.8beta3 [July 11, 2000] +version 1.0.8beta4 [July 14, 2000] version 1.0.8beta1 [July 8, 2000] Added png_free(png_ptr, key) two places in pngpread.c to stop memory leaks. Changed PNG_NO_STDIO to PNG_NO_CONSOLE_IO, several places in pngrutil.c and @@ -814,6 +814,10 @@ version 1.0.8beta3 [July 11, 2000] for indexed-color input files to avoid potential double-freeing trans array under some unusual conditions; problem was introduced in version 1.0.6f. Further revisions to pngtest.c and files in the wince subdirectory. +version 1.0.8beta4 [July 14, 2000] + Added the files pngbar.png and pngbar.jpg to the distribution. + Added cygwin subdirectory, makefile.cygwin, and cygwin support in pngconf.h + Added PNG_NO_ZALLOC_ZERO macro (makes png_zalloc skip zeroing memory) Send comments/corrections/commendations to png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu diff --git a/INSTALL b/INSTALL index 8bf47bf8a..26a3b6362 100644 --- a/INSTALL +++ b/INSTALL @@ -1,5 +1,5 @@ -Installing libpng version 1.0.8beta3 - July 11, 2000 +Installing libpng version 1.0.8beta4 - July 14, 2000 Before installing libpng, you must first install zlib. zlib can usually be found wherever you got libpng. zlib can be @@ -10,7 +10,7 @@ zlib.h and zconf.h include files that correspond to the version of zlib that's installed. You can rename the directories that you downloaded (they -might be called "libpng-1.0.8beta3" or "lpng107" and "zlib-1.1.3" +might be called "libpng-1.0.8beta4" or "lpng107" and "zlib-1.1.3" or "zlib113") so that you have directories called "zlib" and "libpng". Your directory structure should look like this: @@ -57,8 +57,8 @@ The files that are presently available in the scripts directory include makefile.std => Generic UNIX makefile (cc, creates static libpng.a) - makefile.linux => Linux/ELF makefile (gcc, creates libpng.so.2.1.0.8beta3) - makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng.so.2.1.0.8beta3, + makefile.linux => Linux/ELF makefile (gcc, creates libpng.so.2.1.0.8beta4) + makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng.so.2.1.0.8beta4, uses assembler code tuned for Intel MMX platform) makefile.gcc => Generic makefile (gcc, creates static libpng.a) makefile.knr => Archaic UNIX Makefile that converts files with @@ -70,9 +70,9 @@ include makefile.intel => Intel C/C++ version 4.0 and later libpng.icc => Project file for IBM VisualAge/C++ version 4.0 or later makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib) - makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.2.1.0.8beta3) + makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.2.1.0.8beta4) makefile.sunos => Sun makefile - makefile.solaris => Solaris 2.X makefile (gcc, creates libpng.so.2.1.0.8beta3) + makefile.solaris => Solaris 2.X makefile (gcc, creates libpng.so.2.1.0.8beta4) makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc makefile.mips => MIPS makefile makefile.acorn => Acorn makefile diff --git a/KNOWNBUG b/KNOWNBUG index 3bf58c2b6..958c7c070 100644 --- a/KNOWNBUG +++ b/KNOWNBUG @@ -9,6 +9,13 @@ Known bugs and suggested enhancements in libpng-1.0.7 STATUS: Under investigation. Experts on MMX assembler code are invited to help with the debugging. Note that pngvcrd.c works fine. + Update: fixed in libpng-1.0.8beta1. It compiles under gcc-2.7.2.3 + and seems to work; under gcc-2.7.2.1 it compiles but crashes in + execution. It is recommended that people use 2.95.2 or later. + + The png_read_filter() function has still not been fully converted and + will not compile under gcc-2.95.2; it is currently ifdef'ed out. + 2. July 3, 2000 -- BUG -- MEMORY LEAK There is a memory leak in pngpread.c; it doesn't free "key". @@ -38,11 +45,18 @@ Known bugs and suggested enhancements in libpng-1.0.7 Libpng-1.0.7 does not support WindowsCE. STATUS: Libpng-1.0.8 and libpng-2.0.0 will support WindowsCE. A - new typedef, png_file_p, will be added which is normally FILE * but + new typedef, png_FILE_p, will be added which is normally FILE * but will be HANDLE if libpng is being built for WindowsCE. Other patches required for WindowsCE support have been provided and will be applied. + Finished in libpng-1.0.8beta3. -6. March 15, 1998 -- OPTIMIZATION -- Kevin Bracey +6. July 13, 2000 -- ENHANCEMENT -- Cygwin support + + Libpng-1.0.7 does not support building DLLs under Cygwin + + STATUS: Cygwin support has been added to libpng-1.0.8beta4. + +7. March 15, 1998 -- OPTIMIZATION -- Kevin Bracey Loops need to be optimized everywhere @@ -57,7 +71,7 @@ Known bugs and suggested enhancements in libpng-1.0.7 libpng-1.1.0. About 160 loops will be turned around in libpng-2.0.x betaxx, for testing. -7. July 4, 1998 -- ENHANCEMENT -- Glenn R-P +8. July 4, 1998 -- ENHANCEMENT -- Glenn R-P libpng-1.0.5 and earlier transform colors to gamma=1.0 space for merging with background, and then back to the image's gamma. The @@ -69,7 +83,7 @@ Known bugs and suggested enhancements in libpng-1.0.7 STATUS: under development. -8. September 1999 -- ENHANCEMENT -- +9. September 1999 -- ENHANCEMENT -- It should be possible to use libpng without floating-point aritmetic. diff --git a/LICENSE b/LICENSE index bd2a72069..2cbd38337 100644 --- a/LICENSE +++ b/LICENSE @@ -4,7 +4,7 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: If you modify libpng you may insert additional notices immediately following this sentence. -libpng version 1.0.8beta3, July 11, 2000 is Copyright (c) 2000 Glenn Randers-Pehrson +libpng version 1.0.8beta4, July 14, 2000 is Copyright (c) 2000 Glenn Randers-Pehrson Distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors @@ -87,11 +87,11 @@ boxes and the like: printf("%s",png_get_copyright(NULL)); Also, the PNG logo (in PNG format, of course) is supplied in the -file "pngnow.png". +files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). Libpng is OSI Certified Open Source Software. OSI Certified Open Source is a certification mark of the Open Source Initiative. Glenn Randers-Pehrson randeg@alum.rpi.edu -July 11, 2000 +July 14, 2000 diff --git a/README b/README index b5efe433a..bff2733df 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -README for libpng 1.0.8beta3 - July 11, 2000 (shared library 2.1) +README for libpng 1.0.8beta4 - July 14, 2000 (shared library 2.1) See the note about version numbers near the top of png.h See INSTALL for instructions on how to install libpng. @@ -148,7 +148,8 @@ Files in this distribution: pngerror.c => Error/warning message I/O functions pngget.c => Functions for retrieving info from struct pngmem.c => Memory handling functions - pngnow.png => PNG logo + pngbar.png => PNG logo, 88x31 + pngnow.png => PNG logo, 98x31 pngpread.c => Progressive reading functions pngread.c => Read data/helper high-level functions pngrio.c => Lowest-level data read I/O functions @@ -176,9 +177,9 @@ Files in this distribution: descrip.mms => VMS makefile for MMS or MMK makefile.std => Generic UNIX makefile (cc, creates static libpng.a) makefile.linux => Linux/ELF makefile - (gcc, creates libpng.so.2.1.0.8beta3) + (gcc, creates libpng.so.2.1.0.8beta4) makefile.gcmmx => Linux/ELF makefile (gcc, creates - libpng.so.2.1.0.8beta3, uses assembler code + libpng.so.2.1.0.8beta4, uses assembler code tuned for Intel MMX platform) makefile.gcc => Generic makefile (gcc, creates static libpng.a) makefile.knr => Archaic UNIX Makefile that converts files with @@ -190,10 +191,10 @@ Files in this distribution: makefile.intel => Intel C/C++ version 4.0 and later libpng.icc => Project file, IBM VisualAge/C++ 4.0 or later makefile.sgi => Silicon Graphics IRIX (cc, creates static lib) - makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.2.1.0.8beta3) + makefile.sggcc => Silicon Graphics (gcc, creates libpng.so.2.1.0.8beta4) makefile.sunos => Sun makefile makefile.solaris => Solaris 2.X makefile - (gcc, creates libpng.so.2.1.0.8beta3) + (gcc, creates libpng.so.2.1.0.8beta4) makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc makefile.mips => MIPS makefile makefile.acorn => Acorn makefile diff --git a/Y2KINFO b/Y2KINFO index caa4c1d5c..c301bcbd2 100644 --- a/Y2KINFO +++ b/Y2KINFO @@ -1,13 +1,13 @@ Y2K compliance in libpng: ========================= - July 11, 2000 + July 14, 2000 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and - upward through 1.0.8beta3 are Y2K compliant. It is my belief that earlier + upward through 1.0.8beta4 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has three year fields. One is a 2-byte unsigned integer diff --git a/configure b/configure index e18041a34..d5720bfd6 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ echo " - There is no \"configure\" script for Libpng-1.0.8beta3. Instead, please + There is no \"configure\" script for Libpng-1.0.8beta4. Instead, please copy the appropriate makefile for your system from the \"scripts\" directory. Read the INSTALL file for more details. " diff --git a/libpng.3 b/libpng.3 index 2e55112f2..aef211000 100644 --- a/libpng.3 +++ b/libpng.3 @@ -1,6 +1,6 @@ -.TH LIBPNG 3 "July 11, 2000" +.TH LIBPNG 3 "July 14, 2000" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.0.8beta3 +libpng \- Portable Network Graphics (PNG) Reference Library 1.0.8beta4 .SH SYNOPSIS \fI\fB @@ -747,7 +747,7 @@ Following is a copy of the libpng.txt file that accompanies libpng. .SH LIBPNG.TXT libpng.txt - A description on how to use and modify libpng - libpng version 1.0.8beta3 - July 11, 2000 + libpng version 1.0.8beta4 - July 14, 2000 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson @@ -3381,13 +3381,13 @@ application: .SH VII. Y2K Compliance in libpng -July 11, 2000 +July 14, 2000 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and -upward through 1.0.8beta3 are Y2K compliant. It is my belief that earlier +upward through 1.0.8beta4 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 @@ -3528,7 +3528,7 @@ possible without all of you. Thanks to Frank J. T. Wojcik for helping with the documentation. -Libpng version 1.0.8beta3 - July 11, 2000: +Libpng version 1.0.8beta4 - July 14, 2000: Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Currently maintained by Glenn Randers-Pehrson (randeg@alum.rpi.edu). @@ -3541,7 +3541,7 @@ Supported by the PNG development group If you modify libpng you may insert additional notices immediately following this sentence. -libpng version 1.0.8beta3, July 11, 2000 is +libpng version 1.0.8beta4, July 14, 2000 is Copyright (c) 2000 Glenn Randers-Pehrson Distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors @@ -3625,14 +3625,14 @@ boxes and the like: printf("%s",png_get_copyright(NULL)); Also, the PNG logo (in PNG format, of course) is supplied in the -file "pngnow.png". +files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). Libpng is OSI Certified Open Source Software. OSI Certified Open Source is a certification mark of the Open Source Initiative. Glenn Randers-Pehrson randeg@alum.rpi.edu -July 11, 2000 +July 14, 2000 .\" end of man page diff --git a/libpng.txt b/libpng.txt index 088abc071..14306feb3 100644 --- a/libpng.txt +++ b/libpng.txt @@ -1,6 +1,6 @@ libpng.txt - A description on how to use and modify libpng - libpng version 1.0.8beta3 - July 11, 2000 + libpng version 1.0.8beta4 - July 14, 2000 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson @@ -2634,13 +2634,13 @@ application: VII. Y2K Compliance in libpng -July 11, 2000 +July 14, 2000 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and -upward through 1.0.8beta3 are Y2K compliant. It is my belief that earlier +upward through 1.0.8beta4 are Y2K compliant. It is my belief that earlier versions were also Y2K compliant. Libpng only has three year fields. One is a 2-byte unsigned integer that diff --git a/libpngpf.3 b/libpngpf.3 index db5a55658..a5479d67e 100644 --- a/libpngpf.3 +++ b/libpngpf.3 @@ -1,6 +1,6 @@ -.TH LIBPNGPF 3 "July 11, 2000" +.TH LIBPNGPF 3 "July 14, 2000" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.0.8beta3 +libpng \- Portable Network Graphics (PNG) Reference Library 1.0.8beta4 (private functions) .SH SYNOPSIS \fB#include \fP diff --git a/msvc/README.txt b/msvc/README.txt index eb258de49..19f8db613 100644 --- a/msvc/README.txt +++ b/msvc/README.txt @@ -1,5 +1,5 @@ Microsoft Developer Studio Build File, Format Version 6.00 for -libpng 1.0.8beta3 (July 11, 2000) and zlib +libpng 1.0.8beta4 (July 14, 2000) and zlib Copyright (C) 2000 Simon-Pierre Cadieux For conditions of distribution and use, see copyright notice in png.h diff --git a/msvc/png32ms.def b/msvc/png32ms.def index 79765c2c6..5685ec468 100644 --- a/msvc/png32ms.def +++ b/msvc/png32ms.def @@ -6,7 +6,7 @@ LIBRARY DESCRIPTION "PNG image compression library for Windows" EXPORTS -;Version 1.0.8beta3 +;Version 1.0.8beta4 png_build_grayscale_palette @1 png_check_sig @2 png_chunk_error @3 diff --git a/png.5 b/png.5 index d039a1f4d..1e8d31662 100644 --- a/png.5 +++ b/png.5 @@ -1,4 +1,4 @@ -.TH PNG 5 "July 11, 2000" +.TH PNG 5 "July 14, 2000" .SH NAME png \- Portable Network Graphics (PNG) format .SH DESCRIPTION diff --git a/png.c b/png.c index aea0f98ea..1d28fa3bc 100644 --- a/png.c +++ b/png.c @@ -1,7 +1,7 @@ /* png.c - location for general purpose libpng functions * - * libpng version 1.0.8beta3 - July 11, 2000 + * libpng version 1.0.8beta4 - July 14, 2000 * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -13,14 +13,14 @@ #include "png.h" /* Generate a compiler error if there is an old png.h in the search path. */ -typedef version_1_0_8beta3 Your_png_h_is_not_version_1_0_8beta3; +typedef version_1_0_8beta4 Your_png_h_is_not_version_1_0_8beta4; /* Version information for C files. This had better match the version * string defined in png.h. */ #ifdef PNG_USE_GLOBAL_ARRAYS /* png_libpng_ver was changed to a function in version 1.0.5c */ -char png_libpng_ver[12] = "1.0.8beta3"; +char png_libpng_ver[12] = "1.0.8beta4"; /* png_sig was changed to a function in version 1.0.5c */ /* Place to hold the signature string for a PNG file. */ @@ -140,6 +140,7 @@ png_zalloc(voidpf png_ptr, uInt items, uInt size) png_uint_32 num_bytes = (png_uint_32)items * size; png_voidp ptr = (png_voidp)png_malloc((png_structp)png_ptr, num_bytes); +#ifndef PNG_NO_ZALLOC_ZERO if (num_bytes > (png_uint_32)0x8000L) { png_memset(ptr, 0, (png_size_t)0x8000L); @@ -150,6 +151,7 @@ png_zalloc(voidpf png_ptr, uInt items, uInt size) { png_memset(ptr, 0, (png_size_t)num_bytes); } +#endif return ((voidpf)ptr); } @@ -616,7 +618,7 @@ png_charp PNGAPI png_get_copyright(png_structp png_ptr) { if (png_ptr != NULL || png_ptr == NULL) /* silence compiler warning */ - return ("\n libpng version 1.0.8beta3 - July 11, 2000\n\ + return ("\n libpng version 1.0.8beta4 - July 14, 2000\n\ Copyright (c) 1998-2000 Glenn Randers-Pehrson\n\ Copyright (c) 1996, 1997 Andreas Dilger\n\ Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.\n"); @@ -634,8 +636,8 @@ png_get_libpng_ver(png_structp png_ptr) { /* Version of *.c files used when building libpng */ if(png_ptr != NULL) /* silence compiler warning about unused png_ptr */ - return("1.0.8beta3"); - return("1.0.8beta3"); + return("1.0.8beta4"); + return("1.0.8beta4"); } png_charp PNGAPI diff --git a/png.h b/png.h index 442125bcd..38e017be1 100644 --- a/png.h +++ b/png.h @@ -1,7 +1,7 @@ /* png.h - header file for PNG reference library * - * libpng version 1.0.8beta3 - July 11, 2000 + * libpng version 1.0.8beta4 - July 14, 2000 * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -9,7 +9,7 @@ * Authors and maintainers: * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat * libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger - * libpng versions 0.97, January 1998, through 1.0.8beta3 - July 11, 2000: Glenn + * libpng versions 0.97, January 1998, through 1.0.8beta4 - July 14, 2000: Glenn * See also "Contributing Authors", below. * * Note about libpng version numbers: @@ -82,7 +82,7 @@ * If you modify libpng you may insert additional notices immediately following * this sentence. * - * libpng version 1.0.8beta3, July 11, 2000, is + * libpng version 1.0.8beta4, July 14, 2000, is * Copyright (c) 2000 Glenn Randers-Pehrson * Distributed according to the same disclaimer and license as libpng-1.0.6 * with the following individuals added to the list of Contributing Authors @@ -167,7 +167,7 @@ * printf("%s",png_get_copyright(NULL)); * * Also, the PNG logo (in PNG format, of course) is supplied in the - * file "pngnow.png". + * files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). */ /* @@ -187,13 +187,13 @@ * Y2K compliance in libpng: * ========================= * - * July 11, 2000 + * July 14, 2000 * * Since the PNG Development group is an ad-hoc body, we can't make * an official declaration. * * This is your unofficial assurance that libpng from version 0.71 and - * upward through 1.0.8beta3 are Y2K compliant. It is my belief that earlier + * upward through 1.0.8beta4 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 @@ -249,7 +249,7 @@ */ /* Version information for png.h - this should match the version in png.c */ -#define PNG_LIBPNG_VER_STRING "1.0.8beta3" +#define PNG_LIBPNG_VER_STRING "1.0.8beta4" #define PNG_LIBPNG_VER_SONUM 2 @@ -259,7 +259,7 @@ #define PNG_LIBPNG_VER_RELEASE 8 /* This should match the numeric part of the final component of * PNG_LIBPNG_VER_STRING, omitting any leading zero: */ -#define PNG_LIBPNG_VER_BUILD 3 +#define PNG_LIBPNG_VER_BUILD 4 /* Careful here. At one time, Guy wanted to use 082, but that would be octal. * We must not include leading zeros. @@ -1147,9 +1147,9 @@ struct png_struct_def }; /* This prevents a compiler error in png_get_copyright() in png.c if png.c -and png.h are both at * version 1.0.8beta3 +and png.h are both at * version 1.0.8beta4 */ -typedef png_structp version_1_0_8beta3; +typedef png_structp version_1_0_8beta4; typedef png_struct FAR * FAR * png_structpp; @@ -2171,7 +2171,7 @@ extern PNG_EXPORT(png_charp,png_get_header_version) PNGARG((png_structp png_ptr) extern PNG_EXPORT(png_charp,png_get_libpng_ver) PNGARG((png_structp png_ptr)); #define PNG_HEADER_VERSION_STRING \ - " libpng version 1.0.8beta3 - July 11, 2000 (header)\n" + " libpng version 1.0.8beta4 - July 14, 2000 (header)\n" #ifdef PNG_READ_COMPOSITE_NODIV_SUPPORTED /* With these routines we avoid an integer divide, which will be slower on diff --git a/pngasmrd.h b/pngasmrd.h index 9c8d13c59..6eda7b10d 100644 --- a/pngasmrd.h +++ b/pngasmrd.h @@ -1,6 +1,6 @@ /* pngasmrd.h - assembler version of utilities to read a PNG file * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1999, 2000 Glenn Randers-Pehrson * diff --git a/pngbar.jpg b/pngbar.jpg new file mode 100644 index 0000000000000000000000000000000000000000..70ba8d817ce433788c7933dbe3c29c3e384b2b0a GIT binary patch literal 2498 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 RQSJZ$002ovPDHLkV1iCKFfIT9 literal 0 HcmV?d00001 diff --git a/pngconf.h b/pngconf.h index 6dbd5430b..22866efaf 100644 --- a/pngconf.h +++ b/pngconf.h @@ -1,6 +1,6 @@ /* pngconf.h - machine configurable file for libpng * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -49,6 +49,60 @@ #define PNG_MAX_MALLOC_64K #endif +/* Special munging to support doing things the 'cygwin' way: + * 'Normal' png-on-win32 defines/defaults: + * PNG_BUILD_DLL -- building dll + * PNG_USE_DLL -- building an application, linking to dll + * (no define) -- building static library, or building an + * application and linking to the static lib + * 'Cygwin' defines/defaults: + * PNG_BUILD_DLL -- building the dll + * (no define) -- building an application, linking to the dll + * PNG_STATIC -- building the static lib, or building an application + * which links to the static lib. + * Thus, + * a cygwin user should define either PNG_BUILD_DLL or PNG_STATIC, and + * this bit of #ifdefs will define the 'correct' config variables based on + * that. If a cygwin user *wants* to define 'PNG_USE_DLL' that's okay, but + * unnecessary. + */ +#if defined(__CYGWIN__) +# if defined(PNG_BUILD_DLL) +# if defined(PNG_USE_DLL) +# undef PNG_USE_DLL +# endif +# if !defined(PNG_DLL) +# define PNG_DLL +# endif +# if defined(PNG_STATIC) +# undef PNG_STATIC +# endif +# else +# if defined(PNG_STATIC) +# if defined(PNG_USE_DLL) +# undef PNG_USE_DLL +# endif +# if defined(PNG_DLL) +# undef PNG_DLL +# endif +# else +# if defined(PNG_USE_DLL) +# if !defined(PNG_DLL) +# define PNG_DLL +# endif +# else +# if defined(PNG_DLL) +# define PNG_USE_DLL +# else +# define PNG_USE_DLL +# define PNG_DLL +# endif +# endif +# endif +# endif +#endif + + /* This protects us against compilers that run on a windowing system * and thus don't have or would rather us not use the stdio types: * stdin, stdout, and stderr. The only one currently used is stderr @@ -534,6 +588,9 @@ defined(PNG_WRITE_USER_TRANSFORM_SUPPORTED) #ifndef PNG_NO_USER_MEM #define PNG_USER_MEM_SUPPORTED #endif +#ifndef PNG_NO_ZALLOC_ZERO +#define PNG_ZALLOC_ZERO +#endif */ /* This is only for PowerPC big-endian and 680x0 systems */ @@ -854,7 +911,7 @@ typedef size_t png_size_t; #define LDATA 0 #endif -#if !defined(__WIN32__) && !defined(__FLAT__) +#if !defined(__WIN32__) && !defined(__FLAT__) && !defined(__CYGWIN__) #define PNG_MAX_MALLOC_64K #if (LDATA != 1) #ifndef FAR @@ -868,7 +925,7 @@ typedef size_t png_size_t; * const if your compiler supports it. (SJT) # define FARDATA FAR */ -#endif /* __WIN32__, __FLAT__ */ +#endif /* __WIN32__, __FLAT__, __CYGWIN__ */ #endif /* __BORLANDC__ */ @@ -952,12 +1009,43 @@ typedef z_stream FAR * png_zstreamp; * It is equivalent to Microsoft predefined macro _DLL which is * automatically defined when you compile using the share * version of the CRT (C Run-Time library) + * + * The cygwin mods make this behavior a little different: + * Define PNG_BUILD_DLL if you are building a dll for use with cygwin + * Define PNG_STATIC if you are building a static library for use with cygwin, + * -or- if you are building an application that you want to link to the + * static library. + * PNG_USE_DLL is defined by default (no user action needed) unless one of + * the other flags is defined. */ #if !defined(PNG_DLL) && (defined(PNG_BUILD_DLL) || defined(PNG_USE_DLL)) # define PNG_DLL #endif - +/* If CYGWIN, then disallow GLOBAL ARRAYS unless building a static lib. + * When building a static lib, default to no GLOBAL ARRAYS, but allow + * command-line override + */ +#if defined(__CYGWIN__) +# if !defined(PNG_STATIC) +# if defined(PNG_USE_GLOBAL_ARRAYS) +# undef PNG_USE_GLOBAL_ARRAYS +# endif +# if !defined(PNG_USE_LOCAL_ARRAYS) +# define PNG_USE_LOCAL_ARRAYS +# endif +# else +# if defined(PNG_USE_LOCAL_ARRAYS) || defined(PNG_NO_GLOBAL_ARRAYS) +# if defined(PNG_USE_GLOBAL_ARRAYS) +# undef PNG_USE_GLOBAL_ARRAYS +# endif +# endif +# endif +# if !defined(PNG_USE_LOCAL_ARRAYS) && !defined(PNG_USE_GLOBAL_ARRAYS) +# define PNG_USE_LOCAL_ARRAYS +# endif +#endif + /* Do not use global arrays (helps with building DLL's) * They are no longer used in libpng itself, since version 1.0.5c, * but might be required for some pre-1.0.5c applications. @@ -972,19 +1060,21 @@ typedef z_stream FAR * png_zstreamp; #ifndef PNGAPI -#if defined(__MINGW32__) || defined(__CYGWIN32__) && !defined(PNG_MODULEDEF) + +#if defined(__MINGW32__) || defined(__CYGWIN__) && !defined(PNG_MODULEDEF) # ifndef PNG_NO_MODULEDEF # define PNG_NO_MODULEDEF # endif -#endif - +#endif + #if !defined(PNG_IMPEXP) && defined(PNG_BUILD_DLL) && !defined(PNG_NO_MODULEDEF) # define PNG_IMPEXP #endif #if defined(PNG_DLL) || defined(_DLL) || defined(__DLL__ ) || \ - defined(_Windows) || defined(_WINDOWS) || \ - defined(WIN32) || defined(_WIN32) || defined(__WIN32__) + (( defined(_Windows) || defined(_WINDOWS) || \ + defined(WIN32) || defined(_WIN32) || defined(__WIN32__) \ + ) && !defined(__CYGWIN__)) # ifdef __GNUC__ # define PNGAPI __cdecl @@ -1026,11 +1116,18 @@ typedef z_stream FAR * png_zstreamp; # endif # endif # endif /* PNG_IMPEXP */ -#else /* !(DLL || WINDOWS) */ -# if 0 /* ... other platforms, with other meanings */ +#else /* !(DLL || non-cygwin WINDOWS) */ +# if defined(__CYGWIN__) && !defined(PNG_DLL) +# if !defined(PNG_IMPEXP) +# define PNG_IMPEXP +# endif +# define PNGAPI __cdecl # else -# define PNGAPI -# define PNG_IMPEXP +# if 0 /* ... other platforms, with other meanings */ +# else +# define PNGAPI +# define PNG_IMPEXP +# endif # endif #endif #endif diff --git a/pngerror.c b/pngerror.c index 5dd1c317d..29c80c70f 100644 --- a/pngerror.c +++ b/pngerror.c @@ -1,7 +1,7 @@ /* pngerror.c - stub functions for i/o and memory allocation * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pnggccrd.c b/pnggccrd.c index 32efb51e2..7402ca58a 100644 --- a/pnggccrd.c +++ b/pnggccrd.c @@ -6,7 +6,7 @@ * and http://www.intel.com/drg/pentiumII/appnotes/923/923.htm * for Intel's performance analysis of the MMX vs. non-MMX code. * - * libpng version 1.0.8beta3 - July 11, 2000 + * libpng version 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * Copyright (c) 1998, Intel Corporation @@ -166,9 +166,9 @@ static const int png_pass_inc[7] = {8, 8, 4, 4, 2, 2, 1}; static const int png_pass_width[7] = {8, 4, 4, 2, 2, 1, 1}; #endif -// djgpp and Win32 add their own underscores to global variables, +// djgpp, Win32, and Cygwin add their own underscores to global variables, // so define them without: -#if defined(__DJGPP__) || defined(WIN32) +#if defined(__DJGPP__) || defined(WIN32) || defined(__CYGWIN__) # define _unmask unmask # define _const4 const4 # define _const6 const6 diff --git a/pngget.c b/pngget.c index b5df47b1c..e6375bfb4 100644 --- a/pngget.c +++ b/pngget.c @@ -1,7 +1,7 @@ /* pngget.c - retrieval of values from info struct * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngmem.c b/pngmem.c index 2b2bd524c..9a5ab2673 100644 --- a/pngmem.c +++ b/pngmem.c @@ -1,7 +1,7 @@ /* pngmem.c - stub functions for memory allocation * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngpread.c b/pngpread.c index 32dbca1f0..13fd4134f 100644 --- a/pngpread.c +++ b/pngpread.c @@ -1,7 +1,7 @@ /* pngpread.c - read a png file in push mode * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngread.c b/pngread.c index 1c4e33c48..fea208c0b 100644 --- a/pngread.c +++ b/pngread.c @@ -1,7 +1,7 @@ /* pngread.c - read a PNG file * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -697,7 +697,7 @@ png_read_row(png_structp png_ptr, png_bytep row, png_bytep dsp_row) * not called png_set_interlace_handling(), the display_row buffer will * be ignored, so pass NULL to it. * - * [*] png_handle_alpha() does not exist yet, as of libpng version 1.0.8beta3 + * [*] png_handle_alpha() does not exist yet, as of libpng version 1.0.8beta4 */ void PNGAPI @@ -746,7 +746,7 @@ png_read_rows(png_structp png_ptr, png_bytepp row, * only call this function once. If you desire to have an image for * each pass of a interlaced image, use png_read_rows() instead. * - * [*] png_handle_alpha() does not exist yet, as of libpng version 1.0.8beta3 + * [*] png_handle_alpha() does not exist yet, as of libpng version 1.0.8beta4 */ void PNGAPI png_read_image(png_structp png_ptr, png_bytepp image) diff --git a/pngrio.c b/pngrio.c index 7dbee1086..82c0c4588 100644 --- a/pngrio.c +++ b/pngrio.c @@ -1,7 +1,7 @@ /* pngrio.c - functions for data input * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngrtran.c b/pngrtran.c index 52b73aa9b..3e53fa891 100644 --- a/pngrtran.c +++ b/pngrtran.c @@ -1,7 +1,7 @@ /* pngrtran.c - transforms the data in a row for PNG readers * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngrutil.c b/pngrutil.c index 6551124e2..45e175579 100644 --- a/pngrutil.c +++ b/pngrutil.c @@ -1,7 +1,7 @@ /* pngrutil.c - utilities to read a PNG file * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngset.c b/pngset.c index fc236ebc5..72d5227aa 100644 --- a/pngset.c +++ b/pngset.c @@ -1,7 +1,7 @@ /* pngset.c - storage of image information into info struct * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngtest.c b/pngtest.c index aa235db3b..269409402 100644 --- a/pngtest.c +++ b/pngtest.c @@ -1,7 +1,7 @@ /* pngtest.c - a simple test program to test libpng * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -1435,4 +1435,4 @@ main(int argc, char *argv[]) } /* Generate a compiler error if there is an old png.h in the search path. */ -typedef version_1_0_8beta3 your_png_h_is_not_version_1_0_8beta3; +typedef version_1_0_8beta4 your_png_h_is_not_version_1_0_8beta4; diff --git a/pngtrans.c b/pngtrans.c index ae9083221..fe7c49f65 100644 --- a/pngtrans.c +++ b/pngtrans.c @@ -1,7 +1,7 @@ /* pngtrans.c - transforms the data in a row (used by both readers and writers) * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngvcrd.c b/pngvcrd.c index 639c37841..e6d533935 100644 --- a/pngvcrd.c +++ b/pngvcrd.c @@ -2,7 +2,7 @@ * * For Intel x86 CPU and Microsoft Visual C++ compiler * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * Copyright (c) 1998, Intel Corporation diff --git a/pngwio.c b/pngwio.c index 22f8bd4e9..3d5bc522b 100644 --- a/pngwio.c +++ b/pngwio.c @@ -1,7 +1,7 @@ /* pngwio.c - functions for data output * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwrite.c b/pngwrite.c index dc1246e37..97d0ff9a3 100644 --- a/pngwrite.c +++ b/pngwrite.c @@ -1,7 +1,7 @@ /* pngwrite.c - general routines to write a PNG file * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwtran.c b/pngwtran.c index 674c0adf7..c0efa9e26 100644 --- a/pngwtran.c +++ b/pngwtran.c @@ -1,7 +1,7 @@ /* pngwtran.c - transforms the data in a row for PNG writers * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwutil.c b/pngwutil.c index 1640a2d09..b41cc092a 100644 --- a/pngwutil.c +++ b/pngwutil.c @@ -1,7 +1,7 @@ /* pngwutil.c - utilities to write a PNG file * - * libpng 1.0.8beta3 - July 11, 2000 + * libpng 1.0.8beta4 - July 14, 2000 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998, 1999, 2000 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/scripts/makefile.beos b/scripts/makefile.beos index 3163354e9..46d462373 100644 --- a/scripts/makefile.beos +++ b/scripts/makefile.beos @@ -31,7 +31,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 2. You should not # have to change it. PNGMAJ = 2 -PNGMIN = 1.0.8beta3 +PNGMIN = 1.0.8beta4 PNGVER = $(PNGMAJ).$(PNGMIN) # where make install puts libpng.a, libpng.so*, and png.h diff --git a/scripts/makefile.cygwin b/scripts/makefile.cygwin new file mode 100644 index 000000000..463a6f77a --- /dev/null +++ b/scripts/makefile.cygwin @@ -0,0 +1,165 @@ +# makefile for cygwin on x86 +# builds both dll (with import lib) and static lib versions +# of the library, and builds two copies of pngtest: one +# statically linked and one dynamically linked. +# +# based on makefile for linux-elf w/mmx by: +# Copyright (C) 1998-2000 Greg Roelofs +# Copyright (C) 1996, 1997 Andreas Dilger +# For conditions of distribution and use, see copyright notice in png.h + +# To enable assembler optimizations, add '-DPNG_USE_PNGGCCRD' to +# $CFLAGS, and include pnggccrd.o in $OBJS, below. + +CC=gcc + +# where "make install" puts libpng.a, libpng.so*, png.h and pngconf.h +prefix=/usr + +# Where the zlib library and include files are located +ZLIBLIB=${prefix}/lib +ZLIBINC=${prefix}/include +#ZLIBLIB=../zlib +#ZLIBINC=../zlib + +SHAREDLIB=libpng.dll +STATLIB=libpng.a +IMPLIB=libpng.dll.a +SHAREDDEF=libpng.def +LIBS=$(SHAREDLIB) $(STATLIB) +EXE=.exe + +ALIGN= +# for i386: +#ALIGN=-malign-loops=2 -malign-functions=2 + +WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \ + -Wmissing-declarations -Wtraditional -Wcast-align \ + -Wstrict-prototypes -Wmissing-prototypes #-Wconversion + +#CFLAGS=-DPNG_USE_PNGGCCRD -I$(ZLIBINC) -Wall -O3 $(ALIGN) -funroll-loops \ +# -fomit-frame-pointer # $(WARNMORE) -g -DPNG_DEBUG=5 +CFLAGS=-I$(ZLIBINC) -Wall -O3 $(ALIGN) -funroll-loops \ + -fomit-frame-pointer + +LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz +LDSHARED=gcc -shared -Wl,--enable-auto-image-base +LDEXTRA=-Wl,--out-implib=$(IMPLIB) $(SHAREDDEF) + +RANLIB=ranlib +#RANLIB=echo + +# read libpng.txt or png.h to see why PNGMAJ is 2. You should not +# have to change it. +PNGMAJ = 2 +PNGMIN = 1.0.8beta3 +PNGVER = $(PNGMAJ).$(PNGMIN) + +INCPATH=$(prefix)/include +LIBPATH=$(prefix)/lib +BINPATH=$(prefix)/bin +MANPATH=$(prefix)/man +MAN3PATH=$(MANPATH)/man3 +DOCPATH=$(prefix)/doc/libpng-$(PNGMIN) +CYGDOCPATH=$(prefix)/doc/Cygwin + +OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \ + pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \ + pngwtran.o pngmem.o pngerror.o pngpread.o # pnggccrd.o + +OBJSDLL = $(OBJS:.o=.pic.o) + +.SUFFIXES: .c .o .pic.o + +%.o : %.c + $(CC) -c $(CFLAGS) -DPNG_STATIC -DZLIB_STATIC -o $@ $< + +%.pic.o : %.c + $(CC) -c $(CFLAGS) -DPNG_BUILD_DLL -o $@ $< + +all: $(SHAREDLIB) $(STATLIB) pngtest$(EXE) pngtest-stat$(EXE) + +pnggccrd.o: png.h pngconf.h pngasmrd.h + @echo "" + @echo ' You can ignore the single "control reaches end of non-void function"' + @echo ' warning and multiple " defined but not used" warnings:' + @echo "" + $(CC) -c $(CFLAGS) -DPNG_STATIC -DZLIB_STATIC -o $@ $*.c + +pnggccrd.pic.o: png.h pngconf.h pngasmrd.h + @echo "" + @echo ' You can ignore the single "control reaches end of non-void function"' + @echo ' warning and multiple " defined but not used" warnings:' + @echo "" + $(CC) -c $(CFLAGS) -o $@ pnggccrd.c + +$(STATLIB): $(OBJS) + ar rc $@ $(OBJS) + $(RANLIB) $@ + +$(SHAREDDEF): msvc/png32ms.def + cat $< | sed -e '1{G;s/^\(.*\)\(\n\)/EXPORTS/;};2,/^EXPORTS/d' > $@ + +$(SHAREDLIB): $(OBJSDLL) $(SHAREDDEF) + $(LDSHARED) -o $@ $(LDEXTRA) $(OBJSDLL) -L. -L$(ZLIBLIB) -lz + +pngtest$(EXE): pngtest.pic.o $(SHAREDLIB) + $(CC) $(CFLAGS) $< $(LDFLAGS) -o $@ + +pngtest-stat$(EXE): pngtest.o $(STATLIB) + $(CC) -static $(CFLAGS) $< $(LDFLAGS) -o $@ + +pngtest.pic.o: pngtest.c + $(CC) $(CFLAGS) -c $< -o $@ + +pngtest.o: pngtest.c + $(CC) $(CFLAGS) -DPNG_STATIC -DZLIB_STATIC -c $< -o $@ + +test: test-dll test-stat + +test-stat: pngtest-stat$(EXE) + ./pngtest-stat + +test-dll: pngtest$(EXE) + ./pngtest + +install: $(STATLIB) $(SHAREDLIB) + -@if [ ! -d $(INCPATH) ]; then mkdir -p $(INCPATH); fi + -@if [ ! -d $(LIBPATH) ]; then mkdir -p $(LIBPATH); fi + -@if [ ! -d $(BINPATH) ]; then mkdir -p $(BINPATH); fi + -@if [ ! -d $(MAN3PATH) ]; then mkdir -p $(MAN3PATH); fi + -@if [ ! -d $(DOCPATH) ]; then mkdir -p $(DOCPATH); fi + install -m 644 png.h pngconf.h $(INCPATH) + install -m 755 $(STATLIB) $(IMPLIB) $(LIBPATH) + install -s -m 755 $(SHAREDLIB) $(BINPATH) + install -m 644 $(DOCS) $(DOCPATH) + install -m 644 libpngpf.3 libpng.3 $(MAN3PATH) + +clean: + /bin/rm -f *.pic.o *.o $(STATLIB) $(IMPLIB) $(SHAREDLIB) \ + pngtest-stat$(EXE) pngtest$(EXE) pngout.png $(SHAREDDEF) + +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +writelock: + chmod a-w *.[ch35] $(DOCS) scripts/* + +# DO NOT DELETE THIS LINE -- make depend depends on it. + +png.o png.pic.o: png.h pngconf.h png.c pngasmrd.h +pngerror.o pngerror.pic.o: png.h pngconf.h pngerror.c +pngrio.o pngrio.pic.o: png.h pngconf.h pngrio.c +pngwio.o pngwio.pic.o: png.h pngconf.h pngwio.c +pngmem.o pngmem.pic.o: png.h pngconf.h pngmem.c +pngset.o pngset.pic.o: png.h pngconf.h pngset.c +pngget.o pngget.pic.o: png.h pngconf.h pngget.c +pngread.o pngread.pic.o: png.h pngconf.h pngread.c +pngrtran.o pngrtran.pic.o: png.h pngconf.h pngrtran.c +pngrutil.o pngrutil.pic.o: png.h pngconf.h pngrutil.c pngasmrd.h +pngtrans.o pngtrans.pic.o: png.h pngconf.h pngtrans.c +pngwrite.o pngwrite.pic.o: png.h pngconf.h pngwrite.c +pngwtran.o pngwtran.pic.o: png.h pngconf.h pngwtran.c +pngwutil.o pngwutil.pic.o: png.h pngconf.h pngwutil.c +pngpread.o pngpread.pic.o: png.h pngconf.h pngpread.c + +pngtest.o: png.h pngconf.h pngtest.c +pngtest-stat.o: png.h pngconf.h pngtest.c diff --git a/scripts/makefile.dec b/scripts/makefile.dec index 20d4876fc..4d075188a 100644 --- a/scripts/makefile.dec +++ b/scripts/makefile.dec @@ -14,7 +14,7 @@ ZLIBINC=../zlib # read libpng.txt or png.h to see why PNGMAJ is 2. You should not # have to change it. PNGMAJ = 2 -PNGMIN = 1.0.8beta3 +PNGMIN = 1.0.8beta4 PNGVER = $(PNGMAJ).$(PNGMIN) CC=cc diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx index 3103fd843..87c8d9108 100644 --- a/scripts/makefile.gcmmx +++ b/scripts/makefile.gcmmx @@ -3,6 +3,8 @@ # Copyright 1998-2000 Greg Roelofs # For conditions of distribution and use, see copyright notice in png.h +# CAUTION: Do not use this makefile with gcc versions 2.7.2.2 and earlier. + CC=gcc # where "make install" puts libpng.a, libpng.so*, png.h and pngconf.h @@ -34,7 +36,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 2. You should not # have to change it. PNGMAJ = 2 -PNGMIN = 1.0.8beta3 +PNGMIN = 1.0.8beta4 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.linux b/scripts/makefile.linux index 74f0163c9..ca7a4653a 100644 --- a/scripts/makefile.linux +++ b/scripts/makefile.linux @@ -34,7 +34,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 2. You should not # have to change it. PNGMAJ = 2 -PNGMIN = 1.0.8beta3 +PNGMIN = 1.0.8beta4 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.sco b/scripts/makefile.sco index d58f83225..ec4b18adb 100644 --- a/scripts/makefile.sco +++ b/scripts/makefile.sco @@ -25,7 +25,7 @@ RANLIB=echo # read libpng.txt or png.h to see why PNGMAJ is 2. You should not # have to change it. PNGMAJ = 2 -PNGMIN = 1.0.8beta3 +PNGMIN = 1.0.8beta4 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.sggcc b/scripts/makefile.sggcc index cdc200f53..6935884f0 100644 --- a/scripts/makefile.sggcc +++ b/scripts/makefile.sggcc @@ -19,8 +19,8 @@ CFLAGS=-I$(ZLIBINC) -O2 $(WARNMORE) -fPIC -mabi=n32 # -g -DPNG_DEBUG=5 LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz -lm LDSHARED=gcc -shared -VER=1.0.8beta3 -LIBS=libpng.so.1.0.8beta3 +VER=1.0.8beta4 +LIBS=libpng.so.1.0.8beta4 SHAREDLIB=libpng.so libdir=$(prefix)/lib32 diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris index 613c72d5b..7f47da332 100644 --- a/scripts/makefile.solaris +++ b/scripts/makefile.solaris @@ -31,7 +31,7 @@ RANLIB=echo # read libpng.txt or png.h to see why PNGMAJ is 2. You should not # have to change it. PNGMAJ = 2 -PNGMIN = 1.0.8beta3 +PNGMIN = 1.0.8beta4 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/pngdef.pas b/scripts/pngdef.pas index 557c80b30..ff073c1cf 100644 --- a/scripts/pngdef.pas +++ b/scripts/pngdef.pas @@ -5,7 +5,7 @@ unit pngdef; interface const - PNG_LIBPNG_VER_STRING = '1.0.8beta3'; + PNG_LIBPNG_VER_STRING = '1.0.8beta4'; PNG_LIBPNG_VER = 10008; type