[Rd] updated R-cairo bridge, official R-3.1.*-mavericks.pkg crippled, snpMatrix

Hin-Tak Leung htl10 at users.sourceforge.net
Wed Jan 21 01:40:22 CET 2015

R.framework-Versions-Resources-library-grDevices-libs-cairo_20150120.tgz in
are dropped in replacement to the cairo.so's in the official R binaries (2.15.3, 3.0.3, 3.1.2).

updated to cairo-1.12.18 and freetype-2.5.4. The official R binaries' were
built with early freetype 2.4.x and cairo 1.11(?) and had a number of issues
with some windows and mac system fonts; also the one in the official binaries
were built with a freetype that's built differently from apple's and
and therefore can interfere with other GUI applications' use of dfonts on Mac OS X. (that
unfortunately means the most common typefaces like Time and Helvetica!).

While doing that, I found that the official R-3.1.*-mavericks.pkg are crippled, compared
to R-3.1.*-snowleopard.pkg. They have tiff functionality missing. Here are the sizes of
the official binaries':

3918832 ./R-3.1.2-snowleopard/R.framework/Versions/3.1/Resources/library/grDevices/libs/cairo.so
3778144 ./R-3.0.3/R.framework/Versions/3.0/Resources/library/grDevices/libs/cairo.so
3170596 ./R-3.1.2-mavericks/R.framework/Versions/3.1/Resources/library/grDevices/libs/cairo.so
3252656 ./R-2.15.3/R.framework/Versions/2.15/Resources/library/grDevices/libs/i386/cairo.so
3539992 ./R-2.15.3/R.framework/Versions/2.15/Resources/library/grDevices/libs/x86_64/cairo.so

"R-3.1.2-mavericks/R.framework/Versions/3.1/Resources/library/grDevices/libs/cairo.so" is so much smaller,
not because it is built with a better and newer compiler, but because tiff functionality is

The official R-3.1.*-mavericks.pkg is about 14MB smaller than
R-3.1.*-snowleopard.pkg (from 55MB-ish to 70MB-ish). Looking carefully, the size differently did
not come from better compilation - it is in 3 unrelated areas, one of the problematic:

- the snowleopard builds come the manuals in pdf's, mavericks don't. That's about 14MB.
- a few bundled gcc runtime libraries (libgcc/libfortran...) are quad arch in the former, and biarch in the latter.
  That's another 6 MB.
- the missing tiff functionality. That affects both R_X11.so and cairo.so, and add up to about 1.5MB.

And the 18-20MB difference compress down to 14MB.

I don't know whether it actually offers any speed advantage, but I'd probably suggest stay away from
the official mavericks builds, just because of missing functionality. It is missing from all of R 3.1.0, 3.1.1, and 3.1.2.

The next thing I am doing is building the replacement for the cairo.dll's in the offical R windows binaries.
Just watch out in the next few days in the same directory.

---------- not R-devel related below this point ------

I have finished with snpMatrix 5 days ago. Some of you may notice the documentations
are already out - 19 months about 400 commit since, it comes with a snpStats compatibility
mode; when that mode is on, about 1/3 of its internals are swapped to their snpStats-equivalent
versions. Initially synchronized to snpStats x.x.x.8 - and I already mentioned that it is because of another
GLM related bug, found on top of x.x.x.7. Sigh.

snpMatrix and snpStats x.x.x.8 are now really just waiting for me to finish with the cairo
stuff (for R 3.1.x). The impatient can just read the new vignettes.

More information about the R-devel mailing list