Gentoo Archives: gentoo-dev

From: Duncan Coutts <dcoutts@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] RFC about another *DEPEND variable
Date: Sat, 23 Sep 2006 10:38:44
Message-Id: 1159007755.22846.5.camel@localhost
In Reply to: Re: [gentoo-dev] RFC about another *DEPEND variable by Mike Frysinger
On Sat, 2006-09-23 at 06:13 -0400, Mike Frysinger wrote: 
> On Thursday 21 September 2006 11:41, Duncan Coutts wrote: > > On Thu, 2006-09-21 at 11:11 -0400, Mike Frysinger wrote: > > > On Thursday 21 September 2006 10:56, Duncan Coutts wrote: > > > > If we do go in this direction it'd be great to be able to slot on the > > > > ABI and still have dependencies resolved correctly. For example imagine > > > > having parallel python-2.3 and 2.4 installations with some libs > > > > installed for both. Crucially, deps need to be resolved to the version > > > > of a lib with the right ABI. > > > > > > ugh, no ... we are not a binary distribution so we should not have to > > > worry about ABI baggage > > > > So we can't ever install two versions of python or ghc at once? That > > seems a shame. > > that's an issue for the python or ghc maintainers to address
Yes and as ghc maintainer for Gentoo I'd love to be able to do it. It is easy to install more than one version of ghc at once as it uses versioned directories etc. The problem is that we cannot correctly resolve dependencies with the current versions of portage. Hence we cannot effectively do it. I was worried from your ABI/API comments that you meant that we should never be allowed to do it. As I said before, if we were to SLOT ghc and the various dev-haskell/* libs on the ghc version then we would run into this problem: assume dev-haskell/foo needs dev-haskell/bar supposing dev-haskell/bar was installed and sloted for ghc-6.2 now I install ghc-6.4 too now I emerge dev-haskell/foo. portage will use the existing installation of dev-haskell/bar even though it was installed for another version of ghc. Therefore the build will break (think of haskell libs of having a SONAME that is the version of ghc they were built with). What needs to happen is to install dev-haskell/bar sloted for ghc-6.4 and use that. Currently there is no way to explain these dependencies to portage. I was hoping that with this talk of tracking reverse deps and such like that we could move in a direction where this kind of dependency could be supported. Even if we can't slot on the ghc version, automatically rebuilding for the latest ghc version would be a great improvement - like the suggestion to rebuild dependent libs when the SONAME changes. Duncan -- gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] RFC about another *DEPEND variable Mike Frysinger <vapier@g.o>