Commit 2b56874b authored by 0mp's avatar 0mp
Browse files

New port: devel/cfr: Class File Reader (CFR) Java decompiler

CFR will decompile modern Java features - up to and including much of Java
9, 10, 12 and beyond, but is written entirely in Java 6, so will work
anywhere!

It'll even make a decent go of turning class files from other JVM langauges
(like Kotlin) back into Java!

To use, simply run the specific version jar, with the class name(s) you
want to decompile (either as a path to a class file, or as a fully
qualified classname on your classpath).

Alternately, to decompile an entire jar, simply provide the jar path,
and if you want to emit files (which you probably do!)
add --outputdir /tmp/putithere.

WWW: https://www.benf.org/other/cfr/
parent 768be626
......@@ -286,6 +286,7 @@
SUBDIR += cervisia
SUBDIR += cflow
SUBDIR += cflow2vcg
SUBDIR += cfr
SUBDIR += cgdb
SUBDIR += cgilib
SUBDIR += cgit
......
# $FreeBSD$
PORTNAME= cfr
DISTVERSION= 0.143
CATEGORIES= devel java
MASTER_SITES= https://www.benf.org/other/cfr/ \
http://www.benf.org/other/cfr/
EXTRACT_SUFX= .jar
EXTRACT_ONLY=
MAINTAINER= 0mp@FreeBSD.org
COMMENT= Class File Reader (CFR) Java decompiler
# http://www.benf.org/other/cfr/license.html
LICENSE= MIT
USE_JAVA= yes
JAVA_RUN= jre
NO_ARCH= yes
NO_BUILD= yes
PLIST_FILES= ${JAVAJARDIR}/cfr.jar
JARFILE= ${PORTNAME}.jar
do-install:
${INSTALL_DATA} ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} \
${STAGEDIR}${JAVAJARDIR}/${JARFILE}
do-test:
# Find out if the decompiler works.
${JAVA} -jar ${STAGEDIR}${JAVAJARDIR}/${JARFILE} \
${STAGEDIR}${JAVAJARDIR}/${JARFILE} >/dev/null
.include <bsd.port.mk>
TIMESTAMP = 1555418922
SHA256 (cfr-0.143.jar) = df4b0ae1be0bc9b89841ffade7e00dd443729c2974df3af902336fd5d3592a89
SIZE (cfr-0.143.jar) = 1709025
CFR will decompile modern Java features - up to and including much of Java 9,
10, 12 and beyond, but is written entirely in Java 6, so will work anywhere!
It'll even make a decent go of turning class files from other JVM
langauges (like Kotlin) back into Java!
To use, simply run the specific version jar, with the class name(s) you want to
decompile (either as a path to a class file, or as a fully qualified classname
on your classpath). (Use --help to list arguments).
Alternately, to decompile an entire jar, simply provide the jar path, and if
you want to emit files (which you probably do!) add --outputdir /tmp/putithere.
WWW: https://www.benf.org/other/cfr/
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment