Portmaster and Portmanager problem with jdk15

RW fbsd06 at mlists.homeunix.com
Tue Aug 7 17:27:45 PDT 2007


On Tue, 07 Aug 2007 19:49:57 -0400
Robert Noland <rnoland at 2hip.net> wrote:

> On Wed, 2007-08-08 at 00:31 +0100, RW wrote:
>   
> > In the normal case, the installed bootstrap of a native jdk is
> > going to be itself, so adding a new dependency is going to be
> > undesirable.  
> 
> I agree, having it depend on itself isn't good.  In the case of jdk14
> it can only bootstrap from linux-sun-jdk14 or native jdk14 so either
> it was built via linux-jdk and should list a dependency on it, or it
> was built via itself and should not list a dependency.
> 
> For jdk15 however, it can be built using any 1 of 5 bootstrap jdks,
> diablo-jdk15, jdk15 (native), jdk14 (native), linux-sun-jdk15, or
> linux-sun-jdk14 in that order of preference.  As it stands, it will
> always list a dependency on diablo-jdk15 (current cvs) or
> linux-sun-jdk before.  It will always list the same dependency, no
> matter what jdk was used to bootstrap.  The change proposed above
> would mean that if any eligible bootstrap exists no dependency will
> be recorded, even if that bootstrap jdk is not itself.
> 
> The short version is:
> 
> Without the change, you always record a dependency on diablo-jdk15
> 
> With the change, first build record a dependency on diablo-jdk15,
> subsequent builds record no dependency.  

I think it should default to building with itself and having no build
dependency. That seems to be the right thing to do because a
leaf-deletion program that understands build dependencies will then
pickup the bootstrap port as a new leaf.  

Offhand the only consequence I can see of not having the actual
dependency is that the primary jdk and the bootstrap jdk might get
rebuilt out of order - but that's essentially going to be the case when
a  port bootstraps itself (unless it's built twice).


More information about the freebsd-ports mailing list