Commit graph

88 commits

Author SHA1 Message Date
adam
91d7b2e7e8 Version 1.8.11 (built with libpng-1.6.28 and zlib-1.2.11)
Use png_set_option(PNG_IGNORE_ADLER32) to control ADLER32 handling.
  Changed LD=gcc to LD=$(CC) in Makefile and Makefile-nolib
PkgSrc:
  Removed patch-aa as build and installation are done from the main Makefile.
2017-04-10 08:59:34 +00:00
adam
d35e847bb0 Version 1.8.10:
* Changed ADLER32 checksum handling to only use inflateValidate()
  during IDAT chunk handling; it broke iCCP chunk handling.
2016-12-05 11:07:58 +00:00
adam
649b1ab3fc Version 1.8.8 (built with libpng-1.6.26beta06 and zlib-1.2.8.1)
Fixed "nolib" build (bug report by Hanspeter Niederstrasser).
    Make sure we use system-png.h, and not the local file.  It is now
    possible to build either the regular pngcrush or the "nolib"
    pngcrush in the complete pngcrush source directory (use
    "make clean" before rebuilding!)
  Fixed timing when using "clock()". Sometimes an additional second
    was added when the timer crossed a one-second boundary, since
    version 1.8.5.
  Upgrade libpng to version 1.6.26beta06 and zlib to 1.2.8.1.
  Use zlib-1.2.8.1 new "inflateValidate()" function to avoid checking
    ADLER32 checksums. Version 1.8.7 did not work when the "-fix"
    option was used.
2016-10-08 06:16:24 +00:00
adam
55ae9bf28b Version 1.7.85 (built with libpng-1.6.16 and zlib-1.2.8)
Improved reporting of invalid chunk names. Does not try to put
    non-printable characters in STDERR; displays hex numbers instead.
  Fixed include path for utime.h on MSVC (Louis McLaughlin).
  Eliminated "FAR" memory support (it was removed from libpng at version
    1.6.0).
  Disabled the "-already_crushed" option which does not really work well.
2015-06-15 09:03:31 +00:00
adam
be42d9c119 Changes 1.7.81:
Fixed off-by-one error in calculation of plte_len.
2014-11-24 13:06:56 +00:00
adam
105e5b3faa Changes 1.7.76:
Updated libpng to version 1.6.12.
2014-08-17 09:09:54 +00:00
adam
587159cd34 Changes 1.7.75:
Reverted libpng to version 1.6.10 due to a misplaced statement in png.c
Fixed "-zmem" option (only "-zm" would work since version 1.7.62).
2014-06-12 13:40:38 +00:00
adam
46dece8350 Changes 1.7.73:
* Restored calls to png_set_crc_action() which had been removed from
  version 1.7.72 for some testing and inadvertently not restored.
* Changed "fix" internal variable name to "salvage" (still set with "-fix")
* Added code to fix/salvage PNG with "bad adaptive filter value" error.
* Avoid calculating CRC during compression trials except for the last trial,
  when the output is actually written.
* Fixed a bug with reducing 16-bit images to 8-bit using "-reduce" option.
2014-03-31 10:15:13 +00:00
adam
4a9a5b538b Changes 1.7.71:
* Built the Windows binaries using -DTOO_FAR=32767; neglected to do this
  in versions 1.7.42 through 1.7.70, which caused the Windows binaries
  to produce different (usually a few bytes larger) results than Linux.
2014-02-09 07:42:47 +00:00
adam
ba91fef118 Changes 1.7.70:
Updated libpng to version 1.6.8.
2014-02-01 11:54:50 +00:00
wiz
d33dfdeb7c Reset maintainer for resigned developers. 2013-12-23 11:57:02 +00:00
adam
cfd9c425f7 Changes 1.7.69:
* Check for NULL return from malloc().
* Undefine CLOCKS_PER_SECOND "1000" found in some version of MinGW.
* Replaced most "atoi(argv[++i])" with "pngcrush_get_long" which does
    "BUMP_I; strtol(argv[i],ptr,10)" and added pngcrush_check_long macro
    to detect malformed or missing parameters (debian bug 716149).
* Added global_things_have_changed=1 when reading -bkgd.
* The "-bit_depth N" option did not work reliably and has been removed.
2013-11-15 08:35:26 +00:00
adam
597c7d504b Changes 1.7.67:
Fixed handling of "-text" and "-ztext" options for text input. They had been
reduced to "-t" and "-z" with an incorrect argument (3 instead of 2) in
version 1.7.62.
2013-09-01 07:34:35 +00:00
adam
e55afa2a70 Changes 1.7.66:
Revised pngcrush_examine_pixels_fn() to fix some incorrect reductions.
2013-07-18 07:30:56 +00:00
adam
c83286a6f4 Changes 1.7.63:
Add "int dowildcard=-1;" in an attempt to get wildcard arguments working
in the cross-compiled MinGW executables.
2013-06-16 07:20:44 +00:00
adam
0a9e2dbf7f Changes 1.7.58:
* Do not enable reduce_palette by default for "-reduce", "-new", or "-old".
    It still is failing for some files.
2013-05-23 16:01:09 +00:00
adam
d681cc885c Changes 1.7.56:
Only use pngcrush_debug_malloc() and pngcrush_debug_free() if the result
    is going to be shown.
  Added PNG_PASS_ROWS, PNG_UNUSED, and other macro definitions, when building
    with libpng-1.4.x and older libpng versions.
  Multiplied rowbytes by 8/bit_depth when using the system library because
    we do not call png_read_transform_info(). This prevents a crash when
    reading sub-8-bit input files.
2013-04-03 11:59:27 +00:00
adam
b5d65d512b Version 1.7.53:
* Removed plte_len stuff from the "To do" list because it is done.
* Shorten the indexed-PNG tRNS chunk length if it has more entries than the PLTE chunk.
2013-03-11 11:16:15 +00:00
adam
b133eade62 Version 1.7.52 (built with libpng-1.6.1beta06 and zlib-1.2.7)
Added license info for cexcept.h, libpng, and zlib.
  Added consideration of "zopfli" compression to the "To do" list.
  Fixed a typo that caused a cHRM chunk to be "found" if an iCCP chunk
    were present.
  Reset best_byte_count before trial loop.
  Revise global png_set_keep_unknown_chunks() calls to avoid a libpng16
    warning.
  Reset "intent" to "specified_intent" before trial loop.
  Reset "plte_len" to "specified_plte_len" before trial loop.
  Initialize length of each trial to 0x7fffffff so any untried method
    is not the "best method".
2013-03-06 16:10:28 +00:00
adam
7edd2dfc98 Changes 1.7.50:
* Removed completed items from the "To do" list.
* Ignore the argument of the "plte_len" argument and just set the
     "reduce_palette" flag.
2013-02-16 18:20:35 +00:00
wiz
d1b820f37b Recursive bump for png-1.6. 2013-02-16 11:18:58 +00:00
adam
3cfd42b498 Version 1.7.47 (built with libpng-1.5.13 and zlib-1.2.7)
Do not do the heuristic trials of the first 10 methods when -brute is
    specified, because it did not save time as I hoped.
  Fixed a mistake in 1.7.45 and 1.7.46 that caused the output file to
    not be written.

Version 1.7.46 (built with libpng-1.5.13 and zlib-1.2.7)
  Moved the new level 0 methods to the end of the trial list (methods 137-148)

Version 1.7.45 (built with libpng-1.5.13 and zlib-1.2.7)
  Added method 0 (uncompressed). "-m 0" now simply turns on method 0.
  Added "-try10" option that has the same effect that "-m 0" previously did,
    namely to try only the first ten methods.
  Inserted new methods 17 through 21 with zlib level 0.
  Do the heuristic trials of the first 10 methods when -brute is specified,
    to get quickly to a small solution, so we can bail out of most of the
    remaining trials early. Previously these 10 methods were skipped during
    a -brute run.
  Removed the "-reduce" line from the help screen when PNGCRUSH_COUNT_COLORS
    is disabled.
2013-02-08 17:18:24 +00:00
adam
1811ecf019 Version 1.7.44 (built with libpng-1.5.14 and zlib-1.2.7)
Version 1.7.43 (built with libpng-1.5.13 and zlib-1.2.7)
  Added "remove(inname)" before "rename(outname, inname)" when using the "-ow"
    option on CYGWIN/MinGW because "rename()" does not work if the target file
    exists.
  Use the bundled "zlib.h" when PNGCRUSH_H is defined, otherwise use the
    system .

Version 1.7.42 (built with libpng-1.5.13 and zlib-1.2.7)
  Use malloc() and free() instead of png_malloc_default() and
    png_free_default().  This will be required to run with libpng-1.7.x.
  Revised the PNG_ABORT definition in pngcrush.h to work with libpng-1.7.x.
  Revised zutil.h to avoid redefining ptrdiff_t on MinGW/CYGWIN platforms.
2013-01-24 21:00:42 +00:00
adam
32f668229a Changes 1.7.41:
* Reverted to version 1.7.38.  Versions 1.7.39 and 40 failed to open an
  output file.
2012-10-25 11:29:28 +00:00
asau
08f35c7155 Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days. 2012-10-06 14:10:39 +00:00
adam
a69516c0b4 Changes 1.7.38:
* Bail out of a trial if byte count exceeds best byte count so far.
* Added -bail and -nobail options.  Use -nobail to get a complete report
  of filesizes.
* Added -blacken option, to enable changing the color samples of any
  fully-transparent pixels to zero in PNG files with color-type 4 or 6,
  potentially improving their compressibility.
2012-10-03 11:03:59 +00:00
adam
f64b40ebb8 Version 1.7.37:
Reverted pngcrush.c back to 1.7.35 and fixed the bug with PLTE handling.

Version 1.7.36:
  Reverted pngcrush.c to version 1.7.34 because pngcrush is failing with
    some paletted PNGs.
  Separated CFLAGS and CPPFLAGS in the makefile (with "-I" and "-DZ_SOLO"
    in CPPFLAGS)
2012-09-03 05:27:39 +00:00
adam
7a4ccb5512 Changes 1.7.35:
* Removed FOPEN of fpout except for the last trial.  The open files caused
  "pngcrush -brute -e _ext.png *.png" to fail on the 10th file (about the
  1024th compression trial) due to being unable to open the output file.
2012-08-01 11:45:51 +00:00
adam
160cb71acc Changes 1.7.34:
* Compute and report sum of critical chunk lengths IHDR, PLTE, IDAT, and IEND,
  plus the 8-byte PNG signature instead of just the total IDAT data length.
  Simplify finding the lengths from the trial compressions, by replacing
  the write function with one that simply counts the bytes that would have
  been written to a trial PNG, instead of actually writing a PNG, reading it
  back, and counting the IDAT bytes.  The savings, while measurable, are
  not very significant -- The "-brute" and default pngcrush runs that I
  tried are between one and five percent faster.  Most of the time is
  expended in zlib compression of the IDATs, which is not affected by
  the change.
* Removed comments about the system library having to be libpng14 or earlier.
  This restriction was fixed in version 1.7.20.
2012-07-28 10:57:40 +00:00
adam
36621baae2 Changes 1.7.33:
* Ignore all ancillary chunks except during the final trial.  This can be
  significantly faster when large ancillary chunks such as iCCP are present.

Changes 1.7.32:
* Fixed bug introduced in 1.7.30: Do not call png_set_check_for_invalid_index()
  when nosave != 0 (otherwise pngcrush crashes with the "-n" option).
2012-07-25 20:14:01 +00:00
adam
70c5001522 Changes 1.7.31:
* Dropped *.tar.bz2 from distribution.
* Added a comma that was missing from one of the "usage" strings (error
    introduced in version 1.7.29).

Changes 1.7.30:
* Only run the new (in libpng-1.5.10) test of palette indexes during the
    first trial.
2012-07-03 18:00:52 +00:00
adam
ee567a4bd7 Changes 1.7.29:
* Set "things_have_changed" flag when adding text chunks, so the "-force"
  option is no longer necessary when adding text to an already-compressed
  file.
* Direct usage message and error messages to stderr instead of stdout. If
  anyone is still using DOS they may have to change the "if 0" at line
  990 to "if 1".
* Added "pngcrush -n -v files.png" to the usage message.
2012-06-11 07:06:21 +00:00
adam
467e2b6152 Changes 1.7.28:
* Write proper copyright year for zlib, depending upon ZLIB_VERNUM

Changes 1.7.27:
* Increased row_buf malloc to row_bytes+64 instead of row_bytes+16, to
  match the size of big_row_buf in pngrutil.c (it is 48 in libpng14, 15, 16,
  and 64 in libpng10, 12.  Otherwise there is a double-free crash when the
  row_buf is destroyed.

Changes 1.7.26:
* Increased the text_text buffer from 2048 to 10*2048 (Ralph Giles), and
  changed an incorrect test for keyword length "< 180" to "< 80".  The
  text_text buffer was inadvertently reduced from 20480 to 2048 in
  pngcrush-1.7.9.
* Added -DZ_SOLO to CFLAGS, needed to compile zlib-1.2.6.
* Changed user limits to width and height max 500000, malloc max 2MB,
  cache max 500.
* Added -nolimits option which sets the user limits to the default
  unlimited values.
2012-05-25 08:01:33 +00:00
wiz
6c375743f2 png-license is just a zlib with many authors. Use zlib here (as already
done in png package).
2012-03-07 15:29:52 +00:00
adam
3d8c4392cf Changes 1.7.25:
* built with libpng-1.5.9 and zlib-1.2.5
2012-02-20 17:27:24 +00:00
adam
a8ab4a387f Changes 1.7.24:
* Do not append a slash to the directory name if it already has one.

Changes 1.7.23:
* Ignore any attempt to use "-ow" with the "-d" or "-e" options, with warning.
* Include zlib.h if ZLIB_H is not defined (instead of checking the libpng
  version; see entry below for pngcrush-1.7.14), and include string.h
  if _STRING_H_ is not defined (because libpng-1.6 does not include string.h)
* Define SLASH = backslash on Windows platforms so the "-d" option will work.
2012-01-12 16:21:08 +00:00
adam
b7a64f8ae8 Changes 1.7.22:
This release adds the "-ow" option to overwrite the input file with the
compressed file. If an output filename is given on the command line, it will be
used as a temporary file and removed after compression. If not, "pngout.png" is
used as a temporary file
2011-12-09 11:50:21 +00:00
adam
2604c4d74a Changes 1.7.21:
* Defined TOO_FAR=32767 in Makefile (instead of in pngcrush.h)
2011-11-15 14:47:29 +00:00
adam
465948b074 Changes 1.7.20:
* Removed the call to png_read_transform_info() when the system libpng
  is being used, so it can be built with a system libpng.

Changes 1.7.19:
* pngcrush-1.7.18 failed to read interlaced PNGs.  Reverted the change
  from calling png_read_transform_info() to png_read_update_info().
  Since png_read_transform_info() is not exported we again cannot build
  with the system libpng15.

Changes 1.7.18:
* This version will work with either a "system" libpng14 or libpng15, or with
  the embedded libpng15.  The deprecated usage of libpng png_struct members
  and unexported functions has been removed.
* Revised the format of the time report (all on one line so you can get
  a nice compact report by piping the output to "grep coding").
2011-10-14 17:56:24 +00:00
adam
ac61130abb Changes 1.7.17:
* Changed "#if !defined(PNG_NO_STDIO)" to "#ifdef PNG_STDIO_SUPPORTED"
  as recommended in the libpng documentation.
* Added PNG_UINT_32_NAME macro and used it to simplify chunk_type integer
  definitions.
2011-10-04 09:36:01 +00:00
adam
d9fb645d73 Changes 1.7.16:
* Only report best method==0 if pngcrush cannot match the input filesize.
  Otherwise, if there is no improvement, report the first matching method.
2011-07-15 09:29:06 +00:00
adam
83d1fdee2b Added LICENSE; do not depend on png 2011-05-17 07:23:46 +00:00
adam
2aa5b1320a Changes 1.7.15:
* Force bit_depth to 1, 2, or 4 when -plte_len is <=2, <=4, or <=16 and
  the -bit_depth option is not present, to avoid writing invalid palette
  indexes.
2011-03-23 09:00:23 +00:00
adam
c0ee3b1330 Changes 1.7.14:
* Built with libpng-1.5.1beta06 and zlib-1.2.5
* Removed WIN32_WCE support (libpng has dropped it already)
* Include zlib.h and define png_memcpy, etc., and revise the
  png_get_iCCP() and png_set_iCCP() calls to be able to build
  with bundled libpng-1.5.x.  Pngcrush cannot be built yet with
  a system libpng-1.5.x.
2011-01-28 20:46:11 +00:00
wiz
af3596f984 png shlib name changed for png>=1.5.0, so bump PKGREVISIONs. 2011-01-13 13:36:05 +00:00
adam
3f8ef55218 Changes 1.7.13:
(built with libpng-1.4.5 and zlib-1.2.5)
2010-12-13 16:15:33 +00:00
adam
191beddff7 Changes 1.7.12:
Built with libpng-1.4.4 and zlib-1.2.5.
2010-10-16 10:06:18 +00:00
adam
00e792371c Changes 1.7.11:
(built with libpng-1.4.2 and zlib-1.2.5)
2010-07-19 13:01:58 +00:00
wiz
e8d8834f6a Bump PKGREVISION for libpng shlib name change.
Also add some patches to remove use of deprecated symbols and fix other
problems when looking for or compiling against libpng-1.4.x.
2010-06-13 22:43:46 +00:00
adam
b51b4e9959 Changes 1.7.10:
* Added missing "(...)" in png_get_uint_32().
* Only compile png_get_uint_32(), etc., when PNG_LIBPNG_VER < 1.2.9
* Revised help info for "-zitxt".

Changes 1.7.9:
* Defined TOO_FAR == 32767 in pngcrush.h (instead of in deflate.c)
* Revised the "nolib" Makefiles to remove reference to gzio.c and pnggccrd.c

Changes 1.7.8:
* Removed gzio.c

Changes 1.7.7:
* Updated bundled libpng to version 1.4.0.
* Check the "-plte_len n" option for out-of-range value of n.
* Changed local variable "write" to "z_write" in inffast.c (zlib-1.2.3.4)
    to avoid shadowed declaration warning.

Changes 1.7.6:
* Change some "if defined(X)" to "ifdef X" according to libpng coding style.
* Added some defines to suppress pedantic warnings from libpng-1.2.41beta15
    and later.  A warning about deprecated access to png_ptr->zstream is
    otherwise unavoidable.  When building the embedded libpng, a warning
    about png_default_error() returning is also otherwise unavoidable.
* Write premultiplied alpha if output extension is .ppng and
    PNG_READ_PREMULTIPLIED_ALPHA_SUPPORTED is set (needs libpng-1.5.0).
* Check the "-m method" option for out-of-range method value.

Changes 1.7.4:
* Use unmodified pngconf.h from libpng-1.2.41beta05 or later.
2010-04-18 08:35:44 +00:00