#15314 closed enhancement (fixed)

Upgrade zlib to 1.2.8

Reported by: hjiawei Owned by:
Priority: low Milestone:
Component: 3rdparty Version:
Keywords: Cc:
Blocked By: Blocking:
Patch: yes

Description

I have updated zlib to 1.2.8 (released in April 2013) against the latest svn trunk by modifying zlib.bkl and overwritten src/zlib. Here is the diff file for zlib.bkl:

Index: zlib.bkl
===================================================================
--- zlib.bkl	(revision 74461)
+++ zlib.bkl	(working copy)
@@ -34,7 +34,10 @@
             src/zlib/adler32.c
             src/zlib/compress.c
             src/zlib/crc32.c
-            src/zlib/gzio.c
+            src/zlib/gzlib.c
+            src/zlib/gzread.c
+            src/zlib/gzwrite.c
+            src/zlib/gzclose.c
             src/zlib/uncompr.c
             src/zlib/deflate.c
             src/zlib/trees.c

Currently, only MSW port is tested and compiled without problems. Hope this diff file is helpful for the next great release.

Attachments (1)

zlib.7z download (90.0 KB) - added by hjiawei 18 months ago.

Download all attachments as: .zip

Change History (6)

comment:1 Changed 18 months ago by vadz

  • Priority changed from normal to low
  • Status changed from new to confirmed
  • Summary changed from 3rd-party library zlib 1.2.8 to Upgrade zlib to 1.2.8

The main problem with upgrading is actually importing the sources properly into svn. I probably won't have time to do this before 3.0 but OTOH the changes between 1.2.3 and 1.2.8 seem to be pretty minor, so this is probably not a problem.

Changed 18 months ago by hjiawei

comment:2 Changed 18 months ago by hjiawei

  • Patch set

Based on the file structure in src/zlib, I have created a patch using the latest zlib 1.2.8. MSW port is tested using MSVC 2010/2012 and TDM-GCC 4.7.1 to create static and dynamic packages. Here is a list of files being changed. All files are from the official 1.2.8 package directly without any modifications. Hope this will make the update easier.

M       ChangeLog
M       FAQ
M       INDEX
M       README
M       adler32.c
M       algorithm.txt
M       compress.c
M       crc32.c
M       crc32.h
M       deflate.c
M       deflate.h
M       example.c
A       gzclose.c
A       gzguts.h
D       gzio.c
A       gzlib.c
A       gzread.c
A       gzwrite.c
M       infback.c
M       inffast.c
M       inffast.h
M       inffixed.h
M       inflate.c
M       inflate.h
M       inftrees.c
M       inftrees.h
M       minigzip.c
M       trees.c
M       trees.h
M       uncompr.c
M       zconf.h
M       zlib.3
D       zlib.dsp
M       zlib.h
M       zutil.c
M       zutil.h

comment:3 Changed 15 months ago by God_Mark

Similar with ticket http://trac.wxwidgets.org/ticket/14157 zlib 1.2.8 now comes with a prefix option witch should help eliminate any collisions with other built-in libraries.

/*

  • If you *really* need a unique prefix for all types and library functions,
  • compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
  • Even better than compiling with -DZ_PREFIX would be to use configure to set
  • this permanently in zconf.h using "./configure --zprefix". */

#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */
# define Z_PREFIX_SET
...
#endif

comment:4 Changed 15 months ago by vadz

I've started upgrading zlib to 1.2.8 to use this "new" Z_PREFIX only to realize in the middle of the upgrade that it's not new at all (already present in 1.2.3 that we use) and doesn't allow to do what we want at all (it can be set or unset but not set to e.g. "wx_").

I'll still commit 1.2.8 sources but this is not really going to change anything.

comment:5 Changed 15 months ago by VZ

  • Resolution set to fixed
  • Status changed from confirmed to closed

(In [74903]) Upgrade bundled zlib to 1.2.8.

No real changes from wxWidgets point of view.

Closes #15314.

Note: See TracTickets for help on using tickets.