toplevel:
authorPaolo Bonzini <bonzini@gnu.org>
Mon, 5 Dec 2005 15:16:05 +0000 (15:16 +0000)
committerPaolo Bonzini <bonzini@gnu.org>
Mon, 5 Dec 2005 15:16:05 +0000 (15:16 +0000)
2005-12-05  Paolo Bonzini  <bonzini@gnu.org>

Sync with gcc:

2005-12-05  Paolo Bonzini  <bonzini@gnu.org>

        * configure.in (CONFIGURED_BISON, CONFIGURED_YACC, CONFIGURED_M4,
        CONFIGURED_FLEX, CONFIGURED_LEX, CONFIGURED_MAKEINFO): Remove
        "CONFIGURED_" from the AC_CHECK_PROGS invocation.  Move below.
        Find in-tree tools if available.
        (EXPECT, RUNTEST, LIPO, STRIP): Find them and substitute them.
        (CONFIGURED_*_FOR_TARGET): Don't set nor substitute.
        (*_FOR_TARGET): Set them with GCC_TARGET_TOOL.
        (COMPILER_*_FOR_TARGET): New.
        * Makefile.tpl (HOST_EXPORTS): Add *_FOR_TARGET symbols that gcc needs.
        (BASE_TARGET_EXPORTS): Use COMPILER_*_FOR_TARGET symbols.
        (CONFIGURED_*, USUAL_*): Remove.
        (BISON, YACC, FLEX, LEX, M4, MAKEINFO, EXPECT, RUNTEST, LIPO,
        STRIP): Use autoconf substitutions.
        (COMPILER_AS_FOR_TARGET, COMPILER_LD_FOR_TARGET,
        COMPILER_NM_FOR_TARGET): New.
        (EXTRA_HOST_FLAGS): Pass LIPO and STRIP.

        (all): Make all-host and all-target in parallel.
        (do-[+make_target+], do-check, install, [+compare-target+]): Ensure
        that $$r and $$s are set before invoking a recursive make.
        (stage[+id+]-bubble): Likewise, and invoke the comparison at the end.
        ([+bootstrap-target+]): Inline most of the `all' target.

2005-11-29  Ben Elliston  <bje@au.ibm.com>

        * Makefile.tpl (clean-target-libgcc): Invoke clean-target-libgcc
        from the gcc build directory.
        * Makefile.in: Regenerate.

2005-11-29  Ben Elliston  <bje@au.ibm.com>

        * Makefile.def: Add new libdecnumber host_module.  Make all-gcc
        depend on all-libdecnumber.
        * configure.in (host_libs): Include libdecnumber.
        * Makefile.in: Regenerate.
        * configure: Likewise.

2005-11-21  Kean Johnston  <jkj@sco.com>

        * config.sub, config.guess: Sync from upstream sources.

config:
2005-12-05  Paolo Bonzini  <bonzini@gnu.org>

* acx.m4 (GCC_TARGET_TOOL): New.

ChangeLog
Makefile.def
Makefile.in
Makefile.tpl
config.guess
config.sub
config/ChangeLog
config/acx.m4
configure
configure.in

index 82cd79f75abdf690508fb10357de2cbf6047f50e..a1f3765643098aae1503e33c482914a38da57e89 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,50 @@
+2005-12-05  Paolo Bonzini  <bonzini@gnu.org>
+
+       Sync with gcc:
+
+       2005-12-05  Paolo Bonzini  <bonzini@gnu.org>
+
+        * configure.in (CONFIGURED_BISON, CONFIGURED_YACC, CONFIGURED_M4,
+        CONFIGURED_FLEX, CONFIGURED_LEX, CONFIGURED_MAKEINFO): Remove
+        "CONFIGURED_" from the AC_CHECK_PROGS invocation.  Move below.
+        Find in-tree tools if available.
+        (EXPECT, RUNTEST, LIPO, STRIP): Find them and substitute them.
+        (CONFIGURED_*_FOR_TARGET): Don't set nor substitute.
+        (*_FOR_TARGET): Set them with GCC_TARGET_TOOL.
+        (COMPILER_*_FOR_TARGET): New.
+        * Makefile.tpl (HOST_EXPORTS): Add *_FOR_TARGET symbols that gcc needs.
+        (BASE_TARGET_EXPORTS): Use COMPILER_*_FOR_TARGET symbols.
+        (CONFIGURED_*, USUAL_*): Remove.
+        (BISON, YACC, FLEX, LEX, M4, MAKEINFO, EXPECT, RUNTEST, LIPO,
+        STRIP): Use autoconf substitutions.
+        (COMPILER_AS_FOR_TARGET, COMPILER_LD_FOR_TARGET,
+        COMPILER_NM_FOR_TARGET): New.
+        (EXTRA_HOST_FLAGS): Pass LIPO and STRIP.
+
+        (all): Make all-host and all-target in parallel.
+        (do-[+make_target+], do-check, install, [+compare-target+]): Ensure
+        that $$r and $$s are set before invoking a recursive make.
+        (stage[+id+]-bubble): Likewise, and invoke the comparison at the end.
+        ([+bootstrap-target+]): Inline most of the `all' target.
+
+       2005-11-29  Ben Elliston  <bje@au.ibm.com>
+
+        * Makefile.tpl (clean-target-libgcc): Invoke clean-target-libgcc
+        from the gcc build directory.
+        * Makefile.in: Regenerate.
+
+       2005-11-29  Ben Elliston  <bje@au.ibm.com>
+
+        * Makefile.def: Add new libdecnumber host_module.  Make all-gcc
+        depend on all-libdecnumber.
+        * configure.in (host_libs): Include libdecnumber.
+        * Makefile.in: Regenerate.
+        * configure: Likewise.
+
+       2005-11-21  Kean Johnston  <jkj@sco.com>
+
+        * config.sub, config.guess: Sync from upstream sources.
+
 2005-11-11  Daniel Jacobowitz  <dan@codesourcery.com>
 
        * Makefile.def: Remove gdb dependencies for gdbtk.
index dc7d61291ab721a43e660eb9a808d34965a6de3d..f857a00bf23915db5d4c7eb5cc44252346d15028 100644 (file)
@@ -75,6 +75,7 @@ host_modules= { module= tcl;
 host_modules= { module= itcl; };
 host_modules= { module= ld; bootstrap=true; };
 host_modules= { module= libcpp; bootstrap=true; };
+host_modules= { module= libdecnumber; bootstrap=true; };
 host_modules= { module= libgui; };
 host_modules= { module= libiberty; bootstrap=true; };
 host_modules= { module= libtool; };
@@ -261,6 +262,7 @@ dependencies = { module=all-gcc; on=all-build-libiberty; };
 dependencies = { module=all-gcc; on=all-build-fixincludes; };
 dependencies = { module=all-gcc; on=all-zlib; };
 dependencies = { module=all-gcc; on=all-libcpp; hard=true; };
+dependencies = { module=all-gcc; on=all-libdecnumber; hard=true; };
 dependencies = { module=all-gcc; on=all-libiberty; };
 dependencies = { module=all-gcc; on=all-fixincludes; };
 dependencies = { module=install-gcc ; on=install-fixincludes; };
index fe0db6c4572c1a2522e805447b486464519d19a0..5bedd9e98cb49733a515522a87f0a7f349547088 100644 (file)
@@ -133,7 +133,8 @@ HOST_CONFIGARGS = @host_configargs@
 # with srcdir=..
 HOST_SUBDIR = @host_subdir@
 # This is the list of variables to export in the environment when
-# configuring subdirectories for the host system.
+# configuring subdirectories for the host system.  We need to pass
+# some to the GCC configure because of its hybrid host/target nature.
 HOST_EXPORTS = \
        $(BASE_EXPORTS) \
        CC="$(CC)"; export CC; \
@@ -152,6 +153,13 @@ HOST_EXPORTS = \
        WINDRES="$(WINDRES)"; export WINDRES; \
        OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
        OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
+       AR_FOR_TARGET="$(AR_FOR_TARGET)"; export AR_FOR_TARGET; \
+       AS_FOR_TARGET="$(AS_FOR_TARGET)"; export AS_FOR_TARGET; \
+       GCC_FOR_TARGET="$(GCC_FOR_TARGET)"; export GCC_FOR_TARGET; \
+       LD_FOR_TARGET="$(LD_FOR_TARGET)"; export LD_FOR_TARGET; \
+       NM_FOR_TARGET="$(NM_FOR_TARGET)"; export NM_FOR_TARGET; \
+       OBJDUMP_FOR_TARGET="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP_FOR_TARGET; \
+       RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)"; export RANLIB_FOR_TARGET; \
        TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
        GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
        GMPINC="$(HOST_GMPINC)"; export GMPINC; \
@@ -183,7 +191,7 @@ TARGET_CONFIGARGS = @target_configargs@ --with-target-subdir="$(TARGET_SUBDIR)"
 BASE_TARGET_EXPORTS = \
        $(BASE_EXPORTS) \
        AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
+       AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
        CC="$(CC_FOR_TARGET)"; export CC; \
        CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
        CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
@@ -192,10 +200,10 @@ BASE_TARGET_EXPORTS = \
        GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
        GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \
        DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
+       LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
        LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
        LIPO="$(LIPO_FOR_TARGET)"; export LIPO; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
+       NM="$(COMPILER_NM_FOR_TARGET)"; export NM; \
        OBJDUMP="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP; \
        RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
        STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
@@ -245,47 +253,14 @@ BUILD_PREFIX_1 = @BUILD_PREFIX_1@
 # here so that they can be overridden by Makefile fragments.
 BOOT_CFLAGS= -g -O2
 
-CONFIGURED_BISON = @CONFIGURED_BISON@
-BISON = `if [ -f $$r/$(BUILD_SUBDIR)/bison/tests/bison ] ; then \
-           echo $$r/$(BUILD_SUBDIR)/bison/tests/bison ; \
-        else \
-           echo ${CONFIGURED_BISON} ; \
-        fi`
-
-CONFIGURED_YACC = @CONFIGURED_YACC@
-YACC = `if [ -f $$r/$(BUILD_SUBDIR)/bison/tests/bison ] ; then \
-           echo $$r/$(BUILD_SUBDIR)/bison/tests/bison -y ; \
-       elif [ -f $$r/$(BUILD_SUBDIR)/byacc/byacc ] ; then \
-           echo $$r/$(BUILD_SUBDIR)/byacc/byacc ; \
-       else \
-           echo ${CONFIGURED_YACC} ; \
-       fi`
-
-CONFIGURED_FLEX = @CONFIGURED_FLEX@
-FLEX = `if [ -f $$r/$(BUILD_SUBDIR)/flex/flex ] ; \
-       then echo $$r/$(BUILD_SUBDIR)/flex/flex ; \
-       else echo ${CONFIGURED_FLEX} ; fi`
-
-CONFIGURED_LEX = @CONFIGURED_LEX@
-LEX = `if [ -f $$r/$(BUILD_SUBDIR)/flex/flex ] ; \
-       then echo $$r/$(BUILD_SUBDIR)/flex/flex ; \
-       else echo ${CONFIGURED_LEX} ; fi`
-
-CONFIGURED_M4 = @CONFIGURED_M4@
-M4 = `if [ -f $$r/$(BUILD_SUBDIR)/m4/m4 ] ; \
-       then echo $$r/$(BUILD_SUBDIR)/m4/m4 ; \
-       else echo ${CONFIGURED_M4} ; fi`
-
-# For an installed makeinfo, we require it to be from texinfo 4.2 or
-# higher, else we use the "missing" dummy.  We also pass the subdirectory
-# makeinfo even if only the Makefile is there, because Texinfo builds its
-# manual when made, and it requires its own version.
-CONFIGURED_MAKEINFO = @CONFIGURED_MAKEINFO@
-MAKEINFO = `if [ -f $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/Makefile ] ; \
-       then echo $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/makeinfo ; \
-       else if (${CONFIGURED_MAKEINFO} --version \
-         | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])') >/dev/null 2>&1; \
-        then echo ${CONFIGURED_MAKEINFO}; else echo $$s/missing makeinfo; fi; fi`
+BISON = @BISON@
+YACC = @YACC@
+FLEX = @FLEX@
+LEX = @LEX@
+M4 = @M4@
+MAKEINFO = @MAKEINFO@
+EXPECT = @EXPECT@
+RUNTEST = @RUNTEST@
 
 # This just becomes part of the MAKEINFO definition passed down to
 # sub-makes.  It lets flags be given on the command line while still
@@ -293,43 +268,28 @@ MAKEINFO = `if [ -f $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/Makefile ] ; \
 # (Default to avoid splitting info files by setting the threshold high.)
 MAKEINFOFLAGS = --split-size=5000000
 
-# FIXME: expect may become a build tool?
-EXPECT = `if [ -f $$r/$(HOST_SUBDIR)/expect/expect ] ; \
-       then echo $$r/$(HOST_SUBDIR)/expect/expect ; \
-       else echo expect ; fi`
-
-RUNTEST = `if [ -f $$s/dejagnu/runtest ] ; \
-       then echo $$s/dejagnu/runtest ; \
-       else echo runtest ; fi`
-
 # ---------------------------------------------
 # Programs producing files for the HOST machine
 # ---------------------------------------------
 
 AS = @AS@
-
 AR = @AR@
 AR_FLAGS = rc
-
 CC = @CC@
-CFLAGS = @CFLAGS@
-LIBCFLAGS = $(CFLAGS)
-
 CXX = @CXX@
-CXXFLAGS = @CXXFLAGS@
-LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
-
 DLLTOOL = @DLLTOOL@
-
-NM = @NM@
-
 LD = @LD@
-LDFLAGS = 
-
+LIPO = @LIPO@
+NM = @NM@
 RANLIB = @RANLIB@
-
+STRIP = @STRIP@
 WINDRES = @WINDRES@
 
+CFLAGS = @CFLAGS@
+LDFLAGS = 
+LIBCFLAGS = $(CFLAGS)
+CXXFLAGS = @CXXFLAGS@
+LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
 PICFLAG = 
 
 # -----------------------------------------------
@@ -339,242 +299,42 @@ PICFLAG =
 FLAGS_FOR_TARGET = @FLAGS_FOR_TARGET@
 
 AR_FOR_TARGET=@AR_FOR_TARGET@
-CONFIGURED_AR_FOR_TARGET=@CONFIGURED_AR_FOR_TARGET@
-USUAL_AR_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/ar ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/ar ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(AR); \
-    else \
-      echo $(CONFIGURED_AR_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 AS_FOR_TARGET=@AS_FOR_TARGET@
-CONFIGURED_AS_FOR_TARGET=@CONFIGURED_AS_FOR_TARGET@
-USUAL_AS_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gas/as-new ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gas/as-new ; \
-  elif [ -f $$r/$(HOST_SUBDIR)/gcc/as ]; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/as ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(AS); \
-    else \
-      echo $(CONFIGURED_AS_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 CC_FOR_TARGET=$(STAGE_CC_WRAPPER) @CC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CONFIGURED_CC_FOR_TARGET=@CONFIGURED_CC_FOR_TARGET@
-USUAL_CC_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/ ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(CC); \
-    else \
-      echo $(CONFIGURED_CC_FOR_TARGET) ; \
-    fi; \
-  fi`
-
-# During gcc bootstrap, if we use some random cc for stage1 then
-# CFLAGS will be just -g.  We want to ensure that TARGET libraries
-# (which we know are built with gcc) are built with optimizations so
-# prepend -O2 when setting CFLAGS_FOR_TARGET.
-CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
 
 # If GCC_FOR_TARGET is not overriden on the command line, then this
 # variable is passed down to the gcc Makefile, where it is used to
 # build libgcc2.a.  We define it here so that it can itself be
 # overridden on the command line.
-GCC_FOR_TARGET=@GCC_FOR_TARGET@
-CONFIGURED_GCC_FOR_TARGET=@CONFIGURED_GCC_FOR_TARGET@
-USUAL_GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) \
-  $$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/ $(FLAGS_FOR_TARGET)
-LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
-
+GCC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
 CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CONFIGURED_CXX_FOR_TARGET=@CONFIGURED_CXX_FOR_TARGET@
