Hi all,

I need to use libjpeg-turbo for some apps that rely on specific libjpeg-turbo extensions that are not available in the standard (IJG's) libjpeg library. So I started to create a set of ptxdist rules for libjpeg-turbo.

libjpeg-turbo is supposed to provide a drop-in replacement for the standard IJG's libjpeg, and in fact many Linux distributions have already switched to it. So most packages that currently depend on LIBJPEG should be able to use libjpeg-turbo as well without any changes.

Example: gst-plugins-good1.in currently does the following:

select LIBJPEG if GST_PLUGINS_GOOD1_JPEG

However, gst-plugins-good1 should work just fine with libjpeg-turbo as well. In fact the upstream gst-plugins already switched to libjpeg-turbo some time ago (see the Cerbero scripts)

So, what is the recommended way to approach this in ptxdist? I can imagine some options:

1. Provide a separate set of .in/.make files for libjpeg-turbo and a separate LIBJPEG_TURBO package. So new packages that want to use libjpeg-turbo would need to explicitly select LIBJPEG_TURBO (instead of LIBJPEG). But this means that packages that currently use libjpeg would not be able to benefit from the performance improvements in libjpeg-turbo. Also I am not sure whether these two libraries (libjpeg and libjpeg-turbo) can actually coexist in the same system.

2. Modify the LIBJPEG rules to provide an option to select between the standard (IJG) libjpeg, or libjpeg-turbo. This would be similar to what is done in alsa.in/alsa.make to select between the "full" and "light" versions of the library.

3. Other?

Thank you,

Guillermo Rodriguez Garcia
guille.rodriguez@gmail.com