Changes in TIFF v4.3.0

TIFF CHANGE INFORMATION

Current Version: v4.3.0
Previous Version: v4.2.0
Master Download Site: download.osgeo.org, directory pub/libtiff
Master HTTP Site #1: http://www.simplesystems.org/libtiff/
Master HTTP Site #2: https://libtiff.gitlab.io/libtiff/
Master HTTP Site #3: http://libtiff.maptools.org/

This document provides a summary of significant changes made to the software between the previous and current versions (see above). A fully-detailed change summary is provided by the ChangeLog file included in the release package and by the Git commit history:

- Major Changes
- Changes in the software configuration
- Changes in libtiff
- Changes in the tools
- Changes in the contrib area

MAJOR CHANGES:

- Build and usage of the library and its utilities requires a C99 capable compiler.
- New optional codec for the LERC (Limited Error Raster Compression) compression scheme. To have it available, configure libtiff against the SDK available at https://github.com/esri/lerc
- CMake build: revamp of build scripts

CHANGES IN THE SOFTWARE CONFIGURATION:

- cmake: revamp of the cmake build scripts. There are impacts on the case of some options.
- cmake: update minimum version and policy version to 3.9.
- Remove NMake build support. The functionality provided by the NMake build is now completely superseded by the CMake build.
- Remove antiquated Scons and makefile.lcc build support.
- Remove non-functional VMS and WinCE support.
- autogen.sh now updates config.guess and config.sub from master gnulib version.

CHANGES IN LIBTIFF:

- Use of "int8", "uint8", "int16", "uint16", "int32", "uint32", "int64", "uint64" typedefs is now deprecated. libtiff code and headers no longer use them, and use their C99 standard equivalents (with "_t" suffix). Those typedefs are still available, with deprecation warnings, but external code is strongly encouraged to use the corresponding C99 stdint.h types. The deprecated types might be removed in a future release.
- Removal of unused, or now useless due to C99 availability, functions in port/
- A few issues spotted by static code analysis tools fixed. Compiler warnings addressed.

CHANGES IN THE TOOLS:

- In usage text, insert a line of text summarizing each tool's purpose
- tiff tools: made display of compression methods and their parameters conditional on their actual availability
- tiff2ps: exit the loop in case of error (#232)
- tiff2pdf: check that tiff_datasize fits in a signed tsize_t (#202)
- tiffsplit: exit with EXIT_FAILURE if there are extra args on the command line
- tiffcmp: fix comparaison with pixels that are fractional number of bytes (#53)

CHANGES IN THE CONTRIB AREA:

- iptcutil.c - set '#ifdef _WIN32' (was '#ifdef WIN32', which failed at build time)