June 11, 2010

www-client/chromium dev channel bump to 6.0.427.0

As promised, the www-client/chromium ebuild has been bumped to 6.0.427.0, the most recent dev channel release. What's the extra improvement?

Well, we've been trying to use the system libraries since the beginning. However, if the bundled copies are still there, how can we be sure that they are really not used? Generally by looking at the build scripts we can most often tell that the code won't be compiled, but how about the headers? It wouldn't be nice to get some header mismatch or other bad things.

Anyway, in this bump we completely remove the bundled libraries. The ebuild removes every single file, except a chromium-specific .gyp file which is used to generate the makefiles. It looks like this during emerge:


>>> Preparing source in /var/tmp/portage/www-client/chromium-6.0.427.0/work/chromium-6.0.427.0 ...
 * Applying chromium-disable-vp8-r1.patch ...         [ ok ]
 * Applying chromium-gyp-fixes-r1.patch ...           [ ok ]
 * Removing bundled library third_party/bzip2 ...
 * Removing bundled library third_party/libevent ...
 * Removing bundled library third_party/libjpeg ...
 * Removing bundled library third_party/libpng ...
 * Removing bundled library third_party/libxml ...
 * Removing bundled library third_party/libxslt ...
>>> Source prepared.

As you can see, quite a lot of things gets removed. Unfortunately, some of them are still bundled. For example, we use system-provided zlib, but can't remove third_party/zlib due to bundled (and used) minizip library. We use bundled sqlite, hunspell, and icu. They are modified by upstream, so it's a bit more complicated. I hope that at some point we will use the system-provided versions of these libraries, and I'm going to do some work to make it happen. Please be patient. :)