diff --git a/ANNOUNCE b/ANNOUNCE index 7bf108b47..70f7a48c4 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,59 +1,49 @@ -Libpng 1.2.2rc1 - April 7, 2002 +Libpng 1.2.2 - April 15, 2002 -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. +This is a public release of libpng, intended for use in production codes. Changes since the last public release (1.2.1): -version 1.2.2beta1 [February 22, 2002] Fixed a bug with reading the length of iCCP profiles (Larry Reeves). Revised makefile.linux, makefile.gcmmx, and others to generate - libpng.a, libpngNN.so (not libpng.so.3), and libpngNN/png.h + libpng.a, libpngNN.so, libpng.so.NN, and libpngNN/png.h Revised makefile.darwin to remove "-undefined suppress" option. Added checks for gamma and chromaticity values over 21474.83, which exceed the limit for PNG unsigned 32-bit integers when encoded. Revised calls to png_create_read_struct() and png_create_write_struct() for simpler debugging. Revised png_zalloc() so zlib handles errors (uses PNG_FLAG_MALLOC_NULL_MEM_OK) -version 1.2.2beta2 [February 23, 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. + Added install-shared and install-static targets to all makefiles that make + shared libraries. Always do gamma compensation when image is partially transparent. -version 1.2.2beta3 [March 7, 2002] Modified shared-library makefiles to install pkgconfig/libpngNN.pc. Export (with PNGAPI) png_zalloc, png_zfree, and png_handle_as_unknown Removed unused png_write_destroy_info prototype from png.h Eliminated incorrect use of width_mmx from pnggccrd.c in pixel_bytes == 8 case - Added install-shared target to all makefiles that make shared libraries. Stopped a double free of palette, hist, and trans when not using free_me. Added makefile.32sunu for Sun Ultra 32 and makefile.64sunu for Sun Ultra 64. -version 1.2.2beta4 [March 8, 2002] Compute background.gray and background_1.gray even when color_type is RGB in case image gets reduced to gray later (Jason Summers). - Relocated a misplaced /bin/rm in the "install-shared" makefile targets Added PNG_1_0_X macro which can be used to build a 1.0.x-compatible library. -version 1.2.2beta5 [March 26, 2002] Added missing PNGAPI to several function definitions. Check for invalid bit_depth or color_type in png_get_IHDR(), and check for missing PLTE or IHDR in png_push_read_chunk() (Matthias Clasen). Revised iTXt support to accept NULL for lang and lang_key. Compute gamma for color components of background even when color_type is gray. - Changed "()" to "{}" in pkgconfig/libpngNN.pc. Revised makefiles to put png.h and pngconf.h only in $prefix/include/libpngNN Revised makefiles to make symlink to libpng.so.NN in addition to libpngNN.so -version 1.2.2beta6 [March 31, 2002] -version 1.0.13beta1 [March 31, 2002] Prevent png_zalloc() from trying to memset memory that it failed to acquire. Add typecasts of PNG_MAX_UINT in pngset_cHRM_fixed() (Matt Holgate). Ensure that the right function (user or default) is used to free the png_struct after an error in png_create_read_struct_2(). -version 1.2.2rc1 [April 7, 2002] Save the ebx register in pnggccrd.c (Sami Farin) Add "mem_ptr = png_ptr->mem_ptr" in png_destroy_write_struct() (Paul Gardner). Updated makefiles to put headers in include/libpng and remove old include/*.h. + Revised description of png_set_filter() in libpng.3/libpng.txt. + Revised makefile.netbsd and added makefile.neNNbsd and makefile.freebsd Send comments/corrections/commendations to png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu diff --git a/CHANGES b/CHANGES index aeddf8e7f..caeb37875 100644 --- a/CHANGES +++ b/CHANGES @@ -1061,9 +1061,13 @@ version 1.0.13beta1 [March 31, 2002] Ensure that the right function (user or default) is used to free the png_struct after an error in png_create_read_struct_2(). version 1.2.2rc1 [April 7, 2002] +version 1.0.13rc1 [April 7, 2002] Save the ebx register in pnggccrd.c (Sami Farin) Add "mem_ptr = png_ptr->mem_ptr" in png_destroy_write_struct() (Paul Gardner). Updated makefiles to put headers in include/libpng and remove old include/*.h. +version 1.2.2 [April 15, 2002] + Revised description of png_set_filter() in libpng.3/libpng.txt. + Revised makefile.netbsd and added makefile.neNNbsd and makefile.freebsd Send comments/corrections/commendations to png-implement@ccrc.wustl.edu or to randeg@alum.rpi.edu diff --git a/INSTALL b/INSTALL index 490f75455..788b22c27 100644 --- a/INSTALL +++ b/INSTALL @@ -1,5 +1,5 @@ -Installing libpng version 1.2.2rc1 - April 7, 2002 +Installing libpng version 1.2.2 - April 15, 2002 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.2.2rc1" or "lpng109" and "zlib-1.1.3" +might be called "libpng-1.2.2" or "lpng109" and "zlib-1.1.3" or "zlib113") so that you have directories called "zlib" and "libpng". Your directory structure should look like this: @@ -64,8 +64,8 @@ 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 libpng12.so.0.1.2.2rc1) - makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.2rc1, + makefile.linux => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.2) + makefile.gcmmx => Linux/ELF makefile (gcc, creates libpng12.so.0.1.2.2, 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 @@ -81,13 +81,14 @@ 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.macosx => MACOS X Makefile - makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD + makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD, makes libpng.so. + makefile.ne12bsd => NetBSD/cc makefile, uses PNGGCCRD, makes libpng0.so makefile.openbsd => OpenBSD makefile makefile.sgi => Silicon Graphics IRIX makefile (cc, creates static lib) - makefile.sggcc => Silicon Graphics (gcc, creates libpng12.so.0.1.2.2rc1) + makefile.sggcc => Silicon Graphics (gcc, creates libpng12.so.0.1.2.2) makefile.sunos => Sun makefile - makefile.solaris => Solaris 2.X makefile (gcc, creates libpng12.so.0.1.2.2rc1) - makefile.so9 => Solaris 9 makefile (gcc, creates libpng12.so.0.1.2.2rc1) + makefile.solaris => Solaris 2.X makefile (gcc, creates libpng12.so.0.1.2.2) + makefile.so9 => Solaris 9 makefile (gcc, creates libpng12.so.0.1.2.2) makefile.32sunu => Sun Ultra 32-bit makefile makefile.64sunu => Sun Ultra 64-bit makefile makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc diff --git a/KNOWNBUG b/KNOWNBUG index f50ee5bda..420012ad4 100644 --- a/KNOWNBUG +++ b/KNOWNBUG @@ -1,5 +1,5 @@ -Known bugs in libpng version 1.2.2rc1 +Known bugs in libpng version 1.2.2 1. April 22, 2001: pnggccrd.c has been reported to crash on NetBSD when reading interlaced PNG files, when assembler code is enabled. diff --git a/LICENSE b/LICENSE index a126321fa..7bdb0bed7 100644 --- a/LICENSE +++ b/LICENSE @@ -8,7 +8,7 @@ COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: If you modify libpng you may insert additional notices immediately following this sentence. -libpng versions 1.0.7, July 1, 2000, through 1.2.2rc1, April 7, 2002, are +libpng versions 1.0.7, July 1, 2000, through 1.2.2, April 15, 2002, are Copyright (c) 2000-2002 Glenn Randers-Pehrson and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors @@ -99,4 +99,4 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson randeg@alum.rpi.edu -April 7, 2002 +April 15, 2002 diff --git a/README b/README index 8372f3351..bf3236275 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -README for libpng 1.2.2rc1 - April 7, 2002 (shared library 2.1) +README for libpng 1.2.2 - April 15, 2002 (shared library 2.1) See the note about version numbers near the top of png.h See INSTALL for instructions on how to install libpng. @@ -187,9 +187,9 @@ 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 libpng12.so.0.1.2.2rc1) + (gcc, creates libpng12.so.0.1.2.2) makefile.gcmmx => Linux/ELF makefile (gcc, creates - libpng12.so.0.1.2.2rc1, uses assembler code + libpng12.so.0.1.2.2, 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 @@ -205,15 +205,16 @@ 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.macosx => MACOS X Makefile - makefile.netbsd => NetBSD/cc makefile, uses PNGGCCRD + makefile.netbsd => NetBSD/cc makefile, PNGGCCRD, makes libpng.so. + makefile.ne12bsd => NetBSD/cc makefile, PNGGCCRD, makes libpng0.so makefile.openbsd => OpenBSD makefile makefile.sgi => Silicon Graphics IRIX (cc, creates static lib) - makefile.sggcc => Silicon Graphics (gcc, creates libpng12.so.0.1.2.2rc1) + makefile.sggcc => Silicon Graphics (gcc, creates libpng12.so.0.1.2.2) makefile.sunos => Sun makefile makefile.solaris => Solaris 2.X makefile - (gcc, creates libpng12.so.0.1.2.2rc1) + (gcc, creates libpng12.so.0.1.2.2) makefile.so9 => Solaris 9 makefile - (gcc, creates libpng12.so.0.1.2.2rc1) + (gcc, creates libpng12.so.0.1.2.2) makefile.32sunu => Sun Ultra 32-bit makefile makefile.64sunu => Sun Ultra 64-bit makefile makefile.sco => For SCO OSr5 ELF and Unixware 7 with Native cc diff --git a/Y2KINFO b/Y2KINFO index d94844564..c222edac6 100644 --- a/Y2KINFO +++ b/Y2KINFO @@ -1,13 +1,13 @@ Y2K compliance in libpng: ========================= - April 7, 2002 + April 15, 2002 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and - upward through 1.2.2rc1 are Y2K compliant. It is my belief that earlier + upward through 1.2.2 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 af347ebc2..e56d9ad0d 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ echo " - There is no \"configure\" script for Libpng-1.2.2rc1. Instead, please + There is no \"configure\" script for Libpng-1.2.2. 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 aa77733f1..2f7546699 100644 --- a/libpng.3 +++ b/libpng.3 @@ -1,6 +1,6 @@ -.TH LIBPNG 3 "April 7, 2002" +.TH LIBPNG 3 "April 15, 2002" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.2.2rc1 +libpng \- Portable Network Graphics (PNG) Reference Library 1.2.2 .SH SYNOPSIS \fI\fB @@ -795,7 +795,7 @@ Following is a copy of the libpng.txt file that accompanies libpng. .SH LIBPNG.TXT libpng.txt - A description on how to use and modify libpng - libpng version 1.2.2rc1 - April 7, 2002 + libpng version 1.2.2 - April 15, 2002 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2002 Glenn Randers-Pehrson @@ -3280,6 +3280,10 @@ compression level by calling: Another useful one is to reduce the memory level used by the library. The memory level defaults to 8, but it can be lowered if you are short on memory (running DOS, for example, where you only have 640K). +Note that the memory level does have an effect on compression; among +other things, lower levels will result in sections of incompressible +data being emitted in smaller stored blocks, with a correspondingly +larger relative overhead of up to 15% in the worst case. png_set_compression_mem_level(png_ptr, level); @@ -3314,19 +3318,18 @@ to turn filtering on and off, respectively. Individual filter types are PNG_FILTER_NONE, PNG_FILTER_SUB, PNG_FILTER_UP, PNG_FILTER_AVG, PNG_FILTER_PAETH, which can be bitwise ORed together with '|' to specify one or more filters to use. -These filters are described in more detail in the PNG specification. If -you intend to change the filter type during the course of writing +These filters are described in more detail in the PNG specification. +If you intend to change the filter type during the course of writing the image, you should start with flags set for all of the filters you intend to use so that libpng can initialize its internal -structures appropriately for all of the filter types. +structures appropriately for all of the filter types. (Note that this +means the first row must always be adaptively filtered, because libpng +currently does not allocate the filter buffers until png_write_row() +is called for the first time.) filters = PNG_FILTER_NONE | PNG_FILTER_SUB PNG_FILTER_UP | PNG_FILTER_AVE | PNG_FILTER_PAETH | PNG_ALL_FILTERS; - or - filters = one of PNG_FILTER_VALUE_NONE, - PNG_FILTER_VALUE_SUB, PNG_FILTER_VALUE_UP, - PNG_FILTER_VALUE_AVE, PNG_FILTER_VALUE_PAETH png_set_filter(png_ptr, PNG_FILTER_TYPE_BASE, filters); @@ -3338,16 +3341,16 @@ structures appropriately for all of the filter types. in png_set_IHDR(). It is also possible to influence how libpng chooses from among the -available filters. This is done in two ways - by telling it how -important it is to keep the same filter for successive rows, and -by telling it the relative computational costs of the filters. +available filters. This is done in one or both of two ways - by +telling it how important it is to keep the same filter for successive +rows, and by telling it the relative computational costs of the filters. double weights[3] = {1.5, 1.3, 1.1}, costs[PNG_FILTER_VALUE_LAST] = {1.0, 1.3, 1.3, 1.5, 1.7}; - png_set_filter_selection(png_ptr, - PNG_FILTER_SELECTION_WEIGHTED, 3, + png_set_filter_heuristics(png_ptr, + PNG_FILTER_HEURISTIC_WEIGHTED, 3, weights, costs); The weights are multiplying factors that indicate to libpng that the @@ -3643,13 +3646,13 @@ application: .SH IX. Y2K Compliance in libpng -April 7, 2002 +April 15, 2002 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and -upward through 1.2.2rc1 are Y2K compliant. It is my belief that earlier +upward through 1.2.2 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 @@ -3776,6 +3779,8 @@ the first widely used release: 1.0.13beta1 10 10013 10.so.0.1.0.13beta1 1.0.13rc1 10 10013 10.so.0.1.0.13rc1 1.2.2rc1 12 10202 12.so.0.1.2.2rc1 + 1.0.13 10 10013 10.so.0.1.0.13 + 1.2.2 12 10202 12.so.0.1.2.2 Henceforth the source version will match the shared-library minor and patch numbers; the shared-library major version number will be @@ -3833,7 +3838,7 @@ possible without all of you. Thanks to Frank J. T. Wojcik for helping with the documentation. -Libpng version 1.2.2rc1 - April 7, 2002: +Libpng version 1.2.2 - April 15, 2002: Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc. Currently maintained by Glenn Randers-Pehrson (randeg@alum.rpi.edu). @@ -3850,7 +3855,7 @@ included in the libpng distribution, the latter shall prevail.) If you modify libpng you may insert additional notices immediately following this sentence. -libpng versions 1.0.7, July 1, 2000, through 1.2.2rc1, April 7, 2002, are +libpng versions 1.0.7, July 1, 2000, through 1.2.2, April 15, 2002, are Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors @@ -3942,7 +3947,7 @@ certification mark of the Open Source Initiative. Glenn Randers-Pehrson randeg@alum.rpi.edu -April 7, 2002 +April 15, 2002 .\" end of man page diff --git a/libpng.txt b/libpng.txt index 099e55cbc..afa8f3808 100644 --- a/libpng.txt +++ b/libpng.txt @@ -1,6 +1,6 @@ libpng.txt - A description on how to use and modify libpng - libpng version 1.2.2rc1 - April 7, 2002 + libpng version 1.2.2 - April 15, 2002 Updated and distributed by Glenn Randers-Pehrson Copyright (c) 1998-2002 Glenn Randers-Pehrson @@ -2485,6 +2485,10 @@ compression level by calling: Another useful one is to reduce the memory level used by the library. The memory level defaults to 8, but it can be lowered if you are short on memory (running DOS, for example, where you only have 640K). +Note that the memory level does have an effect on compression; among +other things, lower levels will result in sections of incompressible +data being emitted in smaller stored blocks, with a correspondingly +larger relative overhead of up to 15% in the worst case. png_set_compression_mem_level(png_ptr, level); @@ -2519,19 +2523,18 @@ to turn filtering on and off, respectively. Individual filter types are PNG_FILTER_NONE, PNG_FILTER_SUB, PNG_FILTER_UP, PNG_FILTER_AVG, PNG_FILTER_PAETH, which can be bitwise ORed together with '|' to specify one or more filters to use. -These filters are described in more detail in the PNG specification. If -you intend to change the filter type during the course of writing +These filters are described in more detail in the PNG specification. +If you intend to change the filter type during the course of writing the image, you should start with flags set for all of the filters you intend to use so that libpng can initialize its internal -structures appropriately for all of the filter types. +structures appropriately for all of the filter types. (Note that this +means the first row must always be adaptively filtered, because libpng +currently does not allocate the filter buffers until png_write_row() +is called for the first time.) filters = PNG_FILTER_NONE | PNG_FILTER_SUB PNG_FILTER_UP | PNG_FILTER_AVE | PNG_FILTER_PAETH | PNG_ALL_FILTERS; - or - filters = one of PNG_FILTER_VALUE_NONE, - PNG_FILTER_VALUE_SUB, PNG_FILTER_VALUE_UP, - PNG_FILTER_VALUE_AVE, PNG_FILTER_VALUE_PAETH png_set_filter(png_ptr, PNG_FILTER_TYPE_BASE, filters); @@ -2543,16 +2546,16 @@ structures appropriately for all of the filter types. in png_set_IHDR(). It is also possible to influence how libpng chooses from among the -available filters. This is done in two ways - by telling it how -important it is to keep the same filter for successive rows, and -by telling it the relative computational costs of the filters. +available filters. This is done in one or both of two ways - by +telling it how important it is to keep the same filter for successive +rows, and by telling it the relative computational costs of the filters. double weights[3] = {1.5, 1.3, 1.1}, costs[PNG_FILTER_VALUE_LAST] = {1.0, 1.3, 1.3, 1.5, 1.7}; - png_set_filter_selection(png_ptr, - PNG_FILTER_SELECTION_WEIGHTED, 3, + png_set_filter_heuristics(png_ptr, + PNG_FILTER_HEURISTIC_WEIGHTED, 3, weights, costs); The weights are multiplying factors that indicate to libpng that the @@ -2848,13 +2851,13 @@ application: IX. Y2K Compliance in libpng -April 7, 2002 +April 15, 2002 Since the PNG Development group is an ad-hoc body, we can't make an official declaration. This is your unofficial assurance that libpng from version 0.71 and -upward through 1.2.2rc1 are Y2K compliant. It is my belief that earlier +upward through 1.2.2 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 0b21c5fc7..564dc985e 100644 --- a/libpngpf.3 +++ b/libpngpf.3 @@ -1,6 +1,6 @@ -.TH LIBPNGPF 3 "April 7, 2002" +.TH LIBPNGPF 3 "April 15, 2002" .SH NAME -libpng \- Portable Network Graphics (PNG) Reference Library 1.2.2rc1 +libpng \- Portable Network Graphics (PNG) Reference Library 1.2.2 (private functions) .SH SYNOPSIS \fB#include \fP diff --git a/png.5 b/png.5 index 1ed302ec4..d61d281bf 100644 --- a/png.5 +++ b/png.5 @@ -1,4 +1,4 @@ -.TH PNG 5 "April 7, 2002" +.TH PNG 5 "April 15, 2002" .SH NAME png \- Portable Network Graphics (PNG) format .SH DESCRIPTION diff --git a/png.c b/png.c index f61e9d514..7cff5e603 100644 --- a/png.c +++ b/png.c @@ -1,7 +1,7 @@ /* png.c - location for general purpose libpng functions * - * libpng version 1.2.2rc1 - April 7, 2002 + * libpng version 1.2.2 - April 15, 2002 * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -13,14 +13,14 @@ #include "png.h" /* Generate a compiler error if there is an old png.h in the search path. */ -typedef version_1_2_2rc1 Your_png_h_is_not_version_1_2_2rc1; +typedef version_1_2_2 Your_png_h_is_not_version_1_2_2; /* Version information for C files. This had better match the version * string defined in png.h. */ #ifdef PNG_USE_GLOBAL_ARRAYS /* png_libpng_ver was changed to a function in version 1.0.5c */ -const char png_libpng_ver[18] = "1.2.2rc1"; +const char png_libpng_ver[18] = "1.2.2"; /* png_sig was changed to a function in version 1.0.5c */ /* Place to hold the signature string for a PNG file. */ @@ -663,7 +663,7 @@ png_charp PNGAPI png_get_copyright(png_structp png_ptr) { if (png_ptr != NULL || png_ptr == NULL) /* silence compiler warning */ - return ((png_charp) "\n libpng version 1.2.2rc1 - April 7, 2002\n\ + return ((png_charp) "\n libpng version 1.2.2 - April 15, 2002\n\ Copyright (c) 1998-2002 Glenn Randers-Pehrson\n\ Copyright (c) 1996-1997 Andreas Dilger\n\ Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.\n"); @@ -681,8 +681,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((png_charp) "1.2.2rc1"); - return((png_charp) "1.2.2rc1"); + return((png_charp) "1.2.2"); + return((png_charp) "1.2.2"); } png_charp PNGAPI diff --git a/png.h b/png.h index f352c371c..94026b292 100644 --- a/png.h +++ b/png.h @@ -1,7 +1,7 @@ /* png.h - header file for PNG reference library * - * libpng version 1.2.2rc1 - April 7, 2002 + * libpng version 1.2.2 - April 15, 2002 * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.) @@ -9,7 +9,7 @@ * Authors and maintainers: * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat * libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger - * libpng versions 0.97, January 1998, through 1.2.2rc1 - April 7, 2002: Glenn + * libpng versions 0.97, January 1998, through 1.2.2 - April 15, 2002: Glenn * See also "Contributing Authors", below. * * Note about libpng version numbers: @@ -85,6 +85,8 @@ * 1.0.13beta1 10 10013 10.so.0.1.0.13beta1 * 1.0.13rc1 10 10013 10.so.0.1.0.13rc1 * 1.2.2rc1 12 10202 12.so.0.1.2.2rc1 + * 1.0.13 10 10013 10.so.0.1.0.13 + * 1.2.2 12 10202 12.so.0.1.2.2 * * Henceforth the source version will match the shared-library major * and minor numbers; the shared-library major version number will be @@ -114,7 +116,7 @@ * If you modify libpng you may insert additional notices immediately following * this sentence. * - * libpng versions 1.0.7, July 1, 2000, through 1.2.2rc1, April 7, 2002, are + * libpng versions 1.0.7, July 1, 2000, through 1.2.2, April 15, 2002, are * Copyright (c) 2000-2001 Glenn Randers-Pehrson, and are * distributed according to the same disclaimer and license as libpng-1.0.6 * with the following individuals added to the list of Contributing Authors @@ -219,13 +221,13 @@ * Y2K compliance in libpng: * ========================= * - * April 7, 2002 + * April 15, 2002 * * Since the PNG Development group is an ad-hoc body, we can't make * an official declaration. * * This is your unofficial assurance that libpng from version 0.71 and - * upward through 1.2.2rc1 are Y2K compliant. It is my belief that earlier + * upward through 1.2.2 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 @@ -281,7 +283,7 @@ */ /* Version information for png.h - this should match the version in png.c */ -#define PNG_LIBPNG_VER_STRING "1.2.2rc1" +#define PNG_LIBPNG_VER_STRING "1.2.2" #define PNG_LIBPNG_VER_SONUM 0 #define PNG_LIBPNG_VER_DLLNUM %DLLNUM% @@ -293,7 +295,7 @@ /* This should match the numeric part of the final component of * PNG_LIBPNG_VER_STRING, omitting any leading zero: */ -#define PNG_LIBPNG_VER_BUILD 1 +#define PNG_LIBPNG_VER_BUILD 0 #define PNG_LIBPNG_BUILD_ALPHA 1 #define PNG_LIBPNG_BUILD_BETA 2 @@ -301,7 +303,7 @@ #define PNG_LIBPNG_BUILD_STABLE 4 #define PNG_LIBPNG_BUILD_TYPEMASK 7 #define PNG_LIBPNG_BUILD_PATCH 8 /* Can be OR'ed with STABLE only */ -#define PNG_LIBPNG_BUILD_TYPE 3 +#define PNG_LIBPNG_BUILD_TYPE 4 /* Careful here. At one time, Guy wanted to use 082, but that would be octal. * We must not include leading zeros. @@ -1261,9 +1263,9 @@ struct png_struct_def /* This prevents a compiler error in png.c if png.c and png.h are both at - version 1.2.2rc1 + version 1.2.2 */ -typedef png_structp version_1_2_2rc1; +typedef png_structp version_1_2_2; typedef png_struct FAR * FAR * png_structpp; @@ -2392,7 +2394,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 */ #define PNG_HEADER_VERSION_STRING \ - " libpng version 1.2.2rc1 - April 7, 2002 (header)\n" + " libpng version 1.2.2 - April 15, 2002 (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 10a895e4e..d00eb348f 100644 --- a/pngasmrd.h +++ b/pngasmrd.h @@ -1,6 +1,6 @@ /* pngasmrd.h - assembler version of utilities to read a PNG file * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 2002 Glenn Randers-Pehrson * diff --git a/pngconf.h b/pngconf.h index 023d3d5ba..f542049f0 100644 --- a/pngconf.h +++ b/pngconf.h @@ -1,6 +1,6 @@ /* pngconf.h - machine configurable file for libpng * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngerror.c b/pngerror.c index aae7650fc..5f2628b57 100644 --- a/pngerror.c +++ b/pngerror.c @@ -1,7 +1,7 @@ /* pngerror.c - stub functions for i/o and memory allocation * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pnggccrd.c b/pnggccrd.c index 8a6e312c5..7f4f2ed90 100644 --- a/pnggccrd.c +++ b/pnggccrd.c @@ -6,7 +6,7 @@ * and http://www.intel.com/drg/pentiumII/appnotes/923/923.htm * for Intel's performance analysis of the MMX vs. non-MMX code. * - * libpng version 1.2.2rc1 - April 7, 2002 + * libpng version 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * Copyright (c) 1998, Intel Corporation diff --git a/pngget.c b/pngget.c index aa729f6fb..9bafb9113 100644 --- a/pngget.c +++ b/pngget.c @@ -1,7 +1,7 @@ /* pngget.c - retrieval of values from info struct * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngmem.c b/pngmem.c index bca6c3ac0..8bae1291c 100644 --- a/pngmem.c +++ b/pngmem.c @@ -1,7 +1,7 @@ /* pngmem.c - stub functions for memory allocation * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngpread.c b/pngpread.c index a32e80f15..ba2c5b3fa 100644 --- a/pngpread.c +++ b/pngpread.c @@ -1,7 +1,7 @@ /* pngpread.c - read a png file in push mode * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngread.c b/pngread.c index 18df93b6e..44d937f85 100644 --- a/pngread.c +++ b/pngread.c @@ -1,7 +1,7 @@ /* pngread.c - read a PNG file * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -782,7 +782,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.2.2rc1 + * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2 */ void PNGAPI @@ -831,7 +831,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.2.2rc1 + * [*] png_handle_alpha() does not exist yet, as of libpng version 1.2.2 */ void PNGAPI png_read_image(png_structp png_ptr, png_bytepp image) diff --git a/pngrio.c b/pngrio.c index 337215f6a..265f4e3e5 100644 --- a/pngrio.c +++ b/pngrio.c @@ -1,7 +1,7 @@ /* pngrio.c - functions for data input * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngrtran.c b/pngrtran.c index 04b8d8459..8628b0ea8 100644 --- a/pngrtran.c +++ b/pngrtran.c @@ -1,7 +1,7 @@ /* pngrtran.c - transforms the data in a row for PNG readers * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngrutil.c b/pngrutil.c index c60cb9cd0..74f2d8b76 100644 --- a/pngrutil.c +++ b/pngrutil.c @@ -1,7 +1,7 @@ /* pngrutil.c - utilities to read a PNG file * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngset.c b/pngset.c index 7fd23502c..ddbb4c1ab 100644 --- a/pngset.c +++ b/pngset.c @@ -1,7 +1,7 @@ /* pngset.c - storage of image information into info struct * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngtest.c b/pngtest.c index 6f5125485..fdf454e3a 100644 --- a/pngtest.c +++ b/pngtest.c @@ -1,7 +1,7 @@ /* pngtest.c - a simple test program to test libpng * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) @@ -1512,4 +1512,4 @@ main(int argc, char *argv[]) } /* Generate a compiler error if there is an old png.h in the search path. */ -typedef version_1_2_2rc1 your_png_h_is_not_version_1_2_2rc1; +typedef version_1_2_2 your_png_h_is_not_version_1_2_2; diff --git a/pngtrans.c b/pngtrans.c index ec6812e72..6a9ad0e16 100644 --- a/pngtrans.c +++ b/pngtrans.c @@ -1,7 +1,7 @@ /* pngtrans.c - transforms the data in a row (used by both readers and writers) * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngvcrd.c b/pngvcrd.c index bcc7c3b62..53851fd59 100644 --- a/pngvcrd.c +++ b/pngvcrd.c @@ -2,7 +2,7 @@ * * For Intel x86 CPU and Microsoft Visual C++ compiler * - * libpng version 1.2.2rc1 - April 7, 2002 + * libpng version 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * Copyright (c) 1998, Intel Corporation diff --git a/pngwio.c b/pngwio.c index ab815c049..4d195f933 100644 --- a/pngwio.c +++ b/pngwio.c @@ -1,7 +1,7 @@ /* pngwio.c - functions for data output * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwrite.c b/pngwrite.c index 974da4b11..863a9142d 100644 --- a/pngwrite.c +++ b/pngwrite.c @@ -1,7 +1,7 @@ /* pngwrite.c - general routines to write a PNG file * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwtran.c b/pngwtran.c index 293d22348..b4a8715da 100644 --- a/pngwtran.c +++ b/pngwtran.c @@ -1,7 +1,7 @@ /* pngwtran.c - transforms the data in a row for PNG writers * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/pngwutil.c b/pngwutil.c index b74a03a9d..599290be7 100644 --- a/pngwutil.c +++ b/pngwutil.c @@ -1,7 +1,7 @@ /* pngwutil.c - utilities to write a PNG file * - * libpng 1.2.2rc1 - April 7, 2002 + * libpng 1.2.2 - April 15, 2002 * For conditions of distribution and use, see copyright notice in png.h * Copyright (c) 1998-2002 Glenn Randers-Pehrson * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger) diff --git a/projects/msvc/README.txt b/projects/msvc/README.txt index 7f06c7142..6723cf803 100644 --- a/projects/msvc/README.txt +++ b/projects/msvc/README.txt @@ -1,5 +1,5 @@ Microsoft Developer Studio Build File, Format Version 6.00 for -libpng 1.2.2rc1 (April 7, 2002) and zlib +libpng 1.2.2 (April 15, 2002) and zlib Copyright (C) 2000 Simon-Pierre Cadieux For conditions of distribution and use, see copyright notice in png.h diff --git a/projects/msvc/png32ms.def b/projects/msvc/png32ms.def index 3e7523ec5..8d45d8b5c 100644 --- a/projects/msvc/png32ms.def +++ b/projects/msvc/png32ms.def @@ -6,7 +6,7 @@ LIBRARY DESCRIPTION "PNG image compression library for Windows" EXPORTS -;Version 1.2.2rc1 +;Version 1.2.2 png_build_grayscale_palette @1 png_check_sig @2 png_chunk_error @3 diff --git a/projects/netware.txt b/projects/netware.txt index ce0fa58d4..b74efa5f3 100644 --- a/projects/netware.txt +++ b/projects/netware.txt @@ -1,6 +1,6 @@ A set of project files is available for Netware. Get -libpng-1.2.2rc1-project-netware.zip from a libpng distribution +libpng-1.2.2-project-netware.zip from a libpng distribution site such as http://libpng.sourceforge.net Put the zip file in this directory (projects) and then run -"unzip -a libpng-1.2.2rc1-project-netware.zip" +"unzip -a libpng-1.2.2-project-netware.zip" diff --git a/projects/wince.txt b/projects/wince.txt index 52fd91367..2b8ee6fa4 100644 --- a/projects/wince.txt +++ b/projects/wince.txt @@ -1,6 +1,6 @@ A set of project files is available for WinCE. Get -libpng-1.2.2rc1-project-wince.zip from a libpng distribution +libpng-1.2.2-project-wince.zip from a libpng distribution site such as http://libpng.sourceforge.net Put the zip file in this directory (projects) and then run -"unzip -a libpng-1.2.2rc1-project-wince.zip" +"unzip -a libpng-1.2.2-project-wince.zip" diff --git a/scripts/libpng.pc.in b/scripts/libpng.pc.in index 3637c87ee..2808d5b1d 100644 --- a/scripts/libpng.pc.in +++ b/scripts/libpng.pc.in @@ -6,6 +6,6 @@ includedir=${exec_prefix}/include Name: libpng12 Description: Loads and saves PNG files -Version: 1.2.2rc1 +Version: 1.2.2 Libs: -L${libdir} -lpng12 Cflags: -I${includedir}/libpng12 diff --git a/scripts/makefile.32sunu b/scripts/makefile.32sunu index 90680f89f..4d1223302 100644 --- a/scripts/makefile.32sunu +++ b/scripts/makefile.32sunu @@ -33,7 +33,7 @@ RANLIB=echo LIBNAME=libpng12 PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.64sunu b/scripts/makefile.64sunu index 80f04dbf9..4b2fe8516 100644 --- a/scripts/makefile.64sunu +++ b/scripts/makefile.64sunu @@ -33,7 +33,7 @@ RANLIB=echo LIBNAME=libpng12 PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) INCPATH=$(prefix)/include diff --git a/scripts/makefile.aix b/scripts/makefile.aix index 4743eac5d..ef8c3bd37 100644 --- a/scripts/makefile.aix +++ b/scripts/makefile.aix @@ -18,7 +18,7 @@ RM = rm -f # read libpng.txt or png.h to see why PNGMAJ is 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) prefix=/usr/local diff --git a/scripts/makefile.beos b/scripts/makefile.beos index dfb8e98fd..c0e957e4a 100644 --- a/scripts/makefile.beos +++ b/scripts/makefile.beos @@ -14,7 +14,7 @@ ZLIBINC=/usr/local/include # read libpng.txt or png.h to see why PNGMAJ is 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) ALIGN= diff --git a/scripts/makefile.cygwin b/scripts/makefile.cygwin index 939e3aa14..b7e3a5954 100644 --- a/scripts/makefile.cygwin +++ b/scripts/makefile.cygwin @@ -41,7 +41,7 @@ CFLAGS=$(MINGW_CCFLAGS) -I$(ZLIBINC) -Wall -O3 $(ALIGN) -funroll-loops \ PNGMAJ = 0 #PNGDLL = $12 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGMIN_BASE = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) diff --git a/scripts/makefile.darwin b/scripts/makefile.darwin index a828b14c1..cefb7243b 100644 --- a/scripts/makefile.darwin +++ b/scripts/makefile.darwin @@ -25,7 +25,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng12 diff --git a/scripts/makefile.dec b/scripts/makefile.dec index d6acac2f1..55b1695a1 100644 --- a/scripts/makefile.dec +++ b/scripts/makefile.dec @@ -17,7 +17,7 @@ ZLIBINC=../zlib # read libpng.txt or png.h to see why PNGMAJ is 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng12 diff --git a/scripts/makefile.freebsd b/scripts/makefile.freebsd new file mode 100644 index 000000000..3423768b3 --- /dev/null +++ b/scripts/makefile.freebsd @@ -0,0 +1,93 @@ +# makefile for libpng under FreeBSD +# Copyright (C) 2002 Glenn Randers-Pehrson and Andrey A. Chernov +# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc. +# For conditions of distribution and use, see copyright notice in png.h + +# where make install puts libpng.a and png.h +prefix=/usr/local + +PNGMAJ= 5 +.if (${OBJFORMAT} == "elf") +PNGVER= $(PNGMAJ) +.else +PNGMIN= 0 +PNGVER= $(PNGMAJ).$(PNGMIN) +.endif + +CFLAGS+= -I. -DPNG_USE_PNGGCCRD +.if (${MACHINE_ARCH} != "i386") +CFLAGS+= -DPNG_NO_ASSEMBLER_CODE +.endif +LDFLAGS+=-L. -lpng -lz -lm -static + +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 + +.SUFFIXES: .c .so .o + +.c.so: + ${CC} ${CFLAGS} -fPIC -DPIC -o $@ -c $< + +all: libpng.a libpng.so.${PNGVER} pngtest + +libpng.a: $(OBJS) + ar rc $@ $(OBJS) + $(RANLIB) $@ + +libpng.so.${PNGVER}: $(OBJS:S/o$/so/g) +.if (${OBJFORMAT} == "elf") + ${CC} -shared -Wl,-x,-soname,$@ -o $@ $(OBJS:S/o$/so/g) -lz -lm +.else + ${CC} -shared -Wl,-x -o $@ $(OBJS:S/o$/so/g) -lz -lm +.endif + +pngtest: pngtest.o libpng.a + $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) + +test: pngtest + ./pngtest + +install: libpng.a libpng.so.${PNGVER} + -@mkdir $(prefix)/include/libpng + ${INSTALL} -o ${INCOWN} -g ${INCGRP} -m ${INCMODE} \ + png.h pngconf.h $(prefix)/include/libpng + ln -sf libpng/png.h $(prefix)/include/png.h + ln -sf libpng/pngconf.h $(prefix)/include/pngconf.h + ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + libpng.a libpng.so.${PNGVER} $(prefix)/lib + $(RANLIB) $(prefix)/lib/libpng.a + ln -sf libpng.so.${PNGVER} $(prefix)/lib/libpng.so + /sbin/ldconfig -R + ${INSTALL} -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} \ + libpng.3 libpngpf.3 $(prefix)/man/man3 + ${INSTALL} -o ${MANOWN} -g ${MANGRP} -m ${MANMODE} \ + png.5 $(prefix)/man/man5 + +clean: + rm -f *.o libpng.a libpng.so libpng.so.${PNGVER} pngtest pngout.png + +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +writelock: + chmod a-w *.[ch35] $(DOCS) scripts/* + +# DO NOT DELETE THIS LINE -- make depend depends on it. + +png.o: png.h pngconf.h +pngerror.o: png.h pngconf.h +pngrio.o: png.h pngconf.h +pngwio.o: png.h pngconf.h +pngmem.o: png.h pngconf.h +pngset.o: png.h pngconf.h +pngget.o: png.h pngconf.h +pngread.o: png.h pngconf.h +pngrtran.o: png.h pngconf.h +pngrutil.o: png.h pngconf.h +pngtest.o: png.h pngconf.h +pngtrans.o: png.h pngconf.h +pngwrite.o: png.h pngconf.h +pngwtran.o: png.h pngconf.h +pngwutil.o: png.h pngconf.h +pngpread.o: png.h pngconf.h +pnggccrd.o: png.h pngconf.h + diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx index 9c4285224..18a5070e6 100644 --- a/scripts/makefile.gcmmx +++ b/scripts/makefile.gcmmx @@ -15,7 +15,7 @@ LIBNAME = libpng12 PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) CC=gcc @@ -43,7 +43,7 @@ WARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \ # Remove -DPNG_THREAD_UNSAFE_OK if you need thread safety ### for generic gcc: CFLAGS=-DPNG_THREAD_UNSAFE_OK -DPNG_USE_PNGGCCRD -I$(ZLIBINC) -Wall \ - -O3 $(ALIGN) -funroll-loops \ + -O3 $(ALIGN) -funroll-loops \ -fomit-frame-pointer # $(WARNMORE) -g -DPNG_DEBUG=5 ### for gcc 2.95.2 on 686: #CFLAGS=-DPNG_THREAD_UNSAFE_OK -DPNG_USE_PNGGCCRD -I$(ZLIBINC) -Wall -O3 \ diff --git a/scripts/makefile.hpgcc b/scripts/makefile.hpgcc index 3a1d3c59c..081a01e0d 100644 --- a/scripts/makefile.hpgcc +++ b/scripts/makefile.hpgcc @@ -35,7 +35,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng12 diff --git a/scripts/makefile.hpux b/scripts/makefile.hpux index 9a72da01f..996cb95f4 100644 --- a/scripts/makefile.hpux +++ b/scripts/makefile.hpux @@ -19,7 +19,7 @@ RANLIB=ranlib # read libpng.txt or png.h to see why PNGMAJ is 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng12 diff --git a/scripts/makefile.linux b/scripts/makefile.linux index 2a0202e51..a87721f7d 100644 --- a/scripts/makefile.linux +++ b/scripts/makefile.linux @@ -5,7 +5,7 @@ LIBNAME = libpng12 PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) CC=gcc diff --git a/scripts/makefile.macosx b/scripts/makefile.macosx index 447bf0ffa..5acb7658e 100644 --- a/scripts/makefile.macosx +++ b/scripts/makefile.macosx @@ -20,7 +20,7 @@ LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz LDSHARED=cc -lz -dynamiclib -compatibility_version $(VER) -current_version $(VER) PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 VER = $(PNGMAJ).$(PNGMIN) LIBNAME=libpng12 SHAREDLIB_POSTFIX=dylib @@ -79,11 +79,11 @@ install-shared: install-headers $(LIBNAME).$(PNGVER).$(SHAREDLIB_POSTFIX) chmod 755 $(LIBPATH)/$(LIBNAME).$(PNGVER).$(SHAREDLIB_POSTFIX) (cd $(LIBPATH); \ ln -f -s $(LIBNAME).$(PNGVER).$(SHARED_POSTFIX) ] - libpng.$(SHARED_POSTFIX); \ + libpng.$(SHARED_POSTFIX); \ ln -f -s $(LIBNAME).$(PNGVER).$(SHARED_POSTFIX) ] - libpng.3.$(SHARED_POSTFIX); \ + libpng.3.$(SHARED_POSTFIX); \ ln -f -s $(LIBNAME).$(PNGVER).$(SHARED_POSTFIX) ] - libpng.3.$(PNGMIN).$(SHARED_POSTFIX); \ + libpng.3.$(PNGMIN).$(SHARED_POSTFIX); \ ln -sf $(LIBNAME).$(PNGVER).$(SHAREDLIB_POSTFIX) \ $(LIBNAME).$(PNGMAJ).$(SHAREDLIB_POSTFIX); \ ln -sf $(LIBNAME).$(PNGMAJ).$(SHAREDLIB_POSTFIX) \ diff --git a/scripts/makefile.ne12bsd b/scripts/makefile.ne12bsd new file mode 100644 index 000000000..98be5dfc5 --- /dev/null +++ b/scripts/makefile.ne12bsd @@ -0,0 +1,44 @@ +# makefile for libpng for NetBSD for the standard +# make obj && make depend && make && make test +# make includes && make install +# Copyright (C) 2002 Patrick R.L. Welche +# For conditions of distribution and use, see copyright notice in png.h + +# You should also run makefile.netbsd + +LOCALBASE?=/usr/local +LIBDIR= ${LOCALBASE}/lib +MANDIR= ${LOCALBASE}/man +INCSDIR=${LOCALBASE}/include/libpng12 + +LIB= png12 +SHLIB_MAJOR= 0 +SHLIB_MINOR= 1.2.2 +SRCS= pnggccrd.c png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \ + pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \ + pngwtran.c pngmem.c pngerror.c pngpread.c +INCS= png.h pngconf.h +MAN= libpng.3 libpngpf.3 png.5 + +CPPFLAGS+=-I${.CURDIR} -DPNG_USE_PNGGCCRD + +# something like this for mmx assembler, but it core dumps for me at the moment +# .if ${MACHINE_ARCH} == "i386" +# CPPFLAGS+=-DPNG_THREAD_UNSAFE_OK +# MKLINT= no +# .else + CPPFLAGS+=-DPNG_NO_ASSEMBLER_CODE +# .endif + +CLEANFILES+=pngtest.o pngtest + +pngtest.o: pngtest.c + ${CC} -c ${CPPFLAGS} ${CFLAGS} ${.ALLSRC} -o ${.TARGET} + +pngtest: pngtest.o libpng.a + ${CC} ${LDFLAGS} ${.ALLSRC} -o${.TARGET} -lz -lm + +test: pngtest + cd ${.CURDIR} && ${.OBJDIR}/pngtest + +.include diff --git a/scripts/makefile.netbsd b/scripts/makefile.netbsd index 9b7b2e4a6..348f8386e 100644 --- a/scripts/makefile.netbsd +++ b/scripts/makefile.netbsd @@ -1,22 +1,22 @@ # makefile for libpng for NetBSD for the standard # make obj && make depend && make && make test # make includes && make install -# Copyright (C) 2001 Patrick R.L. Welche +# Copyright (C) 2002 Patrick R.L. Welche # For conditions of distribution and use, see copyright notice in png.h +# You should also run makefile.ne0bsd + LOCALBASE?=/usr/local LIBDIR= ${LOCALBASE}/lib MANDIR= ${LOCALBASE}/man INCSDIR=${LOCALBASE}/include/libpng -# Should also copy png.h and pngconf.h to $(INCSDIR)/libpng12. -LIB=png -# Shared lib name should be png12. -SHLIB_MAJOR= 0 -SHLIB_MINOR= 1.2.2rc1 +LIB= png +SHLIB_MAJOR= 3 +SHLIB_MINOR= 1.2.2 SRCS= pnggccrd.c png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \ - pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \ - pngwtran.c pngmem.c pngerror.c pngpread.c + pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \ + pngwtran.c pngmem.c pngerror.c pngpread.c INCS= png.h pngconf.h MAN= libpng.3 libpngpf.3 png.5 diff --git a/scripts/makefile.openbsd b/scripts/makefile.openbsd index 4240ede4b..4a080b5ec 100644 --- a/scripts/makefile.openbsd +++ b/scripts/makefile.openbsd @@ -7,7 +7,7 @@ LIBDIR= ${PREFIX}/lib MANDIR= ${PREFIX}/man/cat SHLIB_MAJOR= 0 -SHLIB_MINOR= 1.2.2rc1 +SHLIB_MINOR= 1.2.2 LIB= png SRCS= png.c pngerror.c pnggccrd.c pngget.c pngmem.c pngpread.c \ diff --git a/scripts/makefile.sco b/scripts/makefile.sco index c5050def1..fceeaa798 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 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng12 diff --git a/scripts/makefile.sggcc b/scripts/makefile.sggcc index 4b98287e3..eb7571eab 100644 --- a/scripts/makefile.sggcc +++ b/scripts/makefile.sggcc @@ -24,7 +24,7 @@ LDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm LDSHARED=CC $(ABI) -shared PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) # See "man dso" for info about shared objects LIBS=libpng12.so.$(PNGMAJ).$(PNGVER) diff --git a/scripts/makefile.sgi b/scripts/makefile.sgi index b224da4de..d201416fa 100644 --- a/scripts/makefile.sgi +++ b/scripts/makefile.sgi @@ -31,7 +31,7 @@ LDSHARED=cc $(ABI) -shared # See "man dso" for info about shared objects LIBNAME=libpng12 PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) RANLIB=echo diff --git a/scripts/makefile.so9 b/scripts/makefile.so9 index 3a8a314b3..6640ecd32 100644 --- a/scripts/makefile.so9 +++ b/scripts/makefile.so9 @@ -35,7 +35,7 @@ RANLIB=echo # read libpng.txt or png.h to see why PNGMAJ is 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng12 diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris index 44cd0e3b2..1a857a35e 100644 --- a/scripts/makefile.solaris +++ b/scripts/makefile.solaris @@ -32,7 +32,7 @@ RANLIB=echo # read libpng.txt or png.h to see why PNGMAJ is 0. You should not # have to change it. PNGMAJ = 0 -PNGMIN = 1.2.2rc1 +PNGMIN = 1.2.2 PNGVER = $(PNGMAJ).$(PNGMIN) LIBNAME = libpng12 diff --git a/scripts/pngdef.pas b/scripts/pngdef.pas index df1323190..d22c308a5 100644 --- a/scripts/pngdef.pas +++ b/scripts/pngdef.pas @@ -7,7 +7,7 @@ unit pngdef; interface const - PNG_LIBPNG_VER_STRING = '1.2.2rc1'; + PNG_LIBPNG_VER_STRING = '1.2.2'; PNG_LIBPNG_VER = 10202; type diff --git a/scripts/pngos2.def b/scripts/pngos2.def index 153b33a0c..35c904f96 100644 --- a/scripts/pngos2.def +++ b/scripts/pngos2.def @@ -2,7 +2,7 @@ ; PNG.LIB module definition file for OS/2 ;---------------------------------------- -; Version 1.2.2rc1 +; Version 1.2.2 LIBRARY PNG DESCRIPTION "PNG image compression library for OS/2" diff --git a/scripts/xmakefile.freebsd b/scripts/xmakefile.freebsd new file mode 100644 index 000000000..e07077de8 --- /dev/null +++ b/scripts/xmakefile.freebsd @@ -0,0 +1,77 @@ +# makefile for libpng under FreeBSD +# Copyright (C) 2002 Glenn Randers-Pehrson +# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc. +# For conditions of distribution and use, see copyright notice in png.h + +# where make install puts libpng.a and png.h +prefix=/usr/local + +# Building shared libraries is handled by the FreeBSD external Makefile, +# which uses this makefile. + +.if ${MACHINE_ARCH} == "i386" +CFLAGS+= -I. -O -DPNG_USE_PNGGCCRD +.else +CFLAGS+= -I. -O -DPNG_USE_PNGGCCRD -DPNG_NO_ASSEMBLER_CODE +.endif +LDFLAGS+=-L. -lpng -lz -lm + +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 + +all: libpng.a pngtest + +libpng.a: $(OBJS) + ar rc $@ $(OBJS) + $(RANLIB) $@ + +pngtest: pngtest.o libpng.a + $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) + +test: pngtest + ./pngtest + +install: libpng.a + -@mkdir $(prefix)/include + -@mkdir $(prefix)/include/libpng + -@mkdir $(prefix)/lib + cp png.h $(prefix)/include + cp pngconf.h $(prefix)/include + chmod 644 $(prefix)/include/png.h + chmod 644 $(prefix)/include/pngconf.h + cp png.h $(prefix)/include/libpng + cp pngconf.h $(prefix)/include/libpng + chmod 644 $(prefix)/include/libpng/png.h + chmod 644 $(prefix)/include/libpng/pngconf.h + cp libpng.a $(prefix)/lib + chmod 644 $(prefix)/lib/libpng.a + $(RANLIB) $(prefix)/lib/libpng.a + +clean: + rm -f *.o libpng.a pngtest pngout.png + +DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO +writelock: + chmod a-w *.[ch35] $(DOCS) scripts/* + +# DO NOT DELETE THIS LINE -- make depend depends on it. + +png.o: png.h pngconf.h +pngerror.o: png.h pngconf.h +pngrio.o: png.h pngconf.h +pngwio.o: png.h pngconf.h +pngmem.o: png.h pngconf.h +pngset.o: png.h pngconf.h +pngget.o: png.h pngconf.h +pngread.o: png.h pngconf.h +pngrtran.o: png.h pngconf.h +pngrutil.o: png.h pngconf.h +pngtest.o: png.h pngconf.h +pngtrans.o: png.h pngconf.h +pngwrite.o: png.h pngconf.h +pngwtran.o: png.h pngconf.h +pngwutil.o: png.h pngconf.h +pngpread.o: png.h pngconf.h +pnggccrd.o: png.h pngconf.h +