OSDN Git Service

2005-04-12 Frank Ch. Eigler <fche@redhat.com>
[pf3gnuchains/gcc-fork.git] / Makefile.in
index 131fa31..1c3917d 100644 (file)
@@ -3,7 +3,7 @@
 #
 # Makefile for directory with subdirs to build.
 #   Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-#   1999, 2000, 2001, 2002, 2003 Free Software Foundation
+#   1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation
 #
 # 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
 VPATH=@srcdir@
 
 build_alias=@build_alias@
-build_cpu=@build_cpu@
-build_vendor=@build_vendor@
-build_os=@build_os@
-build_canonical=@build_cpu@-@build_vendor@-@build_os@
+build=@build@
 host_alias=@host_alias@
-host_cpu=@host_cpu@
-host_vendor=@host_vendor@
-host_os=@host_os@
-host_canonical=@host_cpu@-@host_vendor@-@host_os@
+host=@host@
 target_alias=@target_alias@
-target_cpu=@target_cpu@
-target_vendor=@target_vendor@
-target_os=@target_os@
-target_canonical=@target_cpu@-@target_vendor@-@target_os@
+target=@target@
 
 program_transform_name = @program_transform_name@
 
@@ -70,64 +61,112 @@ man7dir = $(mandir)/man7
 man8dir = $(mandir)/man8
 man9dir = $(mandir)/man9
 
-# INSTALL_PROGRAM_ARGS is changed by configure.in to use -x for a
-# cygwin host.
-INSTALL_PROGRAM_ARGS =
-
-INSTALL = $(SHELL) $$s/install-sh -c
-INSTALL_PROGRAM = $(INSTALL) $(INSTALL_PROGRAM_ARGS)
-INSTALL_SCRIPT = $(INSTALL)
-INSTALL_DATA = $(INSTALL) -m 644
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_DATA = @INSTALL_DATA@
+LN = @LN@
+LN_S = @LN_S@
 
 # -------------------------------------------------
 # Miscellaneous non-standard autoconf-set variables
 # -------------------------------------------------
 
-links=@configlinks@
-# The file containing GCC's version number.
-gcc_version_trigger = @gcc_version_trigger@
-gcc_version = @gcc_version@
-
 # The gcc driver likes to know the arguments it was configured with.
 TOPLEVEL_CONFIGURE_ARGUMENTS=@TOPLEVEL_CONFIGURE_ARGUMENTS@
 
-gxx_include_dir = @gxx_include_dir@
-libstdcxx_incdir = @libstdcxx_incdir@
-
 tooldir = @tooldir@
 build_tooldir = @build_tooldir@
 
-# Directory in which the compiler finds executables, libraries, etc.
-libsubdir = $(libdir)/gcc-lib/$(target_alias)/$(gcc_version)
 GDB_NLM_DEPS = 
 
 # This is the name of the environment variable used for the path to
 # the libraries.
 RPATH_ENVVAR = @RPATH_ENVVAR@
 
-# This is set by configure to REALLY_SET_LIB_PATH if --enable-shared
-# was used.
-SET_LIB_PATH = @SET_LIB_PATH@
-
-# configure.in sets SET_LIB_PATH to this if --enable-shared was used.
-# Some platforms don't like blank entries, so we remove duplicate,
-# leading and trailing colons.
-REALLY_SET_LIB_PATH = \
-  $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH):$(TARGET_LIB_PATH):$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
-
 # This is the list of directories to be built for the build system.
 BUILD_CONFIGDIRS = libiberty
 # Build programs are put under this directory.
 BUILD_SUBDIR = @build_subdir@
 # This is set by the configure script to the arguments to use when configuring
 # directories built for the build system.
-BUILD_CONFIGARGS = @build_configargs@
+BUILD_CONFIGARGS = @build_configargs@ --with-build-subdir="$(BUILD_SUBDIR)"
+
+# This is the list of variables to export in the environment when
+# configuring any subdirectory.  It must also be exported whenever
+# recursing into a build directory in case that directory's Makefile
+# re-runs configure.
+BASE_EXPORTS = \
+       FLEX="$(FLEX)"; export FLEX; \
+       LEX="$(LEX)"; export LEX; \
+       BISON="$(BISON)"; export BISON; \
+       YACC="$(YACC)"; export YACC; \
+       M4="$(M4)"; export M4; \
+       MAKEINFO="$(MAKEINFO)"; export MAKEINFO;
+
+# This is the list of variables to export in the environment when
+# configuring subdirectories for the build system.
+BUILD_EXPORTS = \
+       $(BASE_EXPORTS) \
+       AR="$(AR_FOR_BUILD)"; export AR; \
+       AS="$(AS_FOR_BUILD)"; export AS; \
+       CC="$(CC_FOR_BUILD)"; export CC; \
+       CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
+       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+       CXX="$(CXX_FOR_BUILD)"; export CXX; \
+       CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
+       GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \
+       GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
+       DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \
+       LD="$(LD_FOR_BUILD)"; export LD; \
+       LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \
+       NM="$(NM_FOR_BUILD)"; export NM; \
+       RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \
+       WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES;
 
 # This is the list of directories to built for the host system.
 SUBDIRS = @configdirs@
 # This is set by the configure script to the arguments to use when configuring
 # directories built for the host system.
 HOST_CONFIGARGS = @host_configargs@
+# Host programs are put under this directory, which is . except if building
+# with srcdir=..
+HOST_SUBDIR = @host_subdir@
+# This is the list of variables to export in the environment when
+# configuring subdirectories for the host system.
+HOST_EXPORTS = \
+       $(BASE_EXPORTS) \
+       CC="$(CC)"; export CC; \
+       CFLAGS="$(CFLAGS)"; export CFLAGS; \
+       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+       CXX="$(CXX)"; export CXX; \
+       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
+       AR="$(AR)"; export AR; \
+       AS="$(AS)"; export AS; \
+       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
+       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
+       LD="$(LD)"; export LD; \
+       LDFLAGS="$(LDFLAGS)"; export LDFLAGS; \
+       NM="$(NM)"; export NM; \
+       RANLIB="$(RANLIB)"; export RANLIB; \
+       WINDRES="$(WINDRES)"; export WINDRES; \
+       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
+       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
+       TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
+       GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \
+       GMPINC="$(HOST_GMPINC)"; export GMPINC; \
+       $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
+
+# Similar, for later GCC stages.
+STAGE_HOST_EXPORTS = \
+       $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
+       $(HOST_EXPORTS) \
+       CC="$(STAGE_CC_WRAPPER) $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
+         -B$$r/$(HOST_SUBDIR)/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \
+       CC_FOR_BUILD="$(STAGE_CC_WRAPPER) \
+         $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
+         -B$$r/$(HOST_SUBDIR)/prev-gcc/ \
+         -B$(build_tooldir)/bin/"; export CC_FOR_BUILD;
 
 # This is set by the configure script to the list of directories which
 # should be built using the target tools.
@@ -136,7 +175,40 @@ TARGET_CONFIGDIRS = @target_configdirs@
 TARGET_SUBDIR = @target_subdir@
 # This is set by the configure script to the arguments to use when configuring
 # directories built for the target.
-TARGET_CONFIGARGS = @target_configargs@
+TARGET_CONFIGARGS = @target_configargs@ --with-target-subdir="$(TARGET_SUBDIR)"
+# This is the list of variables to export in the environment when
+# configuring subdirectories for the host system.
+BASE_TARGET_EXPORTS = \
+       $(BASE_EXPORTS) \
+       AR="$(AR_FOR_TARGET)"; export AR; \
+       AS="$(AS_FOR_TARGET)"; export AS; \
+       CC="$(CC_FOR_TARGET)"; export CC; \
+       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+       CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
+       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
+       GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \
+       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
+       LD="$(LD_FOR_TARGET)"; export LD; \
+       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
+       NM="$(NM_FOR_TARGET)"; export NM; \
+       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
+       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
+       $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
+
+RAW_CXX_TARGET_EXPORTS = \
+       $(BASE_TARGET_EXPORTS) \
+       CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
+       CXX="$(RAW_CXX_FOR_TARGET)"; export CXX;
+
+NORMAL_TARGET_EXPORTS = \
+       $(BASE_TARGET_EXPORTS) \
+       CXX="$(CXX_FOR_TARGET)"; export CXX;
+
+# Where to find GMP
+HOST_GMPLIBS = @gmplibs@
+HOST_GMPINC = @gmpinc@
 
 # ----------------------------------------------
 # Programs producing files for the BUILD machine
@@ -148,57 +220,67 @@ SHELL = @config_shell@
 # the environment to account for automounters.  The make variable must not
 # be called PWDCMD, otherwise the value set here is passed to make
 # subprocesses and overrides the setting from the user's environment.
-PWD = $${PWDCMD-pwd}
+# Don't use PWD since it is a common shell environment variable and we
+# don't want to corrupt it.
+PWD_COMMAND = $${PWDCMD-pwd}
 
 # compilers to use to create programs which must be run in the build
 # environment.
 CC_FOR_BUILD = @CC_FOR_BUILD@
-CFLAGS_FOR_BUILD = $(CFLAGS)
+CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
 
 CXX_FOR_BUILD = $(CXX)
 
 # Special variables passed down in EXTRA_GCC_FLAGS.  They are defined
 # here so that they can be overridden by Makefile fragments.
-BUILD_CC = $(CC_FOR_BUILD)
 BUILD_PREFIX = @BUILD_PREFIX@
 BUILD_PREFIX_1 = @BUILD_PREFIX_1@
 
-BISON=@BISON@
-USUAL_BISON = `if [ -f $$r/bison/bison ] ; then \
-           echo $$r/bison/bison -L $$s/bison/ ; \
+# Flags to pass to stage2 and later makes.  They are defined
+# 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 bison ; \
+           echo ${CONFIGURED_BISON} ; \
         fi`
 
-DEFAULT_YACC = @DEFAULT_YACC@
-YACC=@YACC@
-USUAL_YACC = `if [ -f $$r/bison/bison ] ; then \
-           echo $$r/bison/bison -y -L $$s/bison/ ; \
-       elif [ -f $$r/byacc/byacc ] ; then \
-           echo $$r/byacc/byacc ; \
+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 ${DEFAULT_YACC} ; \
+           echo ${CONFIGURED_YACC} ; \
        fi`
 
-DEFAULT_LEX = @DEFAULT_LEX@
-LEX=@LEX@
-USUAL_LEX = `if [ -f $$r/flex/flex ] ; \
-       then echo $$r/flex/flex ; \
-       else echo ${DEFAULT_LEX} ; 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`
 
-DEFAULT_M4 = @DEFAULT_M4@
-M4 = `if [ -f $$r/m4/m4 ] ; \
-       then echo $$r/m4/m4 ; \
-       else echo ${DEFAULT_M4} ; 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.
-MAKEINFO=@MAKEINFO@
-USUAL_MAKEINFO = `if [ -f $$r/texinfo/makeinfo/makeinfo ] ; \
-       then echo $$r/texinfo/makeinfo/makeinfo ; \
-       else if (makeinfo --version \
+# 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 makeinfo; else echo $$s/missing makeinfo; fi; fi`
+        then echo ${CONFIGURED_MAKEINFO}; else echo $$s/missing makeinfo; fi; fi`
 
 # This just becomes part of the MAKEINFO definition passed down to
 # sub-makes.  It lets flags be given on the command line while still
@@ -206,8 +288,9 @@ USUAL_MAKEINFO = `if [ -f $$r/texinfo/makeinfo/makeinfo ] ; \
 # (Default to avoid splitting info files by setting the threshold high.)
 MAKEINFOFLAGS = --split-size=5000000
 
-EXPECT = `if [ -f $$r/expect/expect ] ; \
-       then echo $$r/expect/expect ; \
+# 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 ] ; \
@@ -218,10 +301,6 @@ RUNTEST = `if [ -f $$s/dejagnu/runtest ] ; \
 # Programs producing files for the HOST machine
 # ---------------------------------------------
 
-# This is the list of directories that may be needed in RPATH_ENVVAR
-# so that programs built for the host machine work.
-HOST_LIB_PATH = $$r/bfd:$$r/opcodes
-
 AS = @AS@
 
 AR = @AR@
@@ -252,35 +331,33 @@ PICFLAG =
 # Programs producing files for the TARGET machine
 # -----------------------------------------------
 
-# This is the list of directories that may be needed in RPATH_ENVVAR
-# so that prorgams built for the target machine work.
-TARGET_LIB_PATH = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs:
-
 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/binutils/ar ] ; then \
-    echo $$r/binutils/ar ; \
+  if [ -f $$r/$(HOST_SUBDIR)/binutils/ar ] ; then \
+    echo $$r/$(HOST_SUBDIR)/binutils/ar ; \
   else \
-    if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
+    if [ '$(host)' = '$(target)' ] ; then \
       echo $(AR); \
     else \
-       echo ar | sed '$(program_transform_name)' ; \
+      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/gas/as-new ] ; then \
-    echo $$r/gas/as-new ; \
-  elif [ -f $$r/gcc/xgcc ]; then \
+  if [ -f $$r/$(HOST_SUBDIR)/gas/as-new ] ; then \
+    echo $$r/$(HOST_SUBDIR)/gas/as-new ; \
+  elif [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ]; then \
     $(CC_FOR_TARGET) -print-prog-name=as ; \
   else \
-    if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
+    if [ '$(host)' = '$(target)' ] ; then \
       echo $(AS); \
     else \
-       echo as | sed '$(program_transform_name)' ; \
+      echo $(CONFIGURED_AS_FOR_TARGET) ; \
     fi; \
   fi`
 
@@ -295,7 +372,8 @@ CFLAGS_FOR_TARGET = -O2 $(CFLAGS)
 # build libgcc2.a.  We define it here so that it can itself be
 # overridden on the command line.
 GCC_FOR_TARGET=@GCC_FOR_TARGET@
-USUAL_GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) $$r/gcc/xgcc -B$$r/gcc/ $(FLAGS_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)
 
 CXX_FOR_TARGET = @CXX_FOR_TARGET@
@@ -306,74 +384,80 @@ CXXFLAGS_FOR_TARGET = $(CXXFLAGS)
 LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
 
 DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@
+CONFIGURED_DLLTOOL_FOR_TARGET=@CONFIGURED_DLLTOOL_FOR_TARGET@
 USUAL_DLLTOOL_FOR_TARGET = ` \
-  if [ -f $$r/binutils/dlltool ] ; then \
-    echo $$r/binutils/dlltool ; \
+  if [ -f $$r/$(HOST_SUBDIR)/binutils/dlltool ] ; then \
+    echo $$r/$(HOST_SUBDIR)/binutils/dlltool ; \
   else \
-    if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
+    if [ '$(host)' = '$(target)' ] ; then \
       echo $(DLLTOOL); \
     else \
-       echo dlltool | sed '$(program_transform_name)' ; \
+      echo $(CONFIGURED_DLLTOOL_FOR_TARGET) ; \
     fi; \
   fi`
 
 GCJ_FOR_TARGET = @GCJ_FOR_TARGET@
+GFORTRAN_FOR_TARGET = @GFORTRAN_FOR_TARGET@
 
 LD_FOR_TARGET=@LD_FOR_TARGET@
+CONFIGURED_LD_FOR_TARGET=@CONFIGURED_LD_FOR_TARGET@
 USUAL_LD_FOR_TARGET = ` \
-  if [ -f $$r/ld/ld-new ] ; then \
-    echo $$r/ld/ld-new ; \
-  elif [ -f $$r/gcc/xgcc ]; then \
+  if [ -f $$r/$(HOST_SUBDIR)/ld/ld-new ] ; then \
+    echo $$r/$(HOST_SUBDIR)/ld/ld-new ; \
+  elif [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ]; then \
     $(CC_FOR_TARGET) -print-prog-name=ld ; \
   else \
-    if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
+    if [ '$(host)' = '$(target)' ] ; then \
       echo $(LD); \
     else \
-       echo ld | sed '$(program_transform_name)' ; \
+      echo $(CONFIGURED_LD_FOR_TARGET) ; \
     fi; \
   fi`
 
 LDFLAGS_FOR_TARGET = 
 
 NM_FOR_TARGET=@NM_FOR_TARGET@
+CONFIGURED_NM_FOR_TARGET=@CONFIGURED_NM_FOR_TARGET@
 USUAL_NM_FOR_TARGET = ` \
-  if [ -f $$r/binutils/nm-new ] ; then \
-    echo $$r/binutils/nm-new ; \
-  elif [ -f $$r/gcc/xgcc ]; then \
+  if [ -f $$r/$(HOST_SUBDIR)/binutils/nm-new ] ; then \
+    echo $$r/$(HOST_SUBDIR)/binutils/nm-new ; \
+  elif [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ]; then \
     $(CC_FOR_TARGET) -print-prog-name=nm ; \
   else \
-    if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
+    if [ '$(host)' = '$(target)' ] ; then \
       echo $(NM); \
     else \
-       echo nm | sed '$(program_transform_name)' ; \
+      echo $(CONFIGURED_NM_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/binutils/ranlib ] ; then \
-    echo $$r/binutils/ranlib ; \
+  if [ -f $$r/$(HOST_SUBDIR)/binutils/ranlib ] ; then \
+    echo $$r/$(HOST_SUBDIR)/binutils/ranlib ; \
   else \
-    if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
+    if [ '$(host)' = '$(target)' ] ; then \
       if [ x'$(RANLIB)' != x ]; then \
          echo $(RANLIB); \
       else \
          echo ranlib; \
       fi; \
     else \
-       echo ranlib | sed '$(program_transform_name)' ; \
+      echo $(CONFIGURED_RANLIB_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/binutils/windres ] ; then \
-    echo $$r/binutils/windres ; \
+  if [ -f $$r/$(HOST_SUBDIR)/binutils/windres ] ; then \
+    echo $$r/$(HOST_SUBDIR)/binutils/windres ; \
   else \
-    if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
+    if [ '$(host)' = '$(target)' ] ; then \
       echo $(WINDRES); \
     else \
-       echo windres | sed '$(program_transform_name)' ; \
+      echo $(CONFIGURED_WINDRES_FOR_TARGET) ; \
     fi; \
   fi`
 
@@ -385,8 +469,7 @@ PICFLAG_FOR_TARGET =
 
 # The first rule in the file had better be this one.  Don't put any above it.
 # This lives here to allow makefile fragments to contain dependencies.
-all: all.normal
-.PHONY: all
+@default_target@:
 
 #### host and target specific makefile fragments come in here.
 @target_makefile_frag@
@@ -395,48 +478,46 @@ all: all.normal
 @host_makefile_frag@
 ###
 
+# This is the list of directories that may be needed in RPATH_ENVVAR
+# so that prorgams built for the target machine work.
+TARGET_LIB_PATH = $(TARGET_LIB_PATH_libstdc++-v3)$(TARGET_LIB_PATH_libmudflap)$(HOST_LIB_PATH_gcc)
+
+@if target-libstdc++-v3
+TARGET_LIB_PATH_libstdc++-v3 = $$r/$(TARGET_SUBDIR)/libstdc++-v3/.libs:
+@endif target-libstdc++-v3
+
+@if target-libmudflap
+TARGET_LIB_PATH_libmudflap = $$r/$(TARGET_SUBDIR)/libmudflap/.libs:
+@endif target-libmudflap
+
+
+
+# This is the list of directories that may be needed in RPATH_ENVVAR
+# so that programs built for the host machine work.
+HOST_LIB_PATH = $(HOST_LIB_PATH_bfd)$(HOST_LIB_PATH_opcodes)
+
+# Define HOST_LIB_PATH_gcc here, for the sake of TARGET_LIB_PATH, ouch
+@if gcc
+HOST_LIB_PATH_gcc = $$r/$(HOST_SUBDIR)/gcc:$$r/$(HOST_SUBDIR)/prev-gcc:
+@endif gcc
+
+
+@if bfd
+HOST_LIB_PATH_bfd = \
+  $$r/$(HOST_SUBDIR)/bfd/.:$$r/$(HOST_SUBDIR)/prev-bfd/.:
+@endif bfd
+
+@if opcodes
+HOST_LIB_PATH_opcodes = \
+  $$r/$(HOST_SUBDIR)/opcodes/.:$$r/$(HOST_SUBDIR)/prev-opcodes/.:
+@endif opcodes
+
+
 # Flags to pass down to all sub-makes.
-# Please keep these in alphabetical order.
 BASE_FLAGS_TO_PASS = \
-       "AR_FLAGS=$(AR_FLAGS)" \
-       "AR_FOR_TARGET=$(AR_FOR_TARGET)" \
-       "AS_FOR_TARGET=$(AS_FOR_TARGET)" \
-       "BISON=$(BISON)" \
-       "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
-       "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
-       "CFLAGS=$(CFLAGS)" \
-       "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
-       "GCJ_FOR_TARGET=$(GCJ_FOR_TARGET)" \
-       "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
-       "CXXFLAGS=$(CXXFLAGS)" \
-       "CXXFLAGS_FOR_TARGET=$(CXXFLAGS_FOR_TARGET)" \
-       "CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
        "DESTDIR=$(DESTDIR)" \
-       "DLLTOOL_FOR_TARGET=$(DLLTOOL_FOR_TARGET)" \
-       "INSTALL=$(INSTALL)" \
-       "INSTALL_DATA=$(INSTALL_DATA)" \
-       "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
-       "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
-       "LDFLAGS=$(LDFLAGS)" \
-       "LEX=$(LEX)" \
-       "LD_FOR_TARGET=$(LD_FOR_TARGET)" \
-       "LIBCFLAGS=$(LIBCFLAGS)" \
-       "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
-       "LIBCXXFLAGS=$(LIBCXXFLAGS)" \
-       "LIBCXXFLAGS_FOR_TARGET=$(LIBCXXFLAGS_FOR_TARGET)" \
-       "M4=$(M4)" \
-       "MAKE=$(MAKE)" \
-       "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
-       "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
-       "RANLIB_FOR_TARGET=$(RANLIB_FOR_TARGET)" \
        "RPATH_ENVVAR=$(RPATH_ENVVAR)" \
-       "SHELL=$(SHELL)" \
-       "EXPECT=$(EXPECT)" \
-       "RUNTEST=$(RUNTEST)" \
-       "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
        "TARGET_SUBDIR=$(TARGET_SUBDIR)" \
-       "WINDRES_FOR_TARGET=$(WINDRES_FOR_TARGET)" \
-       "YACC=$(YACC)" \
        "bindir=$(bindir)" \
        "datadir=$(datadir)" \
        "exec_prefix=$(exec_prefix)" \
@@ -445,8 +526,6 @@ BASE_FLAGS_TO_PASS = \
        "libdir=$(libdir)" \
        "libexecdir=$(libexecdir)" \
        "lispdir=$(lispdir)" \
-       "libstdcxx_incdir=$(libstdcxx_incdir)" \
-       "libsubdir=$(libsubdir)" \
        "localstatedir=$(localstatedir)" \
        "mandir=$(mandir)" \
        "oldincludedir=$(oldincludedir)" \
@@ -456,10 +535,47 @@ BASE_FLAGS_TO_PASS = \
        "sysconfdir=$(sysconfdir)" \
        "tooldir=$(tooldir)" \
        "build_tooldir=$(build_tooldir)" \
-       "gxx_include_dir=$(gxx_include_dir)" \
-       "gcc_version=$(gcc_version)" \
-       "gcc_version_trigger=$(gcc_version_trigger)" \
-       "target_alias=$(target_alias)" 
+       "target_alias=$(target_alias)" \
+       "BISON=$(BISON)" \
+       "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
+       "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
+       "EXPECT=$(EXPECT)" \
+       "FLEX=$(FLEX)" \
+       "INSTALL=$(INSTALL)" \
+       "INSTALL_DATA=$(INSTALL_DATA)" \
+       "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
+       "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
+       "LEX=$(LEX)" \
+       "M4=$(M4)" \
+       "MAKE=$(MAKE)" \
+       "RUNTEST=$(RUNTEST)" \
+       "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
+       "SHELL=$(SHELL)" \
+       "YACC=$(YACC)" \
+       "AR_FLAGS=$(AR_FLAGS)" \
+       "CFLAGS=$(CFLAGS)" \
+       "CXXFLAGS=$(CXXFLAGS)" \
+       "LDFLAGS=$(LDFLAGS)" \
+       "LIBCFLAGS=$(LIBCFLAGS)" \
+       "LIBCXXFLAGS=$(LIBCXXFLAGS)" \
+       "AR_FOR_TARGET=$(AR_FOR_TARGET)" \
+       "AS_FOR_TARGET=$(AS_FOR_TARGET)" \
+       "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
+       "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
+       "CPPFLAGS_FOR_TARGET=$(CPPFLAGS_FOR_TARGET)" \
+       "CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
+       "CXXFLAGS_FOR_TARGET=$(CXXFLAGS_FOR_TARGET)" \
+       "DLLTOOL_FOR_TARGET=$(DLLTOOL_FOR_TARGET)" \
+       "GCJ_FOR_TARGET=$(GCJ_FOR_TARGET)" \
+       "GFORTRAN_FOR_TARGET=$(GFORTRAN_FOR_TARGET)" \
+       "LD_FOR_TARGET=$(LD_FOR_TARGET)" \
+       "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
+       "LIBCXXFLAGS_FOR_TARGET=$(LIBCXXFLAGS_FOR_TARGET)" \
+       "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
+       "RANLIB_FOR_TARGET=$(RANLIB_FOR_TARGET)" \
+       "WINDRES_FOR_TARGET=$(WINDRES_FOR_TARGET)" \
+       "CONFIG_SHELL=$(SHELL)" \
+       "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" 
 
 # For any flags above that may contain shell code that varies from one
 # target library to another.  When doing recursive invocations of the
@@ -470,6 +586,8 @@ RECURSE_FLAGS = \
        CXX_FOR_TARGET='$(CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)' \
        RAW_CXX_FOR_TARGET='$(RAW_CXX_FOR_TARGET_FOR_RECURSIVE_MAKE)' \
 
+RECURSE_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS)
+
 # Flags to pass down to most sub-makes, in which we're building with
 # the host environment.
 EXTRA_HOST_FLAGS = \
@@ -524,33 +642,24 @@ TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
 # The BUILD_* variables are a special case, which are used for the gcc
 # cross-building scheme.
 EXTRA_GCC_FLAGS = \
-       'AR=$(AR)' \
-       'AS=$(AS)' \
-       'CC=$(CC)' \
-       'CXX=$(CXX)' \
-       'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
-       'BUILD_CC=$(CC_FOR_BUILD)' \
        'BUILD_PREFIX=$(BUILD_PREFIX)' \
        'BUILD_PREFIX_1=$(BUILD_PREFIX_1)' \
-       'NM=$(NM)' \
-       'RANLIB=$(RANLIB)' \
-       'WINDRES=$$(WINDRES_FOR_TARGET)' \
        "GCC_FOR_TARGET=$(GCC_FOR_TARGET)" \
        "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
-       "`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s/.*=$$/XFOO=/`" \
-       "`echo 'STMP_FIXPROTO=$(STMP_FIXPROTO)' | sed -e s/.*=$$/XFOO=/`" \
-       "`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s/.*=$$/XFOO=/`" \
-       "`echo 'LIBGCC2_CFLAGS=$(LIBGCC2_CFLAGS)' | sed -e s/.*=$$/XFOO=/`" \
-       "`echo 'LIBGCC2_DEBUG_CFLAGS=$(LIBGCC2_DEBUG_CFLAGS)' | sed -e s/.*=$$/XFOO=/`" \
-       "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s/.*=$$/XFOO=/`" \
-       "`echo 'ENQUIRE=$(ENQUIRE)' | sed -e s/.*=$$/XFOO=/`" \
-       "`echo 'STAGE1_CFLAGS=$(STAGE1_CFLAGS)' | sed -e s/.*=$$/XFOO=/`" \
-       "`echo 'BOOT_CFLAGS=$(BOOT_CFLAGS)' | sed -e s/.*=$$/XFOO=/`"
-
-GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS)
+       "`echo 'LANGUAGES=$(LANGUAGES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+       "`echo 'STMP_FIXPROTO=$(STMP_FIXPROTO)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+       "`echo 'LIMITS_H_TEST=$(LIMITS_H_TEST)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+       "`echo 'LIBGCC2_CFLAGS=$(LIBGCC2_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+       "`echo 'LIBGCC2_DEBUG_CFLAGS=$(LIBGCC2_DEBUG_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+       "`echo 'LIBGCC2_INCLUDES=$(LIBGCC2_INCLUDES)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+       "`echo 'STAGE1_CFLAGS=$(STAGE1_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+       "`echo 'BOOT_CFLAGS=$(BOOT_CFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`" \
+       "`echo 'BOOT_ADAFLAGS=$(BOOT_ADAFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
+
+GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS)
 
 .PHONY: configure-host
-configure-host: maybe-configure-gcc  \
+configure-host:  \
     maybe-configure-ash \
     maybe-configure-autoconf \
     maybe-configure-automake \
@@ -569,8 +678,10 @@ configure-host: maybe-configure-gcc  \
     maybe-configure-fileutils \
     maybe-configure-findutils \
     maybe-configure-find \
+    maybe-configure-fixincludes \
     maybe-configure-flex \
     maybe-configure-gas \
+    maybe-configure-gcc \
     maybe-configure-gawk \
     maybe-configure-gettext \
     maybe-configure-gnuserv \
@@ -582,6 +693,7 @@ configure-host: maybe-configure-gcc  \
     maybe-configure-tcl \
     maybe-configure-itcl \
     maybe-configure-ld \
+    maybe-configure-libcpp \
     maybe-configure-libgui \
     maybe-configure-libiberty \
     maybe-configure-libtool \
@@ -612,14 +724,15 @@ configure-host: maybe-configure-gcc  \
     maybe-configure-expect \
     maybe-configure-guile \
     maybe-configure-tk \
-    maybe-configure-tix \
     maybe-configure-libtermcap \
-    maybe-configure-utils
+    maybe-configure-utils \
+    maybe-configure-gnattools
 .PHONY: configure-target
 configure-target:  \
     maybe-configure-target-libstdc++-v3 \
+    maybe-configure-target-libmudflap \
     maybe-configure-target-newlib \
-    maybe-configure-target-libf2c \
+    maybe-configure-target-libgfortran \
     maybe-configure-target-libobjc \
     maybe-configure-target-libtermcap \
     maybe-configure-target-winsup \
@@ -632,14 +745,24 @@ configure-target:  \
     maybe-configure-target-zlib \
     maybe-configure-target-boehm-gc \
     maybe-configure-target-qthreads \
-    maybe-configure-target-rda
-
-# The target built for a native build.
-.PHONY: all.normal
-all.normal: @all_build_modules@ all-host all-target
+    maybe-configure-target-rda \
+    maybe-configure-target-libada
 
+# The target built for a native non-bootstrap build.
+.PHONY: all
+all: unstage all-host all-target stage
+
+.PHONY: all-build
+all-build:  \
+    maybe-all-build-libiberty \
+    maybe-all-build-bison \
+    maybe-all-build-byacc \
+    maybe-all-build-flex \
+    maybe-all-build-m4 \
+    maybe-all-build-texinfo \
+    maybe-all-build-fixincludes
 .PHONY: all-host
-all-host: maybe-all-gcc  \
+all-host:  \
     maybe-all-ash \
     maybe-all-autoconf \
     maybe-all-automake \
@@ -658,8 +781,10 @@ all-host: maybe-all-gcc  \
     maybe-all-fileutils \
     maybe-all-findutils \
     maybe-all-find \
+    maybe-all-fixincludes \
     maybe-all-flex \
     maybe-all-gas \
+    maybe-all-gcc \
     maybe-all-gawk \
     maybe-all-gettext \
     maybe-all-gnuserv \
@@ -671,6 +796,7 @@ all-host: maybe-all-gcc  \
     maybe-all-tcl \
     maybe-all-itcl \
     maybe-all-ld \
+    maybe-all-libcpp \
     maybe-all-libgui \
     maybe-all-libiberty \
     maybe-all-libtool \
@@ -701,14 +827,15 @@ all-host: maybe-all-gcc  \
     maybe-all-expect \
     maybe-all-guile \
     maybe-all-tk \
-    maybe-all-tix \
     maybe-all-libtermcap \
-    maybe-all-utils
+    maybe-all-utils \
+    maybe-all-gnattools
 .PHONY: all-target
 all-target:  \
     maybe-all-target-libstdc++-v3 \
+    maybe-all-target-libmudflap \
     maybe-all-target-newlib \
-    maybe-all-target-libf2c \
+    maybe-all-target-libgfortran \
     maybe-all-target-libobjc \
     maybe-all-target-libtermcap \
     maybe-all-target-winsup \
@@ -721,7 +848,8 @@ all-target:  \
     maybe-all-target-zlib \
     maybe-all-target-boehm-gc \
     maybe-all-target-qthreads \
-    maybe-all-target-rda
+    maybe-all-target-rda \
+    maybe-all-target-libada
 
 # Do a target for all the subdirectories.  A ``make do-X'' will do a
 # ``make X'' in all subdirectories (because, in general, there is a
@@ -729,10 +857,10 @@ all-target:  \
 # but it may do additional work as well).
 
 .PHONY: do-info
-do-info: info-host info-target
+do-info: unstage info-host info-target stage
 
 .PHONY: info-host
-info-host: maybe-info-gcc  \
+info-host:  \
     maybe-info-ash \
     maybe-info-autoconf \
     maybe-info-automake \
@@ -751,8 +879,10 @@ info-host: maybe-info-gcc  \
     maybe-info-fileutils \
     maybe-info-findutils \
     maybe-info-find \
+    maybe-info-fixincludes \
     maybe-info-flex \
     maybe-info-gas \
+    maybe-info-gcc \
     maybe-info-gawk \
     maybe-info-gettext \
     maybe-info-gnuserv \
@@ -764,6 +894,7 @@ info-host: maybe-info-gcc  \
     maybe-info-tcl \
     maybe-info-itcl \
     maybe-info-ld \
+    maybe-info-libcpp \
     maybe-info-libgui \
     maybe-info-libiberty \
     maybe-info-libtool \
@@ -794,15 +925,16 @@ info-host: maybe-info-gcc  \
     maybe-info-expect \
     maybe-info-guile \
     maybe-info-tk \
-    maybe-info-tix \
     maybe-info-libtermcap \
-    maybe-info-utils
+    maybe-info-utils \
+    maybe-info-gnattools
 
 .PHONY: info-target
 info-target:  \
     maybe-info-target-libstdc++-v3 \
+    maybe-info-target-libmudflap \
     maybe-info-target-newlib \
-    maybe-info-target-libf2c \
+    maybe-info-target-libgfortran \
     maybe-info-target-libobjc \
     maybe-info-target-libtermcap \
     maybe-info-target-winsup \
@@ -815,67 +947,1961 @@ info-target:  \
     maybe-info-target-zlib \
     maybe-info-target-boehm-gc \
     maybe-info-target-qthreads \
-    maybe-info-target-rda
+    maybe-info-target-rda \
+    maybe-info-target-libada
 
-# GCC, the eternal special case
-.PHONY: maybe-info-gcc info-gcc
-maybe-info-gcc:
-info-gcc: \
-    configure-gcc 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing info in gcc" ; \
-       (cd gcc && \
-         $(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
+.PHONY: do-dvi
+do-dvi: unstage dvi-host dvi-target stage
 
-# Host modules.
+.PHONY: dvi-host
+dvi-host:  \
+    maybe-dvi-ash \
+    maybe-dvi-autoconf \
+    maybe-dvi-automake \
+    maybe-dvi-bash \
+    maybe-dvi-bfd \
+    maybe-dvi-opcodes \
+    maybe-dvi-binutils \
+    maybe-dvi-bison \
+    maybe-dvi-byacc \
+    maybe-dvi-bzip2 \
+    maybe-dvi-dejagnu \
+    maybe-dvi-diff \
+    maybe-dvi-dosutils \
+    maybe-dvi-etc \
+    maybe-dvi-fastjar \
+    maybe-dvi-fileutils \
+    maybe-dvi-findutils \
+    maybe-dvi-find \
+    maybe-dvi-fixincludes \
+    maybe-dvi-flex \
+    maybe-dvi-gas \
+    maybe-dvi-gcc \
+    maybe-dvi-gawk \
+    maybe-dvi-gettext \
+    maybe-dvi-gnuserv \
+    maybe-dvi-gprof \
+    maybe-dvi-gzip \
+    maybe-dvi-hello \
+    maybe-dvi-indent \
+    maybe-dvi-intl \
+    maybe-dvi-tcl \
+    maybe-dvi-itcl \
+    maybe-dvi-ld \
+    maybe-dvi-libcpp \
+    maybe-dvi-libgui \
+    maybe-dvi-libiberty \
+    maybe-dvi-libtool \
+    maybe-dvi-m4 \
+    maybe-dvi-make \
+    maybe-dvi-mmalloc \
+    maybe-dvi-patch \
+    maybe-dvi-perl \
+    maybe-dvi-prms \
+    maybe-dvi-rcs \
+    maybe-dvi-readline \
+    maybe-dvi-release \
+    maybe-dvi-recode \
+    maybe-dvi-sed \
+    maybe-dvi-send-pr \
+    maybe-dvi-shellutils \
+    maybe-dvi-sid \
+    maybe-dvi-sim \
+    maybe-dvi-tar \
+    maybe-dvi-texinfo \
+    maybe-dvi-textutils \
+    maybe-dvi-time \
+    maybe-dvi-uudecode \
+    maybe-dvi-wdiff \
+    maybe-dvi-zip \
+    maybe-dvi-zlib \
+    maybe-dvi-gdb \
+    maybe-dvi-expect \
+    maybe-dvi-guile \
+    maybe-dvi-tk \
+    maybe-dvi-libtermcap \
+    maybe-dvi-utils \
+    maybe-dvi-gnattools
 
-.PHONY: maybe-info-ash info-ash
-maybe-info-ash:
+.PHONY: dvi-target
+dvi-target:  \
+    maybe-dvi-target-libstdc++-v3 \
+    maybe-dvi-target-libmudflap \
+    maybe-dvi-target-newlib \
+    maybe-dvi-target-libgfortran \
+    maybe-dvi-target-libobjc \
+    maybe-dvi-target-libtermcap \
+    maybe-dvi-target-winsup \
+    maybe-dvi-target-libgloss \
+    maybe-dvi-target-libiberty \
+    maybe-dvi-target-gperf \
+    maybe-dvi-target-examples \
+    maybe-dvi-target-libffi \
+    maybe-dvi-target-libjava \
+    maybe-dvi-target-zlib \
+    maybe-dvi-target-boehm-gc \
+    maybe-dvi-target-qthreads \
+    maybe-dvi-target-rda \
+    maybe-dvi-target-libada
+
+.PHONY: do-html
+do-html: unstage html-host html-target stage
+
+.PHONY: html-host
+html-host:  \
+    maybe-html-ash \
+    maybe-html-autoconf \
+    maybe-html-automake \
+    maybe-html-bash \
+    maybe-html-bfd \
+    maybe-html-opcodes \
+    maybe-html-binutils \
+    maybe-html-bison \
+    maybe-html-byacc \
+    maybe-html-bzip2 \
+    maybe-html-dejagnu \
+    maybe-html-diff \
+    maybe-html-dosutils \
+    maybe-html-etc \
+    maybe-html-fastjar \
+    maybe-html-fileutils \
+    maybe-html-findutils \
+    maybe-html-find \
+    maybe-html-fixincludes \
+    maybe-html-flex \
+    maybe-html-gas \
+    maybe-html-gcc \
+    maybe-html-gawk \
+    maybe-html-gettext \
+    maybe-html-gnuserv \
+    maybe-html-gprof \
+    maybe-html-gzip \
+    maybe-html-hello \
+    maybe-html-indent \
+    maybe-html-intl \
+    maybe-html-tcl \
+    maybe-html-itcl \
+    maybe-html-ld \
+    maybe-html-libcpp \
+    maybe-html-libgui \
+    maybe-html-libiberty \
+    maybe-html-libtool \
+    maybe-html-m4 \
+    maybe-html-make \
+    maybe-html-mmalloc \
+    maybe-html-patch \
+    maybe-html-perl \
+    maybe-html-prms \
+    maybe-html-rcs \
+    maybe-html-readline \
+    maybe-html-release \
+    maybe-html-recode \
+    maybe-html-sed \
+    maybe-html-send-pr \
+    maybe-html-shellutils \
+    maybe-html-sid \
+    maybe-html-sim \
+    maybe-html-tar \
+    maybe-html-texinfo \
+    maybe-html-textutils \
+    maybe-html-time \
+    maybe-html-uudecode \
+    maybe-html-wdiff \
+    maybe-html-zip \
+    maybe-html-zlib \
+    maybe-html-gdb \
+    maybe-html-expect \
+    maybe-html-guile \
+    maybe-html-tk \
+    maybe-html-libtermcap \
+    maybe-html-utils \
+    maybe-html-gnattools
+
+.PHONY: html-target
+html-target:  \
+    maybe-html-target-libstdc++-v3 \
+    maybe-html-target-libmudflap \
+    maybe-html-target-newlib \
+    maybe-html-target-libgfortran \
+    maybe-html-target-libobjc \
+    maybe-html-target-libtermcap \
+    maybe-html-target-winsup \
+    maybe-html-target-libgloss \
+    maybe-html-target-libiberty \
+    maybe-html-target-gperf \
+    maybe-html-target-examples \
+    maybe-html-target-libffi \
+    maybe-html-target-libjava \
+    maybe-html-target-zlib \
+    maybe-html-target-boehm-gc \
+    maybe-html-target-qthreads \
+    maybe-html-target-rda \
+    maybe-html-target-libada
 
-info-ash: \
-    configure-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing info in ash" ; \
-       (cd ash && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+.PHONY: do-TAGS
+do-TAGS: unstage TAGS-host TAGS-target stage
+
+.PHONY: TAGS-host
+TAGS-host:  \
+    maybe-TAGS-ash \
+    maybe-TAGS-autoconf \
+    maybe-TAGS-automake \
+    maybe-TAGS-bash \
+    maybe-TAGS-bfd \
+    maybe-TAGS-opcodes \
+    maybe-TAGS-binutils \
+    maybe-TAGS-bison \
+    maybe-TAGS-byacc \
+    maybe-TAGS-bzip2 \
+    maybe-TAGS-dejagnu \
+    maybe-TAGS-diff \
+    maybe-TAGS-dosutils \
+    maybe-TAGS-etc \
+    maybe-TAGS-fastjar \
+    maybe-TAGS-fileutils \
+    maybe-TAGS-findutils \
+    maybe-TAGS-find \
+    maybe-TAGS-fixincludes \
+    maybe-TAGS-flex \
+    maybe-TAGS-gas \
+    maybe-TAGS-gcc \
+    maybe-TAGS-gawk \
+    maybe-TAGS-gettext \
+    maybe-TAGS-gnuserv \
+    maybe-TAGS-gprof \
+    maybe-TAGS-gzip \
+    maybe-TAGS-hello \
+    maybe-TAGS-indent \
+    maybe-TAGS-intl \
+    maybe-TAGS-tcl \
+    maybe-TAGS-itcl \
+    maybe-TAGS-ld \
+    maybe-TAGS-libcpp \
+    maybe-TAGS-libgui \
+    maybe-TAGS-libiberty \
+    maybe-TAGS-libtool \
+    maybe-TAGS-m4 \
+    maybe-TAGS-make \
+    maybe-TAGS-mmalloc \
+    maybe-TAGS-patch \
+    maybe-TAGS-perl \
+    maybe-TAGS-prms \
+    maybe-TAGS-rcs \
+    maybe-TAGS-readline \
+    maybe-TAGS-release \
+    maybe-TAGS-recode \
+    maybe-TAGS-sed \
+    maybe-TAGS-send-pr \
+    maybe-TAGS-shellutils \
+    maybe-TAGS-sid \
+    maybe-TAGS-sim \
+    maybe-TAGS-tar \
+    maybe-TAGS-texinfo \
+    maybe-TAGS-textutils \
+    maybe-TAGS-time \
+    maybe-TAGS-uudecode \
+    maybe-TAGS-wdiff \
+    maybe-TAGS-zip \
+    maybe-TAGS-zlib \
+    maybe-TAGS-gdb \
+    maybe-TAGS-expect \
+    maybe-TAGS-guile \
+    maybe-TAGS-tk \
+    maybe-TAGS-libtermcap \
+    maybe-TAGS-utils \
+    maybe-TAGS-gnattools
+
+.PHONY: TAGS-target
+TAGS-target:  \
+    maybe-TAGS-target-libstdc++-v3 \
+    maybe-TAGS-target-libmudflap \
+    maybe-TAGS-target-newlib \
+    maybe-TAGS-target-libgfortran \
+    maybe-TAGS-target-libobjc \
+    maybe-TAGS-target-libtermcap \
+    maybe-TAGS-target-winsup \
+    maybe-TAGS-target-libgloss \
+    maybe-TAGS-target-libiberty \
+    maybe-TAGS-target-gperf \
+    maybe-TAGS-target-examples \
+    maybe-TAGS-target-libffi \
+    maybe-TAGS-target-libjava \
+    maybe-TAGS-target-zlib \
+    maybe-TAGS-target-boehm-gc \
+    maybe-TAGS-target-qthreads \
+    maybe-TAGS-target-rda \
+    maybe-TAGS-target-libada
+
+.PHONY: do-install-info
+do-install-info: unstage install-info-host install-info-target stage
+
+.PHONY: install-info-host
+install-info-host:  \
+    maybe-install-info-ash \
+    maybe-install-info-autoconf \
+    maybe-install-info-automake \
+    maybe-install-info-bash \
+    maybe-install-info-bfd \
+    maybe-install-info-opcodes \
+    maybe-install-info-binutils \
+    maybe-install-info-bison \
+    maybe-install-info-byacc \
+    maybe-install-info-bzip2 \
+    maybe-install-info-dejagnu \
+    maybe-install-info-diff \
+    maybe-install-info-dosutils \
+    maybe-install-info-etc \
+    maybe-install-info-fastjar \
+    maybe-install-info-fileutils \
+    maybe-install-info-findutils \
+    maybe-install-info-find \
+    maybe-install-info-fixincludes \
+    maybe-install-info-flex \
+    maybe-install-info-gas \
+    maybe-install-info-gcc \
+    maybe-install-info-gawk \
+    maybe-install-info-gettext \
+    maybe-install-info-gnuserv \
+    maybe-install-info-gprof \
+    maybe-install-info-gzip \
+    maybe-install-info-hello \
+    maybe-install-info-indent \
+    maybe-install-info-intl \
+    maybe-install-info-tcl \
+    maybe-install-info-itcl \
+    maybe-install-info-ld \
+    maybe-install-info-libcpp \
+    maybe-install-info-libgui \
+    maybe-install-info-libiberty \
+    maybe-install-info-libtool \
+    maybe-install-info-m4 \
+    maybe-install-info-make \
+    maybe-install-info-mmalloc \
+    maybe-install-info-patch \
+    maybe-install-info-perl \
+    maybe-install-info-prms \
+    maybe-install-info-rcs \
+    maybe-install-info-readline \
+    maybe-install-info-release \
+    maybe-install-info-recode \
+    maybe-install-info-sed \
+    maybe-install-info-send-pr \
+    maybe-install-info-shellutils \
+    maybe-install-info-sid \
+    maybe-install-info-sim \
+    maybe-install-info-tar \
+    maybe-install-info-texinfo \
+    maybe-install-info-textutils \
+    maybe-install-info-time \
+    maybe-install-info-uudecode \
+    maybe-install-info-wdiff \
+    maybe-install-info-zip \
+    maybe-install-info-zlib \
+    maybe-install-info-gdb \
+    maybe-install-info-expect \
+    maybe-install-info-guile \
+    maybe-install-info-tk \
+    maybe-install-info-libtermcap \
+    maybe-install-info-utils \
+    maybe-install-info-gnattools
+
+.PHONY: install-info-target
+install-info-target:  \
+    maybe-install-info-target-libstdc++-v3 \
+    maybe-install-info-target-libmudflap \
+    maybe-install-info-target-newlib \
+    maybe-install-info-target-libgfortran \
+    maybe-install-info-target-libobjc \
+    maybe-install-info-target-libtermcap \
+    maybe-install-info-target-winsup \
+    maybe-install-info-target-libgloss \
+    maybe-install-info-target-libiberty \
+    maybe-install-info-target-gperf \
+    maybe-install-info-target-examples \
+    maybe-install-info-target-libffi \
+    maybe-install-info-target-libjava \
+    maybe-install-info-target-zlib \
+    maybe-install-info-target-boehm-gc \
+    maybe-install-info-target-qthreads \
+    maybe-install-info-target-rda \
+    maybe-install-info-target-libada
+
+.PHONY: do-installcheck
+do-installcheck: unstage installcheck-host installcheck-target stage
+
+.PHONY: installcheck-host
+installcheck-host:  \
+    maybe-installcheck-ash \
+    maybe-installcheck-autoconf \
+    maybe-installcheck-automake \
+    maybe-installcheck-bash \
+    maybe-installcheck-bfd \
+    maybe-installcheck-opcodes \
+    maybe-installcheck-binutils \
+    maybe-installcheck-bison \
+    maybe-installcheck-byacc \
+    maybe-installcheck-bzip2 \
+    maybe-installcheck-dejagnu \
+    maybe-installcheck-diff \
+    maybe-installcheck-dosutils \
+    maybe-installcheck-etc \
+    maybe-installcheck-fastjar \
+    maybe-installcheck-fileutils \
+    maybe-installcheck-findutils \
+    maybe-installcheck-find \
+    maybe-installcheck-fixincludes \
+    maybe-installcheck-flex \
+    maybe-installcheck-gas \
+    maybe-installcheck-gcc \
+    maybe-installcheck-gawk \
+    maybe-installcheck-gettext \
+    maybe-installcheck-gnuserv \
+    maybe-installcheck-gprof \
+    maybe-installcheck-gzip \
+    maybe-installcheck-hello \
+    maybe-installcheck-indent \
+    maybe-installcheck-intl \
+    maybe-installcheck-tcl \
+    maybe-installcheck-itcl \
+    maybe-installcheck-ld \
+    maybe-installcheck-libcpp \
+    maybe-installcheck-libgui \
+    maybe-installcheck-libiberty \
+    maybe-installcheck-libtool \
+    maybe-installcheck-m4 \
+    maybe-installcheck-make \
+    maybe-installcheck-mmalloc \
+    maybe-installcheck-patch \
+    maybe-installcheck-perl \
+    maybe-installcheck-prms \
+    maybe-installcheck-rcs \
+    maybe-installcheck-readline \
+    maybe-installcheck-release \
+    maybe-installcheck-recode \
+    maybe-installcheck-sed \
+    maybe-installcheck-send-pr \
+    maybe-installcheck-shellutils \
+    maybe-installcheck-sid \
+    maybe-installcheck-sim \
+    maybe-installcheck-tar \
+    maybe-installcheck-texinfo \
+    maybe-installcheck-textutils \
+    maybe-installcheck-time \
+    maybe-installcheck-uudecode \
+    maybe-installcheck-wdiff \
+    maybe-installcheck-zip \
+    maybe-installcheck-zlib \
+    maybe-installcheck-gdb \
+    maybe-installcheck-expect \
+    maybe-installcheck-guile \
+    maybe-installcheck-tk \
+    maybe-installcheck-libtermcap \
+    maybe-installcheck-utils \
+    maybe-installcheck-gnattools
+
+.PHONY: installcheck-target
+installcheck-target:  \
+    maybe-installcheck-target-libstdc++-v3 \
+    maybe-installcheck-target-libmudflap \
+    maybe-installcheck-target-newlib \
+    maybe-installcheck-target-libgfortran \
+    maybe-installcheck-target-libobjc \
+    maybe-installcheck-target-libtermcap \
+    maybe-installcheck-target-winsup \
+    maybe-installcheck-target-libgloss \
+    maybe-installcheck-target-libiberty \
+    maybe-installcheck-target-gperf \
+    maybe-installcheck-target-examples \
+    maybe-installcheck-target-libffi \
+    maybe-installcheck-target-libjava \
+    maybe-installcheck-target-zlib \
+    maybe-installcheck-target-boehm-gc \
+    maybe-installcheck-target-qthreads \
+    maybe-installcheck-target-rda \
+    maybe-installcheck-target-libada
+
+.PHONY: do-mostlyclean
+do-mostlyclean: unstage mostlyclean-host mostlyclean-target stage
+
+.PHONY: mostlyclean-host
+mostlyclean-host:  \
+    maybe-mostlyclean-ash \
+    maybe-mostlyclean-autoconf \
+    maybe-mostlyclean-automake \
+    maybe-mostlyclean-bash \
+    maybe-mostlyclean-bfd \
+    maybe-mostlyclean-opcodes \
+    maybe-mostlyclean-binutils \
+    maybe-mostlyclean-bison \
+    maybe-mostlyclean-byacc \
+    maybe-mostlyclean-bzip2 \
+    maybe-mostlyclean-dejagnu \
+    maybe-mostlyclean-diff \
+    maybe-mostlyclean-dosutils \
+    maybe-mostlyclean-etc \
+    maybe-mostlyclean-fastjar \
+    maybe-mostlyclean-fileutils \
+    maybe-mostlyclean-findutils \
+    maybe-mostlyclean-find \
+    maybe-mostlyclean-fixincludes \
+    maybe-mostlyclean-flex \
+    maybe-mostlyclean-gas \
+    maybe-mostlyclean-gcc \
+    maybe-mostlyclean-gawk \
+    maybe-mostlyclean-gettext \
+    maybe-mostlyclean-gnuserv \
+    maybe-mostlyclean-gprof \
+    maybe-mostlyclean-gzip \
+    maybe-mostlyclean-hello \
+    maybe-mostlyclean-indent \
+    maybe-mostlyclean-intl \
+    maybe-mostlyclean-tcl \
+    maybe-mostlyclean-itcl \
+    maybe-mostlyclean-ld \
+    maybe-mostlyclean-libcpp \
+    maybe-mostlyclean-libgui \
+    maybe-mostlyclean-libiberty \
+    maybe-mostlyclean-libtool \
+    maybe-mostlyclean-m4 \
+    maybe-mostlyclean-make \
+    maybe-mostlyclean-mmalloc \
+    maybe-mostlyclean-patch \
+    maybe-mostlyclean-perl \
+    maybe-mostlyclean-prms \
+    maybe-mostlyclean-rcs \
+    maybe-mostlyclean-readline \
+    maybe-mostlyclean-release \
+    maybe-mostlyclean-recode \
+    maybe-mostlyclean-sed \
+    maybe-mostlyclean-send-pr \
+    maybe-mostlyclean-shellutils \
+    maybe-mostlyclean-sid \
+    maybe-mostlyclean-sim \
+    maybe-mostlyclean-tar \
+    maybe-mostlyclean-texinfo \
+    maybe-mostlyclean-textutils \
+    maybe-mostlyclean-time \
+    maybe-mostlyclean-uudecode \
+    maybe-mostlyclean-wdiff \
+    maybe-mostlyclean-zip \
+    maybe-mostlyclean-zlib \
+    maybe-mostlyclean-gdb \
+    maybe-mostlyclean-expect \
+    maybe-mostlyclean-guile \
+    maybe-mostlyclean-tk \
+    maybe-mostlyclean-libtermcap \
+    maybe-mostlyclean-utils \
+    maybe-mostlyclean-gnattools
+
+.PHONY: mostlyclean-target
+mostlyclean-target:  \
+    maybe-mostlyclean-target-libstdc++-v3 \
+    maybe-mostlyclean-target-libmudflap \
+    maybe-mostlyclean-target-newlib \
+    maybe-mostlyclean-target-libgfortran \
+    maybe-mostlyclean-target-libobjc \
+    maybe-mostlyclean-target-libtermcap \
+    maybe-mostlyclean-target-winsup \
+    maybe-mostlyclean-target-libgloss \
+    maybe-mostlyclean-target-libiberty \
+    maybe-mostlyclean-target-gperf \
+    maybe-mostlyclean-target-examples \
+    maybe-mostlyclean-target-libffi \
+    maybe-mostlyclean-target-libjava \
+    maybe-mostlyclean-target-zlib \
+    maybe-mostlyclean-target-boehm-gc \
+    maybe-mostlyclean-target-qthreads \
+    maybe-mostlyclean-target-rda \
+    maybe-mostlyclean-target-libada
+
+.PHONY: do-clean
+do-clean: unstage clean-host clean-target stage
+
+.PHONY: clean-host
+clean-host:  \
+    maybe-clean-ash \
+    maybe-clean-autoconf \
+    maybe-clean-automake \
+    maybe-clean-bash \
+    maybe-clean-bfd \
+    maybe-clean-opcodes \
+    maybe-clean-binutils \
+    maybe-clean-bison \
+    maybe-clean-byacc \
+    maybe-clean-bzip2 \
+    maybe-clean-dejagnu \
+    maybe-clean-diff \
+    maybe-clean-dosutils \
+    maybe-clean-etc \
+    maybe-clean-fastjar \
+    maybe-clean-fileutils \
+    maybe-clean-findutils \
+    maybe-clean-find \
+    maybe-clean-fixincludes \
+    maybe-clean-flex \
+    maybe-clean-gas \
+    maybe-clean-gcc \
+    maybe-clean-gawk \
+    maybe-clean-gettext \
+    maybe-clean-gnuserv \
+    maybe-clean-gprof \
+    maybe-clean-gzip \
+    maybe-clean-hello \
+    maybe-clean-indent \
+    maybe-clean-intl \
+    maybe-clean-tcl \
+    maybe-clean-itcl \
+    maybe-clean-ld \
+    maybe-clean-libcpp \
+    maybe-clean-libgui \
+    maybe-clean-libiberty \
+    maybe-clean-libtool \
+    maybe-clean-m4 \
+    maybe-clean-make \
+    maybe-clean-mmalloc \
+    maybe-clean-patch \
+    maybe-clean-perl \
+    maybe-clean-prms \
+    maybe-clean-rcs \
+    maybe-clean-readline \
+    maybe-clean-release \
+    maybe-clean-recode \
+    maybe-clean-sed \
+    maybe-clean-send-pr \
+    maybe-clean-shellutils \
+    maybe-clean-sid \
+    maybe-clean-sim \
+    maybe-clean-tar \
+    maybe-clean-texinfo \
+    maybe-clean-textutils \
+    maybe-clean-time \
+    maybe-clean-uudecode \
+    maybe-clean-wdiff \
+    maybe-clean-zip \
+    maybe-clean-zlib \
+    maybe-clean-gdb \
+    maybe-clean-expect \
+    maybe-clean-guile \
+    maybe-clean-tk \
+    maybe-clean-libtermcap \
+    maybe-clean-utils \
+    maybe-clean-gnattools
+
+.PHONY: clean-target
+clean-target:  \
+    maybe-clean-target-libstdc++-v3 \
+    maybe-clean-target-libmudflap \
+    maybe-clean-target-newlib \
+    maybe-clean-target-libgfortran \
+    maybe-clean-target-libobjc \
+    maybe-clean-target-libtermcap \
+    maybe-clean-target-winsup \
+    maybe-clean-target-libgloss \
+    maybe-clean-target-libiberty \
+    maybe-clean-target-gperf \
+    maybe-clean-target-examples \
+    maybe-clean-target-libffi \
+    maybe-clean-target-libjava \
+    maybe-clean-target-zlib \
+    maybe-clean-target-boehm-gc \
+    maybe-clean-target-qthreads \
+    maybe-clean-target-rda \
+    maybe-clean-target-libada
+
+.PHONY: do-distclean
+do-distclean: unstage distclean-host distclean-target stage
+
+.PHONY: distclean-host
+distclean-host:  \
+    maybe-distclean-ash \
+    maybe-distclean-autoconf \
+    maybe-distclean-automake \
+    maybe-distclean-bash \
+    maybe-distclean-bfd \
+    maybe-distclean-opcodes \
+    maybe-distclean-binutils \
+    maybe-distclean-bison \
+    maybe-distclean-byacc \
+    maybe-distclean-bzip2 \
+    maybe-distclean-dejagnu \
+    maybe-distclean-diff \
+    maybe-distclean-dosutils \
+    maybe-distclean-etc \
+    maybe-distclean-fastjar \
+    maybe-distclean-fileutils \
+    maybe-distclean-findutils \
+    maybe-distclean-find \
+    maybe-distclean-fixincludes \
+    maybe-distclean-flex \
+    maybe-distclean-gas \
+    maybe-distclean-gcc \
+    maybe-distclean-gawk \
+    maybe-distclean-gettext \
+    maybe-distclean-gnuserv \
+    maybe-distclean-gprof \
+    maybe-distclean-gzip \
+    maybe-distclean-hello \
+    maybe-distclean-indent \
+    maybe-distclean-intl \
+    maybe-distclean-tcl \
+    maybe-distclean-itcl \
+    maybe-distclean-ld \
+    maybe-distclean-libcpp \
+    maybe-distclean-libgui \
+    maybe-distclean-libiberty \
+    maybe-distclean-libtool \
+    maybe-distclean-m4 \
+    maybe-distclean-make \
+    maybe-distclean-mmalloc \
+    maybe-distclean-patch \
+    maybe-distclean-perl \
+    maybe-distclean-prms \
+    maybe-distclean-rcs \
+    maybe-distclean-readline \
+    maybe-distclean-release \
+    maybe-distclean-recode \
+    maybe-distclean-sed \
+    maybe-distclean-send-pr \
+    maybe-distclean-shellutils \
+    maybe-distclean-sid \
+    maybe-distclean-sim \
+    maybe-distclean-tar \
+    maybe-distclean-texinfo \
+    maybe-distclean-textutils \
+    maybe-distclean-time \
+    maybe-distclean-uudecode \
+    maybe-distclean-wdiff \
+    maybe-distclean-zip \
+    maybe-distclean-zlib \
+    maybe-distclean-gdb \
+    maybe-distclean-expect \
+    maybe-distclean-guile \
+    maybe-distclean-tk \
+    maybe-distclean-libtermcap \
+    maybe-distclean-utils \
+    maybe-distclean-gnattools
+
+.PHONY: distclean-target
+distclean-target:  \
+    maybe-distclean-target-libstdc++-v3 \
+    maybe-distclean-target-libmudflap \
+    maybe-distclean-target-newlib \
+    maybe-distclean-target-libgfortran \
+    maybe-distclean-target-libobjc \
+    maybe-distclean-target-libtermcap \
+    maybe-distclean-target-winsup \
+    maybe-distclean-target-libgloss \
+    maybe-distclean-target-libiberty \
+    maybe-distclean-target-gperf \
+    maybe-distclean-target-examples \
+    maybe-distclean-target-libffi \
+    maybe-distclean-target-libjava \
+    maybe-distclean-target-zlib \
+    maybe-distclean-target-boehm-gc \
+    maybe-distclean-target-qthreads \
+    maybe-distclean-target-rda \
+    maybe-distclean-target-libada
+
+.PHONY: do-maintainer-clean
+do-maintainer-clean: unstage maintainer-clean-host maintainer-clean-target stage
+
+.PHONY: maintainer-clean-host
+maintainer-clean-host:  \
+    maybe-maintainer-clean-ash \
+    maybe-maintainer-clean-autoconf \
+    maybe-maintainer-clean-automake \
+    maybe-maintainer-clean-bash \
+    maybe-maintainer-clean-bfd \
+    maybe-maintainer-clean-opcodes \
+    maybe-maintainer-clean-binutils \
+    maybe-maintainer-clean-bison \
+    maybe-maintainer-clean-byacc \
+    maybe-maintainer-clean-bzip2 \
+    maybe-maintainer-clean-dejagnu \
+    maybe-maintainer-clean-diff \
+    maybe-maintainer-clean-dosutils \
+    maybe-maintainer-clean-etc \
+    maybe-maintainer-clean-fastjar \
+    maybe-maintainer-clean-fileutils \
+    maybe-maintainer-clean-findutils \
+    maybe-maintainer-clean-find \
+    maybe-maintainer-clean-fixincludes \
+    maybe-maintainer-clean-flex \
+    maybe-maintainer-clean-gas \
+    maybe-maintainer-clean-gcc \
+    maybe-maintainer-clean-gawk \
+    maybe-maintainer-clean-gettext \
+    maybe-maintainer-clean-gnuserv \
+    maybe-maintainer-clean-gprof \
+    maybe-maintainer-clean-gzip \
+    maybe-maintainer-clean-hello \
+    maybe-maintainer-clean-indent \
+    maybe-maintainer-clean-intl \
+    maybe-maintainer-clean-tcl \
+    maybe-maintainer-clean-itcl \
+    maybe-maintainer-clean-ld \
+    maybe-maintainer-clean-libcpp \
+    maybe-maintainer-clean-libgui \
+    maybe-maintainer-clean-libiberty \
+    maybe-maintainer-clean-libtool \
+    maybe-maintainer-clean-m4 \
+    maybe-maintainer-clean-make \
+    maybe-maintainer-clean-mmalloc \
+    maybe-maintainer-clean-patch \
+    maybe-maintainer-clean-perl \
+    maybe-maintainer-clean-prms \
+    maybe-maintainer-clean-rcs \
+    maybe-maintainer-clean-readline \
+    maybe-maintainer-clean-release \
+    maybe-maintainer-clean-recode \
+    maybe-maintainer-clean-sed \
+    maybe-maintainer-clean-send-pr \
+    maybe-maintainer-clean-shellutils \
+    maybe-maintainer-clean-sid \
+    maybe-maintainer-clean-sim \
+    maybe-maintainer-clean-tar \
+    maybe-maintainer-clean-texinfo \
+    maybe-maintainer-clean-textutils \
+    maybe-maintainer-clean-time \
+    maybe-maintainer-clean-uudecode \
+    maybe-maintainer-clean-wdiff \
+    maybe-maintainer-clean-zip \
+    maybe-maintainer-clean-zlib \
+    maybe-maintainer-clean-gdb \
+    maybe-maintainer-clean-expect \
+    maybe-maintainer-clean-guile \
+    maybe-maintainer-clean-tk \
+    maybe-maintainer-clean-libtermcap \
+    maybe-maintainer-clean-utils \
+    maybe-maintainer-clean-gnattools
+
+.PHONY: maintainer-clean-target
+maintainer-clean-target:  \
+    maybe-maintainer-clean-target-libstdc++-v3 \
+    maybe-maintainer-clean-target-libmudflap \
+    maybe-maintainer-clean-target-newlib \
+    maybe-maintainer-clean-target-libgfortran \
+    maybe-maintainer-clean-target-libobjc \
+    maybe-maintainer-clean-target-libtermcap \
+    maybe-maintainer-clean-target-winsup \
+    maybe-maintainer-clean-target-libgloss \
+    maybe-maintainer-clean-target-libiberty \
+    maybe-maintainer-clean-target-gperf \
+    maybe-maintainer-clean-target-examples \
+    maybe-maintainer-clean-target-libffi \
+    maybe-maintainer-clean-target-libjava \
+    maybe-maintainer-clean-target-zlib \
+    maybe-maintainer-clean-target-boehm-gc \
+    maybe-maintainer-clean-target-qthreads \
+    maybe-maintainer-clean-target-rda \
+    maybe-maintainer-clean-target-libada
+
+
+# Here are the targets which correspond to the do-X targets.
+
+.PHONY: info installcheck dvi html install-info
+.PHONY: clean distclean mostlyclean maintainer-clean realclean
+.PHONY: local-clean local-distclean local-maintainer-clean
+info: do-info
+installcheck: do-installcheck
+dvi: do-dvi
+html: do-html
+
+# Make sure makeinfo is built before we do a `make info', if we're
+# in fact building texinfo.
+do-info: maybe-all-texinfo
+
+install-info: do-install-info dir.info
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       if [ -f dir.info ] ; then \
+         $(INSTALL_DATA) dir.info $(DESTDIR)$(infodir)/dir.info ; \
+       else true ; fi
+
+local-clean:
+       -rm -f *.a TEMP errs core *.o *~ \#* TAGS *.E *.log
+
+local-distclean:
+       -rm -f Makefile config.status config.cache mh-frag mt-frag
+       -rm -f multilib.out multilib.tmp maybedep.tmp serdep.tmp
+       -if [ "$(TARGET_SUBDIR)" != "." ]; then \
+         rm -rf $(TARGET_SUBDIR); \
+       else true; fi
+       -rm -rf $(BUILD_SUBDIR)
+       -if [ "$(HOST_SUBDIR)" != "." ]; then \
+         rm -rf $(HOST_SUBDIR); \
+       else true; fi
+       -rm -f texinfo/po/Makefile texinfo/po/Makefile.in texinfo/info/Makefile
+       -rm -f texinfo/doc/Makefile texinfo/po/POTFILES
+       -rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null
+       -rmdir texinfo/makeinfo texinfo/po texinfo/util 2>/dev/null
+       -rmdir fastjar gcc libiberty texinfo zlib 2>/dev/null
+
+local-maintainer-clean:
+       @echo "This command is intended for maintainers to use;"
+       @echo "it deletes files that may require special tools to rebuild."
+
+clean: do-clean local-clean
+mostlyclean: do-mostlyclean local-clean
+distclean: do-distclean local-clean local-distclean
+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
+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
+
+# Check target.
+
+.PHONY: check do-check
+check: do-check
+
+# Only include modules actually being configured and built.
+do-check: unstage  \
+    maybe-check-ash \
+    maybe-check-autoconf \
+    maybe-check-automake \
+    maybe-check-bash \
+    maybe-check-bfd \
+    maybe-check-opcodes \
+    maybe-check-binutils \
+    maybe-check-bison \
+    maybe-check-byacc \
+    maybe-check-bzip2 \
+    maybe-check-dejagnu \
+    maybe-check-diff \
+    maybe-check-dosutils \
+    maybe-check-etc \
+    maybe-check-fastjar \
+    maybe-check-fileutils \
+    maybe-check-findutils \
+    maybe-check-find \
+    maybe-check-fixincludes \
+    maybe-check-flex \
+    maybe-check-gas \
+    maybe-check-gcc \
+    maybe-check-gawk \
+    maybe-check-gettext \
+    maybe-check-gnuserv \
+    maybe-check-gprof \
+    maybe-check-gzip \
+    maybe-check-hello \
+    maybe-check-indent \
+    maybe-check-intl \
+    maybe-check-tcl \
+    maybe-check-itcl \
+    maybe-check-ld \
+    maybe-check-libcpp \
+    maybe-check-libgui \
+    maybe-check-libiberty \
+    maybe-check-libtool \
+    maybe-check-m4 \
+    maybe-check-make \
+    maybe-check-mmalloc \
+    maybe-check-patch \
+    maybe-check-perl \
+    maybe-check-prms \
+    maybe-check-rcs \
+    maybe-check-readline \
+    maybe-check-release \
+    maybe-check-recode \
+    maybe-check-sed \
+    maybe-check-send-pr \
+    maybe-check-shellutils \
+    maybe-check-sid \
+    maybe-check-sim \
+    maybe-check-tar \
+    maybe-check-texinfo \
+    maybe-check-textutils \
+    maybe-check-time \
+    maybe-check-uudecode \
+    maybe-check-wdiff \
+    maybe-check-zip \
+    maybe-check-zlib \
+    maybe-check-gdb \
+    maybe-check-expect \
+    maybe-check-guile \
+    maybe-check-tk \
+    maybe-check-libtermcap \
+    maybe-check-utils \
+    maybe-check-gnattools \
+    maybe-check-target-libstdc++-v3 \
+    maybe-check-target-libmudflap \
+    maybe-check-target-newlib \
+    maybe-check-target-libgfortran \
+    maybe-check-target-libobjc \
+    maybe-check-target-libtermcap \
+    maybe-check-target-winsup \
+    maybe-check-target-libgloss \
+    maybe-check-target-libiberty \
+    maybe-check-target-gperf \
+    maybe-check-target-examples \
+    maybe-check-target-libffi \
+    maybe-check-target-libjava \
+    maybe-check-target-zlib \
+    maybe-check-target-boehm-gc \
+    maybe-check-target-qthreads \
+    maybe-check-target-rda \
+    maybe-check-target-libada stage
+
+# Automated reporting of test results.
+
+warning.log: build.log
+       $(srcdir)/contrib/warn_summary build.log > $@
+
+mail-report.log:
+       if test x'$(BOOT_CFLAGS)' != x''; then \
+           BOOT_CFLAGS='$(BOOT_CFLAGS)'; export BOOT_CFLAGS; \
+       fi; \
+       $(srcdir)/contrib/test_summary -t >$@
+       chmod +x $@
+       echo If you really want to send e-mail, run ./$@ now
+
+mail-report-with-warnings.log: warning.log
+       if test x'$(BOOT_CFLAGS)' != x''; then \
+           BOOT_CFLAGS='$(BOOT_CFLAGS)'; export BOOT_CFLAGS; \
+       fi; \
+       $(srcdir)/contrib/test_summary -t -i warning.log >$@
+       chmod +x $@
+       echo If you really want to send e-mail, run ./$@ now
+
+# Installation targets.
+
+.PHONY: install uninstall
+install: installdirs install-host install-target
+
+.PHONY: install-host-nogcc
+install-host-nogcc:  \
+    maybe-install-ash \
+    maybe-install-autoconf \
+    maybe-install-automake \
+    maybe-install-bash \
+    maybe-install-bfd \
+    maybe-install-opcodes \
+    maybe-install-binutils \
+    maybe-install-bison \
+    maybe-install-byacc \
+    maybe-install-bzip2 \
+    maybe-install-dejagnu \
+    maybe-install-diff \
+    maybe-install-dosutils \
+    maybe-install-etc \
+    maybe-install-fastjar \
+    maybe-install-fileutils \
+    maybe-install-findutils \
+    maybe-install-find \
+    maybe-install-fixincludes \
+    maybe-install-flex \
+    maybe-install-gas \
+    maybe-install-gawk \
+    maybe-install-gettext \
+    maybe-install-gnuserv \
+    maybe-install-gprof \
+    maybe-install-gzip \
+    maybe-install-hello \
+    maybe-install-indent \
+    maybe-install-intl \
+    maybe-install-tcl \
+    maybe-install-itcl \
+    maybe-install-ld \
+    maybe-install-libcpp \
+    maybe-install-libgui \
+    maybe-install-libiberty \
+    maybe-install-libtool \
+    maybe-install-m4 \
+    maybe-install-make \
+    maybe-install-mmalloc \
+    maybe-install-patch \
+    maybe-install-perl \
+    maybe-install-prms \
+    maybe-install-rcs \
+    maybe-install-readline \
+    maybe-install-release \
+    maybe-install-recode \
+    maybe-install-sed \
+    maybe-install-send-pr \
+    maybe-install-shellutils \
+    maybe-install-sid \
+    maybe-install-sim \
+    maybe-install-tar \
+    maybe-install-texinfo \
+    maybe-install-textutils \
+    maybe-install-time \
+    maybe-install-uudecode \
+    maybe-install-wdiff \
+    maybe-install-zip \
+    maybe-install-zlib \
+    maybe-install-gdb \
+    maybe-install-expect \
+    maybe-install-guile \
+    maybe-install-tk \
+    maybe-install-libtermcap \
+    maybe-install-utils \
+    maybe-install-gnattools
+
+.PHONY: install-host
+install-host:  \
+    maybe-install-ash \
+    maybe-install-autoconf \
+    maybe-install-automake \
+    maybe-install-bash \
+    maybe-install-bfd \
+    maybe-install-opcodes \
+    maybe-install-binutils \
+    maybe-install-bison \
+    maybe-install-byacc \
+    maybe-install-bzip2 \
+    maybe-install-dejagnu \
+    maybe-install-diff \
+    maybe-install-dosutils \
+    maybe-install-etc \
+    maybe-install-fastjar \
+    maybe-install-fileutils \
+    maybe-install-findutils \
+    maybe-install-find \
+    maybe-install-fixincludes \
+    maybe-install-flex \
+    maybe-install-gas \
+    maybe-install-gcc \
+    maybe-install-gawk \
+    maybe-install-gettext \
+    maybe-install-gnuserv \
+    maybe-install-gprof \
+    maybe-install-gzip \
+    maybe-install-hello \
+    maybe-install-indent \
+    maybe-install-intl \
+    maybe-install-tcl \
+    maybe-install-itcl \
+    maybe-install-ld \
+    maybe-install-libcpp \
+    maybe-install-libgui \
+    maybe-install-libiberty \
+    maybe-install-libtool \
+    maybe-install-m4 \
+    maybe-install-make \
+    maybe-install-mmalloc \
+    maybe-install-patch \
+    maybe-install-perl \
+    maybe-install-prms \
+    maybe-install-rcs \
+    maybe-install-readline \
+    maybe-install-release \
+    maybe-install-recode \
+    maybe-install-sed \
+    maybe-install-send-pr \
+    maybe-install-shellutils \
+    maybe-install-sid \
+    maybe-install-sim \
+    maybe-install-tar \
+    maybe-install-texinfo \
+    maybe-install-textutils \
+    maybe-install-time \
+    maybe-install-uudecode \
+    maybe-install-wdiff \
+    maybe-install-zip \
+    maybe-install-zlib \
+    maybe-install-gdb \
+    maybe-install-expect \
+    maybe-install-guile \
+    maybe-install-tk \
+    maybe-install-libtermcap \
+    maybe-install-utils \
+    maybe-install-gnattools
+
+.PHONY: install-target
+install-target:  \
+    maybe-install-target-libstdc++-v3 \
+    maybe-install-target-libmudflap \
+    maybe-install-target-newlib \
+    maybe-install-target-libgfortran \
+    maybe-install-target-libobjc \
+    maybe-install-target-libtermcap \
+    maybe-install-target-winsup \
+    maybe-install-target-libgloss \
+    maybe-install-target-libiberty \
+    maybe-install-target-gperf \
+    maybe-install-target-examples \
+    maybe-install-target-libffi \
+    maybe-install-target-libjava \
+    maybe-install-target-zlib \
+    maybe-install-target-boehm-gc \
+    maybe-install-target-qthreads \
+    maybe-install-target-rda \
+    maybe-install-target-libada
+
+uninstall:
+       @echo "the uninstall target is not supported in this tree"
+
+.PHONY: install.all
+install.all: install-no-fixedincludes
+       @if [ -f ./gcc/Makefile ] ; then \
+               r=`${PWD_COMMAND}` ; export r ; \
+               $(HOST_EXPORTS) \
+               (cd ./gcc && \
+               $(MAKE) $(FLAGS_TO_PASS) install-headers) ; \
+       else \
+               true ; \
+       fi
+
+# install-no-fixedincludes is used because Cygnus can not distribute
+# the fixed header files.
+.PHONY: install-no-fixedincludes
+install-no-fixedincludes: installdirs install-host-nogcc \
+       install-target gcc-no-fixedincludes
+
+### other supporting targets
+
+MAKEDIRS= \
+       $(DESTDIR)$(prefix) \
+       $(DESTDIR)$(exec_prefix)
+.PHONY: installdirs
+installdirs: mkinstalldirs
+       $(SHELL) $(srcdir)/mkinstalldirs $(MAKEDIRS)
+
+dir.info: do-install-info
+       if [ -f $(srcdir)/texinfo/gen-info-dir ] ; then \
+         $(srcdir)/texinfo/gen-info-dir $(DESTDIR)$(infodir) $(srcdir)/texinfo/dir.info-template > dir.info.new ; \
+         mv -f dir.info.new dir.info ; \
+       else true ; \
+       fi
+
+dist:
+       @echo "Building a full distribution of this tree isn't done"
+       @echo "via 'make dist'.  Check out the etc/ subdirectory" 
+
+etags tags: TAGS
+
+# Right now this just builds TAGS in each subdirectory.  emacs19 has the
+# ability to use several tags files at once, so there is probably no need
+# to combine them into one big TAGS file (like CVS 1.3 does).  We could
+# (if we felt like it) have this Makefile write a piece of elisp which
+# the user could load to tell emacs19 where all the TAGS files we just
+# built are.
+TAGS: do-TAGS
+
+# ------------------------------------
+# Macros for configure and all targets
+# ------------------------------------
+
+
+
+
+
+# --------------------------------------
+# Modules which run on the build machine
+# --------------------------------------
+
+
+.PHONY: configure-build-libiberty maybe-configure-build-libiberty
+maybe-configure-build-libiberty:
+@if build-libiberty
+maybe-configure-build-libiberty: configure-build-libiberty
+configure-build-libiberty: 
+       @test ! -f $(BUILD_SUBDIR)/libiberty/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libiberty ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/libiberty; \
+       cd "$(BUILD_SUBDIR)/libiberty" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(BUILD_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif build-libiberty
+
+
+
+.PHONY: all-build-libiberty maybe-all-build-libiberty
+maybe-all-build-libiberty:
+@if build-libiberty
+TARGET-build-libiberty=all
+maybe-all-build-libiberty: all-build-libiberty
+all-build-libiberty: configure-build-libiberty
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       (cd $(BUILD_SUBDIR)/libiberty && \
+         $(MAKE)   $(TARGET-build-libiberty))
+@endif build-libiberty
+
+
+
+.PHONY: configure-build-bison maybe-configure-build-bison
+maybe-configure-build-bison:
+@if build-bison
+maybe-configure-build-bison: configure-build-bison
+configure-build-bison: 
+       @test ! -f $(BUILD_SUBDIR)/bison/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/bison ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/bison; \
+       cd "$(BUILD_SUBDIR)/bison" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(BUILD_SUBDIR)/bison/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bison"; \
+       libsrcdir="$$s/bison"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif build-bison
+
+
+
+.PHONY: all-build-bison maybe-all-build-bison
+maybe-all-build-bison:
+@if build-bison
+TARGET-build-bison=all
+maybe-all-build-bison: all-build-bison
+all-build-bison: configure-build-bison
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       (cd $(BUILD_SUBDIR)/bison && \
+         $(MAKE)   $(TARGET-build-bison))
+@endif build-bison
+
+
+
+.PHONY: configure-build-byacc maybe-configure-build-byacc
+maybe-configure-build-byacc:
+@if build-byacc
+maybe-configure-build-byacc: configure-build-byacc
+configure-build-byacc: 
+       @test ! -f $(BUILD_SUBDIR)/byacc/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/byacc ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/byacc; \
+       cd "$(BUILD_SUBDIR)/byacc" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(BUILD_SUBDIR)/byacc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/byacc"; \
+       libsrcdir="$$s/byacc"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif build-byacc
+
+
+
+.PHONY: all-build-byacc maybe-all-build-byacc
+maybe-all-build-byacc:
+@if build-byacc
+TARGET-build-byacc=all
+maybe-all-build-byacc: all-build-byacc
+all-build-byacc: configure-build-byacc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       (cd $(BUILD_SUBDIR)/byacc && \
+         $(MAKE)   $(TARGET-build-byacc))
+@endif build-byacc
+
+
+
+.PHONY: configure-build-flex maybe-configure-build-flex
+maybe-configure-build-flex:
+@if build-flex
+maybe-configure-build-flex: configure-build-flex
+configure-build-flex: 
+       @test ! -f $(BUILD_SUBDIR)/flex/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/flex ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/flex; \
+       cd "$(BUILD_SUBDIR)/flex" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(BUILD_SUBDIR)/flex/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/flex"; \
+       libsrcdir="$$s/flex"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif build-flex
+
+
+
+.PHONY: all-build-flex maybe-all-build-flex
+maybe-all-build-flex:
+@if build-flex
+TARGET-build-flex=all
+maybe-all-build-flex: all-build-flex
+all-build-flex: configure-build-flex
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       (cd $(BUILD_SUBDIR)/flex && \
+         $(MAKE)   $(TARGET-build-flex))
+@endif build-flex
+
+
+
+.PHONY: configure-build-m4 maybe-configure-build-m4
+maybe-configure-build-m4:
+@if build-m4
+maybe-configure-build-m4: configure-build-m4
+configure-build-m4: 
+       @test ! -f $(BUILD_SUBDIR)/m4/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/m4 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/m4; \
+       cd "$(BUILD_SUBDIR)/m4" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(BUILD_SUBDIR)/m4/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/m4"; \
+       libsrcdir="$$s/m4"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif build-m4
+
+
+
+.PHONY: all-build-m4 maybe-all-build-m4
+maybe-all-build-m4:
+@if build-m4
+TARGET-build-m4=all
+maybe-all-build-m4: all-build-m4
+all-build-m4: configure-build-m4
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       (cd $(BUILD_SUBDIR)/m4 && \
+         $(MAKE)   $(TARGET-build-m4))
+@endif build-m4
+
+
+
+.PHONY: configure-build-texinfo maybe-configure-build-texinfo
+maybe-configure-build-texinfo:
+@if build-texinfo
+maybe-configure-build-texinfo: configure-build-texinfo
+configure-build-texinfo: 
+       @test ! -f $(BUILD_SUBDIR)/texinfo/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/texinfo ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/texinfo; \
+       cd "$(BUILD_SUBDIR)/texinfo" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(BUILD_SUBDIR)/texinfo/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/texinfo"; \
+       libsrcdir="$$s/texinfo"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif build-texinfo
+
+
+
+.PHONY: all-build-texinfo maybe-all-build-texinfo
+maybe-all-build-texinfo:
+@if build-texinfo
+TARGET-build-texinfo=all
+maybe-all-build-texinfo: all-build-texinfo
+all-build-texinfo: configure-build-texinfo
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       (cd $(BUILD_SUBDIR)/texinfo && \
+         $(MAKE)   $(TARGET-build-texinfo))
+@endif build-texinfo
+
+
+
+.PHONY: configure-build-fixincludes maybe-configure-build-fixincludes
+maybe-configure-build-fixincludes:
+@if build-fixincludes
+maybe-configure-build-fixincludes: configure-build-fixincludes
+configure-build-fixincludes: 
+       @test ! -f $(BUILD_SUBDIR)/fixincludes/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/fixincludes ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/fixincludes; \
+       cd "$(BUILD_SUBDIR)/fixincludes" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(BUILD_SUBDIR)/fixincludes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/fixincludes"; \
+       libsrcdir="$$s/fixincludes"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif build-fixincludes
+
+
+
+.PHONY: all-build-fixincludes maybe-all-build-fixincludes
+maybe-all-build-fixincludes:
+@if build-fixincludes
+TARGET-build-fixincludes=all
+maybe-all-build-fixincludes: all-build-fixincludes
+all-build-fixincludes: configure-build-fixincludes
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(BUILD_EXPORTS) \
+       (cd $(BUILD_SUBDIR)/fixincludes && \
+         $(MAKE)   $(TARGET-build-fixincludes))
+@endif build-fixincludes
+
+
+
+# --------------------------------------
+# Modules which run on the host machine
+# --------------------------------------
+
+
+.PHONY: configure-ash maybe-configure-ash
+maybe-configure-ash:
+@if ash
+maybe-configure-ash: configure-ash
+configure-ash: 
+       @test ! -f $(HOST_SUBDIR)/ash/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ash ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/ash; \
+       cd "$(HOST_SUBDIR)/ash" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/ash/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/ash"; \
+       libsrcdir="$$s/ash"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif ash
+
+
+
+.PHONY: all-ash maybe-all-ash
+maybe-all-ash:
+@if ash
+TARGET-ash=all
+maybe-all-ash: all-ash
+all-ash: configure-ash
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-ash))
+@endif ash
+
+
+.PHONY: check-ash maybe-check-ash
+maybe-check-ash:
+@if ash
+maybe-check-ash: check-ash
+
+check-ash:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif ash
+
+.PHONY: install-ash maybe-install-ash
+maybe-install-ash:
+@if ash
+maybe-install-ash: install-ash
+
+install-ash: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif ash
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-ash info-ash
+maybe-info-ash:
+@if ash
+maybe-info-ash: info-ash
+
+info-ash: \
+    configure-ash 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-dvi-ash dvi-ash
+maybe-dvi-ash:
+@if ash
+maybe-dvi-ash: dvi-ash
+
+dvi-ash: \
+    configure-ash 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-html-ash html-ash
+maybe-html-ash:
+@if ash
+maybe-html-ash: html-ash
+
+html-ash: \
+    configure-ash 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-TAGS-ash TAGS-ash
+maybe-TAGS-ash:
+@if ash
+maybe-TAGS-ash: TAGS-ash
+
+TAGS-ash: \
+    configure-ash 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-install-info-ash install-info-ash
+maybe-install-info-ash:
+@if ash
+maybe-install-info-ash: install-info-ash
+
+install-info-ash: \
+    configure-ash \
+    info-ash 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-installcheck-ash installcheck-ash
+maybe-installcheck-ash:
+@if ash
+maybe-installcheck-ash: installcheck-ash
+
+installcheck-ash: \
+    configure-ash 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-mostlyclean-ash mostlyclean-ash
+maybe-mostlyclean-ash:
+@if ash
+maybe-mostlyclean-ash: mostlyclean-ash
+
+mostlyclean-ash: 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-clean-ash clean-ash
+maybe-clean-ash:
+@if ash
+maybe-clean-ash: clean-ash
+
+clean-ash: 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-distclean-ash distclean-ash
+maybe-distclean-ash:
+@if ash
+maybe-distclean-ash: distclean-ash
+
+distclean-ash: 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(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 ash
+
+.PHONY: maybe-maintainer-clean-ash maintainer-clean-ash
+maybe-maintainer-clean-ash:
+@if ash
+maybe-maintainer-clean-ash: maintainer-clean-ash
+
+maintainer-clean-ash: 
+       @[ -f ./ash/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 ash" ; \
+       (cd $(HOST_SUBDIR)/ash && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 maintainer-clean) \
+         || exit 1
+
+@endif ash
+
+
+
+.PHONY: configure-autoconf maybe-configure-autoconf
+maybe-configure-autoconf:
+@if autoconf
+maybe-configure-autoconf: configure-autoconf
+configure-autoconf: 
+       @test ! -f $(HOST_SUBDIR)/autoconf/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/autoconf ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/autoconf; \
+       cd "$(HOST_SUBDIR)/autoconf" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/autoconf/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/autoconf"; \
+       libsrcdir="$$s/autoconf"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif autoconf
+
+
+
+.PHONY: all-autoconf maybe-all-autoconf
+maybe-all-autoconf:
+@if autoconf
+TARGET-autoconf=all
+maybe-all-autoconf: all-autoconf
+all-autoconf: configure-autoconf
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/autoconf && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-autoconf))
+@endif autoconf
+
+
+.PHONY: check-autoconf maybe-check-autoconf
+maybe-check-autoconf:
+@if autoconf
+maybe-check-autoconf: check-autoconf
+
+check-autoconf:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/autoconf && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif autoconf
+
+.PHONY: install-autoconf maybe-install-autoconf
+maybe-install-autoconf:
+@if autoconf
+maybe-install-autoconf: install-autoconf
+
+install-autoconf: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/autoconf && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif autoconf
 
+# Other targets (info, dvi, etc.)
 
 .PHONY: maybe-info-autoconf info-autoconf
 maybe-info-autoconf:
+@if autoconf
+maybe-info-autoconf: info-autoconf
 
 info-autoconf: \
     configure-autoconf 
        @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       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 autoconf" ; \
-       (cd autoconf && \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -883,219 +2909,318 @@ info-autoconf: \
                  info) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-automake info-automake
-maybe-info-automake:
+.PHONY: maybe-dvi-autoconf dvi-autoconf
+maybe-dvi-autoconf:
+@if autoconf
+maybe-dvi-autoconf: dvi-autoconf
 
-info-automake: \
-    configure-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-autoconf: \
+    configure-autoconf 
+       @[ -f ./autoconf/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 automake" ; \
-       (cd automake && \
+       echo "Doing dvi in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 dvi) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-bash info-bash
-maybe-info-bash:
+.PHONY: maybe-html-autoconf html-autoconf
+maybe-html-autoconf:
+@if autoconf
+maybe-html-autoconf: html-autoconf
 
-info-bash: \
-    configure-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-autoconf: \
+    configure-autoconf 
+       @[ -f ./autoconf/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 bash" ; \
-       (cd bash && \
+       echo "Doing html in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 html) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-bfd info-bfd
-maybe-info-bfd:
+.PHONY: maybe-TAGS-autoconf TAGS-autoconf
+maybe-TAGS-autoconf:
+@if autoconf
+maybe-TAGS-autoconf: TAGS-autoconf
 
-info-bfd: \
-    configure-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-autoconf: \
+    configure-autoconf 
+       @[ -f ./autoconf/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing TAGS in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 TAGS) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-opcodes info-opcodes
-maybe-info-opcodes:
+.PHONY: maybe-install-info-autoconf install-info-autoconf
+maybe-install-info-autoconf:
+@if autoconf
+maybe-install-info-autoconf: install-info-autoconf
 
-info-opcodes: \
-    configure-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-autoconf: \
+    configure-autoconf \
+    info-autoconf 
+       @[ -f ./autoconf/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing install-info in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 install-info) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-binutils info-binutils
-maybe-info-binutils:
+.PHONY: maybe-installcheck-autoconf installcheck-autoconf
+maybe-installcheck-autoconf:
+@if autoconf
+maybe-installcheck-autoconf: installcheck-autoconf
 
-info-binutils: \
-    configure-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-autoconf: \
+    configure-autoconf 
+       @[ -f ./autoconf/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing installcheck in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 installcheck) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-bison info-bison
-maybe-info-bison:
+.PHONY: maybe-mostlyclean-autoconf mostlyclean-autoconf
+maybe-mostlyclean-autoconf:
+@if autoconf
+maybe-mostlyclean-autoconf: mostlyclean-autoconf
 
-info-bison: \
-    configure-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-autoconf: 
+       @[ -f ./autoconf/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 bison" ; \
-       (cd bison && \
+       echo "Doing mostlyclean in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 mostlyclean) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-byacc info-byacc
-maybe-info-byacc:
+.PHONY: maybe-clean-autoconf clean-autoconf
+maybe-clean-autoconf:
+@if autoconf
+maybe-clean-autoconf: clean-autoconf
 
-info-byacc: \
-    configure-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-autoconf: 
+       @[ -f ./autoconf/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing clean in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 clean) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-bzip2 info-bzip2
-maybe-info-bzip2:
+.PHONY: maybe-distclean-autoconf distclean-autoconf
+maybe-distclean-autoconf:
+@if autoconf
+maybe-distclean-autoconf: distclean-autoconf
 
-info-bzip2: \
-    configure-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-autoconf: 
+       @[ -f ./autoconf/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 bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing distclean in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 distclean) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-dejagnu info-dejagnu
-maybe-info-dejagnu:
+.PHONY: maybe-maintainer-clean-autoconf maintainer-clean-autoconf
+maybe-maintainer-clean-autoconf:
+@if autoconf
+maybe-maintainer-clean-autoconf: maintainer-clean-autoconf
 
-info-dejagnu: \
-    configure-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-autoconf: 
+       @[ -f ./autoconf/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing maintainer-clean in autoconf" ; \
+       (cd $(HOST_SUBDIR)/autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-diff info-diff
-maybe-info-diff:
 
-info-diff: \
-    configure-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-automake maybe-configure-automake
+maybe-configure-automake:
+@if automake
+maybe-configure-automake: configure-automake
+configure-automake: 
+       @test ! -f $(HOST_SUBDIR)/automake/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/automake ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/automake; \
+       cd "$(HOST_SUBDIR)/automake" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/automake/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/automake"; \
+       libsrcdir="$$s/automake"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif automake
+
+
+
+.PHONY: all-automake maybe-all-automake
+maybe-all-automake:
+@if automake
+TARGET-automake=all
+maybe-all-automake: all-automake
+all-automake: configure-automake
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/automake && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-automake))
+@endif automake
+
+
+.PHONY: check-automake maybe-check-automake
+maybe-check-automake:
+@if automake
+maybe-check-automake: check-automake
+
+check-automake:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/automake && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif automake
+
+.PHONY: install-automake maybe-install-automake
+maybe-install-automake:
+@if automake
+maybe-install-automake: install-automake
+
+install-automake: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/automake && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif automake
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-automake info-automake
+maybe-info-automake:
+@if automake
+maybe-info-automake: info-automake
+
+info-automake: \
+    configure-automake 
+       @[ -f ./automake/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 diff" ; \
-       (cd diff && \
+       echo "Doing info in automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -1103,153 +3228,318 @@ info-diff: \
                  info) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-info-dosutils info-dosutils
-maybe-info-dosutils:
+.PHONY: maybe-dvi-automake dvi-automake
+maybe-dvi-automake:
+@if automake
+maybe-dvi-automake: dvi-automake
 
-info-dosutils: \
-    configure-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-automake: \
+    configure-automake 
+       @[ -f ./automake/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing dvi in automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 dvi) \
+         || exit 1
+
+@endif automake
+
+.PHONY: maybe-html-automake html-automake
+maybe-html-automake:
+@if automake
+maybe-html-automake: html-automake
+
+html-automake: \
+    configure-automake 
+       @[ -f ./automake/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 automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
+         $(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 automake
+
+.PHONY: maybe-TAGS-automake TAGS-automake
+maybe-TAGS-automake:
+@if automake
+maybe-TAGS-automake: TAGS-automake
+
+TAGS-automake: \
+    configure-automake 
+       @[ -f ./automake/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 automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
+         $(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 automake
+
+.PHONY: maybe-install-info-automake install-info-automake
+maybe-install-info-automake:
+@if automake
+maybe-install-info-automake: install-info-automake
+
+install-info-automake: \
+    configure-automake \
+    info-automake 
+       @[ -f ./automake/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 automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
+         $(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 automake
 
-.PHONY: maybe-info-etc info-etc
-maybe-info-etc:
+.PHONY: maybe-installcheck-automake installcheck-automake
+maybe-installcheck-automake:
+@if automake
+maybe-installcheck-automake: installcheck-automake
 
-info-etc: \
-    configure-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-automake: \
+    configure-automake 
+       @[ -f ./automake/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 etc" ; \
-       (cd etc && \
+       echo "Doing installcheck in automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 installcheck) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-info-fastjar info-fastjar
-maybe-info-fastjar:
+.PHONY: maybe-mostlyclean-automake mostlyclean-automake
+maybe-mostlyclean-automake:
+@if automake
+maybe-mostlyclean-automake: mostlyclean-automake
 
-info-fastjar: \
-    configure-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-automake: 
+       @[ -f ./automake/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing mostlyclean in automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 mostlyclean) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-info-fileutils info-fileutils
-maybe-info-fileutils:
+.PHONY: maybe-clean-automake clean-automake
+maybe-clean-automake:
+@if automake
+maybe-clean-automake: clean-automake
 
-info-fileutils: \
-    configure-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-automake: 
+       @[ -f ./automake/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing clean in automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 clean) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-info-findutils info-findutils
-maybe-info-findutils:
+.PHONY: maybe-distclean-automake distclean-automake
+maybe-distclean-automake:
+@if automake
+maybe-distclean-automake: distclean-automake
 
-info-findutils: \
-    configure-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-automake: 
+       @[ -f ./automake/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing distclean in automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 distclean) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-info-find info-find
-maybe-info-find:
+.PHONY: maybe-maintainer-clean-automake maintainer-clean-automake
+maybe-maintainer-clean-automake:
+@if automake
+maybe-maintainer-clean-automake: maintainer-clean-automake
 
-info-find: \
-    configure-find 
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-automake: 
+       @[ -f ./automake/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 find" ; \
-       (cd find && \
+       echo "Doing maintainer-clean in automake" ; \
+       (cd $(HOST_SUBDIR)/automake && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-info-flex info-flex
-maybe-info-flex:
 
-info-flex: \
-    configure-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-bash maybe-configure-bash
+maybe-configure-bash:
+@if bash
+maybe-configure-bash: configure-bash
+configure-bash: 
+       @test ! -f $(HOST_SUBDIR)/bash/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bash ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/bash; \
+       cd "$(HOST_SUBDIR)/bash" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bash/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bash"; \
+       libsrcdir="$$s/bash"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif bash
+
+
+
+.PHONY: all-bash maybe-all-bash
+maybe-all-bash:
+@if bash
+TARGET-bash=all
+maybe-all-bash: all-bash
+all-bash: configure-bash
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bash && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-bash))
+@endif bash
+
+
+.PHONY: check-bash maybe-check-bash
+maybe-check-bash:
+@if bash
+maybe-check-bash: check-bash
+
+check-bash:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bash && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif bash
+
+.PHONY: install-bash maybe-install-bash
+maybe-install-bash:
+@if bash
+maybe-install-bash: install-bash
+
+install-bash: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bash && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif bash
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-bash info-bash
+maybe-info-bash:
+@if bash
+maybe-info-bash: info-bash
+
+info-bash: \
+    configure-bash 
+       @[ -f ./bash/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 flex" ; \
-       (cd flex && \
+       echo "Doing info in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -1257,219 +3547,320 @@ info-flex: \
                  info) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-gas info-gas
-maybe-info-gas:
+.PHONY: maybe-dvi-bash dvi-bash
+maybe-dvi-bash:
+@if bash
+maybe-dvi-bash: dvi-bash
 
-info-gas: \
-    configure-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-bash: \
+    configure-bash 
+       @[ -f ./bash/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 gas" ; \
-       (cd gas && \
+       echo "Doing dvi in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 dvi) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-gawk info-gawk
-maybe-info-gawk:
+.PHONY: maybe-html-bash html-bash
+maybe-html-bash:
+@if bash
+maybe-html-bash: html-bash
 
-info-gawk: \
-    configure-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-bash: \
+    configure-bash 
+       @[ -f ./bash/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing html in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 html) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-gettext info-gettext
-maybe-info-gettext:
+.PHONY: maybe-TAGS-bash TAGS-bash
+maybe-TAGS-bash:
+@if bash
+maybe-TAGS-bash: TAGS-bash
 
-info-gettext: \
-    configure-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-bash: \
+    configure-bash 
+       @[ -f ./bash/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing TAGS in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 TAGS) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-gnuserv info-gnuserv
-maybe-info-gnuserv:
+.PHONY: maybe-install-info-bash install-info-bash
+maybe-install-info-bash:
+@if bash
+maybe-install-info-bash: install-info-bash
 
-info-gnuserv: \
-    configure-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-bash: \
+    configure-bash \
+    info-bash 
+       @[ -f ./bash/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing install-info in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 install-info) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-gprof info-gprof
-maybe-info-gprof:
+.PHONY: maybe-installcheck-bash installcheck-bash
+maybe-installcheck-bash:
+@if bash
+maybe-installcheck-bash: installcheck-bash
 
-info-gprof: \
-    configure-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-bash: \
+    configure-bash 
+       @[ -f ./bash/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 gprof" ; \
-       (cd gprof && \
+       echo "Doing installcheck in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 installcheck) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-gzip info-gzip
-maybe-info-gzip:
+.PHONY: maybe-mostlyclean-bash mostlyclean-bash
+maybe-mostlyclean-bash:
+@if bash
+maybe-mostlyclean-bash: mostlyclean-bash
 
-info-gzip: \
-    configure-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-bash: 
+       @[ -f ./bash/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 gzip" ; \
-       (cd gzip && \
+       echo "Doing mostlyclean in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 mostlyclean) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-hello info-hello
-maybe-info-hello:
+.PHONY: maybe-clean-bash clean-bash
+maybe-clean-bash:
+@if bash
+maybe-clean-bash: clean-bash
 
-info-hello: \
-    configure-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-bash: 
+       @[ -f ./bash/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 hello" ; \
-       (cd hello && \
+       echo "Doing clean in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 clean) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-indent info-indent
-maybe-info-indent:
+.PHONY: maybe-distclean-bash distclean-bash
+maybe-distclean-bash:
+@if bash
+maybe-distclean-bash: distclean-bash
 
-info-indent: \
-    configure-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-bash: 
+       @[ -f ./bash/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 indent" ; \
-       (cd indent && \
+       echo "Doing distclean in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 distclean) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-intl info-intl
-maybe-info-intl:
+.PHONY: maybe-maintainer-clean-bash maintainer-clean-bash
+maybe-maintainer-clean-bash:
+@if bash
+maybe-maintainer-clean-bash: maintainer-clean-bash
 
-info-intl: \
-    configure-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-bash: 
+       @[ -f ./bash/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 intl" ; \
-       (cd intl && \
+       echo "Doing maintainer-clean in bash" ; \
+       (cd $(HOST_SUBDIR)/bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-info-tcl info-tcl
-maybe-info-tcl:
 
-info-tcl: \
-    configure-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-bfd maybe-configure-bfd
+maybe-configure-bfd:
+@if bfd
+maybe-configure-bfd: configure-bfd
+configure-bfd: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/bfd/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bfd ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/bfd; \
+       cd "$(HOST_SUBDIR)/bfd" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bfd"; \
+       libsrcdir="$$s/bfd"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif bfd
+
+
+
+.PHONY: all-bfd maybe-all-bfd
+maybe-all-bfd:
+@if bfd
+TARGET-bfd=all
+maybe-all-bfd: all-bfd
+all-bfd: configure-bfd
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bfd && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-bfd))
+@endif bfd
+
+
+.PHONY: check-bfd maybe-check-bfd
+maybe-check-bfd:
+@if bfd
+maybe-check-bfd: check-bfd
+
+check-bfd:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bfd && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif bfd
+
+.PHONY: install-bfd maybe-install-bfd
+maybe-install-bfd:
+@if bfd
+maybe-install-bfd: install-bfd
+
+install-bfd: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bfd && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif bfd
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-bfd info-bfd
+maybe-info-bfd:
+@if bfd
+maybe-info-bfd: info-bfd
+
+info-bfd: \
+    configure-bfd 
+       @[ -f ./bfd/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 tcl" ; \
-       (cd tcl && \
+       echo "Doing info in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -1477,307 +3868,320 @@ info-tcl: \
                  info) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-itcl info-itcl
-maybe-info-itcl:
+.PHONY: maybe-dvi-bfd dvi-bfd
+maybe-dvi-bfd:
+@if bfd
+maybe-dvi-bfd: dvi-bfd
 
-info-itcl: \
-    configure-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-bfd: \
+    configure-bfd 
+       @[ -f ./bfd/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing dvi in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 dvi) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-ld info-ld
-maybe-info-ld:
+.PHONY: maybe-html-bfd html-bfd
+maybe-html-bfd:
+@if bfd
+maybe-html-bfd: html-bfd
 
-info-ld: \
-    configure-l
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-bfd: \
+    configure-bf
+       @[ -f ./bfd/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 ld" ; \
-       (cd ld && \
+       echo "Doing html in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 html) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-libgui info-libgui
-maybe-info-libgui:
+.PHONY: maybe-TAGS-bfd TAGS-bfd
+maybe-TAGS-bfd:
+@if bfd
+maybe-TAGS-bfd: TAGS-bfd
 
-info-libgui: \
-    configure-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-bfd: \
+    configure-bfd 
+       @[ -f ./bfd/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 libgui" ; \
-       (cd libgui && \
+       echo "Doing TAGS in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 TAGS) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-libiberty info-libiberty
-maybe-info-libiberty:
+.PHONY: maybe-install-info-bfd install-info-bfd
+maybe-install-info-bfd:
+@if bfd
+maybe-install-info-bfd: install-info-bfd
 
-info-libiberty: \
-    configure-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-bfd: \
+    configure-bfd \
+    info-bfd 
+       @[ -f ./bfd/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 libiberty" ; \
-       (cd libiberty && \
+       echo "Doing install-info in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 install-info) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-libtool info-libtool
-maybe-info-libtool:
+.PHONY: maybe-installcheck-bfd installcheck-bfd
+maybe-installcheck-bfd:
+@if bfd
+maybe-installcheck-bfd: installcheck-bfd
 
-info-libtool: \
-    configure-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-bfd: \
+    configure-bfd 
+       @[ -f ./bfd/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 libtool" ; \
-       (cd libtool && \
+       echo "Doing installcheck in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 installcheck) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-m4 info-m4
-maybe-info-m4:
+.PHONY: maybe-mostlyclean-bfd mostlyclean-bfd
+maybe-mostlyclean-bfd:
+@if bfd
+maybe-mostlyclean-bfd: mostlyclean-bfd
 
-info-m4: \
-    configure-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-bfd: 
+       @[ -f ./bfd/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 m4" ; \
-       (cd m4 && \
+       echo "Doing mostlyclean in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 mostlyclean) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-make info-make
-maybe-info-make:
+.PHONY: maybe-clean-bfd clean-bfd
+maybe-clean-bfd:
+@if bfd
+maybe-clean-bfd: clean-bfd
 
-info-make: \
-    configure-make 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-bfd: 
+       @[ -f ./bfd/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 make" ; \
-       (cd make && \
+       echo "Doing clean in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 clean) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-mmalloc info-mmalloc
-maybe-info-mmalloc:
+.PHONY: maybe-distclean-bfd distclean-bfd
+maybe-distclean-bfd:
+@if bfd
+maybe-distclean-bfd: distclean-bfd
 
-info-mmalloc: \
-    configure-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-bfd: 
+       @[ -f ./bfd/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 mmalloc" ; \
-       (cd mmalloc && \
+       echo "Doing distclean in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 distclean) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-patch info-patch
-maybe-info-patch:
+.PHONY: maybe-maintainer-clean-bfd maintainer-clean-bfd
+maybe-maintainer-clean-bfd:
+@if bfd
+maybe-maintainer-clean-bfd: maintainer-clean-bfd
 
-info-patch: \
-    configure-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-bfd: 
+       @[ -f ./bfd/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 patch" ; \
-       (cd patch && \
+       echo "Doing maintainer-clean in bfd" ; \
+       (cd $(HOST_SUBDIR)/bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-info-perl info-perl
-maybe-info-perl:
 
-info-perl: \
-    configure-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing info in perl" ; \
-       (cd perl && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+
+.PHONY: configure-opcodes maybe-configure-opcodes
+maybe-configure-opcodes:
+@if opcodes
+maybe-configure-opcodes: configure-opcodes
+configure-opcodes: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/opcodes/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/opcodes ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/opcodes; \
+       cd "$(HOST_SUBDIR)/opcodes" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/opcodes"; \
+       libsrcdir="$$s/opcodes"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif opcodes
 
 
-.PHONY: maybe-info-prms info-prms
-maybe-info-prms:
 
-info-prms: \
-    configure-prms 
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing info in prms" ; \
-       (cd prms && \
-         $(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
+.PHONY: all-opcodes maybe-all-opcodes
+maybe-all-opcodes:
+@if opcodes
+TARGET-opcodes=all
+maybe-all-opcodes: all-opcodes
+all-opcodes: configure-opcodes
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/opcodes && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-opcodes))
+@endif opcodes
 
 
-.PHONY: maybe-info-rcs info-rcs
-maybe-info-rcs:
+.PHONY: check-opcodes maybe-check-opcodes
+maybe-check-opcodes:
+@if opcodes
+maybe-check-opcodes: check-opcodes
 
-info-rcs: \
-    configure-rcs 
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing info in rcs" ; \
-       (cd rcs && \
-         $(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
+check-opcodes:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/opcodes && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
 
+@endif opcodes
 
-.PHONY: maybe-info-readline info-readline
-maybe-info-readline:
+.PHONY: install-opcodes maybe-install-opcodes
+maybe-install-opcodes:
+@if opcodes
+maybe-install-opcodes: install-opcodes
 
-info-readline: \
-    configure-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing info in readline" ; \
-       (cd readline && \
-         $(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
+install-opcodes: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/opcodes && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
 
+@endif opcodes
 
-.PHONY: maybe-info-release info-release
-maybe-info-release:
+# Other targets (info, dvi, etc.)
 
-info-release: \
-    configure-release 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: maybe-info-opcodes info-opcodes
+maybe-info-opcodes:
+@if opcodes
+maybe-info-opcodes: info-opcodes
+
+info-opcodes: \
+    configure-opcodes 
+       @[ -f ./opcodes/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 release" ; \
-       (cd release && \
+       echo "Doing info in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -1785,219 +4189,320 @@ info-release: \
                  info) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-recode info-recode
-maybe-info-recode:
+.PHONY: maybe-dvi-opcodes dvi-opcodes
+maybe-dvi-opcodes:
+@if opcodes
+maybe-dvi-opcodes: dvi-opcodes
 
-info-recode: \
-    configure-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-opcodes: \
+    configure-opcodes 
+       @[ -f ./opcodes/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 recode" ; \
-       (cd recode && \
+       echo "Doing dvi in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 dvi) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-sed info-sed
-maybe-info-sed:
+.PHONY: maybe-html-opcodes html-opcodes
+maybe-html-opcodes:
+@if opcodes
+maybe-html-opcodes: html-opcodes
 
-info-sed: \
-    configure-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-opcodes: \
+    configure-opcodes 
+       @[ -f ./opcodes/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 sed" ; \
-       (cd sed && \
+       echo "Doing html in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 html) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-send-pr info-send-pr
-maybe-info-send-pr:
+.PHONY: maybe-TAGS-opcodes TAGS-opcodes
+maybe-TAGS-opcodes:
+@if opcodes
+maybe-TAGS-opcodes: TAGS-opcodes
 
-info-send-pr: \
-    configure-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-opcodes: \
+    configure-opcodes 
+       @[ -f ./opcodes/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 send-pr" ; \
-       (cd send-pr && \
+       echo "Doing TAGS in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 TAGS) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-shellutils info-shellutils
-maybe-info-shellutils:
+.PHONY: maybe-install-info-opcodes install-info-opcodes
+maybe-install-info-opcodes:
+@if opcodes
+maybe-install-info-opcodes: install-info-opcodes
 
-info-shellutils: \
-    configure-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-opcodes: \
+    configure-opcodes \
+    info-opcodes 
+       @[ -f ./opcodes/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 shellutils" ; \
-       (cd shellutils && \
+       echo "Doing install-info in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 install-info) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-sid info-sid
-maybe-info-sid:
+.PHONY: maybe-installcheck-opcodes installcheck-opcodes
+maybe-installcheck-opcodes:
+@if opcodes
+maybe-installcheck-opcodes: installcheck-opcodes
 
-info-sid: \
-    configure-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-opcodes: \
+    configure-opcodes 
+       @[ -f ./opcodes/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 sid" ; \
-       (cd sid && \
+       echo "Doing installcheck in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 installcheck) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-sim info-sim
-maybe-info-sim:
+.PHONY: maybe-mostlyclean-opcodes mostlyclean-opcodes
+maybe-mostlyclean-opcodes:
+@if opcodes
+maybe-mostlyclean-opcodes: mostlyclean-opcodes
 
-info-sim: \
-    configure-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-opcodes: 
+       @[ -f ./opcodes/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 sim" ; \
-       (cd sim && \
+       echo "Doing mostlyclean in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 mostlyclean) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-tar info-tar
-maybe-info-tar:
+.PHONY: maybe-clean-opcodes clean-opcodes
+maybe-clean-opcodes:
+@if opcodes
+maybe-clean-opcodes: clean-opcodes
 
-info-tar: \
-    configure-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-opcodes: 
+       @[ -f ./opcodes/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 tar" ; \
-       (cd tar && \
+       echo "Doing clean in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 clean) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-texinfo info-texinfo
-maybe-info-texinfo:
+.PHONY: maybe-distclean-opcodes distclean-opcodes
+maybe-distclean-opcodes:
+@if opcodes
+maybe-distclean-opcodes: distclean-opcodes
 
-info-texinfo: \
-    configure-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-opcodes: 
+       @[ -f ./opcodes/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 texinfo" ; \
-       (cd texinfo && \
+       echo "Doing distclean in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 distclean) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-textutils info-textutils
-maybe-info-textutils:
+.PHONY: maybe-maintainer-clean-opcodes maintainer-clean-opcodes
+maybe-maintainer-clean-opcodes:
+@if opcodes
+maybe-maintainer-clean-opcodes: maintainer-clean-opcodes
 
-info-textutils: \
-    configure-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-opcodes: 
+       @[ -f ./opcodes/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 textutils" ; \
-       (cd textutils && \
+       echo "Doing maintainer-clean in opcodes" ; \
+       (cd $(HOST_SUBDIR)/opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-info-time info-time
-maybe-info-time:
 
-info-time: \
-    configure-time 
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-binutils maybe-configure-binutils
+maybe-configure-binutils:
+@if binutils
+maybe-configure-binutils: configure-binutils
+configure-binutils: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/binutils/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/binutils ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/binutils; \
+       cd "$(HOST_SUBDIR)/binutils" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/binutils"; \
+       libsrcdir="$$s/binutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif binutils
+
+
+
+.PHONY: all-binutils maybe-all-binutils
+maybe-all-binutils:
+@if binutils
+TARGET-binutils=all
+maybe-all-binutils: all-binutils
+all-binutils: configure-binutils
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/binutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-binutils))
+@endif binutils
+
+
+.PHONY: check-binutils maybe-check-binutils
+maybe-check-binutils:
+@if binutils
+maybe-check-binutils: check-binutils
+
+check-binutils:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/binutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif binutils
+
+.PHONY: install-binutils maybe-install-binutils
+maybe-install-binutils:
+@if binutils
+maybe-install-binutils: install-binutils
+
+install-binutils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/binutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif binutils
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-binutils info-binutils
+maybe-info-binutils:
+@if binutils
+maybe-info-binutils: info-binutils
+
+info-binutils: \
+    configure-binutils 
+       @[ -f ./binutils/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 time" ; \
-       (cd time && \
+       echo "Doing info in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -2005,219 +4510,321 @@ info-time: \
                  info) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-uudecode info-uudecode
-maybe-info-uudecode:
+.PHONY: maybe-dvi-binutils dvi-binutils
+maybe-dvi-binutils:
+@if binutils
+maybe-dvi-binutils: dvi-binutils
 
-info-uudecode: \
-    configure-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-binutils: \
+    configure-binutils 
+       @[ -f ./binutils/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 uudecode" ; \
-       (cd uudecode && \
+       echo "Doing dvi in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 dvi) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-wdiff info-wdiff
-maybe-info-wdiff:
+.PHONY: maybe-html-binutils html-binutils
+maybe-html-binutils:
+@if binutils
+maybe-html-binutils: html-binutils
 
-info-wdiff: \
-    configure-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-binutils: \
+    configure-binutils 
+       @[ -f ./binutils/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 wdiff" ; \
-       (cd wdiff && \
+       echo "Doing html in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 html) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-zip info-zip
-maybe-info-zip:
+.PHONY: maybe-TAGS-binutils TAGS-binutils
+maybe-TAGS-binutils:
+@if binutils
+maybe-TAGS-binutils: TAGS-binutils
 
-info-zip: \
-    configure-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-binutils: \
+    configure-binutils 
+       @[ -f ./binutils/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 zip" ; \
-       (cd zip && \
+       echo "Doing TAGS in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 TAGS) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-zlib info-zlib
-maybe-info-zlib:
+.PHONY: maybe-install-info-binutils install-info-binutils
+maybe-install-info-binutils:
+@if binutils
+maybe-install-info-binutils: install-info-binutils
 
-info-zlib: \
-    configure-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-binutils: \
+    configure-binutils \
+    info-binutils 
+       @[ -f ./binutils/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 zlib" ; \
-       (cd zlib && \
+       echo "Doing install-info in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 install-info) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-gdb info-gdb
-maybe-info-gdb:
+.PHONY: maybe-installcheck-binutils installcheck-binutils
+maybe-installcheck-binutils:
+@if binutils
+maybe-installcheck-binutils: installcheck-binutils
 
-info-gdb: \
-    configure-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-binutils: \
+    configure-binutils 
+       @[ -f ./binutils/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 gdb" ; \
-       (cd gdb && \
+       echo "Doing installcheck in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 installcheck) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-expect info-expect
-maybe-info-expect:
+.PHONY: maybe-mostlyclean-binutils mostlyclean-binutils
+maybe-mostlyclean-binutils:
+@if binutils
+maybe-mostlyclean-binutils: mostlyclean-binutils
 
-info-expect: \
-    configure-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-binutils: 
+       @[ -f ./binutils/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 expect" ; \
-       (cd expect && \
+       echo "Doing mostlyclean in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 mostlyclean) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-guile info-guile
-maybe-info-guile:
+.PHONY: maybe-clean-binutils clean-binutils
+maybe-clean-binutils:
+@if binutils
+maybe-clean-binutils: clean-binutils
 
-info-guile: \
-    configure-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-binutils: 
+       @[ -f ./binutils/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 guile" ; \
-       (cd guile && \
+       echo "Doing clean in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 clean) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-tk info-tk
-maybe-info-tk:
+.PHONY: maybe-distclean-binutils distclean-binutils
+maybe-distclean-binutils:
+@if binutils
+maybe-distclean-binutils: distclean-binutils
 
-info-tk: \
-    configure-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-binutils: 
+       @[ -f ./binutils/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 tk" ; \
-       (cd tk && \
+       echo "Doing distclean in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 distclean) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-info-tix info-tix
-maybe-info-tix:
+.PHONY: maybe-maintainer-clean-binutils maintainer-clean-binutils
+maybe-maintainer-clean-binutils:
+@if binutils
+maybe-maintainer-clean-binutils: maintainer-clean-binutils
 
-info-tix: \
-    configure-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-binutils: 
+       @[ -f ./binutils/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 tix" ; \
-       (cd tix && \
+       echo "Doing maintainer-clean in binutils" ; \
+       (cd $(HOST_SUBDIR)/binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 maintainer-clean) \
+         || exit 1
+
+@endif binutils
+
+
+
+.PHONY: configure-bison maybe-configure-bison
+maybe-configure-bison:
+@if bison
+maybe-configure-bison: configure-bison
+configure-bison: 
+       @test ! -f $(HOST_SUBDIR)/bison/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bison ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/bison; \
+       cd "$(HOST_SUBDIR)/bison" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bison/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bison"; \
+       libsrcdir="$$s/bison"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif bison
+
+
+
+.PHONY: all-bison maybe-all-bison
+maybe-all-bison:
+@if bison
+TARGET-bison=all
+maybe-all-bison: all-bison
+all-bison: configure-bison
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bison && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-bison))
+@endif bison
+
+
+.PHONY: check-bison maybe-check-bison
+maybe-check-bison:
+@if bison
+maybe-check-bison: check-bison
+
+# This module is only tested in a native toolchain.
+check-bison:
+       @if [ '$(host)' = '$(target)' ] ; then \
+         r=`${PWD_COMMAND}`; export r; \
+         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+         $(HOST_EXPORTS) \
+         (cd $(HOST_SUBDIR)/bison && \
+           $(MAKE) $(FLAGS_TO_PASS)  check); \
+       fi
+
+@endif bison
+
+.PHONY: install-bison maybe-install-bison
+maybe-install-bison:
+@if bison
+maybe-install-bison: install-bison
+
+install-bison: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bison && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
 
+@endif bison
 
-.PHONY: maybe-info-libtermcap info-libtermcap
-maybe-info-libtermcap:
+# Other targets (info, dvi, etc.)
 
-info-libtermcap: \
-    configure-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: maybe-info-bison info-bison
+maybe-info-bison:
+@if bison
+maybe-info-bison: info-bison
+
+info-bison: \
+    configure-bison 
+       @[ -f ./bison/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 libtermcap" ; \
-       (cd libtermcap && \
+       echo "Doing info in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -2225,244 +4832,321 @@ info-libtermcap: \
                  info) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-utils info-utils
-maybe-info-utils:
+.PHONY: maybe-dvi-bison dvi-bison
+maybe-dvi-bison:
+@if bison
+maybe-dvi-bison: dvi-bison
 
-info-utils: \
-    configure-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-bison: \
+    configure-bison 
+       @[ -f ./bison/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 utils" ; \
-       (cd utils && \
+       echo "Doing dvi in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 dvi) \
          || exit 1
 
+@endif bison
 
+.PHONY: maybe-html-bison html-bison
+maybe-html-bison:
+@if bison
+maybe-html-bison: html-bison
 
-# Target modules.
-
-.PHONY: maybe-info-target-libstdc++-v3 info-target-libstdc++-v3
-maybe-info-target-libstdc++-v3:
-
-info-target-libstdc++-v3: \
-    configure-target-libstdc++-v3 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-bison: \
+    configure-bison 
+       @[ -f ./bison/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; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+       echo "Doing html in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 html) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-target-newlib info-target-newlib
-maybe-info-target-newlib:
+.PHONY: maybe-TAGS-bison TAGS-bison
+maybe-TAGS-bison:
+@if bison
+maybe-TAGS-bison: TAGS-bison
 
-info-target-newlib: \
-    configure-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-bison: \
+    configure-bison 
+       @[ -f ./bison/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; \
-       (cd $(TARGET_SUBDIR)/newlib && \
+       echo "Doing TAGS in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 TAGS) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-target-libf2c info-target-libf2c
-maybe-info-target-libf2c:
+.PHONY: maybe-install-info-bison install-info-bison
+maybe-install-info-bison:
+@if bison
+maybe-install-info-bison: install-info-bison
 
-info-target-libf2c: \
-    configure-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-bison: \
+    configure-bison \
+    info-bison 
+       @[ -f ./bison/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; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       echo "Doing install-info in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 install-info) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-target-libobjc info-target-libobjc
-maybe-info-target-libobjc:
+.PHONY: maybe-installcheck-bison installcheck-bison
+maybe-installcheck-bison:
+@if bison
+maybe-installcheck-bison: installcheck-bison
 
-info-target-libobjc: \
-    configure-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-bison: \
+    configure-bison 
+       @[ -f ./bison/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; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       echo "Doing installcheck in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 installcheck) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-target-libtermcap info-target-libtermcap
-maybe-info-target-libtermcap:
+.PHONY: maybe-mostlyclean-bison mostlyclean-bison
+maybe-mostlyclean-bison:
+@if bison
+maybe-mostlyclean-bison: mostlyclean-bison
 
-info-target-libtermcap: \
-    configure-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-bison: 
+       @[ -f ./bison/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; \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
+       echo "Doing mostlyclean in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 mostlyclean) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-target-winsup info-target-winsup
-maybe-info-target-winsup:
+.PHONY: maybe-clean-bison clean-bison
+maybe-clean-bison:
+@if bison
+maybe-clean-bison: clean-bison
 
-info-target-winsup: \
-    configure-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-bison: 
+       @[ -f ./bison/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; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       echo "Doing clean in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 clean) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-target-libgloss info-target-libgloss
-maybe-info-target-libgloss:
+.PHONY: maybe-distclean-bison distclean-bison
+maybe-distclean-bison:
+@if bison
+maybe-distclean-bison: distclean-bison
 
-info-target-libgloss: \
-    configure-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-bison: 
+       @[ -f ./bison/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; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       echo "Doing distclean in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 distclean) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-target-libiberty info-target-libiberty
-maybe-info-target-libiberty:
+.PHONY: maybe-maintainer-clean-bison maintainer-clean-bison
+maybe-maintainer-clean-bison:
+@if bison
+maybe-maintainer-clean-bison: maintainer-clean-bison
 
-info-target-libiberty: \
-    configure-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-bison: 
+       @[ -f ./bison/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; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       echo "Doing maintainer-clean in bison" ; \
+       (cd $(HOST_SUBDIR)/bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-info-target-gperf info-target-gperf
-maybe-info-target-gperf:
 
-info-target-gperf: \
-    configure-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       (cd $(TARGET_SUBDIR)/gperf && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+
+.PHONY: configure-byacc maybe-configure-byacc
+maybe-configure-byacc:
+@if byacc
+maybe-configure-byacc: configure-byacc
+configure-byacc: 
+       @test ! -f $(HOST_SUBDIR)/byacc/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/byacc ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/byacc; \
+       cd "$(HOST_SUBDIR)/byacc" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/byacc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/byacc"; \
+       libsrcdir="$$s/byacc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif byacc
 
 
-.PHONY: maybe-info-target-examples info-target-examples
-maybe-info-target-examples:
 
-info-target-examples: \
-    configure-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+.PHONY: all-byacc maybe-all-byacc
+maybe-all-byacc:
+@if byacc
+TARGET-byacc=all
+maybe-all-byacc: all-byacc
+all-byacc: configure-byacc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/byacc && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-byacc))
+@endif byacc
+
+
+.PHONY: check-byacc maybe-check-byacc
+maybe-check-byacc:
+@if byacc
+maybe-check-byacc: check-byacc
+
+# This module is only tested in a native toolchain.
+check-byacc:
+       @if [ '$(host)' = '$(target)' ] ; then \
+         r=`${PWD_COMMAND}`; export r; \
+         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+         $(HOST_EXPORTS) \
+         (cd $(HOST_SUBDIR)/byacc && \
+           $(MAKE) $(FLAGS_TO_PASS)  check); \
+       fi
+
+@endif byacc
+
+.PHONY: install-byacc maybe-install-byacc
+maybe-install-byacc:
+@if byacc
+maybe-install-byacc: install-byacc
+
+install-byacc: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/byacc && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif byacc
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-byacc info-byacc
+maybe-info-byacc:
+@if byacc
+maybe-info-byacc: info-byacc
+
+info-byacc: \
+    configure-byacc 
+       @[ -f ./byacc/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; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       echo "Doing info in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -2470,354 +5154,343 @@ info-target-examples: \
                  info) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-info-target-libffi info-target-libffi
-maybe-info-target-libffi:
+.PHONY: maybe-dvi-byacc dvi-byacc
+maybe-dvi-byacc:
+@if byacc
+maybe-dvi-byacc: dvi-byacc
 
-info-target-libffi: \
-    configure-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-byacc: \
+    configure-byacc 
+       @[ -f ./byacc/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; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       echo "Doing dvi in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 dvi) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-info-target-libjava info-target-libjava
-maybe-info-target-libjava:
+.PHONY: maybe-html-byacc html-byacc
+maybe-html-byacc:
+@if byacc
+maybe-html-byacc: html-byacc
 
-info-target-libjava: \
-    configure-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-byacc: \
+    configure-byacc 
+       @[ -f ./byacc/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; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       echo "Doing html in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 html) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-info-target-zlib info-target-zlib
-maybe-info-target-zlib:
+.PHONY: maybe-TAGS-byacc TAGS-byacc
+maybe-TAGS-byacc:
+@if byacc
+maybe-TAGS-byacc: TAGS-byacc
 
-info-target-zlib: \
-    configure-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-byacc: \
+    configure-byacc 
+       @[ -f ./byacc/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; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       echo "Doing TAGS in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 TAGS) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-info-target-boehm-gc info-target-boehm-gc
-maybe-info-target-boehm-gc:
+.PHONY: maybe-install-info-byacc install-info-byacc
+maybe-install-info-byacc:
+@if byacc
+maybe-install-info-byacc: install-info-byacc
 
-info-target-boehm-gc: \
-    configure-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-byacc: \
+    configure-byacc \
+    info-byacc 
+       @[ -f ./byacc/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; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       echo "Doing install-info in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 install-info) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-info-target-qthreads info-target-qthreads
-maybe-info-target-qthreads:
+.PHONY: maybe-installcheck-byacc installcheck-byacc
+maybe-installcheck-byacc:
+@if byacc
+maybe-installcheck-byacc: installcheck-byacc
 
-info-target-qthreads: \
-    configure-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-byacc: \
+    configure-byacc 
+       @[ -f ./byacc/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; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       echo "Doing installcheck in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 installcheck) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-info-target-rda info-target-rda
-maybe-info-target-rda:
+.PHONY: maybe-mostlyclean-byacc mostlyclean-byacc
+maybe-mostlyclean-byacc:
+@if byacc
+maybe-mostlyclean-byacc: mostlyclean-byacc
 
-info-target-rda: \
-    configure-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-byacc: 
+       @[ -f ./byacc/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; \
-       (cd $(TARGET_SUBDIR)/rda && \
+       echo "Doing mostlyclean in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+                 mostlyclean) \
          || exit 1
 
+@endif byacc
 
+.PHONY: maybe-clean-byacc clean-byacc
+maybe-clean-byacc:
+@if byacc
+maybe-clean-byacc: clean-byacc
 
-.PHONY: do-dvi
-do-dvi: dvi-host dvi-target
-
-.PHONY: dvi-host
-dvi-host: maybe-dvi-gcc  \
-    maybe-dvi-ash \
-    maybe-dvi-autoconf \
-    maybe-dvi-automake \
-    maybe-dvi-bash \
-    maybe-dvi-bfd \
-    maybe-dvi-opcodes \
-    maybe-dvi-binutils \
-    maybe-dvi-bison \
-    maybe-dvi-byacc \
-    maybe-dvi-bzip2 \
-    maybe-dvi-dejagnu \
-    maybe-dvi-diff \
-    maybe-dvi-dosutils \
-    maybe-dvi-etc \
-    maybe-dvi-fastjar \
-    maybe-dvi-fileutils \
-    maybe-dvi-findutils \
-    maybe-dvi-find \
-    maybe-dvi-flex \
-    maybe-dvi-gas \
-    maybe-dvi-gawk \
-    maybe-dvi-gettext \
-    maybe-dvi-gnuserv \
-    maybe-dvi-gprof \
-    maybe-dvi-gzip \
-    maybe-dvi-hello \
-    maybe-dvi-indent \
-    maybe-dvi-intl \
-    maybe-dvi-tcl \
-    maybe-dvi-itcl \
-    maybe-dvi-ld \
-    maybe-dvi-libgui \
-    maybe-dvi-libiberty \
-    maybe-dvi-libtool \
-    maybe-dvi-m4 \
-    maybe-dvi-make \
-    maybe-dvi-mmalloc \
-    maybe-dvi-patch \
-    maybe-dvi-perl \
-    maybe-dvi-prms \
-    maybe-dvi-rcs \
-    maybe-dvi-readline \
-    maybe-dvi-release \
-    maybe-dvi-recode \
-    maybe-dvi-sed \
-    maybe-dvi-send-pr \
-    maybe-dvi-shellutils \
-    maybe-dvi-sid \
-    maybe-dvi-sim \
-    maybe-dvi-tar \
-    maybe-dvi-texinfo \
-    maybe-dvi-textutils \
-    maybe-dvi-time \
-    maybe-dvi-uudecode \
-    maybe-dvi-wdiff \
-    maybe-dvi-zip \
-    maybe-dvi-zlib \
-    maybe-dvi-gdb \
-    maybe-dvi-expect \
-    maybe-dvi-guile \
-    maybe-dvi-tk \
-    maybe-dvi-tix \
-    maybe-dvi-libtermcap \
-    maybe-dvi-utils
-
-.PHONY: dvi-target
-dvi-target:  \
-    maybe-dvi-target-libstdc++-v3 \
-    maybe-dvi-target-newlib \
-    maybe-dvi-target-libf2c \
-    maybe-dvi-target-libobjc \
-    maybe-dvi-target-libtermcap \
-    maybe-dvi-target-winsup \
-    maybe-dvi-target-libgloss \
-    maybe-dvi-target-libiberty \
-    maybe-dvi-target-gperf \
-    maybe-dvi-target-examples \
-    maybe-dvi-target-libffi \
-    maybe-dvi-target-libjava \
-    maybe-dvi-target-zlib \
-    maybe-dvi-target-boehm-gc \
-    maybe-dvi-target-qthreads \
-    maybe-dvi-target-rda
-
-# GCC, the eternal special case
-.PHONY: maybe-dvi-gcc dvi-gcc
-maybe-dvi-gcc:
-dvi-gcc: \
-    configure-gcc 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+clean-byacc: 
+       @[ -f ./byacc/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 gcc" ; \
-       (cd gcc && \
+       echo "Doing clean in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
-# Host modules.
+@endif byacc
 
-.PHONY: maybe-dvi-ash dvi-ash
-maybe-dvi-ash:
+.PHONY: maybe-distclean-byacc distclean-byacc
+maybe-distclean-byacc:
+@if byacc
+maybe-distclean-byacc: distclean-byacc
 
-dvi-ash: \
-    configure-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-byacc: 
+       @[ -f ./byacc/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 ash" ; \
-       (cd ash && \
+       echo "Doing distclean in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-dvi-autoconf dvi-autoconf
-maybe-dvi-autoconf:
+.PHONY: maybe-maintainer-clean-byacc maintainer-clean-byacc
+maybe-maintainer-clean-byacc:
+@if byacc
+maybe-maintainer-clean-byacc: maintainer-clean-byacc
 
-dvi-autoconf: \
-    configure-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-byacc: 
+       @[ -f ./byacc/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 autoconf" ; \
-       (cd autoconf && \
+       echo "Doing maintainer-clean in byacc" ; \
+       (cd $(HOST_SUBDIR)/byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 maintainer-clean) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-dvi-automake dvi-automake
-maybe-dvi-automake:
 
-dvi-automake: \
-    configure-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing dvi in automake" ; \
-       (cd automake && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+
+.PHONY: configure-bzip2 maybe-configure-bzip2
+maybe-configure-bzip2:
+@if bzip2
+maybe-configure-bzip2: configure-bzip2
+configure-bzip2: 
+       @test ! -f $(HOST_SUBDIR)/bzip2/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/bzip2 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/bzip2; \
+       cd "$(HOST_SUBDIR)/bzip2" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bzip2/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bzip2"; \
+       libsrcdir="$$s/bzip2"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif bzip2
 
 
-.PHONY: maybe-dvi-bash dvi-bash
-maybe-dvi-bash:
 
-dvi-bash: \
-    configure-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: all-bzip2 maybe-all-bzip2
+maybe-all-bzip2:
+@if bzip2
+TARGET-bzip2=all
+maybe-all-bzip2: all-bzip2
+all-bzip2: configure-bzip2
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bzip2 && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-bzip2))
+@endif bzip2
+
+
+.PHONY: check-bzip2 maybe-check-bzip2
+maybe-check-bzip2:
+@if bzip2
+maybe-check-bzip2: check-bzip2
+
+check-bzip2:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bzip2 && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif bzip2
+
+.PHONY: install-bzip2 maybe-install-bzip2
+maybe-install-bzip2:
+@if bzip2
+maybe-install-bzip2: install-bzip2
+
+install-bzip2: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/bzip2 && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif bzip2
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-bzip2 info-bzip2
+maybe-info-bzip2:
+@if bzip2
+maybe-info-bzip2: info-bzip2
+
+info-bzip2: \
+    configure-bzip2 
+       @[ -f ./bzip2/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 bash" ; \
-       (cd bash && \
+       echo "Doing info in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 info) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-bfd dvi-bfd
-maybe-dvi-bfd:
+.PHONY: maybe-dvi-bzip2 dvi-bzip2
+maybe-dvi-bzip2:
+@if bzip2
+maybe-dvi-bzip2: dvi-bzip2
 
-dvi-bfd: \
-    configure-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-bzip2: \
+    configure-bzip2 
+       @[ -f ./bzip2/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing dvi in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -2825,219 +5498,318 @@ dvi-bfd: \
                  dvi) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-opcodes dvi-opcodes
-maybe-dvi-opcodes:
+.PHONY: maybe-html-bzip2 html-bzip2
+maybe-html-bzip2:
+@if bzip2
+maybe-html-bzip2: html-bzip2
 
-dvi-opcodes: \
-    configure-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-bzip2: \
+    configure-bzip2 
+       @[ -f ./bzip2/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing html in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 html) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-binutils dvi-binutils
-maybe-dvi-binutils:
+.PHONY: maybe-TAGS-bzip2 TAGS-bzip2
+maybe-TAGS-bzip2:
+@if bzip2
+maybe-TAGS-bzip2: TAGS-bzip2
 
-dvi-binutils: \
-    configure-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-bzip2: \
+    configure-bzip2 
+       @[ -f ./bzip2/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing TAGS in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 TAGS) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-bison dvi-bison
-maybe-dvi-bison:
+.PHONY: maybe-install-info-bzip2 install-info-bzip2
+maybe-install-info-bzip2:
+@if bzip2
+maybe-install-info-bzip2: install-info-bzip2
 
-dvi-bison: \
-    configure-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-bzip2: \
+    configure-bzip2 \
+    info-bzip2 
+       @[ -f ./bzip2/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 bison" ; \
-       (cd bison && \
+       echo "Doing install-info in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 install-info) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-byacc dvi-byacc
-maybe-dvi-byacc:
+.PHONY: maybe-installcheck-bzip2 installcheck-bzip2
+maybe-installcheck-bzip2:
+@if bzip2
+maybe-installcheck-bzip2: installcheck-bzip2
 
-dvi-byacc: \
-    configure-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-bzip2: \
+    configure-bzip2 
+       @[ -f ./bzip2/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing installcheck in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 installcheck) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-bzip2 dvi-bzip2
-maybe-dvi-bzip2:
+.PHONY: maybe-mostlyclean-bzip2 mostlyclean-bzip2
+maybe-mostlyclean-bzip2:
+@if bzip2
+maybe-mostlyclean-bzip2: mostlyclean-bzip2
 
-dvi-bzip2: \
-    configure-bzip2 
+mostlyclean-bzip2: 
        @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       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 bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing mostlyclean in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 mostlyclean) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-dejagnu dvi-dejagnu
-maybe-dvi-dejagnu:
+.PHONY: maybe-clean-bzip2 clean-bzip2
+maybe-clean-bzip2:
+@if bzip2
+maybe-clean-bzip2: clean-bzip2
 
-dvi-dejagnu: \
-    configure-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-bzip2: 
+       @[ -f ./bzip2/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing clean in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-diff dvi-diff
-maybe-dvi-diff:
+.PHONY: maybe-distclean-bzip2 distclean-bzip2
+maybe-distclean-bzip2:
+@if bzip2
+maybe-distclean-bzip2: distclean-bzip2
 
-dvi-diff: \
-    configure-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-bzip2: 
+       @[ -f ./bzip2/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 diff" ; \
-       (cd diff && \
+       echo "Doing distclean in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-dosutils dvi-dosutils
-maybe-dvi-dosutils:
+.PHONY: maybe-maintainer-clean-bzip2 maintainer-clean-bzip2
+maybe-maintainer-clean-bzip2:
+@if bzip2
+maybe-maintainer-clean-bzip2: maintainer-clean-bzip2
 
-dvi-dosutils: \
-    configure-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-bzip2: 
+       @[ -f ./bzip2/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing maintainer-clean in bzip2" ; \
+       (cd $(HOST_SUBDIR)/bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 maintainer-clean) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-etc dvi-etc
-maybe-dvi-etc:
 
-dvi-etc: \
-    configure-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-dejagnu maybe-configure-dejagnu
+maybe-configure-dejagnu:
+@if dejagnu
+maybe-configure-dejagnu: configure-dejagnu
+configure-dejagnu: 
+       @test ! -f $(HOST_SUBDIR)/dejagnu/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/dejagnu ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/dejagnu; \
+       cd "$(HOST_SUBDIR)/dejagnu" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/dejagnu/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/dejagnu"; \
+       libsrcdir="$$s/dejagnu"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif dejagnu
+
+
+
+.PHONY: all-dejagnu maybe-all-dejagnu
+maybe-all-dejagnu:
+@if dejagnu
+TARGET-dejagnu=all
+maybe-all-dejagnu: all-dejagnu
+all-dejagnu: configure-dejagnu
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/dejagnu && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-dejagnu))
+@endif dejagnu
+
+
+.PHONY: check-dejagnu maybe-check-dejagnu
+maybe-check-dejagnu:
+@if dejagnu
+maybe-check-dejagnu: check-dejagnu
+
+check-dejagnu:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/dejagnu && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif dejagnu
+
+.PHONY: install-dejagnu maybe-install-dejagnu
+maybe-install-dejagnu:
+@if dejagnu
+maybe-install-dejagnu: install-dejagnu
+
+install-dejagnu: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/dejagnu && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif dejagnu
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-dejagnu info-dejagnu
+maybe-info-dejagnu:
+@if dejagnu
+maybe-info-dejagnu: info-dejagnu
+
+info-dejagnu: \
+    configure-dejagnu 
+       @[ -f ./dejagnu/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 etc" ; \
-       (cd etc && \
+       echo "Doing info in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 info) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-fastjar dvi-fastjar
-maybe-dvi-fastjar:
+.PHONY: maybe-dvi-dejagnu dvi-dejagnu
+maybe-dvi-dejagnu:
+@if dejagnu
+maybe-dvi-dejagnu: dvi-dejagnu
 
-dvi-fastjar: \
-    configure-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-dejagnu: \
+    configure-dejagnu 
+       @[ -f ./dejagnu/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing dvi in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -3045,219 +5817,318 @@ dvi-fastjar: \
                  dvi) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-fileutils dvi-fileutils
-maybe-dvi-fileutils:
+.PHONY: maybe-html-dejagnu html-dejagnu
+maybe-html-dejagnu:
+@if dejagnu
+maybe-html-dejagnu: html-dejagnu
 
-dvi-fileutils: \
-    configure-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-dejagnu: \
+    configure-dejagnu 
+       @[ -f ./dejagnu/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing html in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 html) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-findutils dvi-findutils
-maybe-dvi-findutils:
+.PHONY: maybe-TAGS-dejagnu TAGS-dejagnu
+maybe-TAGS-dejagnu:
+@if dejagnu
+maybe-TAGS-dejagnu: TAGS-dejagnu
 
-dvi-findutils: \
-    configure-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-dejagnu: \
+    configure-dejagnu 
+       @[ -f ./dejagnu/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing TAGS in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 TAGS) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-find dvi-find
-maybe-dvi-find:
+.PHONY: maybe-install-info-dejagnu install-info-dejagnu
+maybe-install-info-dejagnu:
+@if dejagnu
+maybe-install-info-dejagnu: install-info-dejagnu
 
-dvi-find: \
-    configure-find 
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-dejagnu: \
+    configure-dejagnu \
+    info-dejagnu 
+       @[ -f ./dejagnu/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 find" ; \
-       (cd find && \
+       echo "Doing install-info in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 install-info) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-flex dvi-flex
-maybe-dvi-flex:
+.PHONY: maybe-installcheck-dejagnu installcheck-dejagnu
+maybe-installcheck-dejagnu:
+@if dejagnu
+maybe-installcheck-dejagnu: installcheck-dejagnu
 
-dvi-flex: \
-    configure-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-dejagnu: \
+    configure-dejagnu 
+       @[ -f ./dejagnu/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 flex" ; \
-       (cd flex && \
+       echo "Doing installcheck in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 installcheck) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-gas dvi-gas
-maybe-dvi-gas:
+.PHONY: maybe-mostlyclean-dejagnu mostlyclean-dejagnu
+maybe-mostlyclean-dejagnu:
+@if dejagnu
+maybe-mostlyclean-dejagnu: mostlyclean-dejagnu
 
-dvi-gas: \
-    configure-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-dejagnu: 
+       @[ -f ./dejagnu/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 gas" ; \
-       (cd gas && \
+       echo "Doing mostlyclean in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 mostlyclean) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-gawk dvi-gawk
-maybe-dvi-gawk:
+.PHONY: maybe-clean-dejagnu clean-dejagnu
+maybe-clean-dejagnu:
+@if dejagnu
+maybe-clean-dejagnu: clean-dejagnu
 
-dvi-gawk: \
-    configure-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-dejagnu: 
+       @[ -f ./dejagnu/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing clean in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-gettext dvi-gettext
-maybe-dvi-gettext:
+.PHONY: maybe-distclean-dejagnu distclean-dejagnu
+maybe-distclean-dejagnu:
+@if dejagnu
+maybe-distclean-dejagnu: distclean-dejagnu
 
-dvi-gettext: \
-    configure-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-dejagnu: 
+       @[ -f ./dejagnu/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing distclean in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-gnuserv dvi-gnuserv
-maybe-dvi-gnuserv:
+.PHONY: maybe-maintainer-clean-dejagnu maintainer-clean-dejagnu
+maybe-maintainer-clean-dejagnu:
+@if dejagnu
+maybe-maintainer-clean-dejagnu: maintainer-clean-dejagnu
 
-dvi-gnuserv: \
-    configure-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-dejagnu: 
+       @[ -f ./dejagnu/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing maintainer-clean in dejagnu" ; \
+       (cd $(HOST_SUBDIR)/dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 maintainer-clean) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-gprof dvi-gprof
-maybe-dvi-gprof:
 
-dvi-gprof: \
-    configure-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-diff maybe-configure-diff
+maybe-configure-diff:
+@if diff
+maybe-configure-diff: configure-diff
+configure-diff: 
+       @test ! -f $(HOST_SUBDIR)/diff/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/diff ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/diff; \
+       cd "$(HOST_SUBDIR)/diff" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/diff/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/diff"; \
+       libsrcdir="$$s/diff"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif diff
+
+
+
+.PHONY: all-diff maybe-all-diff
+maybe-all-diff:
+@if diff
+TARGET-diff=all
+maybe-all-diff: all-diff
+all-diff: configure-diff
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/diff && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-diff))
+@endif diff
+
+
+.PHONY: check-diff maybe-check-diff
+maybe-check-diff:
+@if diff
+maybe-check-diff: check-diff
+
+check-diff:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/diff && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif diff
+
+.PHONY: install-diff maybe-install-diff
+maybe-install-diff:
+@if diff
+maybe-install-diff: install-diff
+
+install-diff: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/diff && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif diff
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-diff info-diff
+maybe-info-diff:
+@if diff
+maybe-info-diff: info-diff
+
+info-diff: \
+    configure-diff 
+       @[ -f ./diff/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 gprof" ; \
-       (cd gprof && \
+       echo "Doing info in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 info) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-gzip dvi-gzip
-maybe-dvi-gzip:
+.PHONY: maybe-dvi-diff dvi-diff
+maybe-dvi-diff:
+@if diff
+maybe-dvi-diff: dvi-diff
 
-dvi-gzip: \
-    configure-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-diff: \
+    configure-diff 
+       @[ -f ./diff/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 gzip" ; \
-       (cd gzip && \
+       echo "Doing dvi in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -3265,307 +6136,313 @@ dvi-gzip: \
                  dvi) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-hello dvi-hello
-maybe-dvi-hello:
+.PHONY: maybe-html-diff html-diff
+maybe-html-diff:
+@if diff
+maybe-html-diff: html-diff
 
-dvi-hello: \
-    configure-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-diff: \
+    configure-diff 
+       @[ -f ./diff/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 hello" ; \
-       (cd hello && \
+       echo "Doing html in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 html) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-indent dvi-indent
-maybe-dvi-indent:
+.PHONY: maybe-TAGS-diff TAGS-diff
+maybe-TAGS-diff:
+@if diff
+maybe-TAGS-diff: TAGS-diff
 
-dvi-indent: \
-    configure-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-diff: \
+    configure-diff 
+       @[ -f ./diff/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 indent" ; \
-       (cd indent && \
+       echo "Doing TAGS in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 TAGS) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-intl dvi-intl
-maybe-dvi-intl:
+.PHONY: maybe-install-info-diff install-info-diff
+maybe-install-info-diff:
+@if diff
+maybe-install-info-diff: install-info-diff
 
-dvi-intl: \
-    configure-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-diff: \
+    configure-diff \
+    info-diff 
+       @[ -f ./diff/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 intl" ; \
-       (cd intl && \
+       echo "Doing install-info in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 install-info) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-tcl dvi-tcl
-maybe-dvi-tcl:
+.PHONY: maybe-installcheck-diff installcheck-diff
+maybe-installcheck-diff:
+@if diff
+maybe-installcheck-diff: installcheck-diff
 
-dvi-tcl: \
-    configure-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-diff: \
+    configure-diff 
+       @[ -f ./diff/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 tcl" ; \
-       (cd tcl && \
+       echo "Doing installcheck in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 installcheck) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-itcl dvi-itcl
-maybe-dvi-itcl:
+.PHONY: maybe-mostlyclean-diff mostlyclean-diff
+maybe-mostlyclean-diff:
+@if diff
+maybe-mostlyclean-diff: mostlyclean-diff
 
-dvi-itcl: \
-    configure-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-diff: 
+       @[ -f ./diff/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing mostlyclean in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 mostlyclean) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-ld dvi-ld
-maybe-dvi-ld:
+.PHONY: maybe-clean-diff clean-diff
+maybe-clean-diff:
+@if diff
+maybe-clean-diff: clean-diff
 
-dvi-ld: \
-    configure-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-diff: 
+       @[ -f ./diff/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 ld" ; \
-       (cd ld && \
+       echo "Doing clean in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-libgui dvi-libgui
-maybe-dvi-libgui:
+.PHONY: maybe-distclean-diff distclean-diff
+maybe-distclean-diff:
+@if diff
+maybe-distclean-diff: distclean-diff
 
-dvi-libgui: \
-    configure-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-diff: 
+       @[ -f ./diff/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 libgui" ; \
-       (cd libgui && \
+       echo "Doing distclean in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-libiberty dvi-libiberty
-maybe-dvi-libiberty:
+.PHONY: maybe-maintainer-clean-diff maintainer-clean-diff
+maybe-maintainer-clean-diff:
+@if diff
+maybe-maintainer-clean-diff: maintainer-clean-diff
 
-dvi-libiberty: \
-    configure-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-diff: 
+       @[ -f ./diff/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 libiberty" ; \
-       (cd libiberty && \
+       echo "Doing maintainer-clean in diff" ; \
+       (cd $(HOST_SUBDIR)/diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 maintainer-clean) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-dvi-libtool dvi-libtool
-maybe-dvi-libtool:
 
-dvi-libtool: \
-    configure-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing dvi in libtool" ; \
-       (cd libtool && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+
+.PHONY: configure-dosutils maybe-configure-dosutils
+maybe-configure-dosutils:
+@if dosutils
+maybe-configure-dosutils: configure-dosutils
+configure-dosutils: 
+       @test ! -f $(HOST_SUBDIR)/dosutils/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/dosutils ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/dosutils; \
+       cd "$(HOST_SUBDIR)/dosutils" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/dosutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/dosutils"; \
+       libsrcdir="$$s/dosutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif dosutils
 
 
-.PHONY: maybe-dvi-m4 dvi-m4
-maybe-dvi-m4:
 
-dvi-m4: \
-    configure-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing dvi in m4" ; \
-       (cd m4 && \
-         $(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
+.PHONY: all-dosutils maybe-all-dosutils
+maybe-all-dosutils:
+@if dosutils
+TARGET-dosutils=all
+maybe-all-dosutils: all-dosutils
+all-dosutils: configure-dosutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/dosutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-dosutils))
+@endif dosutils
 
 
-.PHONY: maybe-dvi-make dvi-make
-maybe-dvi-make:
+.PHONY: check-dosutils maybe-check-dosutils
+maybe-check-dosutils:
+@if dosutils
+maybe-check-dosutils: check-dosutils
 
-dvi-make: \
-    configure-make 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing dvi in make" ; \
-       (cd make && \
-         $(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
+check-dosutils:
 
+@endif dosutils
 
-.PHONY: maybe-dvi-mmalloc dvi-mmalloc
-maybe-dvi-mmalloc:
+.PHONY: install-dosutils maybe-install-dosutils
+maybe-install-dosutils:
+@if dosutils
+maybe-install-dosutils: install-dosutils
 
-dvi-mmalloc: \
-    configure-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing dvi in mmalloc" ; \
-       (cd mmalloc && \
-         $(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
+install-dosutils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/dosutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
 
+@endif dosutils
 
-.PHONY: maybe-dvi-patch dvi-patch
-maybe-dvi-patch:
+# Other targets (info, dvi, etc.)
 
-dvi-patch: \
-    configure-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: maybe-info-dosutils info-dosutils
+maybe-info-dosutils:
+@if dosutils
+maybe-info-dosutils: info-dosutils
+
+info-dosutils: \
+    configure-dosutils 
+       @[ -f ./dosutils/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 patch" ; \
-       (cd patch && \
+       echo "Doing info in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 info) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-perl dvi-perl
-maybe-dvi-perl:
+.PHONY: maybe-dvi-dosutils dvi-dosutils
+maybe-dvi-dosutils:
+@if dosutils
+maybe-dvi-dosutils: dvi-dosutils
 
-dvi-perl: \
-    configure-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-dosutils: \
+    configure-dosutils 
+       @[ -f ./dosutils/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 perl" ; \
-       (cd perl && \
+       echo "Doing dvi in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -3573,219 +6450,318 @@ dvi-perl: \
                  dvi) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-prms dvi-prms
-maybe-dvi-prms:
+.PHONY: maybe-html-dosutils html-dosutils
+maybe-html-dosutils:
+@if dosutils
+maybe-html-dosutils: html-dosutils
 
-dvi-prms: \
-    configure-prm
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-dosutils: \
+    configure-dosutil
+       @[ -f ./dosutils/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 prms" ; \
-       (cd prms && \
+       echo "Doing html in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 html) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-rcs dvi-rcs
-maybe-dvi-rcs:
+.PHONY: maybe-TAGS-dosutils TAGS-dosutils
+maybe-TAGS-dosutils:
+@if dosutils
+maybe-TAGS-dosutils: TAGS-dosutils
 
-dvi-rcs: \
-    configure-rc
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-dosutils: \
+    configure-dosutil
+       @[ -f ./dosutils/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 rcs" ; \
-       (cd rcs && \
+       echo "Doing TAGS in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 TAGS) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-readline dvi-readline
-maybe-dvi-readline:
+.PHONY: maybe-install-info-dosutils install-info-dosutils
+maybe-install-info-dosutils:
+@if dosutils
+maybe-install-info-dosutils: install-info-dosutils
 
-dvi-readline: \
-    configure-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-dosutils: \
+    configure-dosutils \
+    info-dosutils 
+       @[ -f ./dosutils/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 readline" ; \
-       (cd readline && \
+       echo "Doing install-info in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 install-info) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-release dvi-release
-maybe-dvi-release:
+.PHONY: maybe-installcheck-dosutils installcheck-dosutils
+maybe-installcheck-dosutils:
+@if dosutils
+maybe-installcheck-dosutils: installcheck-dosutils
 
-dvi-release: \
-    configure-release 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-dosutils: \
+    configure-dosutils 
+       @[ -f ./dosutils/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 release" ; \
-       (cd release && \
+       echo "Doing installcheck in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 installcheck) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-recode dvi-recode
-maybe-dvi-recode:
+.PHONY: maybe-mostlyclean-dosutils mostlyclean-dosutils
+maybe-mostlyclean-dosutils:
+@if dosutils
+maybe-mostlyclean-dosutils: mostlyclean-dosutils
 
-dvi-recode: \
-    configure-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-dosutils: 
+       @[ -f ./dosutils/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 recode" ; \
-       (cd recode && \
+       echo "Doing mostlyclean in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 mostlyclean) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-sed dvi-sed
-maybe-dvi-sed:
+.PHONY: maybe-clean-dosutils clean-dosutils
+maybe-clean-dosutils:
+@if dosutils
+maybe-clean-dosutils: clean-dosutils
 
-dvi-sed: \
-    configure-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-dosutils: 
+       @[ -f ./dosutils/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 sed" ; \
-       (cd sed && \
+       echo "Doing clean in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-send-pr dvi-send-pr
-maybe-dvi-send-pr:
+.PHONY: maybe-distclean-dosutils distclean-dosutils
+maybe-distclean-dosutils:
+@if dosutils
+maybe-distclean-dosutils: distclean-dosutils
 
-dvi-send-pr: \
-    configure-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-dosutils: 
+       @[ -f ./dosutils/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 send-pr" ; \
-       (cd send-pr && \
+       echo "Doing distclean in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-shellutils dvi-shellutils
-maybe-dvi-shellutils:
+.PHONY: maybe-maintainer-clean-dosutils maintainer-clean-dosutils
+maybe-maintainer-clean-dosutils:
+@if dosutils
+maybe-maintainer-clean-dosutils: maintainer-clean-dosutils
 
-dvi-shellutils: \
-    configure-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-dosutils: 
+       @[ -f ./dosutils/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 shellutils" ; \
-       (cd shellutils && \
+       echo "Doing maintainer-clean in dosutils" ; \
+       (cd $(HOST_SUBDIR)/dosutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 maintainer-clean) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-dvi-sid dvi-sid
-maybe-dvi-sid:
 
-dvi-sid: \
-    configure-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-etc maybe-configure-etc
+maybe-configure-etc:
+@if etc
+maybe-configure-etc: configure-etc
+configure-etc: 
+       @test ! -f $(HOST_SUBDIR)/etc/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/etc ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/etc; \
+       cd "$(HOST_SUBDIR)/etc" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/etc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/etc"; \
+       libsrcdir="$$s/etc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif etc
+
+
+
+.PHONY: all-etc maybe-all-etc
+maybe-all-etc:
+@if etc
+TARGET-etc=all
+maybe-all-etc: all-etc
+all-etc: configure-etc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/etc && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-etc))
+@endif etc
+
+
+.PHONY: check-etc maybe-check-etc
+maybe-check-etc:
+@if etc
+maybe-check-etc: check-etc
+
+check-etc:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/etc && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif etc
+
+.PHONY: install-etc maybe-install-etc
+maybe-install-etc:
+@if etc
+maybe-install-etc: install-etc
+
+install-etc: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/etc && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif etc
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-etc info-etc
+maybe-info-etc:
+@if etc
+maybe-info-etc: info-etc
+
+info-etc: \
+    configure-etc 
+       @[ -f ./etc/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 sid" ; \
-       (cd sid && \
+       echo "Doing info in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 info) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-sim dvi-sim
-maybe-dvi-sim:
+.PHONY: maybe-dvi-etc dvi-etc
+maybe-dvi-etc:
+@if etc
+maybe-dvi-etc: dvi-etc
 
-dvi-sim: \
-    configure-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-etc: \
+    configure-etc 
+       @[ -f ./etc/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 sim" ; \
-       (cd sim && \
+       echo "Doing dvi in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -3793,241 +6769,321 @@ dvi-sim: \
                  dvi) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-tar dvi-tar
-maybe-dvi-tar:
+.PHONY: maybe-html-etc html-etc
+maybe-html-etc:
+@if etc
+maybe-html-etc: html-etc
 
-dvi-tar: \
-    configure-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-etc: \
+    configure-etc 
+       @[ -f ./etc/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 tar" ; \
-       (cd tar && \
+       echo "Doing html in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 html) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-texinfo dvi-texinfo
-maybe-dvi-texinfo:
+.PHONY: maybe-TAGS-etc TAGS-etc
+maybe-TAGS-etc:
+@if etc
+maybe-TAGS-etc: TAGS-etc
 
-dvi-texinfo: \
-    configure-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-etc: \
+    configure-etc 
+       @[ -f ./etc/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 texinfo" ; \
-       (cd texinfo && \
+       echo "Doing TAGS in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 TAGS) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-textutils dvi-textutils
-maybe-dvi-textutils:
+.PHONY: maybe-install-info-etc install-info-etc
+maybe-install-info-etc:
+@if etc
+maybe-install-info-etc: install-info-etc
 
-dvi-textutils: \
-    configure-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-etc: \
+    configure-etc \
+    info-etc 
+       @[ -f ./etc/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 textutils" ; \
-       (cd textutils && \
+       echo "Doing install-info in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 install-info) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-time dvi-time
-maybe-dvi-time:
+.PHONY: maybe-installcheck-etc installcheck-etc
+maybe-installcheck-etc:
+@if etc
+maybe-installcheck-etc: installcheck-etc
 
-dvi-time: \
-    configure-time 
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-etc: \
+    configure-etc 
+       @[ -f ./etc/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 time" ; \
-       (cd time && \
+       echo "Doing installcheck in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 installcheck) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-uudecode dvi-uudecode
-maybe-dvi-uudecode:
+.PHONY: maybe-mostlyclean-etc mostlyclean-etc
+maybe-mostlyclean-etc:
+@if etc
+maybe-mostlyclean-etc: mostlyclean-etc
 
-dvi-uudecode: \
-    configure-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-etc: 
+       @[ -f ./etc/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 uudecode" ; \
-       (cd uudecode && \
+       echo "Doing mostlyclean in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 mostlyclean) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-wdiff dvi-wdiff
-maybe-dvi-wdiff:
+.PHONY: maybe-clean-etc clean-etc
+maybe-clean-etc:
+@if etc
+maybe-clean-etc: clean-etc
 
-dvi-wdiff: \
-    configure-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-etc: 
+       @[ -f ./etc/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 wdiff" ; \
-       (cd wdiff && \
+       echo "Doing clean in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-zip dvi-zip
-maybe-dvi-zip:
+.PHONY: maybe-distclean-etc distclean-etc
+maybe-distclean-etc:
+@if etc
+maybe-distclean-etc: distclean-etc
 
-dvi-zip: \
-    configure-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-etc: 
+       @[ -f ./etc/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 zip" ; \
-       (cd zip && \
+       echo "Doing distclean in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-dvi-zlib dvi-zlib
-maybe-dvi-zlib:
+.PHONY: maybe-maintainer-clean-etc maintainer-clean-etc
+maybe-maintainer-clean-etc:
+@if etc
+maybe-maintainer-clean-etc: maintainer-clean-etc
 
-dvi-zlib: \
-    configure-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-etc: 
+       @[ -f ./etc/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 zlib" ; \
-       (cd zlib && \
+       echo "Doing maintainer-clean in etc" ; \
+       (cd $(HOST_SUBDIR)/etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 maintainer-clean) \
+         || exit 1
+
+@endif etc
+
+
+
+.PHONY: configure-fastjar maybe-configure-fastjar
+maybe-configure-fastjar:
+@if fastjar
+maybe-configure-fastjar: configure-fastjar
+configure-fastjar: 
+       @test ! -f $(HOST_SUBDIR)/fastjar/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/fastjar ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/fastjar; \
+       cd "$(HOST_SUBDIR)/fastjar" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/fastjar/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/fastjar"; \
+       libsrcdir="$$s/fastjar"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif fastjar
+
+
+
+.PHONY: all-fastjar maybe-all-fastjar
+maybe-all-fastjar:
+@if fastjar
+TARGET-fastjar=all
+maybe-all-fastjar: all-fastjar
+all-fastjar: configure-fastjar
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/fastjar && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-fastjar))
+@endif fastjar
+
+
+.PHONY: check-fastjar maybe-check-fastjar
+maybe-check-fastjar:
+@if fastjar
+maybe-check-fastjar: check-fastjar
+
+# This module is only tested in a native toolchain.
+check-fastjar:
+       @if [ '$(host)' = '$(target)' ] ; then \
+         r=`${PWD_COMMAND}`; export r; \
+         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+         $(HOST_EXPORTS) \
+         (cd $(HOST_SUBDIR)/fastjar && \
+           $(MAKE) $(FLAGS_TO_PASS)  check); \
+       fi
+
+@endif fastjar
 
+.PHONY: install-fastjar maybe-install-fastjar
+maybe-install-fastjar:
+@if fastjar
+maybe-install-fastjar: install-fastjar
 
-.PHONY: maybe-dvi-gdb dvi-gdb
-maybe-dvi-gdb:
+install-fastjar: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/fastjar && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
 
-dvi-gdb: \
-    configure-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing dvi in gdb" ; \
-       (cd gdb && \
-         $(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 fastjar
 
+# Other targets (info, dvi, etc.)
 
-.PHONY: maybe-dvi-expect dvi-expect
-maybe-dvi-expect:
+.PHONY: maybe-info-fastjar info-fastjar
+maybe-info-fastjar:
+@if fastjar
+maybe-info-fastjar: info-fastjar
 
-dvi-expect: \
-    configure-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+info-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/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 expect" ; \
-       (cd expect && \
+       echo "Doing info in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 info) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-guile dvi-guile
-maybe-dvi-guile:
+.PHONY: maybe-dvi-fastjar dvi-fastjar
+maybe-dvi-fastjar:
+@if fastjar
+maybe-dvi-fastjar: dvi-fastjar
 
-dvi-guile: \
-    configure-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/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 guile" ; \
-       (cd guile && \
+       echo "Doing dvi in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -4035,244 +7091,318 @@ dvi-guile: \
                  dvi) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-tk dvi-tk
-maybe-dvi-tk:
+.PHONY: maybe-html-fastjar html-fastjar
+maybe-html-fastjar:
+@if fastjar
+maybe-html-fastjar: html-fastjar
 
-dvi-tk: \
-    configure-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/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 tk" ; \
-       (cd tk && \
+       echo "Doing html in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 html) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-tix dvi-tix
-maybe-dvi-tix:
+.PHONY: maybe-TAGS-fastjar TAGS-fastjar
+maybe-TAGS-fastjar:
+@if fastjar
+maybe-TAGS-fastjar: TAGS-fastjar
 
-dvi-tix: \
-    configure-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/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 tix" ; \
-       (cd tix && \
+       echo "Doing TAGS in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 TAGS) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-libtermcap dvi-libtermcap
-maybe-dvi-libtermcap:
+.PHONY: maybe-install-info-fastjar install-info-fastjar
+maybe-install-info-fastjar:
+@if fastjar
+maybe-install-info-fastjar: install-info-fastjar
 
-dvi-libtermcap: \
-    configure-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-fastjar: \
+    configure-fastjar \
+    info-fastjar 
+       @[ -f ./fastjar/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 libtermcap" ; \
-       (cd libtermcap && \
+       echo "Doing install-info in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 install-info) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-utils dvi-utils
-maybe-dvi-utils:
+.PHONY: maybe-installcheck-fastjar installcheck-fastjar
+maybe-installcheck-fastjar:
+@if fastjar
+maybe-installcheck-fastjar: installcheck-fastjar
 
-dvi-utils: \
-    configure-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/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 utils" ; \
-       (cd utils && \
+       echo "Doing installcheck in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 installcheck) \
          || exit 1
 
+@endif fastjar
 
+.PHONY: maybe-mostlyclean-fastjar mostlyclean-fastjar
+maybe-mostlyclean-fastjar:
+@if fastjar
+maybe-mostlyclean-fastjar: mostlyclean-fastjar
 
-# Target modules.
-
-.PHONY: maybe-dvi-target-libstdc++-v3 dvi-target-libstdc++-v3
-maybe-dvi-target-libstdc++-v3:
-
-dvi-target-libstdc++-v3: \
-    configure-target-libstdc++-v3 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-fastjar: 
+       @[ -f ./fastjar/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; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+       echo "Doing mostlyclean in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 mostlyclean) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-target-newlib dvi-target-newlib
-maybe-dvi-target-newlib:
+.PHONY: maybe-clean-fastjar clean-fastjar
+maybe-clean-fastjar:
+@if fastjar
+maybe-clean-fastjar: clean-fastjar
 
-dvi-target-newlib: \
-    configure-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-fastjar: 
+       @[ -f ./fastjar/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; \
-       (cd $(TARGET_SUBDIR)/newlib && \
+       echo "Doing clean in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-target-libf2c dvi-target-libf2c
-maybe-dvi-target-libf2c:
+.PHONY: maybe-distclean-fastjar distclean-fastjar
+maybe-distclean-fastjar:
+@if fastjar
+maybe-distclean-fastjar: distclean-fastjar
 
-dvi-target-libf2c: \
-    configure-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-fastjar: 
+       @[ -f ./fastjar/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; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       echo "Doing distclean in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-target-libobjc dvi-target-libobjc
-maybe-dvi-target-libobjc:
+.PHONY: maybe-maintainer-clean-fastjar maintainer-clean-fastjar
+maybe-maintainer-clean-fastjar:
+@if fastjar
+maybe-maintainer-clean-fastjar: maintainer-clean-fastjar
 
-dvi-target-libobjc: \
-    configure-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-fastjar: 
+       @[ -f ./fastjar/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; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       echo "Doing maintainer-clean in fastjar" ; \
+       (cd $(HOST_SUBDIR)/fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 maintainer-clean) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-dvi-target-libtermcap dvi-target-libtermcap
-maybe-dvi-target-libtermcap:
 
-dvi-target-libtermcap: \
-    configure-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+
+.PHONY: configure-fileutils maybe-configure-fileutils
+maybe-configure-fileutils:
+@if fileutils
+maybe-configure-fileutils: configure-fileutils
+configure-fileutils: 
+       @test ! -f $(HOST_SUBDIR)/fileutils/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/fileutils ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/fileutils; \
+       cd "$(HOST_SUBDIR)/fileutils" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/fileutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/fileutils"; \
+       libsrcdir="$$s/fileutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif fileutils
 
 
-.PHONY: maybe-dvi-target-winsup dvi-target-winsup
-maybe-dvi-target-winsup:
 
-dvi-target-winsup: \
-    configure-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+.PHONY: all-fileutils maybe-all-fileutils
+maybe-all-fileutils:
+@if fileutils
+TARGET-fileutils=all
+maybe-all-fileutils: all-fileutils
+all-fileutils: configure-fileutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/fileutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-fileutils))
+@endif fileutils
+
+
+.PHONY: check-fileutils maybe-check-fileutils
+maybe-check-fileutils:
+@if fileutils
+maybe-check-fileutils: check-fileutils
+
+check-fileutils:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/fileutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif fileutils
+
+.PHONY: install-fileutils maybe-install-fileutils
+maybe-install-fileutils:
+@if fileutils
+maybe-install-fileutils: install-fileutils
+
+install-fileutils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/fileutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif fileutils
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-fileutils info-fileutils
+maybe-info-fileutils:
+@if fileutils
+maybe-info-fileutils: info-fileutils
+
+info-fileutils: \
+    configure-fileutils 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       echo "Doing info in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 info) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-libgloss dvi-target-libgloss
-maybe-dvi-target-libgloss:
+.PHONY: maybe-dvi-fileutils dvi-fileutils
+maybe-dvi-fileutils:
+@if fileutils
+maybe-dvi-fileutils: dvi-fileutils
 
-dvi-target-libgloss: \
-    configure-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-fileutils: \
+    configure-fileutils 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       echo "Doing dvi in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -4280,376 +7410,368 @@ dvi-target-libgloss: \
                  dvi) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-libiberty dvi-target-libiberty
-maybe-dvi-target-libiberty:
+.PHONY: maybe-html-fileutils html-fileutils
+maybe-html-fileutils:
+@if fileutils
+maybe-html-fileutils: html-fileutils
 
-dvi-target-libiberty: \
-    configure-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-fileutils: \
+    configure-fileutils 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       echo "Doing html in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 html) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-gperf dvi-target-gperf
-maybe-dvi-target-gperf:
+.PHONY: maybe-TAGS-fileutils TAGS-fileutils
+maybe-TAGS-fileutils:
+@if fileutils
+maybe-TAGS-fileutils: TAGS-fileutils
 
-dvi-target-gperf: \
-    configure-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-fileutils: \
+    configure-fileutils 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/gperf && \
+       echo "Doing TAGS in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 TAGS) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-examples dvi-target-examples
-maybe-dvi-target-examples:
+.PHONY: maybe-install-info-fileutils install-info-fileutils
+maybe-install-info-fileutils:
+@if fileutils
+maybe-install-info-fileutils: install-info-fileutils
 
-dvi-target-examples: \
-    configure-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-fileutils: \
+    configure-fileutils \
+    info-fileutils 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       echo "Doing install-info in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 install-info) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-libffi dvi-target-libffi
-maybe-dvi-target-libffi:
+.PHONY: maybe-installcheck-fileutils installcheck-fileutils
+maybe-installcheck-fileutils:
+@if fileutils
+maybe-installcheck-fileutils: installcheck-fileutils
 
-dvi-target-libffi: \
-    configure-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-fileutils: \
+    configure-fileutils 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       echo "Doing installcheck in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 installcheck) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-libjava dvi-target-libjava
-maybe-dvi-target-libjava:
+.PHONY: maybe-mostlyclean-fileutils mostlyclean-fileutils
+maybe-mostlyclean-fileutils:
+@if fileutils
+maybe-mostlyclean-fileutils: mostlyclean-fileutils
 
-dvi-target-libjava: \
-    configure-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-fileutils: 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       echo "Doing mostlyclean in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 mostlyclean) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-zlib dvi-target-zlib
-maybe-dvi-target-zlib:
+.PHONY: maybe-clean-fileutils clean-fileutils
+maybe-clean-fileutils:
+@if fileutils
+maybe-clean-fileutils: clean-fileutils
 
-dvi-target-zlib: \
-    configure-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-fileutils: 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       echo "Doing clean in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-boehm-gc dvi-target-boehm-gc
-maybe-dvi-target-boehm-gc:
+.PHONY: maybe-distclean-fileutils distclean-fileutils
+maybe-distclean-fileutils:
+@if fileutils
+maybe-distclean-fileutils: distclean-fileutils
 
-dvi-target-boehm-gc: \
-    configure-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-fileutils: 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       echo "Doing distclean in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-qthreads dvi-target-qthreads
-maybe-dvi-target-qthreads:
+.PHONY: maybe-maintainer-clean-fileutils maintainer-clean-fileutils
+maybe-maintainer-clean-fileutils:
+@if fileutils
+maybe-maintainer-clean-fileutils: maintainer-clean-fileutils
 
-dvi-target-qthreads: \
-    configure-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-fileutils: 
+       @[ -f ./fileutils/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; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       echo "Doing maintainer-clean in fileutils" ; \
+       (cd $(HOST_SUBDIR)/fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+                 maintainer-clean) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-dvi-target-rda dvi-target-rda
-maybe-dvi-target-rda:
 
-dvi-target-rda: \
-    configure-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       (cd $(TARGET_SUBDIR)/rda && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+
+.PHONY: configure-findutils maybe-configure-findutils
+maybe-configure-findutils:
+@if findutils
+maybe-configure-findutils: configure-findutils
+configure-findutils: 
+       @test ! -f $(HOST_SUBDIR)/findutils/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/findutils ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/findutils; \
+       cd "$(HOST_SUBDIR)/findutils" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/findutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/findutils"; \
+       libsrcdir="$$s/findutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif findutils
 
 
 
-.PHONY: do-TAGS
-do-TAGS: TAGS-host TAGS-target
+.PHONY: all-findutils maybe-all-findutils
+maybe-all-findutils:
+@if findutils
+TARGET-findutils=all
+maybe-all-findutils: all-findutils
+all-findutils: configure-findutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/findutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-findutils))
+@endif findutils
 
-.PHONY: TAGS-host
-TAGS-host: maybe-TAGS-gcc  \
-    maybe-TAGS-ash \
-    maybe-TAGS-autoconf \
-    maybe-TAGS-automake \
-    maybe-TAGS-bash \
-    maybe-TAGS-bfd \
-    maybe-TAGS-opcodes \
-    maybe-TAGS-binutils \
-    maybe-TAGS-bison \
-    maybe-TAGS-byacc \
-    maybe-TAGS-bzip2 \
-    maybe-TAGS-dejagnu \
-    maybe-TAGS-diff \
-    maybe-TAGS-dosutils \
-    maybe-TAGS-etc \
-    maybe-TAGS-fastjar \
-    maybe-TAGS-fileutils \
-    maybe-TAGS-findutils \
-    maybe-TAGS-find \
-    maybe-TAGS-flex \
-    maybe-TAGS-gas \
-    maybe-TAGS-gawk \
-    maybe-TAGS-gettext \
-    maybe-TAGS-gnuserv \
-    maybe-TAGS-gprof \
-    maybe-TAGS-gzip \
-    maybe-TAGS-hello \
-    maybe-TAGS-indent \
-    maybe-TAGS-intl \
-    maybe-TAGS-tcl \
-    maybe-TAGS-itcl \
-    maybe-TAGS-ld \
-    maybe-TAGS-libgui \
-    maybe-TAGS-libiberty \
-    maybe-TAGS-libtool \
-    maybe-TAGS-m4 \
-    maybe-TAGS-make \
-    maybe-TAGS-mmalloc \
-    maybe-TAGS-patch \
-    maybe-TAGS-perl \
-    maybe-TAGS-prms \
-    maybe-TAGS-rcs \
-    maybe-TAGS-readline \
-    maybe-TAGS-release \
-    maybe-TAGS-recode \
-    maybe-TAGS-sed \
-    maybe-TAGS-send-pr \
-    maybe-TAGS-shellutils \
-    maybe-TAGS-sid \
-    maybe-TAGS-sim \
-    maybe-TAGS-tar \
-    maybe-TAGS-texinfo \
-    maybe-TAGS-textutils \
-    maybe-TAGS-time \
-    maybe-TAGS-uudecode \
-    maybe-TAGS-wdiff \
-    maybe-TAGS-zip \
-    maybe-TAGS-zlib \
-    maybe-TAGS-gdb \
-    maybe-TAGS-expect \
-    maybe-TAGS-guile \
-    maybe-TAGS-tk \
-    maybe-TAGS-tix \
-    maybe-TAGS-libtermcap \
-    maybe-TAGS-utils
 
-.PHONY: TAGS-target
-TAGS-target:  \
-    maybe-TAGS-target-libstdc++-v3 \
-    maybe-TAGS-target-newlib \
-    maybe-TAGS-target-libf2c \
-    maybe-TAGS-target-libobjc \
-    maybe-TAGS-target-libtermcap \
-    maybe-TAGS-target-winsup \
-    maybe-TAGS-target-libgloss \
-    maybe-TAGS-target-libiberty \
-    maybe-TAGS-target-gperf \
-    maybe-TAGS-target-examples \
-    maybe-TAGS-target-libffi \
-    maybe-TAGS-target-libjava \
-    maybe-TAGS-target-zlib \
-    maybe-TAGS-target-boehm-gc \
-    maybe-TAGS-target-qthreads \
-    maybe-TAGS-target-rda
+.PHONY: check-findutils maybe-check-findutils
+maybe-check-findutils:
+@if findutils
+maybe-check-findutils: check-findutils
 
-# GCC, the eternal special case
-.PHONY: maybe-TAGS-gcc TAGS-gcc
-maybe-TAGS-gcc:
-TAGS-gcc: \
-    configure-gcc 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+check-findutils:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/findutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif findutils
+
+.PHONY: install-findutils maybe-install-findutils
+maybe-install-findutils:
+@if findutils
+maybe-install-findutils: install-findutils
+
+install-findutils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/findutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif findutils
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-findutils info-findutils
+maybe-info-findutils:
+@if findutils
+maybe-info-findutils: info-findutils
+
+info-findutils: \
+    configure-findutils 
+       @[ -f ./findutils/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 gcc" ; \
-       (cd gcc && \
+       echo "Doing info in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 info) \
          || exit 1
 
-# Host modules.
+@endif findutils
 
-.PHONY: maybe-TAGS-ash TAGS-ash
-maybe-TAGS-ash:
+.PHONY: maybe-dvi-findutils dvi-findutils
+maybe-dvi-findutils:
+@if findutils
+maybe-dvi-findutils: dvi-findutils
 
-TAGS-ash: \
-    configure-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-findutils: \
+    configure-findutils 
+       @[ -f ./findutils/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 ash" ; \
-       (cd ash && \
+       echo "Doing dvi in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 dvi) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-autoconf TAGS-autoconf
-maybe-TAGS-autoconf:
+.PHONY: maybe-html-findutils html-findutils
+maybe-html-findutils:
+@if findutils
+maybe-html-findutils: html-findutils
 
-TAGS-autoconf: \
-    configure-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-findutils: \
+    configure-findutils 
+       @[ -f ./findutils/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 autoconf" ; \
-       (cd autoconf && \
+       echo "Doing html in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 html) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-automake TAGS-automake
-maybe-TAGS-automake:
+.PHONY: maybe-TAGS-findutils TAGS-findutils
+maybe-TAGS-findutils:
+@if findutils
+maybe-TAGS-findutils: TAGS-findutils
 
-TAGS-automake: \
-    configure-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-findutils: \
+    configure-findutils 
+       @[ -f ./findutils/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 automake" ; \
-       (cd automake && \
+       echo "Doing TAGS in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -4657,241 +7779,318 @@ TAGS-automake: \
                  TAGS) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-bash TAGS-bash
-maybe-TAGS-bash:
+.PHONY: maybe-install-info-findutils install-info-findutils
+maybe-install-info-findutils:
+@if findutils
+maybe-install-info-findutils: install-info-findutils
 
-TAGS-bash: \
-    configure-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-findutils: \
+    configure-findutils \
+    info-findutils 
+       @[ -f ./findutils/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 bash" ; \
-       (cd bash && \
+       echo "Doing install-info in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 install-info) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-bfd TAGS-bfd
-maybe-TAGS-bfd:
+.PHONY: maybe-installcheck-findutils installcheck-findutils
+maybe-installcheck-findutils:
+@if findutils
+maybe-installcheck-findutils: installcheck-findutils
 
-TAGS-bfd: \
-    configure-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-findutils: \
+    configure-findutils 
+       @[ -f ./findutils/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing installcheck in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 installcheck) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-opcodes TAGS-opcodes
-maybe-TAGS-opcodes:
+.PHONY: maybe-mostlyclean-findutils mostlyclean-findutils
+maybe-mostlyclean-findutils:
+@if findutils
+maybe-mostlyclean-findutils: mostlyclean-findutils
 
-TAGS-opcodes: \
-    configure-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-findutils: 
+       @[ -f ./findutils/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing mostlyclean in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 mostlyclean) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-binutils TAGS-binutils
-maybe-TAGS-binutils:
+.PHONY: maybe-clean-findutils clean-findutils
+maybe-clean-findutils:
+@if findutils
+maybe-clean-findutils: clean-findutils
 
-TAGS-binutils: \
-    configure-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-findutils: 
+       @[ -f ./findutils/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing clean in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 clean) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-bison TAGS-bison
-maybe-TAGS-bison:
+.PHONY: maybe-distclean-findutils distclean-findutils
+maybe-distclean-findutils:
+@if findutils
+maybe-distclean-findutils: distclean-findutils
 
-TAGS-bison: \
-    configure-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-findutils: 
+       @[ -f ./findutils/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 bison" ; \
-       (cd bison && \
+       echo "Doing distclean in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 distclean) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-byacc TAGS-byacc
-maybe-TAGS-byacc:
+.PHONY: maybe-maintainer-clean-findutils maintainer-clean-findutils
+maybe-maintainer-clean-findutils:
+@if findutils
+maybe-maintainer-clean-findutils: maintainer-clean-findutils
 
-TAGS-byacc: \
-    configure-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-findutils: 
+       @[ -f ./findutils/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing maintainer-clean in findutils" ; \
+       (cd $(HOST_SUBDIR)/findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 maintainer-clean) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-bzip2 TAGS-bzip2
-maybe-TAGS-bzip2:
 
-TAGS-bzip2: \
-    configure-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing TAGS in bzip2" ; \
-       (cd bzip2 && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+
+.PHONY: configure-find maybe-configure-find
+maybe-configure-find:
+@if find
+maybe-configure-find: configure-find
+configure-find: 
+       @test ! -f $(HOST_SUBDIR)/find/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/find ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/find; \
+       cd "$(HOST_SUBDIR)/find" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/find/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/find"; \
+       libsrcdir="$$s/find"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif find
 
 
-.PHONY: maybe-TAGS-dejagnu TAGS-dejagnu
-maybe-TAGS-dejagnu:
 
-TAGS-dejagnu: \
-    configure-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: all-find maybe-all-find
+maybe-all-find:
+@if find
+TARGET-find=all
+maybe-all-find: all-find
+all-find: configure-find
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/find && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-find))
+@endif find
+
+
+.PHONY: check-find maybe-check-find
+maybe-check-find:
+@if find
+maybe-check-find: check-find
+
+check-find:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/find && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif find
+
+.PHONY: install-find maybe-install-find
+maybe-install-find:
+@if find
+maybe-install-find: install-find
+
+install-find: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/find && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif find
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-find info-find
+maybe-info-find:
+@if find
+maybe-info-find: info-find
+
+info-find: \
+    configure-find 
+       @[ -f ./find/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing info in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 info) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-diff TAGS-diff
-maybe-TAGS-diff:
+.PHONY: maybe-dvi-find dvi-find
+maybe-dvi-find:
+@if find
+maybe-dvi-find: dvi-find
 
-TAGS-diff: \
-    configure-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-find: \
+    configure-find 
+       @[ -f ./find/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 diff" ; \
-       (cd diff && \
+       echo "Doing dvi in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 dvi) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-dosutils TAGS-dosutils
-maybe-TAGS-dosutils:
+.PHONY: maybe-html-find html-find
+maybe-html-find:
+@if find
+maybe-html-find: html-find
 
-TAGS-dosutils: \
-    configure-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-find: \
+    configure-find 
+       @[ -f ./find/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing html in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 html) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-etc TAGS-etc
-maybe-TAGS-etc:
+.PHONY: maybe-TAGS-find TAGS-find
+maybe-TAGS-find:
+@if find
+maybe-TAGS-find: TAGS-find
 
-TAGS-etc: \
-    configure-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-find: \
+    configure-find 
+       @[ -f ./find/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 etc" ; \
-       (cd etc && \
+       echo "Doing TAGS in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -4899,351 +8098,564 @@ TAGS-etc: \
                  TAGS) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-fastjar TAGS-fastjar
-maybe-TAGS-fastjar:
+.PHONY: maybe-install-info-find install-info-find
+maybe-install-info-find:
+@if find
+maybe-install-info-find: install-info-find
 
-TAGS-fastjar: \
-    configure-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-find: \
+    configure-find \
+    info-find 
+       @[ -f ./find/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing install-info in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 install-info) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-fileutils TAGS-fileutils
-maybe-TAGS-fileutils:
+.PHONY: maybe-installcheck-find installcheck-find
+maybe-installcheck-find:
+@if find
+maybe-installcheck-find: installcheck-find
 
-TAGS-fileutils: \
-    configure-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-find: \
+    configure-find 
+       @[ -f ./find/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing installcheck in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 installcheck) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-findutils TAGS-findutils
-maybe-TAGS-findutils:
+.PHONY: maybe-mostlyclean-find mostlyclean-find
+maybe-mostlyclean-find:
+@if find
+maybe-mostlyclean-find: mostlyclean-find
 
-TAGS-findutils: \
-    configure-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-find: 
+       @[ -f ./find/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing mostlyclean in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 mostlyclean) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-find TAGS-find
-maybe-TAGS-find:
+.PHONY: maybe-clean-find clean-find
+maybe-clean-find:
+@if find
+maybe-clean-find: clean-find
 
-TAGS-find: \
-    configure-find 
+clean-find: 
        @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       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 find" ; \
-       (cd find && \
+       echo "Doing clean in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 clean) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-flex TAGS-flex
-maybe-TAGS-flex:
+.PHONY: maybe-distclean-find distclean-find
+maybe-distclean-find:
+@if find
+maybe-distclean-find: distclean-find
 
-TAGS-flex: \
-    configure-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-find: 
+       @[ -f ./find/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 flex" ; \
-       (cd flex && \
+       echo "Doing distclean in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 distclean) \
          || exit 1
 
+@endif find
 
-.PHONY: maybe-TAGS-gas TAGS-gas
-maybe-TAGS-gas:
+.PHONY: maybe-maintainer-clean-find maintainer-clean-find
+maybe-maintainer-clean-find:
+@if find
+maybe-maintainer-clean-find: maintainer-clean-find
 
-TAGS-gas: \
-    configure-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-find: 
+       @[ -f ./find/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 gas" ; \
-       (cd gas && \
+       echo "Doing maintainer-clean in find" ; \
+       (cd $(HOST_SUBDIR)/find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 maintainer-clean) \
+         || exit 1
+
+@endif find
+
+
+
+.PHONY: configure-fixincludes maybe-configure-fixincludes
+maybe-configure-fixincludes:
+@if fixincludes
+maybe-configure-fixincludes: configure-fixincludes
+configure-fixincludes: 
+       @test ! -f $(HOST_SUBDIR)/fixincludes/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/fixincludes ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/fixincludes; \
+       cd "$(HOST_SUBDIR)/fixincludes" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/fixincludes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/fixincludes"; \
+       libsrcdir="$$s/fixincludes"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif fixincludes
+
+
+
+.PHONY: all-fixincludes maybe-all-fixincludes
+maybe-all-fixincludes:
+@if fixincludes
+TARGET-fixincludes=all
+maybe-all-fixincludes: all-fixincludes
+all-fixincludes: configure-fixincludes
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/fixincludes && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-fixincludes))
+@endif fixincludes
+
+
+.PHONY: check-fixincludes maybe-check-fixincludes
+maybe-check-fixincludes:
+@if fixincludes
+maybe-check-fixincludes: check-fixincludes
+
+check-fixincludes:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/fixincludes && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif fixincludes
+
+.PHONY: install-fixincludes maybe-install-fixincludes
+maybe-install-fixincludes:
+@if fixincludes
+maybe-install-fixincludes: install-fixincludes
+
+install-fixincludes: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/fixincludes && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif fixincludes
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-fixincludes info-fixincludes
+maybe-info-fixincludes:
+@if fixincludes
+maybe-info-fixincludes: info-fixincludes
+
+# fixincludes doesn't support info.
+info-fixincludes:
 
+@endif fixincludes
 
-.PHONY: maybe-TAGS-gawk TAGS-gawk
-maybe-TAGS-gawk:
+.PHONY: maybe-dvi-fixincludes dvi-fixincludes
+maybe-dvi-fixincludes:
+@if fixincludes
+maybe-dvi-fixincludes: dvi-fixincludes
 
-TAGS-gawk: \
-    configure-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+# fixincludes doesn't support dvi.
+dvi-fixincludes:
+
+@endif fixincludes
+
+.PHONY: maybe-html-fixincludes html-fixincludes
+maybe-html-fixincludes:
+@if fixincludes
+maybe-html-fixincludes: html-fixincludes
+
+html-fixincludes: \
+    configure-fixincludes 
+       @[ -f ./fixincludes/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing html in fixincludes" ; \
+       (cd $(HOST_SUBDIR)/fixincludes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 html) \
          || exit 1
 
+@endif fixincludes
 
-.PHONY: maybe-TAGS-gettext TAGS-gettext
-maybe-TAGS-gettext:
+.PHONY: maybe-TAGS-fixincludes TAGS-fixincludes
+maybe-TAGS-fixincludes:
+@if fixincludes
+maybe-TAGS-fixincludes: TAGS-fixincludes
 
-TAGS-gettext: \
-    configure-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+# fixincludes doesn't support TAGS.
+TAGS-fixincludes:
+
+@endif fixincludes
+
+.PHONY: maybe-install-info-fixincludes install-info-fixincludes
+maybe-install-info-fixincludes:
+@if fixincludes
+maybe-install-info-fixincludes: install-info-fixincludes
+
+# fixincludes doesn't support install-info.
+install-info-fixincludes:
+
+@endif fixincludes
+
+.PHONY: maybe-installcheck-fixincludes installcheck-fixincludes
+maybe-installcheck-fixincludes:
+@if fixincludes
+maybe-installcheck-fixincludes: installcheck-fixincludes
+
+# fixincludes doesn't support installcheck.
+installcheck-fixincludes:
+
+@endif fixincludes
+
+.PHONY: maybe-mostlyclean-fixincludes mostlyclean-fixincludes
+maybe-mostlyclean-fixincludes:
+@if fixincludes
+maybe-mostlyclean-fixincludes: mostlyclean-fixincludes
+
+mostlyclean-fixincludes: 
+       @[ -f ./fixincludes/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing mostlyclean in fixincludes" ; \
+       (cd $(HOST_SUBDIR)/fixincludes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 mostlyclean) \
          || exit 1
 
+@endif fixincludes
 
-.PHONY: maybe-TAGS-gnuserv TAGS-gnuserv
-maybe-TAGS-gnuserv:
+.PHONY: maybe-clean-fixincludes clean-fixincludes
+maybe-clean-fixincludes:
+@if fixincludes
+maybe-clean-fixincludes: clean-fixincludes
 
-TAGS-gnuserv: \
-    configure-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-fixincludes: 
+       @[ -f ./fixincludes/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing clean in fixincludes" ; \
+       (cd $(HOST_SUBDIR)/fixincludes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 clean) \
          || exit 1
 
+@endif fixincludes
 
-.PHONY: maybe-TAGS-gprof TAGS-gprof
-maybe-TAGS-gprof:
+.PHONY: maybe-distclean-fixincludes distclean-fixincludes
+maybe-distclean-fixincludes:
+@if fixincludes
+maybe-distclean-fixincludes: distclean-fixincludes
 
-TAGS-gprof: \
-    configure-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-fixincludes: 
+       @[ -f ./fixincludes/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 gprof" ; \
-       (cd gprof && \
+       echo "Doing distclean in fixincludes" ; \
+       (cd $(HOST_SUBDIR)/fixincludes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 distclean) \
          || exit 1
 
+@endif fixincludes
 
-.PHONY: maybe-TAGS-gzip TAGS-gzip
-maybe-TAGS-gzip:
+.PHONY: maybe-maintainer-clean-fixincludes maintainer-clean-fixincludes
+maybe-maintainer-clean-fixincludes:
+@if fixincludes
+maybe-maintainer-clean-fixincludes: maintainer-clean-fixincludes
 
-TAGS-gzip: \
-    configure-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-fixincludes: 
+       @[ -f ./fixincludes/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 gzip" ; \
-       (cd gzip && \
+       echo "Doing maintainer-clean in fixincludes" ; \
+       (cd $(HOST_SUBDIR)/fixincludes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 maintainer-clean) \
          || exit 1
 
+@endif fixincludes
 
-.PHONY: maybe-TAGS-hello TAGS-hello
-maybe-TAGS-hello:
 
-TAGS-hello: \
-    configure-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing TAGS in hello" ; \
-       (cd hello && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+
+.PHONY: configure-flex maybe-configure-flex
+maybe-configure-flex:
+@if flex
+maybe-configure-flex: configure-flex
+configure-flex: 
+       @test ! -f $(HOST_SUBDIR)/flex/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/flex ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/flex; \
+       cd "$(HOST_SUBDIR)/flex" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/flex/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/flex"; \
+       libsrcdir="$$s/flex"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif flex
 
 
-.PHONY: maybe-TAGS-indent TAGS-indent
-maybe-TAGS-indent:
 
-TAGS-indent: \
-    configure-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: all-flex maybe-all-flex
+maybe-all-flex:
+@if flex
+TARGET-flex=all
+maybe-all-flex: all-flex
+all-flex: configure-flex
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/flex && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-flex))
+@endif flex
+
+
+.PHONY: check-flex maybe-check-flex
+maybe-check-flex:
+@if flex
+maybe-check-flex: check-flex
+
+# This module is only tested in a native toolchain.
+check-flex:
+       @if [ '$(host)' = '$(target)' ] ; then \
+         r=`${PWD_COMMAND}`; export r; \
+         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+         $(HOST_EXPORTS) \
+         (cd $(HOST_SUBDIR)/flex && \
+           $(MAKE) $(FLAGS_TO_PASS)  check); \
+       fi
+
+@endif flex
+
+.PHONY: install-flex maybe-install-flex
+maybe-install-flex:
+@if flex
+maybe-install-flex: install-flex
+
+install-flex: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/flex && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif flex
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-flex info-flex
+maybe-info-flex:
+@if flex
+maybe-info-flex: info-flex
+
+info-flex: \
+    configure-flex 
+       @[ -f ./flex/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 indent" ; \
-       (cd indent && \
+       echo "Doing info in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 info) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-intl TAGS-intl
-maybe-TAGS-intl:
+.PHONY: maybe-dvi-flex dvi-flex
+maybe-dvi-flex:
+@if flex
+maybe-dvi-flex: dvi-flex
 
-TAGS-intl: \
-    configure-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-flex: \
+    configure-flex 
+       @[ -f ./flex/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 intl" ; \
-       (cd intl && \
+       echo "Doing dvi in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 dvi) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-tcl TAGS-tcl
-maybe-TAGS-tcl:
+.PHONY: maybe-html-flex html-flex
+maybe-html-flex:
+@if flex
+maybe-html-flex: html-flex
 
-TAGS-tcl: \
-    configure-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-flex: \
+    configure-flex 
+       @[ -f ./flex/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 tcl" ; \
-       (cd tcl && \
+       echo "Doing html in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 html) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-itcl TAGS-itcl
-maybe-TAGS-itcl:
+.PHONY: maybe-TAGS-flex TAGS-flex
+maybe-TAGS-flex:
+@if flex
+maybe-TAGS-flex: TAGS-flex
 
-TAGS-itcl: \
-    configure-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-flex: \
+    configure-flex 
+       @[ -f ./flex/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing TAGS in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5251,241 +8663,320 @@ TAGS-itcl: \
                  TAGS) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-ld TAGS-ld
-maybe-TAGS-ld:
+.PHONY: maybe-install-info-flex install-info-flex
+maybe-install-info-flex:
+@if flex
+maybe-install-info-flex: install-info-flex
 
-TAGS-ld: \
-    configure-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-flex: \
+    configure-flex \
+    info-flex 
+       @[ -f ./flex/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 ld" ; \
-       (cd ld && \
+       echo "Doing install-info in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 install-info) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-libgui TAGS-libgui
-maybe-TAGS-libgui:
+.PHONY: maybe-installcheck-flex installcheck-flex
+maybe-installcheck-flex:
+@if flex
+maybe-installcheck-flex: installcheck-flex
 
-TAGS-libgui: \
-    configure-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-flex: \
+    configure-flex 
+       @[ -f ./flex/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 libgui" ; \
-       (cd libgui && \
+       echo "Doing installcheck in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 installcheck) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-libiberty TAGS-libiberty
-maybe-TAGS-libiberty:
+.PHONY: maybe-mostlyclean-flex mostlyclean-flex
+maybe-mostlyclean-flex:
+@if flex
+maybe-mostlyclean-flex: mostlyclean-flex
 
-TAGS-libiberty: \
-    configure-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-flex: 
+       @[ -f ./flex/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 libiberty" ; \
-       (cd libiberty && \
+       echo "Doing mostlyclean in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 mostlyclean) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-libtool TAGS-libtool
-maybe-TAGS-libtool:
+.PHONY: maybe-clean-flex clean-flex
+maybe-clean-flex:
+@if flex
+maybe-clean-flex: clean-flex
 
-TAGS-libtool: \
-    configure-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-flex: 
+       @[ -f ./flex/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 libtool" ; \
-       (cd libtool && \
+       echo "Doing clean in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 clean) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-m4 TAGS-m4
-maybe-TAGS-m4:
+.PHONY: maybe-distclean-flex distclean-flex
+maybe-distclean-flex:
+@if flex
+maybe-distclean-flex: distclean-flex
 
-TAGS-m4: \
-    configure-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-flex: 
+       @[ -f ./flex/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 m4" ; \
-       (cd m4 && \
+       echo "Doing distclean in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 distclean) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-make TAGS-make
-maybe-TAGS-make:
+.PHONY: maybe-maintainer-clean-flex maintainer-clean-flex
+maybe-maintainer-clean-flex:
+@if flex
+maybe-maintainer-clean-flex: maintainer-clean-flex
 
-TAGS-make: \
-    configure-make 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-flex: 
+       @[ -f ./flex/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 make" ; \
-       (cd make && \
+       echo "Doing maintainer-clean in flex" ; \
+       (cd $(HOST_SUBDIR)/flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 maintainer-clean) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-mmalloc TAGS-mmalloc
-maybe-TAGS-mmalloc:
 
-TAGS-mmalloc: \
-    configure-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing TAGS in mmalloc" ; \
-       (cd mmalloc && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+
+.PHONY: configure-gas maybe-configure-gas
+maybe-configure-gas:
+@if gas
+maybe-configure-gas: configure-gas
+configure-gas: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/gas/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gas ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gas; \
+       cd "$(HOST_SUBDIR)/gas" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gas"; \
+       libsrcdir="$$s/gas"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif gas
+
+
+
+.PHONY: all-gas maybe-all-gas
+maybe-all-gas:
+@if gas
+TARGET-gas=all
+maybe-all-gas: all-gas
+all-gas: configure-gas
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gas && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-gas))
+@endif gas
+
+
+.PHONY: check-gas maybe-check-gas
+maybe-check-gas:
+@if gas
+maybe-check-gas: check-gas
+
+check-gas:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gas && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif gas
+
+.PHONY: install-gas maybe-install-gas
+maybe-install-gas:
+@if gas
+maybe-install-gas: install-gas
 
+install-gas: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gas && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
 
-.PHONY: maybe-TAGS-patch TAGS-patch
-maybe-TAGS-patch:
+@endif gas
 
-TAGS-patch: \
-    configure-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gas info-gas
+maybe-info-gas:
+@if gas
+maybe-info-gas: info-gas
+
+info-gas: \
+    configure-gas 
+       @[ -f ./gas/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 patch" ; \
-       (cd patch && \
+       echo "Doing info in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 info) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-perl TAGS-perl
-maybe-TAGS-perl:
+.PHONY: maybe-dvi-gas dvi-gas
+maybe-dvi-gas:
+@if gas
+maybe-dvi-gas: dvi-gas
 
-TAGS-perl: \
-    configure-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-gas: \
+    configure-gas 
+       @[ -f ./gas/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 perl" ; \
-       (cd perl && \
+       echo "Doing dvi in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 dvi) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-prms TAGS-prms
-maybe-TAGS-prms:
+.PHONY: maybe-html-gas html-gas
+maybe-html-gas:
+@if gas
+maybe-html-gas: html-gas
 
-TAGS-prms: \
-    configure-prm
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-gas: \
+    configure-ga
+       @[ -f ./gas/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 prms" ; \
-       (cd prms && \
+       echo "Doing html in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 html) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-rcs TAGS-rcs
-maybe-TAGS-rcs:
+.PHONY: maybe-TAGS-gas TAGS-gas
+maybe-TAGS-gas:
+@if gas
+maybe-TAGS-gas: TAGS-gas
 
-TAGS-rcs: \
-    configure-rc
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-gas: \
+    configure-ga
+       @[ -f ./gas/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 rcs" ; \
-       (cd rcs && \
+       echo "Doing TAGS in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5493,241 +8984,320 @@ TAGS-rcs: \
                  TAGS) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-readline TAGS-readline
-maybe-TAGS-readline:
+.PHONY: maybe-install-info-gas install-info-gas
+maybe-install-info-gas:
+@if gas
+maybe-install-info-gas: install-info-gas
 
-TAGS-readline: \
-    configure-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-gas: \
+    configure-gas \
+    info-gas 
+       @[ -f ./gas/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 readline" ; \
-       (cd readline && \
+       echo "Doing install-info in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 install-info) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-release TAGS-release
-maybe-TAGS-release:
+.PHONY: maybe-installcheck-gas installcheck-gas
+maybe-installcheck-gas:
+@if gas
+maybe-installcheck-gas: installcheck-gas
 
-TAGS-release: \
-    configure-release 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-gas: \
+    configure-gas 
+       @[ -f ./gas/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 release" ; \
-       (cd release && \
+       echo "Doing installcheck in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 installcheck) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-recode TAGS-recode
-maybe-TAGS-recode:
+.PHONY: maybe-mostlyclean-gas mostlyclean-gas
+maybe-mostlyclean-gas:
+@if gas
+maybe-mostlyclean-gas: mostlyclean-gas
 
-TAGS-recode: \
-    configure-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-gas: 
+       @[ -f ./gas/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 recode" ; \
-       (cd recode && \
+       echo "Doing mostlyclean in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 mostlyclean) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-sed TAGS-sed
-maybe-TAGS-sed:
+.PHONY: maybe-clean-gas clean-gas
+maybe-clean-gas:
+@if gas
+maybe-clean-gas: clean-gas
 
-TAGS-sed: \
-    configure-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-gas: 
+       @[ -f ./gas/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 sed" ; \
-       (cd sed && \
+       echo "Doing clean in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 clean) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-send-pr TAGS-send-pr
-maybe-TAGS-send-pr:
+.PHONY: maybe-distclean-gas distclean-gas
+maybe-distclean-gas:
+@if gas
+maybe-distclean-gas: distclean-gas
 
-TAGS-send-pr: \
-    configure-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-gas: 
+       @[ -f ./gas/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 send-pr" ; \
-       (cd send-pr && \
+       echo "Doing distclean in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 distclean) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-shellutils TAGS-shellutils
-maybe-TAGS-shellutils:
+.PHONY: maybe-maintainer-clean-gas maintainer-clean-gas
+maybe-maintainer-clean-gas:
+@if gas
+maybe-maintainer-clean-gas: maintainer-clean-gas
 
-TAGS-shellutils: \
-    configure-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-gas: 
+       @[ -f ./gas/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 shellutils" ; \
-       (cd shellutils && \
+       echo "Doing maintainer-clean in gas" ; \
+       (cd $(HOST_SUBDIR)/gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-TAGS-sid TAGS-sid
-maybe-TAGS-sid:
 
-TAGS-sid: \
-    configure-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing TAGS in sid" ; \
-       (cd sid && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+
+.PHONY: configure-gcc maybe-configure-gcc
+maybe-configure-gcc:
+@if gcc
+maybe-configure-gcc: configure-gcc
+configure-gcc: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/gcc/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gcc ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gcc; \
+       cd "$(HOST_SUBDIR)/gcc" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gcc"; \
+       libsrcdir="$$s/gcc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif gcc
 
 
-.PHONY: maybe-TAGS-sim TAGS-sim
-maybe-TAGS-sim:
 
-TAGS-sim: \
-    configure-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: all-gcc maybe-all-gcc
+maybe-all-gcc:
+@if gcc
+TARGET-gcc=`if [ -f gcc/stage_last ]; then echo quickstrap ; else echo all; fi`
+maybe-all-gcc: all-gcc
+all-gcc: configure-gcc
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gcc && \
+         $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) $(TARGET-gcc))
+@endif gcc
+
+
+.PHONY: check-gcc maybe-check-gcc
+maybe-check-gcc:
+@if gcc
+maybe-check-gcc: check-gcc
+
+check-gcc:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gcc && \
+         $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) check)
+
+@endif gcc
+
+.PHONY: install-gcc maybe-install-gcc
+maybe-install-gcc:
+@if gcc
+maybe-install-gcc: install-gcc
+
+install-gcc: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gcc && \
+         $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS) install)
+
+@endif gcc
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gcc info-gcc
+maybe-info-gcc:
+@if gcc
+maybe-info-gcc: info-gcc
+
+info-gcc: \
+    configure-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in sim" ; \
-       (cd sim && \
+       echo "Doing info in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 info) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-tar TAGS-tar
-maybe-TAGS-tar:
+.PHONY: maybe-dvi-gcc dvi-gcc
+maybe-dvi-gcc:
+@if gcc
+maybe-dvi-gcc: dvi-gcc
 
-TAGS-tar: \
-    configure-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-gcc: \
+    configure-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in tar" ; \
-       (cd tar && \
+       echo "Doing dvi in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 dvi) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-texinfo TAGS-texinfo
-maybe-TAGS-texinfo:
+.PHONY: maybe-html-gcc html-gcc
+maybe-html-gcc:
+@if gcc
+maybe-html-gcc: html-gcc
 
-TAGS-texinfo: \
-    configure-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-gcc: \
+    configure-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in texinfo" ; \
-       (cd texinfo && \
+       echo "Doing html in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 html) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-textutils TAGS-textutils
-maybe-TAGS-textutils:
+.PHONY: maybe-TAGS-gcc TAGS-gcc
+maybe-TAGS-gcc:
+@if gcc
+maybe-TAGS-gcc: TAGS-gcc
 
-TAGS-textutils: \
-    configure-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-gcc: \
+    configure-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in textutils" ; \
-       (cd textutils && \
+       echo "Doing TAGS in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5735,219 +9305,318 @@ TAGS-textutils: \
                  TAGS) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-time TAGS-time
-maybe-TAGS-time:
+.PHONY: maybe-install-info-gcc install-info-gcc
+maybe-install-info-gcc:
+@if gcc
+maybe-install-info-gcc: install-info-gcc
 
-TAGS-time: \
-    configure-time 
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-gcc: \
+    configure-gcc \
+    info-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in time" ; \
-       (cd time && \
+       echo "Doing install-info in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 install-info) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-uudecode TAGS-uudecode
-maybe-TAGS-uudecode:
+.PHONY: maybe-installcheck-gcc installcheck-gcc
+maybe-installcheck-gcc:
+@if gcc
+maybe-installcheck-gcc: installcheck-gcc
 
-TAGS-uudecode: \
-    configure-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-gcc: \
+    configure-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in uudecode" ; \
-       (cd uudecode && \
+       echo "Doing installcheck in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 installcheck) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-wdiff TAGS-wdiff
-maybe-TAGS-wdiff:
+.PHONY: maybe-mostlyclean-gcc mostlyclean-gcc
+maybe-mostlyclean-gcc:
+@if gcc
+maybe-mostlyclean-gcc: mostlyclean-gcc
 
-TAGS-wdiff: \
-    configure-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-gcc: 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in wdiff" ; \
-       (cd wdiff && \
+       echo "Doing mostlyclean in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 mostlyclean) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-zip TAGS-zip
-maybe-TAGS-zip:
+.PHONY: maybe-clean-gcc clean-gcc
+maybe-clean-gcc:
+@if gcc
+maybe-clean-gcc: clean-gcc
 
-TAGS-zip: \
-    configure-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-gcc: 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in zip" ; \
-       (cd zip && \
+       echo "Doing clean in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 clean) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-zlib TAGS-zlib
-maybe-TAGS-zlib:
+.PHONY: maybe-distclean-gcc distclean-gcc
+maybe-distclean-gcc:
+@if gcc
+maybe-distclean-gcc: distclean-gcc
 
-TAGS-zlib: \
-    configure-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-gcc: 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in zlib" ; \
-       (cd zlib && \
+       echo "Doing distclean in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 distclean) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-gdb TAGS-gdb
-maybe-TAGS-gdb:
+.PHONY: maybe-maintainer-clean-gcc maintainer-clean-gcc
+maybe-maintainer-clean-gcc:
+@if gcc
+maybe-maintainer-clean-gcc: maintainer-clean-gcc
 
-TAGS-gdb: \
-    configure-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-gcc: 
+       @[ -f ./gcc/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(EXTRA_GCC_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in gdb" ; \
-       (cd gdb && \
+       echo "Doing maintainer-clean in gcc" ; \
+       (cd $(HOST_SUBDIR)/gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-TAGS-expect TAGS-expect
-maybe-TAGS-expect:
 
-TAGS-expect: \
-    configure-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-gawk maybe-configure-gawk
+maybe-configure-gawk:
+@if gawk
+maybe-configure-gawk: configure-gawk
+configure-gawk: 
+       @test ! -f $(HOST_SUBDIR)/gawk/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gawk ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gawk; \
+       cd "$(HOST_SUBDIR)/gawk" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gawk/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gawk"; \
+       libsrcdir="$$s/gawk"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif gawk
+
+
+
+.PHONY: all-gawk maybe-all-gawk
+maybe-all-gawk:
+@if gawk
+TARGET-gawk=all
+maybe-all-gawk: all-gawk
+all-gawk: configure-gawk
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gawk && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-gawk))
+@endif gawk
+
+
+.PHONY: check-gawk maybe-check-gawk
+maybe-check-gawk:
+@if gawk
+maybe-check-gawk: check-gawk
+
+check-gawk:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gawk && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif gawk
+
+.PHONY: install-gawk maybe-install-gawk
+maybe-install-gawk:
+@if gawk
+maybe-install-gawk: install-gawk
+
+install-gawk: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gawk && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif gawk
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gawk info-gawk
+maybe-info-gawk:
+@if gawk
+maybe-info-gawk: info-gawk
+
+info-gawk: \
+    configure-gawk 
+       @[ -f ./gawk/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 expect" ; \
-       (cd expect && \
+       echo "Doing info in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 info) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-guile TAGS-guile
-maybe-TAGS-guile:
+.PHONY: maybe-dvi-gawk dvi-gawk
+maybe-dvi-gawk:
+@if gawk
+maybe-dvi-gawk: dvi-gawk
 
-TAGS-guile: \
-    configure-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-gawk: \
+    configure-gawk 
+       @[ -f ./gawk/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 guile" ; \
-       (cd guile && \
+       echo "Doing dvi in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 dvi) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-tk TAGS-tk
-maybe-TAGS-tk:
+.PHONY: maybe-html-gawk html-gawk
+maybe-html-gawk:
+@if gawk
+maybe-html-gawk: html-gawk
 
-TAGS-tk: \
-    configure-t
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-gawk: \
+    configure-gaw
+       @[ -f ./gawk/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 tk" ; \
-       (cd tk && \
+       echo "Doing html in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 html) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-tix TAGS-tix
-maybe-TAGS-tix:
+.PHONY: maybe-TAGS-gawk TAGS-gawk
+maybe-TAGS-gawk:
+@if gawk
+maybe-TAGS-gawk: TAGS-gawk
 
-TAGS-tix: \
-    configure-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-gawk: \
+    configure-gawk 
+       @[ -f ./gawk/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 tix" ; \
-       (cd tix && \
+       echo "Doing TAGS in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5955,222 +9624,318 @@ TAGS-tix: \
                  TAGS) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-libtermcap TAGS-libtermcap
-maybe-TAGS-libtermcap:
+.PHONY: maybe-install-info-gawk install-info-gawk
+maybe-install-info-gawk:
+@if gawk
+maybe-install-info-gawk: install-info-gawk
 
-TAGS-libtermcap: \
-    configure-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-gawk: \
+    configure-gawk \
+    info-gawk 
+       @[ -f ./gawk/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 libtermcap" ; \
-       (cd libtermcap && \
+       echo "Doing install-info in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 install-info) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-utils TAGS-utils
-maybe-TAGS-utils:
+.PHONY: maybe-installcheck-gawk installcheck-gawk
+maybe-installcheck-gawk:
+@if gawk
+maybe-installcheck-gawk: installcheck-gawk
 
-TAGS-utils: \
-    configure-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-gawk: \
+    configure-gawk 
+       @[ -f ./gawk/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 utils" ; \
-       (cd utils && \
+       echo "Doing installcheck in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 installcheck) \
          || exit 1
 
+@endif gawk
 
+.PHONY: maybe-mostlyclean-gawk mostlyclean-gawk
+maybe-mostlyclean-gawk:
+@if gawk
+maybe-mostlyclean-gawk: mostlyclean-gawk
 
-# Target modules.
-
-.PHONY: maybe-TAGS-target-libstdc++-v3 TAGS-target-libstdc++-v3
-maybe-TAGS-target-libstdc++-v3:
-
-TAGS-target-libstdc++-v3: \
-    configure-target-libstdc++-v3 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-gawk: 
+       @[ -f ./gawk/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; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+       echo "Doing mostlyclean in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 mostlyclean) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-target-newlib TAGS-target-newlib
-maybe-TAGS-target-newlib:
+.PHONY: maybe-clean-gawk clean-gawk
+maybe-clean-gawk:
+@if gawk
+maybe-clean-gawk: clean-gawk
 
-TAGS-target-newlib: \
-    configure-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-gawk: 
+       @[ -f ./gawk/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; \
-       (cd $(TARGET_SUBDIR)/newlib && \
+       echo "Doing clean in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 clean) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-target-libf2c TAGS-target-libf2c
-maybe-TAGS-target-libf2c:
+.PHONY: maybe-distclean-gawk distclean-gawk
+maybe-distclean-gawk:
+@if gawk
+maybe-distclean-gawk: distclean-gawk
 
-TAGS-target-libf2c: \
-    configure-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-gawk: 
+       @[ -f ./gawk/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; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       echo "Doing distclean in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 distclean) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-target-libobjc TAGS-target-libobjc
-maybe-TAGS-target-libobjc:
+.PHONY: maybe-maintainer-clean-gawk maintainer-clean-gawk
+maybe-maintainer-clean-gawk:
+@if gawk
+maybe-maintainer-clean-gawk: maintainer-clean-gawk
 
-TAGS-target-libobjc: \
-    configure-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-gawk: 
+       @[ -f ./gawk/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; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       echo "Doing maintainer-clean in gawk" ; \
+       (cd $(HOST_SUBDIR)/gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-TAGS-target-libtermcap TAGS-target-libtermcap
-maybe-TAGS-target-libtermcap:
 
-TAGS-target-libtermcap: \
-    configure-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+
+.PHONY: configure-gettext maybe-configure-gettext
+maybe-configure-gettext:
+@if gettext
+maybe-configure-gettext: configure-gettext
+configure-gettext: 
+       @test ! -f $(HOST_SUBDIR)/gettext/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gettext ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gettext; \
+       cd "$(HOST_SUBDIR)/gettext" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gettext/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gettext"; \
+       libsrcdir="$$s/gettext"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif gettext
+
+
+
+.PHONY: all-gettext maybe-all-gettext
+maybe-all-gettext:
+@if gettext
+TARGET-gettext=all
+maybe-all-gettext: all-gettext
+all-gettext: configure-gettext
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gettext && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-gettext))
+@endif gettext
+
+
+.PHONY: check-gettext maybe-check-gettext
+maybe-check-gettext:
+@if gettext
+maybe-check-gettext: check-gettext
+
+check-gettext:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gettext && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif gettext
+
+.PHONY: install-gettext maybe-install-gettext
+maybe-install-gettext:
+@if gettext
+maybe-install-gettext: install-gettext
+
+install-gettext: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gettext && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif gettext
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gettext info-gettext
+maybe-info-gettext:
+@if gettext
+maybe-info-gettext: info-gettext
+
+info-gettext: \
+    configure-gettext 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
+       echo "Doing info in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 info) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-winsup TAGS-target-winsup
-maybe-TAGS-target-winsup:
+.PHONY: maybe-dvi-gettext dvi-gettext
+maybe-dvi-gettext:
+@if gettext
+maybe-dvi-gettext: dvi-gettext
 
-TAGS-target-winsup: \
-    configure-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-gettext: \
+    configure-gettext 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       echo "Doing dvi in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 dvi) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-libgloss TAGS-target-libgloss
-maybe-TAGS-target-libgloss:
+.PHONY: maybe-html-gettext html-gettext
+maybe-html-gettext:
+@if gettext
+maybe-html-gettext: html-gettext
 
-TAGS-target-libgloss: \
-    configure-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-gettext: \
+    configure-gettext 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       echo "Doing html in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 html) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-libiberty TAGS-target-libiberty
-maybe-TAGS-target-libiberty:
+.PHONY: maybe-TAGS-gettext TAGS-gettext
+maybe-TAGS-gettext:
+@if gettext
+maybe-TAGS-gettext: TAGS-gettext
 
-TAGS-target-libiberty: \
-    configure-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-gettext: \
+    configure-gettext 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       echo "Doing TAGS in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -6178,312 +9943,344 @@ TAGS-target-libiberty: \
                  TAGS) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-gperf TAGS-target-gperf
-maybe-TAGS-target-gperf:
+.PHONY: maybe-install-info-gettext install-info-gettext
+maybe-install-info-gettext:
+@if gettext
+maybe-install-info-gettext: install-info-gettext
 
-TAGS-target-gperf: \
-    configure-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-gettext: \
+    configure-gettext \
+    info-gettext 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/gperf && \
+       echo "Doing install-info in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 install-info) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-examples TAGS-target-examples
-maybe-TAGS-target-examples:
+.PHONY: maybe-installcheck-gettext installcheck-gettext
+maybe-installcheck-gettext:
+@if gettext
+maybe-installcheck-gettext: installcheck-gettext
 
-TAGS-target-examples: \
-    configure-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-gettext: \
+    configure-gettext 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       echo "Doing installcheck in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 installcheck) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-libffi TAGS-target-libffi
-maybe-TAGS-target-libffi:
+.PHONY: maybe-mostlyclean-gettext mostlyclean-gettext
+maybe-mostlyclean-gettext:
+@if gettext
+maybe-mostlyclean-gettext: mostlyclean-gettext
 
-TAGS-target-libffi: \
-    configure-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-gettext: 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       echo "Doing mostlyclean in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 mostlyclean) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-libjava TAGS-target-libjava
-maybe-TAGS-target-libjava:
+.PHONY: maybe-clean-gettext clean-gettext
+maybe-clean-gettext:
+@if gettext
+maybe-clean-gettext: clean-gettext
 
-TAGS-target-libjava: \
-    configure-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-gettext: 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       echo "Doing clean in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 clean) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-zlib TAGS-target-zlib
-maybe-TAGS-target-zlib:
+.PHONY: maybe-distclean-gettext distclean-gettext
+maybe-distclean-gettext:
+@if gettext
+maybe-distclean-gettext: distclean-gettext
 
-TAGS-target-zlib: \
-    configure-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-gettext: 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       echo "Doing distclean in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 distclean) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-boehm-gc TAGS-target-boehm-gc
-maybe-TAGS-target-boehm-gc:
+.PHONY: maybe-maintainer-clean-gettext maintainer-clean-gettext
+maybe-maintainer-clean-gettext:
+@if gettext
+maybe-maintainer-clean-gettext: maintainer-clean-gettext
 
-TAGS-target-boehm-gc: \
-    configure-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-gettext: 
+       @[ -f ./gettext/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; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       echo "Doing maintainer-clean in gettext" ; \
+       (cd $(HOST_SUBDIR)/gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-TAGS-target-qthreads TAGS-target-qthreads
-maybe-TAGS-target-qthreads:
 
-TAGS-target-qthreads: \
-    configure-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+
+.PHONY: configure-gnuserv maybe-configure-gnuserv
+maybe-configure-gnuserv:
+@if gnuserv
+maybe-configure-gnuserv: configure-gnuserv
+configure-gnuserv: 
+       @test ! -f $(HOST_SUBDIR)/gnuserv/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gnuserv ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gnuserv; \
+       cd "$(HOST_SUBDIR)/gnuserv" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gnuserv/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gnuserv"; \
+       libsrcdir="$$s/gnuserv"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif gnuserv
+
+
+
+.PHONY: all-gnuserv maybe-all-gnuserv
+maybe-all-gnuserv:
+@if gnuserv
+TARGET-gnuserv=all
+maybe-all-gnuserv: all-gnuserv
+all-gnuserv: configure-gnuserv
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gnuserv && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-gnuserv))
+@endif gnuserv
+
+
+.PHONY: check-gnuserv maybe-check-gnuserv
+maybe-check-gnuserv:
+@if gnuserv
+maybe-check-gnuserv: check-gnuserv
+
+check-gnuserv:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gnuserv && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif gnuserv
+
+.PHONY: install-gnuserv maybe-install-gnuserv
+maybe-install-gnuserv:
+@if gnuserv
+maybe-install-gnuserv: install-gnuserv
+
+install-gnuserv: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gnuserv && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif gnuserv
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gnuserv info-gnuserv
+maybe-info-gnuserv:
+@if gnuserv
+maybe-info-gnuserv: info-gnuserv
+
+info-gnuserv: \
+    configure-gnuserv 
+       @[ -f ./gnuserv/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; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       echo "Doing info in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 info) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-TAGS-target-rda TAGS-target-rda
-maybe-TAGS-target-rda:
+.PHONY: maybe-dvi-gnuserv dvi-gnuserv
+maybe-dvi-gnuserv:
+@if gnuserv
+maybe-dvi-gnuserv: dvi-gnuserv
 
-TAGS-target-rda: \
-    configure-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-gnuserv: \
+    configure-gnuserv 
+       @[ -f ./gnuserv/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; \
-       (cd $(TARGET_SUBDIR)/rda && \
+       echo "Doing dvi in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 TAGS) \
+                 dvi) \
          || exit 1
 
+@endif gnuserv
 
+.PHONY: maybe-html-gnuserv html-gnuserv
+maybe-html-gnuserv:
+@if gnuserv
+maybe-html-gnuserv: html-gnuserv
 
-.PHONY: do-install-info
-do-install-info: install-info-host install-info-target
-
-.PHONY: install-info-host
-install-info-host: maybe-install-info-gcc  \
-    maybe-install-info-ash \
-    maybe-install-info-autoconf \
-    maybe-install-info-automake \
-    maybe-install-info-bash \
-    maybe-install-info-bfd \
-    maybe-install-info-opcodes \
-    maybe-install-info-binutils \
-    maybe-install-info-bison \
-    maybe-install-info-byacc \
-    maybe-install-info-bzip2 \
-    maybe-install-info-dejagnu \
-    maybe-install-info-diff \
-    maybe-install-info-dosutils \
-    maybe-install-info-etc \
-    maybe-install-info-fastjar \
-    maybe-install-info-fileutils \
-    maybe-install-info-findutils \
-    maybe-install-info-find \
-    maybe-install-info-flex \
-    maybe-install-info-gas \
-    maybe-install-info-gawk \
-    maybe-install-info-gettext \
-    maybe-install-info-gnuserv \
-    maybe-install-info-gprof \
-    maybe-install-info-gzip \
-    maybe-install-info-hello \
-    maybe-install-info-indent \
-    maybe-install-info-intl \
-    maybe-install-info-tcl \
-    maybe-install-info-itcl \
-    maybe-install-info-ld \
-    maybe-install-info-libgui \
-    maybe-install-info-libiberty \
-    maybe-install-info-libtool \
-    maybe-install-info-m4 \
-    maybe-install-info-make \
-    maybe-install-info-mmalloc \
-    maybe-install-info-patch \
-    maybe-install-info-perl \
-    maybe-install-info-prms \
-    maybe-install-info-rcs \
-    maybe-install-info-readline \
-    maybe-install-info-release \
-    maybe-install-info-recode \
-    maybe-install-info-sed \
-    maybe-install-info-send-pr \
-    maybe-install-info-shellutils \
-    maybe-install-info-sid \
-    maybe-install-info-sim \
-    maybe-install-info-tar \
-    maybe-install-info-texinfo \
-    maybe-install-info-textutils \
-    maybe-install-info-time \
-    maybe-install-info-uudecode \
-    maybe-install-info-wdiff \
-    maybe-install-info-zip \
-    maybe-install-info-zlib \
-    maybe-install-info-gdb \
-    maybe-install-info-expect \
-    maybe-install-info-guile \
-    maybe-install-info-tk \
-    maybe-install-info-tix \
-    maybe-install-info-libtermcap \
-    maybe-install-info-utils
+html-gnuserv: \
+    configure-gnuserv 
+       @[ -f ./gnuserv/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 gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
+         $(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
 
-.PHONY: install-info-target
-install-info-target:  \
-    maybe-install-info-target-libstdc++-v3 \
-    maybe-install-info-target-newlib \
-    maybe-install-info-target-libf2c \
-    maybe-install-info-target-libobjc \
-    maybe-install-info-target-libtermcap \
-    maybe-install-info-target-winsup \
-    maybe-install-info-target-libgloss \
-    maybe-install-info-target-libiberty \
-    maybe-install-info-target-gperf \
-    maybe-install-info-target-examples \
-    maybe-install-info-target-libffi \
-    maybe-install-info-target-libjava \
-    maybe-install-info-target-zlib \
-    maybe-install-info-target-boehm-gc \
-    maybe-install-info-target-qthreads \
-    maybe-install-info-target-rda
+@endif gnuserv
 
-# GCC, the eternal special case
-.PHONY: maybe-install-info-gcc install-info-gcc
-maybe-install-info-gcc:
-install-info-gcc: \
-    configure-gcc \
-    info-gcc 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+.PHONY: maybe-TAGS-gnuserv TAGS-gnuserv
+maybe-TAGS-gnuserv:
+@if gnuserv
+maybe-TAGS-gnuserv: TAGS-gnuserv
+
+TAGS-gnuserv: \
+    configure-gnuserv 
+       @[ -f ./gnuserv/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 gcc" ; \
-       (cd gcc && \
+       echo "Doing TAGS in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(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) \
+                 TAGS) \
          || exit 1
 
-# Host modules.
+@endif gnuserv
 
-.PHONY: maybe-install-info-ash install-info-ash
-maybe-install-info-ash:
+.PHONY: maybe-install-info-gnuserv install-info-gnuserv
+maybe-install-info-gnuserv:
+@if gnuserv
+maybe-install-info-gnuserv: install-info-gnuserv
 
-install-info-ash: \
-    configure-ash \
-    info-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-gnuserv: \
+    configure-gnuserv \
+    info-gnuserv 
+       @[ -f ./gnuserv/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 ash" ; \
-       (cd ash && \
+       echo "Doing install-info in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -6491,229 +10288,318 @@ install-info-ash: \
                  install-info) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-autoconf install-info-autoconf
-maybe-install-info-autoconf:
+.PHONY: maybe-installcheck-gnuserv installcheck-gnuserv
+maybe-installcheck-gnuserv:
+@if gnuserv
+maybe-installcheck-gnuserv: installcheck-gnuserv
 
-install-info-autoconf: \
-    configure-autoconf \
-    info-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-gnuserv: \
+    configure-gnuserv 
+       @[ -f ./gnuserv/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 autoconf" ; \
-       (cd autoconf && \
+       echo "Doing installcheck in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-automake install-info-automake
-maybe-install-info-automake:
+.PHONY: maybe-mostlyclean-gnuserv mostlyclean-gnuserv
+maybe-mostlyclean-gnuserv:
+@if gnuserv
+maybe-mostlyclean-gnuserv: mostlyclean-gnuserv
 
-install-info-automake: \
-    configure-automake \
-    info-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-gnuserv: 
+       @[ -f ./gnuserv/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 automake" ; \
-       (cd automake && \
+       echo "Doing mostlyclean in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-bash install-info-bash
-maybe-install-info-bash:
+.PHONY: maybe-clean-gnuserv clean-gnuserv
+maybe-clean-gnuserv:
+@if gnuserv
+maybe-clean-gnuserv: clean-gnuserv
 
-install-info-bash: \
-    configure-bash \
-    info-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-gnuserv: 
+       @[ -f ./gnuserv/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 bash" ; \
-       (cd bash && \
+       echo "Doing clean in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-bfd install-info-bfd
-maybe-install-info-bfd:
+.PHONY: maybe-distclean-gnuserv distclean-gnuserv
+maybe-distclean-gnuserv:
+@if gnuserv
+maybe-distclean-gnuserv: distclean-gnuserv
 
-install-info-bfd: \
-    configure-bfd \
-    info-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-gnuserv: 
+       @[ -f ./gnuserv/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing distclean in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-opcodes install-info-opcodes
-maybe-install-info-opcodes:
+.PHONY: maybe-maintainer-clean-gnuserv maintainer-clean-gnuserv
+maybe-maintainer-clean-gnuserv:
+@if gnuserv
+maybe-maintainer-clean-gnuserv: maintainer-clean-gnuserv
 
-install-info-opcodes: \
-    configure-opcodes \
-    info-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-gnuserv: 
+       @[ -f ./gnuserv/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing maintainer-clean in gnuserv" ; \
+       (cd $(HOST_SUBDIR)/gnuserv && \
          $(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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-binutils install-info-binutils
-maybe-install-info-binutils:
 
-install-info-binutils: \
-    configure-binutils \
-    info-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-gprof maybe-configure-gprof
+maybe-configure-gprof:
+@if gprof
+maybe-configure-gprof: configure-gprof
+configure-gprof: 
+       @test ! -f $(HOST_SUBDIR)/gprof/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gprof ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gprof; \
+       cd "$(HOST_SUBDIR)/gprof" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gprof/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gprof"; \
+       libsrcdir="$$s/gprof"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif gprof
+
+
+
+.PHONY: all-gprof maybe-all-gprof
+maybe-all-gprof:
+@if gprof
+TARGET-gprof=all
+maybe-all-gprof: all-gprof
+all-gprof: configure-gprof
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gprof && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-gprof))
+@endif gprof
+
+
+.PHONY: check-gprof maybe-check-gprof
+maybe-check-gprof:
+@if gprof
+maybe-check-gprof: check-gprof
+
+check-gprof:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gprof && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif gprof
+
+.PHONY: install-gprof maybe-install-gprof
+maybe-install-gprof:
+@if gprof
+maybe-install-gprof: install-gprof
+
+install-gprof: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gprof && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif gprof
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gprof info-gprof
+maybe-info-gprof:
+@if gprof
+maybe-info-gprof: info-gprof
+
+info-gprof: \
+    configure-gprof 
+       @[ -f ./gprof/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing info in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-bison install-info-bison
-maybe-install-info-bison:
+.PHONY: maybe-dvi-gprof dvi-gprof
+maybe-dvi-gprof:
+@if gprof
+maybe-dvi-gprof: dvi-gprof
 
-install-info-bison: \
-    configure-bison \
-    info-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-gprof: \
+    configure-gprof 
+       @[ -f ./gprof/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 bison" ; \
-       (cd bison && \
+       echo "Doing dvi in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-byacc install-info-byacc
-maybe-install-info-byacc:
+.PHONY: maybe-html-gprof html-gprof
+maybe-html-gprof:
+@if gprof
+maybe-html-gprof: html-gprof
 
-install-info-byacc: \
-    configure-byacc \
-    info-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-gprof: \
+    configure-gprof 
+       @[ -f ./gprof/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing html in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-bzip2 install-info-bzip2
-maybe-install-info-bzip2:
+.PHONY: maybe-TAGS-gprof TAGS-gprof
+maybe-TAGS-gprof:
+@if gprof
+maybe-TAGS-gprof: TAGS-gprof
 
-install-info-bzip2: \
-    configure-bzip2 \
-    info-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-gprof: \
+    configure-gprof 
+       @[ -f ./gprof/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 bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing TAGS in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-dejagnu install-info-dejagnu
-maybe-install-info-dejagnu:
+.PHONY: maybe-install-info-gprof install-info-gprof
+maybe-install-info-gprof:
+@if gprof
+maybe-install-info-gprof: install-info-gprof
 
-install-info-dejagnu: \
-    configure-dejagnu \
-    info-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-gprof: \
+    configure-gprof \
+    info-gprof 
+       @[ -f ./gprof/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing install-info in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -6721,206 +10607,318 @@ install-info-dejagnu: \
                  install-info) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-diff install-info-diff
-maybe-install-info-diff:
+.PHONY: maybe-installcheck-gprof installcheck-gprof
+maybe-installcheck-gprof:
+@if gprof
+maybe-installcheck-gprof: installcheck-gprof
 
-install-info-diff: \
-    configure-diff \
-    info-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-gprof: \
+    configure-gprof 
+       @[ -f ./gprof/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 diff" ; \
-       (cd diff && \
+       echo "Doing installcheck in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-dosutils install-info-dosutils
-maybe-install-info-dosutils:
+.PHONY: maybe-mostlyclean-gprof mostlyclean-gprof
+maybe-mostlyclean-gprof:
+@if gprof
+maybe-mostlyclean-gprof: mostlyclean-gprof
 
-install-info-dosutils: \
-    configure-dosutils \
-    info-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-gprof: 
+       @[ -f ./gprof/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 gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
+         $(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 gprof
+
+.PHONY: maybe-clean-gprof clean-gprof
+maybe-clean-gprof:
+@if gprof
+maybe-clean-gprof: clean-gprof
+
+clean-gprof: 
+       @[ -f ./gprof/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing clean in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-etc install-info-etc
-maybe-install-info-etc:
+.PHONY: maybe-distclean-gprof distclean-gprof
+maybe-distclean-gprof:
+@if gprof
+maybe-distclean-gprof: distclean-gprof
 
-install-info-etc: \
-    configure-etc \
-    info-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-gprof: 
+       @[ -f ./gprof/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 etc" ; \
-       (cd etc && \
+       echo "Doing distclean in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-fastjar install-info-fastjar
-maybe-install-info-fastjar:
+.PHONY: maybe-maintainer-clean-gprof maintainer-clean-gprof
+maybe-maintainer-clean-gprof:
+@if gprof
+maybe-maintainer-clean-gprof: maintainer-clean-gprof
 
-install-info-fastjar: \
-    configure-fastjar \
-    info-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-gprof: 
+       @[ -f ./gprof/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing maintainer-clean in gprof" ; \
+       (cd $(HOST_SUBDIR)/gprof && \
          $(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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-fileutils install-info-fileutils
-maybe-install-info-fileutils:
 
-install-info-fileutils: \
-    configure-fileutils \
-    info-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-gzip maybe-configure-gzip
+maybe-configure-gzip:
+@if gzip
+maybe-configure-gzip: configure-gzip
+configure-gzip: 
+       @test ! -f $(HOST_SUBDIR)/gzip/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gzip ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gzip; \
+       cd "$(HOST_SUBDIR)/gzip" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gzip/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gzip"; \
+       libsrcdir="$$s/gzip"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif gzip
+
+
+
+.PHONY: all-gzip maybe-all-gzip
+maybe-all-gzip:
+@if gzip
+TARGET-gzip=all
+maybe-all-gzip: all-gzip
+all-gzip: configure-gzip
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gzip && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-gzip))
+@endif gzip
+
+
+.PHONY: check-gzip maybe-check-gzip
+maybe-check-gzip:
+@if gzip
+maybe-check-gzip: check-gzip
+
+check-gzip:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gzip && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif gzip
+
+.PHONY: install-gzip maybe-install-gzip
+maybe-install-gzip:
+@if gzip
+maybe-install-gzip: install-gzip
+
+install-gzip: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gzip && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif gzip
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gzip info-gzip
+maybe-info-gzip:
+@if gzip
+maybe-info-gzip: info-gzip
+
+info-gzip: \
+    configure-gzip 
+       @[ -f ./gzip/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing info in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-findutils install-info-findutils
-maybe-install-info-findutils:
+.PHONY: maybe-dvi-gzip dvi-gzip
+maybe-dvi-gzip:
+@if gzip
+maybe-dvi-gzip: dvi-gzip
 
-install-info-findutils: \
-    configure-findutils \
-    info-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-gzip: \
+    configure-gzip 
+       @[ -f ./gzip/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing dvi in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-find install-info-find
-maybe-install-info-find:
+.PHONY: maybe-html-gzip html-gzip
+maybe-html-gzip:
+@if gzip
+maybe-html-gzip: html-gzip
 
-install-info-find: \
-    configure-find \
-    info-find 
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-gzip: \
+    configure-gzip 
+       @[ -f ./gzip/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 find" ; \
-       (cd find && \
+       echo "Doing html in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-flex install-info-flex
-maybe-install-info-flex:
+.PHONY: maybe-TAGS-gzip TAGS-gzip
+maybe-TAGS-gzip:
+@if gzip
+maybe-TAGS-gzip: TAGS-gzip
 
-install-info-flex: \
-    configure-flex \
-    info-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-gzip: \
+    configure-gzip 
+       @[ -f ./gzip/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 flex" ; \
-       (cd flex && \
+       echo "Doing TAGS in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-gas install-info-gas
-maybe-install-info-gas:
+.PHONY: maybe-install-info-gzip install-info-gzip
+maybe-install-info-gzip:
+@if gzip
+maybe-install-info-gzip: install-info-gzip
 
-install-info-gas: \
-    configure-gas \
-    info-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-gzip: \
+    configure-gzip \
+    info-gzip 
+       @[ -f ./gzip/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 gas" ; \
-       (cd gas && \
+       echo "Doing install-info in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -6928,229 +10926,318 @@ install-info-gas: \
                  install-info) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-gawk install-info-gawk
-maybe-install-info-gawk:
+.PHONY: maybe-installcheck-gzip installcheck-gzip
+maybe-installcheck-gzip:
+@if gzip
+maybe-installcheck-gzip: installcheck-gzip
 
-install-info-gawk: \
-    configure-gawk \
-    info-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-gzip: \
+    configure-gzip 
+       @[ -f ./gzip/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing installcheck in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-gettext install-info-gettext
-maybe-install-info-gettext:
+.PHONY: maybe-mostlyclean-gzip mostlyclean-gzip
+maybe-mostlyclean-gzip:
+@if gzip
+maybe-mostlyclean-gzip: mostlyclean-gzip
 
-install-info-gettext: \
-    configure-gettext \
-    info-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-gzip: 
+       @[ -f ./gzip/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing mostlyclean in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-gnuserv install-info-gnuserv
-maybe-install-info-gnuserv:
+.PHONY: maybe-clean-gzip clean-gzip
+maybe-clean-gzip:
+@if gzip
+maybe-clean-gzip: clean-gzip
 
-install-info-gnuserv: \
-    configure-gnuserv \
-    info-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-gzip: 
+       @[ -f ./gzip/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing clean in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-gprof install-info-gprof
-maybe-install-info-gprof:
+.PHONY: maybe-distclean-gzip distclean-gzip
+maybe-distclean-gzip:
+@if gzip
+maybe-distclean-gzip: distclean-gzip
 
-install-info-gprof: \
-    configure-gprof \
-    info-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-gzip: 
+       @[ -f ./gzip/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 gprof" ; \
-       (cd gprof && \
+       echo "Doing distclean in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-gzip install-info-gzip
-maybe-install-info-gzip:
+.PHONY: maybe-maintainer-clean-gzip maintainer-clean-gzip
+maybe-maintainer-clean-gzip:
+@if gzip
+maybe-maintainer-clean-gzip: maintainer-clean-gzip
 
-install-info-gzip: \
-    configure-gzip \
-    info-gzip 
+maintainer-clean-gzip: 
        @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       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 gzip" ; \
-       (cd gzip && \
+       echo "Doing maintainer-clean in gzip" ; \
+       (cd $(HOST_SUBDIR)/gzip && \
          $(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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-hello install-info-hello
-maybe-install-info-hello:
 
-install-info-hello: \
-    configure-hello \
-    info-hello 
+
+.PHONY: configure-hello maybe-configure-hello
+maybe-configure-hello:
+@if hello
+maybe-configure-hello: configure-hello
+configure-hello: 
+       @test ! -f $(HOST_SUBDIR)/hello/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/hello ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/hello; \
+       cd "$(HOST_SUBDIR)/hello" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/hello/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/hello"; \
+       libsrcdir="$$s/hello"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif hello
+
+
+
+.PHONY: all-hello maybe-all-hello
+maybe-all-hello:
+@if hello
+TARGET-hello=all
+maybe-all-hello: all-hello
+all-hello: configure-hello
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/hello && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-hello))
+@endif hello
+
+
+.PHONY: check-hello maybe-check-hello
+maybe-check-hello:
+@if hello
+maybe-check-hello: check-hello
+
+check-hello:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/hello && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif hello
+
+.PHONY: install-hello maybe-install-hello
+maybe-install-hello:
+@if hello
+maybe-install-hello: install-hello
+
+install-hello: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/hello && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif hello
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-hello info-hello
+maybe-info-hello:
+@if hello
+maybe-info-hello: info-hello
+
+info-hello: \
+    configure-hello 
        @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       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 hello" ; \
-       (cd hello && \
+       echo "Doing info in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-indent install-info-indent
-maybe-install-info-indent:
+.PHONY: maybe-dvi-hello dvi-hello
+maybe-dvi-hello:
+@if hello
+maybe-dvi-hello: dvi-hello
 
-install-info-indent: \
-    configure-indent \
-    info-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-hello: \
+    configure-hello 
+       @[ -f ./hello/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 indent" ; \
-       (cd indent && \
+       echo "Doing dvi in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-intl install-info-intl
-maybe-install-info-intl:
+.PHONY: maybe-html-hello html-hello
+maybe-html-hello:
+@if hello
+maybe-html-hello: html-hello
 
-install-info-intl: \
-    configure-intl \
-    info-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-hello: \
+    configure-hello 
+       @[ -f ./hello/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 intl" ; \
-       (cd intl && \
+       echo "Doing html in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-tcl install-info-tcl
-maybe-install-info-tcl:
+.PHONY: maybe-TAGS-hello TAGS-hello
+maybe-TAGS-hello:
+@if hello
+maybe-TAGS-hello: TAGS-hello
 
-install-info-tcl: \
-    configure-tcl \
-    info-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-hello: \
+    configure-hello 
+       @[ -f ./hello/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 tcl" ; \
-       (cd tcl && \
+       echo "Doing TAGS in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-itcl install-info-itcl
-maybe-install-info-itcl:
+.PHONY: maybe-install-info-hello install-info-hello
+maybe-install-info-hello:
+@if hello
+maybe-install-info-hello: install-info-hello
 
-install-info-itcl: \
-    configure-itcl \
-    info-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-hello: \
+    configure-hello \
+    info-hello 
+       @[ -f ./hello/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing install-info in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -7158,229 +11245,318 @@ install-info-itcl: \
                  install-info) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-ld install-info-ld
-maybe-install-info-ld:
+.PHONY: maybe-installcheck-hello installcheck-hello
+maybe-installcheck-hello:
+@if hello
+maybe-installcheck-hello: installcheck-hello
 
-install-info-ld: \
-    configure-ld \
-    info-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-hello: \
+    configure-hello 
+       @[ -f ./hello/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 ld" ; \
-       (cd ld && \
+       echo "Doing installcheck in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-libgui install-info-libgui
-maybe-install-info-libgui:
+.PHONY: maybe-mostlyclean-hello mostlyclean-hello
+maybe-mostlyclean-hello:
+@if hello
+maybe-mostlyclean-hello: mostlyclean-hello
 
-install-info-libgui: \
-    configure-libgui \
-    info-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-hello: 
+       @[ -f ./hello/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 libgui" ; \
-       (cd libgui && \
+       echo "Doing mostlyclean in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-libiberty install-info-libiberty
-maybe-install-info-libiberty:
+.PHONY: maybe-clean-hello clean-hello
+maybe-clean-hello:
+@if hello
+maybe-clean-hello: clean-hello
 
-install-info-libiberty: \
-    configure-libiberty \
-    info-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-hello: 
+       @[ -f ./hello/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 libiberty" ; \
-       (cd libiberty && \
+       echo "Doing clean in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-libtool install-info-libtool
-maybe-install-info-libtool:
+.PHONY: maybe-distclean-hello distclean-hello
+maybe-distclean-hello:
+@if hello
+maybe-distclean-hello: distclean-hello
 
-install-info-libtool: \
-    configure-libtool \
-    info-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-hello: 
+       @[ -f ./hello/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 libtool" ; \
-       (cd libtool && \
+       echo "Doing distclean in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-m4 install-info-m4
-maybe-install-info-m4:
+.PHONY: maybe-maintainer-clean-hello maintainer-clean-hello
+maybe-maintainer-clean-hello:
+@if hello
+maybe-maintainer-clean-hello: maintainer-clean-hello
 
-install-info-m4: \
-    configure-m4 \
-    info-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-hello: 
+       @[ -f ./hello/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 m4" ; \
-       (cd m4 && \
+       echo "Doing maintainer-clean in hello" ; \
+       (cd $(HOST_SUBDIR)/hello && \
          $(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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-make install-info-make
-maybe-install-info-make:
 
-install-info-make: \
-    configure-make \
-    info-make 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-indent maybe-configure-indent
+maybe-configure-indent:
+@if indent
+maybe-configure-indent: configure-indent
+configure-indent: 
+       @test ! -f $(HOST_SUBDIR)/indent/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/indent ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/indent; \
+       cd "$(HOST_SUBDIR)/indent" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/indent/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/indent"; \
+       libsrcdir="$$s/indent"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif indent
+
+
+
+.PHONY: all-indent maybe-all-indent
+maybe-all-indent:
+@if indent
+TARGET-indent=all
+maybe-all-indent: all-indent
+all-indent: configure-indent
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/indent && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-indent))
+@endif indent
+
+
+.PHONY: check-indent maybe-check-indent
+maybe-check-indent:
+@if indent
+maybe-check-indent: check-indent
+
+check-indent:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/indent && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif indent
+
+.PHONY: install-indent maybe-install-indent
+maybe-install-indent:
+@if indent
+maybe-install-indent: install-indent
+
+install-indent: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/indent && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif indent
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-indent info-indent
+maybe-info-indent:
+@if indent
+maybe-info-indent: info-indent
+
+info-indent: \
+    configure-indent 
+       @[ -f ./indent/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 make" ; \
-       (cd make && \
+       echo "Doing info in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-mmalloc install-info-mmalloc
-maybe-install-info-mmalloc:
+.PHONY: maybe-dvi-indent dvi-indent
+maybe-dvi-indent:
+@if indent
+maybe-dvi-indent: dvi-indent
 
-install-info-mmalloc: \
-    configure-mmalloc \
-    info-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-indent: \
+    configure-indent 
+       @[ -f ./indent/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 mmalloc" ; \
-       (cd mmalloc && \
+       echo "Doing dvi in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-patch install-info-patch
-maybe-install-info-patch:
+.PHONY: maybe-html-indent html-indent
+maybe-html-indent:
+@if indent
+maybe-html-indent: html-indent
 
-install-info-patch: \
-    configure-patch \
-    info-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-indent: \
+    configure-indent 
+       @[ -f ./indent/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 patch" ; \
-       (cd patch && \
+       echo "Doing html in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-perl install-info-perl
-maybe-install-info-perl:
+.PHONY: maybe-TAGS-indent TAGS-indent
+maybe-TAGS-indent:
+@if indent
+maybe-TAGS-indent: TAGS-indent
 
-install-info-perl: \
-    configure-perl \
-    info-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-indent: \
+    configure-indent 
+       @[ -f ./indent/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 perl" ; \
-       (cd perl && \
+       echo "Doing TAGS in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-prms install-info-prms
-maybe-install-info-prms:
+.PHONY: maybe-install-info-indent install-info-indent
+maybe-install-info-indent:
+@if indent
+maybe-install-info-indent: install-info-indent
 
-install-info-prms: \
-    configure-prms \
-    info-prms 
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-indent: \
+    configure-indent \
+    info-indent 
+       @[ -f ./indent/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 prms" ; \
-       (cd prms && \
+       echo "Doing install-info in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -7388,229 +11564,320 @@ install-info-prms: \
                  install-info) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-rcs install-info-rcs
-maybe-install-info-rcs:
+.PHONY: maybe-installcheck-indent installcheck-indent
+maybe-installcheck-indent:
+@if indent
+maybe-installcheck-indent: installcheck-indent
 
-install-info-rcs: \
-    configure-rcs \
-    info-rcs 
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-indent: \
+    configure-indent 
+       @[ -f ./indent/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 rcs" ; \
-       (cd rcs && \
+       echo "Doing installcheck in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-readline install-info-readline
-maybe-install-info-readline:
+.PHONY: maybe-mostlyclean-indent mostlyclean-indent
+maybe-mostlyclean-indent:
+@if indent
+maybe-mostlyclean-indent: mostlyclean-indent
 
-install-info-readline: \
-    configure-readline \
-    info-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-indent: 
+       @[ -f ./indent/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 readline" ; \
-       (cd readline && \
+       echo "Doing mostlyclean in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-release install-info-release
-maybe-install-info-release:
+.PHONY: maybe-clean-indent clean-indent
+maybe-clean-indent:
+@if indent
+maybe-clean-indent: clean-indent
 
-install-info-release: \
-    configure-release \
-    info-release 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-indent: 
+       @[ -f ./indent/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 release" ; \
-       (cd release && \
+       echo "Doing clean in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-recode install-info-recode
-maybe-install-info-recode:
+.PHONY: maybe-distclean-indent distclean-indent
+maybe-distclean-indent:
+@if indent
+maybe-distclean-indent: distclean-indent
 
-install-info-recode: \
-    configure-recode \
-    info-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-indent: 
+       @[ -f ./indent/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 recode" ; \
-       (cd recode && \
+       echo "Doing distclean in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-sed install-info-sed
-maybe-install-info-sed:
+.PHONY: maybe-maintainer-clean-indent maintainer-clean-indent
+maybe-maintainer-clean-indent:
+@if indent
+maybe-maintainer-clean-indent: maintainer-clean-indent
 
-install-info-sed: \
-    configure-sed \
-    info-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-indent: 
+       @[ -f ./indent/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 sed" ; \
-       (cd sed && \
+       echo "Doing maintainer-clean in indent" ; \
+       (cd $(HOST_SUBDIR)/indent && \
          $(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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-install-info-send-pr install-info-send-pr
-maybe-install-info-send-pr:
 
-install-info-send-pr: \
-    configure-send-pr \
-    info-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-intl maybe-configure-intl
+maybe-configure-intl:
+@if intl
+maybe-configure-intl: configure-intl
+configure-intl: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/intl/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/intl ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/intl; \
+       cd "$(HOST_SUBDIR)/intl" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/intl"; \
+       libsrcdir="$$s/intl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif intl
+
+
+
+.PHONY: all-intl maybe-all-intl
+maybe-all-intl:
+@if intl
+TARGET-intl=all
+maybe-all-intl: all-intl
+all-intl: configure-intl
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/intl && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-intl))
+@endif intl
+
+
+.PHONY: check-intl maybe-check-intl
+maybe-check-intl:
+@if intl
+maybe-check-intl: check-intl
+
+check-intl:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/intl && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif intl
+
+.PHONY: install-intl maybe-install-intl
+maybe-install-intl:
+@if intl
+maybe-install-intl: install-intl
+
+install-intl: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/intl && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif intl
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-intl info-intl
+maybe-info-intl:
+@if intl
+maybe-info-intl: info-intl
+
+info-intl: \
+    configure-intl 
+       @[ -f ./intl/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 send-pr" ; \
-       (cd send-pr && \
+       echo "Doing info in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-shellutils install-info-shellutils
-maybe-install-info-shellutils:
+.PHONY: maybe-dvi-intl dvi-intl
+maybe-dvi-intl:
+@if intl
+maybe-dvi-intl: dvi-intl
 
-install-info-shellutils: \
-    configure-shellutils \
-    info-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-intl: \
+    configure-intl 
+       @[ -f ./intl/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 shellutils" ; \
-       (cd shellutils && \
+       echo "Doing dvi in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-sid install-info-sid
-maybe-install-info-sid:
+.PHONY: maybe-html-intl html-intl
+maybe-html-intl:
+@if intl
+maybe-html-intl: html-intl
 
-install-info-sid: \
-    configure-sid \
-    info-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-intl: \
+    configure-intl 
+       @[ -f ./intl/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 sid" ; \
-       (cd sid && \
+       echo "Doing html in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-sim install-info-sim
-maybe-install-info-sim:
+.PHONY: maybe-TAGS-intl TAGS-intl
+maybe-TAGS-intl:
+@if intl
+maybe-TAGS-intl: TAGS-intl
 
-install-info-sim: \
-    configure-sim \
-    info-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-intl: \
+    configure-intl 
+       @[ -f ./intl/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 sim" ; \
-       (cd sim && \
+       echo "Doing TAGS in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-tar install-info-tar
-maybe-install-info-tar:
+.PHONY: maybe-install-info-intl install-info-intl
+maybe-install-info-intl:
+@if intl
+maybe-install-info-intl: install-info-intl
 
-install-info-tar: \
-    configure-tar \
-    info-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-intl: \
+    configure-intl \
+    info-intl 
+       @[ -f ./intl/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 tar" ; \
-       (cd tar && \
+       echo "Doing install-info in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -7618,229 +11885,318 @@ install-info-tar: \
                  install-info) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-texinfo install-info-texinfo
-maybe-install-info-texinfo:
+.PHONY: maybe-installcheck-intl installcheck-intl
+maybe-installcheck-intl:
+@if intl
+maybe-installcheck-intl: installcheck-intl
 
-install-info-texinfo: \
-    configure-texinfo \
-    info-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-intl: \
+    configure-intl 
+       @[ -f ./intl/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 texinfo" ; \
-       (cd texinfo && \
+       echo "Doing installcheck in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-textutils install-info-textutils
-maybe-install-info-textutils:
+.PHONY: maybe-mostlyclean-intl mostlyclean-intl
+maybe-mostlyclean-intl:
+@if intl
+maybe-mostlyclean-intl: mostlyclean-intl
 
-install-info-textutils: \
-    configure-textutils \
-    info-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-intl: 
+       @[ -f ./intl/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 textutils" ; \
-       (cd textutils && \
+       echo "Doing mostlyclean in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-time install-info-time
-maybe-install-info-time:
+.PHONY: maybe-clean-intl clean-intl
+maybe-clean-intl:
+@if intl
+maybe-clean-intl: clean-intl
 
-install-info-time: \
-    configure-time \
-    info-time 
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-intl: 
+       @[ -f ./intl/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 time" ; \
-       (cd time && \
+       echo "Doing clean in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-uudecode install-info-uudecode
-maybe-install-info-uudecode:
+.PHONY: maybe-distclean-intl distclean-intl
+maybe-distclean-intl:
+@if intl
+maybe-distclean-intl: distclean-intl
 
-install-info-uudecode: \
-    configure-uudecode \
-    info-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-intl: 
+       @[ -f ./intl/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 uudecode" ; \
-       (cd uudecode && \
+       echo "Doing distclean in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-wdiff install-info-wdiff
-maybe-install-info-wdiff:
+.PHONY: maybe-maintainer-clean-intl maintainer-clean-intl
+maybe-maintainer-clean-intl:
+@if intl
+maybe-maintainer-clean-intl: maintainer-clean-intl
 
-install-info-wdiff: \
-    configure-wdiff \
-    info-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-intl: 
+       @[ -f ./intl/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 wdiff" ; \
-       (cd wdiff && \
+       echo "Doing maintainer-clean in intl" ; \
+       (cd $(HOST_SUBDIR)/intl && \
          $(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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-install-info-zip install-info-zip
-maybe-install-info-zip:
 
-install-info-zip: \
-    configure-zip \
-    info-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-tcl maybe-configure-tcl
+maybe-configure-tcl:
+@if tcl
+maybe-configure-tcl: configure-tcl
+configure-tcl: 
+       @test ! -f $(HOST_SUBDIR)/tcl/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/tcl ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/tcl; \
+       cd "$(HOST_SUBDIR)/tcl" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/tcl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/tcl"; \
+       libsrcdir="$$s/tcl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif tcl
+
+
+
+.PHONY: all-tcl maybe-all-tcl
+maybe-all-tcl:
+@if tcl
+TARGET-tcl=all
+maybe-all-tcl: all-tcl
+all-tcl: configure-tcl
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tcl && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-tcl))
+@endif tcl
+
+
+.PHONY: check-tcl maybe-check-tcl
+maybe-check-tcl:
+@if tcl
+maybe-check-tcl: check-tcl
+
+check-tcl:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tcl && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif tcl
+
+.PHONY: install-tcl maybe-install-tcl
+maybe-install-tcl:
+@if tcl
+maybe-install-tcl: install-tcl
+
+install-tcl: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tcl && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif tcl
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-tcl info-tcl
+maybe-info-tcl:
+@if tcl
+maybe-info-tcl: info-tcl
+
+info-tcl: \
+    configure-tcl 
+       @[ -f ./tcl/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 zip" ; \
-       (cd zip && \
+       echo "Doing info in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif tcl
 
-.PHONY: maybe-install-info-zlib install-info-zlib
-maybe-install-info-zlib:
+.PHONY: maybe-dvi-tcl dvi-tcl
+maybe-dvi-tcl:
+@if tcl
+maybe-dvi-tcl: dvi-tcl
 
-install-info-zlib: \
-    configure-zlib \
-    info-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-tcl: \
+    configure-tcl 
+       @[ -f ./tcl/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 zlib" ; \
-       (cd zlib && \
+       echo "Doing dvi in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif tcl
 
-.PHONY: maybe-install-info-gdb install-info-gdb
-maybe-install-info-gdb:
-
-install-info-gdb: \
-    configure-gdb \
-    info-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: maybe-html-tcl html-tcl
+maybe-html-tcl:
+@if tcl
+maybe-html-tcl: html-tcl
+
+html-tcl: \
+    configure-tcl 
+       @[ -f ./tcl/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 gdb" ; \
-       (cd gdb && \
+       echo "Doing html in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif tcl
 
-.PHONY: maybe-install-info-expect install-info-expect
-maybe-install-info-expect:
+.PHONY: maybe-TAGS-tcl TAGS-tcl
+maybe-TAGS-tcl:
+@if tcl
+maybe-TAGS-tcl: TAGS-tcl
 
-install-info-expect: \
-    configure-expect \
-    info-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-tcl: \
+    configure-tcl 
+       @[ -f ./tcl/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 expect" ; \
-       (cd expect && \
+       echo "Doing TAGS in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif tcl
 
-.PHONY: maybe-install-info-guile install-info-guile
-maybe-install-info-guile:
+.PHONY: maybe-install-info-tcl install-info-tcl
+maybe-install-info-tcl:
+@if tcl
+maybe-install-info-tcl: install-info-tcl
 
-install-info-guile: \
-    configure-guile \
-    info-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-tcl: \
+    configure-tcl \
+    info-tcl 
+       @[ -f ./tcl/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 guile" ; \
-       (cd guile && \
+       echo "Doing install-info in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -7848,209 +12204,304 @@ install-info-guile: \
                  install-info) \
          || exit 1
 
+@endif tcl
 
-.PHONY: maybe-install-info-tk install-info-tk
-maybe-install-info-tk:
+.PHONY: maybe-installcheck-tcl installcheck-tcl
+maybe-installcheck-tcl:
+@if tcl
+maybe-installcheck-tcl: installcheck-tcl
 
-install-info-tk: \
-    configure-tk \
-    info-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-tcl: \
+    configure-tcl 
+       @[ -f ./tcl/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 tk" ; \
-       (cd tk && \
+       echo "Doing installcheck in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif tcl
+
+.PHONY: maybe-mostlyclean-tcl mostlyclean-tcl
+maybe-mostlyclean-tcl:
+@if tcl
+maybe-mostlyclean-tcl: mostlyclean-tcl
+
+# tcl doesn't support mostlyclean.
+mostlyclean-tcl:
+
+@endif tcl
 
-.PHONY: maybe-install-info-tix install-info-tix
-maybe-install-info-tix:
+.PHONY: maybe-clean-tcl clean-tcl
+maybe-clean-tcl:
+@if tcl
+maybe-clean-tcl: clean-tcl
 
-install-info-tix: \
-    configure-tix \
-    info-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-tcl: 
+       @[ -f ./tcl/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 tix" ; \
-       (cd tix && \
+       echo "Doing clean in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif tcl
 
-.PHONY: maybe-install-info-libtermcap install-info-libtermcap
-maybe-install-info-libtermcap:
+.PHONY: maybe-distclean-tcl distclean-tcl
+maybe-distclean-tcl:
+@if tcl
+maybe-distclean-tcl: distclean-tcl
 
-install-info-libtermcap: \
-    configure-libtermcap \
-    info-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-tcl: 
+       @[ -f ./tcl/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 libtermcap" ; \
-       (cd libtermcap && \
+       echo "Doing distclean in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif tcl
 
-.PHONY: maybe-install-info-utils install-info-utils
-maybe-install-info-utils:
+.PHONY: maybe-maintainer-clean-tcl maintainer-clean-tcl
+maybe-maintainer-clean-tcl:
+@if tcl
+maybe-maintainer-clean-tcl: maintainer-clean-tcl
 
-install-info-utils: \
-    configure-utils \
-    info-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-tcl: 
+       @[ -f ./tcl/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 utils" ; \
-       (cd utils && \
+       echo "Doing maintainer-clean in tcl" ; \
+       (cd $(HOST_SUBDIR)/tcl && \
          $(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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif tcl
 
 
-# Target modules.
 
-.PHONY: maybe-install-info-target-libstdc++-v3 install-info-target-libstdc++-v3
-maybe-install-info-target-libstdc++-v3:
+.PHONY: configure-itcl maybe-configure-itcl
+maybe-configure-itcl:
+@if itcl
+maybe-configure-itcl: configure-itcl
+configure-itcl: 
+       @test ! -f $(HOST_SUBDIR)/itcl/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/itcl ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/itcl; \
+       cd "$(HOST_SUBDIR)/itcl" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/itcl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/itcl"; \
+       libsrcdir="$$s/itcl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif itcl
 
-install-info-target-libstdc++-v3: \
-    configure-target-libstdc++-v3 \
-    info-target-libstdc++-v3 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+
+
+.PHONY: all-itcl maybe-all-itcl
+maybe-all-itcl:
+@if itcl
+TARGET-itcl=all
+maybe-all-itcl: all-itcl
+all-itcl: configure-itcl
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/itcl && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-itcl))
+@endif itcl
+
+
+.PHONY: check-itcl maybe-check-itcl
+maybe-check-itcl:
+@if itcl
+maybe-check-itcl: check-itcl
+
+check-itcl:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/itcl && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif itcl
+
+.PHONY: install-itcl maybe-install-itcl
+maybe-install-itcl:
+@if itcl
+maybe-install-itcl: install-itcl
+
+install-itcl: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/itcl && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif itcl
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-itcl info-itcl
+maybe-info-itcl:
+@if itcl
+maybe-info-itcl: info-itcl
+
+info-itcl: \
+    configure-itcl 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+       echo "Doing info in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-newlib install-info-target-newlib
-maybe-install-info-target-newlib:
+.PHONY: maybe-dvi-itcl dvi-itcl
+maybe-dvi-itcl:
+@if itcl
+maybe-dvi-itcl: dvi-itcl
 
-install-info-target-newlib: \
-    configure-target-newlib \
-    info-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-itcl: \
+    configure-itcl 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/newlib && \
+       echo "Doing dvi in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-libf2c install-info-target-libf2c
-maybe-install-info-target-libf2c:
+.PHONY: maybe-html-itcl html-itcl
+maybe-html-itcl:
+@if itcl
+maybe-html-itcl: html-itcl
 
-install-info-target-libf2c: \
-    configure-target-libf2c \
-    info-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-itcl: \
+    configure-itcl 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       echo "Doing html in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-libobjc install-info-target-libobjc
-maybe-install-info-target-libobjc:
+.PHONY: maybe-TAGS-itcl TAGS-itcl
+maybe-TAGS-itcl:
+@if itcl
+maybe-TAGS-itcl: TAGS-itcl
 
-install-info-target-libobjc: \
-    configure-target-libobjc \
-    info-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-itcl: \
+    configure-itcl 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       echo "Doing TAGS in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-libtermcap install-info-target-libtermcap
-maybe-install-info-target-libtermcap:
+.PHONY: maybe-install-info-itcl install-info-itcl
+maybe-install-info-itcl:
+@if itcl
+maybe-install-info-itcl: install-info-itcl
 
-install-info-target-libtermcap: \
-    configure-target-libtermcap \
-    info-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-itcl: \
+    configure-itcl \
+    info-itcl 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
+       echo "Doing install-info in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -8058,229 +12509,320 @@ install-info-target-libtermcap: \
                  install-info) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-winsup install-info-target-winsup
-maybe-install-info-target-winsup:
+.PHONY: maybe-installcheck-itcl installcheck-itcl
+maybe-installcheck-itcl:
+@if itcl
+maybe-installcheck-itcl: installcheck-itcl
 
-install-info-target-winsup: \
-    configure-target-winsup \
-    info-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-itcl: \
+    configure-itcl 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       echo "Doing installcheck in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-libgloss install-info-target-libgloss
-maybe-install-info-target-libgloss:
+.PHONY: maybe-mostlyclean-itcl mostlyclean-itcl
+maybe-mostlyclean-itcl:
+@if itcl
+maybe-mostlyclean-itcl: mostlyclean-itcl
 
-install-info-target-libgloss: \
-    configure-target-libgloss \
-    info-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-itcl: 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       echo "Doing mostlyclean in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-libiberty install-info-target-libiberty
-maybe-install-info-target-libiberty:
+.PHONY: maybe-clean-itcl clean-itcl
+maybe-clean-itcl:
+@if itcl
+maybe-clean-itcl: clean-itcl
 
-install-info-target-libiberty: \
-    configure-target-libiberty \
-    info-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-itcl: 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       echo "Doing clean in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-gperf install-info-target-gperf
-maybe-install-info-target-gperf:
+.PHONY: maybe-distclean-itcl distclean-itcl
+maybe-distclean-itcl:
+@if itcl
+maybe-distclean-itcl: distclean-itcl
 
-install-info-target-gperf: \
-    configure-target-gperf \
-    info-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-itcl: 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/gperf && \
+       echo "Doing distclean in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-examples install-info-target-examples
-maybe-install-info-target-examples:
+.PHONY: maybe-maintainer-clean-itcl maintainer-clean-itcl
+maybe-maintainer-clean-itcl:
+@if itcl
+maybe-maintainer-clean-itcl: maintainer-clean-itcl
 
-install-info-target-examples: \
-    configure-target-examples \
-    info-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-itcl: 
+       @[ -f ./itcl/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; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       echo "Doing maintainer-clean in itcl" ; \
+       (cd $(HOST_SUBDIR)/itcl && \
          $(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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-install-info-target-libffi install-info-target-libffi
-maybe-install-info-target-libffi:
 
-install-info-target-libffi: \
-    configure-target-libffi \
-    info-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+
+.PHONY: configure-ld maybe-configure-ld
+maybe-configure-ld:
+@if ld
+maybe-configure-ld: configure-ld
+configure-ld: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/ld/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/ld ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/ld; \
+       cd "$(HOST_SUBDIR)/ld" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/ld"; \
+       libsrcdir="$$s/ld"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif ld
+
+
+
+.PHONY: all-ld maybe-all-ld
+maybe-all-ld:
+@if ld
+TARGET-ld=all
+maybe-all-ld: all-ld
+all-ld: configure-ld
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/ld && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-ld))
+@endif ld
+
+
+.PHONY: check-ld maybe-check-ld
+maybe-check-ld:
+@if ld
+maybe-check-ld: check-ld
+
+check-ld:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/ld && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif ld
+
+.PHONY: install-ld maybe-install-ld
+maybe-install-ld:
+@if ld
+maybe-install-ld: install-ld
+
+install-ld: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/ld && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif ld
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-ld info-ld
+maybe-info-ld:
+@if ld
+maybe-info-ld: info-ld
+
+info-ld: \
+    configure-ld 
+       @[ -f ./ld/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; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       echo "Doing info in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-install-info-target-libjava install-info-target-libjava
-maybe-install-info-target-libjava:
+.PHONY: maybe-dvi-ld dvi-ld
+maybe-dvi-ld:
+@if ld
+maybe-dvi-ld: dvi-ld
 
-install-info-target-libjava: \
-    configure-target-libjava \
-    info-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-ld: \
+    configure-ld 
+       @[ -f ./ld/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; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       echo "Doing dvi in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-install-info-target-zlib install-info-target-zlib
-maybe-install-info-target-zlib:
+.PHONY: maybe-html-ld html-ld
+maybe-html-ld:
+@if ld
+maybe-html-ld: html-ld
 
-install-info-target-zlib: \
-    configure-target-zlib \
-    info-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-ld: \
+    configure-ld 
+       @[ -f ./ld/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; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       echo "Doing html in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-install-info-target-boehm-gc install-info-target-boehm-gc
-maybe-install-info-target-boehm-gc:
+.PHONY: maybe-TAGS-ld TAGS-ld
+maybe-TAGS-ld:
+@if ld
+maybe-TAGS-ld: TAGS-ld
 
-install-info-target-boehm-gc: \
-    configure-target-boehm-gc \
-    info-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-ld: \
+    configure-ld 
+       @[ -f ./ld/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; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       echo "Doing TAGS in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-install-info-target-qthreads install-info-target-qthreads
-maybe-install-info-target-qthreads:
+.PHONY: maybe-install-info-ld install-info-ld
+maybe-install-info-ld:
+@if ld
+maybe-install-info-ld: install-info-ld
 
-install-info-target-qthreads: \
-    configure-target-qthreads \
-    info-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-ld: \
+    configure-ld \
+    info-ld 
+       @[ -f ./ld/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; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       echo "Doing install-info in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -8288,311 +12830,345 @@ install-info-target-qthreads: \
                  install-info) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-install-info-target-rda install-info-target-rda
-maybe-install-info-target-rda:
+.PHONY: maybe-installcheck-ld installcheck-ld
+maybe-installcheck-ld:
+@if ld
+maybe-installcheck-ld: installcheck-ld
 
-install-info-target-rda: \
-    configure-target-rda \
-    info-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-ld: \
+    configure-ld 
+       @[ -f ./ld/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; \
-       (cd $(TARGET_SUBDIR)/rda && \
+       echo "Doing installcheck in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif ld
 
+.PHONY: maybe-mostlyclean-ld mostlyclean-ld
+maybe-mostlyclean-ld:
+@if ld
+maybe-mostlyclean-ld: mostlyclean-ld
 
-.PHONY: do-installcheck
-do-installcheck: installcheck-host installcheck-target
+mostlyclean-ld: 
+       @[ -f ./ld/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 ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
+         $(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
 
-.PHONY: installcheck-host
-installcheck-host: maybe-installcheck-gcc  \
-    maybe-installcheck-ash \
-    maybe-installcheck-autoconf \
-    maybe-installcheck-automake \
-    maybe-installcheck-bash \
-    maybe-installcheck-bfd \
-    maybe-installcheck-opcodes \
-    maybe-installcheck-binutils \
-    maybe-installcheck-bison \
-    maybe-installcheck-byacc \
-    maybe-installcheck-bzip2 \
-    maybe-installcheck-dejagnu \
-    maybe-installcheck-diff \
-    maybe-installcheck-dosutils \
-    maybe-installcheck-etc \
-    maybe-installcheck-fastjar \
-    maybe-installcheck-fileutils \
-    maybe-installcheck-findutils \
-    maybe-installcheck-find \
-    maybe-installcheck-flex \
-    maybe-installcheck-gas \
-    maybe-installcheck-gawk \
-    maybe-installcheck-gettext \
-    maybe-installcheck-gnuserv \
-    maybe-installcheck-gprof \
-    maybe-installcheck-gzip \
-    maybe-installcheck-hello \
-    maybe-installcheck-indent \
-    maybe-installcheck-intl \
-    maybe-installcheck-tcl \
-    maybe-installcheck-itcl \
-    maybe-installcheck-ld \
-    maybe-installcheck-libgui \
-    maybe-installcheck-libiberty \
-    maybe-installcheck-libtool \
-    maybe-installcheck-m4 \
-    maybe-installcheck-make \
-    maybe-installcheck-mmalloc \
-    maybe-installcheck-patch \
-    maybe-installcheck-perl \
-    maybe-installcheck-prms \
-    maybe-installcheck-rcs \
-    maybe-installcheck-readline \
-    maybe-installcheck-release \
-    maybe-installcheck-recode \
-    maybe-installcheck-sed \
-    maybe-installcheck-send-pr \
-    maybe-installcheck-shellutils \
-    maybe-installcheck-sid \
-    maybe-installcheck-sim \
-    maybe-installcheck-tar \
-    maybe-installcheck-texinfo \
-    maybe-installcheck-textutils \
-    maybe-installcheck-time \
-    maybe-installcheck-uudecode \
-    maybe-installcheck-wdiff \
-    maybe-installcheck-zip \
-    maybe-installcheck-zlib \
-    maybe-installcheck-gdb \
-    maybe-installcheck-expect \
-    maybe-installcheck-guile \
-    maybe-installcheck-tk \
-    maybe-installcheck-tix \
-    maybe-installcheck-libtermcap \
-    maybe-installcheck-utils
+@endif ld
 
-.PHONY: installcheck-target
-installcheck-target:  \
-    maybe-installcheck-target-libstdc++-v3 \
-    maybe-installcheck-target-newlib \
-    maybe-installcheck-target-libf2c \
-    maybe-installcheck-target-libobjc \
-    maybe-installcheck-target-libtermcap \
-    maybe-installcheck-target-winsup \
-    maybe-installcheck-target-libgloss \
-    maybe-installcheck-target-libiberty \
-    maybe-installcheck-target-gperf \
-    maybe-installcheck-target-examples \
-    maybe-installcheck-target-libffi \
-    maybe-installcheck-target-libjava \
-    maybe-installcheck-target-zlib \
-    maybe-installcheck-target-boehm-gc \
-    maybe-installcheck-target-qthreads \
-    maybe-installcheck-target-rda
+.PHONY: maybe-clean-ld clean-ld
+maybe-clean-ld:
+@if ld
+maybe-clean-ld: clean-ld
 
-# GCC, the eternal special case
-.PHONY: maybe-installcheck-gcc installcheck-gcc
-maybe-installcheck-gcc:
-installcheck-gcc: \
-    configure-gcc 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+clean-ld: 
+       @[ -f ./ld/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 gcc" ; \
-       (cd gcc && \
+       echo "Doing clean in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
-# Host modules.
-
-.PHONY: maybe-installcheck-ash installcheck-ash
-maybe-installcheck-ash:
+@endif ld
 
-installcheck-ash: \
-    configure-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: maybe-distclean-ld distclean-ld
+maybe-distclean-ld:
+@if ld
+maybe-distclean-ld: distclean-ld
+
+distclean-ld: 
+       @[ -f ./ld/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 ash" ; \
-       (cd ash && \
+       echo "Doing distclean in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-autoconf installcheck-autoconf
-maybe-installcheck-autoconf:
+.PHONY: maybe-maintainer-clean-ld maintainer-clean-ld
+maybe-maintainer-clean-ld:
+@if ld
+maybe-maintainer-clean-ld: maintainer-clean-ld
 
-installcheck-autoconf: \
-    configure-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-ld: 
+       @[ -f ./ld/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 autoconf" ; \
-       (cd autoconf && \
+       echo "Doing maintainer-clean in ld" ; \
+       (cd $(HOST_SUBDIR)/ld && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 maintainer-clean) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-automake installcheck-automake
-maybe-installcheck-automake:
 
-installcheck-automake: \
-    configure-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-libcpp maybe-configure-libcpp
+maybe-configure-libcpp:
+@if libcpp
+maybe-configure-libcpp: configure-libcpp
+configure-libcpp: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/libcpp/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libcpp ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/libcpp; \
+       cd "$(HOST_SUBDIR)/libcpp" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libcpp"; \
+       libsrcdir="$$s/libcpp"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif libcpp
+
+
+
+.PHONY: all-libcpp maybe-all-libcpp
+maybe-all-libcpp:
+@if libcpp
+TARGET-libcpp=all
+maybe-all-libcpp: all-libcpp
+all-libcpp: configure-libcpp
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libcpp && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-libcpp))
+@endif libcpp
+
+
+.PHONY: check-libcpp maybe-check-libcpp
+maybe-check-libcpp:
+@if libcpp
+maybe-check-libcpp: check-libcpp
+
+check-libcpp:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libcpp && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif libcpp
+
+.PHONY: install-libcpp maybe-install-libcpp
+maybe-install-libcpp:
+@if libcpp
+maybe-install-libcpp: install-libcpp
+
+install-libcpp: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libcpp && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif libcpp
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-libcpp info-libcpp
+maybe-info-libcpp:
+@if libcpp
+maybe-info-libcpp: info-libcpp
+
+info-libcpp: \
+    configure-libcpp 
+       @[ -f ./libcpp/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 automake" ; \
-       (cd automake && \
+       echo "Doing info in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-bash installcheck-bash
-maybe-installcheck-bash:
+.PHONY: maybe-dvi-libcpp dvi-libcpp
+maybe-dvi-libcpp:
+@if libcpp
+maybe-dvi-libcpp: dvi-libcpp
 
-installcheck-bash: \
-    configure-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-libcpp: \
+    configure-libcpp 
+       @[ -f ./libcpp/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 bash" ; \
-       (cd bash && \
+       echo "Doing dvi in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-bfd installcheck-bfd
-maybe-installcheck-bfd:
+.PHONY: maybe-html-libcpp html-libcpp
+maybe-html-libcpp:
+@if libcpp
+maybe-html-libcpp: html-libcpp
 
-installcheck-bfd: \
-    configure-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-libcpp: \
+    configure-libcpp 
+       @[ -f ./libcpp/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing html in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 html) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-opcodes installcheck-opcodes
-maybe-installcheck-opcodes:
+.PHONY: maybe-TAGS-libcpp TAGS-libcpp
+maybe-TAGS-libcpp:
+@if libcpp
+maybe-TAGS-libcpp: TAGS-libcpp
 
-installcheck-opcodes: \
-    configure-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-libcpp: \
+    configure-libcpp 
+       @[ -f ./libcpp/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing TAGS in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-binutils installcheck-binutils
-maybe-installcheck-binutils:
+.PHONY: maybe-install-info-libcpp install-info-libcpp
+maybe-install-info-libcpp:
+@if libcpp
+maybe-install-info-libcpp: install-info-libcpp
 
-installcheck-binutils: \
-    configure-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-libcpp: \
+    configure-libcpp \
+    info-libcpp 
+       @[ -f ./libcpp/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing install-info in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-bison installcheck-bison
-maybe-installcheck-bison:
+.PHONY: maybe-installcheck-libcpp installcheck-libcpp
+maybe-installcheck-libcpp:
+@if libcpp
+maybe-installcheck-libcpp: installcheck-libcpp
 
-installcheck-bison: \
-    configure-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-libcpp: \
+    configure-libcpp 
+       @[ -f ./libcpp/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 bison" ; \
-       (cd bison && \
+       echo "Doing installcheck in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -8600,219 +13176,318 @@ installcheck-bison: \
                  installcheck) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-byacc installcheck-byacc
-maybe-installcheck-byacc:
+.PHONY: maybe-mostlyclean-libcpp mostlyclean-libcpp
+maybe-mostlyclean-libcpp:
+@if libcpp
+maybe-mostlyclean-libcpp: mostlyclean-libcpp
 
-installcheck-byacc: \
-    configure-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-libcpp: 
+       @[ -f ./libcpp/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing mostlyclean in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-bzip2 installcheck-bzip2
-maybe-installcheck-bzip2:
+.PHONY: maybe-clean-libcpp clean-libcpp
+maybe-clean-libcpp:
+@if libcpp
+maybe-clean-libcpp: clean-libcpp
 
-installcheck-bzip2: \
-    configure-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-libcpp: 
+       @[ -f ./libcpp/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 bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing clean in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-dejagnu installcheck-dejagnu
-maybe-installcheck-dejagnu:
+.PHONY: maybe-distclean-libcpp distclean-libcpp
+maybe-distclean-libcpp:
+@if libcpp
+maybe-distclean-libcpp: distclean-libcpp
 
-installcheck-dejagnu: \
-    configure-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-libcpp: 
+       @[ -f ./libcpp/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing distclean in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-diff installcheck-diff
-maybe-installcheck-diff:
+.PHONY: maybe-maintainer-clean-libcpp maintainer-clean-libcpp
+maybe-maintainer-clean-libcpp:
+@if libcpp
+maybe-maintainer-clean-libcpp: maintainer-clean-libcpp
 
-installcheck-diff: \
-    configure-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-libcpp: 
+       @[ -f ./libcpp/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 diff" ; \
-       (cd diff && \
+       echo "Doing maintainer-clean in libcpp" ; \
+       (cd $(HOST_SUBDIR)/libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 maintainer-clean) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-dosutils installcheck-dosutils
-maybe-installcheck-dosutils:
 
-installcheck-dosutils: \
-    configure-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-libgui maybe-configure-libgui
+maybe-configure-libgui:
+@if libgui
+maybe-configure-libgui: configure-libgui
+configure-libgui: 
+       @test ! -f $(HOST_SUBDIR)/libgui/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgui ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/libgui; \
+       cd "$(HOST_SUBDIR)/libgui" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgui/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libgui"; \
+       libsrcdir="$$s/libgui"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif libgui
+
+
+
+.PHONY: all-libgui maybe-all-libgui
+maybe-all-libgui:
+@if libgui
+TARGET-libgui=all
+maybe-all-libgui: all-libgui
+all-libgui: configure-libgui
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libgui && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-libgui))
+@endif libgui
+
+
+.PHONY: check-libgui maybe-check-libgui
+maybe-check-libgui:
+@if libgui
+maybe-check-libgui: check-libgui
+
+check-libgui:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libgui && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif libgui
+
+.PHONY: install-libgui maybe-install-libgui
+maybe-install-libgui:
+@if libgui
+maybe-install-libgui: install-libgui
+
+install-libgui: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libgui && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif libgui
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-libgui info-libgui
+maybe-info-libgui:
+@if libgui
+maybe-info-libgui: info-libgui
+
+info-libgui: \
+    configure-libgui 
+       @[ -f ./libgui/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing info in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-etc installcheck-etc
-maybe-installcheck-etc:
+.PHONY: maybe-dvi-libgui dvi-libgui
+maybe-dvi-libgui:
+@if libgui
+maybe-dvi-libgui: dvi-libgui
 
-installcheck-etc: \
-    configure-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-libgui: \
+    configure-libgui 
+       @[ -f ./libgui/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 etc" ; \
-       (cd etc && \
+       echo "Doing dvi in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-fastjar installcheck-fastjar
-maybe-installcheck-fastjar:
+.PHONY: maybe-html-libgui html-libgui
+maybe-html-libgui:
+@if libgui
+maybe-html-libgui: html-libgui
 
-installcheck-fastjar: \
-    configure-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-libgui: \
+    configure-libgui 
+       @[ -f ./libgui/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing html in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 html) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-fileutils installcheck-fileutils
-maybe-installcheck-fileutils:
+.PHONY: maybe-TAGS-libgui TAGS-libgui
+maybe-TAGS-libgui:
+@if libgui
+maybe-TAGS-libgui: TAGS-libgui
 
-installcheck-fileutils: \
-    configure-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-libgui: \
+    configure-libgui 
+       @[ -f ./libgui/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing TAGS in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-findutils installcheck-findutils
-maybe-installcheck-findutils:
+.PHONY: maybe-install-info-libgui install-info-libgui
+maybe-install-info-libgui:
+@if libgui
+maybe-install-info-libgui: install-info-libgui
 
-installcheck-findutils: \
-    configure-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-libgui: \
+    configure-libgui \
+    info-libgui 
+       @[ -f ./libgui/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing install-info in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-find installcheck-find
-maybe-installcheck-find:
+.PHONY: maybe-installcheck-libgui installcheck-libgui
+maybe-installcheck-libgui:
+@if libgui
+maybe-installcheck-libgui: installcheck-libgui
 
-installcheck-find: \
-    configure-find 
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-libgui: \
+    configure-libgui 
+       @[ -f ./libgui/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 find" ; \
-       (cd find && \
+       echo "Doing installcheck in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -8820,219 +13495,320 @@ installcheck-find: \
                  installcheck) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-flex installcheck-flex
-maybe-installcheck-flex:
+.PHONY: maybe-mostlyclean-libgui mostlyclean-libgui
+maybe-mostlyclean-libgui:
+@if libgui
+maybe-mostlyclean-libgui: mostlyclean-libgui
 
-installcheck-flex: \
-    configure-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-libgui: 
+       @[ -f ./libgui/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 flex" ; \
-       (cd flex && \
+       echo "Doing mostlyclean in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-gas installcheck-gas
-maybe-installcheck-gas:
+.PHONY: maybe-clean-libgui clean-libgui
+maybe-clean-libgui:
+@if libgui
+maybe-clean-libgui: clean-libgui
 
-installcheck-gas: \
-    configure-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-libgui: 
+       @[ -f ./libgui/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 gas" ; \
-       (cd gas && \
+       echo "Doing clean in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-gawk installcheck-gawk
-maybe-installcheck-gawk:
-
-installcheck-gawk: \
-    configure-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: maybe-distclean-libgui distclean-libgui
+maybe-distclean-libgui:
+@if libgui
+maybe-distclean-libgui: distclean-libgui
+
+distclean-libgui: 
+       @[ -f ./libgui/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing distclean in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-gettext installcheck-gettext
-maybe-installcheck-gettext:
+.PHONY: maybe-maintainer-clean-libgui maintainer-clean-libgui
+maybe-maintainer-clean-libgui:
+@if libgui
+maybe-maintainer-clean-libgui: maintainer-clean-libgui
 
-installcheck-gettext: \
-    configure-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-libgui: 
+       @[ -f ./libgui/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing maintainer-clean in libgui" ; \
+       (cd $(HOST_SUBDIR)/libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 maintainer-clean) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-gnuserv installcheck-gnuserv
-maybe-installcheck-gnuserv:
 
-installcheck-gnuserv: \
-    configure-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-libiberty maybe-configure-libiberty
+maybe-configure-libiberty:
+@if libiberty
+maybe-configure-libiberty: configure-libiberty
+configure-libiberty: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/libiberty/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libiberty ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/libiberty; \
+       cd "$(HOST_SUBDIR)/libiberty" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif libiberty
+
+
+
+.PHONY: all-libiberty maybe-all-libiberty
+maybe-all-libiberty:
+@if libiberty
+TARGET-libiberty=all
+maybe-all-libiberty: all-libiberty
+all-libiberty: configure-libiberty
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libiberty && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-libiberty))
+@endif libiberty
+
+
+.PHONY: check-libiberty maybe-check-libiberty
+maybe-check-libiberty:
+@if libiberty
+maybe-check-libiberty: check-libiberty
+
+check-libiberty:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libiberty && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif libiberty
+
+.PHONY: install-libiberty maybe-install-libiberty
+maybe-install-libiberty:
+@if libiberty
+maybe-install-libiberty: install-libiberty
+
+install-libiberty: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libiberty && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif libiberty
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-libiberty info-libiberty
+maybe-info-libiberty:
+@if libiberty
+maybe-info-libiberty: info-libiberty
+
+info-libiberty: \
+    configure-libiberty 
+       @[ -f ./libiberty/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing info in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-gprof installcheck-gprof
-maybe-installcheck-gprof:
+.PHONY: maybe-dvi-libiberty dvi-libiberty
+maybe-dvi-libiberty:
+@if libiberty
+maybe-dvi-libiberty: dvi-libiberty
 
-installcheck-gprof: \
-    configure-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-libiberty: \
+    configure-libiberty 
+       @[ -f ./libiberty/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 gprof" ; \
-       (cd gprof && \
+       echo "Doing dvi in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-gzip installcheck-gzip
-maybe-installcheck-gzip:
+.PHONY: maybe-html-libiberty html-libiberty
+maybe-html-libiberty:
+@if libiberty
+maybe-html-libiberty: html-libiberty
 
-installcheck-gzip: \
-    configure-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-libiberty: \
+    configure-libiberty 
+       @[ -f ./libiberty/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 gzip" ; \
-       (cd gzip && \
+       echo "Doing html in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 html) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-hello installcheck-hello
-maybe-installcheck-hello:
+.PHONY: maybe-TAGS-libiberty TAGS-libiberty
+maybe-TAGS-libiberty:
+@if libiberty
+maybe-TAGS-libiberty: TAGS-libiberty
 
-installcheck-hello: \
-    configure-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-libiberty: \
+    configure-libiberty 
+       @[ -f ./libiberty/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 hello" ; \
-       (cd hello && \
+       echo "Doing TAGS in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-indent installcheck-indent
-maybe-installcheck-indent:
+.PHONY: maybe-install-info-libiberty install-info-libiberty
+maybe-install-info-libiberty:
+@if libiberty
+maybe-install-info-libiberty: install-info-libiberty
 
-installcheck-indent: \
-    configure-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-libiberty: \
+    configure-libiberty \
+    info-libiberty 
+       @[ -f ./libiberty/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 indent" ; \
-       (cd indent && \
+       echo "Doing install-info in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-intl installcheck-intl
-maybe-installcheck-intl:
+.PHONY: maybe-installcheck-libiberty installcheck-libiberty
+maybe-installcheck-libiberty:
+@if libiberty
+maybe-installcheck-libiberty: installcheck-libiberty
 
-installcheck-intl: \
-    configure-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-libiberty: \
+    configure-libiberty 
+       @[ -f ./libiberty/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 intl" ; \
-       (cd intl && \
+       echo "Doing installcheck in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9040,219 +13816,318 @@ installcheck-intl: \
                  installcheck) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-tcl installcheck-tcl
-maybe-installcheck-tcl:
+.PHONY: maybe-mostlyclean-libiberty mostlyclean-libiberty
+maybe-mostlyclean-libiberty:
+@if libiberty
+maybe-mostlyclean-libiberty: mostlyclean-libiberty
 
-installcheck-tcl: \
-    configure-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-libiberty: 
+       @[ -f ./libiberty/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 tcl" ; \
-       (cd tcl && \
+       echo "Doing mostlyclean in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-itcl installcheck-itcl
-maybe-installcheck-itcl:
+.PHONY: maybe-clean-libiberty clean-libiberty
+maybe-clean-libiberty:
+@if libiberty
+maybe-clean-libiberty: clean-libiberty
 
-installcheck-itcl: \
-    configure-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-libiberty: 
+       @[ -f ./libiberty/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing clean in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-ld installcheck-ld
-maybe-installcheck-ld:
+.PHONY: maybe-distclean-libiberty distclean-libiberty
+maybe-distclean-libiberty:
+@if libiberty
+maybe-distclean-libiberty: distclean-libiberty
 
-installcheck-ld: \
-    configure-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-libiberty: 
+       @[ -f ./libiberty/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 ld" ; \
-       (cd ld && \
+       echo "Doing distclean in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-libgui installcheck-libgui
-maybe-installcheck-libgui:
+.PHONY: maybe-maintainer-clean-libiberty maintainer-clean-libiberty
+maybe-maintainer-clean-libiberty:
+@if libiberty
+maybe-maintainer-clean-libiberty: maintainer-clean-libiberty
 
-installcheck-libgui: \
-    configure-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-libiberty: 
+       @[ -f ./libiberty/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 libgui" ; \
-       (cd libgui && \
+       echo "Doing maintainer-clean in libiberty" ; \
+       (cd $(HOST_SUBDIR)/libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 maintainer-clean) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-installcheck-libiberty installcheck-libiberty
-maybe-installcheck-libiberty:
 
-installcheck-libiberty: \
-    configure-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-libtool maybe-configure-libtool
+maybe-configure-libtool:
+@if libtool
+maybe-configure-libtool: configure-libtool
+configure-libtool: 
+       @test ! -f $(HOST_SUBDIR)/libtool/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libtool ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/libtool; \
+       cd "$(HOST_SUBDIR)/libtool" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libtool/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libtool"; \
+       libsrcdir="$$s/libtool"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif libtool
+
+
+
+.PHONY: all-libtool maybe-all-libtool
+maybe-all-libtool:
+@if libtool
+TARGET-libtool=all
+maybe-all-libtool: all-libtool
+all-libtool: configure-libtool
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libtool && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-libtool))
+@endif libtool
+
+
+.PHONY: check-libtool maybe-check-libtool
+maybe-check-libtool:
+@if libtool
+maybe-check-libtool: check-libtool
+
+check-libtool:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libtool && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif libtool
+
+.PHONY: install-libtool maybe-install-libtool
+maybe-install-libtool:
+@if libtool
+maybe-install-libtool: install-libtool
+
+install-libtool: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libtool && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif libtool
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-libtool info-libtool
+maybe-info-libtool:
+@if libtool
+maybe-info-libtool: info-libtool
+
+info-libtool: \
+    configure-libtool 
+       @[ -f ./libtool/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 libiberty" ; \
-       (cd libiberty && \
+       echo "Doing info in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-libtool installcheck-libtool
-maybe-installcheck-libtool:
+.PHONY: maybe-dvi-libtool dvi-libtool
+maybe-dvi-libtool:
+@if libtool
+maybe-dvi-libtool: dvi-libtool
 
-installcheck-libtool: \
+dvi-libtool: \
     configure-libtool 
        @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       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 libtool" ; \
-       (cd libtool && \
+       echo "Doing dvi in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-m4 installcheck-m4
-maybe-installcheck-m4:
+.PHONY: maybe-html-libtool html-libtool
+maybe-html-libtool:
+@if libtool
+maybe-html-libtool: html-libtool
 
-installcheck-m4: \
-    configure-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-libtool: \
+    configure-libtool 
+       @[ -f ./libtool/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 m4" ; \
-       (cd m4 && \
+       echo "Doing html in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 html) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-make installcheck-make
-maybe-installcheck-make:
+.PHONY: maybe-TAGS-libtool TAGS-libtool
+maybe-TAGS-libtool:
+@if libtool
+maybe-TAGS-libtool: TAGS-libtool
 
-installcheck-make: \
-    configure-make 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-libtool: \
+    configure-libtool 
+       @[ -f ./libtool/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 make" ; \
-       (cd make && \
+       echo "Doing TAGS in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-mmalloc installcheck-mmalloc
-maybe-installcheck-mmalloc:
+.PHONY: maybe-install-info-libtool install-info-libtool
+maybe-install-info-libtool:
+@if libtool
+maybe-install-info-libtool: install-info-libtool
 
-installcheck-mmalloc: \
-    configure-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-libtool: \
+    configure-libtool \
+    info-libtool 
+       @[ -f ./libtool/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 mmalloc" ; \
-       (cd mmalloc && \
+       echo "Doing install-info in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-patch installcheck-patch
-maybe-installcheck-patch:
+.PHONY: maybe-installcheck-libtool installcheck-libtool
+maybe-installcheck-libtool:
+@if libtool
+maybe-installcheck-libtool: installcheck-libtool
 
-installcheck-patch: \
-    configure-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-libtool: \
+    configure-libtool 
+       @[ -f ./libtool/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 patch" ; \
-       (cd patch && \
+       echo "Doing installcheck in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9260,219 +14135,318 @@ installcheck-patch: \
                  installcheck) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-perl installcheck-perl
-maybe-installcheck-perl:
+.PHONY: maybe-mostlyclean-libtool mostlyclean-libtool
+maybe-mostlyclean-libtool:
+@if libtool
+maybe-mostlyclean-libtool: mostlyclean-libtool
 
-installcheck-perl: \
-    configure-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-libtool: 
+       @[ -f ./libtool/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 perl" ; \
-       (cd perl && \
+       echo "Doing mostlyclean in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-prms installcheck-prms
-maybe-installcheck-prms:
+.PHONY: maybe-clean-libtool clean-libtool
+maybe-clean-libtool:
+@if libtool
+maybe-clean-libtool: clean-libtool
 
-installcheck-prms: \
-    configure-prms 
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-libtool: 
+       @[ -f ./libtool/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 prms" ; \
-       (cd prms && \
+       echo "Doing clean in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-rcs installcheck-rcs
-maybe-installcheck-rcs:
+.PHONY: maybe-distclean-libtool distclean-libtool
+maybe-distclean-libtool:
+@if libtool
+maybe-distclean-libtool: distclean-libtool
 
-installcheck-rcs: \
-    configure-rcs 
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-libtool: 
+       @[ -f ./libtool/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 rcs" ; \
-       (cd rcs && \
+       echo "Doing distclean in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-readline installcheck-readline
-maybe-installcheck-readline:
+.PHONY: maybe-maintainer-clean-libtool maintainer-clean-libtool
+maybe-maintainer-clean-libtool:
+@if libtool
+maybe-maintainer-clean-libtool: maintainer-clean-libtool
 
-installcheck-readline: \
-    configure-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-libtool: 
+       @[ -f ./libtool/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 readline" ; \
-       (cd readline && \
+       echo "Doing maintainer-clean in libtool" ; \
+       (cd $(HOST_SUBDIR)/libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 maintainer-clean) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-installcheck-release installcheck-release
-maybe-installcheck-release:
 
-installcheck-release: \
-    configure-release 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-m4 maybe-configure-m4
+maybe-configure-m4:
+@if m4
+maybe-configure-m4: configure-m4
+configure-m4: 
+       @test ! -f $(HOST_SUBDIR)/m4/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/m4 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/m4; \
+       cd "$(HOST_SUBDIR)/m4" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/m4/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/m4"; \
+       libsrcdir="$$s/m4"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif m4
+
+
+
+.PHONY: all-m4 maybe-all-m4
+maybe-all-m4:
+@if m4
+TARGET-m4=all
+maybe-all-m4: all-m4
+all-m4: configure-m4
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/m4 && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-m4))
+@endif m4
+
+
+.PHONY: check-m4 maybe-check-m4
+maybe-check-m4:
+@if m4
+maybe-check-m4: check-m4
+
+check-m4:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/m4 && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif m4
+
+.PHONY: install-m4 maybe-install-m4
+maybe-install-m4:
+@if m4
+maybe-install-m4: install-m4
+
+install-m4: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/m4 && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif m4
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-m4 info-m4
+maybe-info-m4:
+@if m4
+maybe-info-m4: info-m4
+
+info-m4: \
+    configure-m4 
+       @[ -f ./m4/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 release" ; \
-       (cd release && \
+       echo "Doing info in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-recode installcheck-recode
-maybe-installcheck-recode:
+.PHONY: maybe-dvi-m4 dvi-m4
+maybe-dvi-m4:
+@if m4
+maybe-dvi-m4: dvi-m4
 
-installcheck-recode: \
-    configure-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-m4: \
+    configure-m4 
+       @[ -f ./m4/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 recode" ; \
-       (cd recode && \
+       echo "Doing dvi in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-sed installcheck-sed
-maybe-installcheck-sed:
+.PHONY: maybe-html-m4 html-m4
+maybe-html-m4:
+@if m4
+maybe-html-m4: html-m4
 
-installcheck-sed: \
-    configure-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-m4: \
+    configure-m4 
+       @[ -f ./m4/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 sed" ; \
-       (cd sed && \
+       echo "Doing html in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 html) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-send-pr installcheck-send-pr
-maybe-installcheck-send-pr:
+.PHONY: maybe-TAGS-m4 TAGS-m4
+maybe-TAGS-m4:
+@if m4
+maybe-TAGS-m4: TAGS-m4
 
-installcheck-send-pr: \
-    configure-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-m4: \
+    configure-m4 
+       @[ -f ./m4/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 send-pr" ; \
-       (cd send-pr && \
+       echo "Doing TAGS in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-shellutils installcheck-shellutils
-maybe-installcheck-shellutils:
+.PHONY: maybe-install-info-m4 install-info-m4
+maybe-install-info-m4:
+@if m4
+maybe-install-info-m4: install-info-m4
 
-installcheck-shellutils: \
-    configure-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-m4: \
+    configure-m4 \
+    info-m4 
+       @[ -f ./m4/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 shellutils" ; \
-       (cd shellutils && \
+       echo "Doing install-info in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-sid installcheck-sid
-maybe-installcheck-sid:
+.PHONY: maybe-installcheck-m4 installcheck-m4
+maybe-installcheck-m4:
+@if m4
+maybe-installcheck-m4: installcheck-m4
 
-installcheck-sid: \
-    configure-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-m4: \
+    configure-m4 
+       @[ -f ./m4/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 sid" ; \
-       (cd sid && \
+       echo "Doing installcheck in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9480,241 +14454,318 @@ installcheck-sid: \
                  installcheck) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-sim installcheck-sim
-maybe-installcheck-sim:
+.PHONY: maybe-mostlyclean-m4 mostlyclean-m4
+maybe-mostlyclean-m4:
+@if m4
+maybe-mostlyclean-m4: mostlyclean-m4
 
-installcheck-sim: \
-    configure-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-m4: 
+       @[ -f ./m4/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 sim" ; \
-       (cd sim && \
+       echo "Doing mostlyclean in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-tar installcheck-tar
-maybe-installcheck-tar:
+.PHONY: maybe-clean-m4 clean-m4
+maybe-clean-m4:
+@if m4
+maybe-clean-m4: clean-m4
 
-installcheck-tar: \
-    configure-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-m4: 
+       @[ -f ./m4/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 tar" ; \
-       (cd tar && \
+       echo "Doing clean in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-texinfo installcheck-texinfo
-maybe-installcheck-texinfo:
+.PHONY: maybe-distclean-m4 distclean-m4
+maybe-distclean-m4:
+@if m4
+maybe-distclean-m4: distclean-m4
 
-installcheck-texinfo: \
-    configure-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-m4: 
+       @[ -f ./m4/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 texinfo" ; \
-       (cd texinfo && \
+       echo "Doing distclean in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-installcheck-textutils installcheck-textutils
-maybe-installcheck-textutils:
+.PHONY: maybe-maintainer-clean-m4 maintainer-clean-m4
+maybe-maintainer-clean-m4:
+@if m4
+maybe-maintainer-clean-m4: maintainer-clean-m4
 
-installcheck-textutils: \
-    configure-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-m4: 
+       @[ -f ./m4/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 textutils" ; \
-       (cd textutils && \
+       echo "Doing maintainer-clean in m4" ; \
+       (cd $(HOST_SUBDIR)/m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 maintainer-clean) \
+         || exit 1
+
+@endif m4
+
+
+
+.PHONY: configure-make maybe-configure-make
+maybe-configure-make:
+@if make
+maybe-configure-make: configure-make
+configure-make: 
+       @test ! -f $(HOST_SUBDIR)/make/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/make ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/make; \
+       cd "$(HOST_SUBDIR)/make" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/make/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/make"; \
+       libsrcdir="$$s/make"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif make
+
+
+
+.PHONY: all-make maybe-all-make
+maybe-all-make:
+@if make
+TARGET-make=all
+maybe-all-make: all-make
+all-make: configure-make
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/make && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-make))
+@endif make
+
+
+.PHONY: check-make maybe-check-make
+maybe-check-make:
+@if make
+maybe-check-make: check-make
 
+check-make:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/make && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
 
-.PHONY: maybe-installcheck-time installcheck-time
-maybe-installcheck-time:
+@endif make
 
-installcheck-time: \
-    configure-time 
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing installcheck in time" ; \
-       (cd time && \
-         $(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
+.PHONY: install-make maybe-install-make
+maybe-install-make:
+@if make
+maybe-install-make: install-make
 
+install-make: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/make && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
 
-.PHONY: maybe-installcheck-uudecode installcheck-uudecode
-maybe-installcheck-uudecode:
+@endif make
 
-installcheck-uudecode: \
-    configure-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-make info-make
+maybe-info-make:
+@if make
+maybe-info-make: info-make
+
+info-make: \
+    configure-make 
+       @[ -f ./make/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 uudecode" ; \
-       (cd uudecode && \
+       echo "Doing info in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-wdiff installcheck-wdiff
-maybe-installcheck-wdiff:
+.PHONY: maybe-dvi-make dvi-make
+maybe-dvi-make:
+@if make
+maybe-dvi-make: dvi-make
 
-installcheck-wdiff: \
-    configure-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-make: \
+    configure-make 
+       @[ -f ./make/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 wdiff" ; \
-       (cd wdiff && \
+       echo "Doing dvi in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-zip installcheck-zip
-maybe-installcheck-zip:
+.PHONY: maybe-html-make html-make
+maybe-html-make:
+@if make
+maybe-html-make: html-make
 
-installcheck-zip: \
-    configure-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-make: \
+    configure-make 
+       @[ -f ./make/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 zip" ; \
-       (cd zip && \
+       echo "Doing html in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 html) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-zlib installcheck-zlib
-maybe-installcheck-zlib:
+.PHONY: maybe-TAGS-make TAGS-make
+maybe-TAGS-make:
+@if make
+maybe-TAGS-make: TAGS-make
 
-installcheck-zlib: \
-    configure-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-make: \
+    configure-make 
+       @[ -f ./make/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 zlib" ; \
-       (cd zlib && \
+       echo "Doing TAGS in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-gdb installcheck-gdb
-maybe-installcheck-gdb:
+.PHONY: maybe-install-info-make install-info-make
+maybe-install-info-make:
+@if make
+maybe-install-info-make: install-info-make
 
-installcheck-gdb: \
-    configure-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-make: \
+    configure-make \
+    info-make 
+       @[ -f ./make/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 gdb" ; \
-       (cd gdb && \
+       echo "Doing install-info in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-expect installcheck-expect
-maybe-installcheck-expect:
+.PHONY: maybe-installcheck-make installcheck-make
+maybe-installcheck-make:
+@if make
+maybe-installcheck-make: installcheck-make
 
-installcheck-expect: \
-    configure-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-make: \
+    configure-make 
+       @[ -f ./make/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 expect" ; \
-       (cd expect && \
+       echo "Doing installcheck in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9722,266 +14773,313 @@ installcheck-expect: \
                  installcheck) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-guile installcheck-guile
-maybe-installcheck-guile:
+.PHONY: maybe-mostlyclean-make mostlyclean-make
+maybe-mostlyclean-make:
+@if make
+maybe-mostlyclean-make: mostlyclean-make
 
-installcheck-guile: \
-    configure-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-make: 
+       @[ -f ./make/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 guile" ; \
-       (cd guile && \
+       echo "Doing mostlyclean in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-tk installcheck-tk
-maybe-installcheck-tk:
+.PHONY: maybe-clean-make clean-make
+maybe-clean-make:
+@if make
+maybe-clean-make: clean-make
 
-installcheck-tk: \
-    configure-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-make: 
+       @[ -f ./make/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 tk" ; \
-       (cd tk && \
+       echo "Doing clean in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-tix installcheck-tix
-maybe-installcheck-tix:
+.PHONY: maybe-distclean-make distclean-make
+maybe-distclean-make:
+@if make
+maybe-distclean-make: distclean-make
 
-installcheck-tix: \
-    configure-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-make: 
+       @[ -f ./make/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 tix" ; \
-       (cd tix && \
+       echo "Doing distclean in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-libtermcap installcheck-libtermcap
-maybe-installcheck-libtermcap:
+.PHONY: maybe-maintainer-clean-make maintainer-clean-make
+maybe-maintainer-clean-make:
+@if make
+maybe-maintainer-clean-make: maintainer-clean-make
 
-installcheck-libtermcap: \
-    configure-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-make: 
+       @[ -f ./make/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 libtermcap" ; \
-       (cd libtermcap && \
+       echo "Doing maintainer-clean in make" ; \
+       (cd $(HOST_SUBDIR)/make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 maintainer-clean) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-installcheck-utils installcheck-utils
-maybe-installcheck-utils:
 
-installcheck-utils: \
-    configure-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing installcheck in utils" ; \
-       (cd utils && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+
+.PHONY: configure-mmalloc maybe-configure-mmalloc
+maybe-configure-mmalloc:
+@if mmalloc
+maybe-configure-mmalloc: configure-mmalloc
+configure-mmalloc: 
+       @test ! -f $(HOST_SUBDIR)/mmalloc/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/mmalloc ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/mmalloc; \
+       cd "$(HOST_SUBDIR)/mmalloc" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/mmalloc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/mmalloc"; \
+       libsrcdir="$$s/mmalloc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif mmalloc
 
 
 
-# Target modules.
+.PHONY: all-mmalloc maybe-all-mmalloc
+maybe-all-mmalloc:
+@if mmalloc
+TARGET-mmalloc=all
+maybe-all-mmalloc: all-mmalloc
+all-mmalloc: configure-mmalloc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/mmalloc && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-mmalloc))
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-libstdc++-v3 installcheck-target-libstdc++-v3
-maybe-installcheck-target-libstdc++-v3:
 
-installcheck-target-libstdc++-v3: \
-    configure-target-libstdc++-v3 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
-         $(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
+.PHONY: check-mmalloc maybe-check-mmalloc
+maybe-check-mmalloc:
+@if mmalloc
+maybe-check-mmalloc: check-mmalloc
 
+check-mmalloc:
 
-.PHONY: maybe-installcheck-target-newlib installcheck-target-newlib
-maybe-installcheck-target-newlib:
+@endif mmalloc
 
-installcheck-target-newlib: \
-    configure-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+.PHONY: install-mmalloc maybe-install-mmalloc
+maybe-install-mmalloc:
+@if mmalloc
+maybe-install-mmalloc: install-mmalloc
+
+install-mmalloc: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/mmalloc && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif mmalloc
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-mmalloc info-mmalloc
+maybe-info-mmalloc:
+@if mmalloc
+maybe-info-mmalloc: info-mmalloc
+
+info-mmalloc: \
+    configure-mmalloc 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/newlib && \
+       echo "Doing info in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-libf2c installcheck-target-libf2c
-maybe-installcheck-target-libf2c:
+.PHONY: maybe-dvi-mmalloc dvi-mmalloc
+maybe-dvi-mmalloc:
+@if mmalloc
+maybe-dvi-mmalloc: dvi-mmalloc
 
-installcheck-target-libf2c: \
-    configure-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-mmalloc: \
+    configure-mmalloc 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       echo "Doing dvi in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-libobjc installcheck-target-libobjc
-maybe-installcheck-target-libobjc:
+.PHONY: maybe-html-mmalloc html-mmalloc
+maybe-html-mmalloc:
+@if mmalloc
+maybe-html-mmalloc: html-mmalloc
 
-installcheck-target-libobjc: \
-    configure-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-mmalloc: \
+    configure-mmalloc 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       echo "Doing html in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 html) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-libtermcap installcheck-target-libtermcap
-maybe-installcheck-target-libtermcap:
+.PHONY: maybe-TAGS-mmalloc TAGS-mmalloc
+maybe-TAGS-mmalloc:
+@if mmalloc
+maybe-TAGS-mmalloc: TAGS-mmalloc
 
-installcheck-target-libtermcap: \
-    configure-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-mmalloc: \
+    configure-mmalloc 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
+       echo "Doing TAGS in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-winsup installcheck-target-winsup
-maybe-installcheck-target-winsup:
-
-installcheck-target-winsup: \
-    configure-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+.PHONY: maybe-install-info-mmalloc install-info-mmalloc
+maybe-install-info-mmalloc:
+@if mmalloc
+maybe-install-info-mmalloc: install-info-mmalloc
+
+install-info-mmalloc: \
+    configure-mmalloc \
+    info-mmalloc 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       echo "Doing install-info in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-libgloss installcheck-target-libgloss
-maybe-installcheck-target-libgloss:
+.PHONY: maybe-installcheck-mmalloc installcheck-mmalloc
+maybe-installcheck-mmalloc:
+@if mmalloc
+maybe-installcheck-mmalloc: installcheck-mmalloc
 
-installcheck-target-libgloss: \
-    configure-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-mmalloc: \
+    configure-mmalloc 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       echo "Doing installcheck in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9989,308 +15087,342 @@ installcheck-target-libgloss: \
                  installcheck) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-libiberty installcheck-target-libiberty
-maybe-installcheck-target-libiberty:
+.PHONY: maybe-mostlyclean-mmalloc mostlyclean-mmalloc
+maybe-mostlyclean-mmalloc:
+@if mmalloc
+maybe-mostlyclean-mmalloc: mostlyclean-mmalloc
 
-installcheck-target-libiberty: \
-    configure-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-mmalloc: 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       echo "Doing mostlyclean in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-gperf installcheck-target-gperf
-maybe-installcheck-target-gperf:
+.PHONY: maybe-clean-mmalloc clean-mmalloc
+maybe-clean-mmalloc:
+@if mmalloc
+maybe-clean-mmalloc: clean-mmalloc
 
-installcheck-target-gperf: \
-    configure-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-mmalloc: 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/gperf && \
+       echo "Doing clean in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-examples installcheck-target-examples
-maybe-installcheck-target-examples:
+.PHONY: maybe-distclean-mmalloc distclean-mmalloc
+maybe-distclean-mmalloc:
+@if mmalloc
+maybe-distclean-mmalloc: distclean-mmalloc
 
-installcheck-target-examples: \
-    configure-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-mmalloc: 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       echo "Doing distclean in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-libffi installcheck-target-libffi
-maybe-installcheck-target-libffi:
+.PHONY: maybe-maintainer-clean-mmalloc maintainer-clean-mmalloc
+maybe-maintainer-clean-mmalloc:
+@if mmalloc
+maybe-maintainer-clean-mmalloc: maintainer-clean-mmalloc
 
-installcheck-target-libffi: \
-    configure-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-mmalloc: 
+       @[ -f ./mmalloc/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; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       echo "Doing maintainer-clean in mmalloc" ; \
+       (cd $(HOST_SUBDIR)/mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 maintainer-clean) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-installcheck-target-libjava installcheck-target-libjava
-maybe-installcheck-target-libjava:
 
-installcheck-target-libjava: \
-    configure-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+
+.PHONY: configure-patch maybe-configure-patch
+maybe-configure-patch:
+@if patch
+maybe-configure-patch: configure-patch
+configure-patch: 
+       @test ! -f $(HOST_SUBDIR)/patch/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/patch ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/patch; \
+       cd "$(HOST_SUBDIR)/patch" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/patch/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/patch"; \
+       libsrcdir="$$s/patch"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif patch
+
+
+
+.PHONY: all-patch maybe-all-patch
+maybe-all-patch:
+@if patch
+TARGET-patch=all
+maybe-all-patch: all-patch
+all-patch: configure-patch
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/patch && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-patch))
+@endif patch
+
+
+.PHONY: check-patch maybe-check-patch
+maybe-check-patch:
+@if patch
+maybe-check-patch: check-patch
+
+check-patch:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/patch && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif patch
+
+.PHONY: install-patch maybe-install-patch
+maybe-install-patch:
+@if patch
+maybe-install-patch: install-patch
+
+install-patch: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/patch && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif patch
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-patch info-patch
+maybe-info-patch:
+@if patch
+maybe-info-patch: info-patch
+
+info-patch: \
+    configure-patch 
+       @[ -f ./patch/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; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       echo "Doing info in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-installcheck-target-zlib installcheck-target-zlib
-maybe-installcheck-target-zlib:
+.PHONY: maybe-dvi-patch dvi-patch
+maybe-dvi-patch:
+@if patch
+maybe-dvi-patch: dvi-patch
 
-installcheck-target-zlib: \
-    configure-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-patch: \
+    configure-patch 
+       @[ -f ./patch/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; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       echo "Doing dvi in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-installcheck-target-boehm-gc installcheck-target-boehm-gc
-maybe-installcheck-target-boehm-gc:
+.PHONY: maybe-html-patch html-patch
+maybe-html-patch:
+@if patch
+maybe-html-patch: html-patch
 
-installcheck-target-boehm-gc: \
-    configure-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-patch: \
+    configure-patch 
+       @[ -f ./patch/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; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       echo "Doing html in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 html) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-installcheck-target-qthreads installcheck-target-qthreads
-maybe-installcheck-target-qthreads:
+.PHONY: maybe-TAGS-patch TAGS-patch
+maybe-TAGS-patch:
+@if patch
+maybe-TAGS-patch: TAGS-patch
 
-installcheck-target-qthreads: \
-    configure-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-patch: \
+    configure-patch 
+       @[ -f ./patch/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; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       echo "Doing TAGS in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-installcheck-target-rda installcheck-target-rda
-maybe-installcheck-target-rda:
+.PHONY: maybe-install-info-patch install-info-patch
+maybe-install-info-patch:
+@if patch
+maybe-install-info-patch: install-info-patch
 
-installcheck-target-rda: \
-    configure-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-patch: \
+    configure-patch \
+    info-patch 
+       @[ -f ./patch/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; \
-       (cd $(TARGET_SUBDIR)/rda && \
+       echo "Doing install-info in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif patch
 
+.PHONY: maybe-installcheck-patch installcheck-patch
+maybe-installcheck-patch:
+@if patch
+maybe-installcheck-patch: installcheck-patch
 
-.PHONY: do-mostlyclean
-do-mostlyclean: mostlyclean-host mostlyclean-target
-
-.PHONY: mostlyclean-host
-mostlyclean-host: maybe-mostlyclean-gcc  \
-    maybe-mostlyclean-ash \
-    maybe-mostlyclean-autoconf \
-    maybe-mostlyclean-automake \
-    maybe-mostlyclean-bash \
-    maybe-mostlyclean-bfd \
-    maybe-mostlyclean-opcodes \
-    maybe-mostlyclean-binutils \
-    maybe-mostlyclean-bison \
-    maybe-mostlyclean-byacc \
-    maybe-mostlyclean-bzip2 \
-    maybe-mostlyclean-dejagnu \
-    maybe-mostlyclean-diff \
-    maybe-mostlyclean-dosutils \
-    maybe-mostlyclean-etc \
-    maybe-mostlyclean-fastjar \
-    maybe-mostlyclean-fileutils \
-    maybe-mostlyclean-findutils \
-    maybe-mostlyclean-find \
-    maybe-mostlyclean-flex \
-    maybe-mostlyclean-gas \
-    maybe-mostlyclean-gawk \
-    maybe-mostlyclean-gettext \
-    maybe-mostlyclean-gnuserv \
-    maybe-mostlyclean-gprof \
-    maybe-mostlyclean-gzip \
-    maybe-mostlyclean-hello \
-    maybe-mostlyclean-indent \
-    maybe-mostlyclean-intl \
-    maybe-mostlyclean-tcl \
-    maybe-mostlyclean-itcl \
-    maybe-mostlyclean-ld \
-    maybe-mostlyclean-libgui \
-    maybe-mostlyclean-libiberty \
-    maybe-mostlyclean-libtool \
-    maybe-mostlyclean-m4 \
-    maybe-mostlyclean-make \
-    maybe-mostlyclean-mmalloc \
-    maybe-mostlyclean-patch \
-    maybe-mostlyclean-perl \
-    maybe-mostlyclean-prms \
-    maybe-mostlyclean-rcs \
-    maybe-mostlyclean-readline \
-    maybe-mostlyclean-release \
-    maybe-mostlyclean-recode \
-    maybe-mostlyclean-sed \
-    maybe-mostlyclean-send-pr \
-    maybe-mostlyclean-shellutils \
-    maybe-mostlyclean-sid \
-    maybe-mostlyclean-sim \
-    maybe-mostlyclean-tar \
-    maybe-mostlyclean-texinfo \
-    maybe-mostlyclean-textutils \
-    maybe-mostlyclean-time \
-    maybe-mostlyclean-uudecode \
-    maybe-mostlyclean-wdiff \
-    maybe-mostlyclean-zip \
-    maybe-mostlyclean-zlib \
-    maybe-mostlyclean-gdb \
-    maybe-mostlyclean-expect \
-    maybe-mostlyclean-guile \
-    maybe-mostlyclean-tk \
-    maybe-mostlyclean-tix \
-    maybe-mostlyclean-libtermcap \
-    maybe-mostlyclean-utils
+installcheck-patch: \
+    configure-patch 
+       @[ -f ./patch/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 patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
+         $(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
 
-.PHONY: mostlyclean-target
-mostlyclean-target:  \
-    maybe-mostlyclean-target-libstdc++-v3 \
-    maybe-mostlyclean-target-newlib \
-    maybe-mostlyclean-target-libf2c \
-    maybe-mostlyclean-target-libobjc \
-    maybe-mostlyclean-target-libtermcap \
-    maybe-mostlyclean-target-winsup \
-    maybe-mostlyclean-target-libgloss \
-    maybe-mostlyclean-target-libiberty \
-    maybe-mostlyclean-target-gperf \
-    maybe-mostlyclean-target-examples \
-    maybe-mostlyclean-target-libffi \
-    maybe-mostlyclean-target-libjava \
-    maybe-mostlyclean-target-zlib \
-    maybe-mostlyclean-target-boehm-gc \
-    maybe-mostlyclean-target-qthreads \
-    maybe-mostlyclean-target-rda
+@endif patch
 
-# GCC, the eternal special case
-.PHONY: maybe-mostlyclean-gcc mostlyclean-gcc
-maybe-mostlyclean-gcc:
-mostlyclean-gcc: 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+.PHONY: maybe-mostlyclean-patch mostlyclean-patch
+maybe-mostlyclean-patch:
+@if patch
+maybe-mostlyclean-patch: mostlyclean-patch
+
+mostlyclean-patch: 
+       @[ -f ./patch/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 gcc" ; \
-       (cd gcc && \
+       echo "Doing mostlyclean in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -10298,210 +15430,318 @@ mostlyclean-gcc:
                  mostlyclean) \
          || exit 1
 
-# Host modules.
+@endif patch
 
-.PHONY: maybe-mostlyclean-ash mostlyclean-ash
-maybe-mostlyclean-ash:
+.PHONY: maybe-clean-patch clean-patch
+maybe-clean-patch:
+@if patch
+maybe-clean-patch: clean-patch
 
-mostlyclean-ash: 
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-patch: 
+       @[ -f ./patch/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 ash" ; \
-       (cd ash && \
+       echo "Doing clean in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-autoconf mostlyclean-autoconf
-maybe-mostlyclean-autoconf:
+.PHONY: maybe-distclean-patch distclean-patch
+maybe-distclean-patch:
+@if patch
+maybe-distclean-patch: distclean-patch
 
-mostlyclean-autoconf
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-patch
+       @[ -f ./patch/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 autoconf" ; \
-       (cd autoconf && \
+       echo "Doing distclean in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-automake mostlyclean-automake
-maybe-mostlyclean-automake:
+.PHONY: maybe-maintainer-clean-patch maintainer-clean-patch
+maybe-maintainer-clean-patch:
+@if patch
+maybe-maintainer-clean-patch: maintainer-clean-patch
 
-mostlyclean-automake
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-patch
+       @[ -f ./patch/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 automake" ; \
-       (cd automake && \
+       echo "Doing maintainer-clean in patch" ; \
+       (cd $(HOST_SUBDIR)/patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-bash mostlyclean-bash
-maybe-mostlyclean-bash:
 
-mostlyclean-bash: 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-perl maybe-configure-perl
+maybe-configure-perl:
+@if perl
+maybe-configure-perl: configure-perl
+configure-perl: 
+       @test ! -f $(HOST_SUBDIR)/perl/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/perl ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/perl; \
+       cd "$(HOST_SUBDIR)/perl" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/perl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/perl"; \
+       libsrcdir="$$s/perl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif perl
+
+
+
+.PHONY: all-perl maybe-all-perl
+maybe-all-perl:
+@if perl
+TARGET-perl=all
+maybe-all-perl: all-perl
+all-perl: configure-perl
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/perl && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-perl))
+@endif perl
+
+
+.PHONY: check-perl maybe-check-perl
+maybe-check-perl:
+@if perl
+maybe-check-perl: check-perl
+
+check-perl:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/perl && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif perl
+
+.PHONY: install-perl maybe-install-perl
+maybe-install-perl:
+@if perl
+maybe-install-perl: install-perl
+
+install-perl: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/perl && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif perl
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-perl info-perl
+maybe-info-perl:
+@if perl
+maybe-info-perl: info-perl
+
+info-perl: \
+    configure-perl 
+       @[ -f ./perl/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 bash" ; \
-       (cd bash && \
+       echo "Doing info in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-bfd mostlyclean-bfd
-maybe-mostlyclean-bfd:
+.PHONY: maybe-dvi-perl dvi-perl
+maybe-dvi-perl:
+@if perl
+maybe-dvi-perl: dvi-perl
 
-mostlyclean-bfd: 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-perl: \
+    configure-perl 
+       @[ -f ./perl/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing dvi in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-opcodes mostlyclean-opcodes
-maybe-mostlyclean-opcodes:
+.PHONY: maybe-html-perl html-perl
+maybe-html-perl:
+@if perl
+maybe-html-perl: html-perl
 
-mostlyclean-opcodes: 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-perl: \
+    configure-perl 
+       @[ -f ./perl/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing html in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 html) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-binutils mostlyclean-binutils
-maybe-mostlyclean-binutils:
+.PHONY: maybe-TAGS-perl TAGS-perl
+maybe-TAGS-perl:
+@if perl
+maybe-TAGS-perl: TAGS-perl
 
-mostlyclean-binutils: 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-perl: \
+    configure-perl 
+       @[ -f ./perl/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing TAGS in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-bison mostlyclean-bison
-maybe-mostlyclean-bison:
+.PHONY: maybe-install-info-perl install-info-perl
+maybe-install-info-perl:
+@if perl
+maybe-install-info-perl: install-info-perl
 
-mostlyclean-bison: 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-perl: \
+    configure-perl \
+    info-perl 
+       @[ -f ./perl/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 bison" ; \
-       (cd bison && \
+       echo "Doing install-info in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-byacc mostlyclean-byacc
-maybe-mostlyclean-byacc:
+.PHONY: maybe-installcheck-perl installcheck-perl
+maybe-installcheck-perl:
+@if perl
+maybe-installcheck-perl: installcheck-perl
 
-mostlyclean-byacc: 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-perl: \
+    configure-perl 
+       @[ -f ./perl/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing installcheck in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-bzip2 mostlyclean-bzip2
-maybe-mostlyclean-bzip2:
+.PHONY: maybe-mostlyclean-perl mostlyclean-perl
+maybe-mostlyclean-perl:
+@if perl
+maybe-mostlyclean-perl: mostlyclean-perl
 
-mostlyclean-bzip2
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-perl
+       @[ -f ./perl/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 bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing mostlyclean in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -10509,209 +15749,318 @@ mostlyclean-bzip2:
                  mostlyclean) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-dejagnu mostlyclean-dejagnu
-maybe-mostlyclean-dejagnu:
+.PHONY: maybe-clean-perl clean-perl
+maybe-clean-perl:
+@if perl
+maybe-clean-perl: clean-perl
 
-mostlyclean-dejagnu
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-perl
+       @[ -f ./perl/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing clean in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-diff mostlyclean-diff
-maybe-mostlyclean-diff:
+.PHONY: maybe-distclean-perl distclean-perl
+maybe-distclean-perl:
+@if perl
+maybe-distclean-perl: distclean-perl
 
-mostlyclean-diff
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-perl
+       @[ -f ./perl/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 diff" ; \
-       (cd diff && \
+       echo "Doing distclean in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-dosutils mostlyclean-dosutils
-maybe-mostlyclean-dosutils:
+.PHONY: maybe-maintainer-clean-perl maintainer-clean-perl
+maybe-maintainer-clean-perl:
+@if perl
+maybe-maintainer-clean-perl: maintainer-clean-perl
 
-mostlyclean-dosutils
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-perl
+       @[ -f ./perl/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing maintainer-clean in perl" ; \
+       (cd $(HOST_SUBDIR)/perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-etc mostlyclean-etc
-maybe-mostlyclean-etc:
 
-mostlyclean-etc: 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-prms maybe-configure-prms
+maybe-configure-prms:
+@if prms
+maybe-configure-prms: configure-prms
+configure-prms: 
+       @test ! -f $(HOST_SUBDIR)/prms/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/prms ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/prms; \
+       cd "$(HOST_SUBDIR)/prms" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/prms/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/prms"; \
+       libsrcdir="$$s/prms"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif prms
+
+
+
+.PHONY: all-prms maybe-all-prms
+maybe-all-prms:
+@if prms
+TARGET-prms=all
+maybe-all-prms: all-prms
+all-prms: configure-prms
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/prms && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-prms))
+@endif prms
+
+
+.PHONY: check-prms maybe-check-prms
+maybe-check-prms:
+@if prms
+maybe-check-prms: check-prms
+
+check-prms:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/prms && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif prms
+
+.PHONY: install-prms maybe-install-prms
+maybe-install-prms:
+@if prms
+maybe-install-prms: install-prms
+
+install-prms: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/prms && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif prms
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-prms info-prms
+maybe-info-prms:
+@if prms
+maybe-info-prms: info-prms
+
+info-prms: \
+    configure-prms 
+       @[ -f ./prms/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 etc" ; \
-       (cd etc && \
+       echo "Doing info in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-fastjar mostlyclean-fastjar
-maybe-mostlyclean-fastjar:
+.PHONY: maybe-dvi-prms dvi-prms
+maybe-dvi-prms:
+@if prms
+maybe-dvi-prms: dvi-prms
 
-mostlyclean-fastjar: 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-prms: \
+    configure-prms 
+       @[ -f ./prms/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing dvi in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-fileutils mostlyclean-fileutils
-maybe-mostlyclean-fileutils:
+.PHONY: maybe-html-prms html-prms
+maybe-html-prms:
+@if prms
+maybe-html-prms: html-prms
 
-mostlyclean-fileutils: 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-prms: \
+    configure-prms 
+       @[ -f ./prms/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing html in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 html) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-findutils mostlyclean-findutils
-maybe-mostlyclean-findutils:
+.PHONY: maybe-TAGS-prms TAGS-prms
+maybe-TAGS-prms:
+@if prms
+maybe-TAGS-prms: TAGS-prms
 
-mostlyclean-findutils: 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-prms: \
+    configure-prms 
+       @[ -f ./prms/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing TAGS in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-find mostlyclean-find
-maybe-mostlyclean-find:
+.PHONY: maybe-install-info-prms install-info-prms
+maybe-install-info-prms:
+@if prms
+maybe-install-info-prms: install-info-prms
 
-mostlyclean-find: 
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-prms: \
+    configure-prms \
+    info-prms 
+       @[ -f ./prms/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 find" ; \
-       (cd find && \
+       echo "Doing install-info in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-flex mostlyclean-flex
-maybe-mostlyclean-flex:
+.PHONY: maybe-installcheck-prms installcheck-prms
+maybe-installcheck-prms:
+@if prms
+maybe-installcheck-prms: installcheck-prms
 
-mostlyclean-flex: 
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-prms: \
+    configure-prms 
+       @[ -f ./prms/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 flex" ; \
-       (cd flex && \
+       echo "Doing installcheck in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-gas mostlyclean-gas
-maybe-mostlyclean-gas:
+.PHONY: maybe-mostlyclean-prms mostlyclean-prms
+maybe-mostlyclean-prms:
+@if prms
+maybe-mostlyclean-prms: mostlyclean-prms
 
-mostlyclean-gas: 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-prms: 
+       @[ -f ./prms/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 gas" ; \
-       (cd gas && \
+       echo "Doing mostlyclean in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -10719,237 +16068,318 @@ mostlyclean-gas:
                  mostlyclean) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-gawk mostlyclean-gawk
-maybe-mostlyclean-gawk:
+.PHONY: maybe-clean-prms clean-prms
+maybe-clean-prms:
+@if prms
+maybe-clean-prms: clean-prms
 
-mostlyclean-gawk
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-prms
+       @[ -f ./prms/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing clean in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-gettext mostlyclean-gettext
-maybe-mostlyclean-gettext:
+.PHONY: maybe-distclean-prms distclean-prms
+maybe-distclean-prms:
+@if prms
+maybe-distclean-prms: distclean-prms
 
-mostlyclean-gettext
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-prms
+       @[ -f ./prms/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing distclean in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-gnuserv mostlyclean-gnuserv
-maybe-mostlyclean-gnuserv:
+.PHONY: maybe-maintainer-clean-prms maintainer-clean-prms
+maybe-maintainer-clean-prms:
+@if prms
+maybe-maintainer-clean-prms: maintainer-clean-prms
 
-mostlyclean-gnuserv
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-prms
+       @[ -f ./prms/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing maintainer-clean in prms" ; \
+       (cd $(HOST_SUBDIR)/prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-gprof mostlyclean-gprof
-maybe-mostlyclean-gprof:
 
-mostlyclean-gprof: 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing mostlyclean in gprof" ; \
-       (cd gprof && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+
+.PHONY: configure-rcs maybe-configure-rcs
+maybe-configure-rcs:
+@if rcs
+maybe-configure-rcs: configure-rcs
+configure-rcs: 
+       @test ! -f $(HOST_SUBDIR)/rcs/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/rcs ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/rcs; \
+       cd "$(HOST_SUBDIR)/rcs" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/rcs/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/rcs"; \
+       libsrcdir="$$s/rcs"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif rcs
 
 
-.PHONY: maybe-mostlyclean-gzip mostlyclean-gzip
-maybe-mostlyclean-gzip:
 
-mostlyclean-gzip: 
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: all-rcs maybe-all-rcs
+maybe-all-rcs:
+@if rcs
+TARGET-rcs=all
+maybe-all-rcs: all-rcs
+all-rcs: configure-rcs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/rcs && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-rcs))
+@endif rcs
+
+
+.PHONY: check-rcs maybe-check-rcs
+maybe-check-rcs:
+@if rcs
+maybe-check-rcs: check-rcs
+
+check-rcs:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/rcs && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif rcs
+
+.PHONY: install-rcs maybe-install-rcs
+maybe-install-rcs:
+@if rcs
+maybe-install-rcs: install-rcs
+
+install-rcs: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/rcs && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif rcs
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-rcs info-rcs
+maybe-info-rcs:
+@if rcs
+maybe-info-rcs: info-rcs
+
+info-rcs: \
+    configure-rcs 
+       @[ -f ./rcs/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 gzip" ; \
-       (cd gzip && \
+       echo "Doing info in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-hello mostlyclean-hello
-maybe-mostlyclean-hello:
+.PHONY: maybe-dvi-rcs dvi-rcs
+maybe-dvi-rcs:
+@if rcs
+maybe-dvi-rcs: dvi-rcs
 
-mostlyclean-hello: 
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-rcs: \
+    configure-rcs 
+       @[ -f ./rcs/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 hello" ; \
-       (cd hello && \
+       echo "Doing dvi in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-indent mostlyclean-indent
-maybe-mostlyclean-indent:
+.PHONY: maybe-html-rcs html-rcs
+maybe-html-rcs:
+@if rcs
+maybe-html-rcs: html-rcs
 
-mostlyclean-indent: 
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-rcs: \
+    configure-rcs 
+       @[ -f ./rcs/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 indent" ; \
-       (cd indent && \
+       echo "Doing html in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 html) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-intl mostlyclean-intl
-maybe-mostlyclean-intl:
+.PHONY: maybe-TAGS-rcs TAGS-rcs
+maybe-TAGS-rcs:
+@if rcs
+maybe-TAGS-rcs: TAGS-rcs
 
-mostlyclean-intl: 
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-rcs: \
+    configure-rcs 
+       @[ -f ./rcs/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 intl" ; \
-       (cd intl && \
+       echo "Doing TAGS in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-tcl mostlyclean-tcl
-maybe-mostlyclean-tcl:
-
-# tcl doesn't support mostlyclean.
-mostlyclean-tcl:
-
-
-.PHONY: maybe-mostlyclean-itcl mostlyclean-itcl
-maybe-mostlyclean-itcl:
+.PHONY: maybe-install-info-rcs install-info-rcs
+maybe-install-info-rcs:
+@if rcs
+maybe-install-info-rcs: install-info-rcs
 
-mostlyclean-itcl: 
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-rcs: \
+    configure-rcs \
+    info-rcs 
+       @[ -f ./rcs/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing install-info in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-ld mostlyclean-ld
-maybe-mostlyclean-ld:
+.PHONY: maybe-installcheck-rcs installcheck-rcs
+maybe-installcheck-rcs:
+@if rcs
+maybe-installcheck-rcs: installcheck-rcs
 
-mostlyclean-ld: 
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-rcs: \
+    configure-rcs 
+       @[ -f ./rcs/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 ld" ; \
-       (cd ld && \
+       echo "Doing installcheck in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-libgui mostlyclean-libgui
-maybe-mostlyclean-libgui:
+.PHONY: maybe-mostlyclean-rcs mostlyclean-rcs
+maybe-mostlyclean-rcs:
+@if rcs
+maybe-mostlyclean-rcs: mostlyclean-rcs
 
-mostlyclean-libgui
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-rcs
+       @[ -f ./rcs/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 libgui" ; \
-       (cd libgui && \
+       echo "Doing mostlyclean in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -10957,209 +16387,318 @@ mostlyclean-libgui:
                  mostlyclean) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-libiberty mostlyclean-libiberty
-maybe-mostlyclean-libiberty:
+.PHONY: maybe-clean-rcs clean-rcs
+maybe-clean-rcs:
+@if rcs
+maybe-clean-rcs: clean-rcs
 
-mostlyclean-libiberty
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-rcs
+       @[ -f ./rcs/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 libiberty" ; \
-       (cd libiberty && \
+       echo "Doing clean in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-libtool mostlyclean-libtool
-maybe-mostlyclean-libtool:
+.PHONY: maybe-distclean-rcs distclean-rcs
+maybe-distclean-rcs:
+@if rcs
+maybe-distclean-rcs: distclean-rcs
 
-mostlyclean-libtool
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-rcs
+       @[ -f ./rcs/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 libtool" ; \
-       (cd libtool && \
+       echo "Doing distclean in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-m4 mostlyclean-m4
-maybe-mostlyclean-m4:
+.PHONY: maybe-maintainer-clean-rcs maintainer-clean-rcs
+maybe-maintainer-clean-rcs:
+@if rcs
+maybe-maintainer-clean-rcs: maintainer-clean-rcs
 
-mostlyclean-m4
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-rcs
+       @[ -f ./rcs/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 m4" ; \
-       (cd m4 && \
+       echo "Doing maintainer-clean in rcs" ; \
+       (cd $(HOST_SUBDIR)/rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-mostlyclean-make mostlyclean-make
-maybe-mostlyclean-make:
 
-mostlyclean-make: 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-readline maybe-configure-readline
+maybe-configure-readline:
+@if readline
+maybe-configure-readline: configure-readline
+configure-readline: 
+       @test ! -f $(HOST_SUBDIR)/readline/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/readline ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/readline; \
+       cd "$(HOST_SUBDIR)/readline" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/readline/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/readline"; \
+       libsrcdir="$$s/readline"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif readline
+
+
+
+.PHONY: all-readline maybe-all-readline
+maybe-all-readline:
+@if readline
+TARGET-readline=all
+maybe-all-readline: all-readline
+all-readline: configure-readline
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/readline && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-readline))
+@endif readline
+
+
+.PHONY: check-readline maybe-check-readline
+maybe-check-readline:
+@if readline
+maybe-check-readline: check-readline
+
+check-readline:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/readline && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif readline
+
+.PHONY: install-readline maybe-install-readline
+maybe-install-readline:
+@if readline
+maybe-install-readline: install-readline
+
+install-readline: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/readline && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif readline
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-readline info-readline
+maybe-info-readline:
+@if readline
+maybe-info-readline: info-readline
+
+info-readline: \
+    configure-readline 
+       @[ -f ./readline/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 make" ; \
-       (cd make && \
+       echo "Doing info in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-mmalloc mostlyclean-mmalloc
-maybe-mostlyclean-mmalloc:
+.PHONY: maybe-dvi-readline dvi-readline
+maybe-dvi-readline:
+@if readline
+maybe-dvi-readline: dvi-readline
 
-mostlyclean-mmalloc: 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-readline: \
+    configure-readline 
+       @[ -f ./readline/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 mmalloc" ; \
-       (cd mmalloc && \
+       echo "Doing dvi in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-patch mostlyclean-patch
-maybe-mostlyclean-patch:
+.PHONY: maybe-html-readline html-readline
+maybe-html-readline:
+@if readline
+maybe-html-readline: html-readline
 
-mostlyclean-patch: 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-readline: \
+    configure-readline 
+       @[ -f ./readline/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 patch" ; \
-       (cd patch && \
+       echo "Doing html in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 html) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-perl mostlyclean-perl
-maybe-mostlyclean-perl:
+.PHONY: maybe-TAGS-readline TAGS-readline
+maybe-TAGS-readline:
+@if readline
+maybe-TAGS-readline: TAGS-readline
 
-mostlyclean-perl: 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-readline: \
+    configure-readline 
+       @[ -f ./readline/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 perl" ; \
-       (cd perl && \
+       echo "Doing TAGS in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-prms mostlyclean-prms
-maybe-mostlyclean-prms:
+.PHONY: maybe-install-info-readline install-info-readline
+maybe-install-info-readline:
+@if readline
+maybe-install-info-readline: install-info-readline
 
-mostlyclean-prms: 
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-readline: \
+    configure-readline \
+    info-readline 
+       @[ -f ./readline/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 prms" ; \
-       (cd prms && \
+       echo "Doing install-info in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-rcs mostlyclean-rcs
-maybe-mostlyclean-rcs:
+.PHONY: maybe-installcheck-readline installcheck-readline
+maybe-installcheck-readline:
+@if readline
+maybe-installcheck-readline: installcheck-readline
 
-mostlyclean-rcs: 
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-readline: \
+    configure-readline 
+       @[ -f ./readline/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 rcs" ; \
-       (cd rcs && \
+       echo "Doing installcheck in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif readline
 
 .PHONY: maybe-mostlyclean-readline mostlyclean-readline
 maybe-mostlyclean-readline:
+@if readline
+maybe-mostlyclean-readline: mostlyclean-readline
 
 mostlyclean-readline: 
        @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       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 readline" ; \
-       (cd readline && \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -11167,251 +16706,308 @@ mostlyclean-readline:
                  mostlyclean) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-release mostlyclean-release
-maybe-mostlyclean-release:
+.PHONY: maybe-clean-readline clean-readline
+maybe-clean-readline:
+@if readline
+maybe-clean-readline: clean-readline
 
-mostlyclean-release: 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-readline: 
+       @[ -f ./readline/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 release" ; \
-       (cd release && \
+       echo "Doing clean in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-recode mostlyclean-recode
-maybe-mostlyclean-recode:
+.PHONY: maybe-distclean-readline distclean-readline
+maybe-distclean-readline:
+@if readline
+maybe-distclean-readline: distclean-readline
 
-mostlyclean-recode: 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-readline: 
+       @[ -f ./readline/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 recode" ; \
-       (cd recode && \
+       echo "Doing distclean in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-sed mostlyclean-sed
-maybe-mostlyclean-sed:
+.PHONY: maybe-maintainer-clean-readline maintainer-clean-readline
+maybe-maintainer-clean-readline:
+@if readline
+maybe-maintainer-clean-readline: maintainer-clean-readline
 
-mostlyclean-sed
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-readline
+       @[ -f ./readline/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 sed" ; \
-       (cd sed && \
+       echo "Doing maintainer-clean in readline" ; \
+       (cd $(HOST_SUBDIR)/readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-mostlyclean-send-pr mostlyclean-send-pr
-maybe-mostlyclean-send-pr:
 
-mostlyclean-send-pr: 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing mostlyclean in send-pr" ; \
-       (cd send-pr && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+
+.PHONY: configure-release maybe-configure-release
+maybe-configure-release:
+@if release
+maybe-configure-release: configure-release
+configure-release: 
+       @test ! -f $(HOST_SUBDIR)/release/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/release ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/release; \
+       cd "$(HOST_SUBDIR)/release" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/release/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/release"; \
+       libsrcdir="$$s/release"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif release
 
 
-.PHONY: maybe-mostlyclean-shellutils mostlyclean-shellutils
-maybe-mostlyclean-shellutils:
 
-mostlyclean-shellutils: 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing mostlyclean in shellutils" ; \
-       (cd shellutils && \
-         $(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
+.PHONY: all-release maybe-all-release
+maybe-all-release:
+@if release
+TARGET-release=all
+maybe-all-release: all-release
+all-release: configure-release
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/release && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-release))
+@endif release
 
 
-.PHONY: maybe-mostlyclean-sid mostlyclean-sid
-maybe-mostlyclean-sid:
+.PHONY: check-release maybe-check-release
+maybe-check-release:
+@if release
+maybe-check-release: check-release
 
-mostlyclean-sid: 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+check-release:
+
+@endif release
+
+.PHONY: install-release maybe-install-release
+maybe-install-release:
+@if release
+maybe-install-release: install-release
+
+install-release:
+
+@endif release
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-release info-release
+maybe-info-release:
+@if release
+maybe-info-release: info-release
+
+info-release: \
+    configure-release 
+       @[ -f ./release/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 sid" ; \
-       (cd sid && \
+       echo "Doing info in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-sim mostlyclean-sim
-maybe-mostlyclean-sim:
+.PHONY: maybe-dvi-release dvi-release
+maybe-dvi-release:
+@if release
+maybe-dvi-release: dvi-release
 
-mostlyclean-sim: 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-release: \
+    configure-release 
+       @[ -f ./release/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 sim" ; \
-       (cd sim && \
+       echo "Doing dvi in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-tar mostlyclean-tar
-maybe-mostlyclean-tar:
+.PHONY: maybe-html-release html-release
+maybe-html-release:
+@if release
+maybe-html-release: html-release
 
-mostlyclean-tar: 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-release: \
+    configure-release 
+       @[ -f ./release/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 tar" ; \
-       (cd tar && \
+       echo "Doing html in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 html) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-texinfo mostlyclean-texinfo
-maybe-mostlyclean-texinfo:
+.PHONY: maybe-TAGS-release TAGS-release
+maybe-TAGS-release:
+@if release
+maybe-TAGS-release: TAGS-release
 
-mostlyclean-texinfo: 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-release: \
+    configure-release 
+       @[ -f ./release/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 texinfo" ; \
-       (cd texinfo && \
+       echo "Doing TAGS in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-textutils mostlyclean-textutils
-maybe-mostlyclean-textutils:
+.PHONY: maybe-install-info-release install-info-release
+maybe-install-info-release:
+@if release
+maybe-install-info-release: install-info-release
 
-mostlyclean-textutils: 
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-release: \
+    configure-release \
+    info-release 
+       @[ -f ./release/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 textutils" ; \
-       (cd textutils && \
+       echo "Doing install-info in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-time mostlyclean-time
-maybe-mostlyclean-time:
+.PHONY: maybe-installcheck-release installcheck-release
+maybe-installcheck-release:
+@if release
+maybe-installcheck-release: installcheck-release
 
-mostlyclean-time: 
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-release: \
+    configure-release 
+       @[ -f ./release/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 time" ; \
-       (cd time && \
+       echo "Doing installcheck in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-uudecode mostlyclean-uudecode
-maybe-mostlyclean-uudecode:
+.PHONY: maybe-mostlyclean-release mostlyclean-release
+maybe-mostlyclean-release:
+@if release
+maybe-mostlyclean-release: mostlyclean-release
 
-mostlyclean-uudecode: 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-release: 
+       @[ -f ./release/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 uudecode" ; \
-       (cd uudecode && \
+       echo "Doing mostlyclean in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -11419,219 +17015,318 @@ mostlyclean-uudecode:
                  mostlyclean) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-wdiff mostlyclean-wdiff
-maybe-mostlyclean-wdiff:
+.PHONY: maybe-clean-release clean-release
+maybe-clean-release:
+@if release
+maybe-clean-release: clean-release
 
-mostlyclean-wdiff
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-release
+       @[ -f ./release/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 wdiff" ; \
-       (cd wdiff && \
+       echo "Doing clean in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-zip mostlyclean-zip
-maybe-mostlyclean-zip:
+.PHONY: maybe-distclean-release distclean-release
+maybe-distclean-release:
+@if release
+maybe-distclean-release: distclean-release
 
-mostlyclean-zip
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-release
+       @[ -f ./release/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 zip" ; \
-       (cd zip && \
+       echo "Doing distclean in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-zlib mostlyclean-zlib
-maybe-mostlyclean-zlib:
+.PHONY: maybe-maintainer-clean-release maintainer-clean-release
+maybe-maintainer-clean-release:
+@if release
+maybe-maintainer-clean-release: maintainer-clean-release
 
-mostlyclean-zlib
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-release
+       @[ -f ./release/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 zlib" ; \
-       (cd zlib && \
+       echo "Doing maintainer-clean in release" ; \
+       (cd $(HOST_SUBDIR)/release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-mostlyclean-gdb mostlyclean-gdb
-maybe-mostlyclean-gdb:
 
-mostlyclean-gdb: 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-recode maybe-configure-recode
+maybe-configure-recode:
+@if recode
+maybe-configure-recode: configure-recode
+configure-recode: 
+       @test ! -f $(HOST_SUBDIR)/recode/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/recode ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/recode; \
+       cd "$(HOST_SUBDIR)/recode" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/recode/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/recode"; \
+       libsrcdir="$$s/recode"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif recode
+
+
+
+.PHONY: all-recode maybe-all-recode
+maybe-all-recode:
+@if recode
+TARGET-recode=all
+maybe-all-recode: all-recode
+all-recode: configure-recode
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/recode && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-recode))
+@endif recode
+
+
+.PHONY: check-recode maybe-check-recode
+maybe-check-recode:
+@if recode
+maybe-check-recode: check-recode
+
+check-recode:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/recode && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif recode
+
+.PHONY: install-recode maybe-install-recode
+maybe-install-recode:
+@if recode
+maybe-install-recode: install-recode
+
+install-recode: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/recode && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif recode
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-recode info-recode
+maybe-info-recode:
+@if recode
+maybe-info-recode: info-recode
+
+info-recode: \
+    configure-recode 
+       @[ -f ./recode/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 gdb" ; \
-       (cd gdb && \
+       echo "Doing info in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-expect mostlyclean-expect
-maybe-mostlyclean-expect:
+.PHONY: maybe-dvi-recode dvi-recode
+maybe-dvi-recode:
+@if recode
+maybe-dvi-recode: dvi-recode
 
-mostlyclean-expect: 
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-recode: \
+    configure-recode 
+       @[ -f ./recode/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 expect" ; \
-       (cd expect && \
+       echo "Doing dvi in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-guile mostlyclean-guile
-maybe-mostlyclean-guile:
+.PHONY: maybe-html-recode html-recode
+maybe-html-recode:
+@if recode
+maybe-html-recode: html-recode
 
-mostlyclean-guile: 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-recode: \
+    configure-recode 
+       @[ -f ./recode/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 guile" ; \
-       (cd guile && \
+       echo "Doing html in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 html) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-tk mostlyclean-tk
-maybe-mostlyclean-tk:
+.PHONY: maybe-TAGS-recode TAGS-recode
+maybe-TAGS-recode:
+@if recode
+maybe-TAGS-recode: TAGS-recode
 
-mostlyclean-tk: 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-recode: \
+    configure-recode 
+       @[ -f ./recode/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 tk" ; \
-       (cd tk && \
+       echo "Doing TAGS in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-tix mostlyclean-tix
-maybe-mostlyclean-tix:
+.PHONY: maybe-install-info-recode install-info-recode
+maybe-install-info-recode:
+@if recode
+maybe-install-info-recode: install-info-recode
 
-mostlyclean-tix: 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-recode: \
+    configure-recode \
+    info-recode 
+       @[ -f ./recode/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 tix" ; \
-       (cd tix && \
+       echo "Doing install-info in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-libtermcap mostlyclean-libtermcap
-maybe-mostlyclean-libtermcap:
-
-# libtermcap doesn't support mostlyclean.
-mostlyclean-libtermcap:
-
-
-.PHONY: maybe-mostlyclean-utils mostlyclean-utils
-maybe-mostlyclean-utils:
+.PHONY: maybe-installcheck-recode installcheck-recode
+maybe-installcheck-recode:
+@if recode
+maybe-installcheck-recode: installcheck-recode
 
-mostlyclean-utils: 
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-recode: \
+    configure-recode 
+       @[ -f ./recode/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 utils" ; \
-       (cd utils && \
+       echo "Doing installcheck in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif recode
 
+.PHONY: maybe-mostlyclean-recode mostlyclean-recode
+maybe-mostlyclean-recode:
+@if recode
+maybe-mostlyclean-recode: mostlyclean-recode
 
-# Target modules.
-
-.PHONY: maybe-mostlyclean-target-libstdc++-v3 mostlyclean-target-libstdc++-v3
-maybe-mostlyclean-target-libstdc++-v3:
-
-mostlyclean-target-libstdc++-v3: 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-recode: 
+       @[ -f ./recode/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; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+       echo "Doing mostlyclean in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -11639,216 +17334,318 @@ mostlyclean-target-libstdc++-v3:
                  mostlyclean) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-target-newlib mostlyclean-target-newlib
-maybe-mostlyclean-target-newlib:
+.PHONY: maybe-clean-recode clean-recode
+maybe-clean-recode:
+@if recode
+maybe-clean-recode: clean-recode
 
-mostlyclean-target-newlib: 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-recode: 
+       @[ -f ./recode/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; \
-       (cd $(TARGET_SUBDIR)/newlib && \
+       echo "Doing clean in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-target-libf2c mostlyclean-target-libf2c
-maybe-mostlyclean-target-libf2c:
+.PHONY: maybe-distclean-recode distclean-recode
+maybe-distclean-recode:
+@if recode
+maybe-distclean-recode: distclean-recode
 
-mostlyclean-target-libf2c: 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-recode: 
+       @[ -f ./recode/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; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       echo "Doing distclean in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-target-libobjc mostlyclean-target-libobjc
-maybe-mostlyclean-target-libobjc:
+.PHONY: maybe-maintainer-clean-recode maintainer-clean-recode
+maybe-maintainer-clean-recode:
+@if recode
+maybe-maintainer-clean-recode: maintainer-clean-recode
 
-mostlyclean-target-libobjc: 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-recode: 
+       @[ -f ./recode/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; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       echo "Doing maintainer-clean in recode" ; \
+       (cd $(HOST_SUBDIR)/recode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-mostlyclean-target-libtermcap mostlyclean-target-libtermcap
-maybe-mostlyclean-target-libtermcap:
 
-# libtermcap doesn't support mostlyclean.
-mostlyclean-target-libtermcap:
 
+.PHONY: configure-sed maybe-configure-sed
+maybe-configure-sed:
+@if sed
+maybe-configure-sed: configure-sed
+configure-sed: 
+       @test ! -f $(HOST_SUBDIR)/sed/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/sed ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/sed; \
+       cd "$(HOST_SUBDIR)/sed" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/sed/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/sed"; \
+       libsrcdir="$$s/sed"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif sed
+
+
+
+.PHONY: all-sed maybe-all-sed
+maybe-all-sed:
+@if sed
+TARGET-sed=all
+maybe-all-sed: all-sed
+all-sed: configure-sed
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sed && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-sed))
+@endif sed
+
+
+.PHONY: check-sed maybe-check-sed
+maybe-check-sed:
+@if sed
+maybe-check-sed: check-sed
+
+check-sed:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sed && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif sed
+
+.PHONY: install-sed maybe-install-sed
+maybe-install-sed:
+@if sed
+maybe-install-sed: install-sed
+
+install-sed: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sed && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-winsup mostlyclean-target-winsup
-maybe-mostlyclean-target-winsup:
+# Other targets (info, dvi, etc.)
 
-mostlyclean-target-winsup: 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+.PHONY: maybe-info-sed info-sed
+maybe-info-sed:
+@if sed
+maybe-info-sed: info-sed
+
+info-sed: \
+    configure-sed 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       echo "Doing info in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-libgloss mostlyclean-target-libgloss
-maybe-mostlyclean-target-libgloss:
+.PHONY: maybe-dvi-sed dvi-sed
+maybe-dvi-sed:
+@if sed
+maybe-dvi-sed: dvi-sed
 
-mostlyclean-target-libgloss: 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-sed: \
+    configure-sed 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       echo "Doing dvi in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-libiberty mostlyclean-target-libiberty
-maybe-mostlyclean-target-libiberty:
+.PHONY: maybe-html-sed html-sed
+maybe-html-sed:
+@if sed
+maybe-html-sed: html-sed
 
-mostlyclean-target-libiberty: 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-sed: \
+    configure-sed 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       echo "Doing html in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 html) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-gperf mostlyclean-target-gperf
-maybe-mostlyclean-target-gperf:
+.PHONY: maybe-TAGS-sed TAGS-sed
+maybe-TAGS-sed:
+@if sed
+maybe-TAGS-sed: TAGS-sed
 
-mostlyclean-target-gperf: 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-sed: \
+    configure-sed 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/gperf && \
+       echo "Doing TAGS in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-examples mostlyclean-target-examples
-maybe-mostlyclean-target-examples:
+.PHONY: maybe-install-info-sed install-info-sed
+maybe-install-info-sed:
+@if sed
+maybe-install-info-sed: install-info-sed
 
-mostlyclean-target-examples: 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-sed: \
+    configure-sed \
+    info-sed 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       echo "Doing install-info in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-libffi mostlyclean-target-libffi
-maybe-mostlyclean-target-libffi:
+.PHONY: maybe-installcheck-sed installcheck-sed
+maybe-installcheck-sed:
+@if sed
+maybe-installcheck-sed: installcheck-sed
 
-mostlyclean-target-libffi: 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-sed: \
+    configure-sed 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       echo "Doing installcheck in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-libjava mostlyclean-target-libjava
-maybe-mostlyclean-target-libjava:
+.PHONY: maybe-mostlyclean-sed mostlyclean-sed
+maybe-mostlyclean-sed:
+@if sed
+maybe-mostlyclean-sed: mostlyclean-sed
 
-mostlyclean-target-libjava: 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-sed: 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       echo "Doing mostlyclean in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -11856,321 +17653,342 @@ mostlyclean-target-libjava:
                  mostlyclean) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-zlib mostlyclean-target-zlib
-maybe-mostlyclean-target-zlib:
+.PHONY: maybe-clean-sed clean-sed
+maybe-clean-sed:
+@if sed
+maybe-clean-sed: clean-sed
 
-mostlyclean-target-zlib: 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-sed: 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       echo "Doing clean in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-boehm-gc mostlyclean-target-boehm-gc
-maybe-mostlyclean-target-boehm-gc:
+.PHONY: maybe-distclean-sed distclean-sed
+maybe-distclean-sed:
+@if sed
+maybe-distclean-sed: distclean-sed
 
-mostlyclean-target-boehm-gc: 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-sed: 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       echo "Doing distclean in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-qthreads mostlyclean-target-qthreads
-maybe-mostlyclean-target-qthreads:
+.PHONY: maybe-maintainer-clean-sed maintainer-clean-sed
+maybe-maintainer-clean-sed:
+@if sed
+maybe-maintainer-clean-sed: maintainer-clean-sed
 
-mostlyclean-target-qthreads: 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-sed: 
+       @[ -f ./sed/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; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       echo "Doing maintainer-clean in sed" ; \
+       (cd $(HOST_SUBDIR)/sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-mostlyclean-target-rda mostlyclean-target-rda
-maybe-mostlyclean-target-rda:
 
-mostlyclean-target-rda: 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+
+.PHONY: configure-send-pr maybe-configure-send-pr
+maybe-configure-send-pr:
+@if send-pr
+maybe-configure-send-pr: configure-send-pr
+configure-send-pr: 
+       @test ! -f $(HOST_SUBDIR)/send-pr/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/send-pr ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/send-pr; \
+       cd "$(HOST_SUBDIR)/send-pr" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/send-pr/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/send-pr"; \
+       libsrcdir="$$s/send-pr"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif send-pr
+
+
+
+.PHONY: all-send-pr maybe-all-send-pr
+maybe-all-send-pr:
+@if send-pr
+TARGET-send-pr=all
+maybe-all-send-pr: all-send-pr
+all-send-pr: configure-send-pr
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/send-pr && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-send-pr))
+@endif send-pr
+
+
+.PHONY: check-send-pr maybe-check-send-pr
+maybe-check-send-pr:
+@if send-pr
+maybe-check-send-pr: check-send-pr
+
+check-send-pr:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/send-pr && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif send-pr
+
+.PHONY: install-send-pr maybe-install-send-pr
+maybe-install-send-pr:
+@if send-pr
+maybe-install-send-pr: install-send-pr
+
+install-send-pr: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/send-pr && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif send-pr
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-send-pr info-send-pr
+maybe-info-send-pr:
+@if send-pr
+maybe-info-send-pr: info-send-pr
+
+info-send-pr: \
+    configure-send-pr 
+       @[ -f ./send-pr/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; \
-       (cd $(TARGET_SUBDIR)/rda && \
+       echo "Doing info in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif send-pr
 
-
-.PHONY: do-clean
-do-clean: clean-host clean-target
-
-.PHONY: clean-host
-clean-host: maybe-clean-gcc  \
-    maybe-clean-ash \
-    maybe-clean-autoconf \
-    maybe-clean-automake \
-    maybe-clean-bash \
-    maybe-clean-bfd \
-    maybe-clean-opcodes \
-    maybe-clean-binutils \
-    maybe-clean-bison \
-    maybe-clean-byacc \
-    maybe-clean-bzip2 \
-    maybe-clean-dejagnu \
-    maybe-clean-diff \
-    maybe-clean-dosutils \
-    maybe-clean-etc \
-    maybe-clean-fastjar \
-    maybe-clean-fileutils \
-    maybe-clean-findutils \
-    maybe-clean-find \
-    maybe-clean-flex \
-    maybe-clean-gas \
-    maybe-clean-gawk \
-    maybe-clean-gettext \
-    maybe-clean-gnuserv \
-    maybe-clean-gprof \
-    maybe-clean-gzip \
-    maybe-clean-hello \
-    maybe-clean-indent \
-    maybe-clean-intl \
-    maybe-clean-tcl \
-    maybe-clean-itcl \
-    maybe-clean-ld \
-    maybe-clean-libgui \
-    maybe-clean-libiberty \
-    maybe-clean-libtool \
-    maybe-clean-m4 \
-    maybe-clean-make \
-    maybe-clean-mmalloc \
-    maybe-clean-patch \
-    maybe-clean-perl \
-    maybe-clean-prms \
-    maybe-clean-rcs \
-    maybe-clean-readline \
-    maybe-clean-release \
-    maybe-clean-recode \
-    maybe-clean-sed \
-    maybe-clean-send-pr \
-    maybe-clean-shellutils \
-    maybe-clean-sid \
-    maybe-clean-sim \
-    maybe-clean-tar \
-    maybe-clean-texinfo \
-    maybe-clean-textutils \
-    maybe-clean-time \
-    maybe-clean-uudecode \
-    maybe-clean-wdiff \
-    maybe-clean-zip \
-    maybe-clean-zlib \
-    maybe-clean-gdb \
-    maybe-clean-expect \
-    maybe-clean-guile \
-    maybe-clean-tk \
-    maybe-clean-tix \
-    maybe-clean-libtermcap \
-    maybe-clean-utils
-
-.PHONY: clean-target
-clean-target:  \
-    maybe-clean-target-libstdc++-v3 \
-    maybe-clean-target-newlib \
-    maybe-clean-target-libf2c \
-    maybe-clean-target-libobjc \
-    maybe-clean-target-libtermcap \
-    maybe-clean-target-winsup \
-    maybe-clean-target-libgloss \
-    maybe-clean-target-libiberty \
-    maybe-clean-target-gperf \
-    maybe-clean-target-examples \
-    maybe-clean-target-libffi \
-    maybe-clean-target-libjava \
-    maybe-clean-target-zlib \
-    maybe-clean-target-boehm-gc \
-    maybe-clean-target-qthreads \
-    maybe-clean-target-rda
-
-# GCC, the eternal special case
-.PHONY: maybe-clean-gcc clean-gcc
-maybe-clean-gcc:
-clean-gcc: 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+.PHONY: maybe-dvi-send-pr dvi-send-pr
+maybe-dvi-send-pr:
+@if send-pr
+maybe-dvi-send-pr: dvi-send-pr
+
+dvi-send-pr: \
+    configure-send-pr 
+       @[ -f ./send-pr/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 gcc" ; \
-       (cd gcc && \
+       echo "Doing dvi in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
-# Host modules.
+@endif send-pr
 
-.PHONY: maybe-clean-ash clean-ash
-maybe-clean-ash:
+.PHONY: maybe-html-send-pr html-send-pr
+maybe-html-send-pr:
+@if send-pr
+maybe-html-send-pr: html-send-pr
 
-clean-ash: 
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-send-pr: \
+    configure-send-pr 
+       @[ -f ./send-pr/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 ash" ; \
-       (cd ash && \
+       echo "Doing html in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 html) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-autoconf clean-autoconf
-maybe-clean-autoconf:
+.PHONY: maybe-TAGS-send-pr TAGS-send-pr
+maybe-TAGS-send-pr:
+@if send-pr
+maybe-TAGS-send-pr: TAGS-send-pr
 
-clean-autoconf: 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-send-pr: \
+    configure-send-pr 
+       @[ -f ./send-pr/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 autoconf" ; \
-       (cd autoconf && \
+       echo "Doing TAGS in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-automake clean-automake
-maybe-clean-automake:
+.PHONY: maybe-install-info-send-pr install-info-send-pr
+maybe-install-info-send-pr:
+@if send-pr
+maybe-install-info-send-pr: install-info-send-pr
 
-clean-automake: 
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-send-pr: \
+    configure-send-pr \
+    info-send-pr 
+       @[ -f ./send-pr/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 automake" ; \
-       (cd automake && \
+       echo "Doing install-info in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-bash clean-bash
-maybe-clean-bash:
+.PHONY: maybe-installcheck-send-pr installcheck-send-pr
+maybe-installcheck-send-pr:
+@if send-pr
+maybe-installcheck-send-pr: installcheck-send-pr
 
-clean-bash: 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-send-pr: \
+    configure-send-pr 
+       @[ -f ./send-pr/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 bash" ; \
-       (cd bash && \
+       echo "Doing installcheck in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-bfd clean-bfd
-maybe-clean-bfd:
+.PHONY: maybe-mostlyclean-send-pr mostlyclean-send-pr
+maybe-mostlyclean-send-pr:
+@if send-pr
+maybe-mostlyclean-send-pr: mostlyclean-send-pr
 
-clean-bfd
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-send-pr
+       @[ -f ./send-pr/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing mostlyclean in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-opcodes clean-opcodes
-maybe-clean-opcodes:
+.PHONY: maybe-clean-send-pr clean-send-pr
+maybe-clean-send-pr:
+@if send-pr
+maybe-clean-send-pr: clean-send-pr
 
-clean-opcodes
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-send-pr
+       @[ -f ./send-pr/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing clean in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -12178,209 +17996,318 @@ clean-opcodes:
                  clean) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-binutils clean-binutils
-maybe-clean-binutils:
+.PHONY: maybe-distclean-send-pr distclean-send-pr
+maybe-distclean-send-pr:
+@if send-pr
+maybe-distclean-send-pr: distclean-send-pr
 
-clean-binutils
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-send-pr
+       @[ -f ./send-pr/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing distclean in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-bison clean-bison
-maybe-clean-bison:
+.PHONY: maybe-maintainer-clean-send-pr maintainer-clean-send-pr
+maybe-maintainer-clean-send-pr:
+@if send-pr
+maybe-maintainer-clean-send-pr: maintainer-clean-send-pr
 
-clean-bison
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-send-pr
+       @[ -f ./send-pr/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 bison" ; \
-       (cd bison && \
+       echo "Doing maintainer-clean in send-pr" ; \
+       (cd $(HOST_SUBDIR)/send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-byacc clean-byacc
-maybe-clean-byacc:
 
-clean-byacc: 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-shellutils maybe-configure-shellutils
+maybe-configure-shellutils:
+@if shellutils
+maybe-configure-shellutils: configure-shellutils
+configure-shellutils: 
+       @test ! -f $(HOST_SUBDIR)/shellutils/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/shellutils ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/shellutils; \
+       cd "$(HOST_SUBDIR)/shellutils" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/shellutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/shellutils"; \
+       libsrcdir="$$s/shellutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif shellutils
+
+
+
+.PHONY: all-shellutils maybe-all-shellutils
+maybe-all-shellutils:
+@if shellutils
+TARGET-shellutils=all
+maybe-all-shellutils: all-shellutils
+all-shellutils: configure-shellutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/shellutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-shellutils))
+@endif shellutils
+
+
+.PHONY: check-shellutils maybe-check-shellutils
+maybe-check-shellutils:
+@if shellutils
+maybe-check-shellutils: check-shellutils
+
+check-shellutils:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/shellutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif shellutils
+
+.PHONY: install-shellutils maybe-install-shellutils
+maybe-install-shellutils:
+@if shellutils
+maybe-install-shellutils: install-shellutils
+
+install-shellutils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/shellutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif shellutils
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-shellutils info-shellutils
+maybe-info-shellutils:
+@if shellutils
+maybe-info-shellutils: info-shellutils
+
+info-shellutils: \
+    configure-shellutils 
+       @[ -f ./shellutils/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing info in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-bzip2 clean-bzip2
-maybe-clean-bzip2:
+.PHONY: maybe-dvi-shellutils dvi-shellutils
+maybe-dvi-shellutils:
+@if shellutils
+maybe-dvi-shellutils: dvi-shellutils
 
-clean-bzip2: 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-shellutils: \
+    configure-shellutils 
+       @[ -f ./shellutils/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 bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing dvi in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-dejagnu clean-dejagnu
-maybe-clean-dejagnu:
+.PHONY: maybe-html-shellutils html-shellutils
+maybe-html-shellutils:
+@if shellutils
+maybe-html-shellutils: html-shellutils
 
-clean-dejagnu: 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-shellutils: \
+    configure-shellutils 
+       @[ -f ./shellutils/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing html in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 html) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-diff clean-diff
-maybe-clean-diff:
+.PHONY: maybe-TAGS-shellutils TAGS-shellutils
+maybe-TAGS-shellutils:
+@if shellutils
+maybe-TAGS-shellutils: TAGS-shellutils
 
-clean-diff: 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-shellutils: \
+    configure-shellutils 
+       @[ -f ./shellutils/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 diff" ; \
-       (cd diff && \
+       echo "Doing TAGS in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-dosutils clean-dosutils
-maybe-clean-dosutils:
+.PHONY: maybe-install-info-shellutils install-info-shellutils
+maybe-install-info-shellutils:
+@if shellutils
+maybe-install-info-shellutils: install-info-shellutils
 
-clean-dosutils: 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-shellutils: \
+    configure-shellutils \
+    info-shellutils 
+       @[ -f ./shellutils/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing install-info in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-etc clean-etc
-maybe-clean-etc:
+.PHONY: maybe-installcheck-shellutils installcheck-shellutils
+maybe-installcheck-shellutils:
+@if shellutils
+maybe-installcheck-shellutils: installcheck-shellutils
 
-clean-etc: 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-shellutils: \
+    configure-shellutils 
+       @[ -f ./shellutils/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 etc" ; \
-       (cd etc && \
+       echo "Doing installcheck in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-fastjar clean-fastjar
-maybe-clean-fastjar:
+.PHONY: maybe-mostlyclean-shellutils mostlyclean-shellutils
+maybe-mostlyclean-shellutils:
+@if shellutils
+maybe-mostlyclean-shellutils: mostlyclean-shellutils
 
-clean-fastjar
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-shellutils
+       @[ -f ./shellutils/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing mostlyclean in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-fileutils clean-fileutils
-maybe-clean-fileutils:
+.PHONY: maybe-clean-shellutils clean-shellutils
+maybe-clean-shellutils:
+@if shellutils
+maybe-clean-shellutils: clean-shellutils
 
-clean-fileutils: 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-shellutils: 
+       @[ -f ./shellutils/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing clean in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -12388,209 +18315,318 @@ clean-fileutils:
                  clean) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-findutils clean-findutils
-maybe-clean-findutils:
-
-clean-findutils: 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: maybe-distclean-shellutils distclean-shellutils
+maybe-distclean-shellutils:
+@if shellutils
+maybe-distclean-shellutils: distclean-shellutils
+
+distclean-shellutils: 
+       @[ -f ./shellutils/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing distclean in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-find clean-find
-maybe-clean-find:
+.PHONY: maybe-maintainer-clean-shellutils maintainer-clean-shellutils
+maybe-maintainer-clean-shellutils:
+@if shellutils
+maybe-maintainer-clean-shellutils: maintainer-clean-shellutils
 
-clean-find
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-shellutils
+       @[ -f ./shellutils/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 find" ; \
-       (cd find && \
+       echo "Doing maintainer-clean in shellutils" ; \
+       (cd $(HOST_SUBDIR)/shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-flex clean-flex
-maybe-clean-flex:
 
-clean-flex: 
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-sid maybe-configure-sid
+maybe-configure-sid:
+@if sid
+maybe-configure-sid: configure-sid
+configure-sid: 
+       @test ! -f $(HOST_SUBDIR)/sid/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/sid ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/sid; \
+       cd "$(HOST_SUBDIR)/sid" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/sid/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/sid"; \
+       libsrcdir="$$s/sid"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif sid
+
+
+
+.PHONY: all-sid maybe-all-sid
+maybe-all-sid:
+@if sid
+TARGET-sid=all
+maybe-all-sid: all-sid
+all-sid: configure-sid
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sid && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-sid))
+@endif sid
+
+
+.PHONY: check-sid maybe-check-sid
+maybe-check-sid:
+@if sid
+maybe-check-sid: check-sid
+
+check-sid:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sid && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif sid
+
+.PHONY: install-sid maybe-install-sid
+maybe-install-sid:
+@if sid
+maybe-install-sid: install-sid
+
+install-sid: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sid && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif sid
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-sid info-sid
+maybe-info-sid:
+@if sid
+maybe-info-sid: info-sid
+
+info-sid: \
+    configure-sid 
+       @[ -f ./sid/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 flex" ; \
-       (cd flex && \
+       echo "Doing info in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-gas clean-gas
-maybe-clean-gas:
+.PHONY: maybe-dvi-sid dvi-sid
+maybe-dvi-sid:
+@if sid
+maybe-dvi-sid: dvi-sid
 
-clean-gas: 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-sid: \
+    configure-sid 
+       @[ -f ./sid/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 gas" ; \
-       (cd gas && \
+       echo "Doing dvi in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-gawk clean-gawk
-maybe-clean-gawk:
+.PHONY: maybe-html-sid html-sid
+maybe-html-sid:
+@if sid
+maybe-html-sid: html-sid
 
-clean-gawk: 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-sid: \
+    configure-sid 
+       @[ -f ./sid/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing html in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 html) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-gettext clean-gettext
-maybe-clean-gettext:
+.PHONY: maybe-TAGS-sid TAGS-sid
+maybe-TAGS-sid:
+@if sid
+maybe-TAGS-sid: TAGS-sid
 
-clean-gettext: 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-sid: \
+    configure-sid 
+       @[ -f ./sid/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing TAGS in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-gnuserv clean-gnuserv
-maybe-clean-gnuserv:
+.PHONY: maybe-install-info-sid install-info-sid
+maybe-install-info-sid:
+@if sid
+maybe-install-info-sid: install-info-sid
 
-clean-gnuserv: 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-sid: \
+    configure-sid \
+    info-sid 
+       @[ -f ./sid/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing install-info in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-gprof clean-gprof
-maybe-clean-gprof:
+.PHONY: maybe-installcheck-sid installcheck-sid
+maybe-installcheck-sid:
+@if sid
+maybe-installcheck-sid: installcheck-sid
 
-clean-gprof: 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-sid: \
+    configure-sid 
+       @[ -f ./sid/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 gprof" ; \
-       (cd gprof && \
+       echo "Doing installcheck in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-gzip clean-gzip
-maybe-clean-gzip:
+.PHONY: maybe-mostlyclean-sid mostlyclean-sid
+maybe-mostlyclean-sid:
+@if sid
+maybe-mostlyclean-sid: mostlyclean-sid
 
-clean-gzip
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-sid
+       @[ -f ./sid/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 gzip" ; \
-       (cd gzip && \
+       echo "Doing mostlyclean in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-hello clean-hello
-maybe-clean-hello:
+.PHONY: maybe-clean-sid clean-sid
+maybe-clean-sid:
+@if sid
+maybe-clean-sid: clean-sid
 
-clean-hello
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-sid
+       @[ -f ./sid/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 hello" ; \
-       (cd hello && \
+       echo "Doing clean in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -12598,209 +18634,318 @@ clean-hello:
                  clean) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-indent clean-indent
-maybe-clean-indent:
+.PHONY: maybe-distclean-sid distclean-sid
+maybe-distclean-sid:
+@if sid
+maybe-distclean-sid: distclean-sid
 
-clean-indent
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-sid
+       @[ -f ./sid/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 indent" ; \
-       (cd indent && \
+       echo "Doing distclean in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-intl clean-intl
-maybe-clean-intl:
+.PHONY: maybe-maintainer-clean-sid maintainer-clean-sid
+maybe-maintainer-clean-sid:
+@if sid
+maybe-maintainer-clean-sid: maintainer-clean-sid
 
-clean-intl
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-sid
+       @[ -f ./sid/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 intl" ; \
-       (cd intl && \
+       echo "Doing maintainer-clean in sid" ; \
+       (cd $(HOST_SUBDIR)/sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-clean-tcl clean-tcl
-maybe-clean-tcl:
 
-clean-tcl: 
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-sim maybe-configure-sim
+maybe-configure-sim:
+@if sim
+maybe-configure-sim: configure-sim
+configure-sim: 
+       @test ! -f $(HOST_SUBDIR)/sim/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/sim ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/sim; \
+       cd "$(HOST_SUBDIR)/sim" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/sim/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/sim"; \
+       libsrcdir="$$s/sim"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif sim
+
+
+
+.PHONY: all-sim maybe-all-sim
+maybe-all-sim:
+@if sim
+TARGET-sim=all
+maybe-all-sim: all-sim
+all-sim: configure-sim
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sim && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-sim))
+@endif sim
+
+
+.PHONY: check-sim maybe-check-sim
+maybe-check-sim:
+@if sim
+maybe-check-sim: check-sim
+
+check-sim:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sim && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif sim
+
+.PHONY: install-sim maybe-install-sim
+maybe-install-sim:
+@if sim
+maybe-install-sim: install-sim
+
+install-sim: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/sim && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif sim
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-sim info-sim
+maybe-info-sim:
+@if sim
+maybe-info-sim: info-sim
+
+info-sim: \
+    configure-sim 
+       @[ -f ./sim/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 tcl" ; \
-       (cd tcl && \
+       echo "Doing info in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-itcl clean-itcl
-maybe-clean-itcl:
+.PHONY: maybe-dvi-sim dvi-sim
+maybe-dvi-sim:
+@if sim
+maybe-dvi-sim: dvi-sim
 
-clean-itcl: 
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-sim: \
+    configure-sim 
+       @[ -f ./sim/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing dvi in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-ld clean-ld
-maybe-clean-ld:
+.PHONY: maybe-html-sim html-sim
+maybe-html-sim:
+@if sim
+maybe-html-sim: html-sim
 
-clean-ld: 
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-sim: \
+    configure-sim 
+       @[ -f ./sim/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 ld" ; \
-       (cd ld && \
+       echo "Doing html in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 html) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-libgui clean-libgui
-maybe-clean-libgui:
+.PHONY: maybe-TAGS-sim TAGS-sim
+maybe-TAGS-sim:
+@if sim
+maybe-TAGS-sim: TAGS-sim
 
-clean-libgui: 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-sim: \
+    configure-sim 
+       @[ -f ./sim/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 libgui" ; \
-       (cd libgui && \
+       echo "Doing TAGS in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-libiberty clean-libiberty
-maybe-clean-libiberty:
+.PHONY: maybe-install-info-sim install-info-sim
+maybe-install-info-sim:
+@if sim
+maybe-install-info-sim: install-info-sim
 
-clean-libiberty: 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-sim: \
+    configure-sim \
+    info-sim 
+       @[ -f ./sim/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 libiberty" ; \
-       (cd libiberty && \
+       echo "Doing install-info in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-libtool clean-libtool
-maybe-clean-libtool:
+.PHONY: maybe-installcheck-sim installcheck-sim
+maybe-installcheck-sim:
+@if sim
+maybe-installcheck-sim: installcheck-sim
 
-clean-libtool: 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-sim: \
+    configure-sim 
+       @[ -f ./sim/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 libtool" ; \
-       (cd libtool && \
+       echo "Doing installcheck in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-m4 clean-m4
-maybe-clean-m4:
+.PHONY: maybe-mostlyclean-sim mostlyclean-sim
+maybe-mostlyclean-sim:
+@if sim
+maybe-mostlyclean-sim: mostlyclean-sim
 
-clean-m4
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-sim
+       @[ -f ./sim/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 m4" ; \
-       (cd m4 && \
+       echo "Doing mostlyclean in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-make clean-make
-maybe-clean-make:
+.PHONY: maybe-clean-sim clean-sim
+maybe-clean-sim:
+@if sim
+maybe-clean-sim: clean-sim
 
-clean-make
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-sim
+       @[ -f ./sim/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 make" ; \
-       (cd make && \
+       echo "Doing clean in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -12808,230 +18953,318 @@ clean-make:
                  clean) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-mmalloc clean-mmalloc
-maybe-clean-mmalloc:
+.PHONY: maybe-distclean-sim distclean-sim
+maybe-distclean-sim:
+@if sim
+maybe-distclean-sim: distclean-sim
 
-clean-mmalloc
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-sim
+       @[ -f ./sim/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 mmalloc" ; \
-       (cd mmalloc && \
+       echo "Doing distclean in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-patch clean-patch
-maybe-clean-patch:
+.PHONY: maybe-maintainer-clean-sim maintainer-clean-sim
+maybe-maintainer-clean-sim:
+@if sim
+maybe-maintainer-clean-sim: maintainer-clean-sim
 
-clean-patch
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-sim
+       @[ -f ./sim/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 patch" ; \
-       (cd patch && \
+       echo "Doing maintainer-clean in sim" ; \
+       (cd $(HOST_SUBDIR)/sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-clean-perl clean-perl
-maybe-clean-perl:
 
-clean-perl: 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing clean in perl" ; \
-       (cd perl && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+
+.PHONY: configure-tar maybe-configure-tar
+maybe-configure-tar:
+@if tar
+maybe-configure-tar: configure-tar
+configure-tar: 
+       @test ! -f $(HOST_SUBDIR)/tar/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/tar ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/tar; \
+       cd "$(HOST_SUBDIR)/tar" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/tar/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/tar"; \
+       libsrcdir="$$s/tar"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif tar
 
 
-.PHONY: maybe-clean-prms clean-prms
-maybe-clean-prms:
 
-clean-prms: 
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: all-tar maybe-all-tar
+maybe-all-tar:
+@if tar
+TARGET-tar=all
+maybe-all-tar: all-tar
+all-tar: configure-tar
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tar && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-tar))
+@endif tar
+
+
+.PHONY: check-tar maybe-check-tar
+maybe-check-tar:
+@if tar
+maybe-check-tar: check-tar
+
+check-tar:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tar && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif tar
+
+.PHONY: install-tar maybe-install-tar
+maybe-install-tar:
+@if tar
+maybe-install-tar: install-tar
+
+install-tar: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tar && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif tar
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-tar info-tar
+maybe-info-tar:
+@if tar
+maybe-info-tar: info-tar
+
+info-tar: \
+    configure-tar 
+       @[ -f ./tar/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 prms" ; \
-       (cd prms && \
+       echo "Doing info in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-rcs clean-rcs
-maybe-clean-rcs:
+.PHONY: maybe-dvi-tar dvi-tar
+maybe-dvi-tar:
+@if tar
+maybe-dvi-tar: dvi-tar
 
-clean-rcs: 
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-tar: \
+    configure-tar 
+       @[ -f ./tar/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 rcs" ; \
-       (cd rcs && \
+       echo "Doing dvi in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-readline clean-readline
-maybe-clean-readline:
+.PHONY: maybe-html-tar html-tar
+maybe-html-tar:
+@if tar
+maybe-html-tar: html-tar
 
-clean-readline: 
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-tar: \
+    configure-tar 
+       @[ -f ./tar/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 readline" ; \
-       (cd readline && \
+       echo "Doing html in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 html) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-release clean-release
-maybe-clean-release:
+.PHONY: maybe-TAGS-tar TAGS-tar
+maybe-TAGS-tar:
+@if tar
+maybe-TAGS-tar: TAGS-tar
 
-clean-release: 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-tar: \
+    configure-tar 
+       @[ -f ./tar/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 release" ; \
-       (cd release && \
+       echo "Doing TAGS in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-recode clean-recode
-maybe-clean-recode:
+.PHONY: maybe-install-info-tar install-info-tar
+maybe-install-info-tar:
+@if tar
+maybe-install-info-tar: install-info-tar
 
-clean-recode: 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-tar: \
+    configure-tar \
+    info-tar 
+       @[ -f ./tar/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 recode" ; \
-       (cd recode && \
+       echo "Doing install-info in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-sed clean-sed
-maybe-clean-sed:
+.PHONY: maybe-installcheck-tar installcheck-tar
+maybe-installcheck-tar:
+@if tar
+maybe-installcheck-tar: installcheck-tar
 
-clean-sed: 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-tar: \
+    configure-tar 
+       @[ -f ./tar/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 sed" ; \
-       (cd sed && \
+       echo "Doing installcheck in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-send-pr clean-send-pr
-maybe-clean-send-pr:
+.PHONY: maybe-mostlyclean-tar mostlyclean-tar
+maybe-mostlyclean-tar:
+@if tar
+maybe-mostlyclean-tar: mostlyclean-tar
 
-clean-send-pr: 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-tar: 
+       @[ -f ./tar/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 send-pr" ; \
-       (cd send-pr && \
+       echo "Doing mostlyclean in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-shellutils clean-shellutils
-maybe-clean-shellutils:
+.PHONY: maybe-clean-tar clean-tar
+maybe-clean-tar:
+@if tar
+maybe-clean-tar: clean-tar
 
-clean-shellutils
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-tar
+       @[ -f ./tar/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 shellutils" ; \
-       (cd shellutils && \
+       echo "Doing clean in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -13039,209 +19272,313 @@ clean-shellutils:
                  clean) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-sid clean-sid
-maybe-clean-sid:
+.PHONY: maybe-distclean-tar distclean-tar
+maybe-distclean-tar:
+@if tar
+maybe-distclean-tar: distclean-tar
 
-clean-sid
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-tar
+       @[ -f ./tar/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 sid" ; \
-       (cd sid && \
+       echo "Doing distclean in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-sim clean-sim
-maybe-clean-sim:
+.PHONY: maybe-maintainer-clean-tar maintainer-clean-tar
+maybe-maintainer-clean-tar:
+@if tar
+maybe-maintainer-clean-tar: maintainer-clean-tar
 
-clean-sim
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-tar
+       @[ -f ./tar/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 sim" ; \
-       (cd sim && \
+       echo "Doing maintainer-clean in tar" ; \
+       (cd $(HOST_SUBDIR)/tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-clean-tar clean-tar
-maybe-clean-tar:
 
-clean-tar: 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-texinfo maybe-configure-texinfo
+maybe-configure-texinfo:
+@if texinfo
+maybe-configure-texinfo: configure-texinfo
+configure-texinfo: 
+       @test ! -f $(HOST_SUBDIR)/texinfo/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/texinfo ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/texinfo; \
+       cd "$(HOST_SUBDIR)/texinfo" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/texinfo/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/texinfo"; \
+       libsrcdir="$$s/texinfo"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif texinfo
+
+
+
+.PHONY: all-texinfo maybe-all-texinfo
+maybe-all-texinfo:
+@if texinfo
+TARGET-texinfo=all
+maybe-all-texinfo: all-texinfo
+all-texinfo: configure-texinfo
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/texinfo && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-texinfo))
+@endif texinfo
+
+
+.PHONY: check-texinfo maybe-check-texinfo
+maybe-check-texinfo:
+@if texinfo
+maybe-check-texinfo: check-texinfo
+
+check-texinfo:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/texinfo && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif texinfo
+
+.PHONY: install-texinfo maybe-install-texinfo
+maybe-install-texinfo:
+@if texinfo
+maybe-install-texinfo: install-texinfo
+
+install-texinfo:
+
+@endif texinfo
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-texinfo info-texinfo
+maybe-info-texinfo:
+@if texinfo
+maybe-info-texinfo: info-texinfo
+
+info-texinfo: \
+    configure-texinfo 
+       @[ -f ./texinfo/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 tar" ; \
-       (cd tar && \
+       echo "Doing info in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-texinfo clean-texinfo
-maybe-clean-texinfo:
+.PHONY: maybe-dvi-texinfo dvi-texinfo
+maybe-dvi-texinfo:
+@if texinfo
+maybe-dvi-texinfo: dvi-texinfo
 
-clean-texinfo: 
+dvi-texinfo: \
+    configure-texinfo 
        @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       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 texinfo" ; \
-       (cd texinfo && \
+       echo "Doing dvi in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-textutils clean-textutils
-maybe-clean-textutils:
+.PHONY: maybe-html-texinfo html-texinfo
+maybe-html-texinfo:
+@if texinfo
+maybe-html-texinfo: html-texinfo
 
-clean-textutils: 
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-texinfo: \
+    configure-texinfo 
+       @[ -f ./texinfo/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 textutils" ; \
-       (cd textutils && \
+       echo "Doing html in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 html) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-time clean-time
-maybe-clean-time:
+.PHONY: maybe-TAGS-texinfo TAGS-texinfo
+maybe-TAGS-texinfo:
+@if texinfo
+maybe-TAGS-texinfo: TAGS-texinfo
 
-clean-time: 
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-texinfo: \
+    configure-texinfo 
+       @[ -f ./texinfo/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 time" ; \
-       (cd time && \
+       echo "Doing TAGS in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-uudecode clean-uudecode
-maybe-clean-uudecode:
+.PHONY: maybe-install-info-texinfo install-info-texinfo
+maybe-install-info-texinfo:
+@if texinfo
+maybe-install-info-texinfo: install-info-texinfo
 
-clean-uudecode: 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-texinfo: \
+    configure-texinfo \
+    info-texinfo 
+       @[ -f ./texinfo/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 uudecode" ; \
-       (cd uudecode && \
+       echo "Doing install-info in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-wdiff clean-wdiff
-maybe-clean-wdiff:
+.PHONY: maybe-installcheck-texinfo installcheck-texinfo
+maybe-installcheck-texinfo:
+@if texinfo
+maybe-installcheck-texinfo: installcheck-texinfo
 
-clean-wdiff: 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-texinfo: \
+    configure-texinfo 
+       @[ -f ./texinfo/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 wdiff" ; \
-       (cd wdiff && \
+       echo "Doing installcheck in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-zip clean-zip
-maybe-clean-zip:
+.PHONY: maybe-mostlyclean-texinfo mostlyclean-texinfo
+maybe-mostlyclean-texinfo:
+@if texinfo
+maybe-mostlyclean-texinfo: mostlyclean-texinfo
 
-clean-zip
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-texinfo
+       @[ -f ./texinfo/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 zip" ; \
-       (cd zip && \
+       echo "Doing mostlyclean in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-zlib clean-zlib
-maybe-clean-zlib:
+.PHONY: maybe-clean-texinfo clean-texinfo
+maybe-clean-texinfo:
+@if texinfo
+maybe-clean-texinfo: clean-texinfo
 
-clean-zlib
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-texinfo
+       @[ -f ./texinfo/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 zlib" ; \
-       (cd zlib && \
+       echo "Doing clean in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -13249,247 +19586,318 @@ clean-zlib:
                  clean) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-gdb clean-gdb
-maybe-clean-gdb:
+.PHONY: maybe-distclean-texinfo distclean-texinfo
+maybe-distclean-texinfo:
+@if texinfo
+maybe-distclean-texinfo: distclean-texinfo
 
-clean-gdb
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-texinfo
+       @[ -f ./texinfo/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 gdb" ; \
-       (cd gdb && \
+       echo "Doing distclean in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-expect clean-expect
-maybe-clean-expect:
+.PHONY: maybe-maintainer-clean-texinfo maintainer-clean-texinfo
+maybe-maintainer-clean-texinfo:
+@if texinfo
+maybe-maintainer-clean-texinfo: maintainer-clean-texinfo
 
-clean-expect
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-texinfo
+       @[ -f ./texinfo/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 expect" ; \
-       (cd expect && \
+       echo "Doing maintainer-clean in texinfo" ; \
+       (cd $(HOST_SUBDIR)/texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-clean-guile clean-guile
-maybe-clean-guile:
 
-clean-guile: 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing clean in guile" ; \
-       (cd guile && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+
+.PHONY: configure-textutils maybe-configure-textutils
+maybe-configure-textutils:
+@if textutils
+maybe-configure-textutils: configure-textutils
+configure-textutils: 
+       @test ! -f $(HOST_SUBDIR)/textutils/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/textutils ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/textutils; \
+       cd "$(HOST_SUBDIR)/textutils" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/textutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/textutils"; \
+       libsrcdir="$$s/textutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif textutils
 
 
-.PHONY: maybe-clean-tk clean-tk
-maybe-clean-tk:
 
-clean-tk: 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: all-textutils maybe-all-textutils
+maybe-all-textutils:
+@if textutils
+TARGET-textutils=all
+maybe-all-textutils: all-textutils
+all-textutils: configure-textutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/textutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-textutils))
+@endif textutils
+
+
+.PHONY: check-textutils maybe-check-textutils
+maybe-check-textutils:
+@if textutils
+maybe-check-textutils: check-textutils
+
+check-textutils:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/textutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif textutils
+
+.PHONY: install-textutils maybe-install-textutils
+maybe-install-textutils:
+@if textutils
+maybe-install-textutils: install-textutils
+
+install-textutils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/textutils && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif textutils
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-textutils info-textutils
+maybe-info-textutils:
+@if textutils
+maybe-info-textutils: info-textutils
+
+info-textutils: \
+    configure-textutils 
+       @[ -f ./textutils/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 tk" ; \
-       (cd tk && \
+       echo "Doing info in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-tix clean-tix
-maybe-clean-tix:
+.PHONY: maybe-dvi-textutils dvi-textutils
+maybe-dvi-textutils:
+@if textutils
+maybe-dvi-textutils: dvi-textutils
 
-clean-tix: 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-textutils: \
+    configure-textutils 
+       @[ -f ./textutils/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 tix" ; \
-       (cd tix && \
+       echo "Doing dvi in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-libtermcap clean-libtermcap
-maybe-clean-libtermcap:
-
-# libtermcap doesn't support clean.
-clean-libtermcap:
-
-
-.PHONY: maybe-clean-utils clean-utils
-maybe-clean-utils:
+.PHONY: maybe-html-textutils html-textutils
+maybe-html-textutils:
+@if textutils
+maybe-html-textutils: html-textutils
 
-clean-utils: 
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-textutils: \
+    configure-textutils 
+       @[ -f ./textutils/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 utils" ; \
-       (cd utils && \
+       echo "Doing html in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 html) \
          || exit 1
 
+@endif textutils
 
+.PHONY: maybe-TAGS-textutils TAGS-textutils
+maybe-TAGS-textutils:
+@if textutils
+maybe-TAGS-textutils: TAGS-textutils
 
-# Target modules.
-
-.PHONY: maybe-clean-target-libstdc++-v3 clean-target-libstdc++-v3
-maybe-clean-target-libstdc++-v3:
-
-clean-target-libstdc++-v3: 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-textutils: \
+    configure-textutils 
+       @[ -f ./textutils/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; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+       echo "Doing TAGS in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-target-newlib clean-target-newlib
-maybe-clean-target-newlib:
+.PHONY: maybe-install-info-textutils install-info-textutils
+maybe-install-info-textutils:
+@if textutils
+maybe-install-info-textutils: install-info-textutils
 
-clean-target-newlib: 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-textutils: \
+    configure-textutils \
+    info-textutils 
+       @[ -f ./textutils/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; \
-       (cd $(TARGET_SUBDIR)/newlib && \
+       echo "Doing install-info in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-target-libf2c clean-target-libf2c
-maybe-clean-target-libf2c:
+.PHONY: maybe-installcheck-textutils installcheck-textutils
+maybe-installcheck-textutils:
+@if textutils
+maybe-installcheck-textutils: installcheck-textutils
 
-clean-target-libf2c: 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-textutils: \
+    configure-textutils 
+       @[ -f ./textutils/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; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       echo "Doing installcheck in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-target-libobjc clean-target-libobjc
-maybe-clean-target-libobjc:
+.PHONY: maybe-mostlyclean-textutils mostlyclean-textutils
+maybe-mostlyclean-textutils:
+@if textutils
+maybe-mostlyclean-textutils: mostlyclean-textutils
 
-clean-target-libobjc: 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-textutils: 
+       @[ -f ./textutils/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; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       echo "Doing mostlyclean in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-target-libtermcap clean-target-libtermcap
-maybe-clean-target-libtermcap:
-
-# libtermcap doesn't support clean.
-clean-target-libtermcap:
-
-
-.PHONY: maybe-clean-target-winsup clean-target-winsup
-maybe-clean-target-winsup:
+.PHONY: maybe-clean-textutils clean-textutils
+maybe-clean-textutils:
+@if textutils
+maybe-clean-textutils: clean-textutils
 
-clean-target-winsup: 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-textutils: 
+       @[ -f ./textutils/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; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       echo "Doing clean in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -13497,342 +19905,342 @@ clean-target-winsup:
                  clean) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-target-libgloss clean-target-libgloss
-maybe-clean-target-libgloss:
+.PHONY: maybe-distclean-textutils distclean-textutils
+maybe-distclean-textutils:
+@if textutils
+maybe-distclean-textutils: distclean-textutils
 
-clean-target-libgloss: 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-textutils: 
+       @[ -f ./textutils/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; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       echo "Doing distclean in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-target-libiberty clean-target-libiberty
-maybe-clean-target-libiberty:
+.PHONY: maybe-maintainer-clean-textutils maintainer-clean-textutils
+maybe-maintainer-clean-textutils:
+@if textutils
+maybe-maintainer-clean-textutils: maintainer-clean-textutils
 
-clean-target-libiberty: 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-textutils: 
+       @[ -f ./textutils/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; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       echo "Doing maintainer-clean in textutils" ; \
+       (cd $(HOST_SUBDIR)/textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-clean-target-gperf clean-target-gperf
-maybe-clean-target-gperf:
 
-clean-target-gperf: 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       (cd $(TARGET_SUBDIR)/gperf && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+
+.PHONY: configure-time maybe-configure-time
+maybe-configure-time:
+@if time
+maybe-configure-time: configure-time
+configure-time: 
+       @test ! -f $(HOST_SUBDIR)/time/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/time ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/time; \
+       cd "$(HOST_SUBDIR)/time" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/time/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/time"; \
+       libsrcdir="$$s/time"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif time
 
 
-.PHONY: maybe-clean-target-examples clean-target-examples
-maybe-clean-target-examples:
 
-clean-target-examples: 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+.PHONY: all-time maybe-all-time
+maybe-all-time:
+@if time
+TARGET-time=all
+maybe-all-time: all-time
+all-time: configure-time
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/time && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-time))
+@endif time
+
+
+.PHONY: check-time maybe-check-time
+maybe-check-time:
+@if time
+maybe-check-time: check-time
+
+check-time:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/time && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif time
+
+.PHONY: install-time maybe-install-time
+maybe-install-time:
+@if time
+maybe-install-time: install-time
+
+install-time: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/time && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif time
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-time info-time
+maybe-info-time:
+@if time
+maybe-info-time: info-time
+
+info-time: \
+    configure-time 
+       @[ -f ./time/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; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       echo "Doing info in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-clean-target-libffi clean-target-libffi
-maybe-clean-target-libffi:
+.PHONY: maybe-dvi-time dvi-time
+maybe-dvi-time:
+@if time
+maybe-dvi-time: dvi-time
 
-clean-target-libffi: 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-time: \
+    configure-time 
+       @[ -f ./time/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; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       echo "Doing dvi in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-clean-target-libjava clean-target-libjava
-maybe-clean-target-libjava:
+.PHONY: maybe-html-time html-time
+maybe-html-time:
+@if time
+maybe-html-time: html-time
 
-clean-target-libjava: 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-time: \
+    configure-time 
+       @[ -f ./time/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; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       echo "Doing html in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 html) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-clean-target-zlib clean-target-zlib
-maybe-clean-target-zlib:
+.PHONY: maybe-TAGS-time TAGS-time
+maybe-TAGS-time:
+@if time
+maybe-TAGS-time: TAGS-time
 
-clean-target-zlib: 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-time: \
+    configure-time 
+       @[ -f ./time/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; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       echo "Doing TAGS in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-clean-target-boehm-gc clean-target-boehm-gc
-maybe-clean-target-boehm-gc:
+.PHONY: maybe-install-info-time install-info-time
+maybe-install-info-time:
+@if time
+maybe-install-info-time: install-info-time
 
-clean-target-boehm-gc: 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-time: \
+    configure-time \
+    info-time 
+       @[ -f ./time/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; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       echo "Doing install-info in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-clean-target-qthreads clean-target-qthreads
-maybe-clean-target-qthreads:
+.PHONY: maybe-installcheck-time installcheck-time
+maybe-installcheck-time:
+@if time
+maybe-installcheck-time: installcheck-time
 
-clean-target-qthreads: 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-time: \
+    configure-time 
+       @[ -f ./time/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; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       echo "Doing installcheck in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-clean-target-rda clean-target-rda
-maybe-clean-target-rda:
+.PHONY: maybe-mostlyclean-time mostlyclean-time
+maybe-mostlyclean-time:
+@if time
+maybe-mostlyclean-time: mostlyclean-time
 
-clean-target-rda: 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-time: 
+       @[ -f ./time/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; \
-       (cd $(TARGET_SUBDIR)/rda && \
+       echo "Doing mostlyclean in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif time
 
-
-.PHONY: do-distclean
-do-distclean: distclean-host distclean-target
-
-.PHONY: distclean-host
-distclean-host: maybe-distclean-gcc  \
-    maybe-distclean-ash \
-    maybe-distclean-autoconf \
-    maybe-distclean-automake \
-    maybe-distclean-bash \
-    maybe-distclean-bfd \
-    maybe-distclean-opcodes \
-    maybe-distclean-binutils \
-    maybe-distclean-bison \
-    maybe-distclean-byacc \
-    maybe-distclean-bzip2 \
-    maybe-distclean-dejagnu \
-    maybe-distclean-diff \
-    maybe-distclean-dosutils \
-    maybe-distclean-etc \
-    maybe-distclean-fastjar \
-    maybe-distclean-fileutils \
-    maybe-distclean-findutils \
-    maybe-distclean-find \
-    maybe-distclean-flex \
-    maybe-distclean-gas \
-    maybe-distclean-gawk \
-    maybe-distclean-gettext \
-    maybe-distclean-gnuserv \
-    maybe-distclean-gprof \
-    maybe-distclean-gzip \
-    maybe-distclean-hello \
-    maybe-distclean-indent \
-    maybe-distclean-intl \
-    maybe-distclean-tcl \
-    maybe-distclean-itcl \
-    maybe-distclean-ld \
-    maybe-distclean-libgui \
-    maybe-distclean-libiberty \
-    maybe-distclean-libtool \
-    maybe-distclean-m4 \
-    maybe-distclean-make \
-    maybe-distclean-mmalloc \
-    maybe-distclean-patch \
-    maybe-distclean-perl \
-    maybe-distclean-prms \
-    maybe-distclean-rcs \
-    maybe-distclean-readline \
-    maybe-distclean-release \
-    maybe-distclean-recode \
-    maybe-distclean-sed \
-    maybe-distclean-send-pr \
-    maybe-distclean-shellutils \
-    maybe-distclean-sid \
-    maybe-distclean-sim \
-    maybe-distclean-tar \
-    maybe-distclean-texinfo \
-    maybe-distclean-textutils \
-    maybe-distclean-time \
-    maybe-distclean-uudecode \
-    maybe-distclean-wdiff \
-    maybe-distclean-zip \
-    maybe-distclean-zlib \
-    maybe-distclean-gdb \
-    maybe-distclean-expect \
-    maybe-distclean-guile \
-    maybe-distclean-tk \
-    maybe-distclean-tix \
-    maybe-distclean-libtermcap \
-    maybe-distclean-utils
-
-.PHONY: distclean-target
-distclean-target:  \
-    maybe-distclean-target-libstdc++-v3 \
-    maybe-distclean-target-newlib \
-    maybe-distclean-target-libf2c \
-    maybe-distclean-target-libobjc \
-    maybe-distclean-target-libtermcap \
-    maybe-distclean-target-winsup \
-    maybe-distclean-target-libgloss \
-    maybe-distclean-target-libiberty \
-    maybe-distclean-target-gperf \
-    maybe-distclean-target-examples \
-    maybe-distclean-target-libffi \
-    maybe-distclean-target-libjava \
-    maybe-distclean-target-zlib \
-    maybe-distclean-target-boehm-gc \
-    maybe-distclean-target-qthreads \
-    maybe-distclean-target-rda
-
-# GCC, the eternal special case
-.PHONY: maybe-distclean-gcc distclean-gcc
-maybe-distclean-gcc:
-distclean-gcc: 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+.PHONY: maybe-clean-time clean-time
+maybe-clean-time:
+@if time
+maybe-clean-time: clean-time
+
+clean-time: 
+       @[ -f ./time/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 gcc" ; \
-       (cd gcc && \
+       echo "Doing clean in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
-# Host modules.
+@endif time
 
-.PHONY: maybe-distclean-ash distclean-ash
-maybe-distclean-ash:
+.PHONY: maybe-distclean-time distclean-time
+maybe-distclean-time:
+@if time
+maybe-distclean-time: distclean-time
 
-distclean-ash
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-time
+       @[ -f ./time/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 ash" ; \
-       (cd ash && \
+       echo "Doing distclean in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -13840,209 +20248,318 @@ distclean-ash:
                  distclean) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-autoconf distclean-autoconf
-maybe-distclean-autoconf:
+.PHONY: maybe-maintainer-clean-time maintainer-clean-time
+maybe-maintainer-clean-time:
+@if time
+maybe-maintainer-clean-time: maintainer-clean-time
 
-distclean-autoconf
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-time
+       @[ -f ./time/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 autoconf" ; \
-       (cd autoconf && \
+       echo "Doing maintainer-clean in time" ; \
+       (cd $(HOST_SUBDIR)/time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-automake distclean-automake
-maybe-distclean-automake:
 
-distclean-automake: 
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-uudecode maybe-configure-uudecode
+maybe-configure-uudecode:
+@if uudecode
+maybe-configure-uudecode: configure-uudecode
+configure-uudecode: 
+       @test ! -f $(HOST_SUBDIR)/uudecode/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/uudecode ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/uudecode; \
+       cd "$(HOST_SUBDIR)/uudecode" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/uudecode/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/uudecode"; \
+       libsrcdir="$$s/uudecode"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif uudecode
+
+
+
+.PHONY: all-uudecode maybe-all-uudecode
+maybe-all-uudecode:
+@if uudecode
+TARGET-uudecode=all
+maybe-all-uudecode: all-uudecode
+all-uudecode: configure-uudecode
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/uudecode && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-uudecode))
+@endif uudecode
+
+
+.PHONY: check-uudecode maybe-check-uudecode
+maybe-check-uudecode:
+@if uudecode
+maybe-check-uudecode: check-uudecode
+
+check-uudecode:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/uudecode && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif uudecode
+
+.PHONY: install-uudecode maybe-install-uudecode
+maybe-install-uudecode:
+@if uudecode
+maybe-install-uudecode: install-uudecode
+
+install-uudecode: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/uudecode && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif uudecode
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-uudecode info-uudecode
+maybe-info-uudecode:
+@if uudecode
+maybe-info-uudecode: info-uudecode
+
+info-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/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 automake" ; \
-       (cd automake && \
+       echo "Doing info in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-bash distclean-bash
-maybe-distclean-bash:
+.PHONY: maybe-dvi-uudecode dvi-uudecode
+maybe-dvi-uudecode:
+@if uudecode
+maybe-dvi-uudecode: dvi-uudecode
 
-distclean-bash: 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/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 bash" ; \
-       (cd bash && \
+       echo "Doing dvi in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-bfd distclean-bfd
-maybe-distclean-bfd:
+.PHONY: maybe-html-uudecode html-uudecode
+maybe-html-uudecode:
+@if uudecode
+maybe-html-uudecode: html-uudecode
 
-distclean-bfd: 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing html in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 html) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-opcodes distclean-opcodes
-maybe-distclean-opcodes:
+.PHONY: maybe-TAGS-uudecode TAGS-uudecode
+maybe-TAGS-uudecode:
+@if uudecode
+maybe-TAGS-uudecode: TAGS-uudecode
 
-distclean-opcodes: 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing TAGS in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-binutils distclean-binutils
-maybe-distclean-binutils:
+.PHONY: maybe-install-info-uudecode install-info-uudecode
+maybe-install-info-uudecode:
+@if uudecode
+maybe-install-info-uudecode: install-info-uudecode
 
-distclean-binutils: 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-uudecode: \
+    configure-uudecode \
+    info-uudecode 
+       @[ -f ./uudecode/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing install-info in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-bison distclean-bison
-maybe-distclean-bison:
+.PHONY: maybe-installcheck-uudecode installcheck-uudecode
+maybe-installcheck-uudecode:
+@if uudecode
+maybe-installcheck-uudecode: installcheck-uudecode
 
-distclean-bison: 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/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 bison" ; \
-       (cd bison && \
+       echo "Doing installcheck in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-byacc distclean-byacc
-maybe-distclean-byacc:
+.PHONY: maybe-mostlyclean-uudecode mostlyclean-uudecode
+maybe-mostlyclean-uudecode:
+@if uudecode
+maybe-mostlyclean-uudecode: mostlyclean-uudecode
 
-distclean-byacc
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-uudecode
+       @[ -f ./uudecode/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing mostlyclean in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-bzip2 distclean-bzip2
-maybe-distclean-bzip2:
+.PHONY: maybe-clean-uudecode clean-uudecode
+maybe-clean-uudecode:
+@if uudecode
+maybe-clean-uudecode: clean-uudecode
 
-distclean-bzip2
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-uudecode
+       @[ -f ./uudecode/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 bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing clean in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-dejagnu distclean-dejagnu
-maybe-distclean-dejagnu:
+.PHONY: maybe-distclean-uudecode distclean-uudecode
+maybe-distclean-uudecode:
+@if uudecode
+maybe-distclean-uudecode: distclean-uudecode
 
-distclean-dejagnu
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-uudecode
+       @[ -f ./uudecode/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing distclean in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14050,209 +20567,318 @@ distclean-dejagnu:
                  distclean) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-diff distclean-diff
-maybe-distclean-diff:
+.PHONY: maybe-maintainer-clean-uudecode maintainer-clean-uudecode
+maybe-maintainer-clean-uudecode:
+@if uudecode
+maybe-maintainer-clean-uudecode: maintainer-clean-uudecode
 
-distclean-diff
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-uudecode
+       @[ -f ./uudecode/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 diff" ; \
-       (cd diff && \
+       echo "Doing maintainer-clean in uudecode" ; \
+       (cd $(HOST_SUBDIR)/uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-dosutils distclean-dosutils
-maybe-distclean-dosutils:
 
-distclean-dosutils: 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-wdiff maybe-configure-wdiff
+maybe-configure-wdiff:
+@if wdiff
+maybe-configure-wdiff: configure-wdiff
+configure-wdiff: 
+       @test ! -f $(HOST_SUBDIR)/wdiff/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/wdiff ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/wdiff; \
+       cd "$(HOST_SUBDIR)/wdiff" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/wdiff/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/wdiff"; \
+       libsrcdir="$$s/wdiff"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif wdiff
+
+
+
+.PHONY: all-wdiff maybe-all-wdiff
+maybe-all-wdiff:
+@if wdiff
+TARGET-wdiff=all
+maybe-all-wdiff: all-wdiff
+all-wdiff: configure-wdiff
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/wdiff && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-wdiff))
+@endif wdiff
+
+
+.PHONY: check-wdiff maybe-check-wdiff
+maybe-check-wdiff:
+@if wdiff
+maybe-check-wdiff: check-wdiff
+
+check-wdiff:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/wdiff && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif wdiff
+
+.PHONY: install-wdiff maybe-install-wdiff
+maybe-install-wdiff:
+@if wdiff
+maybe-install-wdiff: install-wdiff
+
+install-wdiff: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/wdiff && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif wdiff
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-wdiff info-wdiff
+maybe-info-wdiff:
+@if wdiff
+maybe-info-wdiff: info-wdiff
+
+info-wdiff: \
+    configure-wdiff 
+       @[ -f ./wdiff/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing info in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-etc distclean-etc
-maybe-distclean-etc:
+.PHONY: maybe-dvi-wdiff dvi-wdiff
+maybe-dvi-wdiff:
+@if wdiff
+maybe-dvi-wdiff: dvi-wdiff
 
-distclean-etc: 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-wdiff: \
+    configure-wdiff 
+       @[ -f ./wdiff/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 etc" ; \
-       (cd etc && \
+       echo "Doing dvi in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-fastjar distclean-fastjar
-maybe-distclean-fastjar:
+.PHONY: maybe-html-wdiff html-wdiff
+maybe-html-wdiff:
+@if wdiff
+maybe-html-wdiff: html-wdiff
 
-distclean-fastjar: 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-wdiff: \
+    configure-wdiff 
+       @[ -f ./wdiff/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing html in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 html) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-fileutils distclean-fileutils
-maybe-distclean-fileutils:
+.PHONY: maybe-TAGS-wdiff TAGS-wdiff
+maybe-TAGS-wdiff:
+@if wdiff
+maybe-TAGS-wdiff: TAGS-wdiff
 
-distclean-fileutils: 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-wdiff: \
+    configure-wdiff 
+       @[ -f ./wdiff/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing TAGS in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-findutils distclean-findutils
-maybe-distclean-findutils:
+.PHONY: maybe-install-info-wdiff install-info-wdiff
+maybe-install-info-wdiff:
+@if wdiff
+maybe-install-info-wdiff: install-info-wdiff
 
-distclean-findutils: 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-wdiff: \
+    configure-wdiff \
+    info-wdiff 
+       @[ -f ./wdiff/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing install-info in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-find distclean-find
-maybe-distclean-find:
+.PHONY: maybe-installcheck-wdiff installcheck-wdiff
+maybe-installcheck-wdiff:
+@if wdiff
+maybe-installcheck-wdiff: installcheck-wdiff
 
-distclean-find: 
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-wdiff: \
+    configure-wdiff 
+       @[ -f ./wdiff/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 find" ; \
-       (cd find && \
+       echo "Doing installcheck in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-flex distclean-flex
-maybe-distclean-flex:
+.PHONY: maybe-mostlyclean-wdiff mostlyclean-wdiff
+maybe-mostlyclean-wdiff:
+@if wdiff
+maybe-mostlyclean-wdiff: mostlyclean-wdiff
 
-distclean-flex
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-wdiff
+       @[ -f ./wdiff/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 flex" ; \
-       (cd flex && \
+       echo "Doing mostlyclean in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-gas distclean-gas
-maybe-distclean-gas:
+.PHONY: maybe-clean-wdiff clean-wdiff
+maybe-clean-wdiff:
+@if wdiff
+maybe-clean-wdiff: clean-wdiff
 
-distclean-gas
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-wdiff
+       @[ -f ./wdiff/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 gas" ; \
-       (cd gas && \
+       echo "Doing clean in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-gawk distclean-gawk
-maybe-distclean-gawk:
+.PHONY: maybe-distclean-wdiff distclean-wdiff
+maybe-distclean-wdiff:
+@if wdiff
+maybe-distclean-wdiff: distclean-wdiff
 
-distclean-gawk
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-wdiff
+       @[ -f ./wdiff/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing distclean in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14260,209 +20886,321 @@ distclean-gawk:
                  distclean) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-gettext distclean-gettext
-maybe-distclean-gettext:
+.PHONY: maybe-maintainer-clean-wdiff maintainer-clean-wdiff
+maybe-maintainer-clean-wdiff:
+@if wdiff
+maybe-maintainer-clean-wdiff: maintainer-clean-wdiff
 
-distclean-gettext
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-wdiff
+       @[ -f ./wdiff/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing maintainer-clean in wdiff" ; \
+       (cd $(HOST_SUBDIR)/wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif wdiff
 
-.PHONY: maybe-distclean-gnuserv distclean-gnuserv
-maybe-distclean-gnuserv:
 
-distclean-gnuserv: 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-zip maybe-configure-zip
+maybe-configure-zip:
+@if zip
+maybe-configure-zip: configure-zip
+configure-zip: 
+       @test ! -f $(HOST_SUBDIR)/zip/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zip ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/zip; \
+       cd "$(HOST_SUBDIR)/zip" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/zip/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/zip"; \
+       libsrcdir="$$s/zip"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif zip
+
+
+
+.PHONY: all-zip maybe-all-zip
+maybe-all-zip:
+@if zip
+TARGET-zip=all
+maybe-all-zip: all-zip
+all-zip: configure-zip
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/zip && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-zip))
+@endif zip
+
+
+.PHONY: check-zip maybe-check-zip
+maybe-check-zip:
+@if zip
+maybe-check-zip: check-zip
+
+# This module is only tested in a native toolchain.
+check-zip:
+       @if [ '$(host)' = '$(target)' ] ; then \
+         r=`${PWD_COMMAND}`; export r; \
+         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+         $(HOST_EXPORTS) \
+         (cd $(HOST_SUBDIR)/zip && \
+           $(MAKE) $(FLAGS_TO_PASS)  check); \
+       fi
+
+@endif zip
+
+.PHONY: install-zip maybe-install-zip
+maybe-install-zip:
+@if zip
+maybe-install-zip: install-zip
+
+install-zip: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/zip && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif zip
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-zip info-zip
+maybe-info-zip:
+@if zip
+maybe-info-zip: info-zip
+
+info-zip: \
+    configure-zip 
+       @[ -f ./zip/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing info in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-gprof distclean-gprof
-maybe-distclean-gprof:
+.PHONY: maybe-dvi-zip dvi-zip
+maybe-dvi-zip:
+@if zip
+maybe-dvi-zip: dvi-zip
 
-distclean-gprof: 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-zip: \
+    configure-zip 
+       @[ -f ./zip/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 gprof" ; \
-       (cd gprof && \
+       echo "Doing dvi in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-gzip distclean-gzip
-maybe-distclean-gzip:
+.PHONY: maybe-html-zip html-zip
+maybe-html-zip:
+@if zip
+maybe-html-zip: html-zip
 
-distclean-gzip: 
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-zip: \
+    configure-zip 
+       @[ -f ./zip/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 gzip" ; \
-       (cd gzip && \
+       echo "Doing html in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 html) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-hello distclean-hello
-maybe-distclean-hello:
+.PHONY: maybe-TAGS-zip TAGS-zip
+maybe-TAGS-zip:
+@if zip
+maybe-TAGS-zip: TAGS-zip
 
-distclean-hello: 
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-zip: \
+    configure-zip 
+       @[ -f ./zip/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 hello" ; \
-       (cd hello && \
+       echo "Doing TAGS in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-indent distclean-indent
-maybe-distclean-indent:
+.PHONY: maybe-install-info-zip install-info-zip
+maybe-install-info-zip:
+@if zip
+maybe-install-info-zip: install-info-zip
 
-distclean-indent: 
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-zip: \
+    configure-zip \
+    info-zip 
+       @[ -f ./zip/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 indent" ; \
-       (cd indent && \
+       echo "Doing install-info in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-intl distclean-intl
-maybe-distclean-intl:
+.PHONY: maybe-installcheck-zip installcheck-zip
+maybe-installcheck-zip:
+@if zip
+maybe-installcheck-zip: installcheck-zip
 
-distclean-intl: 
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-zip: \
+    configure-zip 
+       @[ -f ./zip/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 intl" ; \
-       (cd intl && \
+       echo "Doing installcheck in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-tcl distclean-tcl
-maybe-distclean-tcl:
+.PHONY: maybe-mostlyclean-zip mostlyclean-zip
+maybe-mostlyclean-zip:
+@if zip
+maybe-mostlyclean-zip: mostlyclean-zip
 
-distclean-tcl
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-zip
+       @[ -f ./zip/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 tcl" ; \
-       (cd tcl && \
+       echo "Doing mostlyclean in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-itcl distclean-itcl
-maybe-distclean-itcl:
+.PHONY: maybe-clean-zip clean-zip
+maybe-clean-zip:
+@if zip
+maybe-clean-zip: clean-zip
 
-distclean-itcl
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-zip
+       @[ -f ./zip/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing clean in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-ld distclean-ld
-maybe-distclean-ld:
+.PHONY: maybe-distclean-zip distclean-zip
+maybe-distclean-zip:
+@if zip
+maybe-distclean-zip: distclean-zip
 
-distclean-ld
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-zip
+       @[ -f ./zip/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 ld" ; \
-       (cd ld && \
+       echo "Doing distclean in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14470,209 +21208,310 @@ distclean-ld:
                  distclean) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-libgui distclean-libgui
-maybe-distclean-libgui:
+.PHONY: maybe-maintainer-clean-zip maintainer-clean-zip
+maybe-maintainer-clean-zip:
+@if zip
+maybe-maintainer-clean-zip: maintainer-clean-zip
 
-distclean-libgui
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-zip
+       @[ -f ./zip/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 libgui" ; \
-       (cd libgui && \
+       echo "Doing maintainer-clean in zip" ; \
+       (cd $(HOST_SUBDIR)/zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-distclean-libiberty distclean-libiberty
-maybe-distclean-libiberty:
 
-distclean-libiberty: 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-zlib maybe-configure-zlib
+maybe-configure-zlib:
+@if zlib
+maybe-configure-zlib: configure-zlib
+configure-zlib: 
+       @test -f stage_last && exit 0; \
+       test ! -f $(HOST_SUBDIR)/zlib/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/zlib ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/zlib; \
+       cd "$(HOST_SUBDIR)/zlib" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/zlib"; \
+       libsrcdir="$$s/zlib"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif zlib
+
+
+
+.PHONY: all-zlib maybe-all-zlib
+maybe-all-zlib:
+@if zlib
+TARGET-zlib=all
+maybe-all-zlib: all-zlib
+all-zlib: configure-zlib
+       @test -f stage_last && exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/zlib && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-zlib))
+@endif zlib
+
+
+.PHONY: check-zlib maybe-check-zlib
+maybe-check-zlib:
+@if zlib
+maybe-check-zlib: check-zlib
+
+check-zlib:
+
+@endif zlib
+
+.PHONY: install-zlib maybe-install-zlib
+maybe-install-zlib:
+@if zlib
+maybe-install-zlib: install-zlib
+
+install-zlib:
+
+@endif zlib
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-zlib info-zlib
+maybe-info-zlib:
+@if zlib
+maybe-info-zlib: info-zlib
+
+info-zlib: \
+    configure-zlib 
+       @[ -f ./zlib/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 libiberty" ; \
-       (cd libiberty && \
+       echo "Doing info in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-libtool distclean-libtool
-maybe-distclean-libtool:
+.PHONY: maybe-dvi-zlib dvi-zlib
+maybe-dvi-zlib:
+@if zlib
+maybe-dvi-zlib: dvi-zlib
 
-distclean-libtool: 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-zlib: \
+    configure-zlib 
+       @[ -f ./zlib/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 libtool" ; \
-       (cd libtool && \
+       echo "Doing dvi in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-m4 distclean-m4
-maybe-distclean-m4:
+.PHONY: maybe-html-zlib html-zlib
+maybe-html-zlib:
+@if zlib
+maybe-html-zlib: html-zlib
 
-distclean-m4: 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-zlib: \
+    configure-zlib 
+       @[ -f ./zlib/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 m4" ; \
-       (cd m4 && \
+       echo "Doing html in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 html) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-make distclean-make
-maybe-distclean-make:
+.PHONY: maybe-TAGS-zlib TAGS-zlib
+maybe-TAGS-zlib:
+@if zlib
+maybe-TAGS-zlib: TAGS-zlib
 
-distclean-make: 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-zlib: \
+    configure-zlib 
+       @[ -f ./zlib/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 make" ; \
-       (cd make && \
+       echo "Doing TAGS in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-mmalloc distclean-mmalloc
-maybe-distclean-mmalloc:
+.PHONY: maybe-install-info-zlib install-info-zlib
+maybe-install-info-zlib:
+@if zlib
+maybe-install-info-zlib: install-info-zlib
 
-distclean-mmalloc: 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-zlib: \
+    configure-zlib \
+    info-zlib 
+       @[ -f ./zlib/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 mmalloc" ; \
-       (cd mmalloc && \
+       echo "Doing install-info in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-patch distclean-patch
-maybe-distclean-patch:
+.PHONY: maybe-installcheck-zlib installcheck-zlib
+maybe-installcheck-zlib:
+@if zlib
+maybe-installcheck-zlib: installcheck-zlib
 
-distclean-patch: 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-zlib: \
+    configure-zlib 
+       @[ -f ./zlib/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 patch" ; \
-       (cd patch && \
+       echo "Doing installcheck in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-perl distclean-perl
-maybe-distclean-perl:
+.PHONY: maybe-mostlyclean-zlib mostlyclean-zlib
+maybe-mostlyclean-zlib:
+@if zlib
+maybe-mostlyclean-zlib: mostlyclean-zlib
 
-distclean-perl
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-zlib
+       @[ -f ./zlib/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 perl" ; \
-       (cd perl && \
+       echo "Doing mostlyclean in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-prms distclean-prms
-maybe-distclean-prms:
+.PHONY: maybe-clean-zlib clean-zlib
+maybe-clean-zlib:
+@if zlib
+maybe-clean-zlib: clean-zlib
 
-distclean-prms
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-zlib
+       @[ -f ./zlib/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 prms" ; \
-       (cd prms && \
+       echo "Doing clean in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-rcs distclean-rcs
-maybe-distclean-rcs:
+.PHONY: maybe-distclean-zlib distclean-zlib
+maybe-distclean-zlib:
+@if zlib
+maybe-distclean-zlib: distclean-zlib
 
-distclean-rcs
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-zlib
+       @[ -f ./zlib/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 rcs" ; \
-       (cd rcs && \
+       echo "Doing distclean in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14680,272 +21519,318 @@ distclean-rcs:
                  distclean) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-readline distclean-readline
-maybe-distclean-readline:
+.PHONY: maybe-maintainer-clean-zlib maintainer-clean-zlib
+maybe-maintainer-clean-zlib:
+@if zlib
+maybe-maintainer-clean-zlib: maintainer-clean-zlib
 
-distclean-readline
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-zlib
+       @[ -f ./zlib/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 readline" ; \
-       (cd readline && \
+       echo "Doing maintainer-clean in zlib" ; \
+       (cd $(HOST_SUBDIR)/zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-distclean-release distclean-release
-maybe-distclean-release:
 
-distclean-release: 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing distclean in release" ; \
-       (cd release && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+
+.PHONY: configure-gdb maybe-configure-gdb
+maybe-configure-gdb:
+@if gdb
+maybe-configure-gdb: configure-gdb
+configure-gdb: 
+       @test ! -f $(HOST_SUBDIR)/gdb/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gdb ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gdb; \
+       cd "$(HOST_SUBDIR)/gdb" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gdb/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gdb"; \
+       libsrcdir="$$s/gdb"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif gdb
 
 
-.PHONY: maybe-distclean-recode distclean-recode
-maybe-distclean-recode:
 
-distclean-recode: 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing distclean in recode" ; \
-       (cd recode && \
-         $(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
+.PHONY: all-gdb maybe-all-gdb
+maybe-all-gdb:
+@if gdb
+TARGET-gdb=all
+maybe-all-gdb: all-gdb
+all-gdb: configure-gdb
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gdb && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) $(TARGET-gdb))
+@endif gdb
 
 
-.PHONY: maybe-distclean-sed distclean-sed
-maybe-distclean-sed:
+.PHONY: check-gdb maybe-check-gdb
+maybe-check-gdb:
+@if gdb
+maybe-check-gdb: check-gdb
 
-distclean-sed: 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing distclean in sed" ; \
-       (cd sed && \
-         $(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
+check-gdb:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gdb && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
 
+@endif gdb
 
-.PHONY: maybe-distclean-send-pr distclean-send-pr
-maybe-distclean-send-pr:
+.PHONY: install-gdb maybe-install-gdb
+maybe-install-gdb:
+@if gdb
+maybe-install-gdb: install-gdb
 
-distclean-send-pr: 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-gdb: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gdb && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+
+@endif gdb
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gdb info-gdb
+maybe-info-gdb:
+@if gdb
+maybe-info-gdb: info-gdb
+
+info-gdb: \
+    configure-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in send-pr" ; \
-       (cd send-pr && \
+       echo "Doing info in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-shellutils distclean-shellutils
-maybe-distclean-shellutils:
+.PHONY: maybe-dvi-gdb dvi-gdb
+maybe-dvi-gdb:
+@if gdb
+maybe-dvi-gdb: dvi-gdb
 
-distclean-shellutils: 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-gdb: \
+    configure-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in shellutils" ; \
-       (cd shellutils && \
+       echo "Doing dvi in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-sid distclean-sid
-maybe-distclean-sid:
+.PHONY: maybe-html-gdb html-gdb
+maybe-html-gdb:
+@if gdb
+maybe-html-gdb: html-gdb
 
-distclean-sid: 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-gdb: \
+    configure-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in sid" ; \
-       (cd sid && \
+       echo "Doing html in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 html) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-sim distclean-sim
-maybe-distclean-sim:
+.PHONY: maybe-TAGS-gdb TAGS-gdb
+maybe-TAGS-gdb:
+@if gdb
+maybe-TAGS-gdb: TAGS-gdb
 
-distclean-sim: 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-gdb: \
+    configure-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in sim" ; \
-       (cd sim && \
+       echo "Doing TAGS in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-tar distclean-tar
-maybe-distclean-tar:
+.PHONY: maybe-install-info-gdb install-info-gdb
+maybe-install-info-gdb:
+@if gdb
+maybe-install-info-gdb: install-info-gdb
 
-distclean-tar: 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-gdb: \
+    configure-gdb \
+    info-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in tar" ; \
-       (cd tar && \
+       echo "Doing install-info in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-texinfo distclean-texinfo
-maybe-distclean-texinfo:
+.PHONY: maybe-installcheck-gdb installcheck-gdb
+maybe-installcheck-gdb:
+@if gdb
+maybe-installcheck-gdb: installcheck-gdb
 
-distclean-texinfo: 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-gdb: \
+    configure-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in texinfo" ; \
-       (cd texinfo && \
+       echo "Doing installcheck in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-textutils distclean-textutils
-maybe-distclean-textutils:
+.PHONY: maybe-mostlyclean-gdb mostlyclean-gdb
+maybe-mostlyclean-gdb:
+@if gdb
+maybe-mostlyclean-gdb: mostlyclean-gdb
 
-distclean-textutils
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-gdb
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in textutils" ; \
-       (cd textutils && \
+       echo "Doing mostlyclean in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-time distclean-time
-maybe-distclean-time:
+.PHONY: maybe-clean-gdb clean-gdb
+maybe-clean-gdb:
+@if gdb
+maybe-clean-gdb: clean-gdb
 
-distclean-time
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-gdb
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in time" ; \
-       (cd time && \
+       echo "Doing clean in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-uudecode distclean-uudecode
-maybe-distclean-uudecode:
+.PHONY: maybe-distclean-gdb distclean-gdb
+maybe-distclean-gdb:
+@if gdb
+maybe-distclean-gdb: distclean-gdb
 
-distclean-uudecode
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-gdb
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in uudecode" ; \
-       (cd uudecode && \
+       echo "Doing distclean in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14953,219 +21838,318 @@ distclean-uudecode:
                  distclean) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-wdiff distclean-wdiff
-maybe-distclean-wdiff:
+.PHONY: maybe-maintainer-clean-gdb maintainer-clean-gdb
+maybe-maintainer-clean-gdb:
+@if gdb
+maybe-maintainer-clean-gdb: maintainer-clean-gdb
 
-distclean-wdiff
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-gdb
+       @[ -f ./gdb/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in wdiff" ; \
-       (cd wdiff && \
+       echo "Doing maintainer-clean in gdb" ; \
+       (cd $(HOST_SUBDIR)/gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-distclean-zip distclean-zip
-maybe-distclean-zip:
 
-distclean-zip: 
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-expect maybe-configure-expect
+maybe-configure-expect:
+@if expect
+maybe-configure-expect: configure-expect
+configure-expect: 
+       @test ! -f $(HOST_SUBDIR)/expect/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/expect ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/expect; \
+       cd "$(HOST_SUBDIR)/expect" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/expect/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/expect"; \
+       libsrcdir="$$s/expect"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif expect
+
+
+
+.PHONY: all-expect maybe-all-expect
+maybe-all-expect:
+@if expect
+TARGET-expect=all
+maybe-all-expect: all-expect
+all-expect: configure-expect
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/expect && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) $(TARGET-expect))
+@endif expect
+
+
+.PHONY: check-expect maybe-check-expect
+maybe-check-expect:
+@if expect
+maybe-check-expect: check-expect
+
+check-expect:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/expect && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+
+@endif expect
+
+.PHONY: install-expect maybe-install-expect
+maybe-install-expect:
+@if expect
+maybe-install-expect: install-expect
+
+install-expect: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/expect && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+
+@endif expect
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-expect info-expect
+maybe-info-expect:
+@if expect
+maybe-info-expect: info-expect
+
+info-expect: \
+    configure-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in zip" ; \
-       (cd zip && \
+       echo "Doing info in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-zlib distclean-zlib
-maybe-distclean-zlib:
+.PHONY: maybe-dvi-expect dvi-expect
+maybe-dvi-expect:
+@if expect
+maybe-dvi-expect: dvi-expect
 
-distclean-zlib: 
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-expect: \
+    configure-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in zlib" ; \
-       (cd zlib && \
+       echo "Doing dvi in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-gdb distclean-gdb
-maybe-distclean-gdb:
+.PHONY: maybe-html-expect html-expect
+maybe-html-expect:
+@if expect
+maybe-html-expect: html-expect
 
-distclean-gdb: 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-expect: \
+    configure-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in gdb" ; \
-       (cd gdb && \
+       echo "Doing html in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 html) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-expect distclean-expect
-maybe-distclean-expect:
+.PHONY: maybe-TAGS-expect TAGS-expect
+maybe-TAGS-expect:
+@if expect
+maybe-TAGS-expect: TAGS-expect
 
-distclean-expect: 
+TAGS-expect: \
+    configure-expect 
        @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in expect" ; \
-       (cd expect && \
+       echo "Doing TAGS in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-guile distclean-guile
-maybe-distclean-guile:
+.PHONY: maybe-install-info-expect install-info-expect
+maybe-install-info-expect:
+@if expect
+maybe-install-info-expect: install-info-expect
 
-distclean-guile: 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-expect: \
+    configure-expect \
+    info-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in guile" ; \
-       (cd guile && \
+       echo "Doing install-info in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-tk distclean-tk
-maybe-distclean-tk:
+.PHONY: maybe-installcheck-expect installcheck-expect
+maybe-installcheck-expect:
+@if expect
+maybe-installcheck-expect: installcheck-expect
 
-distclean-tk: 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-expect: \
+    configure-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in tk" ; \
-       (cd tk && \
+       echo "Doing installcheck in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-tix distclean-tix
-maybe-distclean-tix:
+.PHONY: maybe-mostlyclean-expect mostlyclean-expect
+maybe-mostlyclean-expect:
+@if expect
+maybe-mostlyclean-expect: mostlyclean-expect
 
-distclean-tix
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-expect
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in tix" ; \
-       (cd tix && \
+       echo "Doing mostlyclean in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-libtermcap distclean-libtermcap
-maybe-distclean-libtermcap:
-
-# libtermcap doesn't support distclean.
-distclean-libtermcap:
-
-
-.PHONY: maybe-distclean-utils distclean-utils
-maybe-distclean-utils:
+.PHONY: maybe-clean-expect clean-expect
+maybe-clean-expect:
+@if expect
+maybe-clean-expect: clean-expect
 
-distclean-utils
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-expect
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in utils" ; \
-       (cd utils && \
+       echo "Doing clean in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif expect
 
+.PHONY: maybe-distclean-expect distclean-expect
+maybe-distclean-expect:
+@if expect
+maybe-distclean-expect: distclean-expect
 
-# Target modules.
-
-.PHONY: maybe-distclean-target-libstdc++-v3 distclean-target-libstdc++-v3
-maybe-distclean-target-libstdc++-v3:
-
-distclean-target-libstdc++-v3: 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-expect: 
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+       echo "Doing distclean in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15173,195 +22157,318 @@ distclean-target-libstdc++-v3:
                  distclean) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-target-newlib distclean-target-newlib
-maybe-distclean-target-newlib:
+.PHONY: maybe-maintainer-clean-expect maintainer-clean-expect
+maybe-maintainer-clean-expect:
+@if expect
+maybe-maintainer-clean-expect: maintainer-clean-expect
 
-distclean-target-newlib: 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-expect: 
+       @[ -f ./expect/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/newlib && \
+       echo "Doing maintainer-clean in expect" ; \
+       (cd $(HOST_SUBDIR)/expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-distclean-target-libf2c distclean-target-libf2c
-maybe-distclean-target-libf2c:
 
-distclean-target-libf2c: 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+
+.PHONY: configure-guile maybe-configure-guile
+maybe-configure-guile:
+@if guile
+maybe-configure-guile: configure-guile
+configure-guile: 
+       @test ! -f $(HOST_SUBDIR)/guile/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/guile ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/guile; \
+       cd "$(HOST_SUBDIR)/guile" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/guile/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/guile"; \
+       libsrcdir="$$s/guile"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif guile
+
+
+
+.PHONY: all-guile maybe-all-guile
+maybe-all-guile:
+@if guile
+TARGET-guile=all
+maybe-all-guile: all-guile
+all-guile: configure-guile
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/guile && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) $(TARGET-guile))
+@endif guile
+
+
+.PHONY: check-guile maybe-check-guile
+maybe-check-guile:
+@if guile
+maybe-check-guile: check-guile
+
+check-guile:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/guile && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+
+@endif guile
+
+.PHONY: install-guile maybe-install-guile
+maybe-install-guile:
+@if guile
+maybe-install-guile: install-guile
+
+install-guile: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/guile && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+
+@endif guile
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-guile info-guile
+maybe-info-guile:
+@if guile
+maybe-info-guile: info-guile
+
+info-guile: \
+    configure-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       echo "Doing info in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-libobjc distclean-target-libobjc
-maybe-distclean-target-libobjc:
+.PHONY: maybe-dvi-guile dvi-guile
+maybe-dvi-guile:
+@if guile
+maybe-dvi-guile: dvi-guile
 
-distclean-target-libobjc: 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-guile: \
+    configure-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       echo "Doing dvi in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-libtermcap distclean-target-libtermcap
-maybe-distclean-target-libtermcap:
+.PHONY: maybe-html-guile html-guile
+maybe-html-guile:
+@if guile
+maybe-html-guile: html-guile
 
-# libtermcap doesn't support distclean.
-distclean-target-libtermcap:
+html-guile: \
+    configure-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing html in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
+         $(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 guile
 
-.PHONY: maybe-distclean-target-winsup distclean-target-winsup
-maybe-distclean-target-winsup:
+.PHONY: maybe-TAGS-guile TAGS-guile
+maybe-TAGS-guile:
+@if guile
+maybe-TAGS-guile: TAGS-guile
 
-distclean-target-winsup: 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-guile: \
+    configure-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       echo "Doing TAGS in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-libgloss distclean-target-libgloss
-maybe-distclean-target-libgloss:
+.PHONY: maybe-install-info-guile install-info-guile
+maybe-install-info-guile:
+@if guile
+maybe-install-info-guile: install-info-guile
 
-distclean-target-libgloss: 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+install-info-guile: \
+    configure-guile \
+    info-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       echo "Doing install-info in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-libiberty distclean-target-libiberty
-maybe-distclean-target-libiberty:
+.PHONY: maybe-installcheck-guile installcheck-guile
+maybe-installcheck-guile:
+@if guile
+maybe-installcheck-guile: installcheck-guile
 
-distclean-target-libiberty: 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+installcheck-guile: \
+    configure-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       echo "Doing installcheck in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-gperf distclean-target-gperf
-maybe-distclean-target-gperf:
+.PHONY: maybe-mostlyclean-guile mostlyclean-guile
+maybe-mostlyclean-guile:
+@if guile
+maybe-mostlyclean-guile: mostlyclean-guile
 
-distclean-target-gperf: 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+mostlyclean-guile: 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/gperf && \
+       echo "Doing mostlyclean in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-examples distclean-target-examples
-maybe-distclean-target-examples:
+.PHONY: maybe-clean-guile clean-guile
+maybe-clean-guile:
+@if guile
+maybe-clean-guile: clean-guile
 
-distclean-target-examples: 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+clean-guile: 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       echo "Doing clean in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-libffi distclean-target-libffi
-maybe-distclean-target-libffi:
+.PHONY: maybe-distclean-guile distclean-guile
+maybe-distclean-guile:
+@if guile
+maybe-distclean-guile: distclean-guile
 
-distclean-target-libffi: 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+distclean-guile: 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       echo "Doing distclean in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15369,300 +22476,342 @@ distclean-target-libffi:
                  distclean) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-libjava distclean-target-libjava
-maybe-distclean-target-libjava:
+.PHONY: maybe-maintainer-clean-guile maintainer-clean-guile
+maybe-maintainer-clean-guile:
+@if guile
+maybe-maintainer-clean-guile: maintainer-clean-guile
 
-distclean-target-libjava: 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+maintainer-clean-guile: 
+       @[ -f ./guile/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       echo "Doing maintainer-clean in guile" ; \
+       (cd $(HOST_SUBDIR)/guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-distclean-target-zlib distclean-target-zlib
-maybe-distclean-target-zlib:
 
-distclean-target-zlib: 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+
+.PHONY: configure-tk maybe-configure-tk
+maybe-configure-tk:
+@if tk
+maybe-configure-tk: configure-tk
+configure-tk: 
+       @test ! -f $(HOST_SUBDIR)/tk/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/tk ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/tk; \
+       cd "$(HOST_SUBDIR)/tk" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/tk/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/tk"; \
+       libsrcdir="$$s/tk"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif tk
+
+
+
+.PHONY: all-tk maybe-all-tk
+maybe-all-tk:
+@if tk
+TARGET-tk=all
+maybe-all-tk: all-tk
+all-tk: configure-tk
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tk && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) $(TARGET-tk))
+@endif tk
+
+
+.PHONY: check-tk maybe-check-tk
+maybe-check-tk:
+@if tk
+maybe-check-tk: check-tk
+
+check-tk:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tk && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+
+@endif tk
+
+.PHONY: install-tk maybe-install-tk
+maybe-install-tk:
+@if tk
+maybe-install-tk: install-tk
+
+install-tk: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/tk && \
+         $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+
+@endif tk
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-tk info-tk
+maybe-info-tk:
+@if tk
+maybe-info-tk: info-tk
+
+info-tk: \
+    configure-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       echo "Doing info in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-distclean-target-boehm-gc distclean-target-boehm-gc
-maybe-distclean-target-boehm-gc:
+.PHONY: maybe-dvi-tk dvi-tk
+maybe-dvi-tk:
+@if tk
+maybe-dvi-tk: dvi-tk
 
-distclean-target-boehm-gc: 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+dvi-tk: \
+    configure-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       echo "Doing dvi in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-distclean-target-qthreads distclean-target-qthreads
-maybe-distclean-target-qthreads:
+.PHONY: maybe-html-tk html-tk
+maybe-html-tk:
+@if tk
+maybe-html-tk: html-tk
 
-distclean-target-qthreads: 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+html-tk: \
+    configure-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       echo "Doing html in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 html) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-distclean-target-rda distclean-target-rda
-maybe-distclean-target-rda:
+.PHONY: maybe-TAGS-tk TAGS-tk
+maybe-TAGS-tk:
+@if tk
+maybe-TAGS-tk: TAGS-tk
 
-distclean-target-rda: 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+TAGS-tk: \
+    configure-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/rda && \
+       echo "Doing TAGS in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif tk
 
+.PHONY: maybe-install-info-tk install-info-tk
+maybe-install-info-tk:
+@if tk
+maybe-install-info-tk: install-info-tk
 
-.PHONY: do-maintainer-clean
-do-maintainer-clean: maintainer-clean-host maintainer-clean-target
-
-.PHONY: maintainer-clean-host
-maintainer-clean-host: maybe-maintainer-clean-gcc  \
-    maybe-maintainer-clean-ash \
-    maybe-maintainer-clean-autoconf \
-    maybe-maintainer-clean-automake \
-    maybe-maintainer-clean-bash \
-    maybe-maintainer-clean-bfd \
-    maybe-maintainer-clean-opcodes \
-    maybe-maintainer-clean-binutils \
-    maybe-maintainer-clean-bison \
-    maybe-maintainer-clean-byacc \
-    maybe-maintainer-clean-bzip2 \
-    maybe-maintainer-clean-dejagnu \
-    maybe-maintainer-clean-diff \
-    maybe-maintainer-clean-dosutils \
-    maybe-maintainer-clean-etc \
-    maybe-maintainer-clean-fastjar \
-    maybe-maintainer-clean-fileutils \
-    maybe-maintainer-clean-findutils \
-    maybe-maintainer-clean-find \
-    maybe-maintainer-clean-flex \
-    maybe-maintainer-clean-gas \
-    maybe-maintainer-clean-gawk \
-    maybe-maintainer-clean-gettext \
-    maybe-maintainer-clean-gnuserv \
-    maybe-maintainer-clean-gprof \
-    maybe-maintainer-clean-gzip \
-    maybe-maintainer-clean-hello \
-    maybe-maintainer-clean-indent \
-    maybe-maintainer-clean-intl \
-    maybe-maintainer-clean-tcl \
-    maybe-maintainer-clean-itcl \
-    maybe-maintainer-clean-ld \
-    maybe-maintainer-clean-libgui \
-    maybe-maintainer-clean-libiberty \
-    maybe-maintainer-clean-libtool \
-    maybe-maintainer-clean-m4 \
-    maybe-maintainer-clean-make \
-    maybe-maintainer-clean-mmalloc \
-    maybe-maintainer-clean-patch \
-    maybe-maintainer-clean-perl \
-    maybe-maintainer-clean-prms \
-    maybe-maintainer-clean-rcs \
-    maybe-maintainer-clean-readline \
-    maybe-maintainer-clean-release \
-    maybe-maintainer-clean-recode \
-    maybe-maintainer-clean-sed \
-    maybe-maintainer-clean-send-pr \
-    maybe-maintainer-clean-shellutils \
-    maybe-maintainer-clean-sid \
-    maybe-maintainer-clean-sim \
-    maybe-maintainer-clean-tar \
-    maybe-maintainer-clean-texinfo \
-    maybe-maintainer-clean-textutils \
-    maybe-maintainer-clean-time \
-    maybe-maintainer-clean-uudecode \
-    maybe-maintainer-clean-wdiff \
-    maybe-maintainer-clean-zip \
-    maybe-maintainer-clean-zlib \
-    maybe-maintainer-clean-gdb \
-    maybe-maintainer-clean-expect \
-    maybe-maintainer-clean-guile \
-    maybe-maintainer-clean-tk \
-    maybe-maintainer-clean-tix \
-    maybe-maintainer-clean-libtermcap \
-    maybe-maintainer-clean-utils
+install-info-tk: \
+    configure-tk \
+    info-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing install-info in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
+         $(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
 
-.PHONY: maintainer-clean-target
-maintainer-clean-target:  \
-    maybe-maintainer-clean-target-libstdc++-v3 \
-    maybe-maintainer-clean-target-newlib \
-    maybe-maintainer-clean-target-libf2c \
-    maybe-maintainer-clean-target-libobjc \
-    maybe-maintainer-clean-target-libtermcap \
-    maybe-maintainer-clean-target-winsup \
-    maybe-maintainer-clean-target-libgloss \
-    maybe-maintainer-clean-target-libiberty \
-    maybe-maintainer-clean-target-gperf \
-    maybe-maintainer-clean-target-examples \
-    maybe-maintainer-clean-target-libffi \
-    maybe-maintainer-clean-target-libjava \
-    maybe-maintainer-clean-target-zlib \
-    maybe-maintainer-clean-target-boehm-gc \
-    maybe-maintainer-clean-target-qthreads \
-    maybe-maintainer-clean-target-rda
+@endif tk
 
-# GCC, the eternal special case
-.PHONY: maybe-maintainer-clean-gcc maintainer-clean-gcc
-maybe-maintainer-clean-gcc:
-maintainer-clean-gcc: 
-       @[ -f ./gcc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+.PHONY: maybe-installcheck-tk installcheck-tk
+maybe-installcheck-tk:
+@if tk
+maybe-installcheck-tk: installcheck-tk
+
+installcheck-tk: \
+    configure-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in gcc" ; \
-       (cd gcc && \
+       echo "Doing installcheck in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(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) \
+                 installcheck) \
          || exit 1
 
-# Host modules.
+@endif tk
 
-.PHONY: maybe-maintainer-clean-ash maintainer-clean-ash
-maybe-maintainer-clean-ash:
+.PHONY: maybe-mostlyclean-tk mostlyclean-tk
+maybe-mostlyclean-tk:
+@if tk
+maybe-mostlyclean-tk: mostlyclean-tk
 
-maintainer-clean-ash
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-tk
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in ash" ; \
-       (cd ash && \
+       echo "Doing mostlyclean in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-autoconf maintainer-clean-autoconf
-maybe-maintainer-clean-autoconf:
+.PHONY: maybe-clean-tk clean-tk
+maybe-clean-tk:
+@if tk
+maybe-clean-tk: clean-tk
 
-maintainer-clean-autoconf
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-tk
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in autoconf" ; \
-       (cd autoconf && \
+       echo "Doing clean in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-automake maintainer-clean-automake
-maybe-maintainer-clean-automake:
+.PHONY: maybe-distclean-tk distclean-tk
+maybe-distclean-tk:
+@if tk
+maybe-distclean-tk: distclean-tk
 
-maintainer-clean-automake
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-tk
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in automake" ; \
-       (cd automake && \
+       echo "Doing distclean in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-bash maintainer-clean-bash
-maybe-maintainer-clean-bash:
+.PHONY: maybe-maintainer-clean-tk maintainer-clean-tk
+maybe-maintainer-clean-tk:
+@if tk
+maybe-maintainer-clean-tk: maintainer-clean-tk
 
-maintainer-clean-bash
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-tk
+       @[ -f ./tk/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) $(X11_FLAGS_TO_PASS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in bash" ; \
-       (cd bash && \
+       echo "Doing maintainer-clean in tk" ; \
+       (cd $(HOST_SUBDIR)/tk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15670,314 +22819,571 @@ maintainer-clean-bash:
                  maintainer-clean) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-bfd maintainer-clean-bfd
-maybe-maintainer-clean-bfd:
 
-maintainer-clean-bfd: 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+.PHONY: configure-libtermcap maybe-configure-libtermcap
+maybe-configure-libtermcap:
+@if libtermcap
+maybe-configure-libtermcap: configure-libtermcap
+configure-libtermcap: 
+       @test ! -f $(HOST_SUBDIR)/libtermcap/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libtermcap ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/libtermcap; \
+       cd "$(HOST_SUBDIR)/libtermcap" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libtermcap/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libtermcap"; \
+       libsrcdir="$$s/libtermcap"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif libtermcap
+
+
+
+.PHONY: all-libtermcap maybe-all-libtermcap
+maybe-all-libtermcap:
+@if libtermcap
+TARGET-libtermcap=all
+maybe-all-libtermcap: all-libtermcap
+all-libtermcap: configure-libtermcap
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libtermcap && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-libtermcap))
+@endif libtermcap
+
+
+.PHONY: check-libtermcap maybe-check-libtermcap
+maybe-check-libtermcap:
+@if libtermcap
+maybe-check-libtermcap: check-libtermcap
+
+check-libtermcap:
+
+@endif libtermcap
+
+.PHONY: install-libtermcap maybe-install-libtermcap
+maybe-install-libtermcap:
+@if libtermcap
+maybe-install-libtermcap: install-libtermcap
+
+install-libtermcap: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libtermcap && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif libtermcap
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-libtermcap info-libtermcap
+maybe-info-libtermcap:
+@if libtermcap
+maybe-info-libtermcap: info-libtermcap
+
+info-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/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 bfd" ; \
-       (cd bfd && \
+       echo "Doing info in libtermcap" ; \
+       (cd $(HOST_SUBDIR)/libtermcap && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif libtermcap
 
-.PHONY: maybe-maintainer-clean-opcodes maintainer-clean-opcodes
-maybe-maintainer-clean-opcodes:
+.PHONY: maybe-dvi-libtermcap dvi-libtermcap
+maybe-dvi-libtermcap:
+@if libtermcap
+maybe-dvi-libtermcap: dvi-libtermcap
 
-maintainer-clean-opcodes: 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/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 opcodes" ; \
-       (cd opcodes && \
+       echo "Doing dvi in libtermcap" ; \
+       (cd $(HOST_SUBDIR)/libtermcap && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif libtermcap
 
-.PHONY: maybe-maintainer-clean-binutils maintainer-clean-binutils
-maybe-maintainer-clean-binutils:
+.PHONY: maybe-html-libtermcap html-libtermcap
+maybe-html-libtermcap:
+@if libtermcap
+maybe-html-libtermcap: html-libtermcap
 
-maintainer-clean-binutils: 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/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 binutils" ; \
-       (cd binutils && \
+       echo "Doing html in libtermcap" ; \
+       (cd $(HOST_SUBDIR)/libtermcap && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif libtermcap
 
-.PHONY: maybe-maintainer-clean-bison maintainer-clean-bison
-maybe-maintainer-clean-bison:
+.PHONY: maybe-TAGS-libtermcap TAGS-libtermcap
+maybe-TAGS-libtermcap:
+@if libtermcap
+maybe-TAGS-libtermcap: TAGS-libtermcap
 
-maintainer-clean-bison: 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/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 bison" ; \
-       (cd bison && \
+       echo "Doing TAGS in libtermcap" ; \
+       (cd $(HOST_SUBDIR)/libtermcap && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif libtermcap
 
-.PHONY: maybe-maintainer-clean-byacc maintainer-clean-byacc
-maybe-maintainer-clean-byacc:
+.PHONY: maybe-install-info-libtermcap install-info-libtermcap
+maybe-install-info-libtermcap:
+@if libtermcap
+maybe-install-info-libtermcap: install-info-libtermcap
 
-maintainer-clean-byacc: 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-libtermcap: \
+    configure-libtermcap \
+    info-libtermcap 
+       @[ -f ./libtermcap/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 byacc" ; \
-       (cd byacc && \
+       echo "Doing install-info in libtermcap" ; \
+       (cd $(HOST_SUBDIR)/libtermcap && \
          $(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) \
+                 install-info) \
          || exit 1
 
+@endif libtermcap
 
-.PHONY: maybe-maintainer-clean-bzip2 maintainer-clean-bzip2
-maybe-maintainer-clean-bzip2:
+.PHONY: maybe-installcheck-libtermcap installcheck-libtermcap
+maybe-installcheck-libtermcap:
+@if libtermcap
+maybe-installcheck-libtermcap: installcheck-libtermcap
 
-maintainer-clean-bzip2: 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/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 libtermcap" ; \
+       (cd $(HOST_SUBDIR)/libtermcap && \
+         $(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 libtermcap
+
+.PHONY: maybe-mostlyclean-libtermcap mostlyclean-libtermcap
+maybe-mostlyclean-libtermcap:
+@if libtermcap
+maybe-mostlyclean-libtermcap: mostlyclean-libtermcap
+
+# libtermcap doesn't support mostlyclean.
+mostlyclean-libtermcap:
+
+@endif libtermcap
+
+.PHONY: maybe-clean-libtermcap clean-libtermcap
+maybe-clean-libtermcap:
+@if libtermcap
+maybe-clean-libtermcap: clean-libtermcap
+
+# libtermcap doesn't support clean.
+clean-libtermcap:
+
+@endif libtermcap
+
+.PHONY: maybe-distclean-libtermcap distclean-libtermcap
+maybe-distclean-libtermcap:
+@if libtermcap
+maybe-distclean-libtermcap: distclean-libtermcap
+
+# libtermcap doesn't support distclean.
+distclean-libtermcap:
+
+@endif libtermcap
+
+.PHONY: maybe-maintainer-clean-libtermcap maintainer-clean-libtermcap
+maybe-maintainer-clean-libtermcap:
+@if libtermcap
+maybe-maintainer-clean-libtermcap: maintainer-clean-libtermcap
+
+# libtermcap doesn't support maintainer-clean.
+maintainer-clean-libtermcap:
+
+@endif libtermcap
+
+
+
+.PHONY: configure-utils maybe-configure-utils
+maybe-configure-utils:
+@if utils
+maybe-configure-utils: configure-utils
+configure-utils: 
+       @test ! -f $(HOST_SUBDIR)/utils/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/utils ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/utils; \
+       cd "$(HOST_SUBDIR)/utils" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/utils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/utils"; \
+       libsrcdir="$$s/utils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif utils
+
+
+
+.PHONY: all-utils maybe-all-utils
+maybe-all-utils:
+@if utils
+TARGET-utils=all
+maybe-all-utils: all-utils
+all-utils: configure-utils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/utils && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-utils))
+@endif utils
+
+
+.PHONY: check-utils maybe-check-utils
+maybe-check-utils:
+@if utils
+maybe-check-utils: check-utils
+
+check-utils:
+
+@endif utils
+
+.PHONY: install-utils maybe-install-utils
+maybe-install-utils:
+@if utils
+maybe-install-utils: install-utils
+
+install-utils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/utils && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif utils
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-utils info-utils
+maybe-info-utils:
+@if utils
+maybe-info-utils: info-utils
+
+info-utils: \
+    configure-utils 
+       @[ -f ./utils/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 bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing info in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-dejagnu maintainer-clean-dejagnu
-maybe-maintainer-clean-dejagnu:
+.PHONY: maybe-dvi-utils dvi-utils
+maybe-dvi-utils:
+@if utils
+maybe-dvi-utils: dvi-utils
 
-maintainer-clean-dejagnu: 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-utils: \
+    configure-utils 
+       @[ -f ./utils/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 dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing dvi in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-diff maintainer-clean-diff
-maybe-maintainer-clean-diff:
+.PHONY: maybe-html-utils html-utils
+maybe-html-utils:
+@if utils
+maybe-html-utils: html-utils
 
-maintainer-clean-diff: 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-utils: \
+    configure-utils 
+       @[ -f ./utils/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 diff" ; \
-       (cd diff && \
+       echo "Doing html in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-dosutils maintainer-clean-dosutils
-maybe-maintainer-clean-dosutils:
+.PHONY: maybe-TAGS-utils TAGS-utils
+maybe-TAGS-utils:
+@if utils
+maybe-TAGS-utils: TAGS-utils
 
-maintainer-clean-dosutils: 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-utils: \
+    configure-utils 
+       @[ -f ./utils/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 dosutils" ; \
-       (cd dosutils && \
+       echo "Doing TAGS in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-etc maintainer-clean-etc
-maybe-maintainer-clean-etc:
+.PHONY: maybe-install-info-utils install-info-utils
+maybe-install-info-utils:
+@if utils
+maybe-install-info-utils: install-info-utils
 
-maintainer-clean-etc: 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-utils: \
+    configure-utils \
+    info-utils 
+       @[ -f ./utils/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 etc" ; \
-       (cd etc && \
+       echo "Doing install-info in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 install-info) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-fastjar maintainer-clean-fastjar
-maybe-maintainer-clean-fastjar:
+.PHONY: maybe-installcheck-utils installcheck-utils
+maybe-installcheck-utils:
+@if utils
+maybe-installcheck-utils: installcheck-utils
 
-maintainer-clean-fastjar: 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-utils: \
+    configure-utils 
+       @[ -f ./utils/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 fastjar" ; \
-       (cd fastjar && \
+       echo "Doing installcheck in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-fileutils maintainer-clean-fileutils
-maybe-maintainer-clean-fileutils:
+.PHONY: maybe-mostlyclean-utils mostlyclean-utils
+maybe-mostlyclean-utils:
+@if utils
+maybe-mostlyclean-utils: mostlyclean-utils
 
-maintainer-clean-fileutils: 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-utils: 
+       @[ -f ./utils/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 fileutils" ; \
-       (cd fileutils && \
+       echo "Doing mostlyclean in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-findutils maintainer-clean-findutils
-maybe-maintainer-clean-findutils:
+.PHONY: maybe-clean-utils clean-utils
+maybe-clean-utils:
+@if utils
+maybe-clean-utils: clean-utils
 
-maintainer-clean-findutils: 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-utils: 
+       @[ -f ./utils/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 findutils" ; \
-       (cd findutils && \
+       echo "Doing clean in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-find maintainer-clean-find
-maybe-maintainer-clean-find:
+.PHONY: maybe-distclean-utils distclean-utils
+maybe-distclean-utils:
+@if utils
+maybe-distclean-utils: distclean-utils
 
-maintainer-clean-find
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-utils
+       @[ -f ./utils/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 find" ; \
-       (cd find && \
+       echo "Doing distclean in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-flex maintainer-clean-flex
-maybe-maintainer-clean-flex:
+.PHONY: maybe-maintainer-clean-utils maintainer-clean-utils
+maybe-maintainer-clean-utils:
+@if utils
+maybe-maintainer-clean-utils: maintainer-clean-utils
 
-maintainer-clean-flex
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-utils
+       @[ -f ./utils/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 flex" ; \
-       (cd flex && \
+       echo "Doing maintainer-clean in utils" ; \
+       (cd $(HOST_SUBDIR)/utils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15985,230 +23391,318 @@ maintainer-clean-flex:
                  maintainer-clean) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-gas maintainer-clean-gas
-maybe-maintainer-clean-gas:
 
-maintainer-clean-gas: 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing maintainer-clean in gas" ; \
-       (cd gas && \
-         $(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) \
+
+.PHONY: configure-gnattools maybe-configure-gnattools
+maybe-configure-gnattools:
+@if gnattools
+maybe-configure-gnattools: configure-gnattools
+configure-gnattools: 
+       @test ! -f $(HOST_SUBDIR)/gnattools/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gnattools ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in $(HOST_SUBDIR)/gnattools; \
+       cd "$(HOST_SUBDIR)/gnattools" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gnattools/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gnattools"; \
+       libsrcdir="$$s/gnattools"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif gnattools
 
 
-.PHONY: maybe-maintainer-clean-gawk maintainer-clean-gawk
-maybe-maintainer-clean-gawk:
 
-maintainer-clean-gawk: 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: all-gnattools maybe-all-gnattools
+maybe-all-gnattools:
+@if gnattools
+TARGET-gnattools=all
+maybe-all-gnattools: all-gnattools
+all-gnattools: configure-gnattools
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gnattools && \
+         $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-gnattools))
+@endif gnattools
+
+
+.PHONY: check-gnattools maybe-check-gnattools
+maybe-check-gnattools:
+@if gnattools
+maybe-check-gnattools: check-gnattools
+
+check-gnattools:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gnattools && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif gnattools
+
+.PHONY: install-gnattools maybe-install-gnattools
+maybe-install-gnattools:
+@if gnattools
+maybe-install-gnattools: install-gnattools
+
+install-gnattools: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/gnattools && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif gnattools
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-gnattools info-gnattools
+maybe-info-gnattools:
+@if gnattools
+maybe-info-gnattools: info-gnattools
+
+info-gnattools: \
+    configure-gnattools 
+       @[ -f ./gnattools/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 gawk" ; \
-       (cd gawk && \
+       echo "Doing info in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 info) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-gettext maintainer-clean-gettext
-maybe-maintainer-clean-gettext:
+.PHONY: maybe-dvi-gnattools dvi-gnattools
+maybe-dvi-gnattools:
+@if gnattools
+maybe-dvi-gnattools: dvi-gnattools
 
-maintainer-clean-gettext: 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-gnattools: \
+    configure-gnattools 
+       @[ -f ./gnattools/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 gettext" ; \
-       (cd gettext && \
+       echo "Doing dvi in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 dvi) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-gnuserv maintainer-clean-gnuserv
-maybe-maintainer-clean-gnuserv:
+.PHONY: maybe-html-gnattools html-gnattools
+maybe-html-gnattools:
+@if gnattools
+maybe-html-gnattools: html-gnattools
 
-maintainer-clean-gnuserv: 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-gnattools: \
+    configure-gnattools 
+       @[ -f ./gnattools/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 gnuserv" ; \
-       (cd gnuserv && \
+       echo "Doing html in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 html) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-gprof maintainer-clean-gprof
-maybe-maintainer-clean-gprof:
+.PHONY: maybe-TAGS-gnattools TAGS-gnattools
+maybe-TAGS-gnattools:
+@if gnattools
+maybe-TAGS-gnattools: TAGS-gnattools
 
-maintainer-clean-gprof: 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-gnattools: \
+    configure-gnattools 
+       @[ -f ./gnattools/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 gprof" ; \
-       (cd gprof && \
+       echo "Doing TAGS in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 TAGS) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-gzip maintainer-clean-gzip
-maybe-maintainer-clean-gzip:
+.PHONY: maybe-install-info-gnattools install-info-gnattools
+maybe-install-info-gnattools:
+@if gnattools
+maybe-install-info-gnattools: install-info-gnattools
 
-maintainer-clean-gzip: 
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-gnattools: \
+    configure-gnattools \
+    info-gnattools 
+       @[ -f ./gnattools/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 gzip" ; \
-       (cd gzip && \
+       echo "Doing install-info in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 install-info) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-hello maintainer-clean-hello
-maybe-maintainer-clean-hello:
+.PHONY: maybe-installcheck-gnattools installcheck-gnattools
+maybe-installcheck-gnattools:
+@if gnattools
+maybe-installcheck-gnattools: installcheck-gnattools
 
-maintainer-clean-hello: 
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-gnattools: \
+    configure-gnattools 
+       @[ -f ./gnattools/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 hello" ; \
-       (cd hello && \
+       echo "Doing installcheck in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 installcheck) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-indent maintainer-clean-indent
-maybe-maintainer-clean-indent:
+.PHONY: maybe-mostlyclean-gnattools mostlyclean-gnattools
+maybe-mostlyclean-gnattools:
+@if gnattools
+maybe-mostlyclean-gnattools: mostlyclean-gnattools
 
-maintainer-clean-indent
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-gnattools
+       @[ -f ./gnattools/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 indent" ; \
-       (cd indent && \
+       echo "Doing mostlyclean in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 mostlyclean) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-intl maintainer-clean-intl
-maybe-maintainer-clean-intl:
+.PHONY: maybe-clean-gnattools clean-gnattools
+maybe-clean-gnattools:
+@if gnattools
+maybe-clean-gnattools: clean-gnattools
 
-maintainer-clean-intl
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-gnattools
+       @[ -f ./gnattools/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 intl" ; \
-       (cd intl && \
+       echo "Doing clean in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 clean) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-tcl maintainer-clean-tcl
-maybe-maintainer-clean-tcl:
+.PHONY: maybe-distclean-gnattools distclean-gnattools
+maybe-distclean-gnattools:
+@if gnattools
+maybe-distclean-gnattools: distclean-gnattools
 
-maintainer-clean-tcl
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-gnattools
+       @[ -f ./gnattools/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 tcl" ; \
-       (cd tcl && \
+       echo "Doing distclean in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(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) \
+                 distclean) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-itcl maintainer-clean-itcl
-maybe-maintainer-clean-itcl:
+.PHONY: maybe-maintainer-clean-gnattools maintainer-clean-gnattools
+maybe-maintainer-clean-gnattools:
+@if gnattools
+maybe-maintainer-clean-gnattools: maintainer-clean-gnattools
 
-maintainer-clean-itcl
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-gnattools
+       @[ -f ./gnattools/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 itcl" ; \
-       (cd itcl && \
+       echo "Doing maintainer-clean in gnattools" ; \
+       (cd $(HOST_SUBDIR)/gnattools && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -16216,739 +23710,992 @@ maintainer-clean-itcl:
                  maintainer-clean) \
          || exit 1
 
+@endif gnattools
 
-.PHONY: maybe-maintainer-clean-ld maintainer-clean-ld
-maybe-maintainer-clean-ld:
 
-maintainer-clean-ld: 
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing maintainer-clean in ld" ; \
-       (cd ld && \
-         $(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) \
+
+# ---------------------------------------
+# Modules which run on the target machine
+# ---------------------------------------
+
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libstdc++-v3
+$(TARGET_SUBDIR)/libstdc++-v3/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libstdc++-v3 ; \
+       rm -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libstdc++-v3/multilib.out
+@endif target-libstdc++-v3
+
+
+
+.PHONY: configure-target-libstdc++-v3 maybe-configure-target-libstdc++-v3
+maybe-configure-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-configure-target-libstdc++-v3: configure-target-libstdc++-v3
+configure-target-libstdc++-v3: $(TARGET_SUBDIR)/libstdc++-v3/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libstdc++-v3 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libstdc++-v3; \
+       cd "$(TARGET_SUBDIR)/libstdc++-v3" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libstdc++-v3/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libstdc++-v3"; \
+       libsrcdir="$$s/libstdc++-v3"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libstdc++-v3
+
+
+
+.PHONY: all-target-libstdc++-v3 maybe-all-target-libstdc++-v3
+maybe-all-target-libstdc++-v3:
+@if target-libstdc++-v3
+TARGET-target-libstdc++-v3=all
+maybe-all-target-libstdc++-v3: all-target-libstdc++-v3
+all-target-libstdc++-v3: configure-target-libstdc++-v3
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'  $(TARGET-target-libstdc++-v3))
+@endif target-libstdc++-v3
+
+
+
+.PHONY: check-target-libstdc++-v3 maybe-check-target-libstdc++-v3
+maybe-check-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-check-target-libstdc++-v3: check-target-libstdc++-v3
+
+check-target-libstdc++-v3:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'   check)
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-libgui maintainer-clean-libgui
-maybe-maintainer-clean-libgui:
+.PHONY: install-target-libstdc++-v3 maybe-install-target-libstdc++-v3
+maybe-install-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-install-target-libstdc++-v3: install-target-libstdc++-v3
 
-maintainer-clean-libgui: 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing maintainer-clean in libgui" ; \
-       (cd libgui && \
-         $(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
+install-target-libstdc++-v3: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-libiberty maintainer-clean-libiberty
-maybe-maintainer-clean-libiberty:
+# Other targets (info, dvi, etc.)
 
-maintainer-clean-libiberty: 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: maybe-info-target-libstdc++-v3 info-target-libstdc++-v3
+maybe-info-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-info-target-libstdc++-v3: info-target-libstdc++-v3
+
+info-target-libstdc++-v3: \
+    configure-target-libstdc++-v3 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in libiberty" ; \
-       (cd libiberty && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  info) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-libtool maintainer-clean-libtool
-maybe-maintainer-clean-libtool:
+.PHONY: maybe-dvi-target-libstdc++-v3 dvi-target-libstdc++-v3
+maybe-dvi-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-dvi-target-libstdc++-v3: dvi-target-libstdc++-v3
 
-maintainer-clean-libtool: 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-target-libstdc++-v3: \
+    configure-target-libstdc++-v3 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in libtool" ; \
-       (cd libtool && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  dvi) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-m4 maintainer-clean-m4
-maybe-maintainer-clean-m4:
+.PHONY: maybe-html-target-libstdc++-v3 html-target-libstdc++-v3
+maybe-html-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-html-target-libstdc++-v3: html-target-libstdc++-v3
 
-maintainer-clean-m4: 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-target-libstdc++-v3: \
+    configure-target-libstdc++-v3 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in m4" ; \
-       (cd m4 && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  html) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-make maintainer-clean-make
-maybe-maintainer-clean-make:
+.PHONY: maybe-TAGS-target-libstdc++-v3 TAGS-target-libstdc++-v3
+maybe-TAGS-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-TAGS-target-libstdc++-v3: TAGS-target-libstdc++-v3
 
-maintainer-clean-make: 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-target-libstdc++-v3: \
+    configure-target-libstdc++-v3 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in make" ; \
-       (cd make && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  TAGS) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-mmalloc maintainer-clean-mmalloc
-maybe-maintainer-clean-mmalloc:
+.PHONY: maybe-install-info-target-libstdc++-v3 install-info-target-libstdc++-v3
+maybe-install-info-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-install-info-target-libstdc++-v3: install-info-target-libstdc++-v3
 
-maintainer-clean-mmalloc: 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-target-libstdc++-v3: \
+    configure-target-libstdc++-v3 \
+    info-target-libstdc++-v3 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in mmalloc" ; \
-       (cd mmalloc && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  install-info) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-patch maintainer-clean-patch
-maybe-maintainer-clean-patch:
+.PHONY: maybe-installcheck-target-libstdc++-v3 installcheck-target-libstdc++-v3
+maybe-installcheck-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-installcheck-target-libstdc++-v3: installcheck-target-libstdc++-v3
 
-maintainer-clean-patch: 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-target-libstdc++-v3: \
+    configure-target-libstdc++-v3 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in patch" ; \
-       (cd patch && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  installcheck) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-perl maintainer-clean-perl
-maybe-maintainer-clean-perl:
+.PHONY: maybe-mostlyclean-target-libstdc++-v3 mostlyclean-target-libstdc++-v3
+maybe-mostlyclean-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-mostlyclean-target-libstdc++-v3: mostlyclean-target-libstdc++-v3
 
-maintainer-clean-perl: 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-target-libstdc++-v3: 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in perl" ; \
-       (cd perl && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  mostlyclean) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-prms maintainer-clean-prms
-maybe-maintainer-clean-prms:
+.PHONY: maybe-clean-target-libstdc++-v3 clean-target-libstdc++-v3
+maybe-clean-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-clean-target-libstdc++-v3: clean-target-libstdc++-v3
 
-maintainer-clean-prms: 
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-target-libstdc++-v3: 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in prms" ; \
-       (cd prms && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  clean) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-rcs maintainer-clean-rcs
-maybe-maintainer-clean-rcs:
+.PHONY: maybe-distclean-target-libstdc++-v3 distclean-target-libstdc++-v3
+maybe-distclean-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-distclean-target-libstdc++-v3: distclean-target-libstdc++-v3
 
-maintainer-clean-rcs: 
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-target-libstdc++-v3: 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in rcs" ; \
-       (cd rcs && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  distclean) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-readline maintainer-clean-readline
-maybe-maintainer-clean-readline:
+.PHONY: maybe-maintainer-clean-target-libstdc++-v3 maintainer-clean-target-libstdc++-v3
+maybe-maintainer-clean-target-libstdc++-v3:
+@if target-libstdc++-v3
+maybe-maintainer-clean-target-libstdc++-v3: maintainer-clean-target-libstdc++-v3
 
-maintainer-clean-readline: 
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-target-libstdc++-v3: 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in readline" ; \
-       (cd readline && \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
          $(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) \
+                  maintainer-clean) \
          || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: maybe-maintainer-clean-release maintainer-clean-release
-maybe-maintainer-clean-release:
 
-maintainer-clean-release: 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing maintainer-clean in release" ; \
-       (cd release && \
-         $(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) \
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libmudflap
+$(TARGET_SUBDIR)/libmudflap/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libmudflap ; \
+       rm -f $(TARGET_SUBDIR)/libmudflap/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libmudflap/multilib.out
+@endif target-libmudflap
+
+
+
+.PHONY: configure-target-libmudflap maybe-configure-target-libmudflap
+maybe-configure-target-libmudflap:
+@if target-libmudflap
+maybe-configure-target-libmudflap: configure-target-libmudflap
+configure-target-libmudflap: $(TARGET_SUBDIR)/libmudflap/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libmudflap/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libmudflap ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libmudflap; \
+       cd "$(TARGET_SUBDIR)/libmudflap" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libmudflap/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libmudflap"; \
+       libsrcdir="$$s/libmudflap"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libmudflap
 
 
-.PHONY: maybe-maintainer-clean-recode maintainer-clean-recode
-maybe-maintainer-clean-recode:
 
-maintainer-clean-recode: 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing maintainer-clean in recode" ; \
-       (cd recode && \
-         $(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
+.PHONY: all-target-libmudflap maybe-all-target-libmudflap
+maybe-all-target-libmudflap:
+@if target-libmudflap
+TARGET-target-libmudflap=all
+maybe-all-target-libmudflap: all-target-libmudflap
+all-target-libmudflap: configure-target-libmudflap
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libmudflap))
+@endif target-libmudflap
 
 
-.PHONY: maybe-maintainer-clean-sed maintainer-clean-sed
-maybe-maintainer-clean-sed:
 
-maintainer-clean-sed: 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing maintainer-clean in sed" ; \
-       (cd sed && \
-         $(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
+.PHONY: check-target-libmudflap maybe-check-target-libmudflap
+maybe-check-target-libmudflap:
+@if target-libmudflap
+maybe-check-target-libmudflap: check-target-libmudflap
 
+check-target-libmudflap:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
-.PHONY: maybe-maintainer-clean-send-pr maintainer-clean-send-pr
-maybe-maintainer-clean-send-pr:
+@endif target-libmudflap
 
-maintainer-clean-send-pr: 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+.PHONY: install-target-libmudflap maybe-install-target-libmudflap
+maybe-install-target-libmudflap:
+@if target-libmudflap
+maybe-install-target-libmudflap: install-target-libmudflap
+
+install-target-libmudflap: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
+
+@endif target-libmudflap
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-target-libmudflap info-target-libmudflap
+maybe-info-target-libmudflap:
+@if target-libmudflap
+maybe-info-target-libmudflap: info-target-libmudflap
+
+info-target-libmudflap: \
+    configure-target-libmudflap 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in send-pr" ; \
-       (cd send-pr && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  info) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-shellutils maintainer-clean-shellutils
-maybe-maintainer-clean-shellutils:
+.PHONY: maybe-dvi-target-libmudflap dvi-target-libmudflap
+maybe-dvi-target-libmudflap:
+@if target-libmudflap
+maybe-dvi-target-libmudflap: dvi-target-libmudflap
 
-maintainer-clean-shellutils: 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-target-libmudflap: \
+    configure-target-libmudflap 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in shellutils" ; \
-       (cd shellutils && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  dvi) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-sid maintainer-clean-sid
-maybe-maintainer-clean-sid:
+.PHONY: maybe-html-target-libmudflap html-target-libmudflap
+maybe-html-target-libmudflap:
+@if target-libmudflap
+maybe-html-target-libmudflap: html-target-libmudflap
 
-maintainer-clean-sid: 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-target-libmudflap: \
+    configure-target-libmudflap 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in sid" ; \
-       (cd sid && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  html) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-sim maintainer-clean-sim
-maybe-maintainer-clean-sim:
+.PHONY: maybe-TAGS-target-libmudflap TAGS-target-libmudflap
+maybe-TAGS-target-libmudflap:
+@if target-libmudflap
+maybe-TAGS-target-libmudflap: TAGS-target-libmudflap
 
-maintainer-clean-sim: 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-target-libmudflap: \
+    configure-target-libmudflap 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in sim" ; \
-       (cd sim && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  TAGS) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-tar maintainer-clean-tar
-maybe-maintainer-clean-tar:
+.PHONY: maybe-install-info-target-libmudflap install-info-target-libmudflap
+maybe-install-info-target-libmudflap:
+@if target-libmudflap
+maybe-install-info-target-libmudflap: install-info-target-libmudflap
 
-maintainer-clean-tar: 
-       @[ -f ./tar/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-target-libmudflap: \
+    configure-target-libmudflap \
+    info-target-libmudflap 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in tar" ; \
-       (cd tar && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  install-info) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-texinfo maintainer-clean-texinfo
-maybe-maintainer-clean-texinfo:
+.PHONY: maybe-installcheck-target-libmudflap installcheck-target-libmudflap
+maybe-installcheck-target-libmudflap:
+@if target-libmudflap
+maybe-installcheck-target-libmudflap: installcheck-target-libmudflap
 
-maintainer-clean-texinfo: 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-target-libmudflap: \
+    configure-target-libmudflap 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in texinfo" ; \
-       (cd texinfo && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  installcheck) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-textutils maintainer-clean-textutils
-maybe-maintainer-clean-textutils:
+.PHONY: maybe-mostlyclean-target-libmudflap mostlyclean-target-libmudflap
+maybe-mostlyclean-target-libmudflap:
+@if target-libmudflap
+maybe-mostlyclean-target-libmudflap: mostlyclean-target-libmudflap
 
-maintainer-clean-textutils: 
-       @[ -f ./textutils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-target-libmudflap: 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in textutils" ; \
-       (cd textutils && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  mostlyclean) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-time maintainer-clean-time
-maybe-maintainer-clean-time:
+.PHONY: maybe-clean-target-libmudflap clean-target-libmudflap
+maybe-clean-target-libmudflap:
+@if target-libmudflap
+maybe-clean-target-libmudflap: clean-target-libmudflap
 
-maintainer-clean-time: 
-       @[ -f ./time/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-target-libmudflap: 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in time" ; \
-       (cd time && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  clean) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-uudecode maintainer-clean-uudecode
-maybe-maintainer-clean-uudecode:
+.PHONY: maybe-distclean-target-libmudflap distclean-target-libmudflap
+maybe-distclean-target-libmudflap:
+@if target-libmudflap
+maybe-distclean-target-libmudflap: distclean-target-libmudflap
 
-maintainer-clean-uudecode: 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+distclean-target-libmudflap: 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in uudecode" ; \
-       (cd uudecode && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  distclean) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-wdiff maintainer-clean-wdiff
-maybe-maintainer-clean-wdiff:
+.PHONY: maybe-maintainer-clean-target-libmudflap maintainer-clean-target-libmudflap
+maybe-maintainer-clean-target-libmudflap:
+@if target-libmudflap
+maybe-maintainer-clean-target-libmudflap: maintainer-clean-target-libmudflap
 
-maintainer-clean-wdiff: 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+maintainer-clean-target-libmudflap: 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libmudflap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in wdiff" ; \
-       (cd wdiff && \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
          $(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) \
+                  maintainer-clean) \
          || exit 1
 
+@endif target-libmudflap
 
-.PHONY: maybe-maintainer-clean-zip maintainer-clean-zip
-maybe-maintainer-clean-zip:
 
-maintainer-clean-zip: 
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-newlib
+$(TARGET_SUBDIR)/newlib/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/newlib ; \
+       rm -f $(TARGET_SUBDIR)/newlib/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/newlib/multilib.out
+@endif target-newlib
+
+
+
+.PHONY: configure-target-newlib maybe-configure-target-newlib
+maybe-configure-target-newlib:
+@if target-newlib
+maybe-configure-target-newlib: configure-target-newlib
+configure-target-newlib: $(TARGET_SUBDIR)/newlib/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/newlib/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/newlib ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/newlib; \
+       cd "$(TARGET_SUBDIR)/newlib" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/newlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/newlib"; \
+       libsrcdir="$$s/newlib"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif target-newlib
+
+
+
+.PHONY: all-target-newlib maybe-all-target-newlib
+maybe-all-target-newlib:
+@if target-newlib
+TARGET-target-newlib=all
+maybe-all-target-newlib: all-target-newlib
+all-target-newlib: configure-target-newlib
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/newlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-newlib))
+@endif target-newlib
+
+
+
+.PHONY: check-target-newlib maybe-check-target-newlib
+maybe-check-target-newlib:
+@if target-newlib
+maybe-check-target-newlib: check-target-newlib
+
+check-target-newlib:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/newlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
+
+@endif target-newlib
+
+.PHONY: install-target-newlib maybe-install-target-newlib
+maybe-install-target-newlib:
+@if target-newlib
+maybe-install-target-newlib: install-target-newlib
+
+install-target-newlib: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/newlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
+
+@endif target-newlib
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-target-newlib info-target-newlib
+maybe-info-target-newlib:
+@if target-newlib
+maybe-info-target-newlib: info-target-newlib
+
+info-target-newlib: \
+    configure-target-newlib 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/newlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in zip" ; \
-       (cd zip && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  info) \
          || exit 1
 
+@endif target-newlib
 
-.PHONY: maybe-maintainer-clean-zlib maintainer-clean-zlib
-maybe-maintainer-clean-zlib:
+.PHONY: maybe-dvi-target-newlib dvi-target-newlib
+maybe-dvi-target-newlib:
+@if target-newlib
+maybe-dvi-target-newlib: dvi-target-newlib
 
-maintainer-clean-zlib: 
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+dvi-target-newlib: \
+    configure-target-newlib 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/newlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in zlib" ; \
-       (cd zlib && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  dvi) \
          || exit 1
 
+@endif target-newlib
 
-.PHONY: maybe-maintainer-clean-gdb maintainer-clean-gdb
-maybe-maintainer-clean-gdb:
+.PHONY: maybe-html-target-newlib html-target-newlib
+maybe-html-target-newlib:
+@if target-newlib
+maybe-html-target-newlib: html-target-newlib
 
-maintainer-clean-gdb: 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+html-target-newlib: \
+    configure-target-newlib 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/newlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in gdb" ; \
-       (cd gdb && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  html) \
          || exit 1
 
+@endif target-newlib
 
-.PHONY: maybe-maintainer-clean-expect maintainer-clean-expect
-maybe-maintainer-clean-expect:
+.PHONY: maybe-TAGS-target-newlib TAGS-target-newlib
+maybe-TAGS-target-newlib:
+@if target-newlib
+maybe-TAGS-target-newlib: TAGS-target-newlib
 
-maintainer-clean-expect: 
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+TAGS-target-newlib: \
+    configure-target-newlib 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/newlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in expect" ; \
-       (cd expect && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  TAGS) \
          || exit 1
 
+@endif target-newlib
 
-.PHONY: maybe-maintainer-clean-guile maintainer-clean-guile
-maybe-maintainer-clean-guile:
+.PHONY: maybe-install-info-target-newlib install-info-target-newlib
+maybe-install-info-target-newlib:
+@if target-newlib
+maybe-install-info-target-newlib: install-info-target-newlib
 
-maintainer-clean-guile: 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+install-info-target-newlib: \
+    configure-target-newlib \
+    info-target-newlib 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/newlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in guile" ; \
-       (cd guile && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  install-info) \
          || exit 1
 
+@endif target-newlib
 
-.PHONY: maybe-maintainer-clean-tk maintainer-clean-tk
-maybe-maintainer-clean-tk:
+.PHONY: maybe-installcheck-target-newlib installcheck-target-newlib
+maybe-installcheck-target-newlib:
+@if target-newlib
+maybe-installcheck-target-newlib: installcheck-target-newlib
 
-maintainer-clean-tk: 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+installcheck-target-newlib: \
+    configure-target-newlib 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/newlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in tk" ; \
-       (cd tk && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  installcheck) \
          || exit 1
 
+@endif target-newlib
 
-.PHONY: maybe-maintainer-clean-tix maintainer-clean-tix
-maybe-maintainer-clean-tix:
+.PHONY: maybe-mostlyclean-target-newlib mostlyclean-target-newlib
+maybe-mostlyclean-target-newlib:
+@if target-newlib
+maybe-mostlyclean-target-newlib: mostlyclean-target-newlib
 
-maintainer-clean-tix: 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+mostlyclean-target-newlib: 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/newlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in tix" ; \
-       (cd tix && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  mostlyclean) \
          || exit 1
 
+@endif target-newlib
 
-.PHONY: maybe-maintainer-clean-libtermcap maintainer-clean-libtermcap
-maybe-maintainer-clean-libtermcap:
-
-# libtermcap doesn't support maintainer-clean.
-maintainer-clean-libtermcap:
-
-
-.PHONY: maybe-maintainer-clean-utils maintainer-clean-utils
-maybe-maintainer-clean-utils:
+.PHONY: maybe-clean-target-newlib clean-target-newlib
+maybe-clean-target-newlib:
+@if target-newlib
+maybe-clean-target-newlib: clean-target-newlib
 
-maintainer-clean-utils: 
-       @[ -f ./utils/Makefile ] || exit 0; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+clean-target-newlib: 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/newlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing maintainer-clean in utils" ; \
-       (cd utils && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  clean) \
          || exit 1
 
+@endif target-newlib
 
+.PHONY: maybe-distclean-target-newlib distclean-target-newlib
+maybe-distclean-target-newlib:
+@if target-newlib
+maybe-distclean-target-newlib: distclean-target-newlib
 
-# Target modules.
-
-.PHONY: maybe-maintainer-clean-target-libstdc++-v3 maintainer-clean-target-libstdc++-v3
-maybe-maintainer-clean-target-libstdc++-v3:
-
-maintainer-clean-target-libstdc++-v3: 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
+distclean-target-newlib: 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/newlib" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+       (cd $(TARGET_SUBDIR)/newlib && \
          $(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) \
+                  distclean) \
          || exit 1
 
+@endif target-newlib
 
 .PHONY: maybe-maintainer-clean-target-newlib maintainer-clean-target-newlib
 maybe-maintainer-clean-target-newlib:
+@if target-newlib
+maybe-maintainer-clean-target-newlib: maintainer-clean-target-newlib
 
 maintainer-clean-target-newlib: 
        @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
        echo "Doing maintainer-clean in $(TARGET_SUBDIR)/newlib" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
@@ -16958,6905 +24705,10102 @@ maintainer-clean-target-newlib:
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
                  "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 maintainer-clean) \
+                  maintainer-clean) \
+         || exit 1
+
+@endif target-newlib
+
+
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libgfortran
+$(TARGET_SUBDIR)/libgfortran/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgfortran ; \
+       rm -f $(TARGET_SUBDIR)/libgfortran/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libgfortran/multilib.out
+@endif target-libgfortran
+
+
+
+.PHONY: configure-target-libgfortran maybe-configure-target-libgfortran
+maybe-configure-target-libgfortran:
+@if target-libgfortran
+maybe-configure-target-libgfortran: configure-target-libgfortran
+configure-target-libgfortran: $(TARGET_SUBDIR)/libgfortran/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libgfortran/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgfortran ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libgfortran; \
+       cd "$(TARGET_SUBDIR)/libgfortran" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libgfortran/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libgfortran"; \
+       libsrcdir="$$s/libgfortran"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libgfortran
+
+
+
+.PHONY: all-target-libgfortran maybe-all-target-libgfortran
+maybe-all-target-libgfortran:
+@if target-libgfortran
+TARGET-target-libgfortran=all
+maybe-all-target-libgfortran: all-target-libgfortran
+all-target-libgfortran: configure-target-libgfortran
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libgfortran))
+@endif target-libgfortran
+
 
 
-.PHONY: maybe-maintainer-clean-target-libf2c maintainer-clean-target-libf2c
-maybe-maintainer-clean-target-libf2c:
+.PHONY: check-target-libgfortran maybe-check-target-libgfortran
+maybe-check-target-libgfortran:
+@if target-libgfortran
+maybe-check-target-libgfortran: check-target-libgfortran
 
-maintainer-clean-target-libf2c: 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libf2c" ; \
+check-target-libgfortran:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
+
+@endif target-libgfortran
+
+.PHONY: install-target-libgfortran maybe-install-target-libgfortran
+maybe-install-target-libgfortran:
+@if target-libgfortran
+maybe-install-target-libgfortran: install-target-libgfortran
+
+install-target-libgfortran: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
+
+@endif target-libgfortran
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-target-libgfortran info-target-libgfortran
+maybe-info-target-libgfortran:
+@if target-libgfortran
+maybe-info-target-libgfortran: info-target-libgfortran
+
+info-target-libgfortran: \
+    configure-target-libgfortran 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  info) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-libobjc maintainer-clean-target-libobjc
-maybe-maintainer-clean-target-libobjc:
+.PHONY: maybe-dvi-target-libgfortran dvi-target-libgfortran
+maybe-dvi-target-libgfortran:
+@if target-libgfortran
+maybe-dvi-target-libgfortran: dvi-target-libgfortran
 
-maintainer-clean-target-libobjc: 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libobjc" ; \
+dvi-target-libgfortran: \
+    configure-target-libgfortran 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libobjc && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  dvi) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-libtermcap maintainer-clean-target-libtermcap
-maybe-maintainer-clean-target-libtermcap:
-
-# libtermcap doesn't support maintainer-clean.
-maintainer-clean-target-libtermcap:
-
-
-.PHONY: maybe-maintainer-clean-target-winsup maintainer-clean-target-winsup
-maybe-maintainer-clean-target-winsup:
+.PHONY: maybe-html-target-libgfortran html-target-libgfortran
+maybe-html-target-libgfortran:
+@if target-libgfortran
+maybe-html-target-libgfortran: html-target-libgfortran
 
-maintainer-clean-target-winsup: 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/winsup" ; \
+html-target-libgfortran: \
+    configure-target-libgfortran 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/winsup && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  html) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-libgloss maintainer-clean-target-libgloss
-maybe-maintainer-clean-target-libgloss:
+.PHONY: maybe-TAGS-target-libgfortran TAGS-target-libgfortran
+maybe-TAGS-target-libgfortran:
+@if target-libgfortran
+maybe-TAGS-target-libgfortran: TAGS-target-libgfortran
 
-maintainer-clean-target-libgloss: 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgloss" ; \
+TAGS-target-libgfortran: \
+    configure-target-libgfortran 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libgloss && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  TAGS) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-libiberty maintainer-clean-target-libiberty
-maybe-maintainer-clean-target-libiberty:
+.PHONY: maybe-install-info-target-libgfortran install-info-target-libgfortran
+maybe-install-info-target-libgfortran:
+@if target-libgfortran
+maybe-install-info-target-libgfortran: install-info-target-libgfortran
 
-maintainer-clean-target-libiberty: 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libiberty" ; \
+install-info-target-libgfortran: \
+    configure-target-libgfortran \
+    info-target-libgfortran 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libiberty && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  install-info) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-gperf maintainer-clean-target-gperf
-maybe-maintainer-clean-target-gperf:
+.PHONY: maybe-installcheck-target-libgfortran installcheck-target-libgfortran
+maybe-installcheck-target-libgfortran:
+@if target-libgfortran
+maybe-installcheck-target-libgfortran: installcheck-target-libgfortran
 
-maintainer-clean-target-gperf: 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/gperf" ; \
+installcheck-target-libgfortran: \
+    configure-target-libgfortran 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/gperf && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  installcheck) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-examples maintainer-clean-target-examples
-maybe-maintainer-clean-target-examples:
-
-maintainer-clean-target-examples: 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/examples" ; \
+.PHONY: maybe-mostlyclean-target-libgfortran mostlyclean-target-libgfortran
+maybe-mostlyclean-target-libgfortran:
+@if target-libgfortran
+maybe-mostlyclean-target-libgfortran: mostlyclean-target-libgfortran
+
+mostlyclean-target-libgfortran: 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/examples && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  mostlyclean) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-libffi maintainer-clean-target-libffi
-maybe-maintainer-clean-target-libffi:
+.PHONY: maybe-clean-target-libgfortran clean-target-libgfortran
+maybe-clean-target-libgfortran:
+@if target-libgfortran
+maybe-clean-target-libgfortran: clean-target-libgfortran
 
-maintainer-clean-target-libffi
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libffi" ; \
+clean-target-libgfortran
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libffi && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  clean) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-libjava maintainer-clean-target-libjava
-maybe-maintainer-clean-target-libjava:
+.PHONY: maybe-distclean-target-libgfortran distclean-target-libgfortran
+maybe-distclean-target-libgfortran:
+@if target-libgfortran
+maybe-distclean-target-libgfortran: distclean-target-libgfortran
 
-maintainer-clean-target-libjava
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libjava" ; \
+distclean-target-libgfortran
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/libjava && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  distclean) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-zlib maintainer-clean-target-zlib
-maybe-maintainer-clean-target-zlib:
+.PHONY: maybe-maintainer-clean-target-libgfortran maintainer-clean-target-libgfortran
+maybe-maintainer-clean-target-libgfortran:
+@if target-libgfortran
+maybe-maintainer-clean-target-libgfortran: maintainer-clean-target-libgfortran
 
-maintainer-clean-target-zlib
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/zlib" ; \
+maintainer-clean-target-libgfortran
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgfortran" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/zlib && \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
          $(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) \
+                  maintainer-clean) \
          || exit 1
 
+@endif target-libgfortran
 
-.PHONY: maybe-maintainer-clean-target-boehm-gc maintainer-clean-target-boehm-gc
-maybe-maintainer-clean-target-boehm-gc:
 
-maintainer-clean-target-boehm-gc: 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/boehm-gc" ; \
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libobjc
+$(TARGET_SUBDIR)/libobjc/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libobjc ; \
+       rm -f $(TARGET_SUBDIR)/libobjc/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libobjc/multilib.out
+@endif target-libobjc
+
+
+
+.PHONY: configure-target-libobjc maybe-configure-target-libobjc
+maybe-configure-target-libobjc:
+@if target-libobjc
+maybe-configure-target-libobjc: configure-target-libobjc
+configure-target-libobjc: $(TARGET_SUBDIR)/libobjc/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libobjc/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libobjc ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libobjc; \
+       cd "$(TARGET_SUBDIR)/libobjc" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libobjc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libobjc"; \
+       libsrcdir="$$s/libobjc"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif target-libobjc
+
+
+
+.PHONY: all-target-libobjc maybe-all-target-libobjc
+maybe-all-target-libobjc:
+@if target-libobjc
+TARGET-target-libobjc=all
+maybe-all-target-libobjc: all-target-libobjc
+all-target-libobjc: configure-target-libobjc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libobjc))
+@endif target-libobjc
+
+
+
+.PHONY: check-target-libobjc maybe-check-target-libobjc
+maybe-check-target-libobjc:
+@if target-libobjc
+maybe-check-target-libobjc: check-target-libobjc
+
+check-target-libobjc:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
+
+@endif target-libobjc
+
+.PHONY: install-target-libobjc maybe-install-target-libobjc
+maybe-install-target-libobjc:
+@if target-libobjc
+maybe-install-target-libobjc: install-target-libobjc
+
+install-target-libobjc: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
+
+@endif target-libobjc
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-target-libobjc info-target-libobjc
+maybe-info-target-libobjc:
+@if target-libobjc
+maybe-info-target-libobjc: info-target-libobjc
+
+info-target-libobjc: \
+    configure-target-libobjc 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libobjc" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
+       (cd $(TARGET_SUBDIR)/libobjc && \
          $(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) \
+                  info) \
          || exit 1
 
+@endif target-libobjc
 
-.PHONY: maybe-maintainer-clean-target-qthreads maintainer-clean-target-qthreads
-maybe-maintainer-clean-target-qthreads:
+.PHONY: maybe-dvi-target-libobjc dvi-target-libobjc
+maybe-dvi-target-libobjc:
+@if target-libobjc
+maybe-dvi-target-libobjc: dvi-target-libobjc
 
-maintainer-clean-target-qthreads: 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/qthreads" ; \
+dvi-target-libobjc: \
+    configure-target-libobjc 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libobjc" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/qthreads && \
+       (cd $(TARGET_SUBDIR)/libobjc && \
          $(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) \
+                  dvi) \
          || exit 1
 
+@endif target-libobjc
 
-.PHONY: maybe-maintainer-clean-target-rda maintainer-clean-target-rda
-maybe-maintainer-clean-target-rda:
+.PHONY: maybe-html-target-libobjc html-target-libobjc
+maybe-html-target-libobjc:
+@if target-libobjc
+maybe-html-target-libobjc: html-target-libobjc
 
-maintainer-clean-target-rda: 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/rda" ; \
+html-target-libobjc: \
+    configure-target-libobjc 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libobjc" ; \
        for flag in $(EXTRA_TARGET_FLAGS); do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       (cd $(TARGET_SUBDIR)/rda && \
+       (cd $(TARGET_SUBDIR)/libobjc && \
          $(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) \
+                  html) \
          || exit 1
 
+@endif target-libobjc
 
+.PHONY: maybe-TAGS-target-libobjc TAGS-target-libobjc
+maybe-TAGS-target-libobjc:
+@if target-libobjc
+maybe-TAGS-target-libobjc: TAGS-target-libobjc
 
+TAGS-target-libobjc: \
+    configure-target-libobjc 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libobjc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(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
 
-# Here are the targets which correspond to the do-X targets.
-
-.PHONY: info installcheck dvi install-info
-.PHONY: clean distclean mostlyclean maintainer-clean realclean
-.PHONY: local-clean local-distclean local-maintainer-clean
-info: do-info
-installcheck: do-installcheck
-dvi: do-dvi
-
-# Make sure makeinfo is built before we do a `make info', if we're
-# in fact building texinfo.
-do-info: maybe-all-texinfo
-
-install-info: do-install-info dir.info
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       if [ -f dir.info ] ; then \
-         $(INSTALL_DATA) dir.info $(DESTDIR)$(infodir)/dir.info ; \
-       else true ; fi
-
-local-clean:
-       -rm -f *.a TEMP errs core *.o *~ \#* TAGS *.E *.log
-
-local-distclean:
-       -rm -f Makefile config.status config.cache mh-frag mt-frag
-       -rm -f multilib.out multilib.tmp maybedep.tmp serdep.tmp
-       -if [ "$(TARGET_SUBDIR)" != "." ]; then \
-         rm -rf $(TARGET_SUBDIR); \
-       else true; fi
-       -rm -rf $(BUILD_SUBDIR)
-       -rm -f texinfo/po/Makefile texinfo/po/Makefile.in texinfo/info/Makefile
-       -rm -f texinfo/doc/Makefile texinfo/po/POTFILES
-       -rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null
-       -rmdir texinfo/makeinfo texinfo/po texinfo/util 2>/dev/null
-       -rmdir fastjar gcc libiberty texinfo zlib 2>/dev/null
-
-local-maintainer-clean:
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
-
-clean: do-clean local-clean
-mostlyclean: do-mostlyclean local-clean
-distclean: do-distclean local-clean local-distclean
-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
-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
-
-# Check target.
-
-.PHONY: check do-check
-check:
-       $(MAKE) do-check NOTPARALLEL=parallel-ok
-
-# Only include modules actually being configured and built.
-do-check: maybe-check-gcc  \
-    maybe-check-ash \
-    maybe-check-autoconf \
-    maybe-check-automake \
-    maybe-check-bash \
-    maybe-check-bfd \
-    maybe-check-opcodes \
-    maybe-check-binutils \
-    maybe-check-bison \
-    maybe-check-byacc \
-    maybe-check-bzip2 \
-    maybe-check-dejagnu \
-    maybe-check-diff \
-    maybe-check-dosutils \
-    maybe-check-etc \
-    maybe-check-fastjar \
-    maybe-check-fileutils \
-    maybe-check-findutils \
-    maybe-check-find \
-    maybe-check-flex \
-    maybe-check-gas \
-    maybe-check-gawk \
-    maybe-check-gettext \
-    maybe-check-gnuserv \
-    maybe-check-gprof \
-    maybe-check-gzip \
-    maybe-check-hello \
-    maybe-check-indent \
-    maybe-check-intl \
-    maybe-check-tcl \
-    maybe-check-itcl \
-    maybe-check-ld \
-    maybe-check-libgui \
-    maybe-check-libiberty \
-    maybe-check-libtool \
-    maybe-check-m4 \
-    maybe-check-make \
-    maybe-check-mmalloc \
-    maybe-check-patch \
-    maybe-check-perl \
-    maybe-check-prms \
-    maybe-check-rcs \
-    maybe-check-readline \
-    maybe-check-release \
-    maybe-check-recode \
-    maybe-check-sed \
-    maybe-check-send-pr \
-    maybe-check-shellutils \
-    maybe-check-sid \
-    maybe-check-sim \
-    maybe-check-tar \
-    maybe-check-texinfo \
-    maybe-check-textutils \
-    maybe-check-time \
-    maybe-check-uudecode \
-    maybe-check-wdiff \
-    maybe-check-zip \
-    maybe-check-zlib \
-    maybe-check-gdb \
-    maybe-check-expect \
-    maybe-check-guile \
-    maybe-check-tk \
-    maybe-check-tix \
-    maybe-check-libtermcap \
-    maybe-check-utils \
-    maybe-check-target-libstdc++-v3 \
-    maybe-check-target-newlib \
-    maybe-check-target-libf2c \
-    maybe-check-target-libobjc \
-    maybe-check-target-libtermcap \
-    maybe-check-target-winsup \
-    maybe-check-target-libgloss \
-    maybe-check-target-libiberty \
-    maybe-check-target-gperf \
-    maybe-check-target-examples \
-    maybe-check-target-libffi \
-    maybe-check-target-libjava \
-    maybe-check-target-zlib \
-    maybe-check-target-boehm-gc \
-    maybe-check-target-qthreads \
-    maybe-check-target-rda
-
-# Automated reporting of test results.
+@endif target-libobjc
 
-warning.log: build.log
-       $(srcdir)/contrib/warn_summary build.log > $@
+.PHONY: maybe-install-info-target-libobjc install-info-target-libobjc
+maybe-install-info-target-libobjc:
+@if target-libobjc
+maybe-install-info-target-libobjc: install-info-target-libobjc
 
-mail-report.log:
-       if test x'$(BOOT_CFLAGS)' != x''; then \
-           BOOT_CFLAGS='$(BOOT_CFLAGS)'; export BOOT_CFLAGS; \
-       fi; \
-       $(srcdir)/contrib/test_summary -t >$@
-       chmod +x $@
-       echo If you really want to send e-mail, run ./$@ now
+install-info-target-libobjc: \
+    configure-target-libobjc \
+    info-target-libobjc 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libobjc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(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
 
-mail-report-with-warnings.log: warning.log
-       if test x'$(BOOT_CFLAGS)' != x''; then \
-           BOOT_CFLAGS='$(BOOT_CFLAGS)'; export BOOT_CFLAGS; \
-       fi; \
-       $(srcdir)/contrib/test_summary -t -i warning.log >$@
-       chmod +x $@
-       echo If you really want to send e-mail, run ./$@ now
+@endif target-libobjc
 
-# Installation targets.
+.PHONY: maybe-installcheck-target-libobjc installcheck-target-libobjc
+maybe-installcheck-target-libobjc:
+@if target-libobjc
+maybe-installcheck-target-libobjc: installcheck-target-libobjc
 
-.PHONY: install uninstall
-install: installdirs install-host install-target
+installcheck-target-libobjc: \
+    configure-target-libobjc 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libobjc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(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
 
-.PHONY: install-host-nogcc
-install-host-nogcc:  \
-    maybe-install-ash \
-    maybe-install-autoconf \
-    maybe-install-automake \
-    maybe-install-bash \
-    maybe-install-bfd \
-    maybe-install-opcodes \
-    maybe-install-binutils \
-    maybe-install-bison \
-    maybe-install-byacc \
-    maybe-install-bzip2 \
-    maybe-install-dejagnu \
-    maybe-install-diff \
-    maybe-install-dosutils \
-    maybe-install-etc \
-    maybe-install-fastjar \
-    maybe-install-fileutils \
-    maybe-install-findutils \
-    maybe-install-find \
-    maybe-install-flex \
-    maybe-install-gas \
-    maybe-install-gawk \
-    maybe-install-gettext \
-    maybe-install-gnuserv \
-    maybe-install-gprof \
-    maybe-install-gzip \
-    maybe-install-hello \
-    maybe-install-indent \
-    maybe-install-intl \
-    maybe-install-tcl \
-    maybe-install-itcl \
-    maybe-install-ld \
-    maybe-install-libgui \
-    maybe-install-libiberty \
-    maybe-install-libtool \
-    maybe-install-m4 \
-    maybe-install-make \
-    maybe-install-mmalloc \
-    maybe-install-patch \
-    maybe-install-perl \
-    maybe-install-prms \
-    maybe-install-rcs \
-    maybe-install-readline \
-    maybe-install-release \
-    maybe-install-recode \
-    maybe-install-sed \
-    maybe-install-send-pr \
-    maybe-install-shellutils \
-    maybe-install-sid \
-    maybe-install-sim \
-    maybe-install-tar \
-    maybe-install-texinfo \
-    maybe-install-textutils \
-    maybe-install-time \
-    maybe-install-uudecode \
-    maybe-install-wdiff \
-    maybe-install-zip \
-    maybe-install-zlib \
-    maybe-install-gdb \
-    maybe-install-expect \
-    maybe-install-guile \
-    maybe-install-tk \
-    maybe-install-tix \
-    maybe-install-libtermcap \
-    maybe-install-utils
+@endif target-libobjc
 
-.PHONY: install-host
-install-host: maybe-install-gcc  \
-    maybe-install-ash \
-    maybe-install-autoconf \
-    maybe-install-automake \
-    maybe-install-bash \
-    maybe-install-bfd \
-    maybe-install-opcodes \
-    maybe-install-binutils \
-    maybe-install-bison \
-    maybe-install-byacc \
-    maybe-install-bzip2 \
-    maybe-install-dejagnu \
-    maybe-install-diff \
-    maybe-install-dosutils \
-    maybe-install-etc \
-    maybe-install-fastjar \
-    maybe-install-fileutils \
-    maybe-install-findutils \
-    maybe-install-find \
-    maybe-install-flex \
-    maybe-install-gas \
-    maybe-install-gawk \
-    maybe-install-gettext \
-    maybe-install-gnuserv \
-    maybe-install-gprof \
-    maybe-install-gzip \
-    maybe-install-hello \
-    maybe-install-indent \
-    maybe-install-intl \
-    maybe-install-tcl \
-    maybe-install-itcl \
-    maybe-install-ld \
-    maybe-install-libgui \
-    maybe-install-libiberty \
-    maybe-install-libtool \
-    maybe-install-m4 \
-    maybe-install-make \
-    maybe-install-mmalloc \
-    maybe-install-patch \
-    maybe-install-perl \
-    maybe-install-prms \
-    maybe-install-rcs \
-    maybe-install-readline \
-    maybe-install-release \
-    maybe-install-recode \
-    maybe-install-sed \
-    maybe-install-send-pr \
-    maybe-install-shellutils \
-    maybe-install-sid \
-    maybe-install-sim \
-    maybe-install-tar \
-    maybe-install-texinfo \
-    maybe-install-textutils \
-    maybe-install-time \
-    maybe-install-uudecode \
-    maybe-install-wdiff \
-    maybe-install-zip \
-    maybe-install-zlib \
-    maybe-install-gdb \
-    maybe-install-expect \
-    maybe-install-guile \
-    maybe-install-tk \
-    maybe-install-tix \
-    maybe-install-libtermcap \
-    maybe-install-utils
+.PHONY: maybe-mostlyclean-target-libobjc mostlyclean-target-libobjc
+maybe-mostlyclean-target-libobjc:
+@if target-libobjc
+maybe-mostlyclean-target-libobjc: mostlyclean-target-libobjc
 
-.PHONY: install-target
-install-target:  \
-    maybe-install-target-libstdc++-v3 \
-    maybe-install-target-newlib \
-    maybe-install-target-libf2c \
-    maybe-install-target-libobjc \
-    maybe-install-target-libtermcap \
-    maybe-install-target-winsup \
-    maybe-install-target-libgloss \
-    maybe-install-target-libiberty \
-    maybe-install-target-gperf \
-    maybe-install-target-examples \
-    maybe-install-target-libffi \
-    maybe-install-target-libjava \
-    maybe-install-target-zlib \
-    maybe-install-target-boehm-gc \
-    maybe-install-target-qthreads \
-    maybe-install-target-rda
+mostlyclean-target-libobjc: 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libobjc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(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
 
-uninstall:
-       @echo "the uninstall target is not supported in this tree"
+@endif target-libobjc
 
-.PHONY: install.all
-install.all: install-no-fixedincludes
-       @if [ -f ./gcc/Makefile ] ; then \
-               r=`${PWD}` ; export r ; \
-               $(SET_LIB_PATH) \
-               (cd ./gcc && \
-               $(MAKE) $(FLAGS_TO_PASS) install-headers) ; \
-       else \
-               true ; \
-       fi
+.PHONY: maybe-clean-target-libobjc clean-target-libobjc
+maybe-clean-target-libobjc:
+@if target-libobjc
+maybe-clean-target-libobjc: clean-target-libobjc
 
-# install-no-fixedincludes is used because Cygnus can not distribute
-# the fixed header files.
-.PHONY: install-no-fixedincludes
-install-no-fixedincludes: installdirs install-host-nogcc \
-       install-target gcc-no-fixedincludes
+clean-target-libobjc: 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libobjc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(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 target-libobjc
+
+.PHONY: maybe-distclean-target-libobjc distclean-target-libobjc
+maybe-distclean-target-libobjc:
+@if target-libobjc
+maybe-distclean-target-libobjc: distclean-target-libobjc
+
+distclean-target-libobjc: 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libobjc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(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 target-libobjc
 
-### other supporting targets
+.PHONY: maybe-maintainer-clean-target-libobjc maintainer-clean-target-libobjc
+maybe-maintainer-clean-target-libobjc:
+@if target-libobjc
+maybe-maintainer-clean-target-libobjc: maintainer-clean-target-libobjc
 
-MAKEDIRS= \
-       $(DESTDIR)$(prefix) \
-       $(DESTDIR)$(exec_prefix)
-.PHONY: installdirs
-installdirs: mkinstalldirs
-       $(SHELL) $(srcdir)/mkinstalldirs $(MAKEDIRS)
+maintainer-clean-target-libobjc: 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libobjc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(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
 
-dir.info: do-install-info
-       if [ -f $(srcdir)/texinfo/gen-info-dir ] ; then \
-         $(srcdir)/texinfo/gen-info-dir $(DESTDIR)$(infodir) $(srcdir)/texinfo/dir.info-template > dir.info.new ; \
-         mv -f dir.info.new dir.info ; \
-       else true ; \
-       fi
+@endif target-libobjc
 
-dist:
-       @echo "Building a full distribution of this tree isn't done"
-       @echo "via 'make dist'.  Check out the etc/ subdirectory" 
 
-etags tags: TAGS
 
-# Right now this just builds TAGS in each subdirectory.  emacs19 has the
-# ability to use several tags files at once, so there is probably no need
-# to combine them into one big TAGS file (like CVS 1.3 does).  We could
-# (if we felt like it) have this Makefile write a piece of elisp which
-# the user could load to tell emacs19 where all the TAGS files we just
-# built are.
-TAGS: do-TAGS
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libtermcap
+$(TARGET_SUBDIR)/libtermcap/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libtermcap ; \
+       rm -f $(TARGET_SUBDIR)/libtermcap/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libtermcap/multilib.out
+@endif target-libtermcap
 
-# --------------------------------------
-# Modules which run on the build machine
-# --------------------------------------
 
-.PHONY: configure-build-libiberty maybe-configure-build-libiberty
-maybe-configure-build-libiberty:
-configure-build-libiberty:
-       @test ! -f $(BUILD_SUBDIR)/libiberty/Makefile || exit 0; \
-       [ -d $(BUILD_SUBDIR)/libiberty ] || \
-         mkdir $(BUILD_SUBDIR)/libiberty;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       AR="$(AR_FOR_BUILD)"; export AR; \
-       AS="$(AS_FOR_BUILD)"; export AS; \
-       CC="$(CC_FOR_BUILD)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
-       CXX="$(CXX_FOR_BUILD)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \
-       LD="$(LD_FOR_BUILD)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \
-       NM="$(NM_FOR_BUILD)"; export NM; \
-       RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES; \
-       echo Configuring in $(BUILD_SUBDIR)/libiberty; \
-       cd "$(BUILD_SUBDIR)/libiberty" || exit 1; \
+
+.PHONY: configure-target-libtermcap maybe-configure-target-libtermcap
+maybe-configure-target-libtermcap:
+@if target-libtermcap
+maybe-configure-target-libtermcap: configure-target-libtermcap
+configure-target-libtermcap: $(TARGET_SUBDIR)/libtermcap/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libtermcap/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libtermcap ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libtermcap; \
+       cd "$(TARGET_SUBDIR)/libtermcap" || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(BUILD_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libtermcap/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(BUILD_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libiberty "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/libiberty"; \
-         libsrcdir="$$s/libiberty"; \
-       fi; \
+       srcdiroption="--srcdir=$${topdir}/libtermcap"; \
+       libsrcdir="$$s/libtermcap"; \
        rm -f no-such-file || : ; \
        CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(BUILD_CONFIGARGS) $${srcdiroption} \
-         --with-build-subdir="$(BUILD_SUBDIR)" \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libtermcap
 
-.PHONY: all-build-libiberty maybe-all-build-libiberty
-maybe-all-build-libiberty:
-all-build-libiberty: configure-build-libiberty
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       (cd $(BUILD_SUBDIR)/libiberty && $(MAKE) all)
 
 
-# --------------------------------------
-# Modules which run on the host machine
-# --------------------------------------
+.PHONY: all-target-libtermcap maybe-all-target-libtermcap
+maybe-all-target-libtermcap:
+@if target-libtermcap
+TARGET-target-libtermcap=all
+maybe-all-target-libtermcap: all-target-libtermcap
+all-target-libtermcap: configure-target-libtermcap
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libtermcap))
+@endif target-libtermcap
 
-.PHONY: configure-ash maybe-configure-ash
-maybe-configure-ash:
-configure-ash:
-       @test ! -f ash/Makefile || exit 0; \
-       [ -d ash ] || mkdir ash; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in ash; \
-       cd ash || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/ash"; \
-           libsrcdir="$$s/ash";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/ash"; \
-           libsrcdir="$$s/ash";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+
+
+.PHONY: check-target-libtermcap maybe-check-target-libtermcap
+maybe-check-target-libtermcap:
+@if target-libtermcap
+maybe-check-target-libtermcap: check-target-libtermcap
+
+# Dummy target for uncheckable module.
+check-target-libtermcap:
+
+@endif target-libtermcap
+
+.PHONY: install-target-libtermcap maybe-install-target-libtermcap
+maybe-install-target-libtermcap:
+@if target-libtermcap
+maybe-install-target-libtermcap: install-target-libtermcap
+
+install-target-libtermcap: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
+
+@endif target-libtermcap
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-target-libtermcap info-target-libtermcap
+maybe-info-target-libtermcap:
+@if target-libtermcap
+maybe-info-target-libtermcap: info-target-libtermcap
+
+info-target-libtermcap: \
+    configure-target-libtermcap 
+       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libtermcap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(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
 
-.PHONY: all-ash maybe-all-ash
-maybe-all-ash:
-all-ash: configure-ash
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd ash && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libtermcap
 
-.PHONY: check-ash maybe-check-ash
-maybe-check-ash:
+.PHONY: maybe-dvi-target-libtermcap dvi-target-libtermcap
+maybe-dvi-target-libtermcap:
+@if target-libtermcap
+maybe-dvi-target-libtermcap: dvi-target-libtermcap
 
-check-ash:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd ash && $(MAKE) $(FLAGS_TO_PASS) check)
+dvi-target-libtermcap: \
+    configure-target-libtermcap 
+       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libtermcap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(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 target-libtermcap
 
-.PHONY: install-ash maybe-install-ash
-maybe-install-ash:
+.PHONY: maybe-html-target-libtermcap html-target-libtermcap
+maybe-html-target-libtermcap:
+@if target-libtermcap
+maybe-html-target-libtermcap: html-target-libtermcap
+
+html-target-libtermcap: \
+    configure-target-libtermcap 
+       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libtermcap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(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 target-libtermcap
+
+.PHONY: maybe-TAGS-target-libtermcap TAGS-target-libtermcap
+maybe-TAGS-target-libtermcap:
+@if target-libtermcap
+maybe-TAGS-target-libtermcap: TAGS-target-libtermcap
+
+TAGS-target-libtermcap: \
+    configure-target-libtermcap 
+       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libtermcap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(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 target-libtermcap
+
+.PHONY: maybe-install-info-target-libtermcap install-info-target-libtermcap
+maybe-install-info-target-libtermcap:
+@if target-libtermcap
+maybe-install-info-target-libtermcap: install-info-target-libtermcap
+
+install-info-target-libtermcap: \
+    configure-target-libtermcap \
+    info-target-libtermcap 
+       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libtermcap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(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 target-libtermcap
+
+.PHONY: maybe-installcheck-target-libtermcap installcheck-target-libtermcap
+maybe-installcheck-target-libtermcap:
+@if target-libtermcap
+maybe-installcheck-target-libtermcap: installcheck-target-libtermcap
+
+installcheck-target-libtermcap: \
+    configure-target-libtermcap 
+       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libtermcap" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(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 target-libtermcap
+
+.PHONY: maybe-mostlyclean-target-libtermcap mostlyclean-target-libtermcap
+maybe-mostlyclean-target-libtermcap:
+@if target-libtermcap
+maybe-mostlyclean-target-libtermcap: mostlyclean-target-libtermcap
+
+# libtermcap doesn't support mostlyclean.
+mostlyclean-target-libtermcap:
+
+@endif target-libtermcap
+
+.PHONY: maybe-clean-target-libtermcap clean-target-libtermcap
+maybe-clean-target-libtermcap:
+@if target-libtermcap
+maybe-clean-target-libtermcap: clean-target-libtermcap
+
+# libtermcap doesn't support clean.
+clean-target-libtermcap:
+
+@endif target-libtermcap
+
+.PHONY: maybe-distclean-target-libtermcap distclean-target-libtermcap
+maybe-distclean-target-libtermcap:
+@if target-libtermcap
+maybe-distclean-target-libtermcap: distclean-target-libtermcap
+
+# libtermcap doesn't support distclean.
+distclean-target-libtermcap:
+
+@endif target-libtermcap
+
+.PHONY: maybe-maintainer-clean-target-libtermcap maintainer-clean-target-libtermcap
+maybe-maintainer-clean-target-libtermcap:
+@if target-libtermcap
+maybe-maintainer-clean-target-libtermcap: maintainer-clean-target-libtermcap
+
+# libtermcap doesn't support maintainer-clean.
+maintainer-clean-target-libtermcap:
+
+@endif target-libtermcap
+
+
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-winsup
+$(TARGET_SUBDIR)/winsup/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/winsup ; \
+       rm -f $(TARGET_SUBDIR)/winsup/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/winsup/multilib.out
+@endif target-winsup
 
-install-ash: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd ash && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-autoconf maybe-configure-autoconf
-maybe-configure-autoconf:
-configure-autoconf:
-       @test ! -f autoconf/Makefile || exit 0; \
-       [ -d autoconf ] || mkdir autoconf; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in autoconf; \
-       cd autoconf || exit 1; \
+.PHONY: configure-target-winsup maybe-configure-target-winsup
+maybe-configure-target-winsup:
+@if target-winsup
+maybe-configure-target-winsup: configure-target-winsup
+configure-target-winsup: $(TARGET_SUBDIR)/winsup/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/winsup/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/winsup ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/winsup; \
+       cd "$(TARGET_SUBDIR)/winsup" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/autoconf"; \
-           libsrcdir="$$s/autoconf";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/autoconf"; \
-           libsrcdir="$$s/autoconf";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/winsup/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/winsup"; \
+       libsrcdir="$$s/winsup"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-winsup
 
-.PHONY: all-autoconf maybe-all-autoconf
-maybe-all-autoconf:
-all-autoconf: configure-autoconf
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-autoconf maybe-check-autoconf
-maybe-check-autoconf:
-
-check-autoconf:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-autoconf maybe-install-autoconf
-maybe-install-autoconf:
+.PHONY: all-target-winsup maybe-all-target-winsup
+maybe-all-target-winsup:
+@if target-winsup
+TARGET-target-winsup=all
+maybe-all-target-winsup: all-target-winsup
+all-target-winsup: configure-target-winsup
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-winsup))
+@endif target-winsup
 
-install-autoconf: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-automake maybe-configure-automake
-maybe-configure-automake:
-configure-automake:
-       @test ! -f automake/Makefile || exit 0; \
-       [ -d automake ] || mkdir automake; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in automake; \
-       cd automake || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/automake"; \
-           libsrcdir="$$s/automake";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/automake"; \
-           libsrcdir="$$s/automake";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: check-target-winsup maybe-check-target-winsup
+maybe-check-target-winsup:
+@if target-winsup
+maybe-check-target-winsup: check-target-winsup
 
-.PHONY: all-automake maybe-all-automake
-maybe-all-automake:
-all-automake: configure-automake
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd automake && $(MAKE) $(FLAGS_TO_PASS) all)
+check-target-winsup:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
-.PHONY: check-automake maybe-check-automake
-maybe-check-automake:
+@endif target-winsup
 
-check-automake:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd automake && $(MAKE) $(FLAGS_TO_PASS) check)
+.PHONY: install-target-winsup maybe-install-target-winsup
+maybe-install-target-winsup:
+@if target-winsup
+maybe-install-target-winsup: install-target-winsup
 
+install-target-winsup: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: install-automake maybe-install-automake
-maybe-install-automake:
+@endif target-winsup
 
-install-automake: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd automake && $(MAKE) $(FLAGS_TO_PASS) install)
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-winsup info-target-winsup
+maybe-info-target-winsup:
+@if target-winsup
+maybe-info-target-winsup: info-target-winsup
 
-.PHONY: configure-bash maybe-configure-bash
-maybe-configure-bash:
-configure-bash:
-       @test ! -f bash/Makefile || exit 0; \
-       [ -d bash ] || mkdir bash; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in bash; \
-       cd bash || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/bash"; \
-           libsrcdir="$$s/bash";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/bash"; \
-           libsrcdir="$$s/bash";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+info-target-winsup: \
+    configure-target-winsup 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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
 
-.PHONY: all-bash maybe-all-bash
-maybe-all-bash:
-all-bash: configure-bash
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bash && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-winsup
 
-.PHONY: check-bash maybe-check-bash
-maybe-check-bash:
+.PHONY: maybe-dvi-target-winsup dvi-target-winsup
+maybe-dvi-target-winsup:
+@if target-winsup
+maybe-dvi-target-winsup: dvi-target-winsup
 
-check-bash:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bash && $(MAKE) $(FLAGS_TO_PASS) check)
+dvi-target-winsup: \
+    configure-target-winsup 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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 target-winsup
 
-.PHONY: install-bash maybe-install-bash
-maybe-install-bash:
+.PHONY: maybe-html-target-winsup html-target-winsup
+maybe-html-target-winsup:
+@if target-winsup
+maybe-html-target-winsup: html-target-winsup
 
-install-bash: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bash && $(MAKE) $(FLAGS_TO_PASS) install)
+html-target-winsup: \
+    configure-target-winsup 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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 target-winsup
 
-.PHONY: configure-bfd maybe-configure-bfd
-maybe-configure-bfd:
-configure-bfd:
-       @test ! -f bfd/Makefile || exit 0; \
-       [ -d bfd ] || mkdir bfd; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in bfd; \
-       cd bfd || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/bfd"; \
-           libsrcdir="$$s/bfd";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/bfd"; \
-           libsrcdir="$$s/bfd";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-TAGS-target-winsup TAGS-target-winsup
+maybe-TAGS-target-winsup:
+@if target-winsup
+maybe-TAGS-target-winsup: TAGS-target-winsup
+
+TAGS-target-winsup: \
+    configure-target-winsup 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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
 
-.PHONY: all-bfd maybe-all-bfd
-maybe-all-bfd:
-all-bfd: configure-bfd
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bfd && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-winsup
 
-.PHONY: check-bfd maybe-check-bfd
-maybe-check-bfd:
+.PHONY: maybe-install-info-target-winsup install-info-target-winsup
+maybe-install-info-target-winsup:
+@if target-winsup
+maybe-install-info-target-winsup: install-info-target-winsup
 
-check-bfd:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bfd && $(MAKE) $(FLAGS_TO_PASS) check)
+install-info-target-winsup: \
+    configure-target-winsup \
+    info-target-winsup 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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 target-winsup
 
-.PHONY: install-bfd maybe-install-bfd
-maybe-install-bfd:
+.PHONY: maybe-installcheck-target-winsup installcheck-target-winsup
+maybe-installcheck-target-winsup:
+@if target-winsup
+maybe-installcheck-target-winsup: installcheck-target-winsup
 
-install-bfd: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bfd && $(MAKE) $(FLAGS_TO_PASS) install)
+installcheck-target-winsup: \
+    configure-target-winsup 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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 target-winsup
 
-.PHONY: configure-opcodes maybe-configure-opcodes
-maybe-configure-opcodes:
-configure-opcodes:
-       @test ! -f opcodes/Makefile || exit 0; \
-       [ -d opcodes ] || mkdir opcodes; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in opcodes; \
-       cd opcodes || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/opcodes"; \
-           libsrcdir="$$s/opcodes";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
-           libsrcdir="$$s/opcodes";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-mostlyclean-target-winsup mostlyclean-target-winsup
+maybe-mostlyclean-target-winsup:
+@if target-winsup
+maybe-mostlyclean-target-winsup: mostlyclean-target-winsup
+
+mostlyclean-target-winsup: 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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
 
-.PHONY: all-opcodes maybe-all-opcodes
-maybe-all-opcodes:
-all-opcodes: configure-opcodes
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-winsup
 
-.PHONY: check-opcodes maybe-check-opcodes
-maybe-check-opcodes:
+.PHONY: maybe-clean-target-winsup clean-target-winsup
+maybe-clean-target-winsup:
+@if target-winsup
+maybe-clean-target-winsup: clean-target-winsup
 
-check-opcodes:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) check)
+clean-target-winsup: 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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 target-winsup
 
-.PHONY: install-opcodes maybe-install-opcodes
-maybe-install-opcodes:
+.PHONY: maybe-distclean-target-winsup distclean-target-winsup
+maybe-distclean-target-winsup:
+@if target-winsup
+maybe-distclean-target-winsup: distclean-target-winsup
 
-install-opcodes: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) install)
+distclean-target-winsup: 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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 target-winsup
 
-.PHONY: configure-binutils maybe-configure-binutils
-maybe-configure-binutils:
-configure-binutils:
-       @test ! -f binutils/Makefile || exit 0; \
-       [ -d binutils ] || mkdir binutils; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in binutils; \
-       cd binutils || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/binutils"; \
-           libsrcdir="$$s/binutils";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/binutils"; \
-           libsrcdir="$$s/binutils";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: maybe-maintainer-clean-target-winsup maintainer-clean-target-winsup
+maybe-maintainer-clean-target-winsup:
+@if target-winsup
+maybe-maintainer-clean-target-winsup: maintainer-clean-target-winsup
 
-.PHONY: all-binutils maybe-all-binutils
-maybe-all-binutils:
-all-binutils: configure-binutils
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd binutils && $(MAKE) $(FLAGS_TO_PASS) all)
+maintainer-clean-target-winsup: 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/winsup" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(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
 
-.PHONY: check-binutils maybe-check-binutils
-maybe-check-binutils:
+@endif target-winsup
 
-check-binutils:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd binutils && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-binutils maybe-install-binutils
-maybe-install-binutils:
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libgloss
+$(TARGET_SUBDIR)/libgloss/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgloss ; \
+       rm -f $(TARGET_SUBDIR)/libgloss/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libgloss/multilib.out
+@endif target-libgloss
 
-install-binutils: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd binutils && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-bison maybe-configure-bison
-maybe-configure-bison:
-configure-bison:
-       @test ! -f bison/Makefile || exit 0; \
-       [ -d bison ] || mkdir bison; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in bison; \
-       cd bison || exit 1; \
+.PHONY: configure-target-libgloss maybe-configure-target-libgloss
+maybe-configure-target-libgloss:
+@if target-libgloss
+maybe-configure-target-libgloss: configure-target-libgloss
+configure-target-libgloss: $(TARGET_SUBDIR)/libgloss/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libgloss/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgloss ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libgloss; \
+       cd "$(TARGET_SUBDIR)/libgloss" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/bison"; \
-           libsrcdir="$$s/bison";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/bison"; \
-           libsrcdir="$$s/bison";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libgloss/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/libgloss"; \
+       libsrcdir="$$s/libgloss"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libgloss
 
-.PHONY: all-bison maybe-all-bison
-maybe-all-bison:
-all-bison: configure-bison
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bison && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-bison maybe-check-bison
-maybe-check-bison:
-
-# This module is only tested in a native toolchain.
-check-bison:
-       @if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd bison && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
 
 
-.PHONY: install-bison maybe-install-bison
-maybe-install-bison:
+.PHONY: all-target-libgloss maybe-all-target-libgloss
+maybe-all-target-libgloss:
+@if target-libgloss
+TARGET-target-libgloss=all
+maybe-all-target-libgloss: all-target-libgloss
+all-target-libgloss: configure-target-libgloss
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libgloss))
+@endif target-libgloss
 
-install-bison: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bison && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-byacc maybe-configure-byacc
-maybe-configure-byacc:
-configure-byacc:
-       @test ! -f byacc/Makefile || exit 0; \
-       [ -d byacc ] || mkdir byacc; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in byacc; \
-       cd byacc || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/byacc"; \
-           libsrcdir="$$s/byacc";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/byacc"; \
-           libsrcdir="$$s/byacc";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: check-target-libgloss maybe-check-target-libgloss
+maybe-check-target-libgloss:
+@if target-libgloss
+maybe-check-target-libgloss: check-target-libgloss
 
-.PHONY: all-byacc maybe-all-byacc
-maybe-all-byacc:
-all-byacc: configure-byacc
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd byacc && $(MAKE) $(FLAGS_TO_PASS) all)
+# Dummy target for uncheckable module.
+check-target-libgloss:
 
-.PHONY: check-byacc maybe-check-byacc
-maybe-check-byacc:
+@endif target-libgloss
 
-# This module is only tested in a native toolchain.
-check-byacc:
-       @if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd byacc && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+.PHONY: install-target-libgloss maybe-install-target-libgloss
+maybe-install-target-libgloss:
+@if target-libgloss
+maybe-install-target-libgloss: install-target-libgloss
 
+install-target-libgloss: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: install-byacc maybe-install-byacc
-maybe-install-byacc:
+@endif target-libgloss
 
-install-byacc: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd byacc && $(MAKE) $(FLAGS_TO_PASS) install)
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-libgloss info-target-libgloss
+maybe-info-target-libgloss:
+@if target-libgloss
+maybe-info-target-libgloss: info-target-libgloss
 
-.PHONY: configure-bzip2 maybe-configure-bzip2
-maybe-configure-bzip2:
-configure-bzip2:
-       @test ! -f bzip2/Makefile || exit 0; \
-       [ -d bzip2 ] || mkdir bzip2; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in bzip2; \
-       cd bzip2 || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/bzip2"; \
-           libsrcdir="$$s/bzip2";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/bzip2"; \
-           libsrcdir="$$s/bzip2";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+info-target-libgloss: \
+    configure-target-libgloss 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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
 
-.PHONY: all-bzip2 maybe-all-bzip2
-maybe-all-bzip2:
-all-bzip2: configure-bzip2
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-bzip2 maybe-check-bzip2
-maybe-check-bzip2:
-
-check-bzip2:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) check)
+@endif target-libgloss
 
+.PHONY: maybe-dvi-target-libgloss dvi-target-libgloss
+maybe-dvi-target-libgloss:
+@if target-libgloss
+maybe-dvi-target-libgloss: dvi-target-libgloss
 
-.PHONY: install-bzip2 maybe-install-bzip2
-maybe-install-bzip2:
+dvi-target-libgloss: \
+    configure-target-libgloss 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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
 
-install-bzip2: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-libgloss
 
+.PHONY: maybe-html-target-libgloss html-target-libgloss
+maybe-html-target-libgloss:
+@if target-libgloss
+maybe-html-target-libgloss: html-target-libgloss
 
-.PHONY: configure-dejagnu maybe-configure-dejagnu
-maybe-configure-dejagnu:
-configure-dejagnu:
-       @test ! -f dejagnu/Makefile || exit 0; \
-       [ -d dejagnu ] || mkdir dejagnu; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in dejagnu; \
-       cd dejagnu || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/dejagnu"; \
-           libsrcdir="$$s/dejagnu";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/dejagnu"; \
-           libsrcdir="$$s/dejagnu";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+html-target-libgloss: \
+    configure-target-libgloss 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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
 
-.PHONY: all-dejagnu maybe-all-dejagnu
-maybe-all-dejagnu:
-all-dejagnu: configure-dejagnu
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libgloss
 
-.PHONY: check-dejagnu maybe-check-dejagnu
-maybe-check-dejagnu:
+.PHONY: maybe-TAGS-target-libgloss TAGS-target-libgloss
+maybe-TAGS-target-libgloss:
+@if target-libgloss
+maybe-TAGS-target-libgloss: TAGS-target-libgloss
 
-check-dejagnu:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) check)
+TAGS-target-libgloss: \
+    configure-target-libgloss 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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 target-libgloss
 
-.PHONY: install-dejagnu maybe-install-dejagnu
-maybe-install-dejagnu:
+.PHONY: maybe-install-info-target-libgloss install-info-target-libgloss
+maybe-install-info-target-libgloss:
+@if target-libgloss
+maybe-install-info-target-libgloss: install-info-target-libgloss
 
-install-dejagnu: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) install)
+install-info-target-libgloss: \
+    configure-target-libgloss \
+    info-target-libgloss 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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 target-libgloss
 
-.PHONY: configure-diff maybe-configure-diff
-maybe-configure-diff:
-configure-diff:
-       @test ! -f diff/Makefile || exit 0; \
-       [ -d diff ] || mkdir diff; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in diff; \
-       cd diff || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/diff"; \
-           libsrcdir="$$s/diff";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/diff"; \
-           libsrcdir="$$s/diff";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-installcheck-target-libgloss installcheck-target-libgloss
+maybe-installcheck-target-libgloss:
+@if target-libgloss
+maybe-installcheck-target-libgloss: installcheck-target-libgloss
+
+installcheck-target-libgloss: \
+    configure-target-libgloss 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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
 
-.PHONY: all-diff maybe-all-diff
-maybe-all-diff:
-all-diff: configure-diff
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd diff && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libgloss
 
-.PHONY: check-diff maybe-check-diff
-maybe-check-diff:
+.PHONY: maybe-mostlyclean-target-libgloss mostlyclean-target-libgloss
+maybe-mostlyclean-target-libgloss:
+@if target-libgloss
+maybe-mostlyclean-target-libgloss: mostlyclean-target-libgloss
 
-check-diff:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd diff && $(MAKE) $(FLAGS_TO_PASS) check)
+mostlyclean-target-libgloss: 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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 target-libgloss
 
-.PHONY: install-diff maybe-install-diff
-maybe-install-diff:
+.PHONY: maybe-clean-target-libgloss clean-target-libgloss
+maybe-clean-target-libgloss:
+@if target-libgloss
+maybe-clean-target-libgloss: clean-target-libgloss
 
-install-diff: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd diff && $(MAKE) $(FLAGS_TO_PASS) install)
+clean-target-libgloss: 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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 target-libgloss
 
-.PHONY: configure-dosutils maybe-configure-dosutils
-maybe-configure-dosutils:
-configure-dosutils:
-       @test ! -f dosutils/Makefile || exit 0; \
-       [ -d dosutils ] || mkdir dosutils; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in dosutils; \
-       cd dosutils || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/dosutils"; \
-           libsrcdir="$$s/dosutils";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/dosutils"; \
-           libsrcdir="$$s/dosutils";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-distclean-target-libgloss distclean-target-libgloss
+maybe-distclean-target-libgloss:
+@if target-libgloss
+maybe-distclean-target-libgloss: distclean-target-libgloss
+
+distclean-target-libgloss: 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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
 
-.PHONY: all-dosutils maybe-all-dosutils
-maybe-all-dosutils:
-all-dosutils: configure-dosutils
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libgloss
 
-.PHONY: check-dosutils maybe-check-dosutils
-maybe-check-dosutils:
+.PHONY: maybe-maintainer-clean-target-libgloss maintainer-clean-target-libgloss
+maybe-maintainer-clean-target-libgloss:
+@if target-libgloss
+maybe-maintainer-clean-target-libgloss: maintainer-clean-target-libgloss
 
-check-dosutils:
+maintainer-clean-target-libgloss: 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgloss" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(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 target-libgloss
 
-.PHONY: install-dosutils maybe-install-dosutils
-maybe-install-dosutils:
 
-install-dosutils: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) install)
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libiberty
+$(TARGET_SUBDIR)/libiberty/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libiberty ; \
+       rm -f $(TARGET_SUBDIR)/libiberty/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libiberty/multilib.out
+@endif target-libiberty
 
-.PHONY: configure-etc maybe-configure-etc
-maybe-configure-etc:
-configure-etc:
-       @test ! -f etc/Makefile || exit 0; \
-       [ -d etc ] || mkdir etc; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in etc; \
-       cd etc || exit 1; \
+
+
+.PHONY: configure-target-libiberty maybe-configure-target-libiberty
+maybe-configure-target-libiberty:
+@if target-libiberty
+maybe-configure-target-libiberty: configure-target-libiberty
+configure-target-libiberty: $(TARGET_SUBDIR)/libiberty/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libiberty/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libiberty ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libiberty; \
+       cd "$(TARGET_SUBDIR)/libiberty" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/etc"; \
-           libsrcdir="$$s/etc";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/etc"; \
-           libsrcdir="$$s/etc";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libiberty
 
-.PHONY: all-etc maybe-all-etc
-maybe-all-etc:
-all-etc: configure-etc
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd etc && $(MAKE) $(FLAGS_TO_PASS) all)
 
-.PHONY: check-etc maybe-check-etc
-maybe-check-etc:
 
-check-etc:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd etc && $(MAKE) $(FLAGS_TO_PASS) check)
+.PHONY: all-target-libiberty maybe-all-target-libiberty
+maybe-all-target-libiberty:
+@if target-libiberty
+TARGET-target-libiberty=all
+maybe-all-target-libiberty: all-target-libiberty
+all-target-libiberty: configure-target-libiberty
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libiberty))
+@endif target-libiberty
 
 
-.PHONY: install-etc maybe-install-etc
-maybe-install-etc:
 
-install-etc: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd etc && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: check-target-libiberty maybe-check-target-libiberty
+maybe-check-target-libiberty:
+@if target-libiberty
+maybe-check-target-libiberty: check-target-libiberty
+
+check-target-libiberty:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-libiberty
 
-.PHONY: configure-fastjar maybe-configure-fastjar
-maybe-configure-fastjar:
-configure-fastjar:
-       @test ! -f fastjar/Makefile || exit 0; \
-       [ -d fastjar ] || mkdir fastjar; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in fastjar; \
-       cd fastjar || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/fastjar"; \
-           libsrcdir="$$s/fastjar";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/fastjar"; \
-           libsrcdir="$$s/fastjar";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: install-target-libiberty maybe-install-target-libiberty
+maybe-install-target-libiberty:
+@if target-libiberty
+maybe-install-target-libiberty: install-target-libiberty
 
-.PHONY: all-fastjar maybe-all-fastjar
-maybe-all-fastjar:
-all-fastjar: configure-fastjar
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) all)
+install-target-libiberty: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: check-fastjar maybe-check-fastjar
-maybe-check-fastjar:
+@endif target-libiberty
 
-# This module is only tested in a native toolchain.
-check-fastjar:
-       @if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-libiberty info-target-libiberty
+maybe-info-target-libiberty:
+@if target-libiberty
+maybe-info-target-libiberty: info-target-libiberty
 
-.PHONY: install-fastjar maybe-install-fastjar
-maybe-install-fastjar:
+info-target-libiberty: \
+    configure-target-libiberty 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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
 
-install-fastjar: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-libiberty
 
+.PHONY: maybe-dvi-target-libiberty dvi-target-libiberty
+maybe-dvi-target-libiberty:
+@if target-libiberty
+maybe-dvi-target-libiberty: dvi-target-libiberty
 
-.PHONY: configure-fileutils maybe-configure-fileutils
-maybe-configure-fileutils:
-configure-fileutils:
-       @test ! -f fileutils/Makefile || exit 0; \
-       [ -d fileutils ] || mkdir fileutils; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in fileutils; \
-       cd fileutils || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/fileutils"; \
-           libsrcdir="$$s/fileutils";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/fileutils"; \
-           libsrcdir="$$s/fileutils";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+dvi-target-libiberty: \
+    configure-target-libiberty 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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
 
-.PHONY: all-fileutils maybe-all-fileutils
-maybe-all-fileutils:
-all-fileutils: configure-fileutils
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libiberty
 
-.PHONY: check-fileutils maybe-check-fileutils
-maybe-check-fileutils:
+.PHONY: maybe-html-target-libiberty html-target-libiberty
+maybe-html-target-libiberty:
+@if target-libiberty
+maybe-html-target-libiberty: html-target-libiberty
 
-check-fileutils:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) check)
+html-target-libiberty: \
+    configure-target-libiberty 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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 target-libiberty
 
-.PHONY: install-fileutils maybe-install-fileutils
-maybe-install-fileutils:
+.PHONY: maybe-TAGS-target-libiberty TAGS-target-libiberty
+maybe-TAGS-target-libiberty:
+@if target-libiberty
+maybe-TAGS-target-libiberty: TAGS-target-libiberty
 
-install-fileutils: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) install)
+TAGS-target-libiberty: \
+    configure-target-libiberty 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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 target-libiberty
 
-.PHONY: configure-findutils maybe-configure-findutils
-maybe-configure-findutils:
-configure-findutils:
-       @test ! -f findutils/Makefile || exit 0; \
-       [ -d findutils ] || mkdir findutils; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in findutils; \
-       cd findutils || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/findutils"; \
-           libsrcdir="$$s/findutils";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/findutils"; \
-           libsrcdir="$$s/findutils";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-install-info-target-libiberty install-info-target-libiberty
+maybe-install-info-target-libiberty:
+@if target-libiberty
+maybe-install-info-target-libiberty: install-info-target-libiberty
+
+install-info-target-libiberty: \
+    configure-target-libiberty \
+    info-target-libiberty 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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
 
-.PHONY: all-findutils maybe-all-findutils
-maybe-all-findutils:
-all-findutils: configure-findutils
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd findutils && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libiberty
 
-.PHONY: check-findutils maybe-check-findutils
-maybe-check-findutils:
+.PHONY: maybe-installcheck-target-libiberty installcheck-target-libiberty
+maybe-installcheck-target-libiberty:
+@if target-libiberty
+maybe-installcheck-target-libiberty: installcheck-target-libiberty
 
-check-findutils:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd findutils && $(MAKE) $(FLAGS_TO_PASS) check)
+installcheck-target-libiberty: \
+    configure-target-libiberty 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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 target-libiberty
 
-.PHONY: install-findutils maybe-install-findutils
-maybe-install-findutils:
+.PHONY: maybe-mostlyclean-target-libiberty mostlyclean-target-libiberty
+maybe-mostlyclean-target-libiberty:
+@if target-libiberty
+maybe-mostlyclean-target-libiberty: mostlyclean-target-libiberty
 
-install-findutils: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd findutils && $(MAKE) $(FLAGS_TO_PASS) install)
+mostlyclean-target-libiberty: 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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 target-libiberty
 
-.PHONY: configure-find maybe-configure-find
-maybe-configure-find:
-configure-find:
-       @test ! -f find/Makefile || exit 0; \
-       [ -d find ] || mkdir find; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in find; \
-       cd find || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/find"; \
-           libsrcdir="$$s/find";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/find"; \
-           libsrcdir="$$s/find";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-clean-target-libiberty clean-target-libiberty
+maybe-clean-target-libiberty:
+@if target-libiberty
+maybe-clean-target-libiberty: clean-target-libiberty
+
+clean-target-libiberty: 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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
 
-.PHONY: all-find maybe-all-find
-maybe-all-find:
-all-find: configure-find
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd find && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libiberty
 
-.PHONY: check-find maybe-check-find
-maybe-check-find:
+.PHONY: maybe-distclean-target-libiberty distclean-target-libiberty
+maybe-distclean-target-libiberty:
+@if target-libiberty
+maybe-distclean-target-libiberty: distclean-target-libiberty
 
-check-find:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd find && $(MAKE) $(FLAGS_TO_PASS) check)
+distclean-target-libiberty: 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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 target-libiberty
 
-.PHONY: install-find maybe-install-find
-maybe-install-find:
+.PHONY: maybe-maintainer-clean-target-libiberty maintainer-clean-target-libiberty
+maybe-maintainer-clean-target-libiberty:
+@if target-libiberty
+maybe-maintainer-clean-target-libiberty: maintainer-clean-target-libiberty
 
-install-find: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd find && $(MAKE) $(FLAGS_TO_PASS) install)
+maintainer-clean-target-libiberty: 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libiberty" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(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 target-libiberty
 
-.PHONY: configure-flex maybe-configure-flex
-maybe-configure-flex:
-configure-flex:
-       @test ! -f flex/Makefile || exit 0; \
-       [ -d flex ] || mkdir flex; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in flex; \
-       cd flex || exit 1; \
+
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-gperf
+$(TARGET_SUBDIR)/gperf/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/gperf ; \
+       rm -f $(TARGET_SUBDIR)/gperf/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/gperf/multilib.out
+@endif target-gperf
+
+
+
+.PHONY: configure-target-gperf maybe-configure-target-gperf
+maybe-configure-target-gperf:
+@if target-gperf
+maybe-configure-target-gperf: configure-target-gperf
+configure-target-gperf: $(TARGET_SUBDIR)/gperf/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/gperf/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/gperf ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/gperf; \
+       cd "$(TARGET_SUBDIR)/gperf" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/flex"; \
-           libsrcdir="$$s/flex";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/flex"; \
-           libsrcdir="$$s/flex";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/gperf/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/gperf"; \
+       libsrcdir="$$s/gperf"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-gperf
 
-.PHONY: all-flex maybe-all-flex
-maybe-all-flex:
-all-flex: configure-flex
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd flex && $(MAKE) $(FLAGS_TO_PASS) all)
 
-.PHONY: check-flex maybe-check-flex
-maybe-check-flex:
 
-# This module is only tested in a native toolchain.
-check-flex:
-       @if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd flex && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+.PHONY: all-target-gperf maybe-all-target-gperf
+maybe-all-target-gperf:
+@if target-gperf
+TARGET-target-gperf=all
+maybe-all-target-gperf: all-target-gperf
+all-target-gperf: configure-target-gperf
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-gperf))
+@endif target-gperf
 
 
-.PHONY: install-flex maybe-install-flex
-maybe-install-flex:
 
-install-flex: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd flex && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: check-target-gperf maybe-check-target-gperf
+maybe-check-target-gperf:
+@if target-gperf
+maybe-check-target-gperf: check-target-gperf
+
+check-target-gperf:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-gperf
 
-.PHONY: configure-gas maybe-configure-gas
-maybe-configure-gas:
-configure-gas:
-       @test ! -f gas/Makefile || exit 0; \
-       [ -d gas ] || mkdir gas; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in gas; \
-       cd gas || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gas"; \
-           libsrcdir="$$s/gas";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/gas"; \
-           libsrcdir="$$s/gas";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: install-target-gperf maybe-install-target-gperf
+maybe-install-target-gperf:
+@if target-gperf
+maybe-install-target-gperf: install-target-gperf
+
+install-target-gperf: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
+
+@endif target-gperf
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-target-gperf info-target-gperf
+maybe-info-target-gperf:
+@if target-gperf
+maybe-info-target-gperf: info-target-gperf
+
+info-target-gperf: \
+    configure-target-gperf 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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
 
-.PHONY: all-gas maybe-all-gas
-maybe-all-gas:
-all-gas: configure-gas
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gas && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-gperf
 
-.PHONY: check-gas maybe-check-gas
-maybe-check-gas:
+.PHONY: maybe-dvi-target-gperf dvi-target-gperf
+maybe-dvi-target-gperf:
+@if target-gperf
+maybe-dvi-target-gperf: dvi-target-gperf
 
-check-gas:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gas && $(MAKE) $(FLAGS_TO_PASS) check)
+dvi-target-gperf: \
+    configure-target-gperf 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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 target-gperf
 
-.PHONY: install-gas maybe-install-gas
-maybe-install-gas:
+.PHONY: maybe-html-target-gperf html-target-gperf
+maybe-html-target-gperf:
+@if target-gperf
+maybe-html-target-gperf: html-target-gperf
 
-install-gas: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gas && $(MAKE) $(FLAGS_TO_PASS) install)
+html-target-gperf: \
+    configure-target-gperf 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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 target-gperf
 
-.PHONY: configure-gawk maybe-configure-gawk
-maybe-configure-gawk:
-configure-gawk:
-       @test ! -f gawk/Makefile || exit 0; \
-       [ -d gawk ] || mkdir gawk; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in gawk; \
-       cd gawk || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gawk"; \
-           libsrcdir="$$s/gawk";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/gawk"; \
-           libsrcdir="$$s/gawk";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-TAGS-target-gperf TAGS-target-gperf
+maybe-TAGS-target-gperf:
+@if target-gperf
+maybe-TAGS-target-gperf: TAGS-target-gperf
+
+TAGS-target-gperf: \
+    configure-target-gperf 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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
 
-.PHONY: all-gawk maybe-all-gawk
-maybe-all-gawk:
-all-gawk: configure-gawk
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gawk && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-gperf
 
-.PHONY: check-gawk maybe-check-gawk
-maybe-check-gawk:
+.PHONY: maybe-install-info-target-gperf install-info-target-gperf
+maybe-install-info-target-gperf:
+@if target-gperf
+maybe-install-info-target-gperf: install-info-target-gperf
 
-check-gawk:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gawk && $(MAKE) $(FLAGS_TO_PASS) check)
+install-info-target-gperf: \
+    configure-target-gperf \
+    info-target-gperf 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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 target-gperf
 
-.PHONY: install-gawk maybe-install-gawk
-maybe-install-gawk:
+.PHONY: maybe-installcheck-target-gperf installcheck-target-gperf
+maybe-installcheck-target-gperf:
+@if target-gperf
+maybe-installcheck-target-gperf: installcheck-target-gperf
 
-install-gawk: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gawk && $(MAKE) $(FLAGS_TO_PASS) install)
+installcheck-target-gperf: \
+    configure-target-gperf 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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 target-gperf
 
-.PHONY: configure-gettext maybe-configure-gettext
-maybe-configure-gettext:
-configure-gettext:
-       @test ! -f gettext/Makefile || exit 0; \
-       [ -d gettext ] || mkdir gettext; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in gettext; \
-       cd gettext || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gettext"; \
-           libsrcdir="$$s/gettext";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/gettext"; \
-           libsrcdir="$$s/gettext";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-mostlyclean-target-gperf mostlyclean-target-gperf
+maybe-mostlyclean-target-gperf:
+@if target-gperf
+maybe-mostlyclean-target-gperf: mostlyclean-target-gperf
+
+mostlyclean-target-gperf: 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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
 
-.PHONY: all-gettext maybe-all-gettext
-maybe-all-gettext:
-all-gettext: configure-gettext
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gettext && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-gperf
 
-.PHONY: check-gettext maybe-check-gettext
-maybe-check-gettext:
+.PHONY: maybe-clean-target-gperf clean-target-gperf
+maybe-clean-target-gperf:
+@if target-gperf
+maybe-clean-target-gperf: clean-target-gperf
 
-check-gettext:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gettext && $(MAKE) $(FLAGS_TO_PASS) check)
+clean-target-gperf: 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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 target-gperf
 
-.PHONY: install-gettext maybe-install-gettext
-maybe-install-gettext:
+.PHONY: maybe-distclean-target-gperf distclean-target-gperf
+maybe-distclean-target-gperf:
+@if target-gperf
+maybe-distclean-target-gperf: distclean-target-gperf
+
+distclean-target-gperf: 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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
 
-install-gettext: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gettext && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-gperf
 
+.PHONY: maybe-maintainer-clean-target-gperf maintainer-clean-target-gperf
+maybe-maintainer-clean-target-gperf:
+@if target-gperf
+maybe-maintainer-clean-target-gperf: maintainer-clean-target-gperf
 
-.PHONY: configure-gnuserv maybe-configure-gnuserv
-maybe-configure-gnuserv:
-configure-gnuserv:
-       @test ! -f gnuserv/Makefile || exit 0; \
-       [ -d gnuserv ] || mkdir gnuserv; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in gnuserv; \
-       cd gnuserv || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gnuserv"; \
-           libsrcdir="$$s/gnuserv";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/gnuserv"; \
-           libsrcdir="$$s/gnuserv";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+maintainer-clean-target-gperf: 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/gperf" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(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
 
-.PHONY: all-gnuserv maybe-all-gnuserv
-maybe-all-gnuserv:
-all-gnuserv: configure-gnuserv
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-gnuserv maybe-check-gnuserv
-maybe-check-gnuserv:
+@endif target-gperf
 
-check-gnuserv:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-gnuserv maybe-install-gnuserv
-maybe-install-gnuserv:
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-examples
+$(TARGET_SUBDIR)/examples/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/examples ; \
+       rm -f $(TARGET_SUBDIR)/examples/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/examples/multilib.out
+@endif target-examples
 
-install-gnuserv: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-gprof maybe-configure-gprof
-maybe-configure-gprof:
-configure-gprof:
-       @test ! -f gprof/Makefile || exit 0; \
-       [ -d gprof ] || mkdir gprof; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in gprof; \
-       cd gprof || exit 1; \
+.PHONY: configure-target-examples maybe-configure-target-examples
+maybe-configure-target-examples:
+@if target-examples
+maybe-configure-target-examples: configure-target-examples
+configure-target-examples: $(TARGET_SUBDIR)/examples/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/examples/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/examples ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/examples; \
+       cd "$(TARGET_SUBDIR)/examples" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gprof"; \
-           libsrcdir="$$s/gprof";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/gprof"; \
-           libsrcdir="$$s/gprof";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/examples/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/examples"; \
+       libsrcdir="$$s/examples"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-examples
 
-.PHONY: all-gprof maybe-all-gprof
-maybe-all-gprof:
-all-gprof: configure-gprof
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gprof && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-gprof maybe-check-gprof
-maybe-check-gprof:
-
-check-gprof:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gprof && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-gprof maybe-install-gprof
-maybe-install-gprof:
+.PHONY: all-target-examples maybe-all-target-examples
+maybe-all-target-examples:
+@if target-examples
+TARGET-target-examples=all
+maybe-all-target-examples: all-target-examples
+all-target-examples: configure-target-examples
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-examples))
+@endif target-examples
 
-install-gprof: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gprof && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-gzip maybe-configure-gzip
-maybe-configure-gzip:
-configure-gzip:
-       @test ! -f gzip/Makefile || exit 0; \
-       [ -d gzip ] || mkdir gzip; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in gzip; \
-       cd gzip || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gzip"; \
-           libsrcdir="$$s/gzip";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/gzip"; \
-           libsrcdir="$$s/gzip";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: check-target-examples maybe-check-target-examples
+maybe-check-target-examples:
+@if target-examples
+maybe-check-target-examples: check-target-examples
 
-.PHONY: all-gzip maybe-all-gzip
-maybe-all-gzip:
-all-gzip: configure-gzip
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gzip && $(MAKE) $(FLAGS_TO_PASS) all)
+# Dummy target for uncheckable module.
+check-target-examples:
 
-.PHONY: check-gzip maybe-check-gzip
-maybe-check-gzip:
+@endif target-examples
 
-check-gzip:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gzip && $(MAKE) $(FLAGS_TO_PASS) check)
+.PHONY: install-target-examples maybe-install-target-examples
+maybe-install-target-examples:
+@if target-examples
+maybe-install-target-examples: install-target-examples
 
+# Dummy target for uninstallable.
+install-target-examples:
 
-.PHONY: install-gzip maybe-install-gzip
-maybe-install-gzip:
+@endif target-examples
 
-install-gzip: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gzip && $(MAKE) $(FLAGS_TO_PASS) install)
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-examples info-target-examples
+maybe-info-target-examples:
+@if target-examples
+maybe-info-target-examples: info-target-examples
 
-.PHONY: configure-hello maybe-configure-hello
-maybe-configure-hello:
-configure-hello:
-       @test ! -f hello/Makefile || exit 0; \
-       [ -d hello ] || mkdir hello; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in hello; \
-       cd hello || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/hello"; \
-           libsrcdir="$$s/hello";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/hello"; \
-           libsrcdir="$$s/hello";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+info-target-examples: \
+    configure-target-examples 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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
 
-.PHONY: all-hello maybe-all-hello
-maybe-all-hello:
-all-hello: configure-hello
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd hello && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-examples
 
-.PHONY: check-hello maybe-check-hello
-maybe-check-hello:
+.PHONY: maybe-dvi-target-examples dvi-target-examples
+maybe-dvi-target-examples:
+@if target-examples
+maybe-dvi-target-examples: dvi-target-examples
 
-check-hello:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd hello && $(MAKE) $(FLAGS_TO_PASS) check)
+dvi-target-examples: \
+    configure-target-examples 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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 target-examples
 
-.PHONY: install-hello maybe-install-hello
-maybe-install-hello:
+.PHONY: maybe-html-target-examples html-target-examples
+maybe-html-target-examples:
+@if target-examples
+maybe-html-target-examples: html-target-examples
 
-install-hello: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd hello && $(MAKE) $(FLAGS_TO_PASS) install)
+html-target-examples: \
+    configure-target-examples 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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 target-examples
 
-.PHONY: configure-indent maybe-configure-indent
-maybe-configure-indent:
-configure-indent:
-       @test ! -f indent/Makefile || exit 0; \
-       [ -d indent ] || mkdir indent; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in indent; \
-       cd indent || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/indent"; \
-           libsrcdir="$$s/indent";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/indent"; \
-           libsrcdir="$$s/indent";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-TAGS-target-examples TAGS-target-examples
+maybe-TAGS-target-examples:
+@if target-examples
+maybe-TAGS-target-examples: TAGS-target-examples
+
+TAGS-target-examples: \
+    configure-target-examples 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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
 
-.PHONY: all-indent maybe-all-indent
-maybe-all-indent:
-all-indent: configure-indent
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd indent && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-examples
 
-.PHONY: check-indent maybe-check-indent
-maybe-check-indent:
+.PHONY: maybe-install-info-target-examples install-info-target-examples
+maybe-install-info-target-examples:
+@if target-examples
+maybe-install-info-target-examples: install-info-target-examples
 
-check-indent:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd indent && $(MAKE) $(FLAGS_TO_PASS) check)
+install-info-target-examples: \
+    configure-target-examples \
+    info-target-examples 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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 target-examples
 
+.PHONY: maybe-installcheck-target-examples installcheck-target-examples
+maybe-installcheck-target-examples:
+@if target-examples
+maybe-installcheck-target-examples: installcheck-target-examples
 
-.PHONY: install-indent maybe-install-indent
-maybe-install-indent:
+installcheck-target-examples: \
+    configure-target-examples 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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
 
-install-indent: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd indent && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-examples
 
+.PHONY: maybe-mostlyclean-target-examples mostlyclean-target-examples
+maybe-mostlyclean-target-examples:
+@if target-examples
+maybe-mostlyclean-target-examples: mostlyclean-target-examples
 
-.PHONY: configure-intl maybe-configure-intl
-maybe-configure-intl:
-configure-intl:
-       @test ! -f intl/Makefile || exit 0; \
-       [ -d intl ] || mkdir intl; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in intl; \
-       cd intl || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/intl"; \
-           libsrcdir="$$s/intl";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/intl"; \
-           libsrcdir="$$s/intl";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+mostlyclean-target-examples: 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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
 
-.PHONY: all-intl maybe-all-intl
-maybe-all-intl:
-all-intl: configure-intl
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd intl && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-examples
 
-.PHONY: check-intl maybe-check-intl
-maybe-check-intl:
+.PHONY: maybe-clean-target-examples clean-target-examples
+maybe-clean-target-examples:
+@if target-examples
+maybe-clean-target-examples: clean-target-examples
 
-check-intl:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd intl && $(MAKE) $(FLAGS_TO_PASS) check)
+clean-target-examples: 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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 target-examples
 
-.PHONY: install-intl maybe-install-intl
-maybe-install-intl:
+.PHONY: maybe-distclean-target-examples distclean-target-examples
+maybe-distclean-target-examples:
+@if target-examples
+maybe-distclean-target-examples: distclean-target-examples
 
-install-intl: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd intl && $(MAKE) $(FLAGS_TO_PASS) install)
+distclean-target-examples: 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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 target-examples
 
-.PHONY: configure-tcl maybe-configure-tcl
-maybe-configure-tcl:
-configure-tcl:
-       @test ! -f tcl/Makefile || exit 0; \
-       [ -d tcl ] || mkdir tcl; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in tcl; \
-       cd tcl || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/tcl"; \
-           libsrcdir="$$s/tcl";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/tcl"; \
-           libsrcdir="$$s/tcl";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: maybe-maintainer-clean-target-examples maintainer-clean-target-examples
+maybe-maintainer-clean-target-examples:
+@if target-examples
+maybe-maintainer-clean-target-examples: maintainer-clean-target-examples
 
-.PHONY: all-tcl maybe-all-tcl
-maybe-all-tcl:
-all-tcl: configure-tcl
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tcl && $(MAKE) $(FLAGS_TO_PASS) all)
+maintainer-clean-target-examples: 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/examples" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(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
 
-.PHONY: check-tcl maybe-check-tcl
-maybe-check-tcl:
+@endif target-examples
 
-check-tcl:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tcl && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-tcl maybe-install-tcl
-maybe-install-tcl:
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libffi
+$(TARGET_SUBDIR)/libffi/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \
+       rm -f $(TARGET_SUBDIR)/libffi/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libffi/multilib.out
+@endif target-libffi
 
-install-tcl: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tcl && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-itcl maybe-configure-itcl
-maybe-configure-itcl:
-configure-itcl:
-       @test ! -f itcl/Makefile || exit 0; \
-       [ -d itcl ] || mkdir itcl; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in itcl; \
-       cd itcl || exit 1; \
+.PHONY: configure-target-libffi maybe-configure-target-libffi
+maybe-configure-target-libffi:
+@if target-libffi
+maybe-configure-target-libffi: configure-target-libffi
+configure-target-libffi: $(TARGET_SUBDIR)/libffi/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libffi/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libffi; \
+       cd "$(TARGET_SUBDIR)/libffi" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/itcl"; \
-           libsrcdir="$$s/itcl";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/itcl"; \
-           libsrcdir="$$s/itcl";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libffi/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/libffi"; \
+       libsrcdir="$$s/libffi"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libffi
 
-.PHONY: all-itcl maybe-all-itcl
-maybe-all-itcl:
-all-itcl: configure-itcl
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd itcl && $(MAKE) $(FLAGS_TO_PASS) all)
 
-.PHONY: check-itcl maybe-check-itcl
-maybe-check-itcl:
 
-check-itcl:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd itcl && $(MAKE) $(FLAGS_TO_PASS) check)
+.PHONY: all-target-libffi maybe-all-target-libffi
+maybe-all-target-libffi:
+@if target-libffi
+TARGET-target-libffi=all
+maybe-all-target-libffi: all-target-libffi
+all-target-libffi: configure-target-libffi
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libffi))
+@endif target-libffi
 
 
-.PHONY: install-itcl maybe-install-itcl
-maybe-install-itcl:
 
-install-itcl: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd itcl && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: check-target-libffi maybe-check-target-libffi
+maybe-check-target-libffi:
+@if target-libffi
+maybe-check-target-libffi: check-target-libffi
 
+check-target-libffi:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
-.PHONY: configure-ld maybe-configure-ld
-maybe-configure-ld:
-configure-ld:
-       @test ! -f ld/Makefile || exit 0; \
-       [ -d ld ] || mkdir ld; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in ld; \
-       cd ld || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/ld"; \
-           libsrcdir="$$s/ld";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/ld"; \
-           libsrcdir="$$s/ld";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+@endif target-libffi
 
-.PHONY: all-ld maybe-all-ld
-maybe-all-ld:
-all-ld: configure-ld
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd ld && $(MAKE) $(FLAGS_TO_PASS) all)
+.PHONY: install-target-libffi maybe-install-target-libffi
+maybe-install-target-libffi:
+@if target-libffi
+maybe-install-target-libffi: install-target-libffi
 
-.PHONY: check-ld maybe-check-ld
-maybe-check-ld:
+install-target-libffi: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-check-ld:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd ld && $(MAKE) $(FLAGS_TO_PASS) check)
+@endif target-libffi
 
+# Other targets (info, dvi, etc.)
 
-.PHONY: install-ld maybe-install-ld
-maybe-install-ld:
+.PHONY: maybe-info-target-libffi info-target-libffi
+maybe-info-target-libffi:
+@if target-libffi
+maybe-info-target-libffi: info-target-libffi
 
-install-ld: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd ld && $(MAKE) $(FLAGS_TO_PASS) install)
+info-target-libffi: \
+    configure-target-libffi 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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 target-libffi
 
-.PHONY: configure-libgui maybe-configure-libgui
-maybe-configure-libgui:
-configure-libgui:
-       @test ! -f libgui/Makefile || exit 0; \
-       [ -d libgui ] || mkdir libgui; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in libgui; \
-       cd libgui || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/libgui"; \
-           libsrcdir="$$s/libgui";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/libgui"; \
-           libsrcdir="$$s/libgui";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-dvi-target-libffi dvi-target-libffi
+maybe-dvi-target-libffi:
+@if target-libffi
+maybe-dvi-target-libffi: dvi-target-libffi
+
+dvi-target-libffi: \
+    configure-target-libffi 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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
 
-.PHONY: all-libgui maybe-all-libgui
-maybe-all-libgui:
-all-libgui: configure-libgui
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libgui && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-libgui maybe-check-libgui
-maybe-check-libgui:
-
-check-libgui:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libgui && $(MAKE) $(FLAGS_TO_PASS) check)
+@endif target-libffi
 
+.PHONY: maybe-html-target-libffi html-target-libffi
+maybe-html-target-libffi:
+@if target-libffi
+maybe-html-target-libffi: html-target-libffi
 
-.PHONY: install-libgui maybe-install-libgui
-maybe-install-libgui:
+html-target-libffi: \
+    configure-target-libffi 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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
 
-install-libgui: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libgui && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-libffi
 
+.PHONY: maybe-TAGS-target-libffi TAGS-target-libffi
+maybe-TAGS-target-libffi:
+@if target-libffi
+maybe-TAGS-target-libffi: TAGS-target-libffi
 
-.PHONY: configure-libiberty maybe-configure-libiberty
-maybe-configure-libiberty:
-configure-libiberty:
-       @test ! -f libiberty/Makefile || exit 0; \
-       [ -d libiberty ] || mkdir libiberty; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in libiberty; \
-       cd libiberty || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/libiberty"; \
-           libsrcdir="$$s/libiberty";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
-           libsrcdir="$$s/libiberty";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+TAGS-target-libffi: \
+    configure-target-libffi 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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
 
-.PHONY: all-libiberty maybe-all-libiberty
-maybe-all-libiberty:
-all-libiberty: configure-libiberty
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libffi
 
-.PHONY: check-libiberty maybe-check-libiberty
-maybe-check-libiberty:
+.PHONY: maybe-install-info-target-libffi install-info-target-libffi
+maybe-install-info-target-libffi:
+@if target-libffi
+maybe-install-info-target-libffi: install-info-target-libffi
 
-check-libiberty:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) check)
+install-info-target-libffi: \
+    configure-target-libffi \
+    info-target-libffi 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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 target-libffi
 
-.PHONY: install-libiberty maybe-install-libiberty
-maybe-install-libiberty:
+.PHONY: maybe-installcheck-target-libffi installcheck-target-libffi
+maybe-installcheck-target-libffi:
+@if target-libffi
+maybe-installcheck-target-libffi: installcheck-target-libffi
 
-install-libiberty: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) install)
+installcheck-target-libffi: \
+    configure-target-libffi 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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 target-libffi
 
-.PHONY: configure-libtool maybe-configure-libtool
-maybe-configure-libtool:
-configure-libtool:
-       @test ! -f libtool/Makefile || exit 0; \
-       [ -d libtool ] || mkdir libtool; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in libtool; \
-       cd libtool || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/libtool"; \
-           libsrcdir="$$s/libtool";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/libtool"; \
-           libsrcdir="$$s/libtool";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-mostlyclean-target-libffi mostlyclean-target-libffi
+maybe-mostlyclean-target-libffi:
+@if target-libffi
+maybe-mostlyclean-target-libffi: mostlyclean-target-libffi
+
+mostlyclean-target-libffi: 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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
 
-.PHONY: all-libtool maybe-all-libtool
-maybe-all-libtool:
-all-libtool: configure-libtool
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libtool && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libffi
 
-.PHONY: check-libtool maybe-check-libtool
-maybe-check-libtool:
+.PHONY: maybe-clean-target-libffi clean-target-libffi
+maybe-clean-target-libffi:
+@if target-libffi
+maybe-clean-target-libffi: clean-target-libffi
 
-check-libtool:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libtool && $(MAKE) $(FLAGS_TO_PASS) check)
+clean-target-libffi: 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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 target-libffi
 
-.PHONY: install-libtool maybe-install-libtool
-maybe-install-libtool:
+.PHONY: maybe-distclean-target-libffi distclean-target-libffi
+maybe-distclean-target-libffi:
+@if target-libffi
+maybe-distclean-target-libffi: distclean-target-libffi
 
-install-libtool: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libtool && $(MAKE) $(FLAGS_TO_PASS) install)
+distclean-target-libffi: 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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 target-libffi
 
-.PHONY: configure-m4 maybe-configure-m4
-maybe-configure-m4:
-configure-m4:
-       @test ! -f m4/Makefile || exit 0; \
-       [ -d m4 ] || mkdir m4; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in m4; \
-       cd m4 || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/m4"; \
-           libsrcdir="$$s/m4";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/m4"; \
-           libsrcdir="$$s/m4";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: maybe-maintainer-clean-target-libffi maintainer-clean-target-libffi
+maybe-maintainer-clean-target-libffi:
+@if target-libffi
+maybe-maintainer-clean-target-libffi: maintainer-clean-target-libffi
 
-.PHONY: all-m4 maybe-all-m4
-maybe-all-m4:
-all-m4: configure-m4
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd m4 && $(MAKE) $(FLAGS_TO_PASS) all)
+maintainer-clean-target-libffi: 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libffi" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(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
 
-.PHONY: check-m4 maybe-check-m4
-maybe-check-m4:
+@endif target-libffi
 
-check-m4:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd m4 && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-m4 maybe-install-m4
-maybe-install-m4:
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libjava
+$(TARGET_SUBDIR)/libjava/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libjava ; \
+       rm -f $(TARGET_SUBDIR)/libjava/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libjava/multilib.out
+@endif target-libjava
 
-install-m4: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd m4 && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-make maybe-configure-make
-maybe-configure-make:
-configure-make:
-       @test ! -f make/Makefile || exit 0; \
-       [ -d make ] || mkdir make; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in make; \
-       cd make || exit 1; \
+.PHONY: configure-target-libjava maybe-configure-target-libjava
+maybe-configure-target-libjava:
+@if target-libjava
+maybe-configure-target-libjava: configure-target-libjava
+configure-target-libjava: $(TARGET_SUBDIR)/libjava/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libjava/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libjava ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libjava; \
+       cd "$(TARGET_SUBDIR)/libjava" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/make"; \
-           libsrcdir="$$s/make";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/make"; \
-           libsrcdir="$$s/make";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libjava/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/libjava"; \
+       libsrcdir="$$s/libjava"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libjava
 
-.PHONY: all-make maybe-all-make
-maybe-all-make:
-all-make: configure-make
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd make && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-make maybe-check-make
-maybe-check-make:
-
-check-make:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd make && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-make maybe-install-make
-maybe-install-make:
+.PHONY: all-target-libjava maybe-all-target-libjava
+maybe-all-target-libjava:
+@if target-libjava
+TARGET-target-libjava=all
+maybe-all-target-libjava: all-target-libjava
+all-target-libjava: configure-target-libjava
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'  $(TARGET-target-libjava))
+@endif target-libjava
 
-install-make: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd make && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-mmalloc maybe-configure-mmalloc
-maybe-configure-mmalloc:
-configure-mmalloc:
-       @test ! -f mmalloc/Makefile || exit 0; \
-       [ -d mmalloc ] || mkdir mmalloc; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in mmalloc; \
-       cd mmalloc || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/mmalloc"; \
-           libsrcdir="$$s/mmalloc";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/mmalloc"; \
-           libsrcdir="$$s/mmalloc";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: check-target-libjava maybe-check-target-libjava
+maybe-check-target-libjava:
+@if target-libjava
+maybe-check-target-libjava: check-target-libjava
 
-.PHONY: all-mmalloc maybe-all-mmalloc
-maybe-all-mmalloc:
-all-mmalloc: configure-mmalloc
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) all)
+check-target-libjava:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'   check)
 
-.PHONY: check-mmalloc maybe-check-mmalloc
-maybe-check-mmalloc:
+@endif target-libjava
 
-check-mmalloc:
+.PHONY: install-target-libjava maybe-install-target-libjava
+maybe-install-target-libjava:
+@if target-libjava
+maybe-install-target-libjava: install-target-libjava
 
+install-target-libjava: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: install-mmalloc maybe-install-mmalloc
-maybe-install-mmalloc:
+@endif target-libjava
 
-install-mmalloc: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) install)
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-libjava info-target-libjava
+maybe-info-target-libjava:
+@if target-libjava
+maybe-info-target-libjava: info-target-libjava
 
-.PHONY: configure-patch maybe-configure-patch
-maybe-configure-patch:
-configure-patch:
-       @test ! -f patch/Makefile || exit 0; \
-       [ -d patch ] || mkdir patch; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in patch; \
-       cd patch || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/patch"; \
-           libsrcdir="$$s/patch";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/patch"; \
-           libsrcdir="$$s/patch";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+info-target-libjava: \
+    configure-target-libjava 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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
 
-.PHONY: all-patch maybe-all-patch
-maybe-all-patch:
-all-patch: configure-patch
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd patch && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libjava
 
-.PHONY: check-patch maybe-check-patch
-maybe-check-patch:
+.PHONY: maybe-dvi-target-libjava dvi-target-libjava
+maybe-dvi-target-libjava:
+@if target-libjava
+maybe-dvi-target-libjava: dvi-target-libjava
 
-check-patch:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd patch && $(MAKE) $(FLAGS_TO_PASS) check)
+dvi-target-libjava: \
+    configure-target-libjava 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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 target-libjava
 
-.PHONY: install-patch maybe-install-patch
-maybe-install-patch:
+.PHONY: maybe-html-target-libjava html-target-libjava
+maybe-html-target-libjava:
+@if target-libjava
+maybe-html-target-libjava: html-target-libjava
 
-install-patch: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd patch && $(MAKE) $(FLAGS_TO_PASS) install)
+html-target-libjava: \
+    configure-target-libjava 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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 target-libjava
 
-.PHONY: configure-perl maybe-configure-perl
-maybe-configure-perl:
-configure-perl:
-       @test ! -f perl/Makefile || exit 0; \
-       [ -d perl ] || mkdir perl; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in perl; \
-       cd perl || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/perl"; \
-           libsrcdir="$$s/perl";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/perl"; \
-           libsrcdir="$$s/perl";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-TAGS-target-libjava TAGS-target-libjava
+maybe-TAGS-target-libjava:
+@if target-libjava
+maybe-TAGS-target-libjava: TAGS-target-libjava
+
+TAGS-target-libjava: \
+    configure-target-libjava 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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
 
-.PHONY: all-perl maybe-all-perl
-maybe-all-perl:
-all-perl: configure-perl
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd perl && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libjava
 
-.PHONY: check-perl maybe-check-perl
-maybe-check-perl:
+.PHONY: maybe-install-info-target-libjava install-info-target-libjava
+maybe-install-info-target-libjava:
+@if target-libjava
+maybe-install-info-target-libjava: install-info-target-libjava
 
-check-perl:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd perl && $(MAKE) $(FLAGS_TO_PASS) check)
+install-info-target-libjava: \
+    configure-target-libjava \
+    info-target-libjava 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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 target-libjava
 
-.PHONY: install-perl maybe-install-perl
-maybe-install-perl:
+.PHONY: maybe-installcheck-target-libjava installcheck-target-libjava
+maybe-installcheck-target-libjava:
+@if target-libjava
+maybe-installcheck-target-libjava: installcheck-target-libjava
 
-install-perl: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd perl && $(MAKE) $(FLAGS_TO_PASS) install)
+installcheck-target-libjava: \
+    configure-target-libjava 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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 target-libjava
 
-.PHONY: configure-prms maybe-configure-prms
-maybe-configure-prms:
-configure-prms:
-       @test ! -f prms/Makefile || exit 0; \
-       [ -d prms ] || mkdir prms; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in prms; \
-       cd prms || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/prms"; \
-           libsrcdir="$$s/prms";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/prms"; \
-           libsrcdir="$$s/prms";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-mostlyclean-target-libjava mostlyclean-target-libjava
+maybe-mostlyclean-target-libjava:
+@if target-libjava
+maybe-mostlyclean-target-libjava: mostlyclean-target-libjava
+
+mostlyclean-target-libjava: 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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
 
-.PHONY: all-prms maybe-all-prms
-maybe-all-prms:
-all-prms: configure-prms
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd prms && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libjava
 
-.PHONY: check-prms maybe-check-prms
-maybe-check-prms:
+.PHONY: maybe-clean-target-libjava clean-target-libjava
+maybe-clean-target-libjava:
+@if target-libjava
+maybe-clean-target-libjava: clean-target-libjava
 
-check-prms:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd prms && $(MAKE) $(FLAGS_TO_PASS) check)
+clean-target-libjava: 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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 target-libjava
 
-.PHONY: install-prms maybe-install-prms
-maybe-install-prms:
+.PHONY: maybe-distclean-target-libjava distclean-target-libjava
+maybe-distclean-target-libjava:
+@if target-libjava
+maybe-distclean-target-libjava: distclean-target-libjava
+
+distclean-target-libjava: 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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
 
-install-prms: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd prms && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-libjava
 
+.PHONY: maybe-maintainer-clean-target-libjava maintainer-clean-target-libjava
+maybe-maintainer-clean-target-libjava:
+@if target-libjava
+maybe-maintainer-clean-target-libjava: maintainer-clean-target-libjava
 
-.PHONY: configure-rcs maybe-configure-rcs
-maybe-configure-rcs:
-configure-rcs:
-       @test ! -f rcs/Makefile || exit 0; \
-       [ -d rcs ] || mkdir rcs; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in rcs; \
-       cd rcs || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/rcs"; \
-           libsrcdir="$$s/rcs";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/rcs"; \
-           libsrcdir="$$s/rcs";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+maintainer-clean-target-libjava: 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libjava" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(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
 
-.PHONY: all-rcs maybe-all-rcs
-maybe-all-rcs:
-all-rcs: configure-rcs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd rcs && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-rcs maybe-check-rcs
-maybe-check-rcs:
+@endif target-libjava
 
-check-rcs:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd rcs && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-rcs maybe-install-rcs
-maybe-install-rcs:
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-zlib
+$(TARGET_SUBDIR)/zlib/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/zlib ; \
+       rm -f $(TARGET_SUBDIR)/zlib/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/zlib/multilib.out
+@endif target-zlib
 
-install-rcs: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd rcs && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-readline maybe-configure-readline
-maybe-configure-readline:
-configure-readline:
-       @test ! -f readline/Makefile || exit 0; \
-       [ -d readline ] || mkdir readline; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in readline; \
-       cd readline || exit 1; \
+.PHONY: configure-target-zlib maybe-configure-target-zlib
+maybe-configure-target-zlib:
+@if target-zlib
+maybe-configure-target-zlib: configure-target-zlib
+configure-target-zlib: $(TARGET_SUBDIR)/zlib/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/zlib/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/zlib ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/zlib; \
+       cd "$(TARGET_SUBDIR)/zlib" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/readline"; \
-           libsrcdir="$$s/readline";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/readline"; \
-           libsrcdir="$$s/readline";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/zlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/zlib"; \
+       libsrcdir="$$s/zlib"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-zlib
 
-.PHONY: all-readline maybe-all-readline
-maybe-all-readline:
-all-readline: configure-readline
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd readline && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-readline maybe-check-readline
-maybe-check-readline:
-
-check-readline:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd readline && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-readline maybe-install-readline
-maybe-install-readline:
+.PHONY: all-target-zlib maybe-all-target-zlib
+maybe-all-target-zlib:
+@if target-zlib
+TARGET-target-zlib=all
+maybe-all-target-zlib: all-target-zlib
+all-target-zlib: configure-target-zlib
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-zlib))
+@endif target-zlib
 
-install-readline: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd readline && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-release maybe-configure-release
-maybe-configure-release:
-configure-release:
-       @test ! -f release/Makefile || exit 0; \
-       [ -d release ] || mkdir release; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in release; \
-       cd release || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/release"; \
-           libsrcdir="$$s/release";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/release"; \
-           libsrcdir="$$s/release";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: check-target-zlib maybe-check-target-zlib
+maybe-check-target-zlib:
+@if target-zlib
+maybe-check-target-zlib: check-target-zlib
 
-.PHONY: all-release maybe-all-release
-maybe-all-release:
-all-release: configure-release
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd release && $(MAKE) $(FLAGS_TO_PASS) all)
+check-target-zlib:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
-.PHONY: check-release maybe-check-release
-maybe-check-release:
+@endif target-zlib
 
-check-release:
+.PHONY: install-target-zlib maybe-install-target-zlib
+maybe-install-target-zlib:
+@if target-zlib
+maybe-install-target-zlib: install-target-zlib
 
+install-target-zlib: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: install-release maybe-install-release
-maybe-install-release:
+@endif target-zlib
 
-install-release:
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-zlib info-target-zlib
+maybe-info-target-zlib:
+@if target-zlib
+maybe-info-target-zlib: info-target-zlib
 
-.PHONY: configure-recode maybe-configure-recode
-maybe-configure-recode:
-configure-recode:
-       @test ! -f recode/Makefile || exit 0; \
-       [ -d recode ] || mkdir recode; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in recode; \
-       cd recode || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/recode"; \
-           libsrcdir="$$s/recode";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/recode"; \
-           libsrcdir="$$s/recode";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+info-target-zlib: \
+    configure-target-zlib 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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
 
-.PHONY: all-recode maybe-all-recode
-maybe-all-recode:
-all-recode: configure-recode
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd recode && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-zlib
 
-.PHONY: check-recode maybe-check-recode
-maybe-check-recode:
+.PHONY: maybe-dvi-target-zlib dvi-target-zlib
+maybe-dvi-target-zlib:
+@if target-zlib
+maybe-dvi-target-zlib: dvi-target-zlib
 
-check-recode:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd recode && $(MAKE) $(FLAGS_TO_PASS) check)
+dvi-target-zlib: \
+    configure-target-zlib 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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 target-zlib
 
-.PHONY: install-recode maybe-install-recode
-maybe-install-recode:
+.PHONY: maybe-html-target-zlib html-target-zlib
+maybe-html-target-zlib:
+@if target-zlib
+maybe-html-target-zlib: html-target-zlib
 
-install-recode: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd recode && $(MAKE) $(FLAGS_TO_PASS) install)
+html-target-zlib: \
+    configure-target-zlib 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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 target-zlib
 
-.PHONY: configure-sed maybe-configure-sed
-maybe-configure-sed:
-configure-sed:
-       @test ! -f sed/Makefile || exit 0; \
-       [ -d sed ] || mkdir sed; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in sed; \
-       cd sed || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/sed"; \
-           libsrcdir="$$s/sed";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/sed"; \
-           libsrcdir="$$s/sed";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-TAGS-target-zlib TAGS-target-zlib
+maybe-TAGS-target-zlib:
+@if target-zlib
+maybe-TAGS-target-zlib: TAGS-target-zlib
+
+TAGS-target-zlib: \
+    configure-target-zlib 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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
 
-.PHONY: all-sed maybe-all-sed
-maybe-all-sed:
-all-sed: configure-sed
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sed && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-zlib
 
-.PHONY: check-sed maybe-check-sed
-maybe-check-sed:
+.PHONY: maybe-install-info-target-zlib install-info-target-zlib
+maybe-install-info-target-zlib:
+@if target-zlib
+maybe-install-info-target-zlib: install-info-target-zlib
+
+install-info-target-zlib: \
+    configure-target-zlib \
+    info-target-zlib 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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
 
-check-sed:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sed && $(MAKE) $(FLAGS_TO_PASS) check)
+@endif target-zlib
 
+.PHONY: maybe-installcheck-target-zlib installcheck-target-zlib
+maybe-installcheck-target-zlib:
+@if target-zlib
+maybe-installcheck-target-zlib: installcheck-target-zlib
 
-.PHONY: install-sed maybe-install-sed
-maybe-install-sed:
+installcheck-target-zlib: \
+    configure-target-zlib 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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
 
-install-sed: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sed && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-zlib
 
+.PHONY: maybe-mostlyclean-target-zlib mostlyclean-target-zlib
+maybe-mostlyclean-target-zlib:
+@if target-zlib
+maybe-mostlyclean-target-zlib: mostlyclean-target-zlib
 
-.PHONY: configure-send-pr maybe-configure-send-pr
-maybe-configure-send-pr:
-configure-send-pr:
-       @test ! -f send-pr/Makefile || exit 0; \
-       [ -d send-pr ] || mkdir send-pr; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in send-pr; \
-       cd send-pr || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/send-pr"; \
-           libsrcdir="$$s/send-pr";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/send-pr"; \
-           libsrcdir="$$s/send-pr";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+mostlyclean-target-zlib: 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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
 
-.PHONY: all-send-pr maybe-all-send-pr
-maybe-all-send-pr:
-all-send-pr: configure-send-pr
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-zlib
 
-.PHONY: check-send-pr maybe-check-send-pr
-maybe-check-send-pr:
+.PHONY: maybe-clean-target-zlib clean-target-zlib
+maybe-clean-target-zlib:
+@if target-zlib
+maybe-clean-target-zlib: clean-target-zlib
 
-check-send-pr:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) check)
+clean-target-zlib: 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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 target-zlib
 
-.PHONY: install-send-pr maybe-install-send-pr
-maybe-install-send-pr:
+.PHONY: maybe-distclean-target-zlib distclean-target-zlib
+maybe-distclean-target-zlib:
+@if target-zlib
+maybe-distclean-target-zlib: distclean-target-zlib
 
-install-send-pr: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) install)
+distclean-target-zlib: 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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 target-zlib
 
-.PHONY: configure-shellutils maybe-configure-shellutils
-maybe-configure-shellutils:
-configure-shellutils:
-       @test ! -f shellutils/Makefile || exit 0; \
-       [ -d shellutils ] || mkdir shellutils; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in shellutils; \
-       cd shellutils || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/shellutils"; \
-           libsrcdir="$$s/shellutils";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/shellutils"; \
-           libsrcdir="$$s/shellutils";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: maybe-maintainer-clean-target-zlib maintainer-clean-target-zlib
+maybe-maintainer-clean-target-zlib:
+@if target-zlib
+maybe-maintainer-clean-target-zlib: maintainer-clean-target-zlib
 
-.PHONY: all-shellutils maybe-all-shellutils
-maybe-all-shellutils:
-all-shellutils: configure-shellutils
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) all)
+maintainer-clean-target-zlib: 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/zlib" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(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
 
-.PHONY: check-shellutils maybe-check-shellutils
-maybe-check-shellutils:
+@endif target-zlib
 
-check-shellutils:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-shellutils maybe-install-shellutils
-maybe-install-shellutils:
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-boehm-gc
+$(TARGET_SUBDIR)/boehm-gc/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/boehm-gc ; \
+       rm -f $(TARGET_SUBDIR)/boehm-gc/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/boehm-gc/multilib.out
+@endif target-boehm-gc
 
-install-shellutils: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-sid maybe-configure-sid
-maybe-configure-sid:
-configure-sid:
-       @test ! -f sid/Makefile || exit 0; \
-       [ -d sid ] || mkdir sid; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in sid; \
-       cd sid || exit 1; \
+.PHONY: configure-target-boehm-gc maybe-configure-target-boehm-gc
+maybe-configure-target-boehm-gc:
+@if target-boehm-gc
+maybe-configure-target-boehm-gc: configure-target-boehm-gc
+configure-target-boehm-gc: $(TARGET_SUBDIR)/boehm-gc/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/boehm-gc/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/boehm-gc ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/boehm-gc; \
+       cd "$(TARGET_SUBDIR)/boehm-gc" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/sid"; \
-           libsrcdir="$$s/sid";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/sid"; \
-           libsrcdir="$$s/sid";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/boehm-gc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/boehm-gc"; \
+       libsrcdir="$$s/boehm-gc"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-boehm-gc
 
-.PHONY: all-sid maybe-all-sid
-maybe-all-sid:
-all-sid: configure-sid
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sid && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-sid maybe-check-sid
-maybe-check-sid:
-
-check-sid:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sid && $(MAKE) $(FLAGS_TO_PASS) check)
-
-
-.PHONY: install-sid maybe-install-sid
-maybe-install-sid:
 
-install-sid: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sid && $(MAKE) $(FLAGS_TO_PASS) install)
 
+.PHONY: all-target-boehm-gc maybe-all-target-boehm-gc
+maybe-all-target-boehm-gc:
+@if target-boehm-gc
+TARGET-target-boehm-gc=all
+maybe-all-target-boehm-gc: all-target-boehm-gc
+all-target-boehm-gc: configure-target-boehm-gc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-boehm-gc))
+@endif target-boehm-gc
 
-.PHONY: configure-sim maybe-configure-sim
-maybe-configure-sim:
-configure-sim:
-       @test ! -f sim/Makefile || exit 0; \
-       [ -d sim ] || mkdir sim; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in sim; \
-       cd sim || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/sim"; \
-           libsrcdir="$$s/sim";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/sim"; \
-           libsrcdir="$$s/sim";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
 
-.PHONY: all-sim maybe-all-sim
-maybe-all-sim:
-all-sim: configure-sim
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sim && $(MAKE) $(FLAGS_TO_PASS) all)
 
-.PHONY: check-sim maybe-check-sim
-maybe-check-sim:
+.PHONY: check-target-boehm-gc maybe-check-target-boehm-gc
+maybe-check-target-boehm-gc:
+@if target-boehm-gc
+maybe-check-target-boehm-gc: check-target-boehm-gc
 
-check-sim:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sim && $(MAKE) $(FLAGS_TO_PASS) check)
+check-target-boehm-gc:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-boehm-gc
 
-.PHONY: install-sim maybe-install-sim
-maybe-install-sim:
+.PHONY: install-target-boehm-gc maybe-install-target-boehm-gc
+maybe-install-target-boehm-gc:
+@if target-boehm-gc
+maybe-install-target-boehm-gc: install-target-boehm-gc
 
-install-sim: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sim && $(MAKE) $(FLAGS_TO_PASS) install)
+install-target-boehm-gc: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-boehm-gc
 
-.PHONY: configure-tar maybe-configure-tar
-maybe-configure-tar:
-configure-tar:
-       @test ! -f tar/Makefile || exit 0; \
-       [ -d tar ] || mkdir tar; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in tar; \
-       cd tar || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/tar"; \
-           libsrcdir="$$s/tar";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/tar"; \
-           libsrcdir="$$s/tar";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+# Other targets (info, dvi, etc.)
 
-.PHONY: all-tar maybe-all-tar
-maybe-all-tar:
-all-tar: configure-tar
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tar && $(MAKE) $(FLAGS_TO_PASS) all)
+.PHONY: maybe-info-target-boehm-gc info-target-boehm-gc
+maybe-info-target-boehm-gc:
+@if target-boehm-gc
+maybe-info-target-boehm-gc: info-target-boehm-gc
 
-.PHONY: check-tar maybe-check-tar
-maybe-check-tar:
+info-target-boehm-gc: \
+    configure-target-boehm-gc 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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
 
-check-tar:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tar && $(MAKE) $(FLAGS_TO_PASS) check)
+@endif target-boehm-gc
 
+.PHONY: maybe-dvi-target-boehm-gc dvi-target-boehm-gc
+maybe-dvi-target-boehm-gc:
+@if target-boehm-gc
+maybe-dvi-target-boehm-gc: dvi-target-boehm-gc
 
-.PHONY: install-tar maybe-install-tar
-maybe-install-tar:
+dvi-target-boehm-gc: \
+    configure-target-boehm-gc 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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
 
-install-tar: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tar && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-boehm-gc
 
+.PHONY: maybe-html-target-boehm-gc html-target-boehm-gc
+maybe-html-target-boehm-gc:
+@if target-boehm-gc
+maybe-html-target-boehm-gc: html-target-boehm-gc
 
-.PHONY: configure-texinfo maybe-configure-texinfo
-maybe-configure-texinfo:
-configure-texinfo:
-       @test ! -f texinfo/Makefile || exit 0; \
-       [ -d texinfo ] || mkdir texinfo; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in texinfo; \
-       cd texinfo || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/texinfo"; \
-           libsrcdir="$$s/texinfo";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/texinfo"; \
-           libsrcdir="$$s/texinfo";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+html-target-boehm-gc: \
+    configure-target-boehm-gc 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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
 
-.PHONY: all-texinfo maybe-all-texinfo
-maybe-all-texinfo:
-all-texinfo: configure-texinfo
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd texinfo && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-texinfo maybe-check-texinfo
-maybe-check-texinfo:
-
-check-texinfo:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd texinfo && $(MAKE) $(FLAGS_TO_PASS) check)
+@endif target-boehm-gc
 
+.PHONY: maybe-TAGS-target-boehm-gc TAGS-target-boehm-gc
+maybe-TAGS-target-boehm-gc:
+@if target-boehm-gc
+maybe-TAGS-target-boehm-gc: TAGS-target-boehm-gc
 
-.PHONY: install-texinfo maybe-install-texinfo
-maybe-install-texinfo:
+TAGS-target-boehm-gc: \
+    configure-target-boehm-gc 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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
 
-install-texinfo:
+@endif target-boehm-gc
 
+.PHONY: maybe-install-info-target-boehm-gc install-info-target-boehm-gc
+maybe-install-info-target-boehm-gc:
+@if target-boehm-gc
+maybe-install-info-target-boehm-gc: install-info-target-boehm-gc
 
-.PHONY: configure-textutils maybe-configure-textutils
-maybe-configure-textutils:
-configure-textutils:
-       @test ! -f textutils/Makefile || exit 0; \
-       [ -d textutils ] || mkdir textutils; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in textutils; \
-       cd textutils || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/textutils"; \
-           libsrcdir="$$s/textutils";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/textutils"; \
-           libsrcdir="$$s/textutils";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+install-info-target-boehm-gc: \
+    configure-target-boehm-gc \
+    info-target-boehm-gc 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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
 
-.PHONY: all-textutils maybe-all-textutils
-maybe-all-textutils:
-all-textutils: configure-textutils
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd textutils && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-textutils maybe-check-textutils
-maybe-check-textutils:
-
-check-textutils:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd textutils && $(MAKE) $(FLAGS_TO_PASS) check)
+@endif target-boehm-gc
 
+.PHONY: maybe-installcheck-target-boehm-gc installcheck-target-boehm-gc
+maybe-installcheck-target-boehm-gc:
+@if target-boehm-gc
+maybe-installcheck-target-boehm-gc: installcheck-target-boehm-gc
 
-.PHONY: install-textutils maybe-install-textutils
-maybe-install-textutils:
+installcheck-target-boehm-gc: \
+    configure-target-boehm-gc 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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
 
-install-textutils: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd textutils && $(MAKE) $(FLAGS_TO_PASS) install)
+@endif target-boehm-gc
 
+.PHONY: maybe-mostlyclean-target-boehm-gc mostlyclean-target-boehm-gc
+maybe-mostlyclean-target-boehm-gc:
+@if target-boehm-gc
+maybe-mostlyclean-target-boehm-gc: mostlyclean-target-boehm-gc
 
-.PHONY: configure-time maybe-configure-time
-maybe-configure-time:
-configure-time:
-       @test ! -f time/Makefile || exit 0; \
-       [ -d time ] || mkdir time; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in time; \
-       cd time || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/time"; \
-           libsrcdir="$$s/time";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/time"; \
-           libsrcdir="$$s/time";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+mostlyclean-target-boehm-gc: 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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
 
-.PHONY: all-time maybe-all-time
-maybe-all-time:
-all-time: configure-time
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd time && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-boehm-gc
 
-.PHONY: check-time maybe-check-time
-maybe-check-time:
+.PHONY: maybe-clean-target-boehm-gc clean-target-boehm-gc
+maybe-clean-target-boehm-gc:
+@if target-boehm-gc
+maybe-clean-target-boehm-gc: clean-target-boehm-gc
 
-check-time:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd time && $(MAKE) $(FLAGS_TO_PASS) check)
+clean-target-boehm-gc: 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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 target-boehm-gc
 
-.PHONY: install-time maybe-install-time
-maybe-install-time:
+.PHONY: maybe-distclean-target-boehm-gc distclean-target-boehm-gc
+maybe-distclean-target-boehm-gc:
+@if target-boehm-gc
+maybe-distclean-target-boehm-gc: distclean-target-boehm-gc
 
-install-time: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd time && $(MAKE) $(FLAGS_TO_PASS) install)
+distclean-target-boehm-gc: 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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 target-boehm-gc
 
-.PHONY: configure-uudecode maybe-configure-uudecode
-maybe-configure-uudecode:
-configure-uudecode:
-       @test ! -f uudecode/Makefile || exit 0; \
-       [ -d uudecode ] || mkdir uudecode; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in uudecode; \
-       cd uudecode || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/uudecode"; \
-           libsrcdir="$$s/uudecode";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/uudecode"; \
-           libsrcdir="$$s/uudecode";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: maybe-maintainer-clean-target-boehm-gc maintainer-clean-target-boehm-gc
+maybe-maintainer-clean-target-boehm-gc:
+@if target-boehm-gc
+maybe-maintainer-clean-target-boehm-gc: maintainer-clean-target-boehm-gc
 
-.PHONY: all-uudecode maybe-all-uudecode
-maybe-all-uudecode:
-all-uudecode: configure-uudecode
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) all)
+maintainer-clean-target-boehm-gc: 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/boehm-gc" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(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
 
-.PHONY: check-uudecode maybe-check-uudecode
-maybe-check-uudecode:
+@endif target-boehm-gc
 
-check-uudecode:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-uudecode maybe-install-uudecode
-maybe-install-uudecode:
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-qthreads
+$(TARGET_SUBDIR)/qthreads/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/qthreads ; \
+       rm -f $(TARGET_SUBDIR)/qthreads/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/qthreads/multilib.out
+@endif target-qthreads
 
-install-uudecode: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-wdiff maybe-configure-wdiff
-maybe-configure-wdiff:
-configure-wdiff:
-       @test ! -f wdiff/Makefile || exit 0; \
-       [ -d wdiff ] || mkdir wdiff; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in wdiff; \
-       cd wdiff || exit 1; \
+.PHONY: configure-target-qthreads maybe-configure-target-qthreads
+maybe-configure-target-qthreads:
+@if target-qthreads
+maybe-configure-target-qthreads: configure-target-qthreads
+configure-target-qthreads: $(TARGET_SUBDIR)/qthreads/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/qthreads/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/qthreads ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/qthreads; \
+       cd "$(TARGET_SUBDIR)/qthreads" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/wdiff"; \
-           libsrcdir="$$s/wdiff";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/wdiff"; \
-           libsrcdir="$$s/wdiff";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/qthreads/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/qthreads"; \
+       libsrcdir="$$s/qthreads"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-qthreads
 
-.PHONY: all-wdiff maybe-all-wdiff
-maybe-all-wdiff:
-all-wdiff: configure-wdiff
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-wdiff maybe-check-wdiff
-maybe-check-wdiff:
-
-check-wdiff:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) check)
 
 
-.PHONY: install-wdiff maybe-install-wdiff
-maybe-install-wdiff:
+.PHONY: all-target-qthreads maybe-all-target-qthreads
+maybe-all-target-qthreads:
+@if target-qthreads
+TARGET-target-qthreads=all
+maybe-all-target-qthreads: all-target-qthreads
+all-target-qthreads: configure-target-qthreads
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-qthreads))
+@endif target-qthreads
 
-install-wdiff: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-zip maybe-configure-zip
-maybe-configure-zip:
-configure-zip:
-       @test ! -f zip/Makefile || exit 0; \
-       [ -d zip ] || mkdir zip; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in zip; \
-       cd zip || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/zip"; \
-           libsrcdir="$$s/zip";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/zip"; \
-           libsrcdir="$$s/zip";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: check-target-qthreads maybe-check-target-qthreads
+maybe-check-target-qthreads:
+@if target-qthreads
+maybe-check-target-qthreads: check-target-qthreads
 
-.PHONY: all-zip maybe-all-zip
-maybe-all-zip:
-all-zip: configure-zip
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd zip && $(MAKE) $(FLAGS_TO_PASS) all)
+check-target-qthreads:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
-.PHONY: check-zip maybe-check-zip
-maybe-check-zip:
+@endif target-qthreads
 
-# This module is only tested in a native toolchain.
-check-zip:
-       @if [ '$(host_canonical)' = '$(target_canonical)' ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd zip && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+.PHONY: install-target-qthreads maybe-install-target-qthreads
+maybe-install-target-qthreads:
+@if target-qthreads
+maybe-install-target-qthreads: install-target-qthreads
 
+install-target-qthreads: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: install-zip maybe-install-zip
-maybe-install-zip:
+@endif target-qthreads
 
-install-zip: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd zip && $(MAKE) $(FLAGS_TO_PASS) install)
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-qthreads info-target-qthreads
+maybe-info-target-qthreads:
+@if target-qthreads
+maybe-info-target-qthreads: info-target-qthreads
 
-.PHONY: configure-zlib maybe-configure-zlib
-maybe-configure-zlib:
-configure-zlib:
-       @test ! -f zlib/Makefile || exit 0; \
-       [ -d zlib ] || mkdir zlib; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in zlib; \
-       cd zlib || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/zlib"; \
-           libsrcdir="$$s/zlib";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/zlib"; \
-           libsrcdir="$$s/zlib";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+info-target-qthreads: \
+    configure-target-qthreads 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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
 
-.PHONY: all-zlib maybe-all-zlib
-maybe-all-zlib:
-all-zlib: configure-zlib
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd zlib && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-qthreads
 
-.PHONY: check-zlib maybe-check-zlib
-maybe-check-zlib:
+.PHONY: maybe-dvi-target-qthreads dvi-target-qthreads
+maybe-dvi-target-qthreads:
+@if target-qthreads
+maybe-dvi-target-qthreads: dvi-target-qthreads
 
-check-zlib:
+dvi-target-qthreads: \
+    configure-target-qthreads 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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 target-qthreads
 
-.PHONY: install-zlib maybe-install-zlib
-maybe-install-zlib:
+.PHONY: maybe-html-target-qthreads html-target-qthreads
+maybe-html-target-qthreads:
+@if target-qthreads
+maybe-html-target-qthreads: html-target-qthreads
 
-install-zlib:
+html-target-qthreads: \
+    configure-target-qthreads 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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 target-qthreads
 
-.PHONY: configure-gdb maybe-configure-gdb
-maybe-configure-gdb:
-configure-gdb:
-       @test ! -f gdb/Makefile || exit 0; \
-       [ -d gdb ] || mkdir gdb; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in gdb; \
-       cd gdb || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gdb"; \
-           libsrcdir="$$s/gdb";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/gdb"; \
-           libsrcdir="$$s/gdb";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-TAGS-target-qthreads TAGS-target-qthreads
+maybe-TAGS-target-qthreads:
+@if target-qthreads
+maybe-TAGS-target-qthreads: TAGS-target-qthreads
+
+TAGS-target-qthreads: \
+    configure-target-qthreads 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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
 
-.PHONY: all-gdb maybe-all-gdb
-maybe-all-gdb:
-all-gdb: configure-gdb
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+@endif target-qthreads
 
-.PHONY: check-gdb maybe-check-gdb
-maybe-check-gdb:
+.PHONY: maybe-install-info-target-qthreads install-info-target-qthreads
+maybe-install-info-target-qthreads:
+@if target-qthreads
+maybe-install-info-target-qthreads: install-info-target-qthreads
 
-check-gdb:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+install-info-target-qthreads: \
+    configure-target-qthreads \
+    info-target-qthreads 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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 target-qthreads
 
-.PHONY: install-gdb maybe-install-gdb
-maybe-install-gdb:
+.PHONY: maybe-installcheck-target-qthreads installcheck-target-qthreads
+maybe-installcheck-target-qthreads:
+@if target-qthreads
+maybe-installcheck-target-qthreads: installcheck-target-qthreads
 
-install-gdb: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+installcheck-target-qthreads: \
+    configure-target-qthreads 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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 target-qthreads
 
-.PHONY: configure-expect maybe-configure-expect
-maybe-configure-expect:
-configure-expect:
-       @test ! -f expect/Makefile || exit 0; \
-       [ -d expect ] || mkdir expect; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in expect; \
-       cd expect || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/expect"; \
-           libsrcdir="$$s/expect";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/expect"; \
-           libsrcdir="$$s/expect";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-mostlyclean-target-qthreads mostlyclean-target-qthreads
+maybe-mostlyclean-target-qthreads:
+@if target-qthreads
+maybe-mostlyclean-target-qthreads: mostlyclean-target-qthreads
+
+mostlyclean-target-qthreads: 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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
 
-.PHONY: all-expect maybe-all-expect
-maybe-all-expect:
-all-expect: configure-expect
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+@endif target-qthreads
 
-.PHONY: check-expect maybe-check-expect
-maybe-check-expect:
+.PHONY: maybe-clean-target-qthreads clean-target-qthreads
+maybe-clean-target-qthreads:
+@if target-qthreads
+maybe-clean-target-qthreads: clean-target-qthreads
 
-check-expect:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+clean-target-qthreads: 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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 target-qthreads
 
-.PHONY: install-expect maybe-install-expect
-maybe-install-expect:
+.PHONY: maybe-distclean-target-qthreads distclean-target-qthreads
+maybe-distclean-target-qthreads:
+@if target-qthreads
+maybe-distclean-target-qthreads: distclean-target-qthreads
 
-install-expect: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+distclean-target-qthreads: 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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 target-qthreads
 
-.PHONY: configure-guile maybe-configure-guile
-maybe-configure-guile:
-configure-guile:
-       @test ! -f guile/Makefile || exit 0; \
-       [ -d guile ] || mkdir guile; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in guile; \
-       cd guile || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/guile"; \
-           libsrcdir="$$s/guile";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/guile"; \
-           libsrcdir="$$s/guile";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: maybe-maintainer-clean-target-qthreads maintainer-clean-target-qthreads
+maybe-maintainer-clean-target-qthreads:
+@if target-qthreads
+maybe-maintainer-clean-target-qthreads: maintainer-clean-target-qthreads
 
-.PHONY: all-guile maybe-all-guile
-maybe-all-guile:
-all-guile: configure-guile
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+maintainer-clean-target-qthreads: 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/qthreads" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(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
 
-.PHONY: check-guile maybe-check-guile
-maybe-check-guile:
+@endif target-qthreads
 
-check-guile:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
 
 
-.PHONY: install-guile maybe-install-guile
-maybe-install-guile:
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-rda
+$(TARGET_SUBDIR)/rda/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/rda ; \
+       rm -f $(TARGET_SUBDIR)/rda/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/rda/multilib.out
+@endif target-rda
 
-install-guile: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-tk maybe-configure-tk
-maybe-configure-tk:
-configure-tk:
-       @test ! -f tk/Makefile || exit 0; \
-       [ -d tk ] || mkdir tk; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in tk; \
-       cd tk || exit 1; \
+.PHONY: configure-target-rda maybe-configure-target-rda
+maybe-configure-target-rda:
+@if target-rda
+maybe-configure-target-rda: configure-target-rda
+configure-target-rda: $(TARGET_SUBDIR)/rda/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/rda/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/rda ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/rda; \
+       cd "$(TARGET_SUBDIR)/rda" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/tk"; \
-           libsrcdir="$$s/tk";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/tk"; \
-           libsrcdir="$$s/tk";; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/rda/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       srcdiroption="--srcdir=$${topdir}/rda"; \
+       libsrcdir="$$s/rda"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-rda
 
-.PHONY: all-tk maybe-all-tk
-maybe-all-tk:
-all-tk: configure-tk
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
 
-.PHONY: check-tk maybe-check-tk
-maybe-check-tk:
 
-check-tk:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+.PHONY: all-target-rda maybe-all-target-rda
+maybe-all-target-rda:
+@if target-rda
+TARGET-target-rda=all
+maybe-all-target-rda: all-target-rda
+all-target-rda: configure-target-rda
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-rda))
+@endif target-rda
 
 
-.PHONY: install-tk maybe-install-tk
-maybe-install-tk:
 
-install-tk: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-tix maybe-configure-tix
-maybe-configure-tix:
-configure-tix:
-       @test ! -f tix/Makefile || exit 0; \
-       [ -d tix ] || mkdir tix; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in tix; \
-       cd tix || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/tix"; \
-           libsrcdir="$$s/tix";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/tix"; \
-           libsrcdir="$$s/tix";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+.PHONY: check-target-rda maybe-check-target-rda
+maybe-check-target-rda:
+@if target-rda
+maybe-check-target-rda: check-target-rda
 
-.PHONY: all-tix maybe-all-tix
-maybe-all-tix:
-all-tix: configure-tix
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+check-target-rda:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
-.PHONY: check-tix maybe-check-tix
-maybe-check-tix:
+@endif target-rda
 
-check-tix:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+.PHONY: install-target-rda maybe-install-target-rda
+maybe-install-target-rda:
+@if target-rda
+maybe-install-target-rda: install-target-rda
 
+install-target-rda: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: install-tix maybe-install-tix
-maybe-install-tix:
+@endif target-rda
 
-install-tix: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-rda info-target-rda
+maybe-info-target-rda:
+@if target-rda
+maybe-info-target-rda: info-target-rda
 
-.PHONY: configure-libtermcap maybe-configure-libtermcap
-maybe-configure-libtermcap:
-configure-libtermcap:
-       @test ! -f libtermcap/Makefile || exit 0; \
-       [ -d libtermcap ] || mkdir libtermcap; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in libtermcap; \
-       cd libtermcap || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/libtermcap"; \
-           libsrcdir="$$s/libtermcap";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/libtermcap"; \
-           libsrcdir="$$s/libtermcap";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+info-target-rda: \
+    configure-target-rda 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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
 
-.PHONY: all-libtermcap maybe-all-libtermcap
-maybe-all-libtermcap:
-all-libtermcap: configure-libtermcap
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-rda
 
-.PHONY: check-libtermcap maybe-check-libtermcap
-maybe-check-libtermcap:
+.PHONY: maybe-dvi-target-rda dvi-target-rda
+maybe-dvi-target-rda:
+@if target-rda
+maybe-dvi-target-rda: dvi-target-rda
 
-check-libtermcap:
+dvi-target-rda: \
+    configure-target-rda 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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 target-rda
 
-.PHONY: install-libtermcap maybe-install-libtermcap
-maybe-install-libtermcap:
+.PHONY: maybe-html-target-rda html-target-rda
+maybe-html-target-rda:
+@if target-rda
+maybe-html-target-rda: html-target-rda
 
-install-libtermcap: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) install)
+html-target-rda: \
+    configure-target-rda 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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 target-rda
 
-.PHONY: configure-utils maybe-configure-utils
-maybe-configure-utils:
-configure-utils:
-       @test ! -f utils/Makefile || exit 0; \
-       [ -d utils ] || mkdir utils; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in utils; \
-       cd utils || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/utils"; \
-           libsrcdir="$$s/utils";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/utils"; \
-           libsrcdir="$$s/utils";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+.PHONY: maybe-TAGS-target-rda TAGS-target-rda
+maybe-TAGS-target-rda:
+@if target-rda
+maybe-TAGS-target-rda: TAGS-target-rda
+
+TAGS-target-rda: \
+    configure-target-rda 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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
 
-.PHONY: all-utils maybe-all-utils
-maybe-all-utils:
-all-utils: configure-utils
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd utils && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-rda
 
-.PHONY: check-utils maybe-check-utils
-maybe-check-utils:
+.PHONY: maybe-install-info-target-rda install-info-target-rda
+maybe-install-info-target-rda:
+@if target-rda
+maybe-install-info-target-rda: install-info-target-rda
 
-check-utils:
+install-info-target-rda: \
+    configure-target-rda \
+    info-target-rda 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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 target-rda
 
-.PHONY: install-utils maybe-install-utils
-maybe-install-utils:
+.PHONY: maybe-installcheck-target-rda installcheck-target-rda
+maybe-installcheck-target-rda:
+@if target-rda
+maybe-installcheck-target-rda: installcheck-target-rda
 
-install-utils: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd utils && $(MAKE) $(FLAGS_TO_PASS) install)
+installcheck-target-rda: \
+    configure-target-rda 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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 target-rda
 
+.PHONY: maybe-mostlyclean-target-rda mostlyclean-target-rda
+maybe-mostlyclean-target-rda:
+@if target-rda
+maybe-mostlyclean-target-rda: mostlyclean-target-rda
 
-# ---------------------------------------
-# Modules which run on the target machine
-# ---------------------------------------
+mostlyclean-target-rda: 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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
 
-.PHONY: configure-target-libstdc++-v3 maybe-configure-target-libstdc++-v3
-maybe-configure-target-libstdc++-v3:
+@endif target-rda
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libstdc++-v3/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/libstdc++-v3 ] || \
-         mkdir $(TARGET_SUBDIR)/libstdc++-v3; \
-       rm -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libstdc++-v3/multilib.out
+.PHONY: maybe-clean-target-rda clean-target-rda
+maybe-clean-target-rda:
+@if target-rda
+maybe-clean-target-rda: clean-target-rda
 
-configure-target-libstdc++-v3: $(TARGET_SUBDIR)/libstdc++-v3/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/libstdc++-v3 ] || \
-         mkdir $(TARGET_SUBDIR)/libstdc++-v3;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
-       CXX="$(RAW_CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/libstdc++-v3; \
-       cd "$(TARGET_SUBDIR)/libstdc++-v3" || exit 1; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libstdc++-v3 "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/libstdc++-v3"; \
-         libsrcdir="$$s/libstdc++-v3"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
+clean-target-rda: 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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
 
-.PHONY: all-target-libstdc++-v3 maybe-all-target-libstdc++-v3
-maybe-all-target-libstdc++-v3:
-all-target-libstdc++-v3: configure-target-libstdc++-v3
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'  all)
+@endif target-rda
 
-.PHONY: check-target-libstdc++-v3 maybe-check-target-libstdc++-v3
-maybe-check-target-libstdc++-v3:
+.PHONY: maybe-distclean-target-rda distclean-target-rda
+maybe-distclean-target-rda:
+@if target-rda
+maybe-distclean-target-rda: distclean-target-rda
 
-check-target-libstdc++-v3:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'  check)
+distclean-target-rda: 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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 target-rda
 
-.PHONY: install-target-libstdc++-v3 maybe-install-target-libstdc++-v3
-maybe-install-target-libstdc++-v3:
+.PHONY: maybe-maintainer-clean-target-rda maintainer-clean-target-rda
+maybe-maintainer-clean-target-rda:
+@if target-rda
+maybe-maintainer-clean-target-rda: maintainer-clean-target-rda
 
-install-target-libstdc++-v3: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+maintainer-clean-target-rda: 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/rda" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(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 target-rda
 
-.PHONY: configure-target-newlib maybe-configure-target-newlib
-maybe-configure-target-newlib:
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/newlib/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/newlib ] || \
-         mkdir $(TARGET_SUBDIR)/newlib; \
-       rm -f $(TARGET_SUBDIR)/newlib/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/newlib/multilib.out
 
-configure-target-newlib: $(TARGET_SUBDIR)/newlib/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/newlib/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/newlib ] || \
-         mkdir $(TARGET_SUBDIR)/newlib;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/newlib; \
-       cd "$(TARGET_SUBDIR)/newlib" || exit 1; \
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+@if target-libada
+$(TARGET_SUBDIR)/libada/multilib.out: multilib.out
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libada ; \
+       rm -f $(TARGET_SUBDIR)/libada/Makefile || : ; \
+       cp multilib.out $(TARGET_SUBDIR)/libada/multilib.out
+@endif target-libada
+
+
+
+.PHONY: configure-target-libada maybe-configure-target-libada
+maybe-configure-target-libada:
+@if target-libada
+maybe-configure-target-libada: configure-target-libada
+configure-target-libada: $(TARGET_SUBDIR)/libada/multilib.out
+       @test ! -f $(TARGET_SUBDIR)/libada/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libada ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libada; \
+       cd "$(TARGET_SUBDIR)/libada" || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libada/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/newlib "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/newlib"; \
-         libsrcdir="$$s/newlib"; \
-       fi; \
+       srcdiroption="--srcdir=$${topdir}/libada"; \
+       libsrcdir="$$s/libada"; \
        rm -f no-such-file || : ; \
        CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
+         $(TARGET_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif target-libada
 
-.PHONY: all-target-newlib maybe-all-target-newlib
-maybe-all-target-newlib:
-all-target-newlib: configure-target-newlib
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/newlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
 
-.PHONY: check-target-newlib maybe-check-target-newlib
-maybe-check-target-newlib:
 
-check-target-newlib:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/newlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+.PHONY: all-target-libada maybe-all-target-libada
+maybe-all-target-libada:
+@if target-libada
+TARGET-target-libada=all
+maybe-all-target-libada: all-target-libada
+all-target-libada: configure-target-libada
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libada))
+@endif target-libada
 
 
-.PHONY: install-target-newlib maybe-install-target-newlib
-maybe-install-target-newlib:
 
-install-target-newlib: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/newlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+.PHONY: check-target-libada maybe-check-target-libada
+maybe-check-target-libada:
+@if target-libada
+maybe-check-target-libada: check-target-libada
 
+check-target-libada:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
-.PHONY: configure-target-libf2c maybe-configure-target-libf2c
-maybe-configure-target-libf2c:
+@endif target-libada
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libf2c/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/libf2c ] || \
-         mkdir $(TARGET_SUBDIR)/libf2c; \
-       rm -f $(TARGET_SUBDIR)/libf2c/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libf2c/multilib.out
-
-configure-target-libf2c: $(TARGET_SUBDIR)/libf2c/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libf2c/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/libf2c ] || \
-         mkdir $(TARGET_SUBDIR)/libf2c;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/libf2c; \
-       cd "$(TARGET_SUBDIR)/libf2c" || exit 1; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libf2c "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/libf2c"; \
-         libsrcdir="$$s/libf2c"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
+.PHONY: install-target-libada maybe-install-target-libada
+maybe-install-target-libada:
+@if target-libada
+maybe-install-target-libada: install-target-libada
 
-.PHONY: all-target-libf2c maybe-all-target-libf2c
-maybe-all-target-libf2c:
-all-target-libf2c: configure-target-libf2c
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libf2c && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+install-target-libada: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: check-target-libf2c maybe-check-target-libf2c
-maybe-check-target-libf2c:
+@endif target-libada
 
-check-target-libf2c:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libf2c && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+# Other targets (info, dvi, etc.)
 
+.PHONY: maybe-info-target-libada info-target-libada
+maybe-info-target-libada:
+@if target-libada
+maybe-info-target-libada: info-target-libada
 
-.PHONY: install-target-libf2c maybe-install-target-libf2c
-maybe-install-target-libf2c:
+info-target-libada: \
+    configure-target-libada 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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
 
-install-target-libf2c: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libf2c && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+@endif target-libada
 
+.PHONY: maybe-dvi-target-libada dvi-target-libada
+maybe-dvi-target-libada:
+@if target-libada
+maybe-dvi-target-libada: dvi-target-libada
 
-.PHONY: configure-target-libobjc maybe-configure-target-libobjc
-maybe-configure-target-libobjc:
+dvi-target-libada: \
+    configure-target-libada 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libobjc/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/libobjc ] || \
-         mkdir $(TARGET_SUBDIR)/libobjc; \
-       rm -f $(TARGET_SUBDIR)/libobjc/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libobjc/multilib.out
+@endif target-libada
 
-configure-target-libobjc: $(TARGET_SUBDIR)/libobjc/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libobjc/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/libobjc ] || \
-         mkdir $(TARGET_SUBDIR)/libobjc;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/libobjc; \
-       cd "$(TARGET_SUBDIR)/libobjc" || exit 1; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libobjc "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/libobjc"; \
-         libsrcdir="$$s/libobjc"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
+.PHONY: maybe-html-target-libada html-target-libada
+maybe-html-target-libada:
+@if target-libada
+maybe-html-target-libada: html-target-libada
 
-.PHONY: all-target-libobjc maybe-all-target-libobjc
-maybe-all-target-libobjc:
-all-target-libobjc: configure-target-libobjc
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libobjc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+html-target-libada: \
+    configure-target-libada 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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
 
-.PHONY: check-target-libobjc maybe-check-target-libobjc
-maybe-check-target-libobjc:
+@endif target-libada
 
-check-target-libobjc:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libobjc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+.PHONY: maybe-TAGS-target-libada TAGS-target-libada
+maybe-TAGS-target-libada:
+@if target-libada
+maybe-TAGS-target-libada: TAGS-target-libada
 
+TAGS-target-libada: \
+    configure-target-libada 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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
 
-.PHONY: install-target-libobjc maybe-install-target-libobjc
-maybe-install-target-libobjc:
+@endif target-libada
 
-install-target-libobjc: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libobjc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+.PHONY: maybe-install-info-target-libada install-info-target-libada
+maybe-install-info-target-libada:
+@if target-libada
+maybe-install-info-target-libada: install-info-target-libada
 
+install-info-target-libada: \
+    configure-target-libada \
+    info-target-libada 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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
 
-.PHONY: configure-target-libtermcap maybe-configure-target-libtermcap
-maybe-configure-target-libtermcap:
+@endif target-libada
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libtermcap/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/libtermcap ] || \
-         mkdir $(TARGET_SUBDIR)/libtermcap; \
-       rm -f $(TARGET_SUBDIR)/libtermcap/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libtermcap/multilib.out
+.PHONY: maybe-installcheck-target-libada installcheck-target-libada
+maybe-installcheck-target-libada:
+@if target-libada
+maybe-installcheck-target-libada: installcheck-target-libada
 
-configure-target-libtermcap: $(TARGET_SUBDIR)/libtermcap/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libtermcap/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/libtermcap ] || \
-         mkdir $(TARGET_SUBDIR)/libtermcap;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/libtermcap; \
-       cd "$(TARGET_SUBDIR)/libtermcap" || exit 1; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libtermcap "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/libtermcap"; \
-         libsrcdir="$$s/libtermcap"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
+installcheck-target-libada: \
+    configure-target-libada 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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
 
-.PHONY: all-target-libtermcap maybe-all-target-libtermcap
-maybe-all-target-libtermcap:
-all-target-libtermcap: configure-target-libtermcap
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+@endif target-libada
 
-.PHONY: check-target-libtermcap maybe-check-target-libtermcap
-maybe-check-target-libtermcap:
+.PHONY: maybe-mostlyclean-target-libada mostlyclean-target-libada
+maybe-mostlyclean-target-libada:
+@if target-libada
+maybe-mostlyclean-target-libada: mostlyclean-target-libada
 
-# Dummy target for uncheckable module.
-check-target-libtermcap:
+mostlyclean-target-libada: 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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 target-libada
 
-.PHONY: install-target-libtermcap maybe-install-target-libtermcap
-maybe-install-target-libtermcap:
+.PHONY: maybe-clean-target-libada clean-target-libada
+maybe-clean-target-libada:
+@if target-libada
+maybe-clean-target-libada: clean-target-libada
 
-install-target-libtermcap: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+clean-target-libada: 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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 target-libada
 
-.PHONY: configure-target-winsup maybe-configure-target-winsup
-maybe-configure-target-winsup:
+.PHONY: maybe-distclean-target-libada distclean-target-libada
+maybe-distclean-target-libada:
+@if target-libada
+maybe-distclean-target-libada: distclean-target-libada
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/winsup/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/winsup ] || \
-         mkdir $(TARGET_SUBDIR)/winsup; \
-       rm -f $(TARGET_SUBDIR)/winsup/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/winsup/multilib.out
+distclean-target-libada: 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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
 
-configure-target-winsup: $(TARGET_SUBDIR)/winsup/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/winsup/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/winsup ] || \
-         mkdir $(TARGET_SUBDIR)/winsup;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/winsup; \
-       cd "$(TARGET_SUBDIR)/winsup" || exit 1; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/winsup "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/winsup"; \
-         libsrcdir="$$s/winsup"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
+@endif target-libada
+
+.PHONY: maybe-maintainer-clean-target-libada maintainer-clean-target-libada
+maybe-maintainer-clean-target-libada:
+@if target-libada
+maybe-maintainer-clean-target-libada: maintainer-clean-target-libada
+
+maintainer-clean-target-libada: 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libada" ; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(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
 
-.PHONY: all-target-winsup maybe-all-target-winsup
-maybe-all-target-winsup:
-all-target-winsup: configure-target-winsup
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/winsup && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+@endif target-libada
 
-.PHONY: check-target-winsup maybe-check-target-winsup
-maybe-check-target-winsup:
 
-check-target-winsup:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/winsup && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
 
+# ----------
+# GCC module
+# ----------
 
-.PHONY: install-target-winsup maybe-install-target-winsup
-maybe-install-target-winsup:
+@if gcc-no-bootstrap
+# GCC has some more recursive targets, which trigger the old
+# (but still current, until the toplevel bootstrap project
+# is finished) compiler bootstrapping rules.
 
-install-target-winsup: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/winsup && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+GCC_STRAP_TARGETS = bootstrap bootstrap-lean bootstrap2 bootstrap2-lean bootstrap3 bootstrap3-lean bootstrap4 bootstrap4-lean bubblestrap quickstrap cleanstrap restrap
+.PHONY: $(GCC_STRAP_TARGETS)
+$(GCC_STRAP_TARGETS): all-prebootstrap configure-gcc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo "Bootstrapping the compiler"; \
+       $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,:[ :]*,:,g;s,^[ :]*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
+       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       case "$@" in \
+         *bootstrap4-lean ) \
+           msg="Comparing stage3 and stage4 of the compiler"; \
+           compare=compare3-lean ;; \
+         *bootstrap4 ) \
+           msg="Comparing stage3 and stage4 of the compiler"; \
+           compare=compare3 ;; \
+         *-lean ) \
+           msg="Comparing stage2 and stage3 of the compiler"; \
+           compare=compare-lean ;; \
+         * ) \
+           msg="Comparing stage2 and stage3 of the compiler"; \
+           compare=compare ;; \
+       esac; \
+       $(HOST_EXPORTS) \
+       echo "$$msg"; \
+       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+       echo "Building runtime libraries"; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
+
+profiledbootstrap: all-prebootstrap configure-gcc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,:[ :]*,:,g;s,^[ :]*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
+       echo "Bootstrapping training compiler"; \
+       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stageprofile_build
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo "Building feedback based compiler"; \
+       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stagefeedback_build
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+       echo "Building runtime libraries"; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
 
+.PHONY: cross
+cross: all-build all-gas all-ld
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo "Building the C and C++ compiler"; \
+       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++"
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+       echo "Building runtime libraries"; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) LANGUAGES="c c++" all
+@endif gcc-no-bootstrap
 
-.PHONY: configure-target-libgloss maybe-configure-target-libgloss
-maybe-configure-target-libgloss:
+@if gcc
+.PHONY: check-gcc-c++
+check-gcc-c++:
+       @if [ -f ./gcc/Makefile ] ; then \
+         r=`${PWD_COMMAND}`; export r; \
+         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+         $(HOST_EXPORTS) \
+         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
+       else \
+         true; \
+       fi
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libgloss/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/libgloss ] || \
-         mkdir $(TARGET_SUBDIR)/libgloss; \
-       rm -f $(TARGET_SUBDIR)/libgloss/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libgloss/multilib.out
+.PHONY: check-c++
+check-c++: check-target-libstdc++-v3 check-gcc-c++
 
-configure-target-libgloss: $(TARGET_SUBDIR)/libgloss/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libgloss/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/libgloss ] || \
-         mkdir $(TARGET_SUBDIR)/libgloss;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/libgloss; \
-       cd "$(TARGET_SUBDIR)/libgloss" || exit 1; \
+# Install the gcc headers files, but not the fixed include files,
+# which Cygnus is not allowed to distribute.  This rule is very
+# dependent on the workings of the gcc Makefile.in.
+.PHONY: gcc-no-fixedincludes
+gcc-no-fixedincludes:
+       @if [ -f ./gcc/Makefile ]; then \
+         rm -rf gcc/tmp-include; \
+         mv gcc/include gcc/tmp-include 2>/dev/null; \
+         mkdir gcc/include; \
+         cp $(srcdir)/gcc/gsyslimits.h gcc/include/syslimits.h; \
+         touch gcc/stmp-fixinc gcc/include/fixed; \
+         rm -f gcc/stmp-headers gcc/stmp-int-hdrs; \
+         r=`${PWD_COMMAND}`; export r; \
+         s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+         $(HOST_EXPORTS) \
+         (cd ./gcc && \
+          $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
+         rm -rf gcc/include; \
+         mv gcc/tmp-include gcc/include 2>/dev/null; \
+       else true; fi
+@endif gcc
+
+# ---------------------
+# GCC bootstrap support
+# ---------------------
+
+# We track the current stage (the one in 'gcc') in the stage_current file.
+# stage_last instead tracks the stage that was built last.  These targets
+# are dummy when toplevel bootstrap is not active.
+
+.PHONY: unstage
+unstage:
+@if gcc-bootstrap
+       @[ -f stage_current ] || $(MAKE) `cat stage_last`-start
+@endif gcc-bootstrap
+
+.PHONY: stage
+stage:
+@if gcc-bootstrap
+       @$(MAKE) `cat stage_current`-end
+@endif gcc-bootstrap
+
+# We name the build directories for the various stages "stage1-gcc",
+# "stage2-gcc","stage3-gcc", etc.
+
+# Since the 'compare' process will fail (on debugging information) if any
+# directory names are different, we need to link the gcc directory for
+# the previous stage to a constant name ('gcc-prev'), and to make the name of
+# the build directories constant as well. For the latter, we use naked names
+# like 'gcc', because the scripts in that directory assume it.  We use
+# mv on platforms where symlinks to directories do not work or are not
+# reliable.
+
+# At the end of the bootstrap, a symlink to 'stage3-gcc' named 'gcc' must
+# be kept, so that libraries can find it.  Ick!
+
+# It would be best to preinstall gcc into a staging area (and in the
+# future, gather there all prebootstrap packages).  This would allow
+# assemblers and linkers can be bootstrapped as well as the compiler
+# (both in a combined tree, or separately).  This however requires some
+# change to the gcc driver, again in order to avoid comparison failures.
+
+# Bugs: This is crippled when doing parallel make, the `make all-host'
+# and `make all-target' phases can be parallelized.
+
+
+# 'touch' doesn't work right on some platforms.
+STAMP = echo timestamp > 
+
+# Only build the C compiler for stage1, because that is the only one that
+# we can guarantee will build with the native compiler, and also it is the
+# only thing useful for building stage2. STAGE1_CFLAGS (via CFLAGS),
+# MAKEINFO and MAKEINFOFLAGS are explicitly passed here to make them
+# overrideable (for a bootstrap build stage1 also builds gcc.info).
+
+STAGE1_CFLAGS=@stage1_cflags@
+STAGE1_LANGUAGES=@stage1_languages@
+
+# We only want to compare .o files, so set this!
+objext = .o
+
+# Flags to pass to stage2 and later makes.
+POSTSTAGE1_FLAGS_TO_PASS = \
+       CC="$${CC}" CC_FOR_BUILD="$${CC_FOR_BUILD}" \
+       STAGE_PREFIX=$$r/stage-gcc/ \
+       CFLAGS="$(BOOT_CFLAGS)" \
+       ADAC="\$$(CC)"
+
+# For stage 1:
+# * We force-disable intermodule optimizations, even if
+#   --enable-intermodule was passed, since the installed compiler probably
+#   can't handle them.  Luckily, autoconf always respects
+#   the last argument when conflicting --enable arguments are passed.
+# * Likewise, we force-disable coverage flags, since the installed compiler
+#   probably has never heard of them.
+# * We build only C (and possibly Ada).
+
+
+.PHONY: stage1-start stage1-end
+
+stage1-start::
+       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       echo stage1 > stage_current ; \
+       echo stage1 > stage_last; \
+       $(mkinstalldirs) $(HOST_SUBDIR)
+@if bfd
+       @cd $(HOST_SUBDIR); [ -d stage1-bfd ] || \
+         mkdir stage1-bfd; \
+       set stage1-bfd bfd ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); [ -d stage1-opcodes ] || \
+         mkdir stage1-opcodes; \
+       set stage1-opcodes opcodes ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); [ -d stage1-binutils ] || \
+         mkdir stage1-binutils; \
+       set stage1-binutils binutils ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); [ -d stage1-gas ] || \
+         mkdir stage1-gas; \
+       set stage1-gas gas ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); [ -d stage1-gcc ] || \
+         mkdir stage1-gcc; \
+       set stage1-gcc gcc ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); [ -d stage1-intl ] || \
+         mkdir stage1-intl; \
+       set stage1-intl intl ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); [ -d stage1-ld ] || \
+         mkdir stage1-ld; \
+       set stage1-ld ld ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); [ -d stage1-libcpp ] || \
+         mkdir stage1-libcpp; \
+       set stage1-libcpp libcpp ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); [ -d stage1-libiberty ] || \
+         mkdir stage1-libiberty; \
+       set stage1-libiberty libiberty ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); [ -d stage1-zlib ] || \
+         mkdir stage1-zlib; \
+       set stage1-zlib zlib ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif zlib
+
+stage1-end::
+       @rm -f stage_current
+@if bfd
+       @cd $(HOST_SUBDIR); set bfd stage1-bfd ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); set opcodes stage1-opcodes ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); set binutils stage1-binutils ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); set gas stage1-gas ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); set gcc stage1-gcc ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); set intl stage1-intl ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); set ld stage1-ld ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); set libcpp stage1-libcpp ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); set libiberty stage1-libiberty ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); set zlib stage1-zlib ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif zlib
+
+# Bubble a bugfix through all the stages up to stage 1.  They
+# are remade, but not reconfigured.  The next stage (if any) will not
+# be reconfigured as well.
+.PHONY: stage1-bubble
+stage1-bubble:: 
+       @if test -f stage1-lean  ; then \
+         echo Skipping rebuild of stage1 ; \
+       else \
+         $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage1; \
+       fi
+
+.PHONY: all-stage1 clean-stage1
+all-stage1:     \
+  maybe-all-stage1-bfd \
+  maybe-all-stage1-opcodes \
+  maybe-all-stage1-binutils              \
+  maybe-all-stage1-gas \
+  maybe-all-stage1-gcc        \
+  maybe-all-stage1-intl   \
+  maybe-all-stage1-ld \
+  maybe-all-stage1-libcpp  \
+  maybe-all-stage1-libiberty                        \
+  maybe-all-stage1-zlib        
+
+do-clean: clean-stage1
+clean-stage1:     \
+  maybe-clean-stage1-bfd \
+  maybe-clean-stage1-opcodes \
+  maybe-clean-stage1-binutils              \
+  maybe-clean-stage1-gas \
+  maybe-clean-stage1-gcc        \
+  maybe-clean-stage1-intl   \
+  maybe-clean-stage1-ld \
+  maybe-clean-stage1-libcpp  \
+  maybe-clean-stage1-libiberty                        \
+  maybe-clean-stage1-zlib        
+
+
+.PHONY: configure-stage1-bfd maybe-configure-stage1-bfd
+.PHONY: all-stage1-bfd maybe-all-stage1-bfd
+.PHONY: clean-stage1-bfd maybe-clean-stage1-bfd
+
+maybe-configure-stage1-bfd:
+maybe-all-stage1-bfd:
+maybe-clean-stage1-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage1-bfd: configure-stage1-bfd
+configure-stage1-bfd:
+       @$(MAKE) stage1-start
+       @[ -f bfd/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in bfd ; \
+       cd $(HOST_SUBDIR)/bfd || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bfd"; \
+       libsrcdir="$$s/bfd"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-bfd: all-stage1-bfd
+all-stage1-bfd: configure-stage1-bfd
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-bfd: clean-stage1-bfd
+clean-stage1-bfd:
+       @[ -f bfd/Makefile ] || [ -f stage1-bfd/Makefile ] \
+         || exit 0 ; \
+       [ -f bfd/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stage1-opcodes maybe-configure-stage1-opcodes
+.PHONY: all-stage1-opcodes maybe-all-stage1-opcodes
+.PHONY: clean-stage1-opcodes maybe-clean-stage1-opcodes
+
+maybe-configure-stage1-opcodes:
+maybe-all-stage1-opcodes:
+maybe-clean-stage1-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage1-opcodes: configure-stage1-opcodes
+configure-stage1-opcodes:
+       @$(MAKE) stage1-start
+       @[ -f opcodes/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in opcodes ; \
+       cd $(HOST_SUBDIR)/opcodes || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/opcodes"; \
+       libsrcdir="$$s/opcodes"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-opcodes: all-stage1-opcodes
+all-stage1-opcodes: configure-stage1-opcodes
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-opcodes: clean-stage1-opcodes
+clean-stage1-opcodes:
+       @[ -f opcodes/Makefile ] || [ -f stage1-opcodes/Makefile ] \
+         || exit 0 ; \
+       [ -f opcodes/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stage1-binutils maybe-configure-stage1-binutils
+.PHONY: all-stage1-binutils maybe-all-stage1-binutils
+.PHONY: clean-stage1-binutils maybe-clean-stage1-binutils
+
+maybe-configure-stage1-binutils:
+maybe-all-stage1-binutils:
+maybe-clean-stage1-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage1-binutils: configure-stage1-binutils
+configure-stage1-binutils:
+       @$(MAKE) stage1-start
+       @[ -f binutils/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in binutils ; \
+       cd $(HOST_SUBDIR)/binutils || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/binutils"; \
+       libsrcdir="$$s/binutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-binutils: all-stage1-binutils
+all-stage1-binutils: configure-stage1-binutils
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-binutils: clean-stage1-binutils
+clean-stage1-binutils:
+       @[ -f binutils/Makefile ] || [ -f stage1-binutils/Makefile ] \
+         || exit 0 ; \
+       [ -f binutils/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stage1-gas maybe-configure-stage1-gas
+.PHONY: all-stage1-gas maybe-all-stage1-gas
+.PHONY: clean-stage1-gas maybe-clean-stage1-gas
+
+maybe-configure-stage1-gas:
+maybe-all-stage1-gas:
+maybe-clean-stage1-gas:
+
+@if gas-bootstrap
+maybe-configure-stage1-gas: configure-stage1-gas
+configure-stage1-gas:
+       @$(MAKE) stage1-start
+       @[ -f gas/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in gas ; \
+       cd $(HOST_SUBDIR)/gas || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gas"; \
+       libsrcdir="$$s/gas"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-gas: all-stage1-gas
+all-stage1-gas: configure-stage1-gas
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-gas: clean-stage1-gas
+clean-stage1-gas:
+       @[ -f gas/Makefile ] || [ -f stage1-gas/Makefile ] \
+         || exit 0 ; \
+       [ -f gas/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stage1-gcc maybe-configure-stage1-gcc
+.PHONY: all-stage1-gcc maybe-all-stage1-gcc
+.PHONY: clean-stage1-gcc maybe-clean-stage1-gcc
+
+maybe-configure-stage1-gcc:
+maybe-all-stage1-gcc:
+maybe-clean-stage1-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage1-gcc: configure-stage1-gcc
+configure-stage1-gcc:
+       @$(MAKE) stage1-start
+       @[ -f gcc/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in gcc ; \
+       cd $(HOST_SUBDIR)/gcc || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gcc"; \
+       libsrcdir="$$s/gcc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-gcc: all-stage1-gcc
+all-stage1-gcc: configure-stage1-gcc
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stage1-gcc: clean-stage1-gcc
+clean-stage1-gcc:
+       @[ -f gcc/Makefile ] || [ -f stage1-gcc/Makefile ] \
+         || exit 0 ; \
+       [ -f gcc/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stage1-intl maybe-configure-stage1-intl
+.PHONY: all-stage1-intl maybe-all-stage1-intl
+.PHONY: clean-stage1-intl maybe-clean-stage1-intl
+
+maybe-configure-stage1-intl:
+maybe-all-stage1-intl:
+maybe-clean-stage1-intl:
+
+@if intl-bootstrap
+maybe-configure-stage1-intl: configure-stage1-intl
+configure-stage1-intl:
+       @$(MAKE) stage1-start
+       @[ -f intl/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in intl ; \
+       cd $(HOST_SUBDIR)/intl || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/intl"; \
+       libsrcdir="$$s/intl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-intl: all-stage1-intl
+all-stage1-intl: configure-stage1-intl
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-intl: clean-stage1-intl
+clean-stage1-intl:
+       @[ -f intl/Makefile ] || [ -f stage1-intl/Makefile ] \
+         || exit 0 ; \
+       [ -f intl/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stage1-ld maybe-configure-stage1-ld
+.PHONY: all-stage1-ld maybe-all-stage1-ld
+.PHONY: clean-stage1-ld maybe-clean-stage1-ld
+
+maybe-configure-stage1-ld:
+maybe-all-stage1-ld:
+maybe-clean-stage1-ld:
+
+@if ld-bootstrap
+maybe-configure-stage1-ld: configure-stage1-ld
+configure-stage1-ld:
+       @$(MAKE) stage1-start
+       @[ -f ld/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in ld ; \
+       cd $(HOST_SUBDIR)/ld || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/ld"; \
+       libsrcdir="$$s/ld"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-ld: all-stage1-ld
+all-stage1-ld: configure-stage1-ld
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-ld: clean-stage1-ld
+clean-stage1-ld:
+       @[ -f ld/Makefile ] || [ -f stage1-ld/Makefile ] \
+         || exit 0 ; \
+       [ -f ld/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stage1-libcpp maybe-configure-stage1-libcpp
+.PHONY: all-stage1-libcpp maybe-all-stage1-libcpp
+.PHONY: clean-stage1-libcpp maybe-clean-stage1-libcpp
+
+maybe-configure-stage1-libcpp:
+maybe-all-stage1-libcpp:
+maybe-clean-stage1-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage1-libcpp: configure-stage1-libcpp
+configure-stage1-libcpp:
+       @$(MAKE) stage1-start
+       @[ -f libcpp/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in libcpp ; \
+       cd $(HOST_SUBDIR)/libcpp || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libcpp"; \
+       libsrcdir="$$s/libcpp"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-libcpp: all-stage1-libcpp
+all-stage1-libcpp: configure-stage1-libcpp
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-libcpp: clean-stage1-libcpp
+clean-stage1-libcpp:
+       @[ -f libcpp/Makefile ] || [ -f stage1-libcpp/Makefile ] \
+         || exit 0 ; \
+       [ -f libcpp/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stage1-libiberty maybe-configure-stage1-libiberty
+.PHONY: all-stage1-libiberty maybe-all-stage1-libiberty
+.PHONY: clean-stage1-libiberty maybe-clean-stage1-libiberty
+
+maybe-configure-stage1-libiberty:
+maybe-all-stage1-libiberty:
+maybe-clean-stage1-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage1-libiberty: configure-stage1-libiberty
+configure-stage1-libiberty:
+       @$(MAKE) stage1-start
+       @[ -f libiberty/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in libiberty ; \
+       cd $(HOST_SUBDIR)/libiberty || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-libiberty: all-stage1-libiberty
+all-stage1-libiberty: configure-stage1-libiberty
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-libiberty: clean-stage1-libiberty
+clean-stage1-libiberty:
+       @[ -f libiberty/Makefile ] || [ -f stage1-libiberty/Makefile ] \
+         || exit 0 ; \
+       [ -f libiberty/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stage1-zlib maybe-configure-stage1-zlib
+.PHONY: all-stage1-zlib maybe-all-stage1-zlib
+.PHONY: clean-stage1-zlib maybe-clean-stage1-zlib
+
+maybe-configure-stage1-zlib:
+maybe-all-stage1-zlib:
+maybe-clean-stage1-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage1-zlib: configure-stage1-zlib
+configure-stage1-zlib:
+       @$(MAKE) stage1-start
+       @[ -f zlib/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in zlib ; \
+       cd $(HOST_SUBDIR)/zlib || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libgloss "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
+       srcdiroption="--srcdir=$${topdir}/zlib"; \
+       libsrcdir="$$s/zlib"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" 
+
+maybe-all-stage1-zlib: all-stage1-zlib
+all-stage1-zlib: configure-stage1-zlib
+       @$(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" 
+
+maybe-clean-stage1-zlib: clean-stage1-zlib
+clean-stage1-zlib:
+       @[ -f zlib/Makefile ] || [ -f stage1-zlib/Makefile ] \
+         || exit 0 ; \
+       [ -f zlib/Makefile ] || $(MAKE) stage1-start ; \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  clean
+@endif zlib-bootstrap
+
+
+
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+
+
+
+
+# Rules to wipe a stage and all the following ones, also used for cleanstrap
+
+.PHONY: distclean-stage1
+distclean-stage1::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf stage1-* 
+
+
+@endif gcc-bootstrap
+
+
+.PHONY: stage2-start stage2-end
+
+stage2-start::
+       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       echo stage2 > stage_current ; \
+       echo stage2 > stage_last; \
+       $(mkinstalldirs) $(HOST_SUBDIR)
+@if bfd
+       @cd $(HOST_SUBDIR); [ -d stage2-bfd ] || \
+         mkdir stage2-bfd; \
+       set stage2-bfd bfd ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-bfd prev-bfd ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); [ -d stage2-opcodes ] || \
+         mkdir stage2-opcodes; \
+       set stage2-opcodes opcodes ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-opcodes prev-opcodes ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); [ -d stage2-binutils ] || \
+         mkdir stage2-binutils; \
+       set stage2-binutils binutils ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-binutils prev-binutils ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); [ -d stage2-gas ] || \
+         mkdir stage2-gas; \
+       set stage2-gas gas ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-gas prev-gas ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); [ -d stage2-gcc ] || \
+         mkdir stage2-gcc; \
+       set stage2-gcc gcc ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-gcc prev-gcc ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); [ -d stage2-intl ] || \
+         mkdir stage2-intl; \
+       set stage2-intl intl ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-intl prev-intl ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); [ -d stage2-ld ] || \
+         mkdir stage2-ld; \
+       set stage2-ld ld ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-ld prev-ld ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); [ -d stage2-libcpp ] || \
+         mkdir stage2-libcpp; \
+       set stage2-libcpp libcpp ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libcpp prev-libcpp ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); [ -d stage2-libiberty ] || \
+         mkdir stage2-libiberty; \
+       set stage2-libiberty libiberty ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libiberty prev-libiberty ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); [ -d stage2-zlib ] || \
+         mkdir stage2-zlib; \
+       set stage2-zlib zlib ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-zlib prev-zlib ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif zlib
+
+stage2-end::
+       @rm -f stage_current
+@if bfd
+       @cd $(HOST_SUBDIR); set bfd stage2-bfd ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage1-bfd ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); set opcodes stage2-opcodes ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage1-opcodes ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); set binutils stage2-binutils ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage1-binutils ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); set gas stage2-gas ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage1-gas ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); set gcc stage2-gcc ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage1-gcc ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); set intl stage2-intl ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage1-intl ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); set ld stage2-ld ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage1-ld ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); set libcpp stage2-libcpp ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage1-libcpp ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); set libiberty stage2-libiberty ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage1-libiberty ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); set zlib stage2-zlib ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-zlib stage1-zlib ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif zlib
+
+# Bubble a bugfix through all the stages up to stage 2.  They
+# are remade, but not reconfigured.  The next stage (if any) will not
+# be reconfigured as well.
+.PHONY: stage2-bubble
+stage2-bubble:: stage1-bubble
+       @if test -f stage2-lean || test -f stage1-lean  ; then \
+         echo Skipping rebuild of stage2 ; \
        else \
-         srcdiroption="--srcdir=$${topdir}/libgloss"; \
-         libsrcdir="$$s/libgloss"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
-
-.PHONY: all-target-libgloss maybe-all-target-libgloss
-maybe-all-target-libgloss:
-all-target-libgloss: configure-target-libgloss
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libgloss && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-libgloss maybe-check-target-libgloss
-maybe-check-target-libgloss:
-
-# Dummy target for uncheckable module.
-check-target-libgloss:
-
-
-.PHONY: install-target-libgloss maybe-install-target-libgloss
-maybe-install-target-libgloss:
-
-install-target-libgloss: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libgloss && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-libiberty maybe-configure-target-libiberty
-maybe-configure-target-libiberty:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libiberty/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/libiberty ] || \
-         mkdir $(TARGET_SUBDIR)/libiberty; \
-       rm -f $(TARGET_SUBDIR)/libiberty/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libiberty/multilib.out
+         $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage2; \
+       fi
 
-configure-target-libiberty: $(TARGET_SUBDIR)/libiberty/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libiberty/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/libiberty ] || \
-         mkdir $(TARGET_SUBDIR)/libiberty;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/libiberty; \
-       cd "$(TARGET_SUBDIR)/libiberty" || exit 1; \
+.PHONY: all-stage2 clean-stage2
+all-stage2:     \
+  maybe-all-stage2-bfd \
+  maybe-all-stage2-opcodes \
+  maybe-all-stage2-binutils              \
+  maybe-all-stage2-gas \
+  maybe-all-stage2-gcc        \
+  maybe-all-stage2-intl   \
+  maybe-all-stage2-ld \
+  maybe-all-stage2-libcpp  \
+  maybe-all-stage2-libiberty                        \
+  maybe-all-stage2-zlib        
+
+do-clean: clean-stage2
+clean-stage2:     \
+  maybe-clean-stage2-bfd \
+  maybe-clean-stage2-opcodes \
+  maybe-clean-stage2-binutils              \
+  maybe-clean-stage2-gas \
+  maybe-clean-stage2-gcc        \
+  maybe-clean-stage2-intl   \
+  maybe-clean-stage2-ld \
+  maybe-clean-stage2-libcpp  \
+  maybe-clean-stage2-libiberty                        \
+  maybe-clean-stage2-zlib        
+
+
+.PHONY: configure-stage2-bfd maybe-configure-stage2-bfd
+.PHONY: all-stage2-bfd maybe-all-stage2-bfd
+.PHONY: clean-stage2-bfd maybe-clean-stage2-bfd
+
+maybe-configure-stage2-bfd:
+maybe-all-stage2-bfd:
+maybe-clean-stage2-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage2-bfd: configure-stage2-bfd
+configure-stage2-bfd:
+       @$(MAKE) stage2-start
+       @[ -f bfd/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in bfd ; \
+       cd $(HOST_SUBDIR)/bfd || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bfd"; \
+       libsrcdir="$$s/bfd"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-bfd: all-stage2-bfd
+all-stage2-bfd: configure-stage2-bfd
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-bfd: clean-stage2-bfd
+clean-stage2-bfd:
+       @[ -f bfd/Makefile ] || [ -f stage2-bfd/Makefile ] \
+         || exit 0 ; \
+       [ -f bfd/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stage2-opcodes maybe-configure-stage2-opcodes
+.PHONY: all-stage2-opcodes maybe-all-stage2-opcodes
+.PHONY: clean-stage2-opcodes maybe-clean-stage2-opcodes
+
+maybe-configure-stage2-opcodes:
+maybe-all-stage2-opcodes:
+maybe-clean-stage2-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage2-opcodes: configure-stage2-opcodes
+configure-stage2-opcodes:
+       @$(MAKE) stage2-start
+       @[ -f opcodes/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in opcodes ; \
+       cd $(HOST_SUBDIR)/opcodes || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/opcodes"; \
+       libsrcdir="$$s/opcodes"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-opcodes: all-stage2-opcodes
+all-stage2-opcodes: configure-stage2-opcodes
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-opcodes: clean-stage2-opcodes
+clean-stage2-opcodes:
+       @[ -f opcodes/Makefile ] || [ -f stage2-opcodes/Makefile ] \
+         || exit 0 ; \
+       [ -f opcodes/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stage2-binutils maybe-configure-stage2-binutils
+.PHONY: all-stage2-binutils maybe-all-stage2-binutils
+.PHONY: clean-stage2-binutils maybe-clean-stage2-binutils
+
+maybe-configure-stage2-binutils:
+maybe-all-stage2-binutils:
+maybe-clean-stage2-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage2-binutils: configure-stage2-binutils
+configure-stage2-binutils:
+       @$(MAKE) stage2-start
+       @[ -f binutils/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in binutils ; \
+       cd $(HOST_SUBDIR)/binutils || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/binutils"; \
+       libsrcdir="$$s/binutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-binutils: all-stage2-binutils
+all-stage2-binutils: configure-stage2-binutils
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-binutils: clean-stage2-binutils
+clean-stage2-binutils:
+       @[ -f binutils/Makefile ] || [ -f stage2-binutils/Makefile ] \
+         || exit 0 ; \
+       [ -f binutils/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stage2-gas maybe-configure-stage2-gas
+.PHONY: all-stage2-gas maybe-all-stage2-gas
+.PHONY: clean-stage2-gas maybe-clean-stage2-gas
+
+maybe-configure-stage2-gas:
+maybe-all-stage2-gas:
+maybe-clean-stage2-gas:
+
+@if gas-bootstrap
+maybe-configure-stage2-gas: configure-stage2-gas
+configure-stage2-gas:
+       @$(MAKE) stage2-start
+       @[ -f gas/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in gas ; \
+       cd $(HOST_SUBDIR)/gas || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gas"; \
+       libsrcdir="$$s/gas"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-gas: all-stage2-gas
+all-stage2-gas: configure-stage2-gas
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-gas: clean-stage2-gas
+clean-stage2-gas:
+       @[ -f gas/Makefile ] || [ -f stage2-gas/Makefile ] \
+         || exit 0 ; \
+       [ -f gas/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stage2-gcc maybe-configure-stage2-gcc
+.PHONY: all-stage2-gcc maybe-all-stage2-gcc
+.PHONY: clean-stage2-gcc maybe-clean-stage2-gcc
+
+maybe-configure-stage2-gcc:
+maybe-all-stage2-gcc:
+maybe-clean-stage2-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage2-gcc: configure-stage2-gcc
+configure-stage2-gcc:
+       @$(MAKE) stage2-start
+       @[ -f gcc/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in gcc ; \
+       cd $(HOST_SUBDIR)/gcc || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gcc"; \
+       libsrcdir="$$s/gcc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-gcc: all-stage2-gcc
+all-stage2-gcc: configure-stage2-gcc
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stage2-gcc: clean-stage2-gcc
+clean-stage2-gcc:
+       @[ -f gcc/Makefile ] || [ -f stage2-gcc/Makefile ] \
+         || exit 0 ; \
+       [ -f gcc/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stage2-intl maybe-configure-stage2-intl
+.PHONY: all-stage2-intl maybe-all-stage2-intl
+.PHONY: clean-stage2-intl maybe-clean-stage2-intl
+
+maybe-configure-stage2-intl:
+maybe-all-stage2-intl:
+maybe-clean-stage2-intl:
+
+@if intl-bootstrap
+maybe-configure-stage2-intl: configure-stage2-intl
+configure-stage2-intl:
+       @$(MAKE) stage2-start
+       @[ -f intl/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in intl ; \
+       cd $(HOST_SUBDIR)/intl || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/intl"; \
+       libsrcdir="$$s/intl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-intl: all-stage2-intl
+all-stage2-intl: configure-stage2-intl
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-intl: clean-stage2-intl
+clean-stage2-intl:
+       @[ -f intl/Makefile ] || [ -f stage2-intl/Makefile ] \
+         || exit 0 ; \
+       [ -f intl/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stage2-ld maybe-configure-stage2-ld
+.PHONY: all-stage2-ld maybe-all-stage2-ld
+.PHONY: clean-stage2-ld maybe-clean-stage2-ld
+
+maybe-configure-stage2-ld:
+maybe-all-stage2-ld:
+maybe-clean-stage2-ld:
+
+@if ld-bootstrap
+maybe-configure-stage2-ld: configure-stage2-ld
+configure-stage2-ld:
+       @$(MAKE) stage2-start
+       @[ -f ld/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in ld ; \
+       cd $(HOST_SUBDIR)/ld || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/ld"; \
+       libsrcdir="$$s/ld"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-ld: all-stage2-ld
+all-stage2-ld: configure-stage2-ld
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-ld: clean-stage2-ld
+clean-stage2-ld:
+       @[ -f ld/Makefile ] || [ -f stage2-ld/Makefile ] \
+         || exit 0 ; \
+       [ -f ld/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stage2-libcpp maybe-configure-stage2-libcpp
+.PHONY: all-stage2-libcpp maybe-all-stage2-libcpp
+.PHONY: clean-stage2-libcpp maybe-clean-stage2-libcpp
+
+maybe-configure-stage2-libcpp:
+maybe-all-stage2-libcpp:
+maybe-clean-stage2-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage2-libcpp: configure-stage2-libcpp
+configure-stage2-libcpp:
+       @$(MAKE) stage2-start
+       @[ -f libcpp/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in libcpp ; \
+       cd $(HOST_SUBDIR)/libcpp || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libcpp"; \
+       libsrcdir="$$s/libcpp"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-libcpp: all-stage2-libcpp
+all-stage2-libcpp: configure-stage2-libcpp
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-libcpp: clean-stage2-libcpp
+clean-stage2-libcpp:
+       @[ -f libcpp/Makefile ] || [ -f stage2-libcpp/Makefile ] \
+         || exit 0 ; \
+       [ -f libcpp/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stage2-libiberty maybe-configure-stage2-libiberty
+.PHONY: all-stage2-libiberty maybe-all-stage2-libiberty
+.PHONY: clean-stage2-libiberty maybe-clean-stage2-libiberty
+
+maybe-configure-stage2-libiberty:
+maybe-all-stage2-libiberty:
+maybe-clean-stage2-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage2-libiberty: configure-stage2-libiberty
+configure-stage2-libiberty:
+       @$(MAKE) stage2-start
+       @[ -f libiberty/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in libiberty ; \
+       cd $(HOST_SUBDIR)/libiberty || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-libiberty: all-stage2-libiberty
+all-stage2-libiberty: configure-stage2-libiberty
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-libiberty: clean-stage2-libiberty
+clean-stage2-libiberty:
+       @[ -f libiberty/Makefile ] || [ -f stage2-libiberty/Makefile ] \
+         || exit 0 ; \
+       [ -f libiberty/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stage2-zlib maybe-configure-stage2-zlib
+.PHONY: all-stage2-zlib maybe-all-stage2-zlib
+.PHONY: clean-stage2-zlib maybe-clean-stage2-zlib
+
+maybe-configure-stage2-zlib:
+maybe-all-stage2-zlib:
+maybe-clean-stage2-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage2-zlib: configure-stage2-zlib
+configure-stage2-zlib:
+       @$(MAKE) stage2-start
+       @[ -f zlib/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in zlib ; \
+       cd $(HOST_SUBDIR)/zlib || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libiberty "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
+       srcdiroption="--srcdir=$${topdir}/zlib"; \
+       libsrcdir="$$s/zlib"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage2-zlib: all-stage2-zlib
+all-stage2-zlib: configure-stage2-zlib
+       @$(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage2-zlib: clean-stage2-zlib
+clean-stage2-zlib:
+       @[ -f zlib/Makefile ] || [ -f stage2-zlib/Makefile ] \
+         || exit 0 ; \
+       [ -f zlib/Makefile ] || $(MAKE) stage2-start ; \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif zlib-bootstrap
+
+
+
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+
+
+
+.PHONY: bootstrap2
+bootstrap2: stage2-bubble  all
+
+
+# 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 || :
+       rm -rf stage2-* 
+
+
+@endif gcc-bootstrap
+
+
+.PHONY: stage3-start stage3-end
+
+stage3-start::
+       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       echo stage3 > stage_current ; \
+       echo stage3 > stage_last; \
+       $(mkinstalldirs) $(HOST_SUBDIR)
+@if bfd
+       @cd $(HOST_SUBDIR); [ -d stage3-bfd ] || \
+         mkdir stage3-bfd; \
+       set stage3-bfd bfd ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-bfd prev-bfd ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); [ -d stage3-opcodes ] || \
+         mkdir stage3-opcodes; \
+       set stage3-opcodes opcodes ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-opcodes prev-opcodes ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); [ -d stage3-binutils ] || \
+         mkdir stage3-binutils; \
+       set stage3-binutils binutils ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-binutils prev-binutils ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); [ -d stage3-gas ] || \
+         mkdir stage3-gas; \
+       set stage3-gas gas ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-gas prev-gas ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); [ -d stage3-gcc ] || \
+         mkdir stage3-gcc; \
+       set stage3-gcc gcc ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-gcc prev-gcc ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); [ -d stage3-intl ] || \
+         mkdir stage3-intl; \
+       set stage3-intl intl ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-intl prev-intl ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); [ -d stage3-ld ] || \
+         mkdir stage3-ld; \
+       set stage3-ld ld ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-ld prev-ld ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); [ -d stage3-libcpp ] || \
+         mkdir stage3-libcpp; \
+       set stage3-libcpp libcpp ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-libcpp prev-libcpp ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); [ -d stage3-libiberty ] || \
+         mkdir stage3-libiberty; \
+       set stage3-libiberty libiberty ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-libiberty prev-libiberty ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); [ -d stage3-zlib ] || \
+         mkdir stage3-zlib; \
+       set stage3-zlib zlib ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage2-zlib prev-zlib ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif zlib
+
+stage3-end::
+       @rm -f stage_current
+@if bfd
+       @cd $(HOST_SUBDIR); set bfd stage3-bfd ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage2-bfd ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); set opcodes stage3-opcodes ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage2-opcodes ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); set binutils stage3-binutils ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage2-binutils ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); set gas stage3-gas ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage2-gas ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); set gcc stage3-gcc ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage2-gcc ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); set intl stage3-intl ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage2-intl ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); set ld stage3-ld ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage2-ld ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); set libcpp stage3-libcpp ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage2-libcpp ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); set libiberty stage3-libiberty ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage2-libiberty ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); set zlib stage3-zlib ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-zlib stage2-zlib ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif zlib
+
+# Bubble a bugfix through all the stages up to stage 3.  They
+# are remade, but not reconfigured.  The next stage (if any) will not
+# be reconfigured as well.
+.PHONY: stage3-bubble
+stage3-bubble:: stage2-bubble
+       @bootstrap_lean@-rm -rf stage1-* ; $(STAMP) stage1-lean
+       @if test -f stage3-lean || test -f stage2-lean  ; then \
+         echo Skipping rebuild of stage3 ; \
        else \
-         srcdiroption="--srcdir=$${topdir}/libiberty"; \
-         libsrcdir="$$s/libiberty"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
-
-.PHONY: all-target-libiberty maybe-all-target-libiberty
-maybe-all-target-libiberty:
-all-target-libiberty: configure-target-libiberty
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libiberty && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-libiberty maybe-check-target-libiberty
-maybe-check-target-libiberty:
-
-check-target-libiberty:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libiberty && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
-
-
-.PHONY: install-target-libiberty maybe-install-target-libiberty
-maybe-install-target-libiberty:
-
-install-target-libiberty: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libiberty && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-gperf maybe-configure-target-gperf
-maybe-configure-target-gperf:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/gperf/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/gperf ] || \
-         mkdir $(TARGET_SUBDIR)/gperf; \
-       rm -f $(TARGET_SUBDIR)/gperf/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/gperf/multilib.out
+         $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage3; \
+       fi
 
-configure-target-gperf: $(TARGET_SUBDIR)/gperf/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/gperf/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/gperf ] || \
-         mkdir $(TARGET_SUBDIR)/gperf;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/gperf; \
-       cd "$(TARGET_SUBDIR)/gperf" || exit 1; \
+.PHONY: all-stage3 clean-stage3
+all-stage3:     \
+  maybe-all-stage3-bfd \
+  maybe-all-stage3-opcodes \
+  maybe-all-stage3-binutils              \
+  maybe-all-stage3-gas \
+  maybe-all-stage3-gcc        \
+  maybe-all-stage3-intl   \
+  maybe-all-stage3-ld \
+  maybe-all-stage3-libcpp  \
+  maybe-all-stage3-libiberty                        \
+  maybe-all-stage3-zlib        
+
+do-clean: clean-stage3
+clean-stage3:     \
+  maybe-clean-stage3-bfd \
+  maybe-clean-stage3-opcodes \
+  maybe-clean-stage3-binutils              \
+  maybe-clean-stage3-gas \
+  maybe-clean-stage3-gcc        \
+  maybe-clean-stage3-intl   \
+  maybe-clean-stage3-ld \
+  maybe-clean-stage3-libcpp  \
+  maybe-clean-stage3-libiberty                        \
+  maybe-clean-stage3-zlib        
+
+
+.PHONY: configure-stage3-bfd maybe-configure-stage3-bfd
+.PHONY: all-stage3-bfd maybe-all-stage3-bfd
+.PHONY: clean-stage3-bfd maybe-clean-stage3-bfd
+
+maybe-configure-stage3-bfd:
+maybe-all-stage3-bfd:
+maybe-clean-stage3-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage3-bfd: configure-stage3-bfd
+configure-stage3-bfd:
+       @$(MAKE) stage3-start
+       @[ -f bfd/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in bfd ; \
+       cd $(HOST_SUBDIR)/bfd || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/gperf "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/gperf"; \
-         libsrcdir="$$s/gperf"; \
+       srcdiroption="--srcdir=$${topdir}/bfd"; \
+       libsrcdir="$$s/bfd"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-bfd: all-stage3-bfd
+all-stage3-bfd: configure-stage3-bfd
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-bfd: clean-stage3-bfd
+clean-stage3-bfd:
+       @[ -f bfd/Makefile ] || [ -f stage3-bfd/Makefile ] \
+         || exit 0 ; \
+       [ -f bfd/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stage3-opcodes maybe-configure-stage3-opcodes
+.PHONY: all-stage3-opcodes maybe-all-stage3-opcodes
+.PHONY: clean-stage3-opcodes maybe-clean-stage3-opcodes
+
+maybe-configure-stage3-opcodes:
+maybe-all-stage3-opcodes:
+maybe-clean-stage3-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage3-opcodes: configure-stage3-opcodes
+configure-stage3-opcodes:
+       @$(MAKE) stage3-start
+       @[ -f opcodes/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in opcodes ; \
+       cd $(HOST_SUBDIR)/opcodes || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/opcodes"; \
+       libsrcdir="$$s/opcodes"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-opcodes: all-stage3-opcodes
+all-stage3-opcodes: configure-stage3-opcodes
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-opcodes: clean-stage3-opcodes
+clean-stage3-opcodes:
+       @[ -f opcodes/Makefile ] || [ -f stage3-opcodes/Makefile ] \
+         || exit 0 ; \
+       [ -f opcodes/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stage3-binutils maybe-configure-stage3-binutils
+.PHONY: all-stage3-binutils maybe-all-stage3-binutils
+.PHONY: clean-stage3-binutils maybe-clean-stage3-binutils
+
+maybe-configure-stage3-binutils:
+maybe-all-stage3-binutils:
+maybe-clean-stage3-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage3-binutils: configure-stage3-binutils
+configure-stage3-binutils:
+       @$(MAKE) stage3-start
+       @[ -f binutils/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in binutils ; \
+       cd $(HOST_SUBDIR)/binutils || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/binutils"; \
+       libsrcdir="$$s/binutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-binutils: all-stage3-binutils
+all-stage3-binutils: configure-stage3-binutils
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-binutils: clean-stage3-binutils
+clean-stage3-binutils:
+       @[ -f binutils/Makefile ] || [ -f stage3-binutils/Makefile ] \
+         || exit 0 ; \
+       [ -f binutils/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stage3-gas maybe-configure-stage3-gas
+.PHONY: all-stage3-gas maybe-all-stage3-gas
+.PHONY: clean-stage3-gas maybe-clean-stage3-gas
+
+maybe-configure-stage3-gas:
+maybe-all-stage3-gas:
+maybe-clean-stage3-gas:
+
+@if gas-bootstrap
+maybe-configure-stage3-gas: configure-stage3-gas
+configure-stage3-gas:
+       @$(MAKE) stage3-start
+       @[ -f gas/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in gas ; \
+       cd $(HOST_SUBDIR)/gas || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gas"; \
+       libsrcdir="$$s/gas"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-gas: all-stage3-gas
+all-stage3-gas: configure-stage3-gas
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-gas: clean-stage3-gas
+clean-stage3-gas:
+       @[ -f gas/Makefile ] || [ -f stage3-gas/Makefile ] \
+         || exit 0 ; \
+       [ -f gas/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stage3-gcc maybe-configure-stage3-gcc
+.PHONY: all-stage3-gcc maybe-all-stage3-gcc
+.PHONY: clean-stage3-gcc maybe-clean-stage3-gcc
+
+maybe-configure-stage3-gcc:
+maybe-all-stage3-gcc:
+maybe-clean-stage3-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage3-gcc: configure-stage3-gcc
+configure-stage3-gcc:
+       @$(MAKE) stage3-start
+       @[ -f gcc/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in gcc ; \
+       cd $(HOST_SUBDIR)/gcc || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gcc"; \
+       libsrcdir="$$s/gcc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-gcc: all-stage3-gcc
+all-stage3-gcc: configure-stage3-gcc
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stage3-gcc: clean-stage3-gcc
+clean-stage3-gcc:
+       @[ -f gcc/Makefile ] || [ -f stage3-gcc/Makefile ] \
+         || exit 0 ; \
+       [ -f gcc/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stage3-intl maybe-configure-stage3-intl
+.PHONY: all-stage3-intl maybe-all-stage3-intl
+.PHONY: clean-stage3-intl maybe-clean-stage3-intl
+
+maybe-configure-stage3-intl:
+maybe-all-stage3-intl:
+maybe-clean-stage3-intl:
+
+@if intl-bootstrap
+maybe-configure-stage3-intl: configure-stage3-intl
+configure-stage3-intl:
+       @$(MAKE) stage3-start
+       @[ -f intl/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in intl ; \
+       cd $(HOST_SUBDIR)/intl || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/intl"; \
+       libsrcdir="$$s/intl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-intl: all-stage3-intl
+all-stage3-intl: configure-stage3-intl
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-intl: clean-stage3-intl
+clean-stage3-intl:
+       @[ -f intl/Makefile ] || [ -f stage3-intl/Makefile ] \
+         || exit 0 ; \
+       [ -f intl/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stage3-ld maybe-configure-stage3-ld
+.PHONY: all-stage3-ld maybe-all-stage3-ld
+.PHONY: clean-stage3-ld maybe-clean-stage3-ld
+
+maybe-configure-stage3-ld:
+maybe-all-stage3-ld:
+maybe-clean-stage3-ld:
+
+@if ld-bootstrap
+maybe-configure-stage3-ld: configure-stage3-ld
+configure-stage3-ld:
+       @$(MAKE) stage3-start
+       @[ -f ld/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in ld ; \
+       cd $(HOST_SUBDIR)/ld || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/ld"; \
+       libsrcdir="$$s/ld"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-ld: all-stage3-ld
+all-stage3-ld: configure-stage3-ld
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-ld: clean-stage3-ld
+clean-stage3-ld:
+       @[ -f ld/Makefile ] || [ -f stage3-ld/Makefile ] \
+         || exit 0 ; \
+       [ -f ld/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stage3-libcpp maybe-configure-stage3-libcpp
+.PHONY: all-stage3-libcpp maybe-all-stage3-libcpp
+.PHONY: clean-stage3-libcpp maybe-clean-stage3-libcpp
+
+maybe-configure-stage3-libcpp:
+maybe-all-stage3-libcpp:
+maybe-clean-stage3-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage3-libcpp: configure-stage3-libcpp
+configure-stage3-libcpp:
+       @$(MAKE) stage3-start
+       @[ -f libcpp/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in libcpp ; \
+       cd $(HOST_SUBDIR)/libcpp || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libcpp"; \
+       libsrcdir="$$s/libcpp"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-libcpp: all-stage3-libcpp
+all-stage3-libcpp: configure-stage3-libcpp
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-libcpp: clean-stage3-libcpp
+clean-stage3-libcpp:
+       @[ -f libcpp/Makefile ] || [ -f stage3-libcpp/Makefile ] \
+         || exit 0 ; \
+       [ -f libcpp/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stage3-libiberty maybe-configure-stage3-libiberty
+.PHONY: all-stage3-libiberty maybe-all-stage3-libiberty
+.PHONY: clean-stage3-libiberty maybe-clean-stage3-libiberty
+
+maybe-configure-stage3-libiberty:
+maybe-all-stage3-libiberty:
+maybe-clean-stage3-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage3-libiberty: configure-stage3-libiberty
+configure-stage3-libiberty:
+       @$(MAKE) stage3-start
+       @[ -f libiberty/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in libiberty ; \
+       cd $(HOST_SUBDIR)/libiberty || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-libiberty: all-stage3-libiberty
+all-stage3-libiberty: configure-stage3-libiberty
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-libiberty: clean-stage3-libiberty
+clean-stage3-libiberty:
+       @[ -f libiberty/Makefile ] || [ -f stage3-libiberty/Makefile ] \
+         || exit 0 ; \
+       [ -f libiberty/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stage3-zlib maybe-configure-stage3-zlib
+.PHONY: all-stage3-zlib maybe-all-stage3-zlib
+.PHONY: clean-stage3-zlib maybe-clean-stage3-zlib
+
+maybe-configure-stage3-zlib:
+maybe-all-stage3-zlib:
+maybe-clean-stage3-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage3-zlib: configure-stage3-zlib
+configure-stage3-zlib:
+       @$(MAKE) stage3-start
+       @[ -f zlib/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in zlib ; \
+       cd $(HOST_SUBDIR)/zlib || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/zlib"; \
+       libsrcdir="$$s/zlib"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage3-zlib: all-stage3-zlib
+all-stage3-zlib: configure-stage3-zlib
+       @$(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage3-zlib: clean-stage3-zlib
+clean-stage3-zlib:
+       @[ -f zlib/Makefile ] || [ -f stage3-zlib/Makefile ] \
+         || exit 0 ; \
+       [ -f zlib/Makefile ] || $(MAKE) stage3-start ; \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif zlib-bootstrap
+
+
+
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+
+compare:
+       @if test -f stage2-lean; then \
+         echo Cannot compare object files as stage 2 was deleted. ; \
+         exit 0 ; \
        fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
-
-.PHONY: all-target-gperf maybe-all-target-gperf
-maybe-all-target-gperf:
-all-target-gperf: configure-target-gperf
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/gperf && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-gperf maybe-check-target-gperf
-maybe-check-target-gperf:
-
-check-target-gperf:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/gperf && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
-
-
-.PHONY: install-target-gperf maybe-install-target-gperf
-maybe-install-target-gperf:
-
-install-target-gperf: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/gperf && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-examples maybe-configure-target-examples
-maybe-configure-target-examples:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/examples/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/examples ] || \
-         mkdir $(TARGET_SUBDIR)/examples; \
-       rm -f $(TARGET_SUBDIR)/examples/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/examples/multilib.out
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       rm -f .bad_compare ; \
+       cd stage3-gcc; \
+       files=`find . -name "*$(objext)" -print` ; \
+       cd .. ; \
+       for file in $${files} ; do \
+         f1=$$r/stage2-gcc/$$file; f2=$$r/stage3-gcc/$$file; \
+         @do_compare@ > /dev/null 2>&1; \
+         test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \
+       done ; \
+       if [ -f .bad_compare ]; then \
+         echo "Bootstrap comparison failure!"; \
+         cat .bad_compare; \
+         exit 1; \
+       else \
+         true; \
+       fi ; \
+       $(STAMP) compare
+       @bootstrap_lean@-rm -rf stage2-* ; $(STAMP) stage2-lean
+
+
+
+.PHONY: bootstrap
+bootstrap: stage3-bubble compare all
+
+
+# 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 || :
+       rm -rf stage3-* compare 
+
+
+.PHONY: cleanstrap
+cleanstrap: distclean bootstrap
+
+@endif gcc-bootstrap
+
+
+.PHONY: stage4-start stage4-end
+
+stage4-start::
+       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       echo stage4 > stage_current ; \
+       echo stage4 > stage_last; \
+       $(mkinstalldirs) $(HOST_SUBDIR)
+@if bfd
+       @cd $(HOST_SUBDIR); [ -d stage4-bfd ] || \
+         mkdir stage4-bfd; \
+       set stage4-bfd bfd ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-bfd prev-bfd ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); [ -d stage4-opcodes ] || \
+         mkdir stage4-opcodes; \
+       set stage4-opcodes opcodes ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-opcodes prev-opcodes ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); [ -d stage4-binutils ] || \
+         mkdir stage4-binutils; \
+       set stage4-binutils binutils ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-binutils prev-binutils ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); [ -d stage4-gas ] || \
+         mkdir stage4-gas; \
+       set stage4-gas gas ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-gas prev-gas ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); [ -d stage4-gcc ] || \
+         mkdir stage4-gcc; \
+       set stage4-gcc gcc ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-gcc prev-gcc ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); [ -d stage4-intl ] || \
+         mkdir stage4-intl; \
+       set stage4-intl intl ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-intl prev-intl ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); [ -d stage4-ld ] || \
+         mkdir stage4-ld; \
+       set stage4-ld ld ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-ld prev-ld ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); [ -d stage4-libcpp ] || \
+         mkdir stage4-libcpp; \
+       set stage4-libcpp libcpp ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-libcpp prev-libcpp ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); [ -d stage4-libiberty ] || \
+         mkdir stage4-libiberty; \
+       set stage4-libiberty libiberty ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-libiberty prev-libiberty ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); [ -d stage4-zlib ] || \
+         mkdir stage4-zlib; \
+       set stage4-zlib zlib ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage3-zlib prev-zlib ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif zlib
+
+stage4-end::
+       @rm -f stage_current
+@if bfd
+       @cd $(HOST_SUBDIR); set bfd stage4-bfd ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage3-bfd ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); set opcodes stage4-opcodes ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage3-opcodes ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); set binutils stage4-binutils ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage3-binutils ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); set gas stage4-gas ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage3-gas ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); set gcc stage4-gcc ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage3-gcc ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); set intl stage4-intl ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage3-intl ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); set ld stage4-ld ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage3-ld ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); set libcpp stage4-libcpp ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage3-libcpp ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); set libiberty stage4-libiberty ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage3-libiberty ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); set zlib stage4-zlib ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-zlib stage3-zlib ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif zlib
+
+# Bubble a bugfix through all the stages up to stage 4.  They
+# are remade, but not reconfigured.  The next stage (if any) will not
+# be reconfigured as well.
+.PHONY: stage4-bubble
+stage4-bubble:: stage3-bubble
+       @bootstrap_lean@-rm -rf stage2-* ; $(STAMP) stage2-lean
+       @if test -f stage4-lean || test -f stage3-lean  ; then \
+         echo Skipping rebuild of stage4 ; \
+       else \
+         $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stage4; \
+       fi
 
-configure-target-examples: $(TARGET_SUBDIR)/examples/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/examples/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/examples ] || \
-         mkdir $(TARGET_SUBDIR)/examples;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/examples; \
-       cd "$(TARGET_SUBDIR)/examples" || exit 1; \
+.PHONY: all-stage4 clean-stage4
+all-stage4:     \
+  maybe-all-stage4-bfd \
+  maybe-all-stage4-opcodes \
+  maybe-all-stage4-binutils              \
+  maybe-all-stage4-gas \
+  maybe-all-stage4-gcc        \
+  maybe-all-stage4-intl   \
+  maybe-all-stage4-ld \
+  maybe-all-stage4-libcpp  \
+  maybe-all-stage4-libiberty                        \
+  maybe-all-stage4-zlib        
+
+do-clean: clean-stage4
+clean-stage4:     \
+  maybe-clean-stage4-bfd \
+  maybe-clean-stage4-opcodes \
+  maybe-clean-stage4-binutils              \
+  maybe-clean-stage4-gas \
+  maybe-clean-stage4-gcc        \
+  maybe-clean-stage4-intl   \
+  maybe-clean-stage4-ld \
+  maybe-clean-stage4-libcpp  \
+  maybe-clean-stage4-libiberty                        \
+  maybe-clean-stage4-zlib        
+
+
+.PHONY: configure-stage4-bfd maybe-configure-stage4-bfd
+.PHONY: all-stage4-bfd maybe-all-stage4-bfd
+.PHONY: clean-stage4-bfd maybe-clean-stage4-bfd
+
+maybe-configure-stage4-bfd:
+maybe-all-stage4-bfd:
+maybe-clean-stage4-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage4-bfd: configure-stage4-bfd
+configure-stage4-bfd:
+       @$(MAKE) stage4-start
+       @[ -f bfd/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in bfd ; \
+       cd $(HOST_SUBDIR)/bfd || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bfd"; \
+       libsrcdir="$$s/bfd"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-bfd: all-stage4-bfd
+all-stage4-bfd: configure-stage4-bfd
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-bfd: clean-stage4-bfd
+clean-stage4-bfd:
+       @[ -f bfd/Makefile ] || [ -f stage4-bfd/Makefile ] \
+         || exit 0 ; \
+       [ -f bfd/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stage4-opcodes maybe-configure-stage4-opcodes
+.PHONY: all-stage4-opcodes maybe-all-stage4-opcodes
+.PHONY: clean-stage4-opcodes maybe-clean-stage4-opcodes
+
+maybe-configure-stage4-opcodes:
+maybe-all-stage4-opcodes:
+maybe-clean-stage4-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage4-opcodes: configure-stage4-opcodes
+configure-stage4-opcodes:
+       @$(MAKE) stage4-start
+       @[ -f opcodes/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in opcodes ; \
+       cd $(HOST_SUBDIR)/opcodes || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/opcodes"; \
+       libsrcdir="$$s/opcodes"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-opcodes: all-stage4-opcodes
+all-stage4-opcodes: configure-stage4-opcodes
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-opcodes: clean-stage4-opcodes
+clean-stage4-opcodes:
+       @[ -f opcodes/Makefile ] || [ -f stage4-opcodes/Makefile ] \
+         || exit 0 ; \
+       [ -f opcodes/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stage4-binutils maybe-configure-stage4-binutils
+.PHONY: all-stage4-binutils maybe-all-stage4-binutils
+.PHONY: clean-stage4-binutils maybe-clean-stage4-binutils
+
+maybe-configure-stage4-binutils:
+maybe-all-stage4-binutils:
+maybe-clean-stage4-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage4-binutils: configure-stage4-binutils
+configure-stage4-binutils:
+       @$(MAKE) stage4-start
+       @[ -f binutils/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in binutils ; \
+       cd $(HOST_SUBDIR)/binutils || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/binutils"; \
+       libsrcdir="$$s/binutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-binutils: all-stage4-binutils
+all-stage4-binutils: configure-stage4-binutils
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-binutils: clean-stage4-binutils
+clean-stage4-binutils:
+       @[ -f binutils/Makefile ] || [ -f stage4-binutils/Makefile ] \
+         || exit 0 ; \
+       [ -f binutils/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stage4-gas maybe-configure-stage4-gas
+.PHONY: all-stage4-gas maybe-all-stage4-gas
+.PHONY: clean-stage4-gas maybe-clean-stage4-gas
+
+maybe-configure-stage4-gas:
+maybe-all-stage4-gas:
+maybe-clean-stage4-gas:
+
+@if gas-bootstrap
+maybe-configure-stage4-gas: configure-stage4-gas
+configure-stage4-gas:
+       @$(MAKE) stage4-start
+       @[ -f gas/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in gas ; \
+       cd $(HOST_SUBDIR)/gas || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gas"; \
+       libsrcdir="$$s/gas"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-gas: all-stage4-gas
+all-stage4-gas: configure-stage4-gas
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-gas: clean-stage4-gas
+clean-stage4-gas:
+       @[ -f gas/Makefile ] || [ -f stage4-gas/Makefile ] \
+         || exit 0 ; \
+       [ -f gas/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stage4-gcc maybe-configure-stage4-gcc
+.PHONY: all-stage4-gcc maybe-all-stage4-gcc
+.PHONY: clean-stage4-gcc maybe-clean-stage4-gcc
+
+maybe-configure-stage4-gcc:
+maybe-all-stage4-gcc:
+maybe-clean-stage4-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage4-gcc: configure-stage4-gcc
+configure-stage4-gcc:
+       @$(MAKE) stage4-start
+       @[ -f gcc/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in gcc ; \
+       cd $(HOST_SUBDIR)/gcc || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gcc"; \
+       libsrcdir="$$s/gcc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-gcc: all-stage4-gcc
+all-stage4-gcc: configure-stage4-gcc
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stage4-gcc: clean-stage4-gcc
+clean-stage4-gcc:
+       @[ -f gcc/Makefile ] || [ -f stage4-gcc/Makefile ] \
+         || exit 0 ; \
+       [ -f gcc/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stage4-intl maybe-configure-stage4-intl
+.PHONY: all-stage4-intl maybe-all-stage4-intl
+.PHONY: clean-stage4-intl maybe-clean-stage4-intl
+
+maybe-configure-stage4-intl:
+maybe-all-stage4-intl:
+maybe-clean-stage4-intl:
+
+@if intl-bootstrap
+maybe-configure-stage4-intl: configure-stage4-intl
+configure-stage4-intl:
+       @$(MAKE) stage4-start
+       @[ -f intl/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in intl ; \
+       cd $(HOST_SUBDIR)/intl || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/intl"; \
+       libsrcdir="$$s/intl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-intl: all-stage4-intl
+all-stage4-intl: configure-stage4-intl
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-intl: clean-stage4-intl
+clean-stage4-intl:
+       @[ -f intl/Makefile ] || [ -f stage4-intl/Makefile ] \
+         || exit 0 ; \
+       [ -f intl/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stage4-ld maybe-configure-stage4-ld
+.PHONY: all-stage4-ld maybe-all-stage4-ld
+.PHONY: clean-stage4-ld maybe-clean-stage4-ld
+
+maybe-configure-stage4-ld:
+maybe-all-stage4-ld:
+maybe-clean-stage4-ld:
+
+@if ld-bootstrap
+maybe-configure-stage4-ld: configure-stage4-ld
+configure-stage4-ld:
+       @$(MAKE) stage4-start
+       @[ -f ld/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in ld ; \
+       cd $(HOST_SUBDIR)/ld || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/examples "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/examples"; \
-         libsrcdir="$$s/examples"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
-
-.PHONY: all-target-examples maybe-all-target-examples
-maybe-all-target-examples:
-all-target-examples: configure-target-examples
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/examples && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-examples maybe-check-target-examples
-maybe-check-target-examples:
-
-# Dummy target for uncheckable module.
-check-target-examples:
-
-
-.PHONY: install-target-examples maybe-install-target-examples
-maybe-install-target-examples:
-
-# Dummy target for uninstallable.
-install-target-examples:
-
-
-.PHONY: configure-target-libffi maybe-configure-target-libffi
-maybe-configure-target-libffi:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libffi/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/libffi ] || \
-         mkdir $(TARGET_SUBDIR)/libffi; \
-       rm -f $(TARGET_SUBDIR)/libffi/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libffi/multilib.out
-
-configure-target-libffi: $(TARGET_SUBDIR)/libffi/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libffi/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/libffi ] || \
-         mkdir $(TARGET_SUBDIR)/libffi;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/libffi; \
-       cd "$(TARGET_SUBDIR)/libffi" || exit 1; \
+       srcdiroption="--srcdir=$${topdir}/ld"; \
+       libsrcdir="$$s/ld"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-ld: all-stage4-ld
+all-stage4-ld: configure-stage4-ld
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-ld: clean-stage4-ld
+clean-stage4-ld:
+       @[ -f ld/Makefile ] || [ -f stage4-ld/Makefile ] \
+         || exit 0 ; \
+       [ -f ld/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stage4-libcpp maybe-configure-stage4-libcpp
+.PHONY: all-stage4-libcpp maybe-all-stage4-libcpp
+.PHONY: clean-stage4-libcpp maybe-clean-stage4-libcpp
+
+maybe-configure-stage4-libcpp:
+maybe-all-stage4-libcpp:
+maybe-clean-stage4-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage4-libcpp: configure-stage4-libcpp
+configure-stage4-libcpp:
+       @$(MAKE) stage4-start
+       @[ -f libcpp/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in libcpp ; \
+       cd $(HOST_SUBDIR)/libcpp || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libffi "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/libffi"; \
-         libsrcdir="$$s/libffi"; \
+       srcdiroption="--srcdir=$${topdir}/libcpp"; \
+       libsrcdir="$$s/libcpp"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-libcpp: all-stage4-libcpp
+all-stage4-libcpp: configure-stage4-libcpp
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-libcpp: clean-stage4-libcpp
+clean-stage4-libcpp:
+       @[ -f libcpp/Makefile ] || [ -f stage4-libcpp/Makefile ] \
+         || exit 0 ; \
+       [ -f libcpp/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stage4-libiberty maybe-configure-stage4-libiberty
+.PHONY: all-stage4-libiberty maybe-all-stage4-libiberty
+.PHONY: clean-stage4-libiberty maybe-clean-stage4-libiberty
+
+maybe-configure-stage4-libiberty:
+maybe-all-stage4-libiberty:
+maybe-clean-stage4-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage4-libiberty: configure-stage4-libiberty
+configure-stage4-libiberty:
+       @$(MAKE) stage4-start
+       @[ -f libiberty/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in libiberty ; \
+       cd $(HOST_SUBDIR)/libiberty || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-libiberty: all-stage4-libiberty
+all-stage4-libiberty: configure-stage4-libiberty
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-libiberty: clean-stage4-libiberty
+clean-stage4-libiberty:
+       @[ -f libiberty/Makefile ] || [ -f stage4-libiberty/Makefile ] \
+         || exit 0 ; \
+       [ -f libiberty/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stage4-zlib maybe-configure-stage4-zlib
+.PHONY: all-stage4-zlib maybe-all-stage4-zlib
+.PHONY: clean-stage4-zlib maybe-clean-stage4-zlib
+
+maybe-configure-stage4-zlib:
+maybe-all-stage4-zlib:
+maybe-clean-stage4-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage4-zlib: configure-stage4-zlib
+configure-stage4-zlib:
+       @$(MAKE) stage4-start
+       @[ -f zlib/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in zlib ; \
+       cd $(HOST_SUBDIR)/zlib || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/zlib"; \
+       libsrcdir="$$s/zlib"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stage4-zlib: all-stage4-zlib
+all-stage4-zlib: configure-stage4-zlib
+       @$(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                
+
+maybe-clean-stage4-zlib: clean-stage4-zlib
+clean-stage4-zlib:
+       @[ -f zlib/Makefile ] || [ -f stage4-zlib/Makefile ] \
+         || exit 0 ; \
+       [ -f zlib/Makefile ] || $(MAKE) stage4-start ; \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 clean
+@endif zlib-bootstrap
+
+
+
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+
+compare3:
+       @if test -f stage3-lean; then \
+         echo Cannot compare object files as stage 3 was deleted. ; \
+         exit 0 ; \
        fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
-
-.PHONY: all-target-libffi maybe-all-target-libffi
-maybe-all-target-libffi:
-all-target-libffi: configure-target-libffi
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libffi && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-libffi maybe-check-target-libffi
-maybe-check-target-libffi:
-
-check-target-libffi:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libffi && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
-
-
-.PHONY: install-target-libffi maybe-install-target-libffi
-maybe-install-target-libffi:
-
-install-target-libffi: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libffi && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-libjava maybe-configure-target-libjava
-maybe-configure-target-libjava:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libjava/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/libjava ] || \
-         mkdir $(TARGET_SUBDIR)/libjava; \
-       rm -f $(TARGET_SUBDIR)/libjava/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libjava/multilib.out
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       rm -f .bad_compare ; \
+       cd stage4-gcc; \
+       files=`find . -name "*$(objext)" -print` ; \
+       cd .. ; \
+       for file in $${files} ; do \
+         f1=$$r/stage3-gcc/$$file; f2=$$r/stage4-gcc/$$file; \
+         @do_compare@ > /dev/null 2>&1; \
+         test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \
+       done ; \
+       if [ -f .bad_compare ]; then \
+         echo "Bootstrap comparison failure!"; \
+         cat .bad_compare; \
+         exit 1; \
+       else \
+         true; \
+       fi ; \
+       $(STAMP) compare3
+       @bootstrap_lean@-rm -rf stage3-* ; $(STAMP) stage3-lean
+
+
+
+.PHONY: bootstrap4
+bootstrap4: stage4-bubble compare3 all
+
+
+# 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 || :
+       rm -rf stage4-* compare3 
+
+
+@endif gcc-bootstrap
+
+
+.PHONY: stageprofile-start stageprofile-end
+
+stageprofile-start::
+       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       echo stageprofile > stage_current ; \
+       echo stageprofile > stage_last; \
+       $(mkinstalldirs) $(HOST_SUBDIR)
+@if bfd
+       @cd $(HOST_SUBDIR); [ -d stageprofile-bfd ] || \
+         mkdir stageprofile-bfd; \
+       set stageprofile-bfd bfd ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-bfd prev-bfd ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); [ -d stageprofile-opcodes ] || \
+         mkdir stageprofile-opcodes; \
+       set stageprofile-opcodes opcodes ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-opcodes prev-opcodes ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); [ -d stageprofile-binutils ] || \
+         mkdir stageprofile-binutils; \
+       set stageprofile-binutils binutils ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-binutils prev-binutils ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); [ -d stageprofile-gas ] || \
+         mkdir stageprofile-gas; \
+       set stageprofile-gas gas ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-gas prev-gas ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); [ -d stageprofile-gcc ] || \
+         mkdir stageprofile-gcc; \
+       set stageprofile-gcc gcc ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-gcc prev-gcc ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); [ -d stageprofile-intl ] || \
+         mkdir stageprofile-intl; \
+       set stageprofile-intl intl ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-intl prev-intl ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); [ -d stageprofile-ld ] || \
+         mkdir stageprofile-ld; \
+       set stageprofile-ld ld ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-ld prev-ld ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); [ -d stageprofile-libcpp ] || \
+         mkdir stageprofile-libcpp; \
+       set stageprofile-libcpp libcpp ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libcpp prev-libcpp ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); [ -d stageprofile-libiberty ] || \
+         mkdir stageprofile-libiberty; \
+       set stageprofile-libiberty libiberty ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libiberty prev-libiberty ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); [ -d stageprofile-zlib ] || \
+         mkdir stageprofile-zlib; \
+       set stageprofile-zlib zlib ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-zlib prev-zlib ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif zlib
+
+stageprofile-end::
+       @rm -f stage_current
+@if bfd
+       @cd $(HOST_SUBDIR); set bfd stageprofile-bfd ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage1-bfd ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); set opcodes stageprofile-opcodes ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage1-opcodes ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); set binutils stageprofile-binutils ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage1-binutils ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); set gas stageprofile-gas ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage1-gas ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); set gcc stageprofile-gcc ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage1-gcc ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); set intl stageprofile-intl ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage1-intl ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); set ld stageprofile-ld ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage1-ld ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); set libcpp stageprofile-libcpp ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage1-libcpp ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); set libiberty stageprofile-libiberty ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage1-libiberty ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); set zlib stageprofile-zlib ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-zlib stage1-zlib ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif zlib
+
+# Bubble a bugfix through all the stages up to stage profile.  They
+# are remade, but not reconfigured.  The next stage (if any) will not
+# be reconfigured as well.
+.PHONY: stageprofile-bubble
+stageprofile-bubble:: stage1-bubble
+       @if test -f stageprofile-lean || test -f stage1-lean  ; then \
+         echo Skipping rebuild of stageprofile ; \
+       else \
+         $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stageprofile; \
+       fi
 
-configure-target-libjava: $(TARGET_SUBDIR)/libjava/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libjava/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/libjava ] || \
-         mkdir $(TARGET_SUBDIR)/libjava;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
-       CXX="$(RAW_CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/libjava; \
-       cd "$(TARGET_SUBDIR)/libjava" || exit 1; \
+.PHONY: all-stageprofile clean-stageprofile
+all-stageprofile:     \
+  maybe-all-stageprofile-bfd \
+  maybe-all-stageprofile-opcodes \
+  maybe-all-stageprofile-binutils              \
+  maybe-all-stageprofile-gas \
+  maybe-all-stageprofile-gcc        \
+  maybe-all-stageprofile-intl   \
+  maybe-all-stageprofile-ld \
+  maybe-all-stageprofile-libcpp  \
+  maybe-all-stageprofile-libiberty                        \
+  maybe-all-stageprofile-zlib        
+
+do-clean: clean-stageprofile
+clean-stageprofile:     \
+  maybe-clean-stageprofile-bfd \
+  maybe-clean-stageprofile-opcodes \
+  maybe-clean-stageprofile-binutils              \
+  maybe-clean-stageprofile-gas \
+  maybe-clean-stageprofile-gcc        \
+  maybe-clean-stageprofile-intl   \
+  maybe-clean-stageprofile-ld \
+  maybe-clean-stageprofile-libcpp  \
+  maybe-clean-stageprofile-libiberty                        \
+  maybe-clean-stageprofile-zlib        
+
+
+.PHONY: configure-stageprofile-bfd maybe-configure-stageprofile-bfd
+.PHONY: all-stageprofile-bfd maybe-all-stageprofile-bfd
+.PHONY: clean-stageprofile-bfd maybe-clean-stageprofile-bfd
+
+maybe-configure-stageprofile-bfd:
+maybe-all-stageprofile-bfd:
+maybe-clean-stageprofile-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stageprofile-bfd: configure-stageprofile-bfd
+configure-stageprofile-bfd:
+       @$(MAKE) stageprofile-start
+       @[ -f bfd/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in bfd ; \
+       cd $(HOST_SUBDIR)/bfd || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/bfd"; \
+       libsrcdir="$$s/bfd"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-bfd: all-stageprofile-bfd
+all-stageprofile-bfd: configure-stageprofile-bfd
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-bfd: clean-stageprofile-bfd
+clean-stageprofile-bfd:
+       @[ -f bfd/Makefile ] || [ -f stageprofile-bfd/Makefile ] \
+         || exit 0 ; \
+       [ -f bfd/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stageprofile-opcodes maybe-configure-stageprofile-opcodes
+.PHONY: all-stageprofile-opcodes maybe-all-stageprofile-opcodes
+.PHONY: clean-stageprofile-opcodes maybe-clean-stageprofile-opcodes
+
+maybe-configure-stageprofile-opcodes:
+maybe-all-stageprofile-opcodes:
+maybe-clean-stageprofile-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stageprofile-opcodes: configure-stageprofile-opcodes
+configure-stageprofile-opcodes:
+       @$(MAKE) stageprofile-start
+       @[ -f opcodes/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in opcodes ; \
+       cd $(HOST_SUBDIR)/opcodes || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/opcodes"; \
+       libsrcdir="$$s/opcodes"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-opcodes: all-stageprofile-opcodes
+all-stageprofile-opcodes: configure-stageprofile-opcodes
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-opcodes: clean-stageprofile-opcodes
+clean-stageprofile-opcodes:
+       @[ -f opcodes/Makefile ] || [ -f stageprofile-opcodes/Makefile ] \
+         || exit 0 ; \
+       [ -f opcodes/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stageprofile-binutils maybe-configure-stageprofile-binutils
+.PHONY: all-stageprofile-binutils maybe-all-stageprofile-binutils
+.PHONY: clean-stageprofile-binutils maybe-clean-stageprofile-binutils
+
+maybe-configure-stageprofile-binutils:
+maybe-all-stageprofile-binutils:
+maybe-clean-stageprofile-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stageprofile-binutils: configure-stageprofile-binutils
+configure-stageprofile-binutils:
+       @$(MAKE) stageprofile-start
+       @[ -f binutils/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in binutils ; \
+       cd $(HOST_SUBDIR)/binutils || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/binutils"; \
+       libsrcdir="$$s/binutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-binutils: all-stageprofile-binutils
+all-stageprofile-binutils: configure-stageprofile-binutils
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-binutils: clean-stageprofile-binutils
+clean-stageprofile-binutils:
+       @[ -f binutils/Makefile ] || [ -f stageprofile-binutils/Makefile ] \
+         || exit 0 ; \
+       [ -f binutils/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stageprofile-gas maybe-configure-stageprofile-gas
+.PHONY: all-stageprofile-gas maybe-all-stageprofile-gas
+.PHONY: clean-stageprofile-gas maybe-clean-stageprofile-gas
+
+maybe-configure-stageprofile-gas:
+maybe-all-stageprofile-gas:
+maybe-clean-stageprofile-gas:
+
+@if gas-bootstrap
+maybe-configure-stageprofile-gas: configure-stageprofile-gas
+configure-stageprofile-gas:
+       @$(MAKE) stageprofile-start
+       @[ -f gas/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in gas ; \
+       cd $(HOST_SUBDIR)/gas || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gas"; \
+       libsrcdir="$$s/gas"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-gas: all-stageprofile-gas
+all-stageprofile-gas: configure-stageprofile-gas
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-gas: clean-stageprofile-gas
+clean-stageprofile-gas:
+       @[ -f gas/Makefile ] || [ -f stageprofile-gas/Makefile ] \
+         || exit 0 ; \
+       [ -f gas/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stageprofile-gcc maybe-configure-stageprofile-gcc
+.PHONY: all-stageprofile-gcc maybe-all-stageprofile-gcc
+.PHONY: clean-stageprofile-gcc maybe-clean-stageprofile-gcc
+
+maybe-configure-stageprofile-gcc:
+maybe-all-stageprofile-gcc:
+maybe-clean-stageprofile-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stageprofile-gcc: configure-stageprofile-gcc
+configure-stageprofile-gcc:
+       @$(MAKE) stageprofile-start
+       @[ -f gcc/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in gcc ; \
+       cd $(HOST_SUBDIR)/gcc || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gcc"; \
+       libsrcdir="$$s/gcc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-gcc: all-stageprofile-gcc
+all-stageprofile-gcc: configure-stageprofile-gcc
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stageprofile-gcc: clean-stageprofile-gcc
+clean-stageprofile-gcc:
+       @[ -f gcc/Makefile ] || [ -f stageprofile-gcc/Makefile ] \
+         || exit 0 ; \
+       [ -f gcc/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stageprofile-intl maybe-configure-stageprofile-intl
+.PHONY: all-stageprofile-intl maybe-all-stageprofile-intl
+.PHONY: clean-stageprofile-intl maybe-clean-stageprofile-intl
+
+maybe-configure-stageprofile-intl:
+maybe-all-stageprofile-intl:
+maybe-clean-stageprofile-intl:
+
+@if intl-bootstrap
+maybe-configure-stageprofile-intl: configure-stageprofile-intl
+configure-stageprofile-intl:
+       @$(MAKE) stageprofile-start
+       @[ -f intl/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in intl ; \
+       cd $(HOST_SUBDIR)/intl || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/intl"; \
+       libsrcdir="$$s/intl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-intl: all-stageprofile-intl
+all-stageprofile-intl: configure-stageprofile-intl
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-intl: clean-stageprofile-intl
+clean-stageprofile-intl:
+       @[ -f intl/Makefile ] || [ -f stageprofile-intl/Makefile ] \
+         || exit 0 ; \
+       [ -f intl/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stageprofile-ld maybe-configure-stageprofile-ld
+.PHONY: all-stageprofile-ld maybe-all-stageprofile-ld
+.PHONY: clean-stageprofile-ld maybe-clean-stageprofile-ld
+
+maybe-configure-stageprofile-ld:
+maybe-all-stageprofile-ld:
+maybe-clean-stageprofile-ld:
+
+@if ld-bootstrap
+maybe-configure-stageprofile-ld: configure-stageprofile-ld
+configure-stageprofile-ld:
+       @$(MAKE) stageprofile-start
+       @[ -f ld/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in ld ; \
+       cd $(HOST_SUBDIR)/ld || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/ld"; \
+       libsrcdir="$$s/ld"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-ld: all-stageprofile-ld
+all-stageprofile-ld: configure-stageprofile-ld
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-ld: clean-stageprofile-ld
+clean-stageprofile-ld:
+       @[ -f ld/Makefile ] || [ -f stageprofile-ld/Makefile ] \
+         || exit 0 ; \
+       [ -f ld/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stageprofile-libcpp maybe-configure-stageprofile-libcpp
+.PHONY: all-stageprofile-libcpp maybe-all-stageprofile-libcpp
+.PHONY: clean-stageprofile-libcpp maybe-clean-stageprofile-libcpp
+
+maybe-configure-stageprofile-libcpp:
+maybe-all-stageprofile-libcpp:
+maybe-clean-stageprofile-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stageprofile-libcpp: configure-stageprofile-libcpp
+configure-stageprofile-libcpp:
+       @$(MAKE) stageprofile-start
+       @[ -f libcpp/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in libcpp ; \
+       cd $(HOST_SUBDIR)/libcpp || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libcpp"; \
+       libsrcdir="$$s/libcpp"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-libcpp: all-stageprofile-libcpp
+all-stageprofile-libcpp: configure-stageprofile-libcpp
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-libcpp: clean-stageprofile-libcpp
+clean-stageprofile-libcpp:
+       @[ -f libcpp/Makefile ] || [ -f stageprofile-libcpp/Makefile ] \
+         || exit 0 ; \
+       [ -f libcpp/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stageprofile-libiberty maybe-configure-stageprofile-libiberty
+.PHONY: all-stageprofile-libiberty maybe-all-stageprofile-libiberty
+.PHONY: clean-stageprofile-libiberty maybe-clean-stageprofile-libiberty
+
+maybe-configure-stageprofile-libiberty:
+maybe-all-stageprofile-libiberty:
+maybe-clean-stageprofile-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stageprofile-libiberty: configure-stageprofile-libiberty
+configure-stageprofile-libiberty:
+       @$(MAKE) stageprofile-start
+       @[ -f libiberty/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in libiberty ; \
+       cd $(HOST_SUBDIR)/libiberty || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-libiberty: all-stageprofile-libiberty
+all-stageprofile-libiberty: configure-stageprofile-libiberty
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-libiberty: clean-stageprofile-libiberty
+clean-stageprofile-libiberty:
+       @[ -f libiberty/Makefile ] || [ -f stageprofile-libiberty/Makefile ] \
+         || exit 0 ; \
+       [ -f libiberty/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stageprofile-zlib maybe-configure-stageprofile-zlib
+.PHONY: all-stageprofile-zlib maybe-all-stageprofile-zlib
+.PHONY: clean-stageprofile-zlib maybe-clean-stageprofile-zlib
+
+maybe-configure-stageprofile-zlib:
+maybe-all-stageprofile-zlib:
+maybe-clean-stageprofile-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stageprofile-zlib: configure-stageprofile-zlib
+configure-stageprofile-zlib:
+       @$(MAKE) stageprofile-start
+       @[ -f zlib/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in zlib ; \
+       cd $(HOST_SUBDIR)/zlib || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/libjava "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
+       srcdiroption="--srcdir=$${topdir}/zlib"; \
+       libsrcdir="$$s/zlib"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stageprofile-zlib: all-stageprofile-zlib
+all-stageprofile-zlib: configure-stageprofile-zlib
+       @$(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" 
+
+maybe-clean-stageprofile-zlib: clean-stageprofile-zlib
+clean-stageprofile-zlib:
+       @[ -f zlib/Makefile ] || [ -f stageprofile-zlib/Makefile ] \
+         || exit 0 ; \
+       [ -f zlib/Makefile ] || $(MAKE) stageprofile-start ; \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  clean
+@endif zlib-bootstrap
+
+
+
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+
+
+
+
+# Rules to wipe a stage and all the following ones, also used for cleanstrap
+distclean-stage1:: distclean-stageprofile 
+.PHONY: distclean-stageprofile
+distclean-stageprofile::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf stageprofile-* 
+
+
+@endif gcc-bootstrap
+
+
+.PHONY: stagefeedback-start stagefeedback-end
+
+stagefeedback-start::
+       @[ -f stage_current ] && $(MAKE) `cat stage_current`-end || : ; \
+       echo stagefeedback > stage_current ; \
+       echo stagefeedback > stage_last; \
+       $(mkinstalldirs) $(HOST_SUBDIR)
+@if bfd
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-bfd ] || \
+         mkdir stagefeedback-bfd; \
+       set stagefeedback-bfd bfd ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-bfd prev-bfd ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-opcodes ] || \
+         mkdir stagefeedback-opcodes; \
+       set stagefeedback-opcodes opcodes ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-opcodes prev-opcodes ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-binutils ] || \
+         mkdir stagefeedback-binutils; \
+       set stagefeedback-binutils binutils ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-binutils prev-binutils ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-gas ] || \
+         mkdir stagefeedback-gas; \
+       set stagefeedback-gas gas ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-gas prev-gas ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-gcc ] || \
+         mkdir stagefeedback-gcc; \
+       set stagefeedback-gcc gcc ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-gcc prev-gcc ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-intl ] || \
+         mkdir stagefeedback-intl; \
+       set stagefeedback-intl intl ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-intl prev-intl ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-ld ] || \
+         mkdir stagefeedback-ld; \
+       set stagefeedback-ld ld ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-ld prev-ld ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-libcpp ] || \
+         mkdir stagefeedback-libcpp; \
+       set stagefeedback-libcpp libcpp ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libcpp prev-libcpp ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-libiberty ] || \
+         mkdir stagefeedback-libiberty; \
+       set stagefeedback-libiberty libiberty ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libiberty prev-libiberty ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-zlib ] || \
+         mkdir stagefeedback-zlib; \
+       set stagefeedback-zlib zlib ; \
+       @CREATE_LINK_TO_DIR@  ; \
+       set stage1-zlib prev-zlib ; \
+       @CREATE_LINK_TO_DIR@ 
+@endif zlib
+
+stagefeedback-end::
+       @rm -f stage_current
+@if bfd
+       @cd $(HOST_SUBDIR); set bfd stagefeedback-bfd ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage1-bfd ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       @cd $(HOST_SUBDIR); set opcodes stagefeedback-opcodes ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage1-opcodes ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       @cd $(HOST_SUBDIR); set binutils stagefeedback-binutils ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage1-binutils ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       @cd $(HOST_SUBDIR); set gas stagefeedback-gas ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage1-gas ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       @cd $(HOST_SUBDIR); set gcc stagefeedback-gcc ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage1-gcc ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       @cd $(HOST_SUBDIR); set intl stagefeedback-intl ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage1-intl ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       @cd $(HOST_SUBDIR); set ld stagefeedback-ld ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage1-ld ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       @cd $(HOST_SUBDIR); set libcpp stagefeedback-libcpp ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage1-libcpp ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libiberty
+       @cd $(HOST_SUBDIR); set libiberty stagefeedback-libiberty ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage1-libiberty ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       @cd $(HOST_SUBDIR); set zlib stagefeedback-zlib ; \
+       @UNDO_LINK_TO_DIR@  ; \
+       set prev-zlib stage1-zlib ; \
+       @UNDO_LINK_TO_DIR@ 
+@endif zlib
+
+# Bubble a bugfix through all the stages up to stage feedback.  They
+# are remade, but not reconfigured.  The next stage (if any) will not
+# be reconfigured as well.
+.PHONY: stagefeedback-bubble
+stagefeedback-bubble:: stage1-bubble
+       @if test -f stagefeedback-lean || test -f stage1-lean  ; then \
+         echo Skipping rebuild of stagefeedback ; \
        else \
-         srcdiroption="--srcdir=$${topdir}/libjava"; \
-         libsrcdir="$$s/libjava"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
-
-.PHONY: all-target-libjava maybe-all-target-libjava
-maybe-all-target-libjava:
-all-target-libjava: configure-target-libjava
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libjava && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'  all)
-
-.PHONY: check-target-libjava maybe-check-target-libjava
-maybe-check-target-libjava:
-
-check-target-libjava:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libjava && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'  check)
-
-
-.PHONY: install-target-libjava maybe-install-target-libjava
-maybe-install-target-libjava:
-
-install-target-libjava: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libjava && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-zlib maybe-configure-target-zlib
-maybe-configure-target-zlib:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/zlib/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/zlib ] || \
-         mkdir $(TARGET_SUBDIR)/zlib; \
-       rm -f $(TARGET_SUBDIR)/zlib/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/zlib/multilib.out
+         $(MAKE) $(RECURSE_FLAGS_TO_PASS) NOTPARALLEL= all-stagefeedback; \
+       fi
 
-configure-target-zlib: $(TARGET_SUBDIR)/zlib/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/zlib/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/zlib ] || \
-         mkdir $(TARGET_SUBDIR)/zlib;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/zlib; \
-       cd "$(TARGET_SUBDIR)/zlib" || exit 1; \
+.PHONY: all-stagefeedback clean-stagefeedback
+all-stagefeedback:     \
+  maybe-all-stagefeedback-bfd \
+  maybe-all-stagefeedback-opcodes \
+  maybe-all-stagefeedback-binutils              \
+  maybe-all-stagefeedback-gas \
+  maybe-all-stagefeedback-gcc        \
+  maybe-all-stagefeedback-intl   \
+  maybe-all-stagefeedback-ld \
+  maybe-all-stagefeedback-libcpp  \
+  maybe-all-stagefeedback-libiberty                        \
+  maybe-all-stagefeedback-zlib        
+
+do-clean: clean-stagefeedback
+clean-stagefeedback:     \
+  maybe-clean-stagefeedback-bfd \
+  maybe-clean-stagefeedback-opcodes \
+  maybe-clean-stagefeedback-binutils              \
+  maybe-clean-stagefeedback-gas \
+  maybe-clean-stagefeedback-gcc        \
+  maybe-clean-stagefeedback-intl   \
+  maybe-clean-stagefeedback-ld \
+  maybe-clean-stagefeedback-libcpp  \
+  maybe-clean-stagefeedback-libiberty                        \
+  maybe-clean-stagefeedback-zlib        
+
+
+.PHONY: configure-stagefeedback-bfd maybe-configure-stagefeedback-bfd
+.PHONY: all-stagefeedback-bfd maybe-all-stagefeedback-bfd
+.PHONY: clean-stagefeedback-bfd maybe-clean-stagefeedback-bfd
+
+maybe-configure-stagefeedback-bfd:
+maybe-all-stagefeedback-bfd:
+maybe-clean-stagefeedback-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stagefeedback-bfd: configure-stagefeedback-bfd
+configure-stagefeedback-bfd:
+       @$(MAKE) stagefeedback-start
+       @[ -f bfd/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in bfd ; \
+       cd $(HOST_SUBDIR)/bfd || exit 1; \
        case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/bfd/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
        esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/zlib "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/zlib"; \
-         libsrcdir="$$s/zlib"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
+       srcdiroption="--srcdir=$${topdir}/bfd"; \
+       libsrcdir="$$s/bfd"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-bfd: all-stagefeedback-bfd
+all-stagefeedback-bfd: configure-stagefeedback-bfd
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
+
+maybe-clean-stagefeedback-bfd: clean-stagefeedback-bfd
+clean-stagefeedback-bfd:
+       @[ -f bfd/Makefile ] || [ -f stagefeedback-bfd/Makefile ] \
+         || exit 0 ; \
+       [ -f bfd/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif bfd-bootstrap
+
+
+.PHONY: configure-stagefeedback-opcodes maybe-configure-stagefeedback-opcodes
+.PHONY: all-stagefeedback-opcodes maybe-all-stagefeedback-opcodes
+.PHONY: clean-stagefeedback-opcodes maybe-clean-stagefeedback-opcodes
+
+maybe-configure-stagefeedback-opcodes:
+maybe-all-stagefeedback-opcodes:
+maybe-clean-stagefeedback-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stagefeedback-opcodes: configure-stagefeedback-opcodes
+configure-stagefeedback-opcodes:
+       @$(MAKE) stagefeedback-start
+       @[ -f opcodes/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in opcodes ; \
+       cd $(HOST_SUBDIR)/opcodes || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/opcodes/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/opcodes"; \
+       libsrcdir="$$s/opcodes"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-opcodes: all-stagefeedback-opcodes
+all-stagefeedback-opcodes: configure-stagefeedback-opcodes
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
+
+maybe-clean-stagefeedback-opcodes: clean-stagefeedback-opcodes
+clean-stagefeedback-opcodes:
+       @[ -f opcodes/Makefile ] || [ -f stagefeedback-opcodes/Makefile ] \
+         || exit 0 ; \
+       [ -f opcodes/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif opcodes-bootstrap
+
+
+.PHONY: configure-stagefeedback-binutils maybe-configure-stagefeedback-binutils
+.PHONY: all-stagefeedback-binutils maybe-all-stagefeedback-binutils
+.PHONY: clean-stagefeedback-binutils maybe-clean-stagefeedback-binutils
+
+maybe-configure-stagefeedback-binutils:
+maybe-all-stagefeedback-binutils:
+maybe-clean-stagefeedback-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stagefeedback-binutils: configure-stagefeedback-binutils
+configure-stagefeedback-binutils:
+       @$(MAKE) stagefeedback-start
+       @[ -f binutils/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in binutils ; \
+       cd $(HOST_SUBDIR)/binutils || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/binutils/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/binutils"; \
+       libsrcdir="$$s/binutils"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-binutils: all-stagefeedback-binutils
+all-stagefeedback-binutils: configure-stagefeedback-binutils
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
+
+maybe-clean-stagefeedback-binutils: clean-stagefeedback-binutils
+clean-stagefeedback-binutils:
+       @[ -f binutils/Makefile ] || [ -f stagefeedback-binutils/Makefile ] \
+         || exit 0 ; \
+       [ -f binutils/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif binutils-bootstrap
+
+
+.PHONY: configure-stagefeedback-gas maybe-configure-stagefeedback-gas
+.PHONY: all-stagefeedback-gas maybe-all-stagefeedback-gas
+.PHONY: clean-stagefeedback-gas maybe-clean-stagefeedback-gas
+
+maybe-configure-stagefeedback-gas:
+maybe-all-stagefeedback-gas:
+maybe-clean-stagefeedback-gas:
+
+@if gas-bootstrap
+maybe-configure-stagefeedback-gas: configure-stagefeedback-gas
+configure-stagefeedback-gas:
+       @$(MAKE) stagefeedback-start
+       @[ -f gas/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in gas ; \
+       cd $(HOST_SUBDIR)/gas || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gas/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gas"; \
+       libsrcdir="$$s/gas"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-gas: all-stagefeedback-gas
+all-stagefeedback-gas: configure-stagefeedback-gas
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
+
+maybe-clean-stagefeedback-gas: clean-stagefeedback-gas
+clean-stagefeedback-gas:
+       @[ -f gas/Makefile ] || [ -f stagefeedback-gas/Makefile ] \
+         || exit 0 ; \
+       [ -f gas/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif gas-bootstrap
+
+
+.PHONY: configure-stagefeedback-gcc maybe-configure-stagefeedback-gcc
+.PHONY: all-stagefeedback-gcc maybe-all-stagefeedback-gcc
+.PHONY: clean-stagefeedback-gcc maybe-clean-stagefeedback-gcc
+
+maybe-configure-stagefeedback-gcc:
+maybe-all-stagefeedback-gcc:
+maybe-clean-stagefeedback-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stagefeedback-gcc: configure-stagefeedback-gcc
+configure-stagefeedback-gcc:
+       @$(MAKE) stagefeedback-start
+       @[ -f gcc/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in gcc ; \
+       cd $(HOST_SUBDIR)/gcc || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/gcc/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/gcc"; \
+       libsrcdir="$$s/gcc"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-gcc: all-stagefeedback-gcc
+all-stagefeedback-gcc: configure-stagefeedback-gcc
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" $(EXTRA_GCC_FLAGS)
+
+maybe-clean-stagefeedback-gcc: clean-stagefeedback-gcc
+clean-stagefeedback-gcc:
+       @[ -f gcc/Makefile ] || [ -f stagefeedback-gcc/Makefile ] \
+         || exit 0 ; \
+       [ -f gcc/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" $(EXTRA_GCC_FLAGS) clean
+@endif gcc-bootstrap
+
+
+.PHONY: configure-stagefeedback-intl maybe-configure-stagefeedback-intl
+.PHONY: all-stagefeedback-intl maybe-all-stagefeedback-intl
+.PHONY: clean-stagefeedback-intl maybe-clean-stagefeedback-intl
+
+maybe-configure-stagefeedback-intl:
+maybe-all-stagefeedback-intl:
+maybe-clean-stagefeedback-intl:
+
+@if intl-bootstrap
+maybe-configure-stagefeedback-intl: configure-stagefeedback-intl
+configure-stagefeedback-intl:
+       @$(MAKE) stagefeedback-start
+       @[ -f intl/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in intl ; \
+       cd $(HOST_SUBDIR)/intl || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/intl/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/intl"; \
+       libsrcdir="$$s/intl"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-intl: all-stagefeedback-intl
+all-stagefeedback-intl: configure-stagefeedback-intl
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
+
+maybe-clean-stagefeedback-intl: clean-stagefeedback-intl
+clean-stagefeedback-intl:
+       @[ -f intl/Makefile ] || [ -f stagefeedback-intl/Makefile ] \
+         || exit 0 ; \
+       [ -f intl/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif intl-bootstrap
+
+
+.PHONY: configure-stagefeedback-ld maybe-configure-stagefeedback-ld
+.PHONY: all-stagefeedback-ld maybe-all-stagefeedback-ld
+.PHONY: clean-stagefeedback-ld maybe-clean-stagefeedback-ld
+
+maybe-configure-stagefeedback-ld:
+maybe-all-stagefeedback-ld:
+maybe-clean-stagefeedback-ld:
+
+@if ld-bootstrap
+maybe-configure-stagefeedback-ld: configure-stagefeedback-ld
+configure-stagefeedback-ld:
+       @$(MAKE) stagefeedback-start
+       @[ -f ld/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in ld ; \
+       cd $(HOST_SUBDIR)/ld || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/ld/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/ld"; \
+       libsrcdir="$$s/ld"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-ld: all-stagefeedback-ld
+all-stagefeedback-ld: configure-stagefeedback-ld
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
+
+maybe-clean-stagefeedback-ld: clean-stagefeedback-ld
+clean-stagefeedback-ld:
+       @[ -f ld/Makefile ] || [ -f stagefeedback-ld/Makefile ] \
+         || exit 0 ; \
+       [ -f ld/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif ld-bootstrap
+
+
+.PHONY: configure-stagefeedback-libcpp maybe-configure-stagefeedback-libcpp
+.PHONY: all-stagefeedback-libcpp maybe-all-stagefeedback-libcpp
+.PHONY: clean-stagefeedback-libcpp maybe-clean-stagefeedback-libcpp
+
+maybe-configure-stagefeedback-libcpp:
+maybe-all-stagefeedback-libcpp:
+maybe-clean-stagefeedback-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stagefeedback-libcpp: configure-stagefeedback-libcpp
+configure-stagefeedback-libcpp:
+       @$(MAKE) stagefeedback-start
+       @[ -f libcpp/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in libcpp ; \
+       cd $(HOST_SUBDIR)/libcpp || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libcpp/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libcpp"; \
+       libsrcdir="$$s/libcpp"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-libcpp: all-stagefeedback-libcpp
+all-stagefeedback-libcpp: configure-stagefeedback-libcpp
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
+
+maybe-clean-stagefeedback-libcpp: clean-stagefeedback-libcpp
+clean-stagefeedback-libcpp:
+       @[ -f libcpp/Makefile ] || [ -f stagefeedback-libcpp/Makefile ] \
+         || exit 0 ; \
+       [ -f libcpp/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif libcpp-bootstrap
+
+
+.PHONY: configure-stagefeedback-libiberty maybe-configure-stagefeedback-libiberty
+.PHONY: all-stagefeedback-libiberty maybe-all-stagefeedback-libiberty
+.PHONY: clean-stagefeedback-libiberty maybe-clean-stagefeedback-libiberty
+
+maybe-configure-stagefeedback-libiberty:
+maybe-all-stagefeedback-libiberty:
+maybe-clean-stagefeedback-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stagefeedback-libiberty: configure-stagefeedback-libiberty
+configure-stagefeedback-libiberty:
+       @$(MAKE) stagefeedback-start
+       @[ -f libiberty/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in libiberty ; \
+       cd $(HOST_SUBDIR)/libiberty || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libiberty/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/libiberty"; \
+       libsrcdir="$$s/libiberty"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
+
+maybe-all-stagefeedback-libiberty: all-stagefeedback-libiberty
+all-stagefeedback-libiberty: configure-stagefeedback-libiberty
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
+
+maybe-clean-stagefeedback-libiberty: clean-stagefeedback-libiberty
+clean-stagefeedback-libiberty:
+       @[ -f libiberty/Makefile ] || [ -f stagefeedback-libiberty/Makefile ] \
+         || exit 0 ; \
+       [ -f libiberty/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif libiberty-bootstrap
+
+
+.PHONY: configure-stagefeedback-zlib maybe-configure-stagefeedback-zlib
+.PHONY: all-stagefeedback-zlib maybe-all-stagefeedback-zlib
+.PHONY: clean-stagefeedback-zlib maybe-clean-stagefeedback-zlib
+
+maybe-configure-stagefeedback-zlib:
+maybe-all-stagefeedback-zlib:
+maybe-clean-stagefeedback-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stagefeedback-zlib: configure-stagefeedback-zlib
+configure-stagefeedback-zlib:
+       @$(MAKE) stagefeedback-start
+       @[ -f zlib/Makefile ] && exit 0 || : ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in zlib ; \
+       cd $(HOST_SUBDIR)/zlib || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/zlib/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       srcdiroption="--srcdir=$${topdir}/zlib"; \
+       libsrcdir="$$s/zlib"; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@ 
 
-.PHONY: all-target-zlib maybe-all-target-zlib
-maybe-all-target-zlib:
-all-target-zlib: configure-target-zlib
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/zlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+maybe-all-stagefeedback-zlib: all-stagefeedback-zlib
+all-stagefeedback-zlib: configure-stagefeedback-zlib
+       @$(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" 
 
-.PHONY: check-target-zlib maybe-check-target-zlib
-maybe-check-target-zlib:
+maybe-clean-stagefeedback-zlib: clean-stagefeedback-zlib
+clean-stagefeedback-zlib:
+       @[ -f zlib/Makefile ] || [ -f stagefeedback-zlib/Makefile ] \
+         || exit 0 ; \
+       [ -f zlib/Makefile ] || $(MAKE) stagefeedback-start ; \
+       cd $(HOST_SUBDIR)/zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  clean
+@endif zlib-bootstrap
 
-check-target-zlib:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/zlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
 
 
-.PHONY: install-target-zlib maybe-install-target-zlib
-maybe-install-target-zlib:
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+
+
 
-install-target-zlib: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/zlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
 
+# Rules to wipe a stage and all the following ones, also used for cleanstrap
+distclean-stage1:: distclean-stagefeedback 
+.PHONY: distclean-stagefeedback
+distclean-stagefeedback::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf stagefeedback-* 
 
-.PHONY: configure-target-boehm-gc maybe-configure-target-boehm-gc
-maybe-configure-target-boehm-gc:
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/boehm-gc/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/boehm-gc ] || \
-         mkdir $(TARGET_SUBDIR)/boehm-gc; \
-       rm -f $(TARGET_SUBDIR)/boehm-gc/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/boehm-gc/multilib.out
+@endif gcc-bootstrap
 
-configure-target-boehm-gc: $(TARGET_SUBDIR)/boehm-gc/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/boehm-gc/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/boehm-gc ] || \
-         mkdir $(TARGET_SUBDIR)/boehm-gc;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/boehm-gc; \
-       cd "$(TARGET_SUBDIR)/boehm-gc" || exit 1; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/boehm-gc "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/boehm-gc"; \
-         libsrcdir="$$s/boehm-gc"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
 
-.PHONY: all-target-boehm-gc maybe-all-target-boehm-gc
-maybe-all-target-boehm-gc:
-all-target-boehm-gc: configure-target-boehm-gc
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
 
-.PHONY: check-target-boehm-gc maybe-check-target-boehm-gc
-maybe-check-target-boehm-gc:
+stagefeedback-start::
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       cd stageprofile-gcc && \
+         { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../gcc/&",' | $(SHELL); } && \
+         { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../gcc/&",' | $(SHELL); }
 
-check-target-boehm-gc:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+# FIXME: Will not need to be conditional when toplevel bootstrap is the
+# only possibility, but now it conflicts with no-bootstrap rules
+@if gcc-bootstrap
+profiledbootstrap:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo "Bootstrapping the compiler"; \
+       $(MAKE) stageprofile-bubble distclean-stagefeedback
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+       echo "Building runtime libraries and training compiler"; \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo "Building feedback based compiler"; \
+       $(MAKE) stagefeedback-bubble stagefeedback-end
+@endif gcc-bootstrap
 
+@if gcc-bootstrap
+NOTPARALLEL = .NOTPARALLEL
+$(NOTPARALLEL):
+do-distclean: distclean-stage1
+@endif gcc-bootstrap
 
-.PHONY: install-target-boehm-gc maybe-install-target-boehm-gc
-maybe-install-target-boehm-gc:
+# --------------------------------------
+# Dependencies between different modules
+# --------------------------------------
 
-install-target-boehm-gc: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+# Generic dependencies for target modules on host stuff, especially gcc
 
+configure-target-libstdc++-v3: maybe-all-gcc
 
-.PHONY: configure-target-qthreads maybe-configure-target-qthreads
-maybe-configure-target-qthreads:
+configure-target-libmudflap: maybe-all-gcc
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/qthreads/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/qthreads ] || \
-         mkdir $(TARGET_SUBDIR)/qthreads; \
-       rm -f $(TARGET_SUBDIR)/qthreads/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/qthreads/multilib.out
+configure-target-newlib: maybe-all-gcc
 
-configure-target-qthreads: $(TARGET_SUBDIR)/qthreads/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/qthreads/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/qthreads ] || \
-         mkdir $(TARGET_SUBDIR)/qthreads;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/qthreads; \
-       cd "$(TARGET_SUBDIR)/qthreads" || exit 1; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/qthreads "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/qthreads"; \
-         libsrcdir="$$s/qthreads"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
+configure-target-libgfortran: maybe-all-gcc
 
-.PHONY: all-target-qthreads maybe-all-target-qthreads
-maybe-all-target-qthreads:
-all-target-qthreads: configure-target-qthreads
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/qthreads && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+configure-target-libobjc: maybe-all-gcc
 
-.PHONY: check-target-qthreads maybe-check-target-qthreads
-maybe-check-target-qthreads:
+configure-target-libtermcap: maybe-all-gcc
 
-check-target-qthreads:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/qthreads && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+configure-target-winsup: maybe-all-gcc
 
+configure-target-libgloss: maybe-all-gcc
 
-.PHONY: install-target-qthreads maybe-install-target-qthreads
-maybe-install-target-qthreads:
+configure-target-libiberty: maybe-all-gcc
 
-install-target-qthreads: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/qthreads && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+configure-target-gperf: maybe-all-gcc
 
+configure-target-examples: maybe-all-gcc
 
-.PHONY: configure-target-rda maybe-configure-target-rda
-maybe-configure-target-rda:
+configure-target-libffi: maybe-all-gcc
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/rda/multilib.out: multilib.out
-       @[ -d $(TARGET_SUBDIR)/rda ] || \
-         mkdir $(TARGET_SUBDIR)/rda; \
-       rm -f $(TARGET_SUBDIR)/rda/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/rda/multilib.out
+configure-target-libjava: maybe-all-gcc
 
-configure-target-rda: $(TARGET_SUBDIR)/rda/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/rda/Makefile || exit 0; \
-       [ -d $(TARGET_SUBDIR)/rda ] || \
-         mkdir $(TARGET_SUBDIR)/rda;\
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       AR="$(AR_FOR_TARGET)"; export AR; \
-       AS="$(AS_FOR_TARGET)"; export AS; \
-       CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
-       CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXX="$(CXX_FOR_TARGET)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
-       GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
-       DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
-       LD="$(LD_FOR_TARGET)"; export LD; \
-       LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \
-       NM="$(NM_FOR_TARGET)"; export NM; \
-       RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
-       echo Configuring in $(TARGET_SUBDIR)/rda; \
-       cd "$(TARGET_SUBDIR)/rda" || exit 1; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       esac; \
-       if [ "$(srcdir)" = "." ] ; then \
-         if [ "$(TARGET_SUBDIR)" != "." ] ; then \
-           if $(SHELL) $$s/symlink-tree $${topdir}/rda "no-such-file" ; then \
-             if [ -f Makefile ]; then \
-               if $(MAKE) distclean; then \
-                 true; \
-               else \
-                 exit 1; \
-               fi; \
-             else \
-               true; \
-             fi; \
-           else \
-             exit 1; \
-           fi; \
-         else \
-           true; \
-         fi; \
-         srcdiroption="--srcdir=."; \
-         libsrcdir="."; \
-       else \
-         srcdiroption="--srcdir=$${topdir}/rda"; \
-         libsrcdir="$$s/rda"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
+configure-target-zlib: maybe-all-gcc
 
-.PHONY: all-target-rda maybe-all-target-rda
-maybe-all-target-rda:
-all-target-rda: configure-target-rda
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/rda && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+configure-target-boehm-gc: maybe-all-gcc
 
-.PHONY: check-target-rda maybe-check-target-rda
-maybe-check-target-rda:
+configure-target-qthreads: maybe-all-gcc
 
-check-target-rda:
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/rda && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+configure-target-rda: maybe-all-gcc
 
+configure-target-libada: maybe-all-gcc
 
-.PHONY: install-target-rda maybe-install-target-rda
-maybe-install-target-rda:
 
-install-target-rda: installdirs
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/rda && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
 
+configure-target-boehm-gc: maybe-all-target-newlib maybe-all-target-libgloss
 
+configure-target-gperf: maybe-all-target-newlib maybe-all-target-libgloss
+configure-target-gperf: maybe-all-target-libstdc++-v3
 
-# ----------
-# GCC module
-# ----------
+configure-target-libada: maybe-all-target-newlib maybe-all-target-libgloss
 
-# Unfortunately, while gcc _should_ be a host module,
-# libgcc is a target module, and gen* programs are
-# build modules.  So GCC is a sort of hybrid.
+configure-target-libgfortran: maybe-all-target-newlib maybe-all-target-libgloss
 
-# gcc is the only module which uses GCC_FLAGS_TO_PASS.
-.PHONY: configure-gcc maybe-configure-gcc
-maybe-configure-gcc:
-configure-gcc:
-       @test ! -f gcc/Makefile || exit 0; \
-       [ -d gcc ] || mkdir gcc; \
-       r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CXX="$(CXX)"; export CXX; \
-       CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \
-       TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \
-       AR="$(AR)"; export AR; \
-       AS="$(AS)"; export AS; \
-       CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-       DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
-       LD="$(LD)"; export LD; \
-       NM="$(NM)"; export NM; \
-       RANLIB="$(RANLIB)"; export RANLIB; \
-       WINDRES="$(WINDRES)"; export WINDRES; \
-       OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
-       OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
-       echo Configuring in gcc; \
-       cd gcc || exit 1; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gcc"; \
-           libsrcdir="$$s/gcc";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/gcc"; \
-           libsrcdir="$$s/gcc";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+configure-target-libffi: maybe-all-target-newlib maybe-all-target-libgloss
 
-# Don't 'make all' in gcc if it's already been made by 'bootstrap'; that
-# causes trouble.  This wart will be fixed eventually by moving
-# the bootstrap behavior to this file.
-.PHONY: all-gcc maybe-all-gcc
-maybe-all-gcc:
-all-gcc: configure-gcc
-       @if [ -f gcc/stage_last ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) quickstrap); \
-       else \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) all); \
-       fi
+configure-target-libjava: maybe-all-target-newlib maybe-all-target-libgloss
+configure-target-libjava: maybe-all-target-libstdc++-v3
 
-# Building GCC uses some tools for rebuilding "source" files
-# like texinfo, bison/byacc, etc.  So we must depend on those.
-#
-# While building GCC, it may be necessary to run various target
-# programs like the assembler, linker, etc.  So we depend on
-# those too.
-#
-# In theory, on an SMP all those dependencies can be resolved
-# in parallel.
-#
-GCC_STRAP_TARGETS = bootstrap bootstrap-lean bootstrap2 bootstrap2-lean bootstrap3 bootstrap3-lean bootstrap4 bootstrap4-lean bubblestrap quickstrap cleanstrap restrap
-.PHONY: $(GCC_STRAP_TARGETS)
-$(GCC_STRAP_TARGETS): all-bootstrap configure-gcc
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Bootstrapping the compiler"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       case "$@" in \
-         *bootstrap4-lean ) \
-           msg="Comparing stage3 and stage4 of the compiler"; \
-           compare=compare3-lean ;; \
-         *bootstrap4 ) \
-           msg="Comparing stage3 and stage4 of the compiler"; \
-           compare=compare3 ;; \
-         *-lean ) \
-           msg="Comparing stage2 and stage3 of the compiler"; \
-           compare=compare-lean ;; \
-         * ) \
-           msg="Comparing stage2 and stage3 of the compiler"; \
-           compare=compare ;; \
-       esac; \
-       $(SET_LIB_PATH) \
-       echo "$$msg"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}` ; export s; \
-       $(SET_LIB_PATH) \
-       echo "Building runtime libraries"; \
-       $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
+configure-target-libobjc: maybe-all-target-newlib maybe-all-target-libgloss
 
-profiledbootstrap: all-bootstrap configure-gcc
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Bootstrapping the compiler"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stageprofile_build
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}` ; export s; \
-       $(SET_LIB_PATH) \
-       echo "Building runtime libraries and training compiler"; \
-       $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Building feedback based compiler"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stagefeedback_build
+configure-target-libstdc++-v3: maybe-all-target-newlib maybe-all-target-libgloss
 
-.PHONY: cross
-cross: all-texinfo all-bison all-byacc all-binutils all-gas all-ld
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Building the C and C++ compiler"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++"
-       @r=`${PWD}`; export r; \
-       s=`cd $(srcdir); ${PWD}` ; export s; \
-       $(SET_LIB_PATH) \
-       echo "Building runtime libraries"; \
-       $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) \
-         LANGUAGES="c c++" all
+configure-target-zlib: maybe-all-target-newlib maybe-all-target-libgloss
 
-.PHONY: check-gcc maybe-check-gcc
-maybe-check-gcc:
-check-gcc:
-       @if [ -f ./gcc/Makefile ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check); \
-       else \
-         true; \
-       fi
+configure-target-examples: maybe-all-target-newlib maybe-all-target-libgloss
 
-.PHONY: check-gcc-c++
-check-gcc-c++:
-       @if [ -f ./gcc/Makefile ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
-       else \
-         true; \
-       fi
+configure-target-libtermcap: maybe-all-target-newlib maybe-all-target-libgloss
 
-.PHONY: check-c++
-check-c++:
-       $(MAKE) check-target-libstdc++-v3 check-gcc-c++ NOTPARALLEL=parallel-ok
+configure-target-rda: maybe-all-target-newlib maybe-all-target-libgloss
 
-.PHONY: install-gcc maybe-install-gcc
-maybe-install-gcc:
-install-gcc:
-       @if [ -f ./gcc/Makefile ] ; then \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
-       else \
-         true; \
-       fi
+configure-target-winsup: maybe-all-target-newlib maybe-all-target-libgloss
 
-# Install the gcc headers files, but not the fixed include files,
-# which Cygnus is not allowed to distribute.  This rule is very
-# dependent on the workings of the gcc Makefile.in.
-.PHONY: gcc-no-fixedincludes
-gcc-no-fixedincludes:
-       @if [ -f ./gcc/Makefile ]; then \
-         rm -rf gcc/tmp-include; \
-         mv gcc/include gcc/tmp-include 2>/dev/null; \
-         mkdir gcc/include; \
-         cp $(srcdir)/gcc/gsyslimits.h gcc/include/syslimits.h; \
-         touch gcc/stmp-fixinc gcc/include/fixed; \
-         rm -f gcc/stmp-headers gcc/stmp-int-hdrs; \
-         r=`${PWD}`; export r; \
-         s=`cd $(srcdir); ${PWD}` ; export s; \
-         $(SET_LIB_PATH) \
-         (cd ./gcc && \
-          $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
-         rm -rf gcc/include; \
-         mv gcc/tmp-include gcc/include 2>/dev/null; \
-       else true; fi
+configure-target-qthreads: maybe-all-target-newlib maybe-all-target-libgloss
 
-# --------------------------------------
-# Dependencies between different modules
-# --------------------------------------
 
 # There are two types of dependencies here: 'hard' dependencies, where one
 # module simply won't build without the other; and 'soft' dependencies, where
 # if the depended-on module is missing, the depending module will do without
 # or find a substitute somewhere (perhaps installed).  Soft dependencies
-# are specified by depending on a 'maybe-' target.  If you're not sure,
+# are made here to depend on a 'maybe-' target.  If you're not sure,
 # it's safer to use a soft dependency.
 
-# Host modules specific to gcc.
-# GCC needs to identify certain tools.
-configure-gcc: maybe-configure-binutils maybe-configure-gas maybe-configure-ld maybe-configure-bison maybe-configure-flex
-all-gcc: maybe-all-libiberty maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib
-# This is a slightly kludgy method of getting dependencies on 
-# all-build-libiberty correct; it would be better to build it every time.
-all-gcc: maybe-all-build-libiberty
-all-bootstrap: maybe-all-libiberty maybe-all-texinfo maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib
 
-# Host modules specific to gdb.
-# GDB needs to know that the simulator is being built.
-configure-gdb: maybe-configure-tcl maybe-configure-tk maybe-configure-sim
-GDB_TK = @GDB_TK@
-all-gdb: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-mmalloc maybe-all-readline maybe-all-bison maybe-all-byacc maybe-all-sim $(gdbnlmrequirements) $(GDB_TK)
-install-gdb: maybe-install-tcl maybe-install-tk maybe-install-itcl maybe-install-tix maybe-install-libgui
-configure-libgui: maybe-configure-tcl maybe-configure-tk
-all-libgui: maybe-all-tcl maybe-all-tk maybe-all-itcl
 
-# Host modules specific to binutils.
+
+
+# With all the machinery above in place, it is pretty easy to generate
+# dependencies.  Host dependencies are a bit more complex because we have
+# to check for bootstrap/prebootstrap dependencies.  To resolve
+# prebootstrap dependencies, prebootstrap modules are gathered in
+# a hash table.
+all-build-bison: maybe-all-build-texinfo
+all-build-byacc: maybe-all-build-texinfo
+all-build-flex: maybe-all-build-texinfo
+all-build-flex: maybe-all-build-bison
+all-build-flex: maybe-all-build-byacc
+all-build-flex: maybe-all-build-m4
+all-build-libiberty: maybe-all-build-texinfo
+all-build-m4: maybe-all-build-texinfo
+all-build-fixincludes: maybe-all-build-libiberty
+configure-gcc: maybe-configure-intl
+
+configure-stage1-gcc: maybe-configure-stage1-intl
+configure-stage2-gcc: maybe-configure-stage2-intl
+configure-stage3-gcc: maybe-configure-stage3-intl
+configure-stage4-gcc: maybe-configure-stage4-intl
+configure-stageprofile-gcc: maybe-configure-stageprofile-intl
+configure-stagefeedback-gcc: maybe-configure-stagefeedback-intl
+configure-gcc: maybe-configure-binutils
+
+configure-stage1-gcc: maybe-configure-stage1-binutils
+configure-stage2-gcc: maybe-configure-stage2-binutils
+configure-stage3-gcc: maybe-configure-stage3-binutils
+configure-stage4-gcc: maybe-configure-stage4-binutils
+configure-stageprofile-gcc: maybe-configure-stageprofile-binutils
+configure-stagefeedback-gcc: maybe-configure-stagefeedback-binutils
+configure-gcc: maybe-configure-gas
+
+configure-stage1-gcc: maybe-configure-stage1-gas
+configure-stage2-gcc: maybe-configure-stage2-gas
+configure-stage3-gcc: maybe-configure-stage3-gas
+configure-stage4-gcc: maybe-configure-stage4-gas
+configure-stageprofile-gcc: maybe-configure-stageprofile-gas
+configure-stagefeedback-gcc: maybe-configure-stagefeedback-gas
+configure-gcc: maybe-configure-ld
+
+configure-stage1-gcc: maybe-configure-stage1-ld
+configure-stage2-gcc: maybe-configure-stage2-ld
+configure-stage3-gcc: maybe-configure-stage3-ld
+configure-stage4-gcc: maybe-configure-stage4-ld
+configure-stageprofile-gcc: maybe-configure-stageprofile-ld
+configure-stagefeedback-gcc: maybe-configure-stagefeedback-ld
+all-gcc: all-libiberty
+
+all-stage1-gcc: all-stage1-libiberty
+all-stage2-gcc: all-stage2-libiberty
+all-stage3-gcc: all-stage3-libiberty
+all-stage4-gcc: all-stage4-libiberty
+all-stageprofile-gcc: all-stageprofile-libiberty
+all-stagefeedback-gcc: all-stagefeedback-libiberty
+all-gcc: maybe-all-intl
+
+all-stage1-gcc: maybe-all-stage1-intl
+all-stage2-gcc: maybe-all-stage2-intl
+all-stage3-gcc: maybe-all-stage3-intl
+all-stage4-gcc: maybe-all-stage4-intl
+all-stageprofile-gcc: maybe-all-stageprofile-intl
+all-stagefeedback-gcc: maybe-all-stagefeedback-intl
+all-gcc: maybe-all-build-texinfo
+
+all-stage1-gcc: maybe-all-build-texinfo
+all-stage2-gcc: maybe-all-build-texinfo
+all-stage3-gcc: maybe-all-build-texinfo
+all-stage4-gcc: maybe-all-build-texinfo
+all-stageprofile-gcc: maybe-all-build-texinfo
+all-stagefeedback-gcc: maybe-all-build-texinfo
+all-prebootstrap: maybe-all-build-texinfo
+all-gcc: maybe-all-build-bison
+
+all-stage1-gcc: maybe-all-build-bison
+all-stage2-gcc: maybe-all-build-bison
+all-stage3-gcc: maybe-all-build-bison
+all-stage4-gcc: maybe-all-build-bison
+all-stageprofile-gcc: maybe-all-build-bison
+all-stagefeedback-gcc: maybe-all-build-bison
+all-prebootstrap: maybe-all-build-bison
+all-gcc: maybe-all-build-byacc
+
+all-stage1-gcc: maybe-all-build-byacc
+all-stage2-gcc: maybe-all-build-byacc
+all-stage3-gcc: maybe-all-build-byacc
+all-stage4-gcc: maybe-all-build-byacc
+all-stageprofile-gcc: maybe-all-build-byacc
+all-stagefeedback-gcc: maybe-all-build-byacc
+all-prebootstrap: maybe-all-build-byacc
+all-gcc: maybe-all-build-flex
+
+all-stage1-gcc: maybe-all-build-flex
+all-stage2-gcc: maybe-all-build-flex
+all-stage3-gcc: maybe-all-build-flex
+all-stage4-gcc: maybe-all-build-flex
+all-stageprofile-gcc: maybe-all-build-flex
+all-stagefeedback-gcc: maybe-all-build-flex
+all-prebootstrap: maybe-all-build-flex
+all-gcc: maybe-all-build-libiberty
+
+all-stage1-gcc: maybe-all-build-libiberty
+all-stage2-gcc: maybe-all-build-libiberty
+all-stage3-gcc: maybe-all-build-libiberty
+all-stage4-gcc: maybe-all-build-libiberty
+all-stageprofile-gcc: maybe-all-build-libiberty
+all-stagefeedback-gcc: maybe-all-build-libiberty
+all-prebootstrap: maybe-all-build-libiberty
+all-gcc: maybe-all-build-fixincludes
+
+all-stage1-gcc: maybe-all-build-fixincludes
+all-stage2-gcc: maybe-all-build-fixincludes
+all-stage3-gcc: maybe-all-build-fixincludes
+all-stage4-gcc: maybe-all-build-fixincludes
+all-stageprofile-gcc: maybe-all-build-fixincludes
+all-stagefeedback-gcc: maybe-all-build-fixincludes
+all-prebootstrap: maybe-all-build-fixincludes
+all-gcc: maybe-all-binutils
+
+all-stage1-gcc: maybe-all-stage1-binutils
+all-stage2-gcc: maybe-all-stage2-binutils
+all-stage3-gcc: maybe-all-stage3-binutils
+all-stage4-gcc: maybe-all-stage4-binutils
+all-stageprofile-gcc: maybe-all-stageprofile-binutils
+all-stagefeedback-gcc: maybe-all-stagefeedback-binutils
+all-gcc: maybe-all-gas
+
+all-stage1-gcc: maybe-all-stage1-gas
+all-stage2-gcc: maybe-all-stage2-gas
+all-stage3-gcc: maybe-all-stage3-gas
+all-stage4-gcc: maybe-all-stage4-gas
+all-stageprofile-gcc: maybe-all-stageprofile-gas
+all-stagefeedback-gcc: maybe-all-stagefeedback-gas
+all-gcc: maybe-all-ld
+
+all-stage1-gcc: maybe-all-stage1-ld
+all-stage2-gcc: maybe-all-stage2-ld
+all-stage3-gcc: maybe-all-stage3-ld
+all-stage4-gcc: maybe-all-stage4-ld
+all-stageprofile-gcc: maybe-all-stageprofile-ld
+all-stagefeedback-gcc: maybe-all-stagefeedback-ld
+all-gcc: maybe-all-zlib
+
+all-stage1-gcc: maybe-all-stage1-zlib
+all-stage2-gcc: maybe-all-stage2-zlib
+all-stage3-gcc: maybe-all-stage3-zlib
+all-stage4-gcc: maybe-all-stage4-zlib
+all-stageprofile-gcc: maybe-all-stageprofile-zlib
+all-stagefeedback-gcc: maybe-all-stagefeedback-zlib
+all-gcc: all-libcpp
+
+all-stage1-gcc: all-stage1-libcpp
+all-stage2-gcc: all-stage2-libcpp
+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: maybe-all-libiberty
+
+all-stage1-gcc: maybe-all-stage1-libiberty
+all-stage2-gcc: maybe-all-stage2-libiberty
+all-stage3-gcc: maybe-all-stage3-libiberty
+all-stage4-gcc: maybe-all-stage4-libiberty
+all-stageprofile-gcc: maybe-all-stageprofile-libiberty
+all-stagefeedback-gcc: maybe-all-stagefeedback-libiberty
+all-gcc: maybe-all-fixincludes
+install-gcc: maybe-install-fixincludes
+configure-libcpp: configure-libiberty
+
+configure-stage1-libcpp: configure-stage1-libiberty
+configure-stage2-libcpp: configure-stage2-libiberty
+configure-stage3-libcpp: configure-stage3-libiberty
+configure-stage4-libcpp: configure-stage4-libiberty
+configure-stageprofile-libcpp: configure-stageprofile-libiberty
+configure-stagefeedback-libcpp: configure-stagefeedback-libiberty
+configure-libcpp: maybe-configure-intl
+
+configure-stage1-libcpp: maybe-configure-stage1-intl
+configure-stage2-libcpp: maybe-configure-stage2-intl
+configure-stage3-libcpp: maybe-configure-stage3-intl
+configure-stage4-libcpp: maybe-configure-stage4-intl
+configure-stageprofile-libcpp: maybe-configure-stageprofile-intl
+configure-stagefeedback-libcpp: maybe-configure-stagefeedback-intl
+all-libcpp: all-libiberty
+
+all-stage1-libcpp: all-stage1-libiberty
+all-stage2-libcpp: all-stage2-libiberty
+all-stage3-libcpp: all-stage3-libiberty
+all-stage4-libcpp: all-stage4-libiberty
+all-stageprofile-libcpp: all-stageprofile-libiberty
+all-stagefeedback-libcpp: all-stagefeedback-libiberty
+all-libcpp: maybe-all-intl
+
+all-stage1-libcpp: maybe-all-stage1-intl
+all-stage2-libcpp: maybe-all-stage2-intl
+all-stage3-libcpp: maybe-all-stage3-intl
+all-stage4-libcpp: maybe-all-stage4-intl
+all-stageprofile-libcpp: maybe-all-stageprofile-intl
+all-stagefeedback-libcpp: maybe-all-stagefeedback-intl
+all-fixincludes: maybe-all-libiberty
+all-gnattools: maybe-all-target-libada
+configure-gdb: maybe-configure-itcl
+configure-gdb: maybe-configure-tcl
+configure-gdb: maybe-configure-tk
+configure-gdb: maybe-configure-sim
+all-gdb: maybe-all-libiberty
+all-gdb: maybe-all-opcodes
+all-gdb: maybe-all-bfd
+all-gdb: maybe-all-readline
+all-gdb: maybe-all-build-bison
+all-gdb: maybe-all-build-byacc
+all-gdb: maybe-all-sim
+install-gdb: maybe-install-tcl
+install-gdb: maybe-install-tk
+install-gdb: maybe-install-itcl
+install-gdb: maybe-install-libgui
+configure-libgui: maybe-configure-tcl
+configure-libgui: maybe-configure-tk
+all-libgui: maybe-all-tcl
+all-libgui: maybe-all-tk
+all-libgui: maybe-all-itcl
 configure-bfd: configure-libiberty
-all-bfd: maybe-all-libiberty maybe-all-intl
-all-binutils: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-flex maybe-all-bison maybe-all-byacc maybe-all-intl
-# We put install-opcodes before install-binutils because the installed
-# binutils might be on PATH, and they might need the shared opcodes
-# library.
+
+configure-stage1-bfd: configure-stage1-libiberty
+configure-stage2-bfd: configure-stage2-libiberty
+configure-stage3-bfd: configure-stage3-libiberty
+configure-stage4-bfd: configure-stage4-libiberty
+configure-stageprofile-bfd: configure-stageprofile-libiberty
+configure-stagefeedback-bfd: configure-stagefeedback-libiberty
+all-bfd: maybe-all-libiberty
+
+all-stage1-bfd: maybe-all-stage1-libiberty
+all-stage2-bfd: maybe-all-stage2-libiberty
+all-stage3-bfd: maybe-all-stage3-libiberty
+all-stage4-bfd: maybe-all-stage4-libiberty
+all-stageprofile-bfd: maybe-all-stageprofile-libiberty
+all-stagefeedback-bfd: maybe-all-stagefeedback-libiberty
+all-bfd: maybe-all-intl
+
+all-stage1-bfd: maybe-all-stage1-intl
+all-stage2-bfd: maybe-all-stage2-intl
+all-stage3-bfd: maybe-all-stage3-intl
+all-stage4-bfd: maybe-all-stage4-intl
+all-stageprofile-bfd: maybe-all-stageprofile-intl
+all-stagefeedback-bfd: maybe-all-stagefeedback-intl
+all-binutils: maybe-all-libiberty
+
+all-stage1-binutils: maybe-all-stage1-libiberty
+all-stage2-binutils: maybe-all-stage2-libiberty
+all-stage3-binutils: maybe-all-stage3-libiberty
+all-stage4-binutils: maybe-all-stage4-libiberty
+all-stageprofile-binutils: maybe-all-stageprofile-libiberty
+all-stagefeedback-binutils: maybe-all-stagefeedback-libiberty
+all-binutils: maybe-all-opcodes
+
+all-stage1-binutils: maybe-all-stage1-opcodes
+all-stage2-binutils: maybe-all-stage2-opcodes
+all-stage3-binutils: maybe-all-stage3-opcodes
+all-stage4-binutils: maybe-all-stage4-opcodes
+all-stageprofile-binutils: maybe-all-stageprofile-opcodes
+all-stagefeedback-binutils: maybe-all-stagefeedback-opcodes
+all-binutils: maybe-all-bfd
+
+all-stage1-binutils: maybe-all-stage1-bfd
+all-stage2-binutils: maybe-all-stage2-bfd
+all-stage3-binutils: maybe-all-stage3-bfd
+all-stage4-binutils: maybe-all-stage4-bfd
+all-stageprofile-binutils: maybe-all-stageprofile-bfd
+all-stagefeedback-binutils: maybe-all-stagefeedback-bfd
+all-binutils: maybe-all-build-flex
+
+all-stage1-binutils: maybe-all-build-flex
+all-stage2-binutils: maybe-all-build-flex
+all-stage3-binutils: maybe-all-build-flex
+all-stage4-binutils: maybe-all-build-flex
+all-stageprofile-binutils: maybe-all-build-flex
+all-stagefeedback-binutils: maybe-all-build-flex
+all-prebootstrap: maybe-all-build-flex
+all-binutils: maybe-all-build-bison
+
+all-stage1-binutils: maybe-all-build-bison
+all-stage2-binutils: maybe-all-build-bison
+all-stage3-binutils: maybe-all-build-bison
+all-stage4-binutils: maybe-all-build-bison
+all-stageprofile-binutils: maybe-all-build-bison
+all-stagefeedback-binutils: maybe-all-build-bison
+all-prebootstrap: maybe-all-build-bison
+all-binutils: maybe-all-build-byacc
+
+all-stage1-binutils: maybe-all-build-byacc
+all-stage2-binutils: maybe-all-build-byacc
+all-stage3-binutils: maybe-all-build-byacc
+all-stage4-binutils: maybe-all-build-byacc
+all-stageprofile-binutils: maybe-all-build-byacc
+all-stagefeedback-binutils: maybe-all-build-byacc
+all-prebootstrap: maybe-all-build-byacc
+all-binutils: maybe-all-intl
+
+all-stage1-binutils: maybe-all-stage1-intl
+all-stage2-binutils: maybe-all-stage2-intl
+all-stage3-binutils: maybe-all-stage3-intl
+all-stage4-binutils: maybe-all-stage4-intl
+all-stageprofile-binutils: maybe-all-stageprofile-intl
+all-stagefeedback-binutils: maybe-all-stagefeedback-intl
 install-binutils: maybe-install-opcodes
-# libopcodes depends on libbfd
 install-opcodes: maybe-install-bfd
-all-gas: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-intl
-all-gprof: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-intl
-all-ld: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-bison maybe-all-byacc maybe-all-flex maybe-all-intl
-all-opcodes: maybe-all-bfd maybe-all-libiberty
-
-# Other host modules in the 'src' repository.
-all-dejagnu: maybe-all-tcl maybe-all-expect maybe-all-tk
-configure-expect: maybe-configure-tcl maybe-configure-tk
-all-expect: maybe-all-tcl maybe-all-tk
-configure-itcl: maybe-configure-tcl maybe-configure-tk
-all-itcl: maybe-all-tcl maybe-all-tk
-# We put install-tcl before install-itcl because itcl wants to run a
-# program on installation which uses the Tcl libraries.
+all-gas: maybe-all-libiberty
+
+all-stage1-gas: maybe-all-stage1-libiberty
+all-stage2-gas: maybe-all-stage2-libiberty
+all-stage3-gas: maybe-all-stage3-libiberty
+all-stage4-gas: maybe-all-stage4-libiberty
+all-stageprofile-gas: maybe-all-stageprofile-libiberty
+all-stagefeedback-gas: maybe-all-stagefeedback-libiberty
+all-gas: maybe-all-opcodes
+
+all-stage1-gas: maybe-all-stage1-opcodes
+all-stage2-gas: maybe-all-stage2-opcodes
+all-stage3-gas: maybe-all-stage3-opcodes
+all-stage4-gas: maybe-all-stage4-opcodes
+all-stageprofile-gas: maybe-all-stageprofile-opcodes
+all-stagefeedback-gas: maybe-all-stagefeedback-opcodes
+all-gas: maybe-all-bfd
+
+all-stage1-gas: maybe-all-stage1-bfd
+all-stage2-gas: maybe-all-stage2-bfd
+all-stage3-gas: maybe-all-stage3-bfd
+all-stage4-gas: maybe-all-stage4-bfd
+all-stageprofile-gas: maybe-all-stageprofile-bfd
+all-stagefeedback-gas: maybe-all-stagefeedback-bfd
+all-gas: maybe-all-intl
+
+all-stage1-gas: maybe-all-stage1-intl
+all-stage2-gas: maybe-all-stage2-intl
+all-stage3-gas: maybe-all-stage3-intl
+all-stage4-gas: maybe-all-stage4-intl
+all-stageprofile-gas: maybe-all-stageprofile-intl
+all-stagefeedback-gas: maybe-all-stagefeedback-intl
+all-gprof: maybe-all-libiberty
+all-gprof: maybe-all-bfd
+all-gprof: maybe-all-opcodes
+all-gprof: maybe-all-intl
+all-ld: maybe-all-libiberty
+
+all-stage1-ld: maybe-all-stage1-libiberty
+all-stage2-ld: maybe-all-stage2-libiberty
+all-stage3-ld: maybe-all-stage3-libiberty
+all-stage4-ld: maybe-all-stage4-libiberty
+all-stageprofile-ld: maybe-all-stageprofile-libiberty
+all-stagefeedback-ld: maybe-all-stagefeedback-libiberty
+all-ld: maybe-all-bfd
+
+all-stage1-ld: maybe-all-stage1-bfd
+all-stage2-ld: maybe-all-stage2-bfd
+all-stage3-ld: maybe-all-stage3-bfd
+all-stage4-ld: maybe-all-stage4-bfd
+all-stageprofile-ld: maybe-all-stageprofile-bfd
+all-stagefeedback-ld: maybe-all-stagefeedback-bfd
+all-ld: maybe-all-opcodes
+
+all-stage1-ld: maybe-all-stage1-opcodes
+all-stage2-ld: maybe-all-stage2-opcodes
+all-stage3-ld: maybe-all-stage3-opcodes
+all-stage4-ld: maybe-all-stage4-opcodes
+all-stageprofile-ld: maybe-all-stageprofile-opcodes
+all-stagefeedback-ld: maybe-all-stagefeedback-opcodes
+all-ld: maybe-all-build-bison
+
+all-stage1-ld: maybe-all-build-bison
+all-stage2-ld: maybe-all-build-bison
+all-stage3-ld: maybe-all-build-bison
+all-stage4-ld: maybe-all-build-bison
+all-stageprofile-ld: maybe-all-build-bison
+all-stagefeedback-ld: maybe-all-build-bison
+all-prebootstrap: maybe-all-build-bison
+all-ld: maybe-all-build-byacc
+
+all-stage1-ld: maybe-all-build-byacc
+all-stage2-ld: maybe-all-build-byacc
+all-stage3-ld: maybe-all-build-byacc
+all-stage4-ld: maybe-all-build-byacc
+all-stageprofile-ld: maybe-all-build-byacc
+all-stagefeedback-ld: maybe-all-build-byacc
+all-prebootstrap: maybe-all-build-byacc
+all-ld: maybe-all-build-flex
+
+all-stage1-ld: maybe-all-build-flex
+all-stage2-ld: maybe-all-build-flex
+all-stage3-ld: maybe-all-build-flex
+all-stage4-ld: maybe-all-build-flex
+all-stageprofile-ld: maybe-all-build-flex
+all-stagefeedback-ld: maybe-all-build-flex
+all-prebootstrap: maybe-all-build-flex
+all-ld: maybe-all-intl
+
+all-stage1-ld: maybe-all-stage1-intl
+all-stage2-ld: maybe-all-stage2-intl
+all-stage3-ld: maybe-all-stage3-intl
+all-stage4-ld: maybe-all-stage4-intl
+all-stageprofile-ld: maybe-all-stageprofile-intl
+all-stagefeedback-ld: maybe-all-stagefeedback-intl
+all-opcodes: maybe-all-bfd
+
+all-stage1-opcodes: maybe-all-stage1-bfd
+all-stage2-opcodes: maybe-all-stage2-bfd
+all-stage3-opcodes: maybe-all-stage3-bfd
+all-stage4-opcodes: maybe-all-stage4-bfd
+all-stageprofile-opcodes: maybe-all-stageprofile-bfd
+all-stagefeedback-opcodes: maybe-all-stagefeedback-bfd
+all-opcodes: maybe-all-libiberty
+
+all-stage1-opcodes: maybe-all-stage1-libiberty
+all-stage2-opcodes: maybe-all-stage2-libiberty
+all-stage3-opcodes: maybe-all-stage3-libiberty
+all-stage4-opcodes: maybe-all-stage4-libiberty
+all-stageprofile-opcodes: maybe-all-stageprofile-libiberty
+all-stagefeedback-opcodes: maybe-all-stagefeedback-libiberty
+all-dejagnu: maybe-all-tcl
+all-dejagnu: maybe-all-expect
+all-dejagnu: maybe-all-tk
+configure-expect: maybe-configure-tcl
+configure-expect: maybe-configure-tk
+all-expect: maybe-all-tcl
+all-expect: maybe-all-tk
+configure-itcl: maybe-configure-tcl
+configure-itcl: maybe-configure-tk
+all-itcl: maybe-all-tcl
+all-itcl: maybe-all-tk
 install-itcl: maybe-install-tcl
-all-sid: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-tcl maybe-all-tk
-install-sid: maybe-install-tcl maybe-install-tk
-all-sim: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-readline maybe-configure-gdb
 configure-tk: maybe-configure-tcl
 all-tk: maybe-all-tcl
-configure-tix: maybe-configure-tcl maybe-configure-tk
-all-tix: maybe-all-tcl maybe-all-tk
-all-texinfo: maybe-all-libiberty
-
-# Other host modules.  Warning, these are not well tested.
-all-autoconf: maybe-all-m4 maybe-all-texinfo
-all-automake: maybe-all-m4 maybe-all-texinfo
-all-bison: maybe-all-texinfo
-all-diff: maybe-all-libiberty
-all-fastjar: maybe-all-zlib maybe-all-libiberty
-all-fileutils: maybe-all-libiberty
-all-flex: maybe-all-libiberty maybe-all-bison maybe-all-byacc
-all-gzip: maybe-all-libiberty
-all-hello: maybe-all-libiberty
-all-m4: maybe-all-libiberty maybe-all-texinfo
-all-make: maybe-all-libiberty
-all-patch: maybe-all-libiberty
+all-sid: maybe-all-libiberty
+all-sid: maybe-all-bfd
+all-sid: maybe-all-opcodes
+all-sid: maybe-all-tcl
+all-sid: maybe-all-tk
+install-sid: maybe-install-tcl
+install-sid: maybe-install-tk
+all-sim: maybe-all-libiberty
+all-sim: maybe-all-bfd
+all-sim: maybe-all-opcodes
+all-sim: maybe-all-readline
+all-sim: maybe-configure-gdb
+all-fastjar: maybe-all-zlib
+all-fastjar: maybe-all-build-texinfo
+all-fastjar: maybe-all-libiberty
+all-autoconf: maybe-all-m4
+all-autoconf: maybe-all-build-texinfo
+all-automake: maybe-all-m4
+all-automake: maybe-all-build-texinfo
+all-automake: maybe-all-autoconf
+all-bison: maybe-all-intl
+all-bison: maybe-all-build-texinfo
+all-diff: maybe-all-intl
+all-diff: maybe-all-build-texinfo
+all-fileutils: maybe-all-intl
+all-fileutils: maybe-all-build-texinfo
+all-flex: maybe-all-build-bison
+all-flex: maybe-all-build-byacc
+all-flex: maybe-all-intl
+all-flex: maybe-all-m4
+all-flex: maybe-all-build-texinfo
+all-gzip: maybe-all-intl
+all-gzip: maybe-all-zlib
+all-gzip: maybe-all-build-texinfo
+all-hello: maybe-all-intl
+all-hello: maybe-all-build-texinfo
+all-m4: maybe-all-intl
+all-m4: maybe-all-build-texinfo
+all-make: maybe-all-intl
+all-make: maybe-all-build-texinfo
+all-patch: maybe-all-build-texinfo
+all-make: maybe-all-build-texinfo
 all-prms: maybe-all-libiberty
-all-recode: maybe-all-libiberty
-all-sed: maybe-all-libiberty
+all-recode: maybe-all-build-texinfo
+all-sed: maybe-all-build-texinfo
 all-send-pr: maybe-all-prms
-all-tar: maybe-all-libiberty
-all-uudecode: maybe-all-libiberty
-
-ALL_GCC = maybe-all-gcc
-ALL_GCC_C = $(ALL_GCC) maybe-all-target-newlib maybe-all-target-libgloss
-ALL_GCC_CXX = $(ALL_GCC_C) maybe-all-target-libstdc++-v3
-
-# Target modules specific to gcc.
-configure-target-boehm-gc: $(ALL_GCC_C) maybe-configure-target-qthreads
+all-tar: maybe-all-build-texinfo
+all-uudecode: maybe-all-build-texinfo
+configure-target-boehm-gc: maybe-configure-target-qthreads
 configure-target-fastjar: maybe-configure-target-zlib
-all-target-fastjar: maybe-all-target-zlib maybe-all-target-libiberty
-configure-target-libf2c: $(ALL_GCC_C)
-all-target-libf2c: maybe-all-target-libiberty
-configure-target-libffi: $(ALL_GCC_C) 
-configure-target-libjava: $(ALL_GCC_C) maybe-configure-target-zlib maybe-configure-target-boehm-gc maybe-configure-target-qthreads maybe-configure-target-libffi
-all-target-libjava: maybe-all-fastjar maybe-all-target-zlib maybe-all-target-boehm-gc maybe-all-target-qthreads maybe-all-target-libffi
-configure-target-libobjc: $(ALL_GCC_C)
+all-target-fastjar: maybe-all-target-zlib
+all-target-fastjar: maybe-all-target-libiberty
+configure-target-libjava: maybe-configure-target-zlib
+configure-target-libjava: maybe-configure-target-boehm-gc
+configure-target-libjava: maybe-configure-target-qthreads
+configure-target-libjava: maybe-configure-target-libffi
+all-target-libjava: maybe-all-fastjar
+all-target-libjava: maybe-all-target-zlib
+all-target-libjava: maybe-all-target-boehm-gc
+all-target-libjava: maybe-all-target-qthreads
+all-target-libjava: maybe-all-target-libffi
 all-target-libobjc: maybe-all-target-libiberty
-configure-target-libstdc++-v3: $(ALL_GCC_C)
 all-target-libstdc++-v3: maybe-all-target-libiberty
-configure-target-zlib: $(ALL_GCC_C)
-
-# Target modules in the 'src' repository.
-configure-target-examples: $(ALL_GCC_C)
-configure-target-libgloss: $(ALL_GCC)
 all-target-libgloss: maybe-configure-target-newlib
-configure-target-libiberty: $(ALL_GCC)
-configure-target-libtermcap: $(ALL_GCC_C)
-configure-target-newlib: $(ALL_GCC)
-configure-target-rda: $(ALL_GCC_C)
-configure-target-winsup: $(ALL_GCC_C)
-all-target-winsup: maybe-all-target-libiberty maybe-all-target-libtermcap
-
-# Other target modules.  Warning, these are not well tested.
-configure-target-gperf: $(ALL_GCC_CXX)
-all-target-gperf: maybe-all-target-libiberty maybe-all-target-libstdc++-v3
-configure-target-qthreads: $(ALL_GCC_C)
-
-# Dependencies of maybe-foo on foo.  These are used because, for example,
-# all-gcc only depends on all-gas if gas is present and being configured.
-@maybe_dependencies@
+all-target-winsup: maybe-all-target-libiberty
+all-target-winsup: maybe-all-target-libtermcap
+
+
+# Non-toplevel bootstrap rules must depend on several packages, to be built
+# before gcc.  Another wart that will go away, hopefully soon.
+@if gcc-no-bootstrap
+
+all-prebootstrap: maybe-all-bfd
+all-prebootstrap: maybe-all-opcodes
+all-prebootstrap: maybe-all-binutils
+all-prebootstrap: maybe-all-gas
+all-prebootstrap: maybe-all-intl
+all-prebootstrap: maybe-all-ld
+all-prebootstrap: maybe-all-libcpp
+all-prebootstrap: maybe-all-libiberty
+all-prebootstrap: maybe-all-zlib
+@endif gcc-no-bootstrap
+
+GDB_TK = @GDB_TK@
+all-gdb: $(gdbnlmrequirements) $(GDB_TK)
 
 # Serialization dependencies.  Host configures don't work well in parallel to
 # each other, due to contention over config.cache.  Target configures and 
@@ -23873,7 +34817,7 @@ configure-target-qthreads: $(ALL_GCC_C)
 # We use move-if-change so that it's only considered updated when it
 # actually changes, because it has to depend on a phony target.
 multilib.out: maybe-all-gcc
-       @r=`${PWD}`; export r; \
+       @r=`${PWD_COMMAND}`; export r; \
        echo "Checking multilib configuration..."; \
        $(CC_FOR_TARGET) --print-multi-lib > multilib.tmp 2> /dev/null ; \
        $(SHELL) $(srcdir)/move-if-change multilib.tmp multilib.out ; \
@@ -23887,8 +34831,8 @@ $(srcdir)/Makefile.in: @MAINT@ $(srcdir)/Makefile.tpl $(srcdir)/Makefile.def
 Makefile: $(srcdir)/Makefile.in config.status
        CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
 
-config.status: configure $(gcc_version_trigger)
-       $(SHELL) ./config.status --recheck
+config.status: configure
+       CONFIG_SHELL="$(SHELL)" $(SHELL) ./config.status --recheck
 
 # Rebuilding configure.
 AUTOCONF = autoconf
@@ -23899,12 +34843,6 @@ $(srcdir)/configure: @MAINT@ $(srcdir)/configure.in $(srcdir)/config/acx.m4
 # Special directives to GNU Make
 # ------------------------------
 
-# Tell GNU make 3.79 not to run the top level in parallel.  This 
-# prevents contention for $builddir/$target/config.cache, as well
-# as minimizing scatter in file system caches.
-NOTPARALLEL = .NOTPARALLEL
-$(NOTPARALLEL):
-
 # Don't pass command-line variables to submakes.
 .NOEXPORT:
 MAKEOVERRIDES=