OSDN Git Service

Merged gcj-eclipse branch to trunk.
[pf3gnuchains/gcc-fork.git] / libjava / classpath / tools / Makefile.am
index 01364f2..1d4cb66 100755 (executable)
 ## Input file for automake to generate the Makefile.in used by configure
 
-GLIBJ_CLASSPATH='$(top_builddir)/lib':'$(top_builddir)/lib/glibj.zip'
+## GCJ LOCAL: use srcdir to find core classes.
+GLIBJ_BOOTCLASSPATH='$(top_srcdir)/lib'
+GLIBJ_CLASSPATH=$(srcdir)/asm
+## END GCJ LOCAL
 
 # Setup the compiler to use the GNU Classpath library we just build
 if FOUND_GCJ
-JCOMPILER = $(GCJ) -encoding UTF-8 --bootclasspath $(GLIBJ_CLASSPATH) --classpath . -C
-else
-if FOUND_JIKES
-JCOMPILER = $(JIKES) $(JIKESENCODING) -bootclasspath '' -extdirs '' -sourcepath '' --classpath $(GLIBJ_CLASSPATH):.
-else
-if FOUND_GCJX
-JCOMPILER = $(GCJX) -encoding UTF-8 -bootclasspath '' -sourcepath '' -classpath $(GLIBJ_CLASSPATH):.
+JCOMPILER = $(GCJ) -C -encoding UTF-8 -bootclasspath $(GLIBJ_BOOTCLASSPATH) -classpath $(GLIBJ_CLASSPATH):.
 else
 if FOUND_ECJ
-JCOMPILER = $(ECJ) -encoding UTF-8 -bootclasspath $(GLIBJ_CLASSPATH) -classpath .
+JCOMPILER = $(ECJ) -1.5 -encoding UTF-8 -bootclasspath $(GLIBJ_BOOTCLASSPATH) -classpath .:$(GLIBJ_CLASSPATH)
 else
 error dunno how to setup the JCOMPILER and compile
 endif
 endif
-endif
-endif
 
-## GCJ LOCAL: do not build and install wrapper binaries here, since
-## the build ordering will not work.  Instead build them in
-## gcc/libjava/Makefile.am.
-# if CREATE_WRAPPERS
-# bin_SCRIPTS =
-# bin_PROGRAMS = gappletviewer gjarsigner gkeytool \
-#      gjar gnative2ascii gserialver
-# 
-# if FOUND_GCJ
-# LIBJVM = -lgcj
-# else
-# if FOUND_CACAO
-# LIBJVM = -ljvm
-# else
-# LIBJVM =
-# endif
-# endif
-# 
-# AM_CPPFLAGS = -Wall \
-#      -I$(top_srcdir)/include \
-#      -DTOOLS_ZIP="\"$(TOOLSdir)/$(TOOLS_ZIP)\""
-# 
-# gappletviewer_SOURCES = toolwrapper.c
-# gappletviewer_CFLAGS = \
-#      -DTOOLPACKAGE="\"appletviewer\"" \
-#      -DTOOLNAME="\"gappletviewer\""
-# gappletviewer_LDFLAGS = -L$(libdir) $(LIBJVM)
-# 
-# gjarsigner_SOURCES = toolwrapper.c
-# gjarsigner_CFLAGS = \
-#      -DTOOLPACKAGE="\"jarsigner\"" \
-#      -DTOOLNAME="\"gjarsigner\""
-# gjarsigner_LDFLAGS = -L$(libdir) $(LIBJVM)
-# 
-# gkeytool_SOURCES = toolwrapper.c
-# gkeytool_CFLAGS = \
-#      -DTOOLPACKAGE="\"keytool\"" \
-#      -DTOOLNAME="\"gkeytool\""
-# gkeytool_LDFLAGS = -L$(libdir) $(LIBJVM)
-# 
-# gjar_SOURCES = toolwrapper.c
-# gjar_CFLAGS = \
-#      -DTOOLPACKAGE="\"jar\"" \
-#      -DTOOLNAME="\"gjar\""
-# gjar_LDFLAGS = -L$(libdir) $(LIBJVM)
-# 
-# gnative2ascii_SOURCES = toolwrapper.c
-# gnative2ascii_CFLAGS = \
-#      -DTOOLPACKAGE="\"native2ascii\"" \
-#      -DTOOLNAME="\"gnative2ascii\""
-# gnative2ascii_LDFLAGS = -L$(libdir) $(LIBJVM)
-# 
-# gserialver_SOURCES = toolwrapper.c
-# gserialver_CFLAGS = \
-#      -DTOOLPACKAGE="\"serialver\"" \
-#      -DTOOLNAME="\"gserialver\""
-# gserialver_LDFLAGS = -L$(libdir) $(LIBJVM)
-# 
-# else
-# bin_SCRIPTS = gappletviewer gjarsigner gkeytool \
-#      gjar gnative2ascii gserialver
-# bin_PROGRAMS =
-# endif
-## END GCJ LOCAL
+if CREATE_WRAPPERS
+bin_SCRIPTS =
+bin_PROGRAMS = gappletviewer gjarsigner gkeytool \
+       gjar gnative2ascii gserialver gjavah grmiregistry \
+       gtnameserv gorbd grmid grmic
+
+
+AM_CPPFLAGS = -Wall \
+       -I$(top_srcdir)/include \
+       -DLIBJVM="\"$(libdir)/libjvm\"" \
+       -DTOOLS_ZIP="\"$(TOOLSdir)/$(TOOLS_ZIP)\""
+
+gappletviewer_SOURCES = toolwrapper.c
+gappletviewer_CFLAGS = \
+       -DTOOLPACKAGE="\"appletviewer\"" \
+       -DTOOLNAME="\"gappletviewer\""
+
+gjarsigner_SOURCES = toolwrapper.c
+gjarsigner_CFLAGS = \
+       -DTOOLPACKAGE="\"jarsigner\"" \
+       -DTOOLNAME="\"gjarsigner\""
+
+gkeytool_SOURCES = toolwrapper.c
+gkeytool_CFLAGS = \
+       -DTOOLPACKAGE="\"keytool\"" \
+       -DTOOLNAME="\"gkeytool\""
+
+gjar_SOURCES = toolwrapper.c
+gjar_CFLAGS = \
+       -DTOOLPACKAGE="\"jar\"" \
+       -DTOOLNAME="\"gjar\""
+
+gnative2ascii_SOURCES = toolwrapper.c
+gnative2ascii_CFLAGS = \
+       -DTOOLPACKAGE="\"native2ascii\"" \
+       -DTOOLNAME="\"gnative2ascii\""
+
+gserialver_SOURCES = toolwrapper.c
+gserialver_CFLAGS = \
+       -DTOOLPACKAGE="\"serialver\"" \
+       -DTOOLNAME="\"gserialver\""
+
+grmiregistry_SOURCES = toolwrapper.c
+grmiregistry_CFLAGS = \
+       -DTOOLPACKAGE="\"rmiregistry\"" \
+       -DTOOLNAME="\"grmiregistry\""
+
+gtnameserv_SOURCES = toolwrapper.c
+gtnameserv_CFLAGS = \
+       -DTOOLPACKAGE="\"tnameserv\"" \
+       -DTOOLNAME="\"gtnameserv\""
+
+gorbd_SOURCES = toolwrapper.c
+gorbd_CFLAGS = \
+       -DTOOLPACKAGE="\"orbd\"" \
+       -DTOOLNAME="\"gorbd\""
+
+grmid_SOURCES = toolwrapper.c
+grmid_CFLAGS = \
+       -DTOOLPACKAGE="\"rmid\"" \
+       -DTOOLNAME="\"grmid\""
+
+gjavah_SOURCES = toolwrapper.c
+gjavah_CFLAGS = \
+       -DTOOLPACKAGE="\"javah\"" \
+       -DTOOLNAME="\"gjavah\""
+
+grmic_SOURCES = toolwrapper.c
+grmic_CFLAGS = \
+       -DTOOLPACKAGE="\"rmic\"" \
+       -DTOOLNAME="\"grmic\""
+
+else
+bin_SCRIPTS = gappletviewer gjarsigner gkeytool \
+       gjar gnative2ascii gserialver gjavah grmiregistry \
+       gtnameserv gorbd grmid grmic
+bin_PROGRAMS =
+endif
 EXTRA_DIST = toolwrapper.c gappletviewer.in gjarsigner.in gkeytool.in \
-       gjar.in gnative2ascii.in gserialver.in
+       gjar.in gnative2ascii.in gserialver.in gjavah.in grmiregistry.in \
+       gtnameserv.in gorbd.in grmid.in grmic.in
 
 # All our example java source files
-TOOLS_JAVA_FILES = $(srcdir)/gnu/classpath/tools/*.java $(srcdir)/gnu/classpath/tools/*/*.java $(srcdir)/gnu/classpath/tools/*/*/*.java
+TOOLS_JAVA_FILES = $(srcdir)/gnu/classpath/tools/*/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/attrs/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/commons/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/optimizer/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/signature/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/tree/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/tree/analysis/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/util/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/util/attrs/*.java \
+       $(srcdir)/external/asm/org/objectweb/asm/xml/*.java
 
 # The zip files with classes we want to produce.
-
-## GCJ LOCAL: rename this tools.jar for libgcj_tools_la_SOURCES in
-## gcc/libjava/Makefile.am.
-TOOLS_ZIP = tools.jar
+TOOLS_ZIP = tools.zip
 
 # Extra objects that will not exist until configure-time
 BUILT_SOURCES = $(TOOLS_ZIP)
 
-# The templates that must be included into the generated zip file.
-GRMIC_TEMPLATES = $(srcdir)/gnu/classpath/tools/giop/grmic/templates/*.jav
-RMIC_TEMPLATES = $(srcdir)/gnu/classpath/tools/rmi/rmic/templates/*.jav
-
-TOOLS_TEMPLATES = $(GRMIC_TEMPLATES) $(RMIC_TEMPLATES)
-
-# This covers the built-in help texts, both for giop and rmic subpackages.
-GIOP_HELPS = $(srcdir)/gnu/classpath/tools/giop/*.txt
-RMI_HELPS = $(srcdir)/gnu/classpath/tools/rmi/*.txt
-
-TOOLS_HELPS = $(GIOP_HELPS) $(RMI_HELPS)
-
-# The tool specific README files.
-READMES = $(srcdir)/gnu/classpath/tools/giop/README
+# RMIC templates that must be included in the generated zip file.
+RMIC_TEMPLATES = $(srcdir)/gnu/classpath/tools/rmic/templates/*.jav
 
 # All the files we find "interesting"
-ALL_TOOLS_FILES = $(TOOLS_JAVA_FILES) $(TOOLS_TEMPLATES) $(TOOLS_HELPS)
+ALL_TOOLS_FILES = $(TOOLS_JAVA_FILES) $(RMIC_TEMPLATES)
 
-## GCJ LOCAL: build tools.zip but do not install it.  It is installed
-## in gcc/libjava/Makefile.am.
-# # Some architecture independent data to be installed.
-# TOOLS_DATA = $(TOOLS_ZIP)
-noinst_DATA = $(TOOLS_ZIP)
+# Some architecture independent data to be installed.
+TOOLS_DATA = $(TOOLS_ZIP)
 
 # Where we want these data files installed.
-## GCJ LOCAL: install libgcj-tools.jar alongside libgcj.jar.
-# TOOLSdir = $(datadir)/java
+TOOLSdir = $(pkgdatadir)
 
 # Make sure everything is included in the distribution.
 dist-hook:
@@ -146,26 +147,45 @@ dist-hook:
 # the class files. Always regenerate all .class files and remove them
 # immediately.  And copy the template files we use to the classes dir
 # so they get also included.
-## GCJ LOCAL: assume FASTJAR since we pass --with-fastjar to configure
 $(TOOLS_ZIP): $(TOOLS_JAVA_FILES)
-       mkdir -p classes/gnu/classpath/tools/giop/grmic/templates
-       mkdir -p classes/gnu/classpath/tools/rmi/rmic/templates
-       mkdir -p classes/gnu/classpath/tools/appletviewer
-       mkdir -p classes/gnu/classpath/tools/jarsigner
-       mkdir -p classes/gnu/classpath/tools/keytool
-       cp $(RMIC_TEMPLATES) classes/gnu/classpath/tools/rmi/rmic/templates
-       cp $(GRMIC_TEMPLATES) classes/gnu/classpath/tools/giop/grmic/templates
-       cp $(RMI_HELPS) classes/gnu/classpath/tools/rmi/
-       cp $(GIOP_HELPS) classes/gnu/classpath/tools/giop/
-       $(JCOMPILER) -d classes $(TOOLS_JAVA_FILES)
+## GCJ LOCAL: put classes in srcdir
+##     @rm -rf classes asm
+##     mkdir classes asm
+       find $(srcdir)/external/asm -name '*.java' -print > asm.lst
+       find $(srcdir)/gnu/classpath/tools -name '*.java' -print > classes.lst
+       cat classes.lst asm.lst > all-classes.lst
+if JAVA_MAINTAINER_MODE
+## Compile ASM separately as it is latin-1 encoded.
+       AC=`echo $(JCOMPILER) | sed -e 's/UTF-8/ISO-8859-1/g'`; \
+         $$AC -g -w -d $(srcdir)/asm @asm.lst
+       $(JCOMPILER) -g -w -d $(srcdir)/classes @classes.lst
+## Copy over tools resource files.
+       @list=`cd $(top_srcdir)/resource && find gnu/classpath/tools -name \*.properties -print`; \
+       for p in $$list; do \
+         dirname=classes/`dirname $$p`; \
+         if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
+         echo "  cp $(top_srcdir)/resource/$$p classes/$$p"; \
+         cp $(top_srcdir)/resource/$$p classes/$$p; \
+       done
+endif
+       cp -pR $(srcdir)/asm .
+       cp -pR $(srcdir)/classes .
+## END GCJ LOCAL
+## First add classpath tools stuff.
        (cd classes; \
-       $(FASTJAR) cf ../$(TOOLS_ZIP) .; \
+       if test "$(ZIP)" != ""; then $(ZIP) -r ../$(TOOLS_ZIP) .; fi; \
+       if test "$(FASTJAR)" != ""; then $(FASTJAR) cf ../$(TOOLS_ZIP) .; fi; \
+       cd ..)
+## Now add ASM classes.
+       (cd asm; \
+       if test "$(ZIP)" != ""; then $(ZIP) -u -r ../$(TOOLS_ZIP) .; fi; \
+       if test "$(FASTJAR)" != ""; then $(FASTJAR) uf ../$(TOOLS_ZIP) .; fi; \
        cd ..)
-       rm -rf classes
+       rm -rf asm classes classes.lst asm.lst
 
 # Zip file be gone! (and make sure the classes are gone too)
 clean-local:
-       rm -rf $(TOOLS_ZIP) classes
+       rm -rf $(TOOLS_ZIP) classes asm asm.lst
 
 # FIXME: remove this when GNU Classpath includes a bootstrap VM.
 installcheck-binSCRIPTS: