[zlib] Why do we make uLong a 32-bit int on 64-bit platforms?

Volker Simonis simonisv at amazon.de
Wed Jan 15 21:39:24 UTC 2020


Hi,

is there any reason why the bundled zlib is patched to make zlib's
"uLong" type a 32-bit int on 64-bit platforms [1]? This change to the
original zlib is there since the very first drop of OpenJDK 6 [2] (which
still had version 1.1.3 of zlib). Maybe it was required at that time
when it was still possible to create images with both, 32- and 64-bit
versions of the JDK and choose the one you want with -d64/-d32?

However, as of today, I can't imagine why this patch should be still
required? Especially taking into account that when the jdk is built with
"--with-zlib=system", it will use the systems version of "zconf.h"
anyway, which doesn't have this change. Nevertheless, jdk's using the
system zlib are being build and are in use since many years on all major
Linux distributions without any known zlib problems.

So if nobody objects, I'll file a RFE to remove this zlib patch.

Thank you and best regards,
Volker

[1]
http://hg.openjdk.java.net/jdk/jdk/file/tip/src/java.base/share/native/libzip/zlib/patches/ChangeLog_java#l4
[2]
http://hg.openjdk.java.net/jdk6/jdk6/jdk/annotate/d7039bceb849/src/share/native/java/util/zip/zlib-1.1.3/zconf.h#l250




Amazon Development Center Germany GmbH
Krausenstr. 38
10117 Berlin
Geschaeftsfuehrung: Christian Schlaeger, Jonathan Weiss
Eingetragen am Amtsgericht Charlottenburg unter HRB 149173 B
Sitz: Berlin
Ust-ID: DE 289 237 879




More information about the core-libs-dev mailing list