[RFC] New Port: Eclipse Java Compiler, java/eclipse-ecj
Jung-uk Kim
jkim at FreeBSD.org
Tue Mar 20 16:30:16 UTC 2012
On Monday 19 March 2012 07:59 pm, Jason Helfman wrote:
> On Mon, Mar 19, 2012 at 07:45:45PM -0400, Jung-uk Kim thus spake:
> >On Monday 19 March 2012 07:08 pm, Jason Helfman wrote:
> >> On Mon, Mar 19, 2012 at 07:00:39PM -0400, Jung-uk Kim thus spake:
> >> >Hmm... It doesn't seem right.
> >> >
> >> >% cat /usr/local/bin/ecj.sh
> >> >#!/bin/sh
> >> >
> >> >/usr/local/openjdk6/bin/javac -classpath
> >> > /usr/local/share/java/classes/ecj.jar $1 %
> >> > /usr/local/bin/ecj.sh -version
> >> >javac 1.6.0_30
> >> >% /usr/local/openjdk6/bin/javac -version
> >> >javac 1.6.0_30
> >> >
> >> >Please note it isn't coming from ecj.jar.
> >>
> >> That is grabbing the version of javac based on the shell script.
> >
> >Yes, that's exactly my point. :-)
> >
> >> I'm not certain if you can get a vesion of the jar with an
> >> argument, or if that argument is even valid.
> >
> >Of course, it is valid:
> >
> >% fetch
> >http://download.eclipse.org/eclipse/downloads/drops/R-3.7.2-201202
> >080800/ecj-3.7.2.jar ecj-3.7.2.jar
> > 100% of 1708 kB 1851 kBps
> >% /usr/local/openjdk6/bin/java -jar ecj-3.7.2.jar -version
> >Eclipse Compiler for Java(TM) 0.B83_R37x, 3.7.2, Copyright IBM
> > Corp 2000, 2011. All rights reserved.
>
> I am unable to validate this with the jar that is built. Are you
> able to get it to work?
No, current port builds unusable ecj.jar. :-(
> >> >Also, `$1' should be `$*'.
> >>
> >> I can change this.
> >
> >Thanks.
> >
> >While you are at it, please add these:
> >
> >USE_ZIP= yes
>
> Why? It isn't a zip file, and why is this dependency required?
A JAR file is essentially a ZIP file with additional meta-data, just
like a FreeBSD package is a tarball with meta-data.
% file /usr/local/openjdk6/jre/lib/rt.jar
/usr/local/openjdk6/jre/lib/rt.jar: Zip archive data, at least v1.0 to
extract
If you are really concerned about the additiaonal build dependency,
you may use jar but (bsd)tar is the worst choice.
> >NO_WRKSUBDIR= yes
>
> Can't see why this would be an issue to put in.
>
> >and remove these:
> >
> >BUILD_WRKSRC= ${WRKDIR}
>
> Why? Otherwise, I need to put:
> WRKSRC= ${WRKDIR}
That's because it is easier to read/maintain for maintainer(s),
"FOO=yes" is easier to parse with scripts, it is the "official" ports
way to handle this case, etc, etc...
bsd.port.mk:
# NO_WRKSUBDIR - Assume port unpacks directly into ${WRKDIR}.
> Seems silly when bpm supports a different BUILD worksource.
I am sorry but I don't understand this because I don't use bpm.
> >...
> >EXTRACT_CMD= ${TAR}
> >EXTRACT_BEFORE_ARGS= xf
> >EXTRACT_AFTER_ARGS= -C ${WRKDIR}
>
> Why on these, as well? I'm not using zip, and zip is in different
> locations based on different releases of the Operating System.
Please see above. Besides, what made you think bsdtar is available
and able extract a JAR file on "different releases of the Operating
System"? ;-)
Jung-uk Kim
More information about the freebsd-java
mailing list