Date: Thu, 29 May 2003 11:58:37 -0600 From: Greg Lewis <glewis@misty.eyesbeyond.com> To: Herve Quiroz <herve.quiroz@esil.univ-mrs.fr> Cc: freebsd-java@freebsd.org Subject: Re: bsd.java.mk 2.0 Message-ID: <20030529175837.GA31122@misty.eyesbeyond.com> In-Reply-To: <20030523140852.H81713@puget.esil.univ-mrs.fr> References: <20030514.125107.74756915.haro@kgt.co.jp> <20030520181421.GB28600@misty.eyesbeyond.com> <20030523072854.GA61661@misty.eyesbeyond.com> <20030523140852.H81713@puget.esil.univ-mrs.fr>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, May 23, 2003 at 02:31:29PM +0200, Herve Quiroz wrote: > Hi Greg, > > On Fri, 23 May 2003, Greg Lewis wrote: > > > > > This may need extending to cope with ports that need a JDK at run time > > > > (any examples?). > > > > > > devel/jakarta-ant ? > > > > Good call. How about: > > > > USE_JAVA = [ BUILD-RUN ] > > > > Where BUILD and RUN may take the values jdk or jre. I think this should > > be clear, but the BUILD portion adds a build depends and the RUN portion > > adds a run depends. The most common case will be jdk-jre, meaning the > > port requires the JDK to build but only the jre to run. > > > > This kinda feels a little clunky, so as an alternative maybe: > > > > USE_JAVA = yes > > JAVA_BUILD = jdk > > JAVA_RUN = jre > > > > Comments? > > At first, I would have said I prefer the second. But I don't know really. > Maybe with an example I can figure what you mean exactly. Tell me f I > understand correctly: > > For most of the ports (libs): > USE_JAVA= BUILD=jdk RUN=jre If the two variants I proposed this would be done as: USE_JAVA = jdk-jre or USE_JAVA = yes JAVA_BUILD = jdk JAVA_RUN = jre > Which means build dependency for the chosen JDK and run dependency for the > chosen JRE > > For devel/jakarta-ant: > USE_JAVA= RUN=JDK USE_JAVA = -jdk (no build required) or USE_JAVA = yes JAVA_RUN = jdk This example makes me want to choose the second version :). > Which means it builds without anything (JDK related I mean) as ant is > "install only" and need a JDK to run. > [snip] > > > I think we've got something here: use space separated preferences (in the > > > right order) for all JDK/JRE properties. So no more "+" (e.g. "1.3+") but > > > instead an explicit list of versions... > > > > I like the space separation :). However, I think the "+" sign is still > > useful as a short hand for 1.x 1.y ... 1.current. It also means we don't > > have to do a sweep when a new Java version comes out and add (for example) > > 1.5 to the list. I think for maximum flexibility and to preserve the > > usefulness of the "+" we should allow both a "+" and a space separated > > list. If the version is written with a "+" it must be the only version, > > i.e. you can't have "1.1 1.3+" as a list. > > That's a good point. The "+" is still greatly needed. And may be overriden > by the bsd.java.mk: > > .if ${USE_JAVA_VERSION} == "1.3+" > USE_JAVA_VERSION= 1.3 1.2 1.1 > .endif > > So we need to update only bsd.java.mk when a new version of Java comes > out. Yes, exactly. -- Greg Lewis Email : glewis@eyesbeyond.com Eyes Beyond Web : http://www.eyesbeyond.com Information Technology FreeBSD : glewis@FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030529175837.GA31122>