From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3108 invoked from network); 12 Feb 2004 18:01:06 +0000 Received: from smtp.gentoo.org (128.193.0.39) by eagle.gentoo.oregonstate.edu with DES-CBC3-SHA encrypted SMTP; 12 Feb 2004 18:01:06 +0000 Received: from lists.gentoo.org ([128.193.0.34] helo=eagle.gentoo.org) by smtp.gentoo.org with esmtp (Exim 4.24) id 1ArL97-0005qh-K1 for arch-gentoo-portage-dev@lists.gentoo.org; Thu, 12 Feb 2004 18:01:05 +0000 Received: (qmail 26170 invoked by uid 50004); 12 Feb 2004 18:01:04 +0000 Mailing-List: contact gentoo-portage-dev-help@gentoo.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail Reply-To: gentoo-portage-dev@lists.gentoo.org X-BeenThere: gentoo-portage-dev@gentoo.org Received: (qmail 21301 invoked from network); 12 Feb 2004 18:01:04 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <16427.48986.501829.428875@lemming.engeast.baynetworks.com> Date: Thu, 12 Feb 2004 13:00:58 -0500 To: gentoo-portage-dev@lists.gentoo.org X-Mailer: VM 7.18 under Emacs 21.3.1 From: "Paul Smith" Subject: [gentoo-portage-dev] Portage choosing wrong version? X-Archives-Salt: 1561736c-8820-46a1-a1a9-4a996144568c X-Archives-Hash: fdb9604e1a0f9b2db20fb655a606175e Hi all. I have a strange situation and I'm wondering if anyone can help me understand it or give me tips on how to better understand it. I'm using Portage (2.0.49) to manage a set of locally-constructed ebuilds; these are not in the Gentoo system. I'm installing them through a "collection" ebuild, which contains nothing but a DEPENDS line, say collection-1.0.ebuild: DEPENDS=" ~category/foo-1.0 ~category/bar-1.0 ~category/baz-1.0 " In my packages file I say: * ~category/collection-1.0 Also the bar-1.0 and baz-1.0 packages depend on foo and they both say so, like this: DEPENDS=" category/foo " Now, I also have a foo-1.1, bar-1.1, and baz-1.1. The bar-1.1 and baz-1.1 packages depend on foo-1.1 and they both say so, like this: DEPENDS=" ~category/foo-1.1 " However, I want to install the older 1.0 versions right now, not the newer ones. Now if none of these packages are installed and I run "emerge system", something very bizarre happens: emerge _FIRST_ installs the latest category/foo-1.1 package, then it tries to build the other packages, which fail because they won't work with newer versions of foo! Then, if I run "emerge -p system" I see that emerge will, later on, replace the foo-1.1 it just installed with foo-1.0. Doesn't Portage have enough smarts to realize that if the collection package depends on a specific version and other packages depend on any version, that it should just install the specific version to satisfy the dependency relationship? If not, this is very bad! How can I work with this? Surely I don't have to go back to every old version and update all their DEPENDS lines every time I come out with a new package which is not backward compatible? And, is there any command I can run or option I can use to get a more detailed description of exactly how emerge is resolving dependency relationships? Thanks! -- ------------------------------------------------------------------------------- Paul D. Smith HASMAT: HA Software Mthds & Tools "Please remain calm...I may be mad, but I am a professional." --Mad Scientist ------------------------------------------------------------------------------- These are my opinions---Nortel Networks takes no responsibility for them. -- gentoo-portage-dev@gentoo.org mailing list