ext/zlib-ng/PORTING.md
Zlib-ng can be used/compiled in two different modes, that require some consideration by the application developer.
Zlib-ng can be compiled in zlib-compat mode, suitable for zlib-replacement in a single application or system-wide.
Please note that zlib-ng in zlib-compat mode is API-compatible but not ABI-compatible, meaning that you cannot simply replace the zlib library/dll files and expect the application to work. The application will need to be recompiled against the zlib-ng headers and libs to ensure full compatibility.
Advantages:
Disadvantages:
Build Considerations:
z_size_t is unsigned longZlib-ng in native mode is suitable for co-existing with the standard zlib library, allowing applications to implement support and testing separately.
The zlib-ng native has implemented some modernization and simplifications in its API, intended to make life easier for application developers.
Advantages:
Disadvantages:
zng_ has to be added.Build Considerations:
z_size_t is size_tTo distinguish zlib-ng from other zlib implementations at compile-time check for the
existence of ZLIBNG_VERSION defined in the zlib header.