-USUAL_CXX_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/g++ ] ; then \
-    (echo $$r/$(HOST_SUBDIR)/gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++; \
-    test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes; \
-    echo -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs) | tr '\015\012' '  '; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(CXX); \
-    else \
-      echo $(CONFIGURED_CXX_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @RAW_CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-USUAL_RAW_CXX_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(CXX); \
-    else \
-      echo $(CONFIGURED_CXX_FOR_TARGET) ; \
-    fi; \
-  fi`
-
-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
-
 GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CONFIGURED_GCJ_FOR_TARGET=@CONFIGURED_GCJ_FOR_TARGET@
-USUAL_GCJ_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/gcj ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(GCJ); \
-    else \
-      echo $(CONFIGURED_GCJ_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CONFIGURED_GFORTRAN_FOR_TARGET=@CONFIGURED_GFORTRAN_FOR_TARGET@
-USUAL_GFORTRAN_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/gfortran ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(GFORTRAN); \
-    else \
-      echo $(CONFIGURED_GFORTRAN_FOR_TARGET) ; \
-    fi; \
-  fi`
-
-
 DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
-CONFIGURED_DLLTOOL_FOR_TARGET=@CONFIGURED_DLLTOOL_FOR_TARGET@
-USUAL_DLLTOOL_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/dlltool ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/dlltool ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(DLLTOOL); \
-    else \
-      echo $(CONFIGURED_DLLTOOL_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 LD_FOR_TARGET=@LD_FOR_TARGET@
-CONFIGURED_LD_FOR_TARGET=@CONFIGURED_LD_FOR_TARGET@
-USUAL_LD_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/ld/ld-new ] ; then \
-    echo $$r/$(HOST_SUBDIR)/ld/ld-new ; \
-  elif [ -f $$r/$(HOST_SUBDIR)/gcc/collect-ld ]; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/collect-ld ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(LD); \
-    else \
-      echo $(CONFIGURED_LD_FOR_TARGET) ; \
-    fi; \
-  fi`
-
-LDFLAGS_FOR_TARGET = 
 
 LIPO_FOR_TARGET=@LIPO_FOR_TARGET@
-CONFIGURED_LIPO_FOR_TARGET=@CONFIGURED_LIPO_FOR_TARGET@
-USUAL_LIPO_FOR_TARGET = ` \
-  if [ '$(host)' = '$(target)' ] ; then \
-    if [ x'$(LIPO)' != x ]; then \
-       echo $(LIPO); \
-    else \
-       echo lipo; \
-    fi; \
-  else \
-    echo $(CONFIGURED_LIPO_FOR_TARGET) ; \
-  fi`
-
 NM_FOR_TARGET=@NM_FOR_TARGET@
-CONFIGURED_NM_FOR_TARGET=@CONFIGURED_NM_FOR_TARGET@
-USUAL_NM_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/nm-new ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/nm-new ; \
-  elif [ -f $$r/$(HOST_SUBDIR)/gcc/nm ]; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/nm ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(NM); \
-    else \
-      echo $(CONFIGURED_NM_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 OBJDUMP_FOR_TARGET=@OBJDUMP_FOR_TARGET@
-CONFIGURED_OBJDUMP_FOR_TARGET=@CONFIGURED_OBJDUMP_FOR_TARGET@
-USUAL_OBJDUMP_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/objdump ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/objdump ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      if [ x'$(OBJDUMP)' != x ]; then \
-         echo $(OBJDUMP); \
-      else \
-         echo objdump; \
-      fi; \
-    else \
-      echo $(CONFIGURED_OBJDUMP_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 RANLIB_FOR_TARGET=@RANLIB_FOR_TARGET@
-CONFIGURED_RANLIB_FOR_TARGET=@CONFIGURED_RANLIB_FOR_TARGET@
-USUAL_RANLIB_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/ranlib ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/ranlib ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      if [ x'$(RANLIB)' != x ]; then \
-         echo $(RANLIB); \
-      else \
-         echo ranlib; \
-      fi; \
-    else \
-      echo $(CONFIGURED_RANLIB_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 STRIP_FOR_TARGET=@STRIP_FOR_TARGET@
-CONFIGURED_STRIP_FOR_TARGET=@CONFIGURED_STRIP_FOR_TARGET@
-USUAL_STRIP_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/strip ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/strip ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      if [ x'$(STRIP)' != x ]; then \
-         echo $(STRIP); \
-      else \
-         echo strip; \
-      fi; \
-    else \
-      echo $(CONFIGURED_STRIP_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
-CONFIGURED_WINDRES_FOR_TARGET=@CONFIGURED_WINDRES_FOR_TARGET@
-USUAL_WINDRES_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/windres ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/windres ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(WINDRES); \
-    else \
-      echo $(CONFIGURED_WINDRES_FOR_TARGET) ; \
-    fi; \
-  fi`
 
+COMPILER_AS_FOR_TARGET=@COMPILER_AS_FOR_TARGET@
+COMPILER_LD_FOR_TARGET=@COMPILER_LD_FOR_TARGET@
+COMPILER_NM_FOR_TARGET=@COMPILER_NM_FOR_TARGET@
+
+# During gcc bootstrap, if we use some random cc for stage1 then
+# CFLAGS will be just -g.  We want to ensure that TARGET libraries
+# (which we know are built with gcc) are built with optimizations so
+# prepend -O2 when setting CFLAGS_FOR_TARGET.
+CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
+SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
+CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
+LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
+LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
+LDFLAGS_FOR_TARGET = 
 PICFLAG_FOR_TARGET = 
 
 # ------------------------------------
@@ -712,8 +472,10 @@ EXTRA_HOST_FLAGS = \
        'CXX=$(CXX)' \
        'DLLTOOL=$(DLLTOOL)' \
        'LD=$(LD)' \
+       'LIPO=$(LIPO)' \
        'NM=$(NM)' \
        'RANLIB=$(RANLIB)' \
+       'STRIP=$(STRIP)' \
        'WINDRES=$(WINDRES)'
 
 FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
@@ -735,17 +497,17 @@ X11_FLAGS_TO_PASS = \
 # are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them.
 EXTRA_TARGET_FLAGS = \
        'AR=$$(AR_FOR_TARGET)' \
-       'AS=$$(AS_FOR_TARGET)' \
+       'AS=$$(COMPILER_AS_FOR_TARGET)' \
        'CC=$$(CC_FOR_TARGET)' \
        'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
        'CXX=$$(CXX_FOR_TARGET)' \
        'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
        'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
-       'LD=$$(LD_FOR_TARGET)' \
+       'LD=$$(COMPILER_LD_FOR_TARGET)' \
        'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
        'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
        'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET)' \
-       'NM=$$(NM_FOR_TARGET)' \
+       'NM=$$(COMPILER_NM_FOR_TARGET)' \
        'OBJDUMP=$$(OBJDUMP_FOR_TARGET)' \
        'RANLIB=$$(RANLIB_FOR_TARGET)' \
        'WINDRES=$$(WINDRES_FOR_TARGET)'
@@ -810,6 +572,7 @@ configure-host:  \
     maybe-configure-itcl \
     maybe-configure-ld \
     maybe-configure-libcpp \
+    maybe-configure-libdecnumber \
     maybe-configure-libgui \
     maybe-configure-libiberty \
     maybe-configure-libtool \
@@ -869,28 +632,19 @@ configure-target:  \
 .PHONY: all
 all:
 @if gcc-bootstrap
+       [ -f stage_final ] || echo stage3 > stage_final
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       if [ ! -f stage_last ]; then \
-         $(MAKE) $(RECURSE_FLAGS_TO_PASS) bootstrap; \
-       fi
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) `cat stage_final`-bubble; \
 @endif gcc-bootstrap
        @$(unstage)
-@if gcc-no-bootstrap
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-prebootstrap
-@endif gcc-no-bootstrap
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        if [ -f stage_last ]; then \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host; \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target; \
        else \
-         $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-host; \
+         $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-host all-target; \
        fi
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-target
        @$(stage)
 
 .PHONY: all-build
@@ -938,6 +692,7 @@ all-host:  \
     maybe-all-itcl \
     maybe-all-ld \
     maybe-all-libcpp \
+    maybe-all-libdecnumber \
     maybe-all-libgui \
     maybe-all-libiberty \
     maybe-all-libtool \
@@ -1044,6 +799,7 @@ info-host:  \
     maybe-info-itcl \
     maybe-info-ld \
     maybe-info-libcpp \
+    maybe-info-libdecnumber \
     maybe-info-libgui \
     maybe-info-libiberty \
     maybe-info-libtool \
@@ -1146,6 +902,7 @@ dvi-host:  \
     maybe-dvi-itcl \
     maybe-dvi-ld \
     maybe-dvi-libcpp \
+    maybe-dvi-libdecnumber \
     maybe-dvi-libgui \
     maybe-dvi-libiberty \
     maybe-dvi-libtool \
@@ -1248,6 +1005,7 @@ html-host:  \
     maybe-html-itcl \
     maybe-html-ld \
     maybe-html-libcpp \
+    maybe-html-libdecnumber \
     maybe-html-libgui \
     maybe-html-libiberty \
     maybe-html-libtool \
@@ -1350,6 +1108,7 @@ TAGS-host:  \
     maybe-TAGS-itcl \
     maybe-TAGS-ld \
     maybe-TAGS-libcpp \
+    maybe-TAGS-libdecnumber \
     maybe-TAGS-libgui \
     maybe-TAGS-libiberty \
     maybe-TAGS-libtool \
@@ -1452,6 +1211,7 @@ install-info-host:  \
     maybe-install-info-itcl \
     maybe-install-info-ld \
     maybe-install-info-libcpp \
+    maybe-install-info-libdecnumber \
     maybe-install-info-libgui \
     maybe-install-info-libiberty \
     maybe-install-info-libtool \
@@ -1554,6 +1314,7 @@ installcheck-host:  \
     maybe-installcheck-itcl \
     maybe-installcheck-ld \
     maybe-installcheck-libcpp \
+    maybe-installcheck-libdecnumber \
     maybe-installcheck-libgui \
     maybe-installcheck-libiberty \
     maybe-installcheck-libtool \
@@ -1656,6 +1417,7 @@ mostlyclean-host:  \
     maybe-mostlyclean-itcl \
     maybe-mostlyclean-ld \
     maybe-mostlyclean-libcpp \
+    maybe-mostlyclean-libdecnumber \
     maybe-mostlyclean-libgui \
     maybe-mostlyclean-libiberty \
     maybe-mostlyclean-libtool \
@@ -1758,6 +1520,7 @@ clean-host:  \
     maybe-clean-itcl \
     maybe-clean-ld \
     maybe-clean-libcpp \
+    maybe-clean-libdecnumber \
     maybe-clean-libgui \
     maybe-clean-libiberty \
     maybe-clean-libtool \
@@ -1860,6 +1623,7 @@ distclean-host:  \
     maybe-distclean-itcl \
     maybe-distclean-ld \
     maybe-distclean-libcpp \
+    maybe-distclean-libdecnumber \
     maybe-distclean-libgui \
     maybe-distclean-libiberty \
     maybe-distclean-libtool \
@@ -1962,6 +1726,7 @@ maintainer-clean-host:  \
     maybe-maintainer-clean-itcl \
     maybe-maintainer-clean-ld \
     maybe-maintainer-clean-libcpp \
+    maybe-maintainer-clean-libdecnumber \
     maybe-maintainer-clean-libgui \
     maybe-maintainer-clean-libiberty \
     maybe-maintainer-clean-libtool \
@@ -2069,14 +1834,10 @@ maintainer-clean: local-maintainer-clean do-maintainer-clean local-clean
 maintainer-clean: local-distclean
 realclean: maintainer-clean
 
-# Extra dependency for clean-target, owing to the mixed nature of gcc
+# Extra dependency for clean-target, owing to the mixed nature of gcc.
 clean-target: clean-target-libgcc
 clean-target-libgcc:
-       test ! -d gcc/libgcc || \
-       (cd gcc/libgcc && find . -type d -print) | \
-       while read d; do rm -f gcc/$$d/libgcc.a || : ; done
-       -rm -rf gcc/libgcc
-       -rm -f gcc/stmp-dirs
+       test ! -d gcc || (cd gcc && $(MAKE) $@)
 
 # Check target.
 
@@ -2120,6 +1881,7 @@ check-host:  \
     maybe-check-itcl \
     maybe-check-ld \
     maybe-check-libcpp \
+    maybe-check-libdecnumber \
     maybe-check-libgui \
     maybe-check-libiberty \
     maybe-check-libtool \
@@ -2249,6 +2011,7 @@ install-host-nogcc:  \
     maybe-install-itcl \
     maybe-install-ld \
     maybe-install-libcpp \
+    maybe-install-libdecnumber \
     maybe-install-libgui \
     maybe-install-libiberty \
     maybe-install-libtool \
@@ -2319,6 +2082,7 @@ install-host:  \
     maybe-install-itcl \
     maybe-install-ld \
     maybe-install-libcpp \
+    maybe-install-libdecnumber \
     maybe-install-libgui \
     maybe-install-libiberty \
     maybe-install-libtool \
@@ -16763,6 +16527,670 @@ maintainer-clean-libcpp:
 
 
 
