If we decide to make libjpeg a normal standard package, then I'd be +1 on 
using libjpeg-turbo. Debian also switched to it many years ago, and it only 
has to apply a small amount of patches 
(https://sources.debian.org/src/libjpeg-turbo/1%253A2.1.5-2/), which we 
could easily adopt.

On Friday, November 17, 2023 at 1:28:57 PM UTC-8 Michael Orlitzky wrote:

> On Fri, 2023-11-17 at 10:49 -0800, Marc Culler wrote:
> > I expect to receive lots of flak for saying this, but I support making 
> > libjpeg be a standard spkg using the source code from 
> > https://libjpeg.sourceforge.net. I just built version jpeg-9e on Ubuntu 
> > 18.04 and macOS 10.13. The standard ./configure ; make install method 
> > works flawlessly - not even any warnings. The build is fast and the 
> > package is small. Installing it in sage/local/lib will be simpler, 
> faster 
> > and more reliable than guessing where it might be found on any of the 
> > zillion systems that Sage runs on. Also, unlike the turbo alternatives, 
> > it does not depend on fancy features of Intel hardware which will not be 
> > available on old Intel CPUs or recent Arm CPUs.
>
> I was vague about this because I didn't want to go digging...
>
> We had to drop this from Gentoo a few years ago for several reasons.
> The first is simply that it's not actively maintained. There are
> roughly two years between versions, which isn't good enough when a new
> clang is released every few months. Where's the bug tracker? Mailing
> list? People can't quietly accept security issues or build failures for
> that long. We could work around it by backporting enough patches, but
> do we really want to maintain a sage fork of libjpeg for two years at a
> time? (Are we going to write the patches ourselves if the other distros
> quit doing it? Is any distro still shipping the IJG libjpeg?)
>
> The second is that it's no longer compatible with libjpeg-turbo, and
> that's what most people target. Chromium and Qt, for example, only
> build against libjpeg-turbo -- or at least did, back when we removed
> libjpeg. Thus if you have to pick only one and ship it to your users,
> the choice is obvious. You can't have both because they provide the
> same API. This might not be a huge problem so long as pillow and every
> other sage component support them both, but who knows what the future
> holds.
>
> The libjpeg-turbo features degrade gracefully by the way. I'm certain
> to have the oldest intel computer here, and I've been using libjpeg-
> turbo for 9+ years, as far back as my git history goes.
>
> I'm not against adding jpeg support to sage per se, I just think it's
> going to be a pain to add it to sage-the-distribution. I'm using my
> system's copy of pillow that uses my system's copy of libjpeg-turbo,
> nicely avoiding the entire problem, but only as a user.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/78a8b8e2-9202-4708-9647-346c593c7625n%40googlegroups.com.

Reply via email to