Skip to content

Commit d96a4da

Browse files
committed
Update to JPEG 8c.
1 parent 2e5df48 commit d96a4da

16 files changed

+433
-277
lines changed

jpeg/Dependencies

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# DO NOT DELETE
2+
3+
jaricom.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
4+
jcapimin.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
5+
jcapistd.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
6+
jcarith.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
7+
jccoefct.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
8+
jccolor.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
9+
jcdctmgr.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
10+
jcdctmgr.o: jdct.h
11+
jchuff.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
12+
jcinit.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
13+
jcmainct.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
14+
jcmarker.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
15+
jcmaster.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
16+
jcomapi.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
17+
jcparam.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
18+
jcprepct.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
19+
jcsample.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
20+
jctrans.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
21+
jdapimin.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
22+
jdapistd.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
23+
jdarith.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
24+
jdatadst.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
25+
jdatasrc.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
26+
jdcoefct.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
27+
jdcolor.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
28+
jddctmgr.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
29+
jddctmgr.o: jdct.h
30+
jdhuff.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
31+
jdinput.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
32+
jdmainct.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
33+
jdmarker.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
34+
jdmaster.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
35+
jdmerge.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
36+
jdpostct.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
37+
jdsample.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
38+
jdtrans.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
39+
jerror.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
40+
jerror.o: jversion.h
41+
jfdctflt.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
42+
jfdctflt.o: jdct.h
43+
jfdctfst.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
44+
jfdctfst.o: jdct.h
45+
jfdctint.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
46+
jfdctint.o: jdct.h
47+
jidctflt.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
48+
jidctflt.o: jdct.h
49+
jidctfst.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
50+
jidctfst.o: jdct.h
51+
jidctint.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
52+
jidctint.o: jdct.h
53+
jmemmgr.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
54+
jmemmgr.o: jmemsys.h
55+
jmemnobs.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
56+
jmemnobs.o: jmemsys.h
57+
jquant1.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
58+
jquant2.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h
59+
jutils.o: jinclude.h jconfig.h jpeglib.h jmorecfg.h jpegint.h jerror.h

jpeg/Makefile

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
#
22
# "$Id$"
33
#
4-
# JPEG library Makefile for the HTMLDOC software.
4+
# JPEG library Makefile for the HTMLDOC software.
55
#
6-
# Copyright 2011 by Michael R Sweet.
7-
# Copyright 1997-2010 by Easy Software Products.
6+
# Copyright 2011 by Michael R Sweet.
7+
# Copyright 1997-2010 by Easy Software Products.
88
#
9-
# This program is free software. Distribution and use rights are outlined in
10-
# the file "COPYING.txt".
9+
# This program is free software. Distribution and use rights are outlined in
10+
# the file "COPYING.txt".
1111
#
1212

1313
include ../Makedefs
@@ -71,6 +71,7 @@ OBJS = \
7171

7272
all: libjpeg.a
7373

74+
7475
#
7576
# Clean all targets and object files...
7677
#
@@ -79,6 +80,15 @@ clean:
7980
$(RM) $(OBJS)
8081
$(RM) libjpeg.a
8182

83+
84+
#
85+
# Update dependencies...
86+
#
87+
88+
depend:
89+
makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
90+
91+
8292
#
8393
# libjpeg.a
8494
#
@@ -89,8 +99,9 @@ libjpeg.a: $(OBJS)
8999
$(AR) $(ARFLAGS) $@ $(OBJS)
90100
$(RANLIB) $@
91101

92-
$(OBJS): jdct.h jerror.h jinclude.h jmemsys.h \
93-
jmorecfg.h jpegint.h jpeglib.h jversion.h ../Makedefs
102+
$(OBJS): ../Makedefs
103+
include Dependencies
104+
94105

95106
#
96107
# End of "$Id$".

jpeg/README

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
The Independent JPEG Group's JPEG software
22
==========================================
33

4-
README for release 8a of 28-Feb-2010
4+
README for release 8c of 16-Jan-2011
55
====================================
66

77
This distribution contains the eighth public release of the Independent JPEG
@@ -114,7 +114,7 @@ with respect to this software, its quality, accuracy, merchantability, or
114114
fitness for a particular purpose. This software is provided "AS IS", and you,
115115
its user, assume the entire risk as to its quality and accuracy.
116116

117-
This software is copyright (C) 1991-2010, Thomas G. Lane, Guido Vollbeding.
117+
This software is copyright (C) 1991-2011, Thomas G. Lane, Guido Vollbeding.
118118
All Rights Reserved except as specified below.
119119

120120
Permission is hereby granted to use, copy, modify, and distribute this
@@ -254,8 +254,8 @@ ARCHIVE LOCATIONS
254254
The "official" archive site for this software is www.ijg.org.
255255
The most recent released version can always be found there in
256256
directory "files". This particular version will be archived as
257-
http://www.ijg.org/files/jpegsrc.v8a.tar.gz, and in Windows-compatible
258-
"zip" archive format as http://www.ijg.org/files/jpegsr8a.zip.
257+
http://www.ijg.org/files/jpegsrc.v8c.tar.gz, and in Windows-compatible
258+
"zip" archive format as http://www.ijg.org/files/jpegsr8c.zip.
259259