+.PHONY: configure-libdecnumber maybe-configure-libdecnumber
+maybe-configure-libdecnumber:
+@if libdecnumber
+maybe-configure-libdecnumber: configure-libdecnumber
+configure-libdecnumber: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/libdecnumber/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libdecnumber ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/libdecnumber; \
+       cd "$(HOST_SUBDIR)/libdecnumber" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
+       libsrcdir="$$s/libdecnumber"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif libdecnumber
+
+
+
+.PHONY: configure-stage1-libdecnumber maybe-configure-stage1-libdecnumber
+maybe-configure-stage1-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-configure-stage1-libdecnumber: configure-stage1-libdecnumber
+configure-stage1-libdecnumber: 
+       @[ `cat stage_current` = stage1 ] || $(MAKE) stage1-start
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring stage 1 in $(HOST_SUBDIR)/libdecnumber ; \
+       cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
+       libsrcdir="$$s/libdecnumber"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+@endif libdecnumber-bootstrap
+
+.PHONY: configure-stage2-libdecnumber maybe-configure-stage2-libdecnumber
+maybe-configure-stage2-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-configure-stage2-libdecnumber: configure-stage2-libdecnumber
+configure-stage2-libdecnumber: 
+       @[ `cat stage_current` = stage2 ] || $(MAKE) stage2-start
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       echo Configuring stage 2 in $(HOST_SUBDIR)/libdecnumber ; \
+       cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
+       libsrcdir="$$s/libdecnumber"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+@endif libdecnumber-bootstrap
+
+.PHONY: configure-stage3-libdecnumber maybe-configure-stage3-libdecnumber
+maybe-configure-stage3-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-configure-stage3-libdecnumber: configure-stage3-libdecnumber
+configure-stage3-libdecnumber: 
+       @[ `cat stage_current` = stage3 ] || $(MAKE) stage3-start
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       echo Configuring stage 3 in $(HOST_SUBDIR)/libdecnumber ; \
+       cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
+       libsrcdir="$$s/libdecnumber"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+@endif libdecnumber-bootstrap
+
+.PHONY: configure-stage4-libdecnumber maybe-configure-stage4-libdecnumber
+maybe-configure-stage4-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-configure-stage4-libdecnumber: configure-stage4-libdecnumber
+configure-stage4-libdecnumber: 
+       @[ `cat stage_current` = stage4 ] || $(MAKE) stage4-start
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       echo Configuring stage 4 in $(HOST_SUBDIR)/libdecnumber ; \
+       cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
+       libsrcdir="$$s/libdecnumber"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+@endif libdecnumber-bootstrap
+
+.PHONY: configure-stageprofile-libdecnumber maybe-configure-stageprofile-libdecnumber
+maybe-configure-stageprofile-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-configure-stageprofile-libdecnumber: configure-stageprofile-libdecnumber
+configure-stageprofile-libdecnumber: 
+       @[ `cat stage_current` = stageprofile ] || $(MAKE) stageprofile-start
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       echo Configuring stage profile in $(HOST_SUBDIR)/libdecnumber ; \
+       cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
+       libsrcdir="$$s/libdecnumber"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+@endif libdecnumber-bootstrap
+
+.PHONY: configure-stagefeedback-libdecnumber maybe-configure-stagefeedback-libdecnumber
+maybe-configure-stagefeedback-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-configure-stagefeedback-libdecnumber: configure-stagefeedback-libdecnumber
+configure-stagefeedback-libdecnumber: 
+       @[ `cat stage_current` = stagefeedback ] || $(MAKE) stagefeedback-start
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       echo Configuring stage feedback in $(HOST_SUBDIR)/libdecnumber ; \
+       cd $(HOST_SUBDIR)/libdecnumber || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libdecnumber/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libdecnumber"; \
+       libsrcdir="$$s/libdecnumber"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+@endif libdecnumber-bootstrap
+
+
+
+
+
+.PHONY: all-libdecnumber maybe-all-libdecnumber
+maybe-all-libdecnumber:
+@if libdecnumber
+TARGET-libdecnumber=all
+maybe-all-libdecnumber: all-libdecnumber
+all-libdecnumber: configure-libdecnumber
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-libdecnumber))
+@endif libdecnumber
+
+
+
+.PHONY: all-stage1-libdecnumber maybe-all-stage1-libdecnumber
+.PHONY: clean-stage1-libdecnumber maybe-clean-stage1-libdecnumber
+maybe-all-stage1-libdecnumber:
+maybe-clean-stage1-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-all-stage1-libdecnumber: all-stage1-libdecnumber
+all-stage1: all-stage1-libdecnumber
+TARGET-stage1-libdecnumber = $(TARGET-libdecnumber)
+all-stage1-libdecnumber: configure-stage1-libdecnumber
+       @[ `cat stage_current` = stage1 ] || $(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS)  CFLAGS="$(STAGE1_CFLAGS)"  \
+               $(TARGET-stage1-libdecnumber)
+
+maybe-clean-stage1-libdecnumber: clean-stage1-libdecnumber
+clean-stage1: clean-stage1-libdecnumber
+clean-stage1-libdecnumber:
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stage1-libdecnumber/Makefile ] \
+         || exit 0 ; \
+       @[ `cat stage_current` = stage1 ] || $(MAKE) stage1-start
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif libdecnumber-bootstrap
+
+
+.PHONY: all-stage2-libdecnumber maybe-all-stage2-libdecnumber
+.PHONY: clean-stage2-libdecnumber maybe-clean-stage2-libdecnumber
+maybe-all-stage2-libdecnumber:
+maybe-clean-stage2-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-all-stage2-libdecnumber: all-stage2-libdecnumber
+all-stage2: all-stage2-libdecnumber
+TARGET-stage2-libdecnumber = $(TARGET-libdecnumber)
+all-stage2-libdecnumber: configure-stage2-libdecnumber
+       @[ `cat stage_current` = stage2 ] || $(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS)   \
+               $(TARGET-stage2-libdecnumber)
+
+maybe-clean-stage2-libdecnumber: clean-stage2-libdecnumber
+clean-stage2: clean-stage2-libdecnumber
+clean-stage2-libdecnumber:
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stage2-libdecnumber/Makefile ] \
+         || exit 0 ; \
+       @[ `cat stage_current` = stage2 ] || $(MAKE) stage2-start
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libdecnumber-bootstrap
+
+
+.PHONY: all-stage3-libdecnumber maybe-all-stage3-libdecnumber
+.PHONY: clean-stage3-libdecnumber maybe-clean-stage3-libdecnumber
+maybe-all-stage3-libdecnumber:
+maybe-clean-stage3-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-all-stage3-libdecnumber: all-stage3-libdecnumber
+all-stage3: all-stage3-libdecnumber
+TARGET-stage3-libdecnumber = $(TARGET-libdecnumber)
+all-stage3-libdecnumber: configure-stage3-libdecnumber
+       @[ `cat stage_current` = stage3 ] || $(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS)   \
+               $(TARGET-stage3-libdecnumber)
+
+maybe-clean-stage3-libdecnumber: clean-stage3-libdecnumber
+clean-stage3: clean-stage3-libdecnumber
+clean-stage3-libdecnumber:
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stage3-libdecnumber/Makefile ] \
+         || exit 0 ; \
+       @[ `cat stage_current` = stage3 ] || $(MAKE) stage3-start
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libdecnumber-bootstrap
+
+
+.PHONY: all-stage4-libdecnumber maybe-all-stage4-libdecnumber
+.PHONY: clean-stage4-libdecnumber maybe-clean-stage4-libdecnumber
+maybe-all-stage4-libdecnumber:
+maybe-clean-stage4-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-all-stage4-libdecnumber: all-stage4-libdecnumber
+all-stage4: all-stage4-libdecnumber
+TARGET-stage4-libdecnumber = $(TARGET-libdecnumber)
+all-stage4-libdecnumber: configure-stage4-libdecnumber
+       @[ `cat stage_current` = stage4 ] || $(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS)   \
+               $(TARGET-stage4-libdecnumber)
+
+maybe-clean-stage4-libdecnumber: clean-stage4-libdecnumber
+clean-stage4: clean-stage4-libdecnumber
+clean-stage4-libdecnumber:
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stage4-libdecnumber/Makefile ] \
+         || exit 0 ; \
+       @[ `cat stage_current` = stage4 ] || $(MAKE) stage4-start
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libdecnumber-bootstrap
+
+
+.PHONY: all-stageprofile-libdecnumber maybe-all-stageprofile-libdecnumber
+.PHONY: clean-stageprofile-libdecnumber maybe-clean-stageprofile-libdecnumber
+maybe-all-stageprofile-libdecnumber:
+maybe-clean-stageprofile-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-all-stageprofile-libdecnumber: all-stageprofile-libdecnumber
+all-stageprofile: all-stageprofile-libdecnumber
+TARGET-stageprofile-libdecnumber = $(TARGET-libdecnumber)
+all-stageprofile-libdecnumber: configure-stageprofile-libdecnumber
+       @[ `cat stage_current` = stageprofile ] || $(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  \
+               $(TARGET-stageprofile-libdecnumber)
+
+maybe-clean-stageprofile-libdecnumber: clean-stageprofile-libdecnumber
+clean-stageprofile: clean-stageprofile-libdecnumber
+clean-stageprofile-libdecnumber:
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stageprofile-libdecnumber/Makefile ] \
+         || exit 0 ; \
+       @[ `cat stage_current` = stageprofile ] || $(MAKE) stageprofile-start
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif libdecnumber-bootstrap
+
+
+.PHONY: all-stagefeedback-libdecnumber maybe-all-stagefeedback-libdecnumber
+.PHONY: clean-stagefeedback-libdecnumber maybe-clean-stagefeedback-libdecnumber
+maybe-all-stagefeedback-libdecnumber:
+maybe-clean-stagefeedback-libdecnumber:
+@if libdecnumber-bootstrap
+maybe-all-stagefeedback-libdecnumber: all-stagefeedback-libdecnumber
+all-stagefeedback: all-stagefeedback-libdecnumber
+TARGET-stagefeedback-libdecnumber = $(TARGET-libdecnumber)
+all-stagefeedback-libdecnumber: configure-stagefeedback-libdecnumber
+       @[ `cat stage_current` = stagefeedback ] || $(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS) $(POSTSTAGE1_FLAGS_TO_PASS) CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  \
+               $(TARGET-stagefeedback-libdecnumber)
+
+maybe-clean-stagefeedback-libdecnumber: clean-stagefeedback-libdecnumber
+clean-stagefeedback: clean-stagefeedback-libdecnumber
+clean-stagefeedback-libdecnumber:
+       @[ -f $(HOST_SUBDIR)/libdecnumber/Makefile ] || [ -f $(HOST_SUBDIR)/stagefeedback-libdecnumber/Makefile ] \
+         || exit 0 ; \
+       @[ `cat stage_current` = stagefeedback ] || $(MAKE) stagefeedback-start
+       cd $(HOST_SUBDIR)/libdecnumber && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif libdecnumber-bootstrap
+
+
+
+
+
+.PHONY: check-libdecnumber maybe-check-libdecnumber
+maybe-check-libdecnumber:
+@if libdecnumber
+maybe-check-libdecnumber: check-libdecnumber
+
+check-libdecnumber:
+       @$(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif libdecnumber
+
+.PHONY: install-libdecnumber maybe-install-libdecnumber
+maybe-install-libdecnumber:
+@if libdecnumber
+maybe-install-libdecnumber: install-libdecnumber
+
+install-libdecnumber: installdirs
+       @$(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif libdecnumber
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-libdecnumber info-libdecnumber
+maybe-info-libdecnumber:
+@if libdecnumber
+maybe-info-libdecnumber: info-libdecnumber
+
+info-libdecnumber: \
+    configure-libdecnumber 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing info in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 info) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-dvi-libdecnumber dvi-libdecnumber
+maybe-dvi-libdecnumber:
+@if libdecnumber
+maybe-dvi-libdecnumber: dvi-libdecnumber
+
+dvi-libdecnumber: \
+    configure-libdecnumber 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing dvi in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 dvi) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-html-libdecnumber html-libdecnumber
+maybe-html-libdecnumber:
+@if libdecnumber
+maybe-html-libdecnumber: html-libdecnumber
+
+html-libdecnumber: \
+    configure-libdecnumber 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing html in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 html) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-TAGS-libdecnumber TAGS-libdecnumber
+maybe-TAGS-libdecnumber:
+@if libdecnumber
+maybe-TAGS-libdecnumber: TAGS-libdecnumber
+
+TAGS-libdecnumber: \
+    configure-libdecnumber 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing TAGS in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 TAGS) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-install-info-libdecnumber install-info-libdecnumber
+maybe-install-info-libdecnumber:
+@if libdecnumber
+maybe-install-info-libdecnumber: install-info-libdecnumber
+
+install-info-libdecnumber: \
+    configure-libdecnumber \
+    info-libdecnumber 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing install-info in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 install-info) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-installcheck-libdecnumber installcheck-libdecnumber
+maybe-installcheck-libdecnumber:
+@if libdecnumber
+maybe-installcheck-libdecnumber: installcheck-libdecnumber
+
+installcheck-libdecnumber: \
+    configure-libdecnumber 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing installcheck in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 installcheck) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-mostlyclean-libdecnumber mostlyclean-libdecnumber
+maybe-mostlyclean-libdecnumber:
+@if libdecnumber
+maybe-mostlyclean-libdecnumber: mostlyclean-libdecnumber
+
+mostlyclean-libdecnumber: 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing mostlyclean in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 mostlyclean) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-clean-libdecnumber clean-libdecnumber
+maybe-clean-libdecnumber:
+@if libdecnumber
+maybe-clean-libdecnumber: clean-libdecnumber
+
+clean-libdecnumber: 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing clean in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 clean) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-distclean-libdecnumber distclean-libdecnumber
+maybe-distclean-libdecnumber:
+@if libdecnumber
+maybe-distclean-libdecnumber: distclean-libdecnumber
+
+distclean-libdecnumber: 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing distclean in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 distclean) \
+         || exit 1
+
+@endif libdecnumber
+
+.PHONY: maybe-maintainer-clean-libdecnumber maintainer-clean-libdecnumber
+maybe-maintainer-clean-libdecnumber:
+@if libdecnumber
+maybe-maintainer-clean-libdecnumber: maintainer-clean-libdecnumber
+
+maintainer-clean-libdecnumber: 
+       @[ -f ./libdecnumber/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing maintainer-clean in libdecnumber" ; \
+       (cd $(HOST_SUBDIR)/libdecnumber && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 maintainer-clean) \
+         || exit 1
+
+@endif libdecnumber
+
+
+
 .PHONY: configure-libgui maybe-configure-libgui
 maybe-configure-libgui:
 @if libgui
@@ -35115,7 +35543,7 @@ stage = :
 
 @if gcc-bootstrap
 unstage = [ -f stage_current ] || $(MAKE) `cat stage_last`-start
-stage = $(MAKE) `cat stage_current`-end
+stage = [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
 @endif gcc-bootstrap
 
 .PHONY: unstage stage
@@ -35170,7 +35598,7 @@ POSTSTAGE1_FLAGS_TO_PASS = \
 .PHONY: stage1-start stage1-end
 
 stage1-start::
-       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @$(stage); \
        echo stage1 > stage_current ; \
        echo stage1 > stage_last; \
        $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR) $(TARGET_SUBDIR)
@@ -35222,6 +35650,12 @@ stage1-start::
        set stage1-libcpp libcpp ; \
        @CREATE_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); [ -d stage1-libdecnumber ] || \
+         mkdir stage1-libdecnumber; \
+       set stage1-libdecnumber libdecnumber ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); [ -d stage1-libiberty ] || \
          mkdir stage1-libiberty; \
@@ -35269,6 +35703,10 @@ stage1-end::
        @cd $(HOST_SUBDIR); set libcpp stage1-libcpp ; \
        @UNDO_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); set libdecnumber stage1-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); set libiberty stage1-libiberty ; \
        @UNDO_LINK_TO_DIR@ 
@@ -35306,7 +35744,7 @@ do-clean: clean-stage1
 
 .PHONY: distclean-stage1
 distclean-stage1::
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       @$(stage)
        rm -rf stage1-* 
 
 
@@ -35316,7 +35754,7 @@ distclean-stage1::
 .PHONY: stage2-start stage2-end
 
 stage2-start::
-       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @$(stage); \
        echo stage2 > stage_current ; \
        echo stage2 > stage_last; \
        $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR) $(TARGET_SUBDIR)
@@ -35384,6 +35822,14 @@ stage2-start::
        set stage1-libcpp prev-libcpp ; \
        @CREATE_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); [ -d stage2-libdecnumber ] || \
+         mkdir stage2-libdecnumber; \
+       set stage2-libdecnumber libdecnumber ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libdecnumber prev-libdecnumber ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); [ -d stage2-libiberty ] || \
          mkdir stage2-libiberty; \
@@ -35451,6 +35897,12 @@ stage2-end::
        set prev-libcpp stage1-libcpp ; \
        @UNDO_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); set libdecnumber stage2-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libdecnumber stage1-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); set libiberty stage2-libiberty ; \
        @UNDO_LINK_TO_DIR@  ; \
@@ -35488,15 +35940,23 @@ do-clean: clean-stage2
 
 
 .PHONY: bootstrap2
-bootstrap2: stage2-bubble
-       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
+bootstrap2:
+       echo stage2 > stage_final
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage2-bubble
+       @$(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+       @$(stage)
 
 
 # Rules to wipe a stage and all the following ones, also used for cleanstrap
 distclean-stage1:: distclean-stage2 
 .PHONY: distclean-stage2
 distclean-stage2::
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       @$(stage)
        rm -rf stage2-* 
 
 
@@ -35506,7 +35966,7 @@ distclean-stage2::
 .PHONY: stage3-start stage3-end
 
 stage3-start::
-       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @$(stage); \
        echo stage3 > stage_current ; \
        echo stage3 > stage_last; \
        $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR) $(TARGET_SUBDIR)
@@ -35574,6 +36034,14 @@ stage3-start::
        set stage2-libcpp prev-libcpp ; \
        @CREATE_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); [ -d stage3-libdecnumber ] || \
+         mkdir stage3-libdecnumber; \
+       set stage3-libdecnumber libdecnumber ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-libdecnumber prev-libdecnumber ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); [ -d stage3-libiberty ] || \
          mkdir stage3-libiberty; \
@@ -35641,6 +36109,12 @@ stage3-end::
        set prev-libcpp stage2-libcpp ; \
        @UNDO_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); set libdecnumber stage3-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libdecnumber stage2-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); set libiberty stage3-libiberty ; \
        @UNDO_LINK_TO_DIR@  ; \
@@ -35668,6 +36142,7 @@ stage3-bubble:: stage2-bubble
          $(MAKE) stage3-start; \
          $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage3; \
        fi
+       $(MAKE) compare
 
 .PHONY: all-stage3 clean-stage3
 do-clean: clean-stage3
@@ -35683,7 +36158,7 @@ compare:
          echo Cannot compare object files as stage 2 was deleted. ; \
          exit 0 ; \
        fi; \
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       $(stage); \
        rm -f .bad_compare ; \
        cd stage3-gcc; \
        files=`find . -name "*$(objext)" -print` ; \
@@ -35713,16 +36188,23 @@ compare:
 
 
 .PHONY: bootstrap
