mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-11 08:13:35 +00:00
110 lines
3.5 KiB
Plaintext
110 lines
3.5 KiB
Plaintext
To upgrade to a new revision of libjpeg-turbo, do the following:
|
|
|
|
* Check out libjpeg-turbo from SVN:
|
|
|
|
$ svn co https://libjpeg-turbo.svn.sourceforge.net/svnroot/libjpeg-turbo/trunk libjpeg-turbo
|
|
|
|
* In a clean clone of mozilla-central, run the following commands
|
|
|
|
$ rm -rf media/libjpeg
|
|
$ svn export --ignore-externals /path/to/libjpeg-turbo media/libjpeg
|
|
$ cd media/libjpeg
|
|
|
|
* Copy win/jsimdcfg.inc to simd/.
|
|
|
|
* Since libjpeg-turbo normally creates config.h and jconfig.h at build time and
|
|
we use pre-generated versions, changes to jconfig.h.in and win/config.h.in
|
|
should be looked for and noted for later inclusion.
|
|
|
|
* Now look through the new files and rm any which are npotb. When I upgraded
|
|
to libjpeg-turbo 1.1.0, the only files I kept which didn't match
|
|
|
|
*.c *.h *.asm *.inc
|
|
|
|
were README and README-turbo.
|
|
|
|
You can easily look for all non *.c, *.h, *.asm, and *.inc files by running
|
|
|
|
$ hg status -nu | grep -v '\(c\|h\|asm\|inc\)$'
|
|
|
|
Once you're comfortable that you're only deleting files you want to delete
|
|
(and you've hg add'ed the files you want to keep), you can nuke the remaining
|
|
files with
|
|
|
|
$ hg status -nu | grep -v '\(c\|h\|asm\|inc\)$' | xargs rm
|
|
|
|
A helpful command for finding the *.c files which aren't *currently* part of
|
|
the build is
|
|
|
|
diff <(ls *.c | sort) <(grep -o '\w*\.c' Makefile.in | sort)
|
|
|
|
Of course, libjpeg-turbo might have added some new source files, so you'll
|
|
have to look though and figure out which of these files to keep.
|
|
|
|
* Restore files modified in the Mozilla repository.
|
|
|
|
$ hg revert --no-backup config.h jconfig.h Makefile.in MOZCHANGES \
|
|
mozilla.diff simd/Makefile.in genTables.py
|
|
|
|
* Update config.h and jconfig.h as noted previously.
|
|
|
|
* Apply Mozilla-specific changes to upstream files.
|
|
|
|
$ patch -p0 -i mozilla.diff
|
|
|
|
* Update Makefile.in to build any new files.
|
|
|
|
* Finally, tell hg that we've added or removed some files:
|
|
|
|
$ hg addremove
|
|
|
|
== December 12, 2012 ==
|
|
|
|
* Replace the runtime computed jpeg_nbits_table with constants in
|
|
jpeg_nbits_table.h to make it shareable among processes. (bug 815473)
|
|
|
|
== October 13, 2012 ==
|
|
|
|
* Modified config.h to use MOZ_ALWAYS_INLINE (bug 800106).
|
|
|
|
== July 4, 2012 (libjpeg-turbo v1.2.1 r853 2012-06-30) ==
|
|
|
|
* Updated to v1.2.1 stable release.
|
|
|
|
== June 5, 2012 (libjpeg-turbo v1.2.x branch, r831 2012-05-30) ==
|
|
|
|
* Updated to latest version on v1.2.x branch (bug 759891).
|
|
|
|
== February 10, 2012 (libjpeg-turbo v1.2.0 r807 2012-02-10) ==
|
|
|
|
* Imported jchuff.c, jdhuff.c, jdhuff.h under new licensing.
|
|
|
|
* Created mozilla.diff for the required jmorecfg.h changes and to allow for any
|
|
future changes made by Mozilla to upstream files.
|
|
|
|
* Removed the following files which are unused by the Mozilla build:
|
|
|
|
cderror.h, cdjpeg.h, jconfig.h.in, transupp.h, simd/jsimdcfg.inc.h
|
|
|
|
|
|
== March 28, 2011 (initial commit, libjpeg-turbo v1.1.0 r469 2011-02-27) ==
|
|
|
|
* Modified jmorecfg.h to define UINT8, UINT16, INT16, and INT32 in terms of
|
|
prtypes to fix a build error on Windows.
|
|
|
|
* Defined INLINE as NS_ALWAYS_INLINE in jconfig.h.
|
|
|
|
* Removed the following files which are licensed under the wxWindows license:
|
|
|
|
bmp.c, bmp.h, jpegut.c, jpgtest.cxx, rrtimer.h, rrutil.h, turbojpeg.h,
|
|
turbojpegl.c
|
|
|
|
* Reverted the following files to what was previously in Mozilla's tree
|
|
(nominally libjpeg 6.2):
|
|
|
|
jchuff.c, jdhuff.c, jdhuff.h
|
|
|
|
since the versions of these files in libjpeg-turbo are also under the
|
|
wxWindows license. (It would have been nicer to revert them to the new
|
|
libjpeg-8b code, but that doesn't easily integrate with libjpeg-turbo.)
|