## Process this file with automake to produce Makefile.in. bindir = $(libdir)/sablevm/bin datadir = $(libdir)/sablevm/lib BYTECODE_JAR=src/jars/bytecode.jar DISTCLEANFILES = $(BYTECODE_JAR) \ javap javah serialver localegen currencygen native2ascii rmic rmiregistry AM_GCJFLAGS = --classpath=$(CLASSPATH) -fassume-compiled -I$(srcdir)/src -I$(XML_JAR) -I$(BYTECODE_JAR) -I. MY_JAVAC_FLAGS = -classpath $(CLASSPATH):$(srcdir)/src -g $(JAVAC_FLAGS) LIBGCJCOMPILE = $(LIBTOOL) --tag=GCJ --mode=compile $(GCJ) $(AM_GCJFLAGS) $(GCJFLAGS) -c -MD -MT $@ GCJCOMPILE = $(LIBGCJCOMPILE) -MF $(@:.o=.d) LTGCJCOMPILE = $(LIBGCJCOMPILE) -MF $(@:.lo=.d) data_JARS = cptools.jar BUILT_SOURCES = $(data_JARS) if ENABLE_GCJ_BINARY #bin_PROGRAMS = javap javah serialver localegen currencygen native2ascii \ # rmic rmiregistry lib_LTLIBRARIES = libcptools.la if USE_GNUBYTECODE lib_LTLIBRARIES += libbytecode.la libbytecode_la_LINK = $(GCJLINK) nodist_libbytecode_la_SOURCES = $(BYTECODE_JAR) endif else bin_SCRIPTS = javap javah serialver localegen currencygen native2ascii \ rmic rmiregistry endif javap: $(srcdir)/bin/javap rm -f $@ cat $< | sed s/JAVA_HOME/`echo @libdir@/sablevm | sed 's/\\//\\\\\\//g'`/g > $@ chmod a-w $@ chmod +x $@ javah: $(srcdir)/bin/javah rm -f $@ cat $< | sed s/JAVA_HOME/`echo @libdir@/sablevm | sed 's/\\//\\\\\\//g'`/g > $@ chmod a-w $@ chmod +x $@ serialver: $(srcdir)/bin/serialver rm -f $@ cat $< | sed s/JAVA_HOME/`echo @libdir@/sablevm | sed 's/\\//\\\\\\//g'`/g > $@ chmod a-w $@ chmod +x $@ native2ascii: $(srcdir)/bin/native2ascii rm -f $@ cat $< | sed s/JAVA_HOME/`echo @libdir@/sablevm | sed 's/\\//\\\\\\//g'`/g > $@ chmod a-w $@ chmod +x $@ localegen: $(srcdir)/bin/localegen rm -f $@ cat $< | sed s/JAVA_HOME/`echo @libdir@/sablevm | sed 's/\\//\\\\\\//g'`/g > $@ chmod a-w $@ chmod +x $@ currencygen: $(srcdir)/bin/currencygen rm -f $@ cat $< | sed s/JAVA_HOME/`echo @libdir@/sablevm | sed 's/\\//\\\\\\//g'`/g > $@ chmod a-w $@ chmod +x $@ rmic: $(srcdir)/bin/rmic rm -f $@ cat $< | sed s/JAVA_HOME/`echo @libdir@/sablevm | sed 's/\\//\\\\\\//g'`/g > $@ chmod a-w $@ chmod +x $@ rmiregistry: $(srcdir)/bin/rmiregistry rm -f $@ cat $< | sed s/JAVA_HOME/`echo @libdir@/sablevm | sed 's/\\//\\\\\\//g'`/g > $@ chmod a-w $@ chmod +x $@ # TODO: we should use some globbing to just get all the *.java # so that we didn't have to list them explicitely cptools_jar_SOURCES = \ src/gnu/classpath/tools/javah/JavahMain.java \ src/gnu/classpath/tools/javah/Javah.java \ src/gnu/classpath/tools/javah/GnuByteCodeJavah.java \ src/gnu/classpath/tools/javap/JavapMain.java \ src/gnu/classpath/tools/javap/Javap.java \ src/gnu/classpath/tools/javap/GnuByteCodeJavap.java \ src/gnu/classpath/tools/serialver/SerialVer.java \ src/gnu/classpath/tools/Util.java \ src/gnu/classpath/tools/native2ascii/Native2ASCII.java \ src/gnu/ldml/AliasElement.java \ src/gnu/ldml/Analyzer.java \ src/gnu/ldml/Constants.java \ src/gnu/ldml/DataElement.java \ src/gnu/ldml/DetailedListElement.java \ src/gnu/ldml/Element.java \ src/gnu/ldml/ExpansionElement.java \ src/gnu/ldml/ListDataElement.java \ src/gnu/ldml/OrderedListBaseElement.java \ src/gnu/ldml/OrderedListElement.java \ src/gnu/ldml/ParseException.java \ src/gnu/ldml/Parser.java \ src/gnu/ldml/ResetElement.java \ src/gnu/localegen/CollationInterpreter.java \ src/gnu/localegen/JavaGenerator.java \ src/gnu/localegen/PropertiesGenerator.java \ src/gnu/localegen/Main.java \ src/gnu/currencygen/Main.java \ src/gnu/classpath/tools/rmi/rmic/Compile_gcj.java \ src/gnu/classpath/tools/rmi/rmic/Compiler.java \ src/gnu/classpath/tools/rmi/rmic/RMICException.java \ src/gnu/classpath/tools/rmi/rmic/Compile_jikes.java \ src/gnu/classpath/tools/rmi/rmic/CompilerProcess.java \ src/gnu/classpath/tools/rmi/rmic/RMIC.java \ src/gnu/classpath/tools/rmi/rmic/Compile_kjc.java \ src/gnu/classpath/tools/rmi/rmic/TabbedWriter.java \ src/gnu/classpath/tools/rmi/registry/RegistryImpl.java \ src/gnu/classpath/tools/rmi/registry/RegistryImpl_Skel.java \ src/gnu/classpath/tools/rmi/registry/RegistryImpl_Stub.java \ src/gnu/bytecode/CpoolClass.java \ src/gnu/bytecode/IfState.java \ src/gnu/bytecode/Access.java \ src/gnu/bytecode/ClassTypeWriter.java \ src/gnu/bytecode/CpoolFloat.java \ src/gnu/bytecode/SwitchState.java \ src/gnu/bytecode/CpoolString.java \ src/gnu/bytecode/Attribute.java \ src/gnu/bytecode/LocalVarsAttr.java \ src/gnu/bytecode/ClassType.java \ src/gnu/bytecode/CpoolRef.java \ src/gnu/bytecode/Method.java \ src/gnu/bytecode/Variable.java \ src/gnu/bytecode/Field.java \ src/gnu/bytecode/SourceDebugExtAttr.java \ src/gnu/bytecode/InnerClassesAttr.java \ src/gnu/bytecode/ClassFileInput.java \ src/gnu/bytecode/Filter.java \ src/gnu/bytecode/CpoolValue1.java \ src/gnu/bytecode/SourceFileAttr.java \ src/gnu/bytecode/CpoolNameAndType.java \ src/gnu/bytecode/ZipArchive.java \ src/gnu/bytecode/dump.java \ src/gnu/bytecode/CodeAttr.java \ src/gnu/bytecode/Location.java \ src/gnu/bytecode/ObjectType.java \ src/gnu/bytecode/Scope.java \ src/gnu/bytecode/PrimType.java \ src/gnu/bytecode/ExceptionsAttr.java \ src/gnu/bytecode/AttrContainer.java \ src/gnu/bytecode/LineNumbersAttr.java \ src/gnu/bytecode/TryState.java \ src/gnu/bytecode/Label.java \ src/gnu/bytecode/ArrayType.java \ src/gnu/bytecode/ConstantValueAttr.java \ src/gnu/bytecode/Type.java \ src/gnu/bytecode/ConstantPool.java \ src/gnu/bytecode/CpoolUtf8.java \ src/gnu/bytecode/MiscAttr.java \ src/gnu/bytecode/ZipLoader.java \ src/gnu/bytecode/VarEnumerator.java \ src/gnu/bytecode/ArrayClassLoader.java \ src/gnu/bytecode/CpoolValue2.java \ src/gnu/bytecode/CpoolEntry.java if ENABLE_GCJ_BINARY libcptools_la_SOURCES = $(cptools_jar_SOURCES) endif cptools_jar_CLASSES = $(patsubst src/%.java,classes/%.class,$(cptools_jar_SOURCES)) cptools.jar: createdirectories $(cptools_jar_CLASSES) $(JAR) cf $@ -C classes gnu createdirectories: mkdir -p classes #gjdoc.mf: # echo 'Main-Class: gnu.classpath.tools.gjdoc.Main' > gjdoc.mf ## We don't use $(GCJFLAGS) in this rule, because it might contain '-O', ## and that doesn't work that great when generating bytecode. ## ## FIXME change this to be user-configurable, so '-g' can be disabled. #$(cptools_jar_CLASSES): $(lib_gnu_classpath_tools_gjdoc_la_GENSOURCES) $(cptools_jar_CLASSES): classes/gnu/%.class: $(srcdir)/src/gnu/%.java $(JAVAC) $(MY_JAVAC_FLAGS) -d classes $< clean-local: rm -rf classes $(data_JARS) dist-hook: test -d $(distdir)/bin/ || mkdir $(distdir)/bin cp $(srcdir)/bin/currencygen $(distdir)/bin/ cp $(srcdir)/bin/javah $(distdir)/bin/ cp $(srcdir)/bin/javap $(distdir)/bin/ cp $(srcdir)/bin/localegen $(distdir)/bin/ cp $(srcdir)/bin/native2ascii $(distdir)/bin/ cp $(srcdir)/bin/rmic $(distdir)/bin/ cp $(srcdir)/bin/rmiregistry $(distdir)/bin/ cp $(srcdir)/bin/serialver $(distdir)/bin/ install-data-hook: $(INSTALL) -d $(DESTDIR)$(datadir) $(INSTALL) --mode 644 $(data_JARS) $(DESTDIR)$(datadir) # $(LN_S) -f $(datadir)/java/cptools-$(VERSION).jar $(datadir)/java/cptools.jar test: tests/%.class $(srcdir)/src/test/%.java $(JAVAC) -g -d tests $<