The initial port of Android's extensions to the current libjpeg-turbo codebase is complete.
With Chao Yang's help we've validated using both the Linaro Android LEB panda as well as CyanogenMod 7 on the Nook. (I'd validate on my Nexus One too but I'm short of microSD cards)
It runs, image encode and decode tests pass and use of the library by android components such as the browser and skia appears to be fine with no issues. The past bugs seen with the 1.1.1 based proof of concept are gone.
The code can currently be found in git at:
http://git.linaro.org/gitweb?p=people/tomgall/libjpeg-turbo/libjpeg-turbo.gi...
from the 1.2-beta-linaro-andoid branch.
Be sure to read the ANDROID.txt file for build instructions. This branch is SPECIFICALLY for android. It's not a wise idea (yet) to take these contents and use for a traditional linux system (tho I have also tested on linux with the extensions compiled in, I have not yet tested with all the extensions turned off to make sure a pre android build and a post android build without android support on are equal)
As soon as sourceforge sends me an email so I can confirm my account there, I'll get a patch posted to the libjpeg-turbo patch tracker for review. I anticipate there will be a comment or two and some slight rework here and there but generally speaking the code should be in good shape.
I have not yet started to do performance comparisons between the old jpeg and libjpeg-turbo on android. That needs to be done.
Further neon hardware support is assumed, likely there will be a patch to enable / disable optimization that counts on neon.
Also from the android extensions, support for ash and one optimization for armv6 was not included. Both however are reasonable optimizations and I can see including them at a future date.
I would include a pointer to the original android jpeg source but android.git.kernel.org is still down.