[quake3-bugzilla] [Bug 4564] Use system libjpeg instead of bundled copy (optionally)

bugzilla-daemon at icculus.org bugzilla-daemon at icculus.org
Sun Mar 13 08:42:16 EDT 2011


https://bugzilla.icculus.org/show_bug.cgi?id=4564

Thilo Schulz <arny at ats.s.bawue.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

--- Comment #22 from Thilo Schulz <arny at ats.s.bawue.de> 2011-03-12 11:45:46 EST ---
I didn't quite use your patches, though I migrated to jpeg-8c and added the
possibility to link against system libjpeg.
r1926

--- Comment #23 from Simon McVittie <smcv-ioquake3 at pseudorandom.co.uk> 2011-03-13 08:42:07 EDT ---
(In reply to comment #11)
> Looking at ldd output for Debian's ioquake3, it seems the part of SDL we link
> to doesn't actually use libjpeg, so we can probably move to libjpeg8 ahead of
> the rest of the distribution if necessary

Unfortunately, libjpeg 6b and 8 headers can't be installed at the same time
(ugh), and libsdl1.2-dev currently depends on libjpeg6b-dev, so using an
external libjpeg8 is still tricky on Debian. I'll try to get that working
again; supplying our own jpeg_mem_src (only) seems to work OK, and perhaps I
can even use the one from the bundled libjpeg8 with the rest of the system
libjpeg6b.

Did you intend to kill off greyscale support? We previously had code to convert
8-bit greyscale to 32-bit RGBA...

I now realise this could be done much more simply than my second patch though.
Pseudo-patch:

    - ... || cinfo.output_components != 3
    + ... || (cinfo.output_components != 3 && cinfo.output_components != 1)

and

    do
    {
  +   int i;
      buf[--dindex] = 255;
  -   buf[--dindex] = buf[--sindex];
  -   buf[--dindex] = buf[--sindex];
  -   buf[--dindex] = buf[--sindex];
  +   for (i = 0; i < cinfo.output_components; i++)
  +     buf[--dindex] = buf[--sindex];
    } while(sindex);

-- 
Configure bugmail: https://bugzilla.icculus.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the quake3-bugzilla mailing list