X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fjava%2FMake-lang.in;h=4db231e1a74d11aecc350005f0c345d43d31613b;hb=b22f66e203c5928a518440558634496a4ff1b391;hp=cc53c90d9af63a9e417d3dd96c8b2c592d48cf74;hpb=15425f9168ca854aa0710f6bf96927dbe85db7f2;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/java/Make-lang.in b/gcc/java/Make-lang.in index cc53c90d9af..4db231e1a74 100644 --- a/gcc/java/Make-lang.in +++ b/gcc/java/Make-lang.in @@ -1,12 +1,13 @@ -# Top level makefile fragment for the GNU compiler for the Java(TM) +# Top level -*- makefile -*- fragment for the GNU compiler for the Java(TM) # language. -# Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. +# Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. #This file is part of GCC. #GCC is free software; you can redistribute it and/or modify #it under the terms of the GNU General Public License as published by -#the Free Software Foundation; either version 2, or (at your option) +#the Free Software Foundation; either version 3, or (at your option) #any later version. #GCC is distributed in the hope that it will be useful, @@ -15,9 +16,8 @@ #GNU General Public License for more details. #You should have received a copy of the GNU General Public License -#along with GCC; see the file COPYING. If not, write to -#the Free Software Foundation, 59 Temple Place - Suite 330, -#Boston, MA 02111-1307, USA. +#along with GCC; see the file COPYING3. If not see +#. #Java and all Java-based marks are trademarks or registered trademarks #of Sun Microsystems, Inc. in the United States and other countries. @@ -26,11 +26,10 @@ # This file provides the language dependent support in the main Makefile. # Each language makefile fragment must provide the following targets: # -# foo.all.build, foo.all.cross, foo.start.encap, foo.rest.encap, -# foo.info, foo.dvi, -# foo.install-normal, foo.install-common, foo.install-info, foo.install-man, -# foo.uninstall, -# foo.mostlyclean, foo.clean, foo.distclean, foo.extraclean, +# foo.all.cross, foo.start.encap, foo.rest.encap, +# foo.install-common, foo.install-man, foo.install-info, foo.install-pdf, +# foo.install-html, foo.info, foo.dvi, foo.pdf, foo.html, foo.uninstall, +# foo.mostlyclean, foo.clean, foo.distclean, # foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4 # # where `foo' is the name of the language. @@ -42,149 +41,133 @@ # - define the names for selecting the language in LANGUAGES. # Actual names to use when installing a native compiler. -JAVA_INSTALL_NAME = `echo gcj|sed '$(program_transform_name)'` -JAVA_TARGET_INSTALL_NAME = $(target_alias)-`echo gcj|sed '$(program_transform_name)'` +JAVA_INSTALL_NAME := $(shell echo gcj|sed '$(program_transform_name)') +JAVA_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo gcj|sed '$(program_transform_name)') -# Actual names to use when installing a cross-compiler. -JAVA_CROSS_NAME = `echo gcj|sed '$(program_transform_cross_name)'` - -GCJ = gcj +XGCJ = gcj # Define the names for selecting java in LANGUAGES. -java: jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) \ - gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext) +java: jc1$(exeext) $(XGCJ)$(exeext) jvgenmain$(exeext) jcf-dump$(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 = jcf-dump # Tell GNU make to ignore these if they exist. .PHONY: java jvspec.o: $(srcdir)/java/jvspec.c $(SYSTEM_H) coretypes.h $(TM_H) \ - $(GCC_H) $(CONFIG_H) - (SHLIB_LINK='$(SHLIB_LINK)' \ - SHLIB_MULTILIB='$(SHLIB_MULTILIB)'; \ - $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \ + $(GCC_H) $(CONFIG_H) java/jcf.h java/javaop.h + (SHLIB_LINK='$(SHLIB_LINK)'; \ + $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \ $(INCLUDES) $(srcdir)/java/jvspec.c $(OUTPUT_OPTION)) -# Create the compiler driver for $(GCJ). -$(GCJ)$(exeext): gcc.o jvspec.o version.o \ +# Create the compiler driver for $(XGCJ). +$(XGCJ)$(exeext): $(GCC_OBJS) jvspec.o java/jcf-path.o version.o \ prefix.o intl.o $(LIBDEPS) $(EXTRA_GCC_OBJS) - $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ gcc.o jvspec.o prefix.o intl.o \ + $(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(GCC_OBJS) \ + jvspec.o java/jcf-path.o prefix.o intl.o \ version.o $(EXTRA_GCC_OBJS) $(LIBS) -# Create a version of the $(GCJ) driver which calls the cross-compiler. -$(GCJ)-cross$(exeext): $(GCJ)$(exeext) - -rm -f $(GCJ)-cross$(exeext) - cp $(GCJ)$(exeext) $(GCJ)-cross$(exeext) - -po-generated: $(parsedir)/java/parse.c $(parsedir)/java/parse-scan.c - -$(parsedir)/java/parse.c: $(srcdir)/java/parse.y - $(BISON) -t --name-prefix=java_ $(BISONFLAGS) \ - -o p$$$$.c $(srcdir)/java/parse.y && \ - mv -f p$$$$.c $(parsedir)/java/parse.c - -$(parsedir)/java/parse-scan.c: $(srcdir)/java/parse-scan.y - $(BISON) -t $(BISONFLAGS) -o ps$$$$.c $(srcdir)/java/parse-scan.y && \ - mv -f ps$$$$.c $(parsedir)/java/parse-scan.c +# Create a version of the $(XGCJ) driver which calls the cross-compiler. +$(XGCJ)-cross$(exeext): $(XGCJ)$(exeext) + -rm -f $(XGCJ)-cross$(exeext) + cp $(XGCJ)$(exeext) $(XGCJ)-cross$(exeext) -$(srcdir)/java/keyword.h: $(srcdir)/java/keyword.gperf - (cd $(srcdir)/java || exit 1; \ - gperf -L ANSI-C -C -F ', 0' -p -t -j1 -i 1 -g -o -N java_keyword -k1,4,$$ \ - keyword.gperf > k$$$$.h || { \ - echo "Please update gperf from ftp://ftp.gnu.org/pub/gnu/gperf/" >&2; \ - rm -f k$$$$.h; \ - exit 1; } ; \ - mv -f k$$$$.h keyword.h) - -gt-java-class.h gt-java-constants.h gt-java-decl.h : s-gtype ; @true -gt-java-expr.h gt-java-jcf-parse.h gt-java-jcf-write.h : s-gtype ; @true -gt-java-lang.h gt-java-mangle.h gt-java-parse.h : s-gtype ; @true -gt-java-builtins.h gtype-java.h gt-java-resource.h : s-gtype ; @true +java.srcextra: # 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_OBJS = java/class.o java/decl.o java/expr.o \ + java/constants.o java/lang.o java/typeck.o java/except.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-tree-inline.o mkdeps.o + java/jcf-depend.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 +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 ggc-none.o intl.o -JVSCAN_OBJS = java/parse-scan.o java/jv-scan.o version.o +JVGENMAIN_OBJS = java/jvgenmain.o java/mangle_name.o errors.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 +java_OBJS = $(sort $(JAVA_OBJS) $(JCFDUMP_OBJS) $(JVGENMAIN_OBJS)) jvspec.o -JVGENMAIN_OBJS = java/jvgenmain.o java/mangle_name.o errors.o +# Use strict warnings for this front end. +java-warn = $(STRICT_WARN) -# Use loose warnings for this front end. -java-warn = $(WERROR) # String length warnings jvspec.o-warn = -Wno-error -jc1$(exeext): $(JAVA_OBJS) $(BACKEND) $(LIBDEPS) - rm -f $@ - $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \ - $(JAVA_OBJS) $(BACKEND) $(ZLIB) $(LIBICONV) $(LIBS) - -gcjh$(exeext): $(GCJH_OBJS) $(LIBDEPS) - rm -f $@ - $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GCJH_OBJS) $(ZLIB) $(LIBS) - -jv-scan$(exeext): $(JVSCAN_OBJS) $(LIBDEPS) +jc1$(exeext): $(JAVA_OBJS) $(BACKEND) $(LIBDEPS) attribs.o rm -f $@ - $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVSCAN_OBJS) $(LIBICONV) $(LIBS) + $(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ \ + $(JAVA_OBJS) $(BACKEND) $(ZLIB) $(LIBICONV) $(LIBS) attribs.o $(BACKENDLIBS) jcf-dump$(exeext): $(JCFDUMP_OBJS) $(LIBDEPS) rm -f $@ - $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JCFDUMP_OBJS) \ - $(ZLIB) $(LDEXP_LIB) $(LIBS) + $(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(JCFDUMP_OBJS) \ + $(CPPLIBS) $(ZLIB) $(LDEXP_LIB) $(LIBS) jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS) rm -f $@ - $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) $(LIBS) + $(LINKER) $(ALL_LINKERFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) \ + $(LIBS) # # Build hooks: -java.all.build: $(GCJ)$(exeext) -java.all.cross: $(GCJ)-cross$(exeext) -java.start.encap: $(GCJ)$(exeext) +java.all.cross: $(XGCJ)-cross$(exeext) +java.start.encap: $(XGCJ)$(exeext) java.rest.encap: java.tags: force - cd $(srcdir)/java; etags *.y *.c *.h --language=none --regex='/DEFTREECODE [(]\([A-Z_]+\)/\1/' java-tree.def + cd $(srcdir)/java; etags -o TAGS.sub *.c *.h --language=none \ + --regex='/DEFTREECODE [(]\([A-Z_]+\)/\1/' java-tree.def; \ + etags --include TAGS.sub --include ../TAGS.sub + + +java.info: doc/gcj.info + +java.srcinfo: doc/gcj.info + -cp -p $^ $(srcdir)/doc + +java.dvi: doc/gcj.dvi + +JAVA_PDFFILES = doc/gcj.pdf -java.info: $(srcdir)/java/gcj.info -java.dvi: java/gcj.dvi -java.generated-manpages: $(srcdir)/java/gcj.1 $(srcdir)/java/gcjh.1 \ - $(srcdir)/java/jv-scan.1 $(srcdir)/java/jcf-dump.1 \ - $(srcdir)/java/gij.1 $(srcdir)/java/jv-convert.1 \ - $(srcdir)/java/rmic.1 $(srcdir)/java/rmiregistry.1 +java.pdf: $(JAVA_PDFFILES) + +JAVA_HTMLFILES = $(build_htmldir)/java + +java.html: $(JAVA_HTMLFILES)/index.html + +JAVA_MANFILES = doc/gcj.1 doc/jcf-dump.1 doc/gij.1 \ + doc/jv-convert.1 doc/grmic.1 \ + doc/gcj-dbtool.1 doc/gc-analyze.1 doc/aot-compile.1 \ + doc/rebuild-gcj-db.1 + +java.man: $(JAVA_MANFILES) + +java.srcman: $(JAVA_MANFILES) + -cp -p $^ $(srcdir)/doc + +check-java : +check-java-subtargets : # Install hooks: -# jc1, gcj, jvgenmain, and gcjh are installed elsewhere as part +# jc1, gcj, and jvgenmain are installed elsewhere as part # of $(COMPILERS). -# Nothing to do here. -java.install-normal: - +# Install gcj as well as the target-independent tools. java.install-common: installdirs - -if [ -f $(GCJ)$(exeext) ]; then \ - if [ -f $(GCJ)-cross$(exeext) ]; then \ - rm -f $(DESTDIR)$(bindir)/$(JAVA_CROSS_NAME)$(exeext); \ - $(INSTALL_PROGRAM) $(GCJ)-cross$(exeext) $(DESTDIR)$(bindir)/$(JAVA_CROSS_NAME)$(exeext); \ - chmod a+x $(DESTDIR)$(bindir)/$(JAVA_CROSS_NAME)$(exeext); \ + -if [ -f $(XGCJ)$(exeext) ]; then \ + rm -f $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ + $(INSTALL_PROGRAM) $(XGCJ)$(exeext) $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ + chmod a+x $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ + if [ -f $(XGCJ)-cross$(exeext) ]; then \ + true; \ else \ - rm -f $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ - $(INSTALL_PROGRAM) $(GCJ)$(exeext) $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ - chmod a+x $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext); \ rm -f $(DESTDIR)$(bindir)/$(JAVA_TARGET_INSTALL_NAME)$(exeext); \ ( cd $(DESTDIR)$(bindir) && \ $(LN) $(JAVA_INSTALL_NAME)$(exeext) $(JAVA_TARGET_INSTALL_NAME)$(exeext) ); \ @@ -199,36 +182,47 @@ java.install-common: installdirs fi ; \ done +java.install-plugin: java.install-man: java.uninstall: -rm -rf $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext) - -rm -rf $(DESTDIR)$(bindir)/$(JAVA_CROSS_NAME)$(exeext) -rm -rf $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext) - -rm -rf $(DESTDIR)$(man1dir)/$(JAVA_CROSS_NAME)$(man1ext) - -rm -rf $(DESTDIR)$(man1dir)/gcjh$(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) - -java.install-info: installdirs - if [ -f jc1$(exeext) ] ; then \ - if [ -f $(srcdir)/java/gcj.info ]; then \ - rm -f $(DESTDIR)$(infodir)/gcj.info*; \ - for f in $(srcdir)/java/gcj.info*; do \ - realfile=`echo $$f | sed -e 's|.*/\([^/]*\)$$|\1|'`; \ - $(INSTALL_DATA) $$f $(DESTDIR)$(infodir)/$$realfile; \ - done; \ - chmod a-x $(DESTDIR)$(infodir)/gcj.info*; \ - else true; fi; \ - else true; fi - -if [ -f jc1$(exeext) ] && [ -f $(DESTDIR)$(infodir)/gcj.info ]; then \ - if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \ - install-info --dir-file=$(DESTDIR)$(infodir)/dir $(DESTDIR)$(infodir)/gcj.info; \ - else true; fi; \ - else true; fi - + -rm -rf $(DESTDIR)$(man1dir)/gcj-dbtool$(man1ext) + -rm -rf $(DESTDIR)$(man1dir)/aot-compile$(man1ext) + -rm -rf $(DESTDIR)$(man1dir)/rebuild-gcj-db$(man1ext) + +java.install-info: $(DESTDIR)$(infodir)/gcj.info + +java.install-pdf: $(JAVA_PDFFILES) + @$(NORMAL_INSTALL) + test -z "$(pdfdir)" || $(mkinstalldirs) "$(DESTDIR)$(pdfdir)/gcc" + @list='$(JAVA_PDFFILES)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f=$(pdf__strip_dir) \ + echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(pdfdir)/gcc/$$f'"; \ + $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(pdfdir)/gcc/$$f"; \ + done + +java.install-html: $(JAVA_HTMLFILES) + @$(NORMAL_INSTALL) + test -z "$(htmldir)" || $(mkinstalldirs) "$(DESTDIR)$(htmldir)" + @list='$(JAVA_HTMLFILES)'; for p in $$list; do \ + if test -f "$$p" || test -d "$$p"; then d=""; else d="$(srcdir)/"; fi; \ + f=$(html__strip_dir) \ + if test -d "$$d$$p"; then \ + echo " $(mkinstalldirs) '$(DESTDIR)$(htmldir)/$$f'"; \ + $(mkinstalldirs) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \ + echo " $(INSTALL_DATA) '$$d$$p'/* '$(DESTDIR)$(htmldir)/$$f'"; \ + $(INSTALL_DATA) "$$d$$p"/* "$(DESTDIR)$(htmldir)/$$f"; \ + else \ + echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(htmldir)/$$f'"; \ + $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(htmldir)/$$f"; \ + fi; \ + done # # Clean hooks: # A lot of the ancillary files are deleted by the main makefile. @@ -237,20 +231,21 @@ java.install-info: installdirs java.mostlyclean: -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) $(XGCJ)$(exeext) jvgenmain$(exeext) \ + jcf-dump$(exeext) s-java java.clean: java.distclean: -rm -f java/config.status java/Makefile - -rm -f java/parse.output -java.extraclean: java.maintainer-clean: - -rm -f $(parsedir)/java/parse.c $(parsedir)/java/parse-scan.c java/parse.output java/y.tab.c - -rm -f $(srcdir)/java/gcj.1 $(srcdir)/java/gcjh.1 - -rm -f $(srcdir)/java/jv-scan.1 $(srcdir)/java/jcf-dump.1 - -rm -f $(srcdir)/java/gij.1 - -rm -f $(srcdir)/java/jv-convert.1 - -rm -f $(srcdir)/java/rmic.1 - -rm -f $(srcdir)/java/rmiregistry.1 + -rm -f $(docobjdir)/gcj.1 + -rm -f $(docobjdir)/jcf-dump.1 + -rm -f $(docobjdir)/gij.1 + -rm -f $(docobjdir)/jv-convert.1 + -rm -f $(docobjdir)/grmic.1 + -rm -f $(docobjdir)/gcj-dbtool.1 + -rm -f $(docobjdir)/gc-analyze.1 + -rm -f $(docobjdir)/aot-compile.1 + -rm -f $(docobjdir)/rebuild-gcj-db.1 # # Stage hooks: # The main makefile has already created stage?/java. @@ -270,197 +265,147 @@ java.stagefeedback: stageprofile-start # # .o:.h dependencies. -JAVA_TREE_H = $(TREE_H) $(HASHTAB_H) java/java-tree.h java/java-tree.def -JAVA_LEX_C = java/lex.c java/keyword.h java/chartables.h +JAVA_TREE_H = $(TREE_H) $(HASHTAB_H) java/java-tree.h -java/parse.o: $(parsedir)/java/parse.c java/jcf-reader.c $(CONFIG_H) $(SYSTEM_H) \ - coretypes.h $(TM_H) function.h $(JAVA_TREE_H) $(JAVA_LEX_C) java/parse.h \ - java/lex.h input.h $(GGC_H) debug.h gt-java-parse.h gtype-java.h java/jcf-dump.o: $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(JAVA_TREE_H) \ java/jcf-dump.c java/jcf-reader.c java/jcf.h java/javaop.h java/javaop.def \ - version.h $(GGC_H) -java/gjavah.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) + version.h $(GGC_H) intl.h java/zipfile.h java/boehm.o: java/boehm.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ $(TREE_H) $(JAVA_TREE_H) java/parse.h toplev.h -java/buffer.o: java/buffer.c $(CONFIG_H) java/buffer.h $(SYSTEM_H) coretypes.h \ - $(TM_H) toplev.h java/builtins.o: java/builtins.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ - $(JAVA_TREE_H) $(GGC_H) flags.h langhooks.h gt-java-builtins.h -java/check-init.o: java/check-init.c $(CONFIG_H) $(JAVA_TREE_H) $(SYSTEM_H) \ - coretypes.h $(TM_H) toplev.h + $(JAVA_TREE_H) $(GGC_H) $(FLAGS_H) $(OPTABS_H) $(EXPR_H) langhooks.h \ + gt-java-builtins.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) $(TM_P_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 \ - libfuncs.h except.h java/java-except.h $(GGC_H) real.h gt-java-decl.h -java/except.o: java/except.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h real.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) $(CGRAPH_H) langhooks.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 -java/expr.o: java/expr.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h real.h \ + toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(FUNCTION_H) +java/expr.o: java/expr.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h $(REAL_H) \ $(RTL_H) $(EXPR_H) java/javaop.h java/java-opcodes.h except.h \ java/java-except.h java/java-except.h java/parse.h toplev.h \ - $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) gt-java-expr.h -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 $@ + $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) gt-java-expr.h $(TARGET_H) \ + tree-iterator.h $(TM_P_H) java/jcf-depend.o: java/jcf-depend.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ $(TM_H) java/jcf.h -java/jcf-parse.o: java/jcf-parse.c $(CONFIG_H) $(JAVA_TREE_H) flags.h \ +java/jcf-parse.o: java/jcf-parse.c $(CONFIG_H) $(JAVA_TREE_H) $(FLAGS_H) \ input.h java/java-except.h $(SYSTEM_H) coretypes.h $(TM_H) toplev.h \ - java/parse.h $(GGC_H) debug.h real.h gt-java-jcf-parse.h $(TM_P_H) -java/jcf-write.o: java/jcf-write.c $(CONFIG_H) $(JAVA_TREE_H) java/jcf.h \ - $(RTL_H) java/java-opcodes.h java/parse.h java/buffer.h $(SYSTEM_H) \ - coretypes.h $(TM_H) toplev.h $(GGC_H) gt-java-jcf-write.h $(TM_P_H) -java/jv-scan.o: java/jv-scan.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ - version.h + java/parse.h $(GGC_H) debug.h $(REAL_H) gt-java-jcf-parse.h $(TM_P_H) \ + java/jcf-reader.c java/zipfile.h java/jcf.h java/jvgenmain.o: java/jvgenmain.c $(CONFIG_H) $(JAVA_TREE_H) $(SYSTEM_H) \ - coretypes.h $(TM_H) + coretypes.h $(TM_H) intl.h 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 + 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 $(EXCEPT_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/parse-scan.o: $(parsedir)/java/parse-scan.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) toplev.h \ - $(JAVA_LEX_C) java/parse.h java/lex.h input.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/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) + toplev.h $(SYSTEM_H) coretypes.h $(TM_H) $(GGC_H) $(REAL_H) +java/win32-host.o: java/win32-host.c $(CONFIG_H) $(SYSTEM_H) coretypes.h java/jcf.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) \ + coretypes.h $(TM_H) $(JAVA_TREE_H) $(GIMPLE_H) toplev.h # jcf-io.o needs $(ZLIBINC) added to cflags. java/jcf-io.o: java/jcf-io.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ - $(JAVA_TREE_H) - $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(ZLIBINC) \ - $(srcdir)/java/jcf-io.c $(OUTPUT_OPTION) + $(JAVA_TREE_H) java/zipfile.h + $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ + $(ZLIBINC) $(srcdir)/java/jcf-io.c $(OUTPUT_OPTION) # jcf-path.o needs a -D. java/jcf-path.o: java/jcf-path.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \ - java/jcf.h - $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ + java/jcf.h + $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \ -DLIBGCJ_ZIP_FILE='"$(datadir)/java/libgcj-$(version).jar"' \ -DDEFAULT_TARGET_VERSION=\"$(version)\" \ $(srcdir)/java/jcf-path.c $(OUTPUT_OPTION) +TEXI_JAVA_FILES = java/gcj.texi $(gcc_docdir)/include/fdl.texi \ + $(gcc_docdir)/include/gpl_v3.texi $(gcc_docdir)/include/gcc-common.texi \ + gcc-vers.texi + # Documentation -$(srcdir)/java/gcj.info: $(srcdir)/java/gcj.texi \ - $(srcdir)/doc/include/fdl.texi $(srcdir)/doc/include/gpl.texi \ - $(srcdir)/doc/include/gcc-common.texi +doc/gcj.info: $(TEXI_JAVA_FILES) if test "x$(BUILD_INFO)" = xinfo; then \ - rm -f $(srcdir)/java/gcc.info*; \ - cd $(srcdir)/java && $(MAKEINFO) -I../doc/include -o gcj.info gcj.texi; \ + rm -f doc/gcj.info*; \ + $(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \ + -I $(gcc_docdir)/include -o $@ $<; \ else true; fi -java/gcj.dvi: $(srcdir)/java/gcj.texi $(srcdir)/doc/include/fdl.texi \ - $(srcdir)/doc/include/gpl.texi $(srcdir)/doc/include/gcc-common.texi - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - cd java && $(TEXI2DVI) -I $$s/doc/include $$s/java/gcj.texi - -$(srcdir)/java/gcj.1: $(srcdir)/java/gcj.texi - -$(TEXI2POD) -D gcj < $(srcdir)/java/gcj.texi > java/gcj.pod - -($(POD2MAN) --section=1 java/gcj.pod > java/gcj.1.T$$$$ && \ - mv -f java/gcj.1.T$$$$ $(srcdir)/java/gcj.1) || \ - (rm -f java/gcj.1.T$$$$ && exit 1) - -rm -f java/gcj.pod - -$(srcdir)/java/gcjh.1: $(srcdir)/java/gcj.texi - -$(TEXI2POD) -D gcjh < $(srcdir)/java/gcj.texi > java/gcjh.pod - -($(POD2MAN) --section=1 java/gcjh.pod > java/gcjh.1.T$$$$ && \ - mv -f java/gcjh.1.T$$$$ $(srcdir)/java/gcjh.1) || \ - (rm -f java/gcjh.1.T$$$$ && exit 1) - -rm -f java/gcjh.pod - -$(srcdir)/java/jv-scan.1: $(srcdir)/java/gcj.texi - -$(TEXI2POD) -D jv-scan < $(srcdir)/java/gcj.texi > java/jv-scan.pod - -($(POD2MAN) --section=1 java/jv-scan.pod > java/jv-scan.1.T$$$$ && \ - mv -f java/jv-scan.1.T$$$$ $(srcdir)/java/jv-scan.1) || \ - (rm -f java/jv-scan.1.T$$$$ && exit 1) - -rm -f java/jv-scan.pod - -$(srcdir)/java/jcf-dump.1: $(srcdir)/java/gcj.texi - -$(TEXI2POD) -D jcf-dump < $(srcdir)/java/gcj.texi > java/jcf-dump.pod - -($(POD2MAN) --section=1 java/jcf-dump.pod > java/jcf-dump.1.T$$$$ && \ - mv -f java/jcf-dump.1.T$$$$ $(srcdir)/java/jcf-dump.1) || \ - (rm -f java/jcf-dump.1.T$$$$ && exit 1) - -rm -f java/jcf-dump.pod - -$(srcdir)/java/gij.1: $(srcdir)/java/gcj.texi - -$(TEXI2POD) -D gij < $(srcdir)/java/gcj.texi > java/gij.pod - -($(POD2MAN) --section=1 java/gij.pod > java/gij.1.T$$$$ && \ - mv -f java/gij.1.T$$$$ $(srcdir)/java/gij.1) || \ - (rm -f java/gij.1.T$$$$ && exit 1) - -rm -f java/gij.pod - -$(srcdir)/java/jv-convert.1: $(srcdir)/java/gcj.texi - -$(TEXI2POD) -D jv-convert < $(srcdir)/java/gcj.texi > java/jv-convert.pod - -($(POD2MAN) --section=1 java/jv-convert.pod > java/jv-convert.1.T$$$$ && \ - mv -f java/jv-convert.1.T$$$$ $(srcdir)/java/jv-convert.1) || \ - (rm -f java/jv-convert.1.T$$$$ && exit 1) - -rm -f java/jv-convert.pod - -$(srcdir)/java/rmic.1: $(srcdir)/java/gcj.texi - -$(TEXI2POD) -D rmic < $(srcdir)/java/gcj.texi > java/rmic.pod - -($(POD2MAN) --section=1 java/rmic.pod > java/rmic.1.T$$$$ && \ - mv -f java/rmic.1.T$$$$ $(srcdir)/java/rmic.1) || \ - (rm -f java/rmic.1.T$$$$ && exit 1) - -rm -f java/rmic.pod - -$(srcdir)/java/rmiregistry.1: $(srcdir)/java/gcj.texi - -$(TEXI2POD) -D rmiregistry < $(srcdir)/java/gcj.texi > java/rmiregistry.pod - -($(POD2MAN) --section=1 java/rmiregistry.pod > java/rmiregistry.1.T$$$$ && \ - mv -f java/rmiregistry.1.T$$$$ $(srcdir)/java/rmiregistry.1) || \ - (rm -f java/rmiregistry.1.T$$$$ && exit 1) - -rm -f java/rmiregistry.pod +doc/gcj.dvi: $(TEXI_JAVA_FILES) + $(TEXI2DVI) -I $(abs_docdir) -I $(abs_docdir)/include -o $@ $< + +doc/gcj.pdf: $(TEXI_JAVA_FILES) + $(TEXI2PDF) -I $(abs_docdir) -I $(abs_docdir)/include -o $@ $< + +$(build_htmldir)/java/index.html: $(TEXI_JAVA_FILES) + $(mkinstalldirs) $(@D) + rm -f $(@D)/* + $(TEXI2HTML) -I $(gcc_docdir) -I $(gcc_docdir)/include \ + -I $(srcdir)/java -o $(@D) $< + +.INTERMEDIATE: gcj.pod jcf-dump.pod gij.pod \ + jv-convert.pod grmic.pod gcj-dbtool.pod gc-analyze.pod + +gcj.pod: java/gcj.texi + -$(TEXI2POD) -D gcj < $< > $@ +jcf-dump.pod: java/gcj.texi + -$(TEXI2POD) -D jcf-dump < $< > $@ +gij.pod: java/gcj.texi + -$(TEXI2POD) -D gij < $< > $@ +jv-convert.pod: java/gcj.texi + -$(TEXI2POD) -D jv-convert < $< > $@ +grmic.pod: java/gcj.texi + -$(TEXI2POD) -D grmic < $< > $@ +gcj-dbtool.pod: java/gcj.texi + -$(TEXI2POD) -D gcj-dbtool < $< > $@ +gc-analyze.pod: java/gcj.texi + -$(TEXI2POD) -D gc-analyze < $< > $@ +aot-compile.pod: java/gcj.texi + -$(TEXI2POD) -D aot-compile < $< > $@ +rebuild-gcj-db.pod: java/gcj.texi + -$(TEXI2POD) -D rebuild-gcj-db < $< > $@ # Install the man pages. -java.install-man: installdirs $(GENERATED_JAVA_MANPAGES) - -if [ -f $(GCJ)$(exeext) ]; then \ - if [ -f $(GCJ)-cross$(exeext) ]; then \ - rm -f $(DESTDIR)$(man1dir)/$(JAVA_CROSS_NAME)$(man1ext); \ - $(INSTALL_DATA) $(srcdir)/java/gcj.1 $(DESTDIR)$(man1dir)/$(JAVA_CROSS_NAME)$(man1ext); \ - chmod a-x $(DESTDIR)$(man1dir)/$(JAVA_CROSS_NAME)$(man1ext); \ - else \ - rm -f $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext); \ - $(INSTALL_DATA) $(srcdir)/java/gcj.1 $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext); \ - chmod a-x $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext); \ - fi ; \ - fi - -rm -f $(DESTDIR)$(man1dir)/gcjh$(man1ext) - -$(INSTALL_DATA) $(srcdir)/java/gcjh.1 $(DESTDIR)$(man1dir)/gcjh$(man1ext) - -chmod a-x $(DESTDIR)$(man1dir)/gcjh$(man1ext) - -rm -f $(DESTDIR)$(man1dir)/jv-scan$(man1ext) - -$(INSTALL_DATA) $(srcdir)/java/jv-scan.1 $(DESTDIR)$(man1dir)/jv-scan$(man1ext) - -chmod a-x $(DESTDIR)$(man1dir)/jv-scan$(man1ext) - -rm -f $(DESTDIR)$(man1dir)/jcf-dump$(man1ext) - -$(INSTALL_DATA) $(srcdir)/java/jcf-dump.1 $(DESTDIR)$(man1dir)/jcf-dump$(man1ext) - -chmod a-x $(DESTDIR)$(man1dir)/jcf-dump$(man1ext) - -rm -f $(DESTDIR)$(man1dir)/gij$(man1ext) - -$(INSTALL_DATA) $(srcdir)/java/gij.1 $(DESTDIR)$(man1dir)/gij$(man1ext) - -chmod a-x $(DESTDIR)$(man1dir)/gij$(man1ext) - -rm -f $(DESTDIR)$(man1dir)/jv-convert$(man1ext) - -$(INSTALL_DATA) $(srcdir)/java/jv-convert.1 $(DESTDIR)$(man1dir)/jv-convert$(man1ext) - -chmod a-x $(DESTDIR)$(man1dir)/jv-convert$(man1ext) - -rm -f $(DESTDIR)$(man1dir)/rmic$(man1ext) - -$(INSTALL_DATA) $(srcdir)/java/rmic.1 $(DESTDIR)$(man1dir)/rmic$(man1ext) - -chmod a-x $(DESTDIR)$(man1dir)/rmic$(man1ext) - -rm -f $(DESTDIR)$(man1dir)/rmiregistry$(man1ext) - -$(INSTALL_DATA) $(srcdir)/java/rmiregistry.1 $(DESTDIR)$(man1dir)/rmiregistry$(man1ext) - -chmod a-x $(DESTDIR)$(man1dir)/rmiregistry$(man1ext) +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/grmic.1 \ + doc/gcj-dbtool.1 doc/gc-analyze.1 \ + doc/aot-compile.1 doc/rebuild-gcj-db.1 + for tool in $(JAVA_TARGET_INDEPENDENT_BIN_TOOLS) \ + gij jv-convert grmic gcj-dbtool gc-analyze aot-compile \ + rebuild-gcj-db; do \ + tool_transformed_name=`echo $$tool|sed '$(program_transform_name)'`; \ + man_name=$(DESTDIR)$(man1dir)/$${tool_transformed_name}$(man1ext); \ + rm -f $$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 installdirs + -rm -f $@ + -$(INSTALL_DATA) $< $@ + -chmod a-x $@