aboutsummaryrefslogtreecommitdiff
path: root/java/jode
diff options
context:
space:
mode:
authorMikhail Teterin <mi@FreeBSD.org>2015-01-15 23:28:09 +0000
committerMikhail Teterin <mi@FreeBSD.org>2015-01-15 23:28:09 +0000
commitea89cb4258b855480c2f696366275b000cdd82cf (patch)
tree95e3fe96b97cfb58f2950feff500f43b371148f6 /java/jode
parent22db5e666d2ec11511998410b7ce517f663ea55f (diff)
downloadports-ea89cb4258b855480c2f696366275b000cdd82cf.tar.gz
ports-ea89cb4258b855480c2f696366275b000cdd82cf.zip
Fix a long-standing problem of the jode-script trying to use the wrong
getopt JAR. Bump PORTREVISION. While here improve various bits a bit and add the regression-test target using the bundled tests.
Notes
Notes: svn path=/head/; revision=377144
Diffstat (limited to 'java/jode')
-rw-r--r--java/jode/Makefile10
-rw-r--r--java/jode/files/jode.in13
-rw-r--r--java/jode/files/patch-bin-jode17
-rw-r--r--java/jode/pkg-descr1
4 files changed, 21 insertions, 20 deletions
diff --git a/java/jode/Makefile b/java/jode/Makefile
index 5804267c7e9a..86bc5e34b2e1 100644
--- a/java/jode/Makefile
+++ b/java/jode/Makefile
@@ -3,7 +3,7 @@
PORTNAME= jode
PORTVERSION= 1.1.1.1
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= java devel
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/1.1.2-pre1
DISTNAME= ${PORTNAME}-${VENDOR_VERSION}
@@ -29,6 +29,8 @@ CONFIGURE_ENV+= CLASSLIB=${CLASSLIB} JAR="${JAR}" \
CONFIGURE_ARGS+=--datadir="${JAVALIBDIR}"
# Don't create the dependencies:
MAKE_ARGS+= JAVADEP=:
+SUB_LIST+= GETOPT_JAR=${GETOPT_JAR}
+SUB_FILES= jode
PLIST_FILES= bin/jode %%JAVAJARDIR%%/jode-${VENDOR_VERSION}.jar
post-patch:
@@ -41,8 +43,12 @@ post-build:
cd ${WRKSRC} && ${JAR} cvf ${PORTNAME}-${VENDOR_VERSION}.jar \
`${FIND} jode -name \*.class`
-post-install:
+do-install:
${INSTALL_DATA} ${WRKSRC}/${PORTNAME}-${VENDOR_VERSION}.jar \
${STAGEDIR}/${JAVAJARDIR}/
+ ${INSTALL_SCRIPT} ${WRKDIR}/jode ${STAGEDIR}/${PREFIX}/bin/
+
+test check regression-test: build
+ ${MAKE} -C ${WRKSRC}/test check-TESTS
.include <bsd.port.mk>
diff --git a/java/jode/files/jode.in b/java/jode/files/jode.in
new file mode 100644
index 000000000000..ed621457ea86
--- /dev/null
+++ b/java/jode/files/jode.in
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+case $1 in
+ [Ss]wi*) CLAZZ=jode.swingui.Main; shift ;;
+ [Dd]ec*) CLAZZ=jode.decompiler.Main; shift ;;
+ [Oo]bf*) CLAZZ=jode.obfuscator.Main; shift ;;
+ *) CLAZZ=jode.decompiler.Main ;;
+esac
+
+# This will only set CP if CLASSPATH is non-empty:
+CP=`echo $CLASSPATH | sed -e 's/:/,/g' -e 's/..*/--classpath &/'`
+
+exec java -cp %%JAVAJARDIR%%/jode-1.1.2-pre1.jar:%%GETOPT_JAR%% $CLAZZ $CP "$@"
diff --git a/java/jode/files/patch-bin-jode b/java/jode/files/patch-bin-jode
deleted file mode 100644
index 4f5f689cf777..000000000000
--- a/java/jode/files/patch-bin-jode
+++ /dev/null
@@ -1,17 +0,0 @@
---- bin/jode.in Mon Oct 2 09:08:36 2000
-+++ bin/jode.in Tue Jun 24 16:13:17 2003
-@@ -1,4 +1,3 @@
- #!@SHELL@
--prefix=@prefix@
-
- case $1 in
-@@ -9,6 +8,6 @@
- esac
-
-+# This will only set CP if CLASSPATH is non-empty:
-+CP=`echo $CLASSPATH | sed -e 's/:/,/g' -e 's/..*/--classpath &/'`
-
--CP=`echo $CLASSPATH | sed s/:/,/`
--CLASSPATH=@datadir@/jode-@VERSION@.jar:@CLASSPATH@ \
--@JAVA@ $CLAZZ --classpath $CP $*
-+exec @prefix@/bin/java -cp @datadir@/jode-@VERSION@.jar:@datadir@/getopt.jar $CLAZZ $CP "$@"
diff --git a/java/jode/pkg-descr b/java/jode/pkg-descr
index d6b3fdf6fedd..e515fb4dfef7 100644
--- a/java/jode/pkg-descr
+++ b/java/jode/pkg-descr
@@ -12,7 +12,6 @@ including inner and anonymous classes.
The optimizer transforms class files in various ways with can be
controlled by a script file. It supports the following operations:
-
. Renaming class, method, field and local names to shorter,
obfuscated, or unique names or according to a given
translation table