Date: Thu, 27 Dec 2007 13:30:05 -0600 From: "Jeremy Messenger" <mezz7@cox.net> To: "Doug Barton" <dougb@freebsd.org> Cc: gnome@freebsd.org Subject: Re: In cairo, implicit depenencies on librsvg2 and/or poppler? Message-ID: <op.t30dsfa39aq2h7@mezz.mezzweb.com> In-Reply-To: <alpine.BSF.1.00.0712271059320.878@ync.qbhto.arg> References: <4772C814.6000302@FreeBSD.org> <1198709162.11242.8.camel@shumai.marcuscom.com> <alpine.BSF.1.00.0712271059320.878@ync.qbhto.arg>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 27 Dec 2007 13:09:17 -0600, Doug Barton <dougb@FreeBSD.org> 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. > >> 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. :) Users enable that OPTIONS will getting the circular dependency. ;-) I never noticed Deluge port required librsvg2 for weeks until someone installed Deluge in lightweight desktop. All of this is just because of deluge.svg, that's it. There is no info of dependency. I hate when it happens. I have fixed Deluge port by add librsvg2 dependency, so if one of port that you have installed have SVG file or whatever then this port need to add librsvg2 dependency. But if this port has no SVG file and is a image viewer or graphic editor application, then user will have to install librsvg2 on their own or you can add an OPTION for that to show users that it is need for SVG file. Cheers, Mezz >> 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? > > Doug -- mezz7@cox.net - mezz@FreeBSD.org FreeBSD GNOME Team - FreeBSD Multimedia Hat (ports, not src) http://www.FreeBSD.org/gnome/ - gnome@FreeBSD.org http://wiki.freebsd.org/multimedia - multimedia@FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?op.t30dsfa39aq2h7>