handle --classpath option

git-svn-id: https://svn.code.sf.net/p/jode/code/branches/stable@1054 379699f6-c40d-0410-875b-85095c16579e
stable
jochen 26 years ago
parent ddad164a2e
commit 8377de22ad
  1. 2
      jode/jode/Decompiler.java
  2. 237
      jode/jode/Makefile.am

@ -155,6 +155,8 @@ public class Decompiler {
} else if (params[i].equals("--import")) { } else if (params[i].equals("--import")) {
importPackageLimit = Integer.parseInt(params[++i]); importPackageLimit = Integer.parseInt(params[++i]);
importClassLimit = Integer.parseInt(params[++i]); importClassLimit = Integer.parseInt(params[++i]);
} else if (params[i].equals("--classpath")) {
classPath = params[++i];
} else if (params[i].equals("--cp")) { } else if (params[i].equals("--cp")) {
classPath = params[++i]; classPath = params[++i];
} else if (params[i].equals("--")) { } else if (params[i].equals("--")) {

@ -1,231 +1,54 @@
## Input file for automake to generate the Makefile.in used by configure ## Input file for automake to generate the Makefile.in used by configure
EXTRA_DIST = \ SUBDIRS = bytecode type util jvm expr flow decompiler obfuscator @SWINGUI@
AssertError.java \
bytecode/BinaryInfo.java \
bytecode/BytecodeInfo.java \
bytecode/ClassFormatException.java \
bytecode/ClassInfo.java \
bytecode/ConstantPool.java \
bytecode/FieldInfo.java \
bytecode/GrowableConstantPool.java \
bytecode/Handler.java \
bytecode/InnerClassInfo.java \
bytecode/Instruction.java \
bytecode/LineNumber.java \
bytecode/LocalVariableInfo.java \
bytecode/MethodInfo.java \
bytecode/Opcodes.java \
bytecode/Reference.java \
bytecode/SearchPath.java \
decompiler/Analyzer.java \
decompiler/ClassAnalyzer.java \
decompiler/ClassDeclarer.java \
decompiler/DeadCodeAnalysis.java \
decompiler/Declarable.java \
decompiler/FieldAnalyzer.java \
decompiler/ImportHandler.java \
decompiler/LocalInfo.java \
decompiler/LocalVarEntry.java \
decompiler/LocalVariableRangeList.java \
decompiler/LocalVariableTable.java \
decompiler/MethodAnalyzer.java \
decompiler/Opcodes.java \
decompiler/OuterValueListener.java \
decompiler/Scope.java \
decompiler/TabbedPrintWriter.java \
Decompiler.java \
expr/ArrayLengthOperator.java \
expr/ArrayLoadOperator.java \
expr/ArrayStoreOperator.java \
expr/BinaryOperator.java \
expr/CheckCastOperator.java \
expr/CheckNullOperator.java \
expr/ClassFieldOperator.java \
expr/CombineableOperator.java \
expr/CompareBinaryOperator.java \
expr/CompareToIntOperator.java \
expr/CompareUnaryOperator.java \
expr/ConstOperator.java \
expr/ConstantArrayOperator.java \
expr/ConstructorOperator.java \
expr/ConvertOperator.java \
expr/Expression.java \
expr/GetFieldOperator.java \
expr/IIncOperator.java \
expr/IfThenElseOperator.java \
expr/InstanceOfOperator.java \
expr/InvokeOperator.java \
expr/LValueExpression.java \
expr/LocalLoadOperator.java \
expr/LocalStoreOperator.java \
expr/LocalVarOperator.java \
expr/MatchableOperator.java \
expr/MonitorEnterOperator.java \
expr/MonitorExitOperator.java \
expr/NewArrayOperator.java \
expr/NewOperator.java \
expr/NoArgOperator.java \
expr/NopOperator.java \
expr/Operator.java \
expr/OuterLocalOperator.java \
expr/PopOperator.java \
expr/PrePostFixOperator.java \
expr/PutFieldOperator.java \
expr/ShiftOperator.java \
expr/SimpleOperator.java \
expr/StoreInstruction.java \
expr/StringAddOperator.java \
expr/ThisOperator.java \
expr/UnaryOperator.java \
flow/BreakBlock.java \
flow/BreakableBlock.java \
flow/CaseBlock.java \
flow/CatchBlock.java \
flow/CombineIfGotoExpressions.java \
flow/CompleteSynchronized.java \
flow/ConditionalBlock.java \
flow/ContinueBlock.java \
flow/CreateAssignExpression.java \
flow/CreateCheckNull.java \
flow/CreateClassField.java \
flow/CreateConstantArray.java \
flow/CreateExpression.java \
flow/CreateForInitializer.java \
flow/CreateIfThenElseOperator.java \
flow/CreateNewConstructor.java \
flow/CreatePrePostIncExpression.java \
flow/DescriptionBlock.java \
flow/EmptyBlock.java \
flow/FinallyBlock.java \
flow/FlowBlock.java \
flow/IfThenElseBlock.java \
flow/InstructionBlock.java \
flow/InstructionContainer.java \
flow/JsrBlock.java \
flow/Jump.java \
flow/LoopBlock.java \
flow/RetBlock.java \
flow/ReturnBlock.java \
flow/SequentialBlock.java \
flow/SlotSet.java \
flow/SpecialBlock.java \
flow/StructuredBlock.java \
flow/SwitchBlock.java \
flow/SynchronizedBlock.java \
flow/ThrowBlock.java \
flow/TransformConstructors.java \
flow/TransformExceptionHandlers.java \
flow/TryBlock.java \
flow/VariableSet.java \
flow/VariableStack.java \
GlobalOptions.java.in \
JodeApplet.java \
JodeWindow.java \
jvm/CodeVerifier.java \
jvm/Interpreter.java \
jvm/InterpreterException.java \
jvm/NewObject.java \
jvm/RuntimeEnvironment.java \
jvm/SimpleRuntimeEnvironment.java \
jvm/SyntheticAnalyzer.java \
jvm/Value.java \
jvm/VerifyException.java \
obfuscator/ClassBundle.java \
obfuscator/ClassIdentifier.java \
obfuscator/CodeAnalyzer.java \
obfuscator/CodeTransformer.java \
obfuscator/ConstantAnalyzer.java \
obfuscator/ConstantRuntimeEnvironment.java \
obfuscator/FieldIdentifier.java \
obfuscator/Identifier.java \
obfuscator/IdentifierMatcher.java \
obfuscator/LocalIdentifier.java \
obfuscator/LocalOptimizer.java \
obfuscator/LocalizeFieldTransformer.java \
obfuscator/Main.java \
obfuscator/MethodIdentifier.java \
obfuscator/ModifierMatcher.java \
obfuscator/NameSwapper.java \
obfuscator/PackageIdentifier.java \
obfuscator/RemovePopAnalyzer.java \
obfuscator/Renamer.java \
obfuscator/SimpleAnalyzer.java \
obfuscator/StrongRenamer.java \
obfuscator/TranslationTable.java \
obfuscator/WildCard.java \
swingui/Main.java \
swingui/Main.java.in \
swingui/PackagesTreeModel.java.in \
swingui/PackagesTreeModel.java \
type/ArrayType.java \
type/ClassInterfacesType.java \
type/IntegerType.java \
type/MethodType.java \
type/NullType.java \
type/RangeType.java \
type/ReferenceType.java \
type/Type.java \
util/AbstractCollection.java \
util/AbstractList.java \
util/AbstractMap.java \
util/AbstractSequentialList.java \
util/AbstractSet.java \
util/ArrayEnum.java \
util/ArrayList.java \
util/Arrays.java \
util/BasicMapEntry.java \
util/Bucket.java \
util/Collection.java \
util/Collections.java \
util/Comparable.java \
util/Comparator.java \
util/ConcurrentModificationException.java \
util/HashMap.java \
util/HashSet.java \
util/Iterator.java \
util/LinkedList.java \
util/List.java \
util/ListIterator.java \
util/Map.java \
util/Set.java \
util/SimpleMap.java \
util/SimpleSet.java \
util/SortedMap.java \
util/SortedSet.java \
util/TreeMap.java \
util/TreeSet.java \
util/UnsupportedOperationException.java
JAR = @JAR@ JAR = @JAR@
JAVAC = @JAVAC@ JAVAC = @JAVAC@
JIKES = @JIKES@ JIKES = @JIKES@
CLASSPATH = @CLASSPATH@ CLASSPATH = @CLASSPATH@
CLASSLIB = @CLASSLIB@ CLASSLIB = @CLASSLIB@
BUILD_CLASSPATH = $(top_srcdir):$(top_builddir):.:$(CLASSPATH) BUILD_CLASSPATH = $(top_srcdir):$(top_builddir):.:$(CLASSPATH):$(CLASSLIB)
VPATH=$(srcdir):$(top_srcdir):$(top_builddir) VPATH=$(srcdir):$(top_srcdir):$(top_builddir)
MY_CLASSES = jode/Decompiler.class jode/JodeApplet.class jode/JodeWindow.class jode/obfuscator/Main.class @SWING_CLASSES@ MY_JAVA_FILES = \
AssertError.java \
Decompiler.java \
GlobalOptions.java \
JodeApplet.java \
JodeWindow.java
pkgdata_DATA = jode.jar noinst_DATA = $(MY_JAVA_FILES:.java=.class)
EXTRA_DIST = $(MY_JAVA_FILES)
JARFILE = jode-@VERSION@.jar
data_DATA = $(JARFILE)
if HAVE_JIKES if HAVE_JIKES
@QUOTE@-include .java.deps @QUOTE@-include $(top_builddir)/jode/.java.deps
%.class: %.java %.class: %.java
$(JIKES) -classpath $(BUILD_CLASSPATH):$(CLASSLIB) +M=.java.deps -d . $< $(JIKES) -classpath $(BUILD_CLASSPATH):$(CLASSLIB) +M=$(top_builddir)/jode/.java.deps -d $(top_builddir) $<
else else
%.class: %.java %.class: %.java
$(JAVAC) -classpath $(BUILD_CLASSPATH):$(CLASSLIB) -depend -d . $< $(JAVAC) -classpath $(BUILD_CLASSPATH):$(CLASSLIB) -depend -d $(top_builddir) $<
endif endif
clean-local: clean-local:
@rm -rf jode @rm -f *.class
@rm -f jode.jar .java.deps @rm -f $(JARFILE) .java.deps
jode.jar: $(MY_CLASSES) $(JARFILE): $(noinst_DATA)
CLASSPATH= $(JAR) -cf jode.jar jode CLASSPATH=$(top_builddir):$(CLASSPATH) $(JAVA) -mx80m \
jode.obfuscator.Main --dest $(JARFILE) \
--revtable rename.table \
--rename=none --breakserial --strip=unreach -v -v \
--preserve 'jode.Decompiler.main.*' \
--preserve 'jode.JodeApplet.<init>.*' \
--preserve 'jode.JodeWindow.main.*' \
--preserve 'jode.obfuscator.Main.main.*' \
--preserve 'jode.swingui.Main.main.*' jode

Loading…
Cancel
Save