OSDN Git Service

Index: ChangeLog
[pf3gnuchains/gcc-fork.git] / gcc / java / Make-lang.in
index 3676273..c6f714c 100644 (file)
@@ -1,6 +1,6 @@
 # Top level -*- makefile -*- fragment for the GNU compiler for the Java(TM)
 # language.
-#   Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+#   Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 
 #This file is part of GCC.
 
@@ -49,11 +49,12 @@ GCJ = gcj
 
 # Define the names for selecting java in LANGUAGES.
 java: jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) \
-      gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext)
+      gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext) \
+      gjnih$(exeext)
 
 # Define the name of target independent tools to be installed in $(bindir)
 # Names are subject to changes
-JAVA_TARGET_INDEPENDENT_BIN_TOOLS = gcjh jv-scan jcf-dump
+JAVA_TARGET_INDEPENDENT_BIN_TOOLS = gcjh gjnih jv-scan jcf-dump
 
 # Tell GNU make to ignore these if they exist.
 .PHONY: java
@@ -102,27 +103,37 @@ gt-java-builtins.h gtype-java.h gt-java-resource.h : s-gtype ; @true
 # Executables built by this Makefile:
 JAVA_OBJS = java/parse.o java/class.o java/decl.o java/expr.o \
   java/constants.o java/lang.o java/typeck.o java/except.o java/verify.o \
+  java/verify-glue.o java/verify-impl.o \
   java/zextract.o java/jcf-io.o java/win32-host.o java/jcf-parse.o java/mangle.o \
   java/mangle_name.o java/builtins.o java/resource.o \
   java/jcf-write.o java/buffer.o java/check-init.o java/jcf-depend.o \
-  java/jcf-path.o java/xref.o java/boehm.o java/java-gimplify.o mkdeps.o
+  java/jcf-path.o java/boehm.o java/java-gimplify.o
 
 GCJH_OBJS = java/gjavah.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \
-  java/win32-host.o java/zextract.o version.o mkdeps.o errors.o ggc-none.o \
+  java/win32-host.o java/zextract.o version.o errors.o ggc-none.o \
   intl.o
 
+GJNIH_OBJS = java/gjavah-jni.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \
+  java/win32-host.o java/zextract.o version.o errors.o \
+  ggc-none.o intl.o
+
 JVSCAN_OBJS = java/parse-scan.o java/jv-scan.o version.o intl.o
 
 JCFDUMP_OBJS = java/jcf-dump.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \
-               java/win32-host.o java/zextract.o errors.o version.o mkdeps.o ggc-none.o intl.o
+               java/win32-host.o java/zextract.o errors.o version.o ggc-none.o intl.o
 
 JVGENMAIN_OBJS = java/jvgenmain.o java/mangle_name.o errors.o intl.o
 
-# Use loose warnings for this front end.
-java-warn = $(WERROR)
+# Use strict warnings for this front end.
+java-warn = $(STRICT_WARN)
+
 # String length warnings
 jvspec.o-warn = -Wno-error
 
+# Bison-1.75 output often yields (harmless) -Wtraditional warnings
+java/parse-scan.o-warn = -Wno-error
+java/parse.o-warn = -Wno-error
+
 jc1$(exeext): $(JAVA_OBJS) $(BACKEND) $(LIBDEPS)
        rm -f $@
        $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \
@@ -130,7 +141,11 @@ jc1$(exeext): $(JAVA_OBJS) $(BACKEND) $(LIBDEPS)
 
 gcjh$(exeext): $(GCJH_OBJS) $(LIBDEPS)
        rm -f $@
-       $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GCJH_OBJS) $(ZLIB) $(LIBS)
+       $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GCJH_OBJS) $(CPPLIBS) $(ZLIB) $(LIBS)
+
+gjnih$(exeext): $(GJNIH_OBJS) $(LIBDEPS)
+       rm -f $@
+       $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GJNIH_OBJS) $(CPPLIBS) $(ZLIB) $(LIBS)
 
 jv-scan$(exeext): $(JVSCAN_OBJS) $(LIBDEPS)
        rm -f $@
@@ -139,7 +154,7 @@ jv-scan$(exeext): $(JVSCAN_OBJS) $(LIBDEPS)
 jcf-dump$(exeext): $(JCFDUMP_OBJS) $(LIBDEPS)
        rm -f $@
        $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JCFDUMP_OBJS) \
-               $(ZLIB) $(LDEXP_LIB) $(LIBS)
+               $(CPPLIBS) $(ZLIB) $(LDEXP_LIB) $(LIBS)
 
 jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS)
        rm -f $@
@@ -166,8 +181,10 @@ java.srcinfo: doc/gcj.info
        -cp -p $^ $(srcdir)/doc
 
 dvi:: doc/gcj.dvi
+html:: $(htmldir)/java/index.html
 JAVA_MANFILES = doc/gcj.1 doc/gcjh.1 doc/jv-scan.1 doc/jcf-dump.1 doc/gij.1 \
-                doc/jv-convert.1 doc/rmic.1 doc/rmiregistry.1
+                doc/jv-convert.1 doc/grmic.1 doc/grmiregistry.1 \
+               doc/gcj-dbtool.1 doc/gjnih.1
 
 java.man: $(JAVA_MANFILES)
 
@@ -207,7 +224,9 @@ java.install-common: installdirs
            rm -f $(DESTDIR)$(bindir)/$$tool_transformed_name$(exeext); \
            $(INSTALL_PROGRAM) $$tool$(exeext) $(DESTDIR)$(bindir)/$$tool_transformed_name$(exeext); \
            chmod a+x $(DESTDIR)$(bindir)/$$tool_transformed_name$(exeext); \
-           if [ $$tool = gcjh ]; then \
+           if [ -f $(GCJ)-cross$(exeext) ]; then \
+             true; \
+           elif [ $$tool = gcjh ]; then \
              rm -f $(DESTDIR)$(bindir)/$(GCJH_TARGET_INSTALL_NAME)$(exeext); \
              ( cd $(DESTDIR)$(bindir) && \
                $(LN) $$tool_transformed_name$(exeext) $(GCJH_TARGET_INSTALL_NAME)$(exeext) ); \
@@ -221,10 +240,12 @@ java.uninstall:
        -rm -rf $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext)
        -rm -rf $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext)
        -rm -rf $(DESTDIR)$(man1dir)/gcjh$(man1ext)
+       -rm -rf $(DESTDIR)$(man1dir)/gjnih$(man1ext)
        -rm -rf $(DESTDIR)$(man1dir)/jv-scan$(man1ext)
        -rm -rf $(DESTDIR)$(man1dir)/jcf-dump$(man1ext)
        -rm -rf $(DESTDIR)$(man1dir)/gij$(man1ext)
        -rm -rf $(DESTDIR)$(man1dir)/jv-convert$(man1ext)
+       -rm -rf $(DESTDIR)$(man1dir)/gcj-dbtool$(man1ext)
 
 install-info:: $(DESTDIR)$(infodir)/gcj.info
 
@@ -237,18 +258,20 @@ java.mostlyclean:
        -rm -f java/parse.c java/parse-scan.c
        -rm -f java/*$(objext) $(DEMANGLER_PROG)
        -rm -f java/*$(coverageexts)
-       -rm -f jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext) s-java
+       -rm -f jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) gcjh$(exeext) \
+          gjnih$(exeext) jv-scan$(exeext) jcf-dump$(exeext) s-java
 java.clean:
 java.distclean:
        -rm -f java/config.status java/Makefile
        -rm -f java/parse.output java/y.tab.c
 java.maintainer-clean:
-       -rm -f $(docobjdir)/gcj.1 $(docobjdir)/gcjh.1
+       -rm -f $(docobjdir)/gcj.1 $(docobjdir)/gcjh.1 $(docobjdir)/gjnih.1
        -rm -f $(docobjdir)/jv-scan.1 $(docobjdir)/jcf-dump.1
        -rm -f $(docobjdir)/gij.1
        -rm -f $(docobjdir)/jv-convert.1
-       -rm -f $(docobjdir)/rmic.1
-       -rm -f $(docobjdir)/rmiregistry.1
+       -rm -f $(docobjdir)/grmic.1
+       -rm -f $(docobjdir)/grmiregistry.1
+       -rm -f $(docobjdir)/gcj-dbtool.1
 #\f
 # Stage hooks:
 # The main makefile has already created stage?/java.
@@ -287,13 +310,13 @@ java/check-init.o: java/check-init.c $(CONFIG_H) $(JAVA_TREE_H) $(SYSTEM_H) \
   coretypes.h $(TM_H) toplev.h
 java/class.o: java/class.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
   $(JAVA_TREE_H) $(RTL_H) java/jcf.h java/parse.h toplev.h output.h $(GGC_H) \
-  $(TARGET_H) function.h gt-java-class.h
+  $(TARGET_H) function.h gt-java-class.h cgraph.h
 java/constants.o: java/constants.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \
   toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) gt-java-constants.h
 java/decl.o: java/decl.c $(CONFIG_H) $(JAVA_TREE_H) $(RTL_H) java/jcf.h \
-  toplev.h flags.h $(SYSTEM_H) coretypes.h $(TM_H) function.h expr.h \
+  toplev.h flags.h $(SYSTEM_H) coretypes.h $(TM_H) function.h $(EXPR_H) \
   libfuncs.h except.h java/java-except.h $(GGC_H) real.h gt-java-decl.h \
-  target.h
+  target.h cgraph.h
 java/except.o: java/except.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h real.h \
   $(RTL_H) java/javaop.h java/java-opcodes.h except.h java/java-except.h \
   toplev.h $(SYSTEM_H) coretypes.h $(TM_H) function.h 
@@ -317,20 +340,22 @@ java/lang.o: java/lang.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h input.h \
   toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(EXPR_H) diagnostic.h \
   langhooks.h $(LANGHOOKS_DEF_H) gt-java-lang.h opts.h options.h
 java/mangle.o: java/mangle.c $(CONFIG_H) java/jcf.h $(JAVA_TREE_H) $(SYSTEM_H) \
-  coretypes.h $(TM_H) toplev.h $(GGC_H) gt-java-mangle.h
+  coretypes.h $(TM_H) toplev.h $(GGC_H) gt-java-mangle.h $(LANGHOOKS_DEF_H)
 java/mangle_name.o: java/mangle_name.c $(CONFIG_H) java/jcf.h $(JAVA_TREE_H) \
   $(SYSTEM_H) coretypes.h $(TM_H) toplev.h $(GGC_H)
 java/resource.o: java/resource.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
   $(JAVA_TREE_H) $(RTL_H) java/jcf.h java/parse.h toplev.h output.h $(GGC_H) \
-  $(TARGET_H) function.h gt-java-resource.h expr.h
+  $(TARGET_H) function.h gt-java-resource.h $(EXPR_H)
 java/typeck.o: java/typeck.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \
   java/convert.h toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) real.h
-java/win32-host.o: java/win32-host.c $(CONFIG_H) $(SYSTEM_H) java/jcf.h
+java/win32-host.o: java/win32-host.c $(CONFIG_H) $(SYSTEM_H) coretypes.h java/jcf.h
 java/verify.o: java/verify.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \
   java/javaop.h java/java-opcodes.h java/java-except.h toplev.h $(SYSTEM_H) \
   coretypes.h $(TM_H)
-java/xref.o: java/xref.c java/xref.h $(CONFIG_H) $(JAVA_TREE_H) toplev.h \
-  $(SYSTEM_H) coretypes.h $(TM_H)
+java/verify-glue.o: java/verify-glue.c $(CONFIG_H) $(SYSTEM_H) $(JAVA_TREE_H) \
+  coretypes.h $(TM_H) java/verify.h toplev.h
+java/verify-impl.o: java/verify-impl.c $(CONFIG_H) java/verify.h $(SYSTEM_H) \
+  coretypes.h  java/jcf.h $(JAVA_TREE_H)
 java/zextract.o: java/zextract.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
   java/zipfile.h
 java/java-gimplify.o: java/java-gimplify.c $(CONFIG_H) $(SYSTEM_H) \
@@ -356,34 +381,42 @@ java/jcf-path.o: java/jcf-path.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
          -DDEFAULT_TARGET_VERSION=\"$(version)\" \
          $(srcdir)/java/jcf-path.c $(OUTPUT_OPTION)
 
-# jcf-tree-inline.o needs a -D.
-java/java-tree-inline.o: tree-inline.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
-  $(TM_H) $(TREE_H) $(RTL_H) expr.h flags.h params.h input.h insn-config.h \
-  $(INTEGRATE_H) $(VARRAY_H) $(HASHTAB_H) $(SPLAY_TREE_H) toplev.h \
-  langhooks.h $(C_COMMON_H) $(srcdir)/tree-inline.h
-       $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
-       -DINLINER_FOR_JAVA=1 \
-       $(srcdir)/tree-inline.c -o $@
+# create gjnih's object
+java/gjavah-jni.o: $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(JAVA_TREE_H) \
+  java/gjavah.c java/jcf-reader.c java/jcf.h java/javaop.h version.h $(GGC_H) \
+  intl.h
+       $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(ZLIBINC) \
+               -DJNI_DEFAULT=1 \
+               $(srcdir)/java/gjavah.c $(OUTPUT_OPTION)
+
+TEXI_JAVA_FILES = java/gcj.texi $(docdir)/include/fdl.texi             \
+        $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi   \
+        gcc-vers.texi
 
 # Documentation
-doc/gcj.info: java/gcj.texi $(docdir)/include/fdl.texi \
-  $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi
+doc/gcj.info: $(TEXI_JAVA_FILES)
        if test "x$(BUILD_INFO)" = xinfo; then \
          rm -f doc/gcj.info*; \
          $(MAKEINFO) $(MAKEINFOFLAGS) -I $(docdir)/include -o $@ $<; \
        else true; fi
 
-doc/gcj.dvi: java/gcj.texi $(docdir)/include/fdl.texi \
-        $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi
+doc/gcj.dvi: $(TEXI_JAVA_FILES)
        $(TEXI2DVI) -I $(abs_docdir)/include -o $@ $<
 
+$(htmldir)/java/index.html: $(TEXI_JAVA_FILES)
+       $(mkinstalldirs) $(@D)
+       rm -f $(@D)/*
+       $(TEXI2HTML) -I $(docdir)/include -I $(srcdir)/java -o $(@D) $<
+
 .INTERMEDIATE: gcj.pod gcjh.pod jv-scan.pod jcf-dump.pod gij.pod \
-  jv-convert.pod rmic.pod rmiregistry.pod
+  jv-convert.pod grmic.pod grmiregistry.pod gcj-dbtool.pod gjnih.pod
 
 gcj.pod: java/gcj.texi
        -$(TEXI2POD) -D gcj < $< > $@
 gcjh.pod: java/gcj.texi
        -$(TEXI2POD) -D gcjh < $< > $@
+gjnih.pod: java/gcj.texi
+       -$(TEXI2POD) -D gjnih < $< > $@
 jv-scan.pod: java/gcj.texi
        -$(TEXI2POD) -D jv-scan < $< > $@
 jcf-dump.pod: java/gcj.texi
@@ -392,26 +425,35 @@ gij.pod: java/gcj.texi
        -$(TEXI2POD) -D gij < $< > $@
 jv-convert.pod: java/gcj.texi
        -$(TEXI2POD) -D jv-convert < $< > $@
-rmic.pod: java/gcj.texi
-       -$(TEXI2POD) -D rmic < $< > $@
-rmiregistry.pod: java/gcj.texi
-       -$(TEXI2POD) -D rmiregistry < $< > $@
+grmic.pod: java/gcj.texi
+       -$(TEXI2POD) -D grmic < $< > $@
+grmiregistry.pod: java/gcj.texi
+       -$(TEXI2POD) -D grmiregistry < $< > $@
+gcj-dbtool.pod: java/gcj.texi
+       -$(TEXI2POD) -D gcj-dbtool < $< > $@
 
 # Install the man pages.
 java.install-man: installdirs \
                   $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext) \
                  $(JAVA_TARGET_INDEPENDENT_BIN_TOOLS:%=doc/%.1) \
-                 doc/gij.1 doc/jv-convert.1 doc/rmic.1 doc/rmiregistry.1
+                 doc/gij.1 doc/jv-convert.1 doc/grmic.1 doc/grmiregistry.1 \
+                 doc/gcj-dbtool.1
        for tool in $(JAVA_TARGET_INDEPENDENT_BIN_TOOLS) \
-               gij jv-convert rmic rmiregistry ; do \
+               gij jv-convert grmic grmiregistry gcj-dbtool ; do \
          tool_transformed_name=`echo $$tool|sed '$(program_transform_name)'`; \
          man_name=$(DESTDIR)$(man1dir)/$${tool_transformed_name}$(man1ext); \
          rm -f $$man_name ; \
-         $(INSTALL_DATA) doc/$${tool}.1 $$man_name; \
+         for source_name in doc/$${tool}.1 $(srcdir)/doc/$${tool}.1 ; do \
+           if test -f $$source_name; then \
+             $(INSTALL_DATA) $$source_name $$man_name; \
+             break; \
+             else : ; \
+           fi; \
+         done ; \
          chmod a-x $$man_name ; \
        done
 
-$(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext): doc/gcj.1
+$(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext): doc/gcj.1 installdirs
        -rm -f $@
        -$(INSTALL_DATA) $< $@
        -chmod a-x $@