libjpeg-turbo jpeg8 ABI
Summary
NOTE: We are currently discussing with upstream if we should include jpeg8 API/ABI or we should rather stay with former jpeg6 API/ABI. So this feature can be dropped
Build and ship libjpeg-turbo with libjpeg8 compatible API/ABI. Currently we ship libjpeg-turbo with libjpeg6 compatible API/ABI.
Owner
- Name: Adam Tkac
- Email: atkac redhat com
Current status
- Targeted release: Fedora 19
- Last updated: 18-Oct-2012
- Percentage of completion: 95%
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
Build libjpeg-turbo with jpeg6 API/ABI as now.
Documentation
Release Notes
- The libjpeg-turbo API/ABI, which is used as the main libjpeg library, has been updated to match the latest jpeg8 API/ABI. Backward compatible libjpeg library is now shipped in libjpeg-turbo-compat and libjpeg-turbo-compat-devel packages.