|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# Third-Party Licenses Used in Qt

Qt includes a number of third-party libraries that are used to provide certain features. Unlike other third-party code used in Qt, these libraries are supplied alongside the Qt modules.

Run `configure -help` to see any options that may be available for controlling the use of these libraries.

- FreeType 2 (`freetype`)
- HarfBuzz (`harfbuzz`)
- MD5 (`md5.cpp` and `md5.h`)
- The Independent JPEG Group's JPEG Software (`libjpeg`)
- MNG Library (`libmng`)
- PNG Reference Library (`libpng`)
- TIFF Software Distribution (`libtiff`)
- SQLite (`sqlite`)
- Wintab API (`wintab`)
- Data Compression Library (`zlib`)

### FreeType 2 (`freetype`)

The FreeType project is a team of volunteers who develop free, portable and high-quality software solutions for digital typography. We specifically target embedded systems and focus on bringing small, efficient and ubiquitous products. -- quoted from `3rdparty/freetype/docs/freetype2.html`.

See `src/3rdparty/freetype/docs/FTL.txt` and `src/3rdparty/freetype/docs/GPL.txt` for license details.

See also the files in `src/3rdparty/opentype`, which are used by FreeType.

Parts of the FreeType projects have been modified and put into Qt for use in the painting subsystem. These files are ftraster.h, ftraster.c, ftgrays.h and ftgrays.c. The following modifications has been made to these files:

- Renamed FT_ and ft_ symbols to QT_FT_ and qt_ft_ to avoid name conflicts.
- Removed parts of code not relevant when compiled with _STANDALONE_ defined.
- Changed behavior in ftraster.c to follow X polygon filling rules.
- Implemented support in ftraster.c for winding / odd even polygon fill rules.
- Replaced bitmap generation with span generation in ftraster.c
- Renamed: ftraster.h to qblackraster_p.h
- Renamed: ftraster.c to qblackraster.c
- Renamed: ftgrays.h to qgrayraster_p.h
- Renamed: ftgrays.c to qgrayraster.c

### HarfBuzz (`harfbuzz`)

This is HarfBuzz, an OpenType Layout engine.

It was derived originally from the OpenType code in FreeType-1.x, ported to FreeType2. (This code has been abandoned for FreeType2, but until something better comes along, should serve our purposes.) In addition to porting to FreeType-2, it has been modified in various other ways. -- quoted from `src/3rdparty/harfbuzz/README`.

See `src/3rdparty/harfbuzz/COPYING.FTL` and src/3rdparty/harfbuzz/COPYING.GPL for license details.

### MD5 (`md5.cpp` and `md5.h`)

This code implements the MD5 message-digest algorithm. The algorithm is due to Ron Rivest. This code was written by Colin Plumb in 1993, no copyright is claimed. This code is in the public domain; do with it what you wish. -- quoted from `src/3rdparty/md5/md5.h`

See `src/3rdparty/md5/md5.cpp` and `src/3rdparty/md5/md5.h` for more information about the terms and conditions under which the code is supplied.

### The Independent JPEG Group's JPEG Software (`libjpeg`)

This package contains C software to implement JPEG image compression and decompression. JPEG (pronounced "jay-peg") is a standardized compression method for full-color and gray-scale images. JPEG is intended for compressing "real-world" scenes; line drawings, cartoons and other non-realistic images are not its strong suit. JPEG is lossy, meaning that the output image is not exactly identical to the input image. -- quoted from `src/3rdparty/libjpeg/README`.

See `src/3rdparty/libjpeg/README` for license details.

### MNG Library (`libmng`)

The libmng library supports decoding, displaying, encoding, and various other manipulations of the Multiple-image Network Graphics (MNG) format image files. It uses the zlib compression library, and optionally the JPEG library by the Independant JPEG Group (IJG) and/or lcms (little cms), a color-management library by Marti Maria Saguer. -- quoted from `src/3rdparty/libmng/doc/libmng.txt`

See `src/3rdparty/libmng/LICENSE` for license details.

### PNG Reference Library (`libpng`)

Libpng was written as a companion to the PNG specification, as a way of reducing the amount of time and effort it takes to support the PNG file format in application programs. -- quoted from `src/3rdparty/libpng/libpng.txt`.

See `src/3rdparty/libpng/LICENSE` for license details.

### TIFF Software Distribution (`libtiff`)

libtiff is a set of C functions (a library) that support the manipulation of TIFF image files. -- quoted from `src/libtiff/html/libtiff.html`

See `src/3rdparty/libtiff/COPYRIGHT` for license details.

### SQLite (`sqlite`)

SQLite is a small C library that implements a self-contained, embeddable, zero-configuration SQL database engine. -- quoted from www.sqlite.org.

According to the comments in the source files, the code is in the public domain. See the SQLite Copyright page on the SQLite web site for further information.

### Wintab API (`wintab`)

Wintab is a de facto API for pointing devices on Windows. The wintab code is from http://www.pointing.com/WINTAB.HTM.

See `src/3rdparty/wintab/wintab.h` for license details.

### Data Compression Library (`zlib`)

zlib is a general purpose data compression library. All the code is thread safe. The data format used by the zlib library is described by RFCs (Request for Comments) 1950 to 1952 -- quoted from `src/3rdparty/zlib/README`.

See `src/3rdparty/zlib/README` for license details.