While building a pentium 4 system from stage one. I noticed that when i got to stage two ie "emerge system" I did emerge -pv system and it listed both the blacktown JRE and JDK.
Steps to Reproduce:
1. Build stage one on pentium 4 system
2. Set USE="ldap gnome gtk java cups alsa"
3. run emerge -pv system and check list of packages
emerge -pv system listed both the blacktown JRE and JDK.
Running emerge system should only have installed the blacktown JDK.
Portage 2.0.50-r11 (default-x86-2004.2, gcc-3.3.3, glibc-220.127.116.1140420-r0, 2.4.25-gentoo)
System uname: 2.4.25-gentoo i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
Gentoo Base System version 1.4.16
CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe"
FEATURES="autoaddcvs ccache sandbox"
USE="X alsa apm arts avi berkdb crypt cups encode foomaticdb gdbm gif gnome gpm gtk gtk2 imlib
java jpeg kde ldap libg++ libwww mad mikmod motif mpeg ncurses nls oggvorbis opengl oss pam
pdflib png python qt quicktime readline sdl slang spell ssl svga tcpd truetype x86 xml2 xmms xv zlib"
I think actually this isn't a bug. If you specify "java" in your USE flags you may want to use applications written in Java, which of course require the JDK to get compiled. If you only want the JRE, remove "java" from your USE flags and emerge the JRE separately.
Ok just a couple of points.
1. Wouldnt it be better to consider a JDK an upgraded JRE therefore only installing one.
2. If that is not possible how about a use flag that said "i want a jdk so hit me!".
3. Just a small associated issue. What if I don't want anything to do with the blacktown JDK and I want the sun one to be used. Do we need a /etc/java.conf to select these options during installation?
Just my two cents worth.
1 this is a shortcoming in portage that i believe will be fixed
2&3 if you merge a jdk first(for example sun) it will use that one, and won't depend on any other jdk/jre, you can also achive this by putting it in your virtuals file, a use flag wouldn't be a very elegant solution
We can't fix this, we'll need to wait untill portage can handle it, want it doesn't brake anything