-bootstrap: stage3-bubble
-       $(MAKE) compare
-       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
+bootstrap:
+       echo stage3 > stage_final
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage3-bubble
+       @$(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+       @$(stage)
 
 
 # Rules to wipe a stage and all the following ones, also used for cleanstrap
 distclean-stage2:: distclean-stage3 
 .PHONY: distclean-stage3
 distclean-stage3::
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       @$(stage)
        rm -rf stage3-* compare 
 
 
@@ -35735,7 +36217,7 @@ cleanstrap: distclean bootstrap
 .PHONY: stage4-start stage4-end
 
 stage4-start::
-       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @$(stage); \
        echo stage4 > stage_current ; \
        echo stage4 > stage_last; \
        $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR) $(TARGET_SUBDIR)
@@ -35803,6 +36285,14 @@ stage4-start::
        set stage3-libcpp prev-libcpp ; \
        @CREATE_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); [ -d stage4-libdecnumber ] || \
+         mkdir stage4-libdecnumber; \
+       set stage4-libdecnumber libdecnumber ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-libdecnumber prev-libdecnumber ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); [ -d stage4-libiberty ] || \
          mkdir stage4-libiberty; \
@@ -35870,6 +36360,12 @@ stage4-end::
        set prev-libcpp stage3-libcpp ; \
        @UNDO_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); set libdecnumber stage4-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libdecnumber stage3-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); set libiberty stage4-libiberty ; \
        @UNDO_LINK_TO_DIR@  ; \
@@ -35897,6 +36393,7 @@ stage4-bubble:: stage3-bubble
          $(MAKE) stage4-start; \
          $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage4; \
        fi
+       $(MAKE) compare3
 
 .PHONY: all-stage4 clean-stage4
 do-clean: clean-stage4
@@ -35912,7 +36409,7 @@ compare3:
          echo Cannot compare object files as stage 3 was deleted. ; \
          exit 0 ; \
        fi; \
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       $(stage); \
        rm -f .bad_compare ; \
        cd stage4-gcc; \
        files=`find . -name "*$(objext)" -print` ; \
@@ -35942,16 +36439,23 @@ compare3:
 
 
 .PHONY: bootstrap4
-bootstrap4: stage4-bubble
-       $(MAKE) compare3
-       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
+bootstrap4:
+       echo stage4 > stage_final
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage4-bubble
+       @$(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+       @$(stage)
 
 
 # Rules to wipe a stage and all the following ones, also used for cleanstrap
 distclean-stage3:: distclean-stage4 
 .PHONY: distclean-stage4
 distclean-stage4::
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       @$(stage)
        rm -rf stage4-* compare3 
 
 
@@ -35961,7 +36465,7 @@ distclean-stage4::
 .PHONY: stageprofile-start stageprofile-end
 
 stageprofile-start::
-       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @$(stage); \
        echo stageprofile > stage_current ; \
        echo stageprofile > stage_last; \
        $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR) $(TARGET_SUBDIR)
@@ -36029,6 +36533,14 @@ stageprofile-start::
        set stage1-libcpp prev-libcpp ; \
        @CREATE_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); [ -d stageprofile-libdecnumber ] || \
+         mkdir stageprofile-libdecnumber; \
+       set stageprofile-libdecnumber libdecnumber ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libdecnumber prev-libdecnumber ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); [ -d stageprofile-libiberty ] || \
          mkdir stageprofile-libiberty; \
@@ -36096,6 +36608,12 @@ stageprofile-end::
        set prev-libcpp stage1-libcpp ; \
        @UNDO_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); set libdecnumber stageprofile-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libdecnumber stage1-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); set libiberty stageprofile-libiberty ; \
        @UNDO_LINK_TO_DIR@  ; \
@@ -36137,7 +36655,7 @@ do-clean: clean-stageprofile
 distclean-stage1:: distclean-stageprofile 
 .PHONY: distclean-stageprofile
 distclean-stageprofile::
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       @$(stage)
        rm -rf stageprofile-* 
 
 
@@ -36147,7 +36665,7 @@ distclean-stageprofile::
 .PHONY: stagefeedback-start stagefeedback-end
 
 stagefeedback-start::
-       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @$(stage); \
        echo stagefeedback > stage_current ; \
        echo stagefeedback > stage_last; \
        $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR) $(TARGET_SUBDIR)
@@ -36215,6 +36733,14 @@ stagefeedback-start::
        set stageprofile-libcpp prev-libcpp ; \
        @CREATE_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-libdecnumber ] || \
+         mkdir stagefeedback-libdecnumber; \
+       set stagefeedback-libdecnumber libdecnumber ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stageprofile-libdecnumber prev-libdecnumber ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); [ -d stagefeedback-libiberty ] || \
          mkdir stagefeedback-libiberty; \
@@ -36282,6 +36808,12 @@ stagefeedback-end::
        set prev-libcpp stageprofile-libcpp ; \
        @UNDO_LINK_TO_DIR@ 
 @endif libcpp
+@if libdecnumber
+       @cd $(HOST_SUBDIR); set libdecnumber stagefeedback-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libdecnumber stageprofile-libdecnumber ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libdecnumber
 @if libiberty
        @cd $(HOST_SUBDIR); set libiberty stagefeedback-libiberty ; \
        @UNDO_LINK_TO_DIR@  ; \
@@ -36319,15 +36851,23 @@ do-clean: clean-stagefeedback
 
 
 .PHONY: profiledbootstrap
-profiledbootstrap: stagefeedback-bubble
-       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
+profiledbootstrap:
+       echo stagefeedback > stage_final
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) stagefeedback-bubble
+       @$(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+       @$(stage)
 
 
 # Rules to wipe a stage and all the following ones, also used for cleanstrap
 distclean-stageprofile:: distclean-stagefeedback 
 .PHONY: distclean-stagefeedback
 distclean-stagefeedback::
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       @$(stage)
        rm -rf stagefeedback-* 
 
 
@@ -36577,6 +37117,14 @@ all-stage3-gcc: all-stage3-libcpp
 all-stage4-gcc: all-stage4-libcpp
 all-stageprofile-gcc: all-stageprofile-libcpp
 all-stagefeedback-gcc: all-stagefeedback-libcpp
+all-gcc: all-libdecnumber
+
+all-stage1-gcc: all-stage1-libdecnumber
+all-stage2-gcc: all-stage2-libdecnumber
+all-stage3-gcc: all-stage3-libdecnumber
+all-stage4-gcc: all-stage4-libdecnumber
+all-stageprofile-gcc: all-stageprofile-libdecnumber
+all-stagefeedback-gcc: all-stagefeedback-libdecnumber
 all-gcc: maybe-all-libiberty
 
 all-stage1-gcc: maybe-all-stage1-libiberty
@@ -36923,6 +37471,7 @@ all-prebootstrap: maybe-all-gas
 all-prebootstrap: maybe-all-intl
 all-prebootstrap: maybe-all-ld
 all-prebootstrap: maybe-all-libcpp
+all-prebootstrap: maybe-all-libdecnumber
 all-prebootstrap: maybe-all-libiberty
 all-prebootstrap: maybe-all-zlib
 @endif gcc-no-bootstrap
index c99ba5b5494dd0bc8df44e97f93776c6076ef060..b85f919872eec52a12afef35636c17622ab7f3d2 100644 (file)
@@ -136,7 +136,8 @@ HOST_CONFIGARGS = @host_configargs@
 # with srcdir=..
 HOST_SUBDIR = @host_subdir@
 # This is the list of variables to export in the environment when
-# configuring subdirectories for the host system.
+# configuring subdirectories for the host system.  We need to pass
+# some to the GCC configure because of its hybrid host/target nature.
 HOST_EXPORTS = \
        $(BASE_EXPORTS) \
        CC="$(CC)"; export CC; \
@@ -155,6 +156,13 @@ HOST_EXPORTS = \
        WINDRES="$(WINDRES)"; export WINDRES; \
        OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
        OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
+       AR_FOR_TARGET="$(AR_FOR_TARGET)"; export AR_FOR_TARGET; \
+       AS_FOR_TARGET="$(AS_FOR_TARGET)"; export AS_FOR_TARGET; \
+       GCC_FOR_TARGET="$(GCC_FOR_TARGET)"; export GCC_FOR_TARGET; \
+       LD_FOR_TARGET="$(LD_FOR_TARGET)"; export LD_FOR_TARGET; \
+       NM_FOR_TARGET="$(NM_FOR_TARGET)"; export NM_FOR_TARGET; \
+       OBJDUMP_FOR_TARGET="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP_FOR_TARGET; \
+       RANLIB_FOR_TARGET="$(RANLIB_FOR_TARGET)"; export RANLIB_FOR_TARGET; \
        TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
        GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
        GMPINC="$(HOST_GMPINC)"; export GMPINC; \
@@ -186,7 +194,7 @@ TARGET_CONFIGARGS = @target_configargs@ --with-target-subdir="$(TARGET_SUBDIR)"
 BASE_TARGET_EXPORTS = \
        $(BASE_EXPORTS) \
        AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
+       AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
        CC="$(CC_FOR_TARGET)"; export CC; \
        CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
        CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
@@ -195,10 +203,10 @@ BASE_TARGET_EXPORTS = \
        GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
        GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \
        DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
+       LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
        LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
        LIPO="$(LIPO_FOR_TARGET)"; export LIPO; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
+       NM="$(COMPILER_NM_FOR_TARGET)"; export NM; \
        OBJDUMP="$(OBJDUMP_FOR_TARGET)"; export OBJDUMP; \
        RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
        STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
@@ -248,47 +256,14 @@ BUILD_PREFIX_1 = @BUILD_PREFIX_1@
 # here so that they can be overridden by Makefile fragments.
 BOOT_CFLAGS= -g -O2
 
-CONFIGURED_BISON = @CONFIGURED_BISON@
-BISON = `if [ -f $$r/$(BUILD_SUBDIR)/bison/tests/bison ] ; then \
-           echo $$r/$(BUILD_SUBDIR)/bison/tests/bison ; \
-        else \
-           echo ${CONFIGURED_BISON} ; \
-        fi`
-
-CONFIGURED_YACC = @CONFIGURED_YACC@
-YACC = `if [ -f $$r/$(BUILD_SUBDIR)/bison/tests/bison ] ; then \
-           echo $$r/$(BUILD_SUBDIR)/bison/tests/bison -y ; \
-       elif [ -f $$r/$(BUILD_SUBDIR)/byacc/byacc ] ; then \
-           echo $$r/$(BUILD_SUBDIR)/byacc/byacc ; \
-       else \
-           echo ${CONFIGURED_YACC} ; \
-       fi`
-
-CONFIGURED_FLEX = @CONFIGURED_FLEX@
-FLEX = `if [ -f $$r/$(BUILD_SUBDIR)/flex/flex ] ; \
-       then echo $$r/$(BUILD_SUBDIR)/flex/flex ; \
-       else echo ${CONFIGURED_FLEX} ; fi`
-
-CONFIGURED_LEX = @CONFIGURED_LEX@
-LEX = `if [ -f $$r/$(BUILD_SUBDIR)/flex/flex ] ; \
-       then echo $$r/$(BUILD_SUBDIR)/flex/flex ; \
-       else echo ${CONFIGURED_LEX} ; fi`
-
-CONFIGURED_M4 = @CONFIGURED_M4@
-M4 = `if [ -f $$r/$(BUILD_SUBDIR)/m4/m4 ] ; \
-       then echo $$r/$(BUILD_SUBDIR)/m4/m4 ; \
-       else echo ${CONFIGURED_M4} ; fi`
-
-# For an installed makeinfo, we require it to be from texinfo 4.2 or
-# higher, else we use the "missing" dummy.  We also pass the subdirectory
-# makeinfo even if only the Makefile is there, because Texinfo builds its
-# manual when made, and it requires its own version.
-CONFIGURED_MAKEINFO = @CONFIGURED_MAKEINFO@
-MAKEINFO = `if [ -f $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/Makefile ] ; \
-       then echo $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/makeinfo ; \
-       else if (${CONFIGURED_MAKEINFO} --version \
-         | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])') >/dev/null 2>&1; \
-        then echo ${CONFIGURED_MAKEINFO}; else echo $$s/missing makeinfo; fi; fi`
+BISON = @BISON@
+YACC = @YACC@
+FLEX = @FLEX@
+LEX = @LEX@
+M4 = @M4@
+MAKEINFO = @MAKEINFO@
+EXPECT = @EXPECT@
+RUNTEST = @RUNTEST@
 
 # This just becomes part of the MAKEINFO definition passed down to
 # sub-makes.  It lets flags be given on the command line while still
@@ -296,43 +271,28 @@ MAKEINFO = `if [ -f $$r/$(BUILD_SUBDIR)/texinfo/makeinfo/Makefile ] ; \
 # (Default to avoid splitting info files by setting the threshold high.)
 MAKEINFOFLAGS = --split-size=5000000
 
-# FIXME: expect may become a build tool?
-EXPECT = `if [ -f $$r/$(HOST_SUBDIR)/expect/expect ] ; \
-       then echo $$r/$(HOST_SUBDIR)/expect/expect ; \
-       else echo expect ; fi`
-
-RUNTEST = `if [ -f $$s/dejagnu/runtest ] ; \
-       then echo $$s/dejagnu/runtest ; \
-       else echo runtest ; fi`
-
 # ---------------------------------------------
 # Programs producing files for the HOST machine
 # ---------------------------------------------
 
 AS = @AS@
-
 AR = @AR@
 AR_FLAGS = rc
-
 CC = @CC@
-CFLAGS = @CFLAGS@
-LIBCFLAGS = $(CFLAGS)
-
 CXX = @CXX@
-CXXFLAGS = @CXXFLAGS@
-LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
-
 DLLTOOL = @DLLTOOL@
-
-NM = @NM@
-
 LD = @LD@
-LDFLAGS = 
-
+LIPO = @LIPO@
+NM = @NM@
 RANLIB = @RANLIB@
-
+STRIP = @STRIP@
 WINDRES = @WINDRES@
 
+CFLAGS = @CFLAGS@
+LDFLAGS = 
+LIBCFLAGS = $(CFLAGS)
+CXXFLAGS = @CXXFLAGS@
+LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
 PICFLAG = 
 
 # -----------------------------------------------
@@ -342,242 +302,42 @@ PICFLAG =
 FLAGS_FOR_TARGET = @FLAGS_FOR_TARGET@
 
 AR_FOR_TARGET=@AR_FOR_TARGET@
-CONFIGURED_AR_FOR_TARGET=@CONFIGURED_AR_FOR_TARGET@
-USUAL_AR_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/ar ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/ar ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(AR); \
-    else \
-      echo $(CONFIGURED_AR_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 AS_FOR_TARGET=@AS_FOR_TARGET@
-CONFIGURED_AS_FOR_TARGET=@CONFIGURED_AS_FOR_TARGET@
-USUAL_AS_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gas/as-new ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gas/as-new ; \
-  elif [ -f $$r/$(HOST_SUBDIR)/gcc/as ]; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/as ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(AS); \
-    else \
-      echo $(CONFIGURED_AS_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 CC_FOR_TARGET=$(STAGE_CC_WRAPPER) @CC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CONFIGURED_CC_FOR_TARGET=@CONFIGURED_CC_FOR_TARGET@
-USUAL_CC_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/ ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(CC); \
-    else \
-      echo $(CONFIGURED_CC_FOR_TARGET) ; \
-    fi; \
-  fi`
-
-# During gcc bootstrap, if we use some random cc for stage1 then
-# CFLAGS will be just -g.  We want to ensure that TARGET libraries
-# (which we know are built with gcc) are built with optimizations so
-# prepend -O2 when setting CFLAGS_FOR_TARGET.
-CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
 
 # If GCC_FOR_TARGET is not overriden on the command line, then this
 # variable is passed down to the gcc Makefile, where it is used to
 # build libgcc2.a.  We define it here so that it can itself be
 # overridden on the command line.
-GCC_FOR_TARGET=@GCC_FOR_TARGET@
-CONFIGURED_GCC_FOR_TARGET=@CONFIGURED_GCC_FOR_TARGET@
-USUAL_GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) \
-  $$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/ $(FLAGS_FOR_TARGET)
-LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
-
+GCC_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCC_FOR_TARGET@ $(FLAGS_FOR_TARGET)
 CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CONFIGURED_CXX_FOR_TARGET=@CONFIGURED_CXX_FOR_TARGET@
