On 10/24/07, Jonas Karlsson <[EMAIL PROTECTED]> wrote:
> 2007/10/24, Hisham Muhammad <[EMAIL PROTECTED]>:
> > On 10/22/07, Jonas Karlsson <[EMAIL PROTECTED]> wrote:
> > > I've just realized that my recent commits created (at least) one new
> > > dependency loop: GTK+ -> Cairo -> LibRSVG -> GTK+
> > > How shold we handle these loops? By declaring LibRSVG as optional
> > > dependency for Cairo we can weaken the loop, but since we don't
> > > support such flags yet...
> > > The problem exists primarily for Freshen and cyclic graphs, but
> > > there's a problem with Compile as one have to bulid in the right order
> > > (and rebuild Cairo once LibRSVG is built). It's only a annoyance with
> > > InstallPackage as the user will get the same question twice.
> > > How should we handle these cyclic dependencies?
> >
> > Is it really necessary for Cairo to depend on LibRSVG?
> > http://www.linuxfromscratch.org/blfs/view/svn/general/librsvg.html
> > http://www.linuxfromscratch.org/blfs/view/svn/x/gtk2.html
> > http://www.linuxfromscratch.org/blfs/view/svn/x/cairo.html
> >
> No, it's an optional dependency. I guess we can drop it in the
> meantime (while looking for a solution), but I do think we should
> consider find a solution as this problem may occur again (I know that
> we already have this problem with Xorg <-> DBus).

It seems to me that breaking cycles can be done by either (a) marking
one of the links of the chain as an optional dep, hence allowing it to
be broken at the expense of some less-important functionality; (b)
improving the distinction between types of dependencies (such as the
runtime-only dependency for HAL-Info mentioned in the other email);
(c) breaking packages apart when they contain a core part and a
frontend part with different dependencies AND cause a cycle (in
keeping with our policy of not breaking apart upstream packages just
for modularity's sake).

-- Hisham
_______________________________________________
gobolinux-devel mailing list
gobolinux-devel@lists.gobolinux.org
http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel

Reply via email to