Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Aug 2003 23:34:54 -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:  <20030820053454.GB7208@misty.eyesbeyond.com>
In-Reply-To: <20030818154837.P56591@puget.esil.univ-mrs.fr>
References:  <20030514.125107.74756915.haro@kgt.co.jp> <20030523072854.GA61661@misty.eyesbeyond.com> <20030529175837.GA31122@misty.eyesbeyond.com> <20030618221505.GA39813@misty.eyesbeyond.com> <20030818154837.P56591@puget.esil.univ-mrs.fr>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Aug 18, 2003 at 04:10:31PM +0200, Herve Quiroz wrote:
> I'm in the process of getting this bsd.java.mk 2.0 working together with
> a demonstration java lib port. I've managed to stay compatible with the
> former bsd.java.mk (that I call 1.0), which means we don't have to
> change all java ports at once, but rather mark the old features as
> "deprecated".

Cool :).

> BTW, is there something in portlint(1) regarding java ports ? If so,
> that would be the right place to check those "deprecated" statements.
> 
> Anyway, that's not the main goal of my mail. Instead, I'm asking for
> help, not Java related but Make related...
> 
> So far, JDK/JRE dependency is resolved as follow:
> 
> It first builds a list of all JDK/JRE ports suitable according to their
> version number in _JAVA_PORTS_BY_VERSION.
> 
> Then, the same for _JAVA_PORTS_BY_OS and _JAVA_PORTS_BY_VENDOR.
> 
> I was trying to build a list which is the intersection of those 3 above
> lists. So far, the only answer I have found to this problem is using
> three for/do/done nested loops. But IMHO it relies too much on the
> underlying shell, which is subject to change depending on machines. I
> know GNU Make better than the BSD one (PMake IIRC) and I know that GNU
> Make provides 'for' loops on its own. I can't find anything similar with
> PMake...
> 
> There may be another solution. If anyone has any idea, or just knows
> how to do 'for' loops (or even lists intersections) in a generic (that
> is not shell dependent) fashion, please let me know about it.

As per make(1):

.for variable in expression
<make-rules>
.endfor

You can find many example usages in the various makefiles across the
system, e.g. /usr/share/mk, /usr/ports/Mk, etc.

-- 
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?20030820053454.GB7208>