In cairo, implicit depenencies on librsvg2 and/or poppler?

Joe Marcus Clarke marcus at marcuscom.com
Thu Dec 27 11:11:55 PST 2007


Doug Barton wrote:
> On Wed, 26 Dec 2007, Joe Marcus Clarke wrote:
> 
>>
>> On Wed, 2007-12-26 at 13:31 -0800, Doug Barton wrote:
>>> I was doing some stale ports cleanup recently and deleted a bunch of
>>> stuff that didn't seem to be needed, including librsvg2 and poppler.
>>> Deleting the former caused several of my applications to no longer be
>>> able to display svg images. I tracked the problem down to the missing
>>> librsvg2 of course, but only after carefully watching the configure
>>> output of cairo and noticing that it gave a "can't use svg 'cuz you
>>> don't have librsvg2" type message. It gives a similar message for
>>> poppler, but AFAIK I don't actually need that.
>>>
>>> So, short version is that you might want to add OPTIONS for those two
>>> libs, and related explicit dependencies for them in the cairo Makefile.
>>
>> Actually, it's not so simple.  I assume the apps that could no longer
>> display SVG images were GTK+ apps.
> 
> That's where it got interesting. Some of them were GTK, yes. But,
> firefox could still render SVG just fine without librsvg2 installed. Weird.

Firefox has its own SVG library.

> 
>> If so, they get the ability to render SVG images from the SVG GDK
>> image loader installed by librsvg2
>> (/usr/local/lib/gtk-2.0/2.10.0/loaders/svg_loader.so).  This is a
>> dlopen'd library, and thus is not really a hard dependency.  It's more
>> along the lines of, "if you want this functionality, install this port."
> 
> Right, which is why I suggested that it be made an OPTION. :)

Still becomes a problem because of recursive dependencies.

> 
>> Neither gtk20 or cairo can depend on librsvg2, though, or we'd have a
>> circular dependency (as librsvg2 needs gtk20 and gtk20 needs cairo).
> 
> I don't see the dependency on cairo in gtk20 or glib20, where does it
> come in?

It gets it from pango.

Joe

-- 
PGP Key : http://www.marcuscom.com/pgp.asc


More information about the freebsd-gnome mailing list