aboutsummaryrefslogtreecommitdiff
path: root/README.chromium
blob: a4431d8043a239fc73cb7244f147191120614b82 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Name: libjpeg-turbo
URL: http://sourceforge.net/projects/libjpeg-turbo/
Version: 1.3.1
License: Custom license
License File: LICENSE.txt
Security Critical: yes
License Android Compatible: yes

Description:
This consists of the components:
* A partial copy of libjpeg-turbo 1.3.1 (r1219);
* Revision r1188 cherry-picked from upstream trunk into config.h;
* Revision r1220 cherry-picked from upstream trunk into jchuff.c;
* Revisions r1108, r1109, r1333, r1375, r1386, r1389 and r1390 cherry-picked
  from upstream trunk for Arm64;
* A build file (libjpeg.gyp), and;
* Patched header files used by Chromium.

This libjpeg-turbo can replace our libjpeg-6b without any modifications in the
Chromium code.

Same as our copy of libjpeg-6b, this libjpeg-turbo also added a new file
jpeglibmangler.h and included it from jpeglib.h that changes the names of all
externally visible functions to chromium_* so that we can avoid conflicts that
arise when system libraries attempt to use our libjpeg. Also, we applied the
following changes which are not merged to upstream:

* Added the 'private_extern' flags on Mac (or the 'hidden' flags on Linux) to
  all the global symbols in '.asm' files to prevent making them external ones.
* Supported motion-JPEG frames that do not have DHT markers.
* Removed .func / .endfunc lines from arm assembly
  ( https://sourceforge.net/p/libjpeg-turbo/bugs/72/ , landed at
  https://sourceforge.net/p/libjpeg-turbo/code/1375 ).

The 'google.patch' file represents our changes from the original
libjpeg-turbo-1.2.