Date: Wed, 28 Jan 2004 20:45:10 +0000 (GMT) From: Conor McDermottroe <ports@mcdermottroe.com> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/62043: New port: java/jflex Fast lexical analyser generator for Java Message-ID: <20040128204510.A3AA723C5@mcdermc.mcdermottroe.com> Resent-Message-ID: <200401282110.i0SLAA25022982@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 62043 >Category: ports >Synopsis: New port: java/jflex Fast lexical analyser generator for Java >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Jan 28 13:10:10 PST 2004 >Closed-Date: >Last-Modified: >Originator: Conor McDermottroe >Release: FreeBSD 5.2-RELEASE i386 >Organization: >Environment: System: FreeBSD mcdermc 5.2-RELEASE FreeBSD 5.2-RELEASE #3: Sat Jan 17 01:18:58 GMT 2004 root@:/usr/obj/usr/src/sys/MCDERMC i386 >Description: >From its documentation: JFlex is a lexical analyzer generator for Java written in Java. It is also a rewrite of the very useful tool JLex which was developed by Elliot Berk at Princeton University. As Vern Paxon states for his C/C++ tool flex: They do not share any code though. >How-To-Repeat: >Fix: # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # /usr/ports/java/jflex # /usr/ports/java/jflex/distinfo # /usr/ports/java/jflex/Makefile # /usr/ports/java/jflex/pkg-descr # /usr/ports/java/jflex/pkg-plist # /usr/ports/java/jflex/files # /usr/ports/java/jflex/files/patch-ab # /usr/ports/java/jflex/files/patch-aa # echo c - /usr/ports/java/jflex mkdir -p /usr/ports/java/jflex > /dev/null 2>&1 echo x - /usr/ports/java/jflex/distinfo sed 's/^X//' >/usr/ports/java/jflex/distinfo << 'END-of-/usr/ports/java/jflex/distinfo' XMD5 (jflex-1.3.5.tar.gz) = c77a9656aa20979f2268d7443995700f END-of-/usr/ports/java/jflex/distinfo echo x - /usr/ports/java/jflex/Makefile sed 's/^X//' >/usr/ports/java/jflex/Makefile << 'END-of-/usr/ports/java/jflex/Makefile' X# Ports collection Makefile for: JFlex X# Date created: 27 January 2004 X# Whom: Conor McDermottroe <ports@mcdermottroe.com> X# X# $FreeBSD$ X# X XPORTNAME= jflex XPORTVERSION= 1.3.5 XCATEGORIES= java XMASTER_SITES= http://www.jflex.de/ X XMAINTAINER= ports@mcdermottroe.com XCOMMENT= The Fast Lexical Analyser Generator for Java[tm] X XBUILD_DEPENDS= ${JAVAJARDIR}/java_cup.jar:${PORTSDIR}/java/java-cup X XUSE_JAVA= 1.1+ XNEED_JAVAC= yes XWRKSRC= ${WRKDIR}/JFlex XBUILD_WRKSRC= ${WRKSRC}/src X XPLIST_SUB= JAVAJARDIR=${JAVAJARDIR:S|^${PREFIX}/||} X Xpost-patch: X @cd ${WRKSRC} && \ X ${SED} -i~ -e 's|%%JAVAJARDIR%%|${JAVAJARDIR}|' bin/jflex src/Makefile && \ X ${SED} -i~ -e 's|%%JAVA_CLASSES%%|${JAVA_CLASSES}|' src/Makefile X Xdo-install: X @${INSTALL_SCRIPT} ${WRKSRC}/bin/jflex ${PREFIX}/bin/jflex X @${INSTALL_DATA} ${WRKSRC}/lib/JFlex.jar ${JAVAJARDIR}/JFlex.jar X Xpost-install: X.if !defined(NOPORTDOCS) X ${MKDIR} ${DOCSDIR} X ${INSTALL_MAN} ${WRKSRC}/doc/* ${DOCSDIR} X.endif X ${MKDIR} ${EXAMPLESDIR} X.for EXAMPLE in binary byaccj cup interpreter java simple standalone X ${MKDIR} ${EXAMPLESDIR}/${EXAMPLE} X ${INSTALL_DATA} ${WRKSRC}/examples/${EXAMPLE}/* ${EXAMPLESDIR}/${EXAMPLE} X.endfor X X.include <bsd.port.mk> END-of-/usr/ports/java/jflex/Makefile echo x - /usr/ports/java/jflex/pkg-descr sed 's/^X//' >/usr/ports/java/jflex/pkg-descr << 'END-of-/usr/ports/java/jflex/pkg-descr' XJFlex is a lexical analyzer generator for Java written in Java. XIt is also a rewrite of the very useful tool JLex which was developed Xby Elliot Berk at Princeton University. As Vern Paxon states for his C/C++ Xtool flex: They do not share any code though. X XWWW: http://www.jflex.de/ END-of-/usr/ports/java/jflex/pkg-descr echo x - /usr/ports/java/jflex/pkg-plist sed 's/^X//' >/usr/ports/java/jflex/pkg-plist << 'END-of-/usr/ports/java/jflex/pkg-plist' Xbin/jflex X%%JAVAJARDIR%%/JFlex.jar X%%PORTDOCS%%%%DOCSDIR%%/COPYRIGHT X%%PORTDOCS%%%%DOCSDIR%%/faq.html X%%PORTDOCS%%%%DOCSDIR%%/foot_motif.gif X%%PORTDOCS%%%%DOCSDIR%%/jflex_anttask.html X%%PORTDOCS%%%%DOCSDIR%%/logo.gif X%%PORTDOCS%%%%DOCSDIR%%/manual.css X%%PORTDOCS%%%%DOCSDIR%%/manual.html X%%PORTDOCS%%%%DOCSDIR%%/manual.pdf X%%PORTDOCS%%%%DOCSDIR%%/manual.ps.gz X@dirrm %%DOCSDIR%% X%%EXAMPLESDIR%%/binary/Makefile X%%EXAMPLESDIR%%/binary/README X%%EXAMPLESDIR%%/binary/StraightStreamReader.java X%%EXAMPLESDIR%%/binary/binary.flex X@dirrm %%EXAMPLESDIR%%/binary X%%EXAMPLESDIR%%/byaccj/Makefile X%%EXAMPLESDIR%%/byaccj/README X%%EXAMPLESDIR%%/byaccj/calc.flex X%%EXAMPLESDIR%%/byaccj/calc.y X@dirrm %%EXAMPLESDIR%%/byaccj X%%EXAMPLESDIR%%/cup/Main.java X%%EXAMPLESDIR%%/cup/Makefile X%%EXAMPLESDIR%%/cup/README X%%EXAMPLESDIR%%/cup/lcalc.flex X%%EXAMPLESDIR%%/cup/output.good X%%EXAMPLESDIR%%/cup/test.txt X%%EXAMPLESDIR%%/cup/ycalc.cup X@dirrm %%EXAMPLESDIR%%/cup X%%EXAMPLESDIR%%/interpreter/AST.java X%%EXAMPLESDIR%%/interpreter/Main.java X%%EXAMPLESDIR%%/interpreter/Makefile X%%EXAMPLESDIR%%/interpreter/README X%%EXAMPLESDIR%%/interpreter/STEfun.java X%%EXAMPLESDIR%%/interpreter/STEvar.java X%%EXAMPLESDIR%%/interpreter/SymTab.java X%%EXAMPLESDIR%%/interpreter/SymtabEntry.java X%%EXAMPLESDIR%%/interpreter/Tboolexp.java X%%EXAMPLESDIR%%/interpreter/Tdekl.java X%%EXAMPLESDIR%%/interpreter/Tdekllist.java X%%EXAMPLESDIR%%/interpreter/Texp.java X%%EXAMPLESDIR%%/interpreter/Texpinfix.java X%%EXAMPLESDIR%%/interpreter/Texplist.java X%%EXAMPLESDIR%%/interpreter/Tfun.java X%%EXAMPLESDIR%%/interpreter/Tident.java X%%EXAMPLESDIR%%/interpreter/Tifthenelse.java X%%EXAMPLESDIR%%/interpreter/Tnumber.java X%%EXAMPLESDIR%%/interpreter/Tparlist.java X%%EXAMPLESDIR%%/interpreter/Tprogram.java X%%EXAMPLESDIR%%/interpreter/Tuminus.java X%%EXAMPLESDIR%%/interpreter/example.as X%%EXAMPLESDIR%%/interpreter/parser.cup X%%EXAMPLESDIR%%/interpreter/scanner.flex X@dirrm %%EXAMPLESDIR%%/interpreter X%%EXAMPLESDIR%%/java/JavaParser.java X%%EXAMPLESDIR%%/java/JavaSymbol.java X%%EXAMPLESDIR%%/java/Makefile X%%EXAMPLESDIR%%/java/README X%%EXAMPLESDIR%%/java/java.flex X%%EXAMPLESDIR%%/java/java12.cup X%%EXAMPLESDIR%%/java/unicode.flex X@dirrm %%EXAMPLESDIR%%/java X%%EXAMPLESDIR%%/simple/README X%%EXAMPLESDIR%%/simple/Utility.java X%%EXAMPLESDIR%%/simple/Yytoken.java X%%EXAMPLESDIR%%/simple/simple.flex X@dirrm %%EXAMPLESDIR%%/simple X%%EXAMPLESDIR%%/standalone/Makefile X%%EXAMPLESDIR%%/standalone/README X%%EXAMPLESDIR%%/standalone/sample.inp X%%EXAMPLESDIR%%/standalone/standalone.flex X@dirrm %%EXAMPLESDIR%%/standalone X@dirrm %%EXAMPLESDIR%% END-of-/usr/ports/java/jflex/pkg-plist echo c - /usr/ports/java/jflex/files mkdir -p /usr/ports/java/jflex/files > /dev/null 2>&1 echo x - /usr/ports/java/jflex/files/patch-ab sed 's/^X//' >/usr/ports/java/jflex/files/patch-ab << 'END-of-/usr/ports/java/jflex/files/patch-ab' X--- src/Makefile.orig Tue Jan 27 22:35:41 2004 X+++ src/Makefile Tue Jan 27 22:27:05 2004 X@@ -1,16 +1,16 @@ X # you need JFlex 1.2.2 and CUP 0.10j or later for this Makefile to work X X JFLEX = jflex -skel skeleton.nested X-CUP = java java_cup.Main X+CUP = java -classpath %%JAVAJARDIR%%/java_cup.jar java_cup.Main X X-JAVAC = javac -target 1.1 -bootclasspath /usr/lib/jdk1.1/lib/classes.zip X+JAVAC = env LANG= javac -target 1.1 X #JAVAC = jikes X JAR = jar X X DEST = ../lib X X # jdk 1.2 X-CLPATH = -classpath /usr/lib/java/jre/lib/rt.jar:. X+CLPATH = -classpath %%JAVA_CLASSES%%:. X X # jdk 1.1 X #CLPATH = -classpath /usr/lib/java/lib/classes.zip:. END-of-/usr/ports/java/jflex/files/patch-ab echo x - /usr/ports/java/jflex/files/patch-aa sed 's/^X//' >/usr/ports/java/jflex/files/patch-aa << 'END-of-/usr/ports/java/jflex/files/patch-aa' X--- bin/jflex.orig Tue Jan 27 22:31:29 2004 X+++ bin/jflex Tue Jan 27 22:26:00 2004 X@@ -1,51 +1,18 @@ X-#! /bin/bash X+#!/bin/sh X # X-# JFlex start script $Revision: 1.16 $ X-# X-# if Java is not in your binary path, you need to supply its X-# location in this script. The script automatically finds X-# JFLEX_HOME when called directly, via binary path, or symbolic X-# link. X-# X-# Site wide installation: simply make a symlink from e.g. X-# /usr/bin/jflex to this script at its original position X-# X-#=================================================================== X-# X-# configurables: X- X-# path to the java interpreter X-JAVA=java X- X-# end configurables X-# X-#=================================================================== X-# X- X-# calculate true location X- X-PRG=`type $0` X-PRG=${PRG##* } X- X-# If PRG is a symlink, trace it to the real home directory X- X-while [ -L "$PRG" ] X-do X- newprg=$(ls -l ${PRG}) X- newprg=${newprg##*-> } X- [ ${newprg} = ${newprg#/} ] && newprg=${PRG%/*}/${newprg} X- PRG="$newprg" X-done X- X-PRG=${PRG%/*} X-JFLEX_HOME=${PRG}/.. X- X-# -------------------------------------------------------------------- X- X-export CLASSPATH X-CLASSPATH=$JFLEX_HOME/lib/JFlex.jar X- X-$JAVA JFlex.Main $@ X+# Replacement for the script that came with JFlex X+# because bash is not necessarily on a FreeBSD X+# machine. Also, we know where the jar is. X+# X+# Conor McDermottroe <ports@mcdermottroe.com> X+ X+# Allow the user to override where JFlex.jar lives X+if [ -z "$JAVAJARDIR" ]; then X+ JAVAJARDIR=%%JAVAJARDIR%% X+fi X+ X+# Allow the user to specify which java interpreter to use X+if [ -z "$JAVA" ]; then X+ JAVA="`which java`" X+fi X X-#for more memory: X-#$JAVA -Xmx128m JFlex.Main $@ X+$JAVA -jar $JAVAJARDIR/JFlex.jar $@ END-of-/usr/ports/java/jflex/files/patch-aa exit >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040128204510.A3AA723C5>