OSDN Git Service

update copyrights
[pf3gnuchains/gcc-fork.git] / gcc / Makefile.in
index a80b6af..f6cb44f 100644 (file)
@@ -1,6 +1,6 @@
 # Makefile for GNU C compiler.
 #   Copyright (C) 1987, 1988, 1990, 1991, 1992, 1993, 1994, 1995
-#   1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
+#   1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
 
 #This file is part of GNU CC.
 
@@ -129,6 +129,8 @@ INSTALL_DATA = @INSTALL_DATA@
 MAKEINFO = @MAKEINFO@
 MAKEINFOFLAGS =
 TEXI2DVI = texi2dvi
+TEXI2POD = $(srcdir)/../contrib/texi2pod.pl
+POD2MAN = pod2man --center="GNU" --release="gcc-$(version)" --section=1
 # For GNUmake: let us decide what gets passed to recursive makes.
 MAKEOVERRIDES =
 @SET_MAKE@
@@ -312,8 +314,10 @@ dollar = @dollar@
 gcc_tooldir = @gcc_tooldir@
 # Since tooldir does not exist at build-time, use -B$(build_tooldir)/bin/
 build_tooldir = $(exec_prefix)/$(target_alias)
-# Directory in which the compiler finds g++ includes.
-gcc_gxx_include_dir= @gcc_gxx_include_dir@
+# Directory in which the compiler finds target-independent g++ includes.
+gcc_gxx_include_dir = @gcc_gxx_include_dir@
+# Directory in which the compiler finds target-dependent g++ includes.
+gcc_gxx_target_include_dir = $(build_tooldir)/include/@libstdcxx_incdir@
 # Directory to search for site-specific includes.
 includedir = $(local_prefix)/include
 # assertdir is overridden in cross-make.
@@ -440,10 +444,6 @@ MAYBE_USE_COLLECT2 = @maybe_use_collect2@
 # so don't override it here.
 USE_COLLECT2 = collect2$(exeext)
 
-# configure sets this to 'libcpp.a' if cpplib is being merged into
-# C-family front ends.
-MAYBE_CPPLIB = @maybe_cpplib@
-
 # List of extra C and assembler files to add to libgcc1.a.
 # Assembler files should have names ending in `.asm'.
 LIB1FUNCS_EXTRA =
@@ -468,7 +468,6 @@ INSTALL_HEADERS=install-headers
 
 # Control whether Info documentation is built and installed.
 BUILD_INFO = @BUILD_INFO@
-INSTALL_INFO = @INSTALL_INFO@
 
 # Additional directories of header files to run fixincludes on.
 # These should be directories searched automatically by default
@@ -493,10 +492,6 @@ GCC_PARTS=$(GCC_PASSES) $(LIBGCC) $(EXTRA_PROGRAMS) $(USE_COLLECT2) $(EXTRA_PART
 # Directory to link to, when using the target `maketest'.
 DIR = ../gcc
 
-# Guaranteed to not exist when not passing md through cpp.
-# This value is overridden directly by configure.
-MD_FILE = md-cpp-not-used
-
 # Flags to use when cross-building GCC.
 # Prefix to apply to names of object files when using them
 # to run on the machine we are compiling on.
@@ -507,7 +502,9 @@ HOST_PREFIX=
 # out of the way of the other rules for compiling the same source files.
 HOST_PREFIX_1=loser-
 HOST_CC=$(CC)
-HOST_CFLAGS=$(ALL_CFLAGS)
+# If you change any of the following variables, check whether a
+# similar change is needed in build-make.
+HOST_CFLAGS=$(ALL_CFLAGS) -DGENERATOR_FILE
 HOST_CLIB=$(CLIB)
 HOST_LDFLAGS=$(LDFLAGS)
 HOST_CPPFLAGS=$(ALL_CPPFLAGS)
@@ -633,7 +630,7 @@ HOST_LIBS = $(USE_HOST_OBSTACK) $(USE_HOST_ALLOCA) $(USE_HOST_MALLOC)  \
            $(USE_HOST_VFPRINTF) $(USE_HOST_DOPRINT) $(HOST_CLIB)
 
 HOST_RTL = $(HOST_PREFIX)rtl.o $(HOST_PREFIX)bitmap.o \
-               $(HOST_PREFIX)ggc-none.o gensupport.o hashtab.o
+               $(HOST_PREFIX)ggc-none.o gensupport.o hashtab.o safe-ctype.o
 
 HOST_PRINT = $(HOST_PREFIX)print-rtl.o
 HOST_ERRORS = $(HOST_PREFIX)errors.o
@@ -715,9 +712,16 @@ SUBDIR_FLAGS_TO_PASS = $(ORDINARY_FLAGS_TO_PASS) \
 #\f
 # Lists of files for various purposes.
 
+# Target specific, C specific object file
+C_TARGET_OBJS=@c_target_objs@
+
+# Target specific, C++ specific object file
+CXX_TARGET_OBJS=@cxx_target_objs@
+
 # Language-specific object files for C and Objective C.
 C_AND_OBJC_OBJS = c-errors.o c-lex.o c-pragma.o c-decl.o c-typeck.o \
-  c-convert.o c-aux-info.o c-common.o c-semantics.o c-dump.o $(MAYBE_CPPLIB)
+  c-convert.o c-aux-info.o c-common.o c-semantics.o c-dump.o libcpp.a \
+  $(C_TARGET_OBJS)
 
 # Language-specific object files for C.
 C_OBJS = c-parse.o c-lang.o $(C_AND_OBJC_OBJS)
@@ -736,15 +740,17 @@ OBJS = diagnostic.o version.o tree.o print-tree.o stor-layout.o fold-const.o  \
  mbchar.o splay-tree.o graph.o sbitmap.o resource.o hash.o predict.o         \
  lists.o ggc-common.o $(GGC) stringpool.o simplify-rtx.o ssa.o bb-reorder.o   \
  sibcall.o conflict.o timevar.o ifcvt.o dominance.o dependence.o dce.o \
- hashtab.o
sched-vis.o sched-deps.o sched-rgn.o sched-ebb.o hashtab.o
 
 BACKEND = toplev.o libbackend.a
 
 # GEN files are listed separately, so they can be built before doing parallel
 #  makes for cc1 or cc1plus.  Otherwise sequent parallel make attempts to load
 #  them before rtl.o is compiled.
-GEN= genemit genoutput genrecog genextract genflags gencodes genconfig \
- genpeep gengenrtl gencheck
+GEN= genemit$(build_exeext) genoutput$(build_exeext) genrecog$(build_exeext) \
+ genextract$(build_exeext) genflags$(build_exeext) gencodes$(build_exeext)   \
+ genconfig$(build_exeext) genpeep$(build_exeext) gengenrtl$(build_exeext)    \
+ gencheck$(build_exeext)
 
 # Files to be copied away after each stage in building.
 STAGESTUFF = *$(objext) insn-flags.h insn-config.h insn-codes.h \
@@ -799,14 +805,18 @@ DPBIT_FUNCS = _pack_df _unpack_df _addsub_df _mul_df _div_df \
     _lt_df _le_df _unord_df _si_to_df _df_to_si _negate_df _make_df \
     _df_to_sf _thenan_df _df_to_usi _usi_to_df
 
-# The files that "belong" in CONFIG_H are deliberately omitted
+# GCONFIG_H lists the config files that the generator files depend on, while
+# CONFIG_H lists the the ones ordinary gcc files depend on, which includes
+# a file generated by gencodes.
+# The files that "belong" in GCONFIG_H are deliberately omitted
 # because having them there would not be useful in actual practice.
 # All they would do is cause complete recompilation every time
 # one of the machine description files is edited.
 # That may or may not be what one wants to do.
 # If it is, rm *.o is an easy way to do it.
-# CONFIG_H = $(host_xm_file) $(tm_file)
-CONFIG_H =
+# GCONFIG_H = $(host_xm_file) $(tm_file)
+GCONFIG_H =
+CONFIG_H = $(GCONFIG_H) insn-codes.h
 MACHMODE_H = machmode.h machmode.def
 RTL_BASE_H = rtl.h rtl.def $(MACHMODE_H)
 RTL_H = $(RTL_BASE_H) genrtl.h
@@ -1180,18 +1190,19 @@ collect2.o : collect2.c $(CONFIG_H) system.h gstab.h intl.h \
 
 tlink.o: tlink.c $(DEMANGLE_H) hash.h $(CONFIG_H) system.h collect2.h intl.h
 hash.o: hash.c hash.h system.h toplev.h
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
 
-vfprintf.o: $(srcdir)/../libiberty/vfprintf.c $(CONFIG_H) system.h
+vfprintf.o: $(srcdir)/../libiberty/vfprintf.c $(GCONFIG_H) system.h
        rm -f vfprintf.c
        $(LN_S) $(srcdir)/../libiberty/vfprintf.c vfprintf.c
-       $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) \
                vfprintf.c $(OUTPUT_OPTION)
 
 splay-tree.o: $(srcdir)/../libiberty/splay-tree.c \
   $(srcdir)/../include/splay-tree.h $(srcdir)/../include/libiberty.h
        rm -f splay-tree.c
        $(LN_S) $(srcdir)/../libiberty/splay-tree.c splay-tree.c
-       $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) \
                splay-tree.c $(OUTPUT_OPTION)
 
 underscore.c: s-under ; @true
@@ -1211,7 +1222,7 @@ s-under: $(GCC_PASSES)
 
 # A file used by all variants of C.
 
-c-common.o : c-common.c $(CONFIG_H) system.h $(TREE_H) \
+c-common.o : c-common.c $(CONFIG_H) system.h $(TREE_H) $(OBSTACK_H) \
        $(C_COMMON_H) flags.h toplev.h output.h c-pragma.h $(RTL_H) $(GGC_H) \
        $(EXPR_H) diagnostic.h
 
@@ -1242,12 +1253,12 @@ gccspec.o: gccspec.c $(CONFIG_H) system.h $(GCC_H)
 cppspec.o: cppspec.c $(CONFIG_H) system.h $(GCC_H)
 
 tree-check.h: s-check ; @true
-s-check : gencheck $(srcdir)/move-if-change
-       ./gencheck > tmp-check.h
+s-check : gencheck$(build_exeext) $(srcdir)/move-if-change
+       ./gencheck$(build_exeext) > tmp-check.h
        $(SHELL) $(srcdir)/move-if-change tmp-check.h tree-check.h
        touch s-check
 
-gencheck : gencheck.o $(HOST_LIBDEPS)
+gencheck$(build_exeext) : gencheck.o $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         gencheck.o $(HOST_LIBS)
 
@@ -1272,12 +1283,13 @@ ggc-page.o: ggc-page.c $(CONFIG_H) $(RTL_H) $(TREE_H) flags.h toplev.h \
 stringpool.o: stringpool.c $(CONFIG_H) system.h $(TREE_H) $(OBSTACK_H) \
        flags.h toplev.h
 
-ggc-none.o: ggc-none.c $(CONFIG_H) $(RTL_H) $(GGC_H)
+ggc-none.o: ggc-none.c $(GCONFIG_H) $(RTL_H) $(GGC_H)
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
 
-obstack.o: $(srcdir)/../libiberty/obstack.c $(CONFIG_H)
+obstack.o: $(srcdir)/../libiberty/obstack.c $(GCONFIG_H)
        rm -f obstack.c
        $(LN_S) $(srcdir)/../libiberty/obstack.c obstack.c
-       $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) \
                obstack.c $(OUTPUT_OPTION)
 
 prefix.o: prefix.c $(CONFIG_H) system.h Makefile prefix.h
@@ -1306,12 +1318,15 @@ toplev.o : toplev.c $(CONFIG_H) system.h $(TREE_H) $(RTL_H) function.h \
          -DTARGET_NAME=\"$(target_alias)\" \
          -c $(srcdir)/toplev.c
 
-rtl.o : rtl.c $(CONFIG_H) system.h $(RTL_H) bitmap.h $(GGC_H) toplev.h
+rtl.o : rtl.c $(GCONFIG_H) system.h $(RTL_H) bitmap.h $(GGC_H) toplev.h
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
 
-print-rtl.o : print-rtl.c $(CONFIG_H) system.h $(RTL_H) hard-reg-set.h \
+print-rtl.o : print-rtl.c $(GCONFIG_H) system.h $(RTL_H) hard-reg-set.h \
     $(BASIC_BLOCK_H)
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
 rtlanal.o : rtlanal.c $(CONFIG_H) system.h toplev.h $(RTL_H)
-errors.o : errors.c $(CONFIG_H) system.h errors.h
+errors.o : errors.c $(GCONFIG_H) system.h errors.h
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
 
 varasm.o : varasm.c $(CONFIG_H) system.h $(TREE_H) $(RTL_H) flags.h \
    function.h defaults.h $(EXPR_H) hard-reg-set.h $(REGS_H) \
@@ -1418,8 +1433,9 @@ regclass.o : regclass.c $(CONFIG_H) system.h $(RTL_H) hard-reg-set.h flags.h \
 local-alloc.o : local-alloc.c $(CONFIG_H) system.h $(RTL_H) flags.h \
    $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h insn-config.h $(RECOG_H) \
    output.h function.h $(INSN_ATTR_H) toplev.h
-bitmap.o : bitmap.c $(CONFIG_H) system.h $(RTL_H) flags.h $(BASIC_BLOCK_H) \
+bitmap.o : bitmap.c $(GCONFIG_H) system.h $(RTL_H) flags.h $(BASIC_BLOCK_H) \
    $(REGS_H)
+       $(CC) -c $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) $< $(OUTPUT_OPTION)
 global.o : global.c $(CONFIG_H) system.h $(RTL_H) flags.h reload.h function.h \
    $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h insn-config.h output.h toplev.h
 varray.o : varray.c $(CONFIG_H) system.h varray.h $(RTL_H) $(TREE_H) bitmap.h
@@ -1441,9 +1457,20 @@ alias.o : alias.c $(CONFIG_H) system.h $(RTL_H) flags.h hard-reg-set.h \
 regmove.o : regmove.c $(CONFIG_H) system.h $(RTL_H) insn-config.h \
    $(RECOG_H) output.h $(REGS_H) hard-reg-set.h flags.h function.h \
    $(EXPR_H) insn-flags.h $(BASIC_BLOCK_H) toplev.h
-haifa-sched.o : haifa-sched.c $(CONFIG_H) system.h $(RTL_H) \
+haifa-sched.o : haifa-sched.c $(CONFIG_H) system.h $(RTL_H) sched-int.h \
+   $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h flags.h insn-config.h function.h \
+   $(INSN_ATTR_H) insn-flags.h toplev.h $(RECOG_H) except.h
+sched-deps.o : sched-deps.c $(CONFIG_H) system.h $(RTL_H) sched-int.h \
+   $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h flags.h insn-config.h function.h \
+   $(INSN_ATTR_H) toplev.h $(RECOG_H) except.h
+sched-rgn.o : sched-rgn.c $(CONFIG_H) system.h $(RTL_H) sched-int.h \
    $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h flags.h insn-config.h function.h \
    $(INSN_ATTR_H) toplev.h $(RECOG_H) except.h
+sched-ebb.o : sched-ebb.c $(CONFIG_H) system.h $(RTL_H) sched-int.h \
+   $(BASIC_BLOCK_H) $(REGS_H) hard-reg-set.h flags.h insn-config.h function.h \
+   $(INSN_ATTR_H) toplev.h $(RECOG_H) except.h
+sched-vis.o : sched-vis.c $(CONFIG_H) system.h $(RTL_H) sched-int.h \
+   hard-reg-set.h $(BASIC_BLOCK_H) $(INSN_ATTR_H) $(REGS_H)
 final.o : final.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h intl.h \
    $(REGS_H) $(RECOG_H) conditions.h insn-config.h $(INSN_ATTR_H) function.h \
    real.h output.h hard-reg-set.h insn-flags.h insn-codes.h gstab.h except.h \
@@ -1474,7 +1501,8 @@ dependence.o : dependence.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) \
 
 $(out_object_file): $(out_file) $(CONFIG_H) $(TREE_H) $(GGC_H) \
    $(RTL_H) $(REGS_H) hard-reg-set.h real.h insn-config.h conditions.h \
-   insn-flags.h output.h $(INSN_ATTR_H) insn-codes.h system.h toplev.h function.h
+   insn-flags.h output.h $(INSN_ATTR_H) insn-codes.h system.h toplev.h \
+   function.h sched-int.h
        $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
                $(out_file) $(OUTPUT_OPTION)
 
@@ -1498,8 +1526,8 @@ halfpic.o: halfpic.c $(CONFIG_H) $(RTL_H) $(TREE_H) system.h
 alloca.o:      $(srcdir)/../libiberty/alloca.c
        rm -f alloca.c
        $(LN_S) $(srcdir)/../libiberty/alloca.c alloca.c
-       $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(ALLOCA_FLAGS) \
-         -c alloca.c
+       $(CC) $(ALL_CFLAGS) -DGENERATOR_FILE $(ALL_CPPFLAGS) $(INCLUDES) \
+       $(ALLOCA_FLAGS) -c alloca.c
        $(ALLOCA_FINISH)
 #\f
 # Generate header and source files from the machine description,
@@ -1529,20 +1557,20 @@ alloca.o:       $(srcdir)/../libiberty/alloca.c
 # trailing `;'), we call true for each.
 
 insn-config.h: s-config ; @true
-s-config : $(md_file) genconfig $(srcdir)/move-if-change
-       ./genconfig $(md_file) > tmp-config.h
+s-config : $(md_file) genconfig$(build_exeext) $(srcdir)/move-if-change
+       ./genconfig$(build_exeext) $(md_file) > tmp-config.h
        $(SHELL) $(srcdir)/move-if-change tmp-config.h insn-config.h
        touch s-config
 
 insn-flags.h: s-flags ; @true
-s-flags : $(md_file) genflags $(srcdir)/move-if-change
-       ./genflags $(md_file) > tmp-flags.h
+s-flags : $(md_file) genflags$(build_exeext) $(srcdir)/move-if-change
+       ./genflags$(build_exeext) $(md_file) > tmp-flags.h
        $(SHELL) $(srcdir)/move-if-change tmp-flags.h insn-flags.h
        touch s-flags
 
 insn-codes.h: s-codes ; @true
-s-codes : $(md_file) gencodes $(srcdir)/move-if-change
-       ./gencodes $(md_file) > tmp-codes.h
+s-codes : $(md_file) gencodes$(build_exeext) $(srcdir)/move-if-change
+       ./gencodes$(build_exeext) $(md_file) > tmp-codes.h
        $(SHELL) $(srcdir)/move-if-change tmp-codes.h insn-codes.h
        touch s-codes
 
@@ -1552,8 +1580,8 @@ insn-emit.o : insn-emit.c $(CONFIG_H) $(RTL_H) $(EXPR_H) real.h output.h \
        $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-emit.c
 
 insn-emit.c: s-emit ; @true
-s-emit : $(md_file) genemit $(srcdir)/move-if-change
-       ./genemit $(md_file) > tmp-emit.c
+s-emit : $(md_file) genemit$(build_exeext) $(srcdir)/move-if-change
+       ./genemit$(build_exeext) $(md_file) > tmp-emit.c
        $(SHELL) $(srcdir)/move-if-change tmp-emit.c insn-emit.c
        touch s-emit
 
@@ -1562,8 +1590,8 @@ insn-recog.o : insn-recog.c $(CONFIG_H) $(RTL_H) insn-config.h $(RECOG_H) \
        $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-recog.c
 
 insn-recog.c: s-recog ; @true
-s-recog : $(md_file) genrecog $(srcdir)/move-if-change
-       ./genrecog $(md_file) > tmp-recog.c
+s-recog : $(md_file) genrecog$(build_exeext) $(srcdir)/move-if-change
+       ./genrecog$(build_exeext) $(md_file) > tmp-recog.c
        $(SHELL) $(srcdir)/move-if-change tmp-recog.c insn-recog.c
        touch s-recog
 
@@ -1572,8 +1600,8 @@ insn-opinit.o : insn-opinit.c $(CONFIG_H) $(RTL_H) insn-codes.h insn-flags.h \
        $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-opinit.c
 
 insn-opinit.c: s-opinit ; @true
-s-opinit : $(md_file) genopinit $(srcdir)/move-if-change
-       ./genopinit $(md_file) > tmp-opinit.c
+s-opinit : $(md_file) genopinit$(build_exeext) $(srcdir)/move-if-change
+       ./genopinit$(build_exeext) $(md_file) > tmp-opinit.c
        $(SHELL) $(srcdir)/move-if-change tmp-opinit.c insn-opinit.c
        touch s-opinit
 
@@ -1582,8 +1610,8 @@ insn-extract.o : insn-extract.c $(CONFIG_H) $(RTL_H) system.h toplev.h \
        $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-extract.c
 
 insn-extract.c: s-extract ; @true
-s-extract : $(md_file) genextract $(srcdir)/move-if-change
-       ./genextract $(md_file) > tmp-extract.c
+s-extract : $(md_file) genextract$(build_exeext) $(srcdir)/move-if-change
+       ./genextract$(build_exeext) $(md_file) > tmp-extract.c
        $(SHELL) $(srcdir)/move-if-change tmp-extract.c insn-extract.c
        touch s-extract
 
@@ -1592,8 +1620,8 @@ insn-peep.o : insn-peep.c $(CONFIG_H) $(RTL_H) $(REGS_H) output.h real.h \
        $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-peep.c
 
 insn-peep.c: s-peep ; @true
-s-peep : $(md_file) genpeep $(srcdir)/move-if-change
-       ./genpeep $(md_file) > tmp-peep.c
+s-peep : $(md_file) genpeep$(build_exeext) $(srcdir)/move-if-change
+       ./genpeep$(build_exeext) $(md_file) > tmp-peep.c
        $(SHELL) $(srcdir)/move-if-change tmp-peep.c insn-peep.c
        touch s-peep
 
@@ -1602,14 +1630,14 @@ insn-attrtab.o : insn-attrtab.c $(CONFIG_H) $(RTL_H) $(REGS_H) real.h \
        $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-attrtab.c
 
 insn-attr.h: s-attr ; @true
-s-attr : $(md_file) genattr $(srcdir)/move-if-change
-       ./genattr $(md_file) > tmp-attr.h
+s-attr : $(md_file) genattr$(build_exeext) $(srcdir)/move-if-change
+       ./genattr$(build_exeext) $(md_file) > tmp-attr.h
        $(SHELL) $(srcdir)/move-if-change tmp-attr.h insn-attr.h
        touch s-attr
 
 insn-attrtab.c: s-attrtab ; @true
-s-attrtab : $(md_file) genattrtab $(srcdir)/move-if-change
-       ./genattrtab $(md_file) > tmp-attrtab.c
+s-attrtab : $(md_file) genattrtab$(build_exeext) $(srcdir)/move-if-change
+       ./genattrtab$(build_exeext) $(md_file) > tmp-attrtab.c
        $(SHELL) $(srcdir)/move-if-change tmp-attrtab.c insn-attrtab.c
        touch s-attrtab
 
@@ -1619,8 +1647,8 @@ insn-output.o : insn-output.c $(CONFIG_H) $(RTL_H) $(GGC_H) $(REGS_H) real.h \
        $(CC) $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) -c insn-output.c
 
 insn-output.c: s-output ; @true
-s-output : $(md_file) genoutput $(srcdir)/move-if-change
-       ./genoutput $(md_file) > tmp-output.c
+s-output : $(md_file) genoutput$(build_exeext) $(srcdir)/move-if-change
+       ./genoutput$(build_exeext) $(md_file) > tmp-output.c
        $(SHELL) $(srcdir)/move-if-change tmp-output.c insn-output.c
        touch s-output
 
@@ -1628,10 +1656,10 @@ genrtl.o : genrtl.c $(CONFIG_H) $(RTL_H) system.h $(GGC_H)
 genrtl.c genrtl.h : s-genrtl
        @true   # force gnu make to recheck modification times.
 
-s-genrtl: gengenrtl $(srcdir)/move-if-change $(RTL_BASE_H)
-       ./gengenrtl -h >tmp-genrtl.h
+s-genrtl: gengenrtl$(build_exeext) $(srcdir)/move-if-change $(RTL_BASE_H)
+       ./gengenrtl$(build_exeext) -h >tmp-genrtl.h
        $(SHELL) $(srcdir)/move-if-change tmp-genrtl.h genrtl.h
-       ./gengenrtl >tmp-genrtl.c
+       ./gengenrtl$(build_exeext) >tmp-genrtl.c
        $(SHELL) $(srcdir)/move-if-change tmp-genrtl.c genrtl.c
        touch s-genrtl
 #\f
@@ -1645,21 +1673,20 @@ s-genrtl: gengenrtl $(srcdir)/move-if-change $(RTL_BASE_H)
 # about the target machine.  They do depend on config.h itself,
 # since that describes the host machine.
 
-# Pass the md file through cpp if the target requests it.
-$(MD_FILE): $(MD_DEPS)
-       rm -f $@
-       $(MD_CPP) $(MD_CPPFLAGS) $(md_file) | sed 's/^# /; /g' > tmp-$@
-       mv tmp-$@ $@
-
 gensupport.o: gensupport.c $(RTL_H) $(OBSTACK_H) system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/gensupport.c
 
-hashtab.o: $(srcdir)/../libiberty/hashtab.c $(CONFIG_H)
+hashtab.o: $(srcdir)/../libiberty/hashtab.c $(GCONFIG_H)
        rm -f hashtab.c
        $(LN_S) $(srcdir)/../libiberty/hashtab.c hashtab.c
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) hashtab.c
 
-genconfig : genconfig.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+safe-ctype.o: $(srcdir)/../libiberty/safe-ctype.c $(GCONFIG_H)
+       rm -f safe-ctype.c
+       $(LN_S) $(srcdir)/../libiberty/safe-ctype.c safe-ctype.c
+       $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) safe-ctype.c
+
+genconfig$(build_exeext) : genconfig.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
          genconfig.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
@@ -1667,7 +1694,7 @@ genconfig.o : genconfig.c $(RTL_H) $(build_xm_file) \
   system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genconfig.c
 
-genflags : genflags.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+genflags$(build_exeext) : genflags.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genflags.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
@@ -1675,7 +1702,7 @@ genflags.o : genflags.c $(RTL_H) $(OBSTACK_H) $(build_xm_file) \
   system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genflags.c
 
-gencodes : gencodes.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+gencodes$(build_exeext) : gencodes.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         gencodes.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
@@ -1683,14 +1710,14 @@ gencodes.o : gencodes.c $(RTL_H) $(build_xm_file) \
   system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/gencodes.c
 
-genemit : genemit.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+genemit$(build_exeext) : genemit.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genemit.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
 genemit.o : genemit.c $(RTL_H) $(build_xm_file) system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genemit.c
 
-genopinit : genopinit.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+genopinit$(build_exeext) : genopinit.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genopinit.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
@@ -1698,14 +1725,15 @@ genopinit.o : genopinit.c $(RTL_H) $(build_xm_file) \
   system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genopinit.c
 
-genrecog : genrecog.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+genrecog$(build_exeext) : genrecog.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genrecog.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
 genrecog.o : genrecog.c $(RTL_H) $(build_xm_file) \
   system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genrecog.c 
-genextract : genextract.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+
+genextract$(build_exeext) : genextract.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genextract.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
@@ -1713,21 +1741,21 @@ genextract.o : genextract.c $(RTL_H) $(build_xm_file) \
   system.h insn-config.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genextract.c
 
-genpeep : genpeep.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+genpeep$(build_exeext) : genpeep.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genpeep.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
 genpeep.o : genpeep.c $(RTL_H) $(build_xm_file) system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genpeep.c
 
-genattr : genattr.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+genattr$(build_exeext) : genattr.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genattr.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
 genattr.o : genattr.c $(RTL_H) $(build_xm_file) system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genattr.c
 
-genattrtab : genattrtab.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+genattrtab$(build_exeext) : genattrtab.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genattrtab.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
@@ -1735,7 +1763,7 @@ genattrtab.o : genattrtab.c $(RTL_H) $(OBSTACK_H) $(build_xm_file) \
   system.h errors.h $(GGC_H) gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genattrtab.c
 
-genoutput : genoutput.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
+genoutput$(build_exeext) : genoutput.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         genoutput.o $(HOST_RTL) $(HOST_PRINT) $(HOST_ERRORS) $(HOST_LIBS)
 
@@ -1743,7 +1771,7 @@ genoutput.o : genoutput.c $(RTL_H) $(build_xm_file) \
   system.h errors.h gensupport.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/genoutput.c
 
-gengenrtl : gengenrtl.o $(HOST_LIBDEPS)
+gengenrtl$(build_exeext) : gengenrtl.o $(HOST_LIBDEPS)
        $(HOST_CC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
         gengenrtl.o $(HOST_LIBS)
 
@@ -1754,7 +1782,7 @@ gengenrtl.o : gengenrtl.c $(RTL_BASE_H) system.h real.h
 # If we are not cross-building, gen* use the same .o's that cc1 will use,
 # and HOST_PREFIX_1 is `foobar', just to ensure these rules don't conflict
 # with the rules for rtl.o, alloca.o, etc.
-$(HOST_PREFIX_1)rtl.o: $(srcdir)/rtl.c $(CONFIG_H) system.h $(RTL_H) \
+$(HOST_PREFIX_1)rtl.o: $(srcdir)/rtl.c $(GCONFIG_H) system.h $(RTL_H) \
   bitmap.h $(GGC_H) toplev.h $(HASHTAB_H)
        rm -f $(HOST_PREFIX)rtl.c
        sed -e 's/config[.]h/hconfig.h/' $(srcdir)/rtl.c > $(HOST_PREFIX)rtl.c
@@ -1782,7 +1810,7 @@ $(HOST_PREFIX_1)alloca.o: $(srcdir)/../libiberty/alloca.c
        $(LN_S) $(srcdir)/../libiberty/alloca.c $(HOST_PREFIX)alloca.c
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)alloca.c
 
-$(HOST_PREFIX_1)obstack.o: $(srcdir)/../libiberty/obstack.c $(CONFIG_H)
+$(HOST_PREFIX_1)obstack.o: $(srcdir)/../libiberty/obstack.c $(GCONFIG_H)
        rm -f $(HOST_PREFIX)obstack.c
        sed -e 's/config[.]h/hconfig.h/' $(srcdir)/../libiberty/obstack.c > $(HOST_PREFIX)obstack.c
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(HOST_PREFIX)obstack.c
@@ -1829,7 +1857,7 @@ intl.o: intl.c intl.h gansidecl.h Makefile
 $(top_builddir)/intl/libintl.a: intl.all
 
 # Make sure all the headers are there for xgettext to scan.
-$(INTL_TARGETS): $(srcdir)/c-parse.c
+$(INTL_TARGETS): $(CONFIG_H) $(srcdir)/c-parse.c
 
 intl.all intl.install intl.uninstall \
   intl.mostlyclean intl.clean intl.distclean intl.maintainer-clean:
@@ -1846,6 +1874,7 @@ intl.all intl.install intl.uninstall \
 PREPROCESSOR_DEFINES = \
   -DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \
   -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
+  -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_target_include_dir)\" \
   -DLOCAL_INCLUDE_DIR=\"$(includedir)\" \
   -DCROSS_INCLUDE_DIR=\"$(gcc_tooldir)/sys-include\" \
   -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\"
@@ -1964,7 +1993,7 @@ test-protoize-simple: ./protoize ./unprotoize $(GCC_PASSES)
        diff $(srcdir)/protoize.c tmp-proto.c | cat
        -rm -f tmp-proto.[cs] tmp-proto$(objext)
 
-gcov.o: gcov.c gcov-io.h intl.h system.h
+gcov.o: gcov.c gcov-io.h intl.h system.h $(CONFIG_H)
 
 # Only one of 'gcov' or 'gcov.exe' is actually built, depending
 # upon whether $(exeext) is empty or not.
@@ -2025,8 +2054,9 @@ fixinc.sh: $(FIXINCSRCDIR)/mkfixinc.sh $(FIXINCSRCDIR)/fixincl.c \
        $(FIXINCSRCDIR)/server.h $(FIXINCSRCDIR)/inclhack.def specs.ready
        (MAKE="$(MAKE)"; srcdir=`cd $(srcdir)/fixinc && pwd` ; \
        CC="$(CC)"; CFLAGS="$(CFLAGS)"; LDFLAGS="$(LDFLAGS)"; \
-       export MAKE srcdir CC CFLAGS LDFLAGS; \
-       cd ./fixinc && $(SHELL) $${srcdir}/mkfixinc.sh $(target))
+       WARN_CFLAGS="$(WARN_CFLAGS)"; \
+       export MAKE srcdir CC CFLAGS LDFLAGS WARN_CFLAGS; cd ./fixinc && \
+       $(SHELL) $${srcdir}/mkfixinc.sh $(build_canonical) $(target))
 
 # Build fixed copies of system files.
 stmp-fixinc: fixinc.sh gsyslimits.h
@@ -2076,8 +2106,8 @@ deduced.h: $(GCC_PASSES) $(srcdir)/scan-types.sh stmp-int-hdrs
        fi
 
 GEN_PROTOS_OBJS = gen-protos.o scan.o
-gen-protos: $(GEN_PROTOS_OBJS)
-       ${HOST_CC} $(HOST_CFLAGS) $(HOST_LDFLAGS) -o gen-protos \
+gen-protos$(build_exeext): $(GEN_PROTOS_OBJS)
+       ${HOST_CC} $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $@ \
          $(GEN_PROTOS_OBJS) ../libiberty/libiberty.a
 
 gen-protos.o: gen-protos.c scan.h $(build_xm_file) system.h
@@ -2086,7 +2116,7 @@ gen-protos.o: gen-protos.c scan.h $(build_xm_file) system.h
 scan.o: scan.c scan.h $(build_xm_file) system.h
        $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) $(srcdir)/scan.c
 
-xsys-protos.h: $(GCC_PASSES) $(srcdir)/sys-protos.h deduced.h gen-protos Makefile
+xsys-protos.h: $(GCC_PASSES) $(srcdir)/sys-protos.h deduced.h gen-protos$(build_exeext) Makefile
        sed -e s/TARGET_GETGROUPS_T/$(TARGET_GETGROUPS_T)/ \
          deduced.h $(srcdir)/sys-protos.h > tmp-fixtmp.c
        mv tmp-fixtmp.c fixtmp.c
@@ -2142,19 +2172,19 @@ stmp-fixproto: fixhdr.ready fixproto stmp-int-hdrs
 # Remake the info files.
 
 doc: $(BUILD_INFO) gccbug
-info: cpp.info gcc.info lang.info c-tree.info
+info: $(srcdir)/cpp.info $(srcdir)/gcc.info lang.info $(srcdir)/c-tree.info
 
-cpp.info: $(srcdir)/cpp.texi
-       $(MAKEINFO) $(MAKEINFOFLAGS) -I$(srcdir) -o cpp.info $(srcdir)/cpp.texi
+$(srcdir)/cpp.info: $(srcdir)/cpp.texi
+       cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o cpp.info cpp.texi
 
-gcc.info: $(srcdir)/gcc.texi $(srcdir)/extend.texi $(srcdir)/install.texi \
+$(srcdir)/gcc.info: $(srcdir)/gcc.texi $(srcdir)/extend.texi $(srcdir)/install.texi \
          $(srcdir)/invoke.texi $(srcdir)/md.texi $(srcdir)/rtl.texi \
          $(srcdir)/tm.texi $(srcdir)/gcov.texi
-       $(MAKEINFO) $(MAKEINFOFLAGS) -I$(srcdir) -o gcc.info $(srcdir)/gcc.texi
+       cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o gcc.info gcc.texi
 
-c-tree.info: $(srcdir)/c-tree.texi
-       $(MAKEINFO) $(MAKEINFOFLAGS) -I$(srcdir) -o c-tree.info \
-               $(srcdir)/c-tree.texi
+$(srcdir)/c-tree.info: $(srcdir)/c-tree.texi
+       cd $(srcdir) && $(MAKEINFO) $(MAKEINFOFLAGS) -o c-tree.info \
+               c-tree.texi
 
 dvi: gcc.dvi cpp.dvi lang.dvi
 
@@ -2171,6 +2201,13 @@ cpp.dvi: $(srcdir)/cpp.texi
        texindex cpp.??
        TEXINPUTS=${texidir}:$(srcdir):$$TEXINPUTS tex cpp.texi
 
+$(srcdir)/gcov.1: $(srcdir)/gcov.texi
+       $(TEXI2POD) < $(srcdir)/gcov.texi > gcov.pod
+       ($(POD2MAN) gcov.pod > $(srcdir)/gcov.1.T$$$$ && \
+               mv -f $(srcdir)/gcov.1.T$$$$ $(srcdir)/gcov.1) || \
+               (rm -f $(srcdir)/gcov.1.T$$$$ && exit 1)
+       rm -f gcov.pod
+
 #\f
 # Deletion of files made during compilation.
 # There are four levels of this:
@@ -2208,7 +2245,7 @@ mostlyclean: $(INTL_MOSTLYCLEAN) lang.mostlyclean
        -rm -f collect collect2 mips-tfile mips-tdump alloca.s
 # Delete files generated for fixproto
        -rm -rf fix-header xsys-protos.h deduced.h tmp-deduced.h \
-         gen-protos fixproto.list fixtmp.* fixhdr.ready
+         gen-protos$(build_exeext) fixproto.list fixtmp.* fixhdr.ready
 # Delete files generated for fixincl
        -rm -rf fixincl fixinc.sh specs.ready
        (cd fixinc && $(MAKE) clean)
@@ -2228,9 +2265,6 @@ clean: mostlyclean $(INTL_CLEAN) lang.clean
        -rm -rf libgcc
        -rm -f *.dvi
        -rm -f */*.dvi
-       -if [ -f md.pre-cpp ]; then \
-         rm -f md ; \
-       fi
 # Delete the include directory.
        -rm -rf include
 # Delete files used by the "multilib" facility (including libgcc subdirs).
@@ -2250,7 +2284,7 @@ clean: mostlyclean $(INTL_CLEAN) lang.clean
 INTL_DISTCLEAN = intl.distclean
 distclean: clean $(INTL_DISTCLEAN) lang.distclean
        -rm -f tm.h tm_p.h config.h auto-host.h auto-build.h tconfig.h hconfig.h
-       -rm -f md cstamp-h
+       -rm -f cstamp-h
        -rm -f config.status config.run config.cache config.bak
        -rm -f Make-lang Make-hooks Make-host Make-target
        -rm -f Makefile specs.h options.h gencheck.h *.oaux
@@ -2262,9 +2296,9 @@ distclean: clean $(INTL_DISTCLEAN) lang.distclean
        -rm -f site.exp site.bak testsuite/site.exp testsuite/site.bak
        -rm -f testsuite/{gcc,g++}.{log,sum}
        -rm -f intl/libintl.h libintl.h
-       -rm -f cxxmain.c splay-tree.c obstack.c
+       -rm -f cxxmain.c splay-tree.c obstack.c alloca.c hashtab.c safe-ctype.c
        -rm -f mklibgcc libgcc.map gccbug .gdbinit configargs.h
-       -rm -f c-tree.info c-tree.info-1 c-tree.info-2 c-tree.info-3
+       -rm -f gcov.pod
        -rm -f fixinc/Makefile
        -rmdir cp f java objc fixinc intl po 2>/dev/null
 
@@ -2297,8 +2331,10 @@ maintainer-clean:
        $(MAKE) INTL_DISTCLEAN= INTL_CLEAN= INTL_MOSTLYCLEAN= \
                intl.maintainer-clean lang.maintainer-clean distclean
        -rm -f c-parse.y c-parse.c c-parse.output TAGS
-       -rm -f cpp.info* cpp.??s cpp.*aux
-       -rm -f gcc.info* gcc.??s gcc.*aux
+       -rm -f cpp.??s cpp.*aux
+       -rm -f gcc.??s gcc.*aux
+       -rm -f $(srcdir)/cpp.info* $(srcdir)/gcc.info* $(srcdir)/c-tree.info*
+       -rm -f $(srcdir)/gcov.1
 #\f
 # Entry points `install' and `uninstall'.
 # Also use `install-collect2' to install collect2 when the config files don't.
@@ -2312,7 +2348,7 @@ install: $(INSTALL_TARGET) ; @true
 # Install the driver last so that the window when things are
 # broken is small.
 install-normal: install-common $(INSTALL_HEADERS) $(INSTALL_LIBGCC) \
-    $(INSTALL_CPP) install-man $(INSTALL_INFO) intl.install \
+    $(INSTALL_CPP) install-man install-info intl.install \
     lang.install-normal install-driver
 
 # Do nothing while making gcc with a cross-compiler. The person who
@@ -2469,20 +2505,25 @@ install-driver: xgcc$(exeext)
 # to do the install.
 install-info: doc installdirs lang.install-info
        -rm -f $(infodir)/cpp.info* $(infodir)/gcc.info*
-       for f in cpp.info* gcc.info*; do \
-           $(INSTALL_DATA) $$f $(infodir)/$$f; \
-       done
+       if [ -f $(srcdir)/gcc.info ]; then \
+         for f in $(srcdir)/cpp.info* $(srcdir)/gcc.info*; do \
+           realfile=`echo $$f | sed -e 's|.*/\([^/]*\)$$|\1|'`; \
+           $(INSTALL_DATA) $$f $(infodir)/$$realfile; \
+         done; \
+       else true; fi
        -if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
          if [ -f $(infodir)/dir ] ; then \
            for f in cpp.info gcc.info; do \
-               install-info --dir-file=$(infodir)/dir $(infodir)/$$f; \
+               if [ -f $(infodir)/$$f ]; then \
+                 install-info --dir-file=$(infodir)/dir $(infodir)/$$f; \
+               else true; fi \
            done; \
          else true; fi; \
        else true; fi;
        -chmod a-x $(infodir)/cpp.info* $(infodir)/gcc.info*
 
 # Install the man pages.
-install-man: installdirs $(srcdir)/gcc.1 $(srcdir)/cpp.1 lang.install-man
+install-man: installdirs $(srcdir)/gcc.1 $(srcdir)/cpp.1 $(srcdir)/gcov.1 lang.install-man
        -if [ -f gcc-cross$(exeext) ] ; then \
          rm -f $(man1dir)/$(GCC_CROSS_NAME)$(manext); \
          $(INSTALL_DATA) $(srcdir)/gcc.1 $(man1dir)/$(GCC_CROSS_NAME)$(manext); \
@@ -2494,6 +2535,8 @@ install-man: installdirs $(srcdir)/gcc.1 $(srcdir)/cpp.1 lang.install-man
        fi
        -rm -f $(man1dir)/cpp$(manext)
        -$(INSTALL_DATA) $(srcdir)/cpp.1 $(man1dir)/cpp$(manext)
+       -rm -f $(man1dir)/gcov$(manext)
+       -$(INSTALL_DATA) $(srcdir)/gcov.1 $(man1dir)/gcov$(manext)
        -chmod a-x $(man1dir)/cpp$(manext)
 
 # Install the library.
@@ -2717,7 +2760,7 @@ check-objc: testsuite/site.exp
 check-po:
        if test -f cp/Makefile && test -f f/Makefile && \
           test -f java/Makefile && test -f objc/Makefile; then \
-          make -C po check-po; \
+          $(MAKE) -C po check-po; \
        fi
 
 # These exist for maintenance purposes.
@@ -2997,16 +3040,16 @@ stage4: force stage4-start lang.stage4
 # and delete the object files.  Use this if you're just verifying a version
 # that is pretty sure to work, and you are short of disk space.
 risky-stage1: stage1
-       -make clean
+       -$(MAKE) clean
 
 risky-stage2: stage2
-       -make clean
+       -$(MAKE) clean
 
 risky-stage3: stage3
-       -make clean
+       -$(MAKE) clean
 
 risky-stage4: stage4
-       -make clean
+       -$(MAKE) clean
 
 #In GNU Make, ignore whether `stage*' exists.
 .PHONY: stage1 stage2 stage3 stage4 clean maintainer-clean TAGS bootstrap