260260
The JPEG FAQ (Frequently Asked Questions) article is a source of some
261261
general information about JPEG.
@@ -285,7 +285,8 @@ Thank to John Korejwa and Massimo Ballerini for inviting me to
285285
fruitful consultations in Boston, MA and Milan, Italy.
286286

287287
Thank to Hendrik Elstner, Roland Fassauer, Simone Zuck, Guenther
288-
Maier-Gerber, and Walter Stoeber for corresponding business development.
288+
Maier-Gerber, Walter Stoeber, Fred Schmitz, and Norbert Braunagel
289+
for corresponding business development.
289290

290291
Thank to Nico Zschach and Dirk Stelling of the technical support team
291292
at the Digital Images company in Halle for providing me with extra

jpeg/change.log

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,30 @@
11
CHANGE LOG for Independent JPEG Group's JPEG software
22

33

4+
Version 8c 16-Jan-2011
5+
-----------------------
6+
7+
Add option to compression library and cjpeg (-block N) to use
8+
different DCT block size.
9+
All N from 1 to 16 are possible. Default is 8 (baseline format).
10+
Larger values produce higher compression,
11+
smaller values produce higher quality.
12+
SmartScale capable decoder (introduced with IJG JPEG 8) required.
13+
14+
15+
Version 8b 16-May-2010
16+
-----------------------
17+
18+
Repair problem in new memory source manager with corrupt JPEG data.
19+
Thank to Ted Campbell and Samuel Chun for the report.
20+
21+
Repair problem in Makefile.am test target.
22+
Thank to anonymous user for the report.
23+
24+
Support MinGW installation with automatic configure.
25+
Thank to Volker Grabsch for the suggestion.
26+
27+
428
Version 8a 28-Feb-2010
529
-----------------------
630

jpeg/install.txt

Lines changed: 39 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
INSTALLATION INSTRUCTIONS for the Independent JPEG Group's JPEG software
22

3-
Copyright (C) 1991-2009, Thomas G. Lane, Guido Vollbeding.
3+
Copyright (C) 1991-2010, Thomas G. Lane, Guido Vollbeding.
44
This file is part of the Independent JPEG Group's software.
55
For conditions of distribution and use, see the accompanying README file.
66

@@ -149,7 +149,7 @@ makefile.mc6 jconfig.mc6 MS-DOS, Microsoft C (16-bit only)
149149
makefile.wat jconfig.wat MS-DOS, OS/2, or Windows NT, Watcom C
150150
makefile.vc jconfig.vc Windows NT/95, MS Visual C++
151151
make*.vc6 jconfig.vc Windows NT/95, MS Visual C++ 6
152-
make*.vc9 jconfig.vc Windows NT/95, MS Visual C++ 2008 (v9)
152+
make*.v10 jconfig.vc Windows NT/95, MS Visual C++ 2010 (v10)
153153
makefile.mms jconfig.vms Digital VMS, with MMS software
154154
makefile.vms jconfig.vms Digital VMS, without MMS software
155155

@@ -534,17 +534,17 @@ In general, it's worth trying the maximum optimization level of your compiler,
534534
and experimenting with any optional optimizations such as loop unrolling.
535535
(Unfortunately, far too many compilers have optimizer bugs ... be prepared to
536536
back off if the code fails self-test.) If you do any experimentation along
537-
these lines, please report the optimal settings to jpeg-info@jpegclub.org so
538-
we can mention them in future releases. Be sure to specify your machine and
539-
compiler version.
537+
these lines, please report the optimal settings to jpeg-info@uc.ag so we
538+
can mention them in future releases. Be sure to specify your machine
539+
and compiler version.
540540

541541

542542
HINTS FOR SPECIFIC SYSTEMS
543543
==========================
544544

545545
We welcome reports on changes needed for systems not mentioned here. Submit
546-
'em to jpeg-info@jpegclub.org. Also, if configure or ckconfig.c is wrong
547-
about how to configure the JPEG software for your system, please let us know.
546+
'em to jpeg-info@uc.ag. Also, if configure or ckconfig.c is wrong about how
547+
to configure the JPEG software for your system, please let us know.
548548

549549

550550
Acorn RISC OS:
@@ -998,8 +998,8 @@ model. makefile.vc is intended for command-line use. (If you are using
998998
the Developer Studio environment, you may prefer the DevStudio project
999999
files; see below.)
10001000

1001-
v7 adds extern "C" to jpeglib.h. This avoids the need to put extern "C"
1002-
{ ... } around #include "jpeglib.h" in your C++ application.
1001+
IJG JPEG 7 adds extern "C" to jpeglib.h. This avoids the need to put
1002+
extern "C" { ... } around #include "jpeglib.h" in your C++ application.
10031003
You can also force VC++ to treat the library as C++ code by renaming
10041004
all the *.c files to *.cpp (and adjusting the makefile to match).
10051005
In this case you also need to define the symbol DONT_USE_EXTERN_C in
@@ -1015,51 +1015,50 @@ as Win32 console applications. (Even if you only want the library, we
10151015
recommend building the applications so that you can run the self-test.)
10161016

10171017
To use:
1018-
1. Copy jconfig.vc to jconfig.h, makejdsw.vc6 to jpeg.dsw,
1019-
makeadsw.vc6 to apps.dsw, makejmak.vc6 to jpeg.mak,
1020-
makejdep.vc6 to jpeg.dep, makejdsp.vc6 to jpeg.dsp,
1021-
makecmak.vc6 to cjpeg.mak, makecdep.vc6 to cjpeg.dep,
1022-
makecdsp.vc6 to cjpeg.dsp, makedmak.vc6 to djpeg.mak,
1023-
makeddep.vc6 to djpeg.dep, makeddsp.vc6 to djpeg.dsp,
1024-
maketmak.vc6 to jpegtran.mak, maketdep.vc6 to jpegtran.dep,
1025-
maketdsp.vc6 to jpegtran.dsp, makermak.vc6 to rdjpgcom.mak,
1026-
makerdep.vc6 to rdjpgcom.dep, makerdsp.vc6 to rdjpgcom.dsp,
1027-
makewmak.vc6 to wrjpgcom.mak, makewdep.vc6 to wrjpgcom.dep, and
1028-
makewdsp.vc6 to wrjpgcom.dsp. (Note that the renaming is critical!)
1029-
2. Click on jpeg.dsw and apps.dsw to load the project workspaces.
1018+
1. Open the command prompt, change to the main directory and execute the
1019+
command line
1020+
NMAKE /f makefile.vc setup-vc6
1021+
This will move jconfig.vc to jconfig.h and makefiles to project files.
1022+
(Note that the renaming is critical!)
1023+
2. Open the workspace file jpeg.dsw, build the library project.
10301024
(If you are using DevStudio more recent than 6.0, you'll probably
10311025
get a message saying that the project files are being updated.)
1032-
3. Build the library project, then the applications project.
1033-
4. Move the application .exe files from `app`\Release to an
1026+
3. Open the workspace file apps.dsw, build the application projects.
1027+
4. To perform the self-test, execute the command line
1028+
NMAKE /f makefile.vc test-build
1029+
5. Move the application .exe files from `app`\Release to an
10341030
appropriate location on your path.
1035-
5. To perform the self-test, execute the command line
1036-
NMAKE /f makefile.vc test
10371031

10381032

1039-
Microsoft Windows, Microsoft Visual C++ 2008 Developer Studio (v9):
1033+
Microsoft Windows, Microsoft Visual C++ 2010 Developer Studio (v10):
10401034

10411035
We include makefiles that should work as project files in Visual Studio
1042-
2008 or later. There is a library makefile that builds the IJG library
1036+
2010 or later. There is a library makefile that builds the IJG library
10431037
as a static Win32 library, and application makefiles that build the sample
10441038
applications as Win32 console applications. (Even if you only want the
10451039
library, we recommend building the applications so that you can run the
10461040
self-test.)
10471041

10481042
To use:
1049-
1. Copy jconfig.vc to jconfig.h, makejsln.vc9 to jpeg.sln,
1050-
makeasln.vc9 to apps.sln, makejvcp.vc9 to jpeg.vcproj,
1051-
makecvcp.vc9 to cjpeg.vcproj, makedvcp.vc9 to djpeg.vcproj,
1052-
maketvcp.vc9 to jpegtran.vcproj, makervcp.vc9 to rdjpgcom.vcproj, and
1053-
makewvcp.vc9 to wrjpgcom.vcproj. (Note that the renaming is critical!)
1054-
2. Click on jpeg.sln and apps.sln to load the project solutions.
1055-
(If you are using Visual Studio more recent than 2008 (v9), you'll
1056-
probably get a message saying that the project files are being
1057-
updated.)
1058-
3. Build the library project, then the applications project.
1059-
4. Move the application .exe files from `app`\Release to an
1043+
1. Open the command prompt, change to the main directory and execute the
1044+
command line
1045+
NMAKE /f makefile.vc setup-v10
1046+
This will move jconfig.vc to jconfig.h and makefiles to project files.
1047+
(Note that the renaming is critical!)
1048+
2. Open the solution file jpeg.sln, build the library project.
1049+
(If you are using Visual Studio more recent than 2010 (v10), you'll
1050+
probably get a message saying that the project files are being updated.)
1051+
3. Open the solution file apps.sln, build the application projects.
1052+
4. To perform the self-test, execute the command line
1053+
NMAKE /f makefile.vc test-build
1054+
5. Move the application .exe files from `app`\Release to an
10601055
appropriate location on your path.
1061-
5. To perform the self-test, execute the command line
1062-
NMAKE /f makefile.vc test
1056+
1057+
Note:
1058+
There seems to be an optimization bug in the compiler which causes the
1059+
self-test to fail with the color quantization option.
1060+
We have disabled optimization for the file jquant2.c in the library
1061+
project file which causes the self-test to pass properly.
10631062

10641063

10651064
OS/2, Borland C++:

0 commit comments

Comments
 (0)