Date: Thu, 20 Jul 2006 08:19:37 -0600 From: John E Hein <jhein@timing.com> To: Chuck Swiger <cswiger@mac.com> Cc: ports@freebsd.org Subject: Re: conflicting dependency Message-ID: <17599.37113.693799.8184@gromit.timing.com> In-Reply-To: <44BF877E.70208@mac.com> References: <17598.52872.765184.211253@gromit.timing.com> <44BF877E.70208@mac.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Chuck Swiger wrote at 09:39 -0400 on Jul 20, 2006: > John E Hein wrote: > > Let's say there are two ports A & B. > > They both provide libfoo.so.1 (and so register CONFLICTS with each other). > > > > Now port C wants to use libfoo (and doesn't care if it gets it > > from A or B). > > > > What does port C list in it's LIB_DEPENDS? > > Whichever one the author of port C chooses. > > Quite often, at least for things like the BerkeleyDB, the author of port C > will provide tunable OPTIONS or WITH_ or WITHOUT_ flags that you as the user > of the port can tune to choose a particular version that you like. Just for purposes of clarification, in this example, for purposes of what C wants libfoo for, either libfoo from A or B will do. C doesn't care. > > What if it lists A and someone installs B... does A get registered as > > the dependency when C is installed even though A is not installed? > > No, the port should be registered against B and not A, if B is installed. I agree. It should. But how does the ports infrastructure accomplish that? If the porter listed A as the dependency and libfoo is already installed via B, what is the mechanism in the ports infrastructure by which B gets registered as the dependency? B could have been installed 6 months ago before the user decided today that he wants to use C. Maybe there is no way right now to register the "installed" alternative dependency automatically. > However, if a porter misses listing a necessary dependency, then > things can get a little confused, and running "pkgdb -F" might > help... It's not that he missed listing a dependency. The problem is that he can't list both A & B - they conflict.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?17599.37113.693799.8184>