The source archive already has the following patches applied:
The lossless jpeg patch ljpeg-6b.tar.gz and the
  cygwin-specific patch jpeg-6b-X.patch.

To remove and revert to a 'clean' jpeg-6b:
  mv <jpegtop>/CYGWIN-PATCHES/jpeg-6b-X.patch <jpegtop>/..
  mv <jpegtop>/CYGWIN-PATCHES/ljpeg-6b.tar.gz <jpegtop>/..
  cd <jpegtop>
  patch -p1 -R < ../jpeg-6b-X.patch
  patch -R < ljpeg-6b.patch
  rm testimgl.jpg
  rm testimgl.ppm
  rm ljpeg-6b.patch
  
------------------

Requirements:
  gcc-2.95.2-2 or later
       this was released around June 19, 2000. The jpeg makefile uses
       new gcc switches and features introduced at that time) 
  binutils-20000722-1 or later 
       this was released around July 27, 2000. The jpeg makefile uses
       new ld switches and features introduced in that binutils release)

Direct Dependencies:
  none

Canonical homepage:
http://www.ijg.org/

Canonical download:
ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz

Convenient download:
ftp://ftp.simplesystems.org/pub/ImageMagick/delegates/jpegsrc.v6b.tar.gz

Lossless jpeg patch, download:
ftp://ftp.simplesystems.org/pub/ImageMagick/delegates/ljpeg-6b.tar.gz

------------------

To link this library with your projects:
  #1) include jpeglib.h
  #2) to link with the static library, use '-static' on the link line and
      use '-DJPEG_STATIC' when compiling your .c into a .o
      You may also use '-DALL_STATIC' as a synonym for '-DJPEG_STATIC'
  #3) to link with the dll compile and link as usual; no special flags
      or -Ddefines are necessary

See the makefile and inspect how cjpeg.exe, djpeg.exe, and jpegtran.exe
are built (with the dll), and how cjpeg-stat.exe, djpeg-stat.exe, and
jpegtran-stat.exe are built (with the static lib).

------------------

To build the library for cygwin: 

unpack jpeg-6b-X-src.tar.gz
cd jpeg-6b
./configure --prefix=/usr
make
make test
make install

This will build both a static lib and a dll with an import library.
It will also build and run the tests using both versions of the
library, so you will see two identical outputs when running 'make test'

------------------

Files included in the binary distro

  <prefix>/usr/include/jconfig.h
  <prefix>/usr/include/jpeglib.h
  <prefix>/usr/include/jmorecfg.h
  <prefix>/usr/include/jerror.h
  <prefix>/usr/lib/libjpeg.a
  <prefix>/usr/lib/libjpeg.dll.a
  <prefix>/usr/bin/cygjpeg6b.dll
  <prefix>/usr/bin/cjpeg.exe
  <prefix>/usr/bin/djpeg.exe
  <prefix>/usr/bin/jpegtran.exe
  <prefix>/usr/bin/rdjpgcom.exe
  <prefix>/usr/bin/wrjpgcom.exe
  <prefix>/usr/man/man1/cjpeg.1
  <prefix>/usr/man/man1/djpeg.1
  <prefix>/usr/man/man1/jpegtran.1
  <prefix>/usr/man/man1/rdjpgcom.1
  <prefix>/usr/man/man1/wrjpgcom.1
  <prefix>/usr/doc/jpeg-6b/coderules.doc
  <prefix>/usr/doc/jpeg-6b/filelist.doc
  <prefix>/usr/doc/jpeg-6b/install.doc
  <prefix>/usr/doc/jpeg-6b/jconfig.doc
  <prefix>/usr/doc/jpeg-6b/libjpeg.doc
  <prefix>/usr/doc/jpeg-6b/structure.doc
  <prefix>/usr/doc/jpeg-6b/usage.doc
  <prefix>/usr/doc/jpeg-6b/wizard.doc
  <prefix>/usr/doc/Cygwin/jpeg-6b.README (this file)

------------------

Port Notes:

As of 6b-3, the dll is named "cygjpeg6b.dll" NOT "libjpeg.dll".  This 
  helps to avoid dll naming conflicts between cygwin dll's and 
  dlls from other platforms (native, pw, etc).  If you have an
  executable that depends on "libjpeg.dll" you may either recompile 
  your app so that it links with libjpeg.dll.a/cygjpeg6b.dll, or install
  *just* the dll from jpeg-6b-2.tar.gz into your /usr/bin 
  directory.

The dll is VERSIONED. (i.e. "cygjpeg6b.dll" NOT "cygjpeg.dll") because
  there are rumors that libjpeg-6c is on its way out.  Worse, the
  API between minor releases (e.g. 6a to 6b) changed, so I imagine
  it will change again between 6b and 6c.   To enable the upcoming
  version and this one to coexist, the dll's are versioned.
  (Versioning is not necessary for static libs until AFTER the
  release of an incompatible library, but you've got to think ahead
  for the dynamic libs). 

Since the ABI/API changes between even minor release for libjpeg,
  we must use the entire "6b" string as the version tag, instead 
  of just "6".

Cygwin port maintained by: Charles Wilson cwilson@ece.gatech.edu
