virtual/jdk and virtual/jre are now new style virtuals now. Having the old style virtual files in the profile, seems to confuse the hell out of portage. The result is that even if you have the virtual installed, it will try to bring in another package. The example in this case is having jdk-1.5 installed (provided by ibm-jdk-bin-1.5), and going to install something that has a virtual/jdk or virtual/jre in it (a jdk actually provides jre). In these cases, an actually jre will be pulled in (ibm-jre-bin-1.4 in my tests), despite the dependency being fulfilled elsewhere. This is a known issue we've run into with portage and the switch over from old to new style virtuals. They occur whenever there's a package with PROVIDEs for jdk/jre, or a virtuals file in /etc/portage/profiles/ or in PORTDIR/profiles somewhere. If it's cool, I could remove it myself.
thanks for the information. I think it is the best if you do the commit. please note that ppc64 has profiles in the following locations (just a little FYI, because they are in *some* locations...): default-linux/ppc64/ default-linux/ppc/2005.1/ppc64/ default-linux/ppc/ppc64/
The grep I did to find profiles doing this: grep -r --include=virtuals -e jre -e jdk $(portageq portdir)/profiles/ It really looks like its happening for in the 2006.1 ppc64 for 64bit userland
Fixed in CVS.