-USUAL_CXX_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/g++ ] ; then \
-    (echo $$r/$(HOST_SUBDIR)/gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++; \
-    test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes; \
-    echo -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs) | tr '\015\012' '  '; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(CXX); \
-    else \
-      echo $(CONFIGURED_CXX_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @RAW_CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-USUAL_RAW_CXX_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(CXX); \
-    else \
-      echo $(CONFIGURED_CXX_FOR_TARGET) ; \
-    fi; \
-  fi`
-
-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
-LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
-
 GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CONFIGURED_GCJ_FOR_TARGET=@CONFIGURED_GCJ_FOR_TARGET@
-USUAL_GCJ_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/gcj ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(GCJ); \
-    else \
-      echo $(CONFIGURED_GCJ_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@ $(FLAGS_FOR_TARGET)
-CONFIGURED_GFORTRAN_FOR_TARGET=@CONFIGURED_GFORTRAN_FOR_TARGET@
-USUAL_GFORTRAN_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/gcc/gfortran ] ; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(GFORTRAN); \
-    else \
-      echo $(CONFIGURED_GFORTRAN_FOR_TARGET) ; \
-    fi; \
-  fi`
-
-
 DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
-CONFIGURED_DLLTOOL_FOR_TARGET=@CONFIGURED_DLLTOOL_FOR_TARGET@
-USUAL_DLLTOOL_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/dlltool ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/dlltool ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(DLLTOOL); \
-    else \
-      echo $(CONFIGURED_DLLTOOL_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 LD_FOR_TARGET=@LD_FOR_TARGET@
-CONFIGURED_LD_FOR_TARGET=@CONFIGURED_LD_FOR_TARGET@
-USUAL_LD_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/ld/ld-new ] ; then \
-    echo $$r/$(HOST_SUBDIR)/ld/ld-new ; \
-  elif [ -f $$r/$(HOST_SUBDIR)/gcc/collect-ld ]; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/collect-ld ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(LD); \
-    else \
-      echo $(CONFIGURED_LD_FOR_TARGET) ; \
-    fi; \
-  fi`
-
-LDFLAGS_FOR_TARGET = 
 
 LIPO_FOR_TARGET=@LIPO_FOR_TARGET@
-CONFIGURED_LIPO_FOR_TARGET=@CONFIGURED_LIPO_FOR_TARGET@
-USUAL_LIPO_FOR_TARGET = ` \
-  if [ '$(host)' = '$(target)' ] ; then \
-    if [ x'$(LIPO)' != x ]; then \
-       echo $(LIPO); \
-    else \
-       echo lipo; \
-    fi; \
-  else \
-    echo $(CONFIGURED_LIPO_FOR_TARGET) ; \
-  fi`
-
 NM_FOR_TARGET=@NM_FOR_TARGET@
-CONFIGURED_NM_FOR_TARGET=@CONFIGURED_NM_FOR_TARGET@
-USUAL_NM_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/nm-new ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/nm-new ; \
-  elif [ -f $$r/$(HOST_SUBDIR)/gcc/nm ]; then \
-    echo $$r/$(HOST_SUBDIR)/gcc/nm ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(NM); \
-    else \
-      echo $(CONFIGURED_NM_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 OBJDUMP_FOR_TARGET=@OBJDUMP_FOR_TARGET@
-CONFIGURED_OBJDUMP_FOR_TARGET=@CONFIGURED_OBJDUMP_FOR_TARGET@
-USUAL_OBJDUMP_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/objdump ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/objdump ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      if [ x'$(OBJDUMP)' != x ]; then \
-         echo $(OBJDUMP); \
-      else \
-         echo objdump; \
-      fi; \
-    else \
-      echo $(CONFIGURED_OBJDUMP_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 RANLIB_FOR_TARGET=@RANLIB_FOR_TARGET@
-CONFIGURED_RANLIB_FOR_TARGET=@CONFIGURED_RANLIB_FOR_TARGET@
-USUAL_RANLIB_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/ranlib ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/ranlib ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      if [ x'$(RANLIB)' != x ]; then \
-         echo $(RANLIB); \
-      else \
-         echo ranlib; \
-      fi; \
-    else \
-      echo $(CONFIGURED_RANLIB_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 STRIP_FOR_TARGET=@STRIP_FOR_TARGET@
-CONFIGURED_STRIP_FOR_TARGET=@CONFIGURED_STRIP_FOR_TARGET@
-USUAL_STRIP_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/strip ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/strip ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      if [ x'$(STRIP)' != x ]; then \
-         echo $(STRIP); \
-      else \
-         echo strip; \
-      fi; \
-    else \
-      echo $(CONFIGURED_STRIP_FOR_TARGET) ; \
-    fi; \
-  fi`
-
 WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
-CONFIGURED_WINDRES_FOR_TARGET=@CONFIGURED_WINDRES_FOR_TARGET@
-USUAL_WINDRES_FOR_TARGET = ` \
-  if [ -f $$r/$(HOST_SUBDIR)/binutils/windres ] ; then \
-    echo $$r/$(HOST_SUBDIR)/binutils/windres ; \
-  else \
-    if [ '$(host)' = '$(target)' ] ; then \
-      echo $(WINDRES); \
-    else \
-      echo $(CONFIGURED_WINDRES_FOR_TARGET) ; \
-    fi; \
-  fi`
 
+COMPILER_AS_FOR_TARGET=@COMPILER_AS_FOR_TARGET@
+COMPILER_LD_FOR_TARGET=@COMPILER_LD_FOR_TARGET@
+COMPILER_NM_FOR_TARGET=@COMPILER_NM_FOR_TARGET@
+
+# During gcc bootstrap, if we use some random cc for stage1 then
+# CFLAGS will be just -g.  We want to ensure that TARGET libraries
+# (which we know are built with gcc) are built with optimizations so
+# prepend -O2 when setting CFLAGS_FOR_TARGET.
+CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
+SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
+CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
+LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
+LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
+LDFLAGS_FOR_TARGET = 
 PICFLAG_FOR_TARGET = 
 
 # ------------------------------------
@@ -644,8 +404,10 @@ EXTRA_HOST_FLAGS = \
        'CXX=$(CXX)' \
        'DLLTOOL=$(DLLTOOL)' \
        'LD=$(LD)' \
+       'LIPO=$(LIPO)' \
        'NM=$(NM)' \
        'RANLIB=$(RANLIB)' \
+       'STRIP=$(STRIP)' \
        'WINDRES=$(WINDRES)'
 
 FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
@@ -667,17 +429,17 @@ X11_FLAGS_TO_PASS = \
 # are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them.
 EXTRA_TARGET_FLAGS = \
        'AR=$$(AR_FOR_TARGET)' \
-       'AS=$$(AS_FOR_TARGET)' \
+       'AS=$$(COMPILER_AS_FOR_TARGET)' \
        'CC=$$(CC_FOR_TARGET)' \
        'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
        'CXX=$$(CXX_FOR_TARGET)' \
        'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
        'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
-       'LD=$$(LD_FOR_TARGET)' \
+       'LD=$$(COMPILER_LD_FOR_TARGET)' \
        'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
        'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
        'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET)' \
-       'NM=$$(NM_FOR_TARGET)' \
+       'NM=$$(COMPILER_NM_FOR_TARGET)' \
        'OBJDUMP=$$(OBJDUMP_FOR_TARGET)' \
        'RANLIB=$$(RANLIB_FOR_TARGET)' \
        'WINDRES=$$(WINDRES_FOR_TARGET)'
@@ -721,28 +483,19 @@ configure-target: [+
 .PHONY: all
 all:
 @if gcc-bootstrap
+       [ -f stage_final ] || echo stage3 > stage_final
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       if [ ! -f stage_last ]; then \
-         $(MAKE) $(RECURSE_FLAGS_TO_PASS) bootstrap; \
-       fi
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) `cat stage_final`-bubble; \
 @endif gcc-bootstrap
        @$(unstage)
-@if gcc-no-bootstrap
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-prebootstrap
-@endif gcc-no-bootstrap
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        if [ -f stage_last ]; then \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host; \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target; \
        else \
-         $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-host; \
+         $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-host all-target; \
        fi
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-target
        @$(stage)
 
 .PHONY: all-build
@@ -839,14 +592,10 @@ maintainer-clean: local-maintainer-clean do-maintainer-clean local-clean
 maintainer-clean: local-distclean
 realclean: maintainer-clean
 
-# Extra dependency for clean-target, owing to the mixed nature of gcc
+# Extra dependency for clean-target, owing to the mixed nature of gcc.
 clean-target: clean-target-libgcc
 clean-target-libgcc:
-       test ! -d gcc/libgcc || \
-       (cd gcc/libgcc && find . -type d -print) | \
-       while read d; do rm -f gcc/$$d/libgcc.a || : ; done
-       -rm -rf gcc/libgcc
-       -rm -f gcc/stmp-dirs
+       test ! -d gcc || (cd gcc && $(MAKE) $@)
 
 # Check target.
 
@@ -1440,7 +1189,7 @@ stage = :
 
 @if gcc-bootstrap
 unstage = [ -f stage_current ] || $(MAKE) `cat stage_last`-start
-stage = $(MAKE) `cat stage_current`-end
+stage = [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
 @endif gcc-bootstrap
 
 .PHONY: unstage stage
@@ -1495,7 +1244,7 @@ POSTSTAGE1_FLAGS_TO_PASS = \
 .PHONY: stage[+id+]-start stage[+id+]-end
 
 stage[+id+]-start::
-       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @$(stage); \
        echo stage[+id+] > stage_current ; \
        echo stage[+id+] > stage_last; \
        $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR) $(TARGET_SUBDIR)[+
@@ -1548,7 +1297,8 @@ stage[+id+]-bubble:: [+ IF prev +]stage[+prev+]-bubble[+ ENDIF +][+IF lean +]
        else \
          $(MAKE) stage[+id+]-start; \
          $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage[+id+]; \
-       fi
+       fi[+ IF compare-target +]
+       $(MAKE) [+compare-target+][+ ENDIF compare-target +]
 
 .PHONY: all-stage[+id+] clean-stage[+id+]
 do-clean: clean-stage[+id+]
@@ -1564,7 +1314,7 @@ do-clean: clean-stage[+id+]
          echo Cannot compare object files as stage [+prev+] was deleted. ; \
          exit 0 ; \
        fi; \
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       $(stage); \
        rm -f .bad_compare ; \
        cd stage[+id+]-gcc; \
        files=`find . -name "*$(objext)" -print` ; \
@@ -1594,16 +1344,23 @@ do-clean: clean-stage[+id+]
 
 [+ IF bootstrap-target +]
 .PHONY: [+bootstrap-target+]
-[+bootstrap-target+]: stage[+id+]-bubble
-       [+ IF compare-target +]$(MAKE) [+compare-target+]
-       [+ ENDIF compare-target +]$(MAKE) $(RECURSE_FLAGS_TO_PASS) all
+[+bootstrap-target+]:
+       echo stage[+id+] > stage_final
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage[+id+]-bubble
+       @$(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
+       @$(stage)
 [+ ENDIF bootstrap-target +]
 
 # Rules to wipe a stage and all the following ones, also used for cleanstrap
 [+ IF prev +]distclean-stage[+prev+]:: distclean-stage[+id+] [+ ENDIF prev +]
 .PHONY: distclean-stage[+id+]
 distclean-stage[+id+]::
-       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       @$(stage)
        rm -rf stage[+id+]-* [+
          IF compare-target +][+compare-target+] [+ ENDIF compare-target +]
 
index 917bbc50f36af7527bb91465a90821815ecefcc4..52c01be4c86d5bd9ac02d0c2506a2cbe7a742bd6 100755 (executable)
@@ -3,7 +3,7 @@
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
 #   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 
-timestamp='2005-07-08'
+timestamp='2005-11-11'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -779,7 +779,7 @@ EOF
     i*:PW*:*)
        echo ${UNAME_MACHINE}-pc-pw32
        exit ;;
-    x86:Interix*:[34]*)
+    x86:Interix*:[345]*)
        echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
        exit ;;
     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
@@ -794,7 +794,7 @@ EOF
     i*:UWIN*:*)
        echo ${UNAME_MACHINE}-pc-uwin
        exit ;;
-    amd64:CYGWIN*:*:*)
+    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
        echo x86_64-unknown-cygwin
        exit ;;
     p*:CYGWIN*:*)
@@ -873,6 +873,9 @@ EOF
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
        test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
        ;;
+    or32:Linux:*:*)
+       echo or32-unknown-linux-gnu
+       exit ;;
     ppc:Linux:*:*)
        echo powerpc-unknown-linux-gnu
        exit ;;
@@ -1182,7 +1185,6 @@ EOF
     *:Darwin:*:*)
        UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
        case $UNAME_PROCESSOR in
-           *86) UNAME_PROCESSOR=i686 ;;
            unknown) UNAME_PROCESSOR=powerpc ;;
        esac
        echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
index 1c366dfde9ab35fe6474af49933455433951457f..a4aba165da3db1e763d873e5f0bf6f4189f7aa2d 100755 (executable)
@@ -3,7 +3,7 @@
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
 #   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 
-timestamp='2005-07-08'
+timestamp='2005-11-13'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -171,6 +171,10 @@ case $os in
        -hiux*)
                os=-hiuxwe2
                ;;
+       -sco6)
+               os=-sco5v6
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
        -sco5)
                os=-sco3.2v5
                basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -187,6 +191,10 @@ case $os in
                # Don't forget version if it is 3.2v4 or newer.
                basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
                ;;
+       -sco5v6*)
+               # Don't forget version if it is 3.2v4 or newer.
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
        -sco*)
                os=-sco3.2v2
                basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
index 800698cf2b8e6628281e7d0d4874d0d6f5529ddf..e98b57dcc026ebbd9c97cb462d67025d7c53048c 100644 (file)
@@ -1,3 +1,7 @@
+2005-12-05  Paolo Bonzini  <bonzini@gnu.org>
+
+       * acx.m4 (GCC_TARGET_TOOL): New.
+
 2005-09-23  Tom Tromey  <tromey@redhat.com>
 
        * enable.m4: New file.
index 94e3216367bafd5abb8d900aa4a3e68de0931d89..c71f39b44b84a25499e4fc72a6d3a9e6d0b7d4cf 100644 (file)
@@ -296,3 +296,34 @@ fi
 AC_SUBST(LN)dnl
 ])
 
+dnl GCC_TARGET_TOOL(PROGRAM, TARGET-VAR, HOST-VAR, IN-TREE-TOOL, LANGUAGE)
+AC_DEFUN([GCC_TARGET_TOOL],
+[AC_MSG_CHECKING(where to find the target $1)
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  AC_MSG_RESULT(pre-installed)
+else
+  ifelse([$4],,,
+  [ok=yes
+  case " ${configdirs} " in
+    *" patsubst([$4], [/.*], []) "*) ;;
+    *) ok=no ;;
+  esac
+  ifelse([$5],,, 
+  [case ,${enable_languages}, in
+    *,$5,*) ;;
+    *) ok=no ;;
+  esac])
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    $2='$$r/$(HOST_SUBDIR)/$4'
+    AC_MSG_RESULT(just compiled)
+  el])if test "x$target" = "x$host"; then
+    # We can use an host tool
+    $2='$($3)'
+    AC_MSG_RESULT(host tool)
+  else
+    # We need a cross tool
+    AC_MSG_RESULT(pre-installed)
+  fi
+fi])
index 42b7e28ce2b344f45fe2ccb86c871cf83a551771..fea7e98e00bd01989014874fd0afb0a308f05688 100755 (executable)
--- a/configure
+++ b/configure
@@ -881,7 +881,7 @@ build_tools="build-texinfo build-byacc build-flex build-bison build-m4 build-fix
 
 # these libraries are used by various programs built for the host environment
 #
-host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp"
+host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber"
 
 # these tools are built for the host environment
 # Note, the powerpc-eabi build depends on sim occurring before gdb in order to
@@ -2816,221 +2816,6 @@ esac
 tooldir='${exec_prefix}'/${target_alias}
 build_tooldir=${tooldir}
 
-# Generate default definitions for YACC, M4, LEX and other programs that run
-# on the build machine.  These are used if the Makefile can't locate these
-# programs in objdir.
-MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
-for ac_prog in bison
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2829: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_BISON'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$CONFIGURED_BISON"; then
-  ac_cv_prog_CONFIGURED_BISON="$CONFIGURED_BISON" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CONFIGURED_BISON="$ac_prog"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-fi
-fi
-CONFIGURED_BISON="$ac_cv_prog_CONFIGURED_BISON"
-if test -n "$CONFIGURED_BISON"; then
-  echo "$ac_t""$CONFIGURED_BISON" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-test -n "$CONFIGURED_BISON" && break
-done
-test -n "$CONFIGURED_BISON" || CONFIGURED_BISON="$MISSING bison"
-
-for ac_prog in 'bison -y' byacc yacc
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2864: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_YACC'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$CONFIGURED_YACC"; then
-  ac_cv_prog_CONFIGURED_YACC="$CONFIGURED_YACC" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CONFIGURED_YACC="$ac_prog"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-fi
-fi
-CONFIGURED_YACC="$ac_cv_prog_CONFIGURED_YACC"
-if test -n "$CONFIGURED_YACC"; then
-  echo "$ac_t""$CONFIGURED_YACC" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-test -n "$CONFIGURED_YACC" && break
-done
-test -n "$CONFIGURED_YACC" || CONFIGURED_YACC="$MISSING bison -y"
-
-for ac_prog in gm4 gnum4 m4
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2899: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_M4'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$CONFIGURED_M4"; then
-  ac_cv_prog_CONFIGURED_M4="$CONFIGURED_M4" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CONFIGURED_M4="$ac_prog"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-fi
-fi
-CONFIGURED_M4="$ac_cv_prog_CONFIGURED_M4"
-if test -n "$CONFIGURED_M4"; then
-  echo "$ac_t""$CONFIGURED_M4" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-test -n "$CONFIGURED_M4" && break
-done
-test -n "$CONFIGURED_M4" || CONFIGURED_M4="$MISSING m4"
-
-for ac_prog in flex
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2934: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_FLEX'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$CONFIGURED_FLEX"; then
-  ac_cv_prog_CONFIGURED_FLEX="$CONFIGURED_FLEX" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CONFIGURED_FLEX="$ac_prog"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-fi
-fi
-CONFIGURED_FLEX="$ac_cv_prog_CONFIGURED_FLEX"
-if test -n "$CONFIGURED_FLEX"; then
-  echo "$ac_t""$CONFIGURED_FLEX" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-test -n "$CONFIGURED_FLEX" && break
-done
-test -n "$CONFIGURED_FLEX" || CONFIGURED_FLEX="$MISSING flex"
-
-for ac_prog in flex lex
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2969: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_LEX'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$CONFIGURED_LEX"; then
-  ac_cv_prog_CONFIGURED_LEX="$CONFIGURED_LEX" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CONFIGURED_LEX="$ac_prog"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-fi
-fi
-CONFIGURED_LEX="$ac_cv_prog_CONFIGURED_LEX"
-if test -n "$CONFIGURED_LEX"; then
-  echo "$ac_t""$CONFIGURED_LEX" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-test -n "$CONFIGURED_LEX" && break
-done
-test -n "$CONFIGURED_LEX" || CONFIGURED_LEX="$MISSING flex"
-
-for ac_prog in makeinfo
-do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3004: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_MAKEINFO'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$CONFIGURED_MAKEINFO"; then
-  ac_cv_prog_CONFIGURED_MAKEINFO="$CONFIGURED_MAKEINFO" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CONFIGURED_MAKEINFO="$ac_prog"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-fi
-fi
-CONFIGURED_MAKEINFO="$ac_cv_prog_CONFIGURED_MAKEINFO"
-if test -n "$CONFIGURED_MAKEINFO"; then
-  echo "$ac_t""$CONFIGURED_MAKEINFO" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-test -n "$CONFIGURED_MAKEINFO" && break
-done
-test -n "$CONFIGURED_MAKEINFO" || CONFIGURED_MAKEINFO="$MISSING makeinfo"
-
-
 # Create a .gdbinit file which runs the one in srcdir
 # and tells GDB to look there for source files.
 
@@ -3502,16 +3287,354 @@ done
 
 
 
-# Host module lists & subconfigure args.
+# Host module lists & subconfigure args.
+
+
+
+# Target module lists & subconfigure args.
+
+
+
+# Build tools.
+
+
+
+# Generate default definitions for YACC, M4, LEX and other programs that run
+# on the build machine.  These are used if the Makefile can't locate these
+# programs in objdir.
+MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
+
+for ac_prog in 'bison -y' byacc yacc
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3313: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$YACC"; then
+  ac_cv_prog_YACC="$YACC" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_YACC="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+YACC="$ac_cv_prog_YACC"
+if test -n "$YACC"; then
+  echo "$ac_t""$YACC" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+test -n "$YACC" && break
+done
+test -n "$YACC" || YACC="$MISSING bison -y"
+
+case " $build_configdirs " in
+  *" bison "*) YACC='$$r/$(BUILD_SUBDIR)/bison/tests/bison -y' ;;
+  *" byacc "*) YACC='$$r/$(BUILD_SUBDIR)/byacc/byacc' ;;
+esac
+
+for ac_prog in bison
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3353: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_BISON'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$BISON"; then
+  ac_cv_prog_BISON="$BISON" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_BISON="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+BISON="$ac_cv_prog_BISON"
+if test -n "$BISON"; then
+  echo "$ac_t""$BISON" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+test -n "$BISON" && break
+done
+test -n "$BISON" || BISON="$MISSING bison"
+
+case " $build_configdirs " in
+  *" bison "*) BISON='$$r/$(BUILD_SUBDIR)/bison/tests/bison' ;;
+esac
+
+for ac_prog in gm4 gnum4 m4
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3392: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_M4'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$M4"; then
+  ac_cv_prog_M4="$M4" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_M4="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+M4="$ac_cv_prog_M4"
+if test -n "$M4"; then
+  echo "$ac_t""$M4" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+test -n "$M4" && break
+done
+test -n "$M4" || M4="$MISSING m4"
+
+case " $build_configdirs " in
+  *" m4 "*) M4='$$r/$(BUILD_SUBDIR)/m4/m4' ;;
+esac
+
+for ac_prog in flex lex
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3431: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$LEX"; then
+  ac_cv_prog_LEX="$LEX" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_LEX="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+LEX="$ac_cv_prog_LEX"
+if test -n "$LEX"; then
+  echo "$ac_t""$LEX" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+test -n "$LEX" && break
+done
+test -n "$LEX" || LEX="$MISSING flex"
+
+case " $build_configdirs " in
+  *" flex "*) LEX='$$r/$(BUILD_SUBDIR)/flex/flex' ;;
+  *" lex "*) LEX='$$r/$(BUILD_SUBDIR)/lex/lex' ;;
+esac
+
+for ac_prog in flex
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3471: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_FLEX'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$FLEX"; then
+  ac_cv_prog_FLEX="$FLEX" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_FLEX="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+FLEX="$ac_cv_prog_FLEX"
+if test -n "$FLEX"; then
+  echo "$ac_t""$FLEX" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+test -n "$FLEX" && break
+done
+test -n "$FLEX" || FLEX="$MISSING flex"
+
+case " $build_configdirs " in
+  *" flex "*) FLEX='$$r/$(BUILD_SUBDIR)/flex/flex' ;;
+esac
+
+for ac_prog in makeinfo
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3510: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$MAKEINFO"; then
+  ac_cv_prog_MAKEINFO="$MAKEINFO" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_MAKEINFO="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+MAKEINFO="$ac_cv_prog_MAKEINFO"
+if test -n "$MAKEINFO"; then
+  echo "$ac_t""$MAKEINFO" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+test -n "$MAKEINFO" && break
+done
+test -n "$MAKEINFO" || MAKEINFO="$MISSING makeinfo"
+
+case " $build_configdirs " in
+  *" texinfo "*) MAKEINFO='$$r/$(BUILD_SUBDIR)/texinfo/makeinfo/makeinfo' ;;
+  *)
+
+    # For an installed makeinfo, we require it to be from texinfo 4.2 or
+    # higher, else we use the "missing" dummy.
+    if ${MAKEINFO} --version \
+       | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
+      :
+    else
+      MAKEINFO="$MISSING makeinfo"
+    fi
+    ;;
+
+esac
 
+# FIXME: expect and dejagnu may become build tools?
 
+for ac_prog in expect
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3563: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_EXPECT'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$EXPECT"; then
+  ac_cv_prog_EXPECT="$EXPECT" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_EXPECT="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+EXPECT="$ac_cv_prog_EXPECT"
+if test -n "$EXPECT"; then
+  echo "$ac_t""$EXPECT" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
 
-# Target module lists & subconfigure args.
+test -n "$EXPECT" && break
+done
+test -n "$EXPECT" || EXPECT="expect"
 
+case " $configdirs " in
+  *" expect "*)
+    test $host = $build && EXPECT='$$r/$(HOST_SUBDIR)/expect/expect'
+    ;;
+esac
 
+for ac_prog in runtest
+do
+# Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3604: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_RUNTEST'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$RUNTEST"; then
+  ac_cv_prog_RUNTEST="$RUNTEST" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_RUNTEST="$ac_prog"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+RUNTEST="$ac_cv_prog_RUNTEST"
+if test -n "$RUNTEST"; then
+  echo "$ac_t""$RUNTEST" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
 
-# Build tools.
+test -n "$RUNTEST" && break
+done
+test -n "$RUNTEST" || RUNTEST="runtest"
 
+case " $configdirs " in
+  *" dejagnu "*)
+    test $host = $build && RUNTEST='$$r/$(HOST_SUBDIR)/dejagnu/runtest'
+    ;;
+esac
 
 
 # Host tools.
@@ -3525,7 +3648,7 @@ test -n "$target_alias" && ncn_target_tool_prefix=$target_alias-
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3529: checking for $ac_word" >&5
+echo "configure:3652: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3556,7 +3679,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3560: checking for $ac_word" >&5
+echo "configure:3683: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3600,7 +3723,7 @@ fi
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3604: checking for $ac_word" >&5
+echo "configure:3727: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3631,7 +3754,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3635: checking for $ac_word" >&5
+echo "configure:3758: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3675,7 +3798,7 @@ fi
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3679: checking for $ac_word" >&5
+echo "configure:3802: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3706,7 +3829,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3710: checking for $ac_word" >&5
+echo "configure:3833: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3750,7 +3873,7 @@ fi
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3754: checking for $ac_word" >&5
+echo "configure:3877: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LD'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3781,7 +3904,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3785: checking for $ac_word" >&5
+echo "configure:3908: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LD'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3820,12 +3943,87 @@ if test -z "$ac_cv_prog_LD" ; then
   fi
 fi
 
+ for ncn_progname in lipo; do
+  if test -n "$ncn_tool_prefix"; then
+    # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3952: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_LIPO'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$LIPO"; then
+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_LIPO="${ncn_tool_prefix}${ncn_progname}"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+LIPO="$ac_cv_prog_LIPO"
+if test -n "$LIPO"; then
+  echo "$ac_t""$LIPO" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+  fi
+  if test -z "$ac_cv_prog_LIPO" && test $build = $host ; then
+    # Extract the first word of "${ncn_progname}", so it can be a program name with args.
+set dummy ${ncn_progname}; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:3983: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_LIPO'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$LIPO"; then
+  ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_LIPO="${ncn_progname}"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+LIPO="$ac_cv_prog_LIPO"
+if test -n "$LIPO"; then
+  echo "$ac_t""$LIPO" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+  fi
+  test -n "$ac_cv_prog_LIPO" && break
+done
+
+if test -z "$ac_cv_prog_LIPO" ; then
+  set dummy lipo
+  if test $build = $host ; then
+    LIPO="$2"
+  else
+    LIPO="${ncn_tool_prefix}$2"
+  fi
+fi
+
  for ncn_progname in nm; do
   if test -n "$ncn_tool_prefix"; then
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3829: checking for $ac_word" >&5
+echo "configure:4027: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_NM'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3856,7 +4054,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3860: checking for $ac_word" >&5
+echo "configure:4058: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_NM'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3900,7 +4098,7 @@ fi
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3904: checking for $ac_word" >&5
+echo "configure:4102: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3931,7 +4129,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3935: checking for $ac_word" >&5
+echo "configure:4133: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3965,12 +4163,82 @@ if test -z "$ac_cv_prog_RANLIB" ; then
   RANLIB=":"
 fi
 
+ for ncn_progname in strip; do
+  if test -n "$ncn_tool_prefix"; then
+    # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
+set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:4172: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$STRIP"; then
+  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_STRIP="${ncn_tool_prefix}${ncn_progname}"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+STRIP="$ac_cv_prog_STRIP"
+if test -n "$STRIP"; then
+  echo "$ac_t""$STRIP" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+  fi
+  if test -z "$ac_cv_prog_STRIP" && test $build = $host ; then
+    # Extract the first word of "${ncn_progname}", so it can be a program name with args.
+set dummy ${ncn_progname}; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:4203: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$STRIP"; then
+  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      ac_cv_prog_STRIP="${ncn_progname}"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+STRIP="$ac_cv_prog_STRIP"
+if test -n "$STRIP"; then
+  echo "$ac_t""$STRIP" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+  fi
+  test -n "$ac_cv_prog_STRIP" && break
+done
+
+if test -z "$ac_cv_prog_STRIP" ; then
+  STRIP=":"
+fi
+
  for ncn_progname in windres; do
   if test -n "$ncn_tool_prefix"; then
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3974: checking for $ac_word" >&5
+echo "configure:4242: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_WINDRES'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4001,7 +4269,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4005: checking for $ac_word" >&5
+echo "configure:4273: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_WINDRES'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4045,7 +4313,7 @@ fi
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4049: checking for $ac_word" >&5
+echo "configure:4317: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_OBJCOPY'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4076,7 +4344,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4080: checking for $ac_word" >&5
+echo "configure:4348: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_OBJCOPY'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4120,7 +4388,7 @@ fi
     # Extract the first word of "${ncn_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4124: checking for $ac_word" >&5
+echo "configure:4392: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4151,7 +4419,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4155: checking for $ac_word" >&5
+echo "configure:4423: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4196,14 +4464,13 @@ fi
 
 
 
-# Target tools.  Do the tests using the names they may have passed in
-# the environment, then move it to CONFIGURED_*_FOR_TARGET.
+# Target tools.
  for ncn_progname in ar; do
   if test -n "$ncn_target_tool_prefix"; then
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4207: checking for $ac_word" >&5
+echo "configure:4474: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AR_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4234,7 +4501,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4238: checking for $ac_word" >&5
+echo "configure:4505: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AR_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4278,7 +4545,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4282: checking for $ac_word" >&5
+echo "configure:4549: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AS_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4309,7 +4576,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4313: checking for $ac_word" >&5
+echo "configure:4580: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AS_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4353,7 +4620,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4357: checking for $ac_word" >&5
+echo "configure:4624: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4384,7 +4651,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4388: checking for $ac_word" >&5
+echo "configure:4655: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4428,7 +4695,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4432: checking for $ac_word" >&5
+echo "configure:4699: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CXX_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4459,7 +4726,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4463: checking for $ac_word" >&5
+echo "configure:4730: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CXX_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4503,7 +4770,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4507: checking for $ac_word" >&5
+echo "configure:4774: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4534,7 +4801,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4538: checking for $ac_word" >&5
+echo "configure:4805: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4578,7 +4845,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4582: checking for $ac_word" >&5
+echo "configure:4849: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_GCC_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4609,7 +4876,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4613: checking for $ac_word" >&5
+echo "configure:4880: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_GCC_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4648,7 +4915,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4652: checking for $ac_word" >&5
+echo "configure:4919: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_GCJ_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4679,7 +4946,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4683: checking for $ac_word" >&5
+echo "configure:4950: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_GCJ_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4723,7 +4990,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4727: checking for $ac_word" >&5
+echo "configure:4994: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_GFORTRAN_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4754,7 +5021,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4758: checking for $ac_word" >&5
+echo "configure:5025: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_GFORTRAN_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4798,7 +5065,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4802: checking for $ac_word" >&5
+echo "configure:5069: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LD_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4829,7 +5096,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4833: checking for $ac_word" >&5
+echo "configure:5100: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LD_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4873,7 +5140,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4877: checking for $ac_word" >&5
+echo "configure:5144: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LIPO_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4904,7 +5171,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4908: checking for $ac_word" >&5
+echo "configure:5175: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LIPO_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4948,7 +5215,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4952: checking for $ac_word" >&5
+echo "configure:5219: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_NM_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4979,7 +5246,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4983: checking for $ac_word" >&5
+echo "configure:5250: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_NM_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5023,7 +5290,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5027: checking for $ac_word" >&5
+echo "configure:5294: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5054,7 +5321,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5058: checking for $ac_word" >&5
+echo "configure:5325: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5098,7 +5365,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5102: checking for $ac_word" >&5
+echo "configure:5369: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5129,7 +5396,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5133: checking for $ac_word" >&5
+echo "configure:5400: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5168,7 +5435,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5172: checking for $ac_word" >&5
+echo "configure:5439: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_STRIP_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5199,7 +5466,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5203: checking for $ac_word" >&5
+echo "configure:5470: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_STRIP_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5243,7 +5510,7 @@ fi
     # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5247: checking for $ac_word" >&5
+echo "configure:5514: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_WINDRES_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5274,7 +5541,7 @@ fi
     # Extract the first word of "${ncn_progname}", so it can be a program name with args.
 set dummy ${ncn_progname}; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5278: checking for $ac_word" >&5
+echo "configure:5545: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_WINDRES_FOR_TARGET'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5314,77 +5581,440 @@ if test -z "$ac_cv_prog_WINDRES_FOR_TARGET" ; then
 fi
 
 
-CONFIGURED_AR_FOR_TARGET="$AR_FOR_TARGET"
-CONFIGURED_AS_FOR_TARGET="$AS_FOR_TARGET"
-CONFIGURED_CC_FOR_TARGET="$CC_FOR_TARGET"
-CONFIGURED_CXX_FOR_TARGET="$CXX_FOR_TARGET"
-CONFIGURED_DLLTOOL_FOR_TARGET="$DLLTOOL_FOR_TARGET"
-CONFIGURED_GCC_FOR_TARGET="$GCC_FOR_TARGET"
-CONFIGURED_GCJ_FOR_TARGET="$GCJ_FOR_TARGET"
-CONFIGURED_GFORTRAN_FOR_TARGET="$GFORTRAN_FOR_TARGET"
-CONFIGURED_LD_FOR_TARGET="$LD_FOR_TARGET"
-CONFIGURED_LIPO_FOR_TARGET="$LIPO_FOR_TARGET"
-CONFIGURED_NM_FOR_TARGET="$NM_FOR_TARGET"
-CONFIGURED_OBJDUMP_FOR_TARGET="$OBJDUMP_FOR_TARGET"
-CONFIGURED_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET"
-CONFIGURED_STRIP_FOR_TARGET="$STRIP_FOR_TARGET"
-CONFIGURED_WINDRES_FOR_TARGET="$WINDRES_FOR_TARGET"
-
-
-
-# Fix up target tools.
-if test "x${build}" = "x${host}" ; then
-  # In this case, the newly built tools can and should be used,
-  # so we override the results of the autoconf tests.
-  # This should really only happen when the tools are actually being built,
-  # but that's a further refinement.  The new build scheme, where
-  # tools are built into a structure paralleling where they're installed,
-  # should also eliminate all of this cleanly.
-  AR_FOR_TARGET="\$(USUAL_AR_FOR_TARGET)"
-  AS_FOR_TARGET="\$(USUAL_AS_FOR_TARGET)"
-  CC_FOR_TARGET="\$(USUAL_CC_FOR_TARGET)"
-  CXX_FOR_TARGET="\$(USUAL_CXX_FOR_TARGET)"
-  RAW_CXX_FOR_TARGET="\$(USUAL_RAW_CXX_FOR_TARGET)"
-  DLLTOOL_FOR_TARGET="\$(USUAL_DLLTOOL_FOR_TARGET)"
-  GCC_FOR_TARGET="\$(USUAL_GCC_FOR_TARGET)"
-  GCJ_FOR_TARGET="\$(USUAL_GCJ_FOR_TARGET)"
-  GFORTRAN_FOR_TARGET="\$(USUAL_GFORTRAN_FOR_TARGET)"
-  LD_FOR_TARGET="\$(USUAL_LD_FOR_TARGET)"
-  LIPO_FOR_TARGET="\$(USUAL_LIPO_FOR_TARGET)"
-  NM_FOR_TARGET="\$(USUAL_NM_FOR_TARGET)"
-  OBJDUMP_FOR_TARGET="\$(USUAL_OBJDUMP_FOR_TARGET)"
-  RANLIB_FOR_TARGET="\$(USUAL_RANLIB_FOR_TARGET)"
-  STRIP_FOR_TARGET="\$(USUAL_STRIP_FOR_TARGET)"
-  WINDRES_FOR_TARGET="\$(USUAL_WINDRES_FOR_TARGET)"
-else
-  # Just use the ones we found.
-  AR_FOR_TARGET="\$(CONFIGURED_AR_FOR_TARGET)"
-  AS_FOR_TARGET="\$(CONFIGURED_AS_FOR_TARGET)"
-  CC_FOR_TARGET="\$(CONFIGURED_CC_FOR_TARGET)"
-  CXX_FOR_TARGET="\$(CONFIGURED_CXX_FOR_TARGET)"
-  RAW_CXX_FOR_TARGET="\$(CONFIGURED_CXX_FOR_TARGET)"
-  DLLTOOL_FOR_TARGET="\$(CONFIGURED_DLLTOOL_FOR_TARGET)"
-  GCC_FOR_TARGET="\$(CONFIGURED_GCC_FOR_TARGET)"
-  GCJ_FOR_TARGET="\$(CONFIGURED_GCJ_FOR_TARGET)"
-  GFORTRAN_FOR_TARGET="\$(CONFIGURED_GFORTRAN_FOR_TARGET)"
-  LD_FOR_TARGET="\$(CONFIGURED_LD_FOR_TARGET)"
-  LIPO_FOR_TARGET="\$(CONFIGURED_LIPO_FOR_TARGET)"
-  NM_FOR_TARGET="\$(CONFIGURED_NM_FOR_TARGET)"
-  OBJDUMP_FOR_TARGET="\$(CONFIGURED_OBJDUMP_FOR_TARGET)"
-  RANLIB_FOR_TARGET="\$(CONFIGURED_RANLIB_FOR_TARGET)"
-  STRIP_FOR_TARGET="\$(CONFIGURED_STRIP_FOR_TARGET)"
-  WINDRES_FOR_TARGET="\$(CONFIGURED_WINDRES_FOR_TARGET)"  
+RAW_CXX_FOR_TARGET="$CXX_FOR_TARGET"
+
+echo $ac_n "checking where to find the target ar""... $ac_c" 1>&6
+echo "configure:5588: checking where to find the target ar" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" binutils "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    AR_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/ar'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    AR_FOR_TARGET='$(AR)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target as""... $ac_c" 1>&6
+echo "configure:5613: checking where to find the target as" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gas "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    AS_FOR_TARGET='$$r/$(HOST_SUBDIR)/gas/as-new'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    AS_FOR_TARGET='$(AS)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target cc""... $ac_c" 1>&6
+echo "configure:5638: checking where to find the target cc" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gcc "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    CC_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    CC_FOR_TARGET='$(CC)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target c++""... $ac_c" 1>&6
+echo "configure:5663: checking where to find the target c++" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gcc "*) ;;
+    *) ok=no ;;
+  esac
+  case ,${enable_languages}, in
+    *,c++,*) ;;
+    *) ok=no ;;
+  esac
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    CXX_FOR_TARGET='$(CXX)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target c++ for libstdc++""... $ac_c" 1>&6
+echo "configure:5691: checking where to find the target c++ for libstdc++" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gcc "*) ;;
+    *) ok=no ;;
+  esac
+  case ,${enable_languages}, in
+    *,c++,*) ;;
+    *) ok=no ;;
+  esac
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    RAW_CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    RAW_CXX_FOR_TARGET='$(CXX)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target dlltool""... $ac_c" 1>&6
+echo "configure:5719: checking where to find the target dlltool" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" binutils "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    DLLTOOL_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/dlltool'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    DLLTOOL_FOR_TARGET='$(DLLTOOL)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target gcc""... $ac_c" 1>&6
+echo "configure:5744: checking where to find the target gcc" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gcc "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    GCC_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    GCC_FOR_TARGET='$()'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target gcj""... $ac_c" 1>&6
+echo "configure:5769: checking where to find the target gcj" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gcc "*) ;;
+    *) ok=no ;;
+  esac
+  case ,${enable_languages}, in
+    *,java,*) ;;
+    *) ok=no ;;
+  esac
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    GCJ_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc/'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    GCJ_FOR_TARGET='$(GCJ)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target gfortran""... $ac_c" 1>&6
+echo "configure:5797: checking where to find the target gfortran" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gcc "*) ;;
+    *) ok=no ;;
+  esac
+  case ,${enable_languages}, in
+    *,fortran,*) ;;
+    *) ok=no ;;
+  esac
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    GFORTRAN_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    GFORTRAN_FOR_TARGET='$(GFORTRAN)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target ld""... $ac_c" 1>&6
+echo "configure:5825: checking where to find the target ld" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" ld "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    LD_FOR_TARGET='$$r/$(HOST_SUBDIR)/ld/ld-new'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    LD_FOR_TARGET='$(LD)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target lipo""... $ac_c" 1>&6
+echo "configure:5850: checking where to find the target lipo" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  if test "x$target" = "x$host"; then
+    # We can use an host tool
+    LIPO_FOR_TARGET='$(LIPO)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target nm""... $ac_c" 1>&6
+echo "configure:5865: checking where to find the target nm" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" binutils "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    NM_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/nm-new'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    NM_FOR_TARGET='$(NM)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target objdump""... $ac_c" 1>&6
+echo "configure:5890: checking where to find the target objdump" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" binutils "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    OBJDUMP_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/objdump'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    OBJDUMP_FOR_TARGET='$(OBJDUMP)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target ranlib""... $ac_c" 1>&6
+echo "configure:5915: checking where to find the target ranlib" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" binutils "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    RANLIB_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/ranlib'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    RANLIB_FOR_TARGET='$(RANLIB)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target strip""... $ac_c" 1>&6
+echo "configure:5940: checking where to find the target strip" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" binutils "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    STRIP_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/strip'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    STRIP_FOR_TARGET='$(STRIP)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
+fi
+echo $ac_n "checking where to find the target windres""... $ac_c" 1>&6
+echo "configure:5965: checking where to find the target windres" >&5
+if test "x${build}" != "x${host}" ; then
+  # Canadian cross, just use what we found
+  echo "$ac_t""pre-installed" 1>&6
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" binutils "*) ;;
+    *) ok=no ;;
+  esac
+  
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    WINDRES_FOR_TARGET='$$r/$(HOST_SUBDIR)/binutils/windres'
+    echo "$ac_t""just compiled" 1>&6
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    WINDRES_FOR_TARGET='$(WINDRES)'
+    echo "$ac_t""host tool" 1>&6
+  else
+    # We need a cross tool
+    echo "$ac_t""pre-installed" 1>&6
+  fi
 fi
 
 
 
+
 # Certain tools may need extra flags.
 AR_FOR_TARGET=${AR_FOR_TARGET}${extra_arflags_for_target}
 RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${extra_ranlibflags_for_target}
 NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
 
+# When building target libraries, except in a Canadian cross, we use
+# the same toolchain as the compiler we just built.
+COMPILER_AS_FOR_TARGET='$(AS_FOR_TARGET)'
+COMPILER_LD_FOR_TARGET='$(LD_FOR_TARGET)'
+COMPILER_NM_FOR_TARGET='$(NM_FOR_TARGET)'
+if test $host = $build; then
+  case " $configdirs " in
+    *" gcc "*)
+      COMPILER_AS_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/as'
+      COMPILER_LD_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/collect-ld'
+      COMPILER_NM_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/nm'${extra_nmflags_for_target}
+      ;;
+  esac
+fi
+
+
+
+
+
 echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
-echo "configure:5388: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "configure:6018: checking whether to enable maintainer-specific portions of Makefiles" >&5
 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
 if test "${enable_maintainer_mode+set}" = set; then
   enableval="$enable_maintainer_mode"
@@ -5431,7 +6061,7 @@ esac
 # gcc for stageN-gcc and stagePREV-gcc for stage(N-1).  In case this is not
 # possible, however, we can resort to mv.
 echo $ac_n "checking if symbolic links between directories work""... $ac_c" 1>&6
-echo "configure:5435: checking if symbolic links between directories work" >&5
+echo "configure:6065: checking if symbolic links between directories work" >&5
 if eval "test \"`echo '$''{'gcc_cv_prog_ln_s_dir'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5655,12 +6285,6 @@ s%@gmplibs@%$gmplibs%g
 s%@gmpinc@%$gmpinc%g
 s%@stage1_languages@%$stage1_languages%g
 s%@SYSROOT_CFLAGS_FOR_TARGET@%$SYSROOT_CFLAGS_FOR_TARGET%g
-s%@CONFIGURED_BISON@%$CONFIGURED_BISON%g
-s%@CONFIGURED_YACC@%$CONFIGURED_YACC%g
-s%@CONFIGURED_M4@%$CONFIGURED_M4%g
-s%@CONFIGURED_FLEX@%$CONFIGURED_FLEX%g
-s%@CONFIGURED_LEX@%$CONFIGURED_LEX%g
-s%@CONFIGURED_MAKEINFO@%$CONFIGURED_MAKEINFO%g
 s%@bootstrap_lean@%$bootstrap_lean%g
 /@serialization_dependencies@/r $serialization_dependencies
 s%@serialization_dependencies@%%g
@@ -5688,12 +6312,22 @@ s%@target_configargs@%$target_configargs%g
 s%@target_configdirs@%$target_configdirs%g
 s%@CC_FOR_BUILD@%$CC_FOR_BUILD%g
 s%@config_shell@%$config_shell%g
+s%@YACC@%$YACC%g
+s%@BISON@%$BISON%g
+s%@M4@%$M4%g
+s%@LEX@%$LEX%g
+s%@FLEX@%$FLEX%g
+s%@MAKEINFO@%$MAKEINFO%g
+s%@EXPECT@%$EXPECT%g
+s%@RUNTEST@%$RUNTEST%g
 s%@AR@%$AR%g
 s%@AS@%$AS%g
 s%@DLLTOOL@%$DLLTOOL%g
 s%@LD@%$LD%g
+s%@LIPO@%$LIPO%g
 s%@NM@%$NM%g
 s%@RANLIB@%$RANLIB%g
+s%@STRIP@%$STRIP%g
 s%@WINDRES@%$WINDRES%g
 s%@OBJCOPY@%$OBJCOPY%g
 s%@OBJDUMP@%$OBJDUMP%g
@@ -5714,23 +6348,11 @@ s%@OBJDUMP_FOR_TARGET@%$OBJDUMP_FOR_TARGET%g
 s%@RANLIB_FOR_TARGET@%$RANLIB_FOR_TARGET%g
 s%@STRIP_FOR_TARGET@%$STRIP_FOR_TARGET%g
 s%@WINDRES_FOR_TARGET@%$WINDRES_FOR_TARGET%g
-s%@CONFIGURED_AR_FOR_TARGET@%$CONFIGURED_AR_FOR_TARGET%g
-s%@CONFIGURED_AS_FOR_TARGET@%$CONFIGURED_AS_FOR_TARGET%g
-s%@CONFIGURED_CC_FOR_TARGET@%$CONFIGURED_CC_FOR_TARGET%g
-s%@CONFIGURED_CXX_FOR_TARGET@%$CONFIGURED_CXX_FOR_TARGET%g
-s%@CONFIGURED_DLLTOOL_FOR_TARGET@%$CONFIGURED_DLLTOOL_FOR_TARGET%g
-s%@CONFIGURED_GCC_FOR_TARGET@%$CONFIGURED_GCC_FOR_TARGET%g
-s%@CONFIGURED_GCJ_FOR_TARGET@%$CONFIGURED_GCJ_FOR_TARGET%g
-s%@CONFIGURED_GFORTRAN_FOR_TARGET@%$CONFIGURED_GFORTRAN_FOR_TARGET%g
-s%@CONFIGURED_LD_FOR_TARGET@%$CONFIGURED_LD_FOR_TARGET%g
-s%@CONFIGURED_LIPO_FOR_TARGET@%$CONFIGURED_LIPO_FOR_TARGET%g
-s%@CONFIGURED_NM_FOR_TARGET@%$CONFIGURED_NM_FOR_TARGET%g
-s%@CONFIGURED_OBJDUMP_FOR_TARGET@%$CONFIGURED_OBJDUMP_FOR_TARGET%g
-s%@CONFIGURED_RANLIB_FOR_TARGET@%$CONFIGURED_RANLIB_FOR_TARGET%g
-s%@CONFIGURED_STRIP_FOR_TARGET@%$CONFIGURED_STRIP_FOR_TARGET%g
-s%@CONFIGURED_WINDRES_FOR_TARGET@%$CONFIGURED_WINDRES_FOR_TARGET%g
 s%@FLAGS_FOR_TARGET@%$FLAGS_FOR_TARGET%g
 s%@RAW_CXX_FOR_TARGET@%$RAW_CXX_FOR_TARGET%g
+s%@COMPILER_AS_FOR_TARGET@%$COMPILER_AS_FOR_TARGET%g
+s%@COMPILER_LD_FOR_TARGET@%$COMPILER_LD_FOR_TARGET%g
+s%@COMPILER_NM_FOR_TARGET@%$COMPILER_NM_FOR_TARGET%g
 s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g
 s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g
 s%@MAINT@%$MAINT%g
index c9169b6bd587096c1ae5394b56901a9753e50558..d3a7067855adcd5660a9a4564d5454a0d9c6010e 100644 (file)
@@ -123,7 +123,7 @@ build_tools="build-texinfo build-byacc build-flex build-bison build-m4 build-fix
 
 # these libraries are used by various programs built for the host environment
 #
-host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp"
+host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber"
 
 # these tools are built for the host environment
 # Note, the powerpc-eabi build depends on sim occurring before gdb in order to
@@ -1611,17 +1611,6 @@ esac
 tooldir='${exec_prefix}'/${target_alias}
 build_tooldir=${tooldir}
 
-# Generate default definitions for YACC, M4, LEX and other programs that run
-# on the build machine.  These are used if the Makefile can't locate these
-# programs in objdir.
-MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
-AC_CHECK_PROGS([CONFIGURED_BISON], [bison], [$MISSING bison])
-AC_CHECK_PROGS([CONFIGURED_YACC], ['bison -y' byacc yacc], [$MISSING bison -y])
-AC_CHECK_PROGS([CONFIGURED_M4], [gm4 gnum4 m4], [$MISSING m4])
-AC_CHECK_PROGS([CONFIGURED_FLEX], [flex], [$MISSING flex])
-AC_CHECK_PROGS([CONFIGURED_LEX], [flex lex], [$MISSING flex])
-AC_CHECK_PROGS([CONFIGURED_MAKEINFO], makeinfo, [$MISSING makeinfo])
-
 # Create a .gdbinit file which runs the one in srcdir
 # and tells GDB to look there for source files.
 
@@ -2099,13 +2088,81 @@ AC_SUBST(target_configdirs)
 AC_SUBST(CC_FOR_BUILD)
 AC_SUBST(config_shell)
 
+# Generate default definitions for YACC, M4, LEX and other programs that run
+# on the build machine.  These are used if the Makefile can't locate these
+# programs in objdir.
+MISSING=`cd $ac_aux_dir && ${PWDCMD-pwd}`/missing
+
+AC_CHECK_PROGS([YACC], ['bison -y' byacc yacc], [$MISSING bison -y])
+case " $build_configdirs " in
+  *" bison "*) YACC='$$r/$(BUILD_SUBDIR)/bison/tests/bison -y' ;;
+  *" byacc "*) YACC='$$r/$(BUILD_SUBDIR)/byacc/byacc' ;;
+esac
+
+AC_CHECK_PROGS([BISON], [bison], [$MISSING bison])
+case " $build_configdirs " in
+  *" bison "*) BISON='$$r/$(BUILD_SUBDIR)/bison/tests/bison' ;;
+esac
+
+AC_CHECK_PROGS([M4], [gm4 gnum4 m4], [$MISSING m4])
+case " $build_configdirs " in
+  *" m4 "*) M4='$$r/$(BUILD_SUBDIR)/m4/m4' ;;
+esac
+
+AC_CHECK_PROGS([LEX], [flex lex], [$MISSING flex])
+case " $build_configdirs " in
+  *" flex "*) LEX='$$r/$(BUILD_SUBDIR)/flex/flex' ;;
+  *" lex "*) LEX='$$r/$(BUILD_SUBDIR)/lex/lex' ;;
+esac
+
+AC_CHECK_PROGS([FLEX], [flex], [$MISSING flex])
+case " $build_configdirs " in
+  *" flex "*) FLEX='$$r/$(BUILD_SUBDIR)/flex/flex' ;;
+esac
+
+AC_CHECK_PROGS([MAKEINFO], makeinfo, [$MISSING makeinfo])
+case " $build_configdirs " in
+  *" texinfo "*) MAKEINFO='$$r/$(BUILD_SUBDIR)/texinfo/makeinfo/makeinfo' ;;
+  *)
+changequote(,)
+    # For an installed makeinfo, we require it to be from texinfo 4.2 or
+    # higher, else we use the "missing" dummy.
+    if ${MAKEINFO} --version \
+       | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
+      :
+    else
+      MAKEINFO="$MISSING makeinfo"
+    fi
+    ;;
+changequote([,])
+esac
+
+# FIXME: expect and dejagnu may become build tools?
+
+AC_CHECK_PROGS(EXPECT, expect, expect)
+case " $configdirs " in
+  *" expect "*)
+    test $host = $build && EXPECT='$$r/$(HOST_SUBDIR)/expect/expect'
+    ;;
+esac
+
+AC_CHECK_PROGS(RUNTEST, runtest, runtest)
+case " $configdirs " in
+  *" dejagnu "*)
+    test $host = $build && RUNTEST='$$r/$(HOST_SUBDIR)/dejagnu/runtest'
+    ;;
+esac
+
+
 # Host tools.
 NCN_STRICT_CHECK_TOOLS(AR, ar)
 NCN_STRICT_CHECK_TOOLS(AS, as)
 NCN_STRICT_CHECK_TOOLS(DLLTOOL, dlltool)
 NCN_STRICT_CHECK_TOOLS(LD, ld)
+NCN_STRICT_CHECK_TOOLS(LIPO, lipo)
 NCN_STRICT_CHECK_TOOLS(NM, nm)
 NCN_STRICT_CHECK_TOOLS(RANLIB, ranlib, :)
+NCN_STRICT_CHECK_TOOLS(STRIP, strip, :)
 NCN_STRICT_CHECK_TOOLS(WINDRES, windres)
 NCN_STRICT_CHECK_TOOLS(OBJCOPY, objcopy)
 NCN_STRICT_CHECK_TOOLS(OBJDUMP, objdump)
@@ -2115,8 +2172,7 @@ AC_SUBST(CFLAGS)
 AC_SUBST(CFLAGS_FOR_BUILD)
 AC_SUBST(CXXFLAGS)
 
-# Target tools.  Do the tests using the names they may have passed in
-# the environment, then move it to CONFIGURED_*_FOR_TARGET.
+# Target tools.
 NCN_STRICT_CHECK_TARGET_TOOLS(AR_FOR_TARGET, ar)
 NCN_STRICT_CHECK_TARGET_TOOLS(AS_FOR_TARGET, as)
 NCN_STRICT_CHECK_TARGET_TOOLS(CC_FOR_TARGET, cc gcc)
@@ -2133,83 +2189,32 @@ NCN_STRICT_CHECK_TARGET_TOOLS(RANLIB_FOR_TARGET, ranlib, :)
 NCN_STRICT_CHECK_TARGET_TOOLS(STRIP_FOR_TARGET, strip)
 NCN_STRICT_CHECK_TARGET_TOOLS(WINDRES_FOR_TARGET, windres)
 
-CONFIGURED_AR_FOR_TARGET="$AR_FOR_TARGET"
-CONFIGURED_AS_FOR_TARGET="$AS_FOR_TARGET"
-CONFIGURED_CC_FOR_TARGET="$CC_FOR_TARGET"
-CONFIGURED_CXX_FOR_TARGET="$CXX_FOR_TARGET"
-CONFIGURED_DLLTOOL_FOR_TARGET="$DLLTOOL_FOR_TARGET"
-CONFIGURED_GCC_FOR_TARGET="$GCC_FOR_TARGET"
-CONFIGURED_GCJ_FOR_TARGET="$GCJ_FOR_TARGET"
-CONFIGURED_GFORTRAN_FOR_TARGET="$GFORTRAN_FOR_TARGET"
-CONFIGURED_LD_FOR_TARGET="$LD_FOR_TARGET"
-CONFIGURED_LIPO_FOR_TARGET="$LIPO_FOR_TARGET"
-CONFIGURED_NM_FOR_TARGET="$NM_FOR_TARGET"
-CONFIGURED_OBJDUMP_FOR_TARGET="$OBJDUMP_FOR_TARGET"
-CONFIGURED_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET"
-CONFIGURED_STRIP_FOR_TARGET="$STRIP_FOR_TARGET"
-CONFIGURED_WINDRES_FOR_TARGET="$WINDRES_FOR_TARGET"
-
-AC_SUBST(CONFIGURED_AR_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_AS_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_CC_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_CXX_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_DLLTOOL_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_GCC_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_GCJ_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_GFORTRAN_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_LD_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_LIPO_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_NM_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_OBJDUMP_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_RANLIB_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_STRIP_FOR_TARGET)dnl
-AC_SUBST(CONFIGURED_WINDRES_FOR_TARGET)dnl
-AC_SUBST(FLAGS_FOR_TARGET)
-
-# Fix up target tools.
-if test "x${build}" = "x${host}" ; then
-  # In this case, the newly built tools can and should be used,
-  # so we override the results of the autoconf tests.
-  # This should really only happen when the tools are actually being built,
-  # but that's a further refinement.  The new build scheme, where
-  # tools are built into a structure paralleling where they're installed,
-  # should also eliminate all of this cleanly.
-  AR_FOR_TARGET="\$(USUAL_AR_FOR_TARGET)"
-  AS_FOR_TARGET="\$(USUAL_AS_FOR_TARGET)"
-  CC_FOR_TARGET="\$(USUAL_CC_FOR_TARGET)"
-  CXX_FOR_TARGET="\$(USUAL_CXX_FOR_TARGET)"
-  RAW_CXX_FOR_TARGET="\$(USUAL_RAW_CXX_FOR_TARGET)"
-  DLLTOOL_FOR_TARGET="\$(USUAL_DLLTOOL_FOR_TARGET)"
-  GCC_FOR_TARGET="\$(USUAL_GCC_FOR_TARGET)"
-  GCJ_FOR_TARGET="\$(USUAL_GCJ_FOR_TARGET)"
-  GFORTRAN_FOR_TARGET="\$(USUAL_GFORTRAN_FOR_TARGET)"
-  LD_FOR_TARGET="\$(USUAL_LD_FOR_TARGET)"
-  LIPO_FOR_TARGET="\$(USUAL_LIPO_FOR_TARGET)"
-  NM_FOR_TARGET="\$(USUAL_NM_FOR_TARGET)"
-  OBJDUMP_FOR_TARGET="\$(USUAL_OBJDUMP_FOR_TARGET)"
-  RANLIB_FOR_TARGET="\$(USUAL_RANLIB_FOR_TARGET)"
-  STRIP_FOR_TARGET="\$(USUAL_STRIP_FOR_TARGET)"
-  WINDRES_FOR_TARGET="\$(USUAL_WINDRES_FOR_TARGET)"
-else
-  # Just use the ones we found.
-  AR_FOR_TARGET="\$(CONFIGURED_AR_FOR_TARGET)"
-  AS_FOR_TARGET="\$(CONFIGURED_AS_FOR_TARGET)"
-  CC_FOR_TARGET="\$(CONFIGURED_CC_FOR_TARGET)"
-  CXX_FOR_TARGET="\$(CONFIGURED_CXX_FOR_TARGET)"
-  RAW_CXX_FOR_TARGET="\$(CONFIGURED_CXX_FOR_TARGET)"
-  DLLTOOL_FOR_TARGET="\$(CONFIGURED_DLLTOOL_FOR_TARGET)"
-  GCC_FOR_TARGET="\$(CONFIGURED_GCC_FOR_TARGET)"
-  GCJ_FOR_TARGET="\$(CONFIGURED_GCJ_FOR_TARGET)"
-  GFORTRAN_FOR_TARGET="\$(CONFIGURED_GFORTRAN_FOR_TARGET)"
-  LD_FOR_TARGET="\$(CONFIGURED_LD_FOR_TARGET)"
-  LIPO_FOR_TARGET="\$(CONFIGURED_LIPO_FOR_TARGET)"
-  NM_FOR_TARGET="\$(CONFIGURED_NM_FOR_TARGET)"
-  OBJDUMP_FOR_TARGET="\$(CONFIGURED_OBJDUMP_FOR_TARGET)"
-  RANLIB_FOR_TARGET="\$(CONFIGURED_RANLIB_FOR_TARGET)"
-  STRIP_FOR_TARGET="\$(CONFIGURED_STRIP_FOR_TARGET)"
-  WINDRES_FOR_TARGET="\$(CONFIGURED_WINDRES_FOR_TARGET)"  
-fi
+RAW_CXX_FOR_TARGET="$CXX_FOR_TARGET"
+
+GCC_TARGET_TOOL(ar, AR_FOR_TARGET, AR, [binutils/ar])
+GCC_TARGET_TOOL(as, AS_FOR_TARGET, AS, [gas/as-new])
+GCC_TARGET_TOOL(cc, CC_FOR_TARGET, CC, [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/])
+GCC_TARGET_TOOL(c++, CXX_FOR_TARGET, CXX,
+               [gcc/g++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs],
+               c++)
+GCC_TARGET_TOOL(c++ for libstdc++, RAW_CXX_FOR_TARGET, CXX,
+               [gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs],
+               c++)
+GCC_TARGET_TOOL(dlltool, DLLTOOL_FOR_TARGET, DLLTOOL, [binutils/dlltool])
+GCC_TARGET_TOOL(gcc, GCC_FOR_TARGET, , [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/])
+GCC_TARGET_TOOL(gcj, GCJ_FOR_TARGET, GCJ,
+               [gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc/], java)
+GCC_TARGET_TOOL(gfortran, GFORTRAN_FOR_TARGET, GFORTRAN,
+               [gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/], fortran)
+GCC_TARGET_TOOL(ld, LD_FOR_TARGET, LD, [ld/ld-new])
+GCC_TARGET_TOOL(lipo, LIPO_FOR_TARGET, LIPO)
+GCC_TARGET_TOOL(nm, NM_FOR_TARGET, NM, [binutils/nm-new])
+GCC_TARGET_TOOL(objdump, OBJDUMP_FOR_TARGET, OBJDUMP, [binutils/objdump])
+GCC_TARGET_TOOL(ranlib, RANLIB_FOR_TARGET, RANLIB, [binutils/ranlib])
+GCC_TARGET_TOOL(strip, STRIP_FOR_TARGET, STRIP, [binutils/strip])
+GCC_TARGET_TOOL(windres, WINDRES_FOR_TARGET, WINDRES, [binutils/windres])
 
+AC_SUBST(FLAGS_FOR_TARGET)
 AC_SUBST(RAW_CXX_FOR_TARGET)
 
 # Certain tools may need extra flags.
@@ -2217,6 +2222,25 @@ AR_FOR_TARGET=${AR_FOR_TARGET}${extra_arflags_for_target}
 RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${extra_ranlibflags_for_target}
 NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target}
 
+# When building target libraries, except in a Canadian cross, we use
+# the same toolchain as the compiler we just built.
+COMPILER_AS_FOR_TARGET='$(AS_FOR_TARGET)'
+COMPILER_LD_FOR_TARGET='$(LD_FOR_TARGET)'
+COMPILER_NM_FOR_TARGET='$(NM_FOR_TARGET)'
+if test $host = $build; then
+  case " $configdirs " in
+    *" gcc "*)
+      COMPILER_AS_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/as'
+      COMPILER_LD_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/collect-ld'
+      COMPILER_NM_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/nm'${extra_nmflags_for_target}
+      ;;
+  esac
+fi
+
+AC_SUBST(COMPILER_AS_FOR_TARGET)
+AC_SUBST(COMPILER_LD_FOR_TARGET)
+AC_SUBST(COMPILER_NM_FOR_TARGET)
+
 AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
 AC_ARG_ENABLE(maintainer-mode,
 [  --enable-maintainer-mode enable make rules and dependencies not useful