From Fedora Project Wiki
Line 30: Line 30:
All packages which require libjpeg.so need to be rebuilt against new library. jpeg8 API is mostly compatible with the current jpeg6 API so there shouln't be any issues with porting. jpeg6->jpeg8 transition will have four steps:
All packages which require libjpeg.so need to be rebuilt against new library. jpeg8 API is mostly compatible with the current jpeg6 API so there shouln't be any issues with porting. jpeg6->jpeg8 transition will have four steps:


1. Creation of the libjpeg-turbo-compat library which will contain current libjpeg.so.62 library to avoid breakages in distro
1. Creation of the libjpeg-turbo-compat library which will contain current jpeg6 library


2. libjpeg-turbo and libjpeg-turbo-devel will be built with jpeg8 API/ABI
2. libjpeg-turbo and libjpeg-turbo-devel will be built with jpeg8 API/ABI


3. Rebuild of all dependent pkgs
3. Rebuild of all dependent pkgs
4. Removal of the libjpeg-turbo-compat library


== How To Test ==
== How To Test ==

Revision as of 07:20, 22 October 2012

libjpeg-turbo jpeg8 ABI

Summary

Build and ship libjpeg-turbo with libjpeg8 compatible API/ABI. Currently we ship libjpeg-turbo with libjpeg6 compatible API/ABI.

Owner

  • Email: atkac@redhat.com

Current status

  • Targeted release: Fedora 19
  • Last updated: 18-Oct-2012
  • Percentage of completion: 00%


Detailed Description

Benefit to Fedora

Since other distributions slowly adopts libjpeg8 API/ABI as well, it's logical step. Also some projects support only libjpeg8 API/ABI (check https://bugzilla.redhat.com/show_bug.cgi?id=854695 for example).

Scope

All packages which require libjpeg.so need to be rebuilt against new library. jpeg8 API is mostly compatible with the current jpeg6 API so there shouln't be any issues with porting. jpeg6->jpeg8 transition will have four steps:

1. Creation of the libjpeg-turbo-compat library which will contain current jpeg6 library

2. libjpeg-turbo and libjpeg-turbo-devel will be built with jpeg8 API/ABI

3. Rebuild of all dependent pkgs

How To Test

1. All packages which depends on libjpeg-turbo should be rebuilt successfully

2. Basic testing of mostly used apps should be sufficient (firefox, your favorite image viewer etc)

User Experience

Users will have to be able run apps which require libjpeg >= 8.

Dependencies

Many pkgs depend (currently 269) check them via:

1. repoquery --enablerepo fedora-source --alldeps --archlist=src --whatrequires libjpeg-devel

2. repoquery --enablerepo fedora-source --alldeps --archlist=src --whatrequires libjpeg-turbo-devel

Contingency Plan

Create libjpeg-turbo-compat and libjpeg-turbo-compat-devel libraries with jpeg6 API/ABI and ship them in distro.

Documentation

  • TBD

Release Notes

  • TBD

Comments and Discussion