OSDN Git Service

* doc/invoke.texi (-mfix-and-continue): Add support for
[pf3gnuchains/gcc-fork.git] / Makefile.in
index 8fe85ff..fa9432b 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
@@ -65,12 +65,13 @@ 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@
@@ -103,18 +104,79 @@ 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_CONFIGDIRS = libiberty libbanshee
 # 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@
 
+# 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@
+# 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;
+
+# Similar, for later GCC stages.
+STAGE_HOST_EXPORTS = \
+       $(HOST_EXPORTS) \
+       CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \
+       CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/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.
@@ -124,6 +186,38 @@ 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@
+# 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="$(CFLAGS_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;
+
+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
@@ -151,42 +245,47 @@ CXX_FOR_BUILD = $(CXX)
 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/ ; \
+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
@@ -242,11 +341,12 @@ PICFLAG =
 
 # 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:
+TARGET_LIB_PATH = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs:$$r/$(TARGET_SUBDIR)/libmudflap/.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 ; \
@@ -254,11 +354,12 @@ USUAL_AR_FOR_TARGET = ` \
     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 ; \
@@ -268,7 +369,7 @@ USUAL_AS_FOR_TARGET = ` \
     if [ '$(host)' = '$(target)' ] ; then \
       echo $(AS); \
     else \
-       echo as | sed '$(program_transform_name)' ; \
+      echo $(CONFIGURED_AS_FOR_TARGET) ; \
     fi; \
   fi`
 
@@ -294,6 +395,7 @@ 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 ; \
@@ -301,13 +403,15 @@ USUAL_DLLTOOL_FOR_TARGET = ` \
     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 ; \
@@ -317,13 +421,14 @@ USUAL_LD_FOR_TARGET = ` \
     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 ; \
@@ -333,11 +438,12 @@ USUAL_NM_FOR_TARGET = ` \
     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 ; \
@@ -349,11 +455,12 @@ USUAL_RANLIB_FOR_TARGET = ` \
          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 ; \
@@ -361,7 +468,7 @@ USUAL_WINDRES_FOR_TARGET = ` \
     if [ '$(host)' = '$(target)' ] ; then \
       echo $(WINDRES); \
     else \
-       echo windres | sed '$(program_transform_name)' ; \
+      echo $(CONFIGURED_WINDRES_FOR_TARGET) ; \
     fi; \
   fi`
 
@@ -371,10 +478,17 @@ PICFLAG_FOR_TARGET =
 # Miscellaneous targets and flag lists
 # ------------------------------------
 
+@if gcc-bootstrap
+# Let's leave this as the first rule in the file until toplevel
+# bootstrap is fleshed out completely.
+sorry:
+       @echo Toplevel bootstrap temporarily out of commission.
+       @echo Please reconfigure without --enable-bootstrap
+@endif gcc-bootstrap
+
 # 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@
@@ -415,6 +529,7 @@ BASE_FLAGS_TO_PASS = \
        "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)" \
@@ -440,6 +555,7 @@ BASE_FLAGS_TO_PASS = \
        "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)" \
@@ -458,6 +574,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 = \
@@ -516,20 +634,20 @@ EXTRA_GCC_FLAGS = \
        'BUILD_PREFIX_1=$(BUILD_PREFIX_1)' \
        "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 '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=/`"
+       "`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 \
@@ -550,6 +668,7 @@ configure-host: maybe-configure-gcc  \
     maybe-configure-find \
     maybe-configure-flex \
     maybe-configure-gas \
+    maybe-configure-gcc \
     maybe-configure-gawk \
     maybe-configure-gettext \
     maybe-configure-gnuserv \
@@ -561,7 +680,9 @@ configure-host: maybe-configure-gcc  \
     maybe-configure-tcl \
     maybe-configure-itcl \
     maybe-configure-ld \
+    maybe-configure-libcpp \
     maybe-configure-libgui \
+    maybe-configure-libbanshee \
     maybe-configure-libiberty \
     maybe-configure-libtool \
     maybe-configure-m4 \
@@ -591,14 +712,14 @@ configure-host: maybe-configure-gcc  \
     maybe-configure-expect \
     maybe-configure-guile \
     maybe-configure-tk \
-    maybe-configure-tix \
     maybe-configure-libtermcap \
     maybe-configure-utils
 .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 \
@@ -611,14 +732,23 @@ 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
 .PHONY: all-host
-all-host: maybe-all-gcc  \
+all-host:  \
     maybe-all-ash \
     maybe-all-autoconf \
     maybe-all-automake \
@@ -639,6 +769,7 @@ all-host: maybe-all-gcc  \
     maybe-all-find \
     maybe-all-flex \
     maybe-all-gas \
+    maybe-all-gcc \
     maybe-all-gawk \
     maybe-all-gettext \
     maybe-all-gnuserv \
@@ -650,7 +781,9 @@ all-host: maybe-all-gcc  \
     maybe-all-tcl \
     maybe-all-itcl \
     maybe-all-ld \
+    maybe-all-libcpp \
     maybe-all-libgui \
+    maybe-all-libbanshee \
     maybe-all-libiberty \
     maybe-all-libtool \
     maybe-all-m4 \
@@ -680,14 +813,14 @@ all-host: maybe-all-gcc  \
     maybe-all-expect \
     maybe-all-guile \
     maybe-all-tk \
-    maybe-all-tix \
     maybe-all-libtermcap \
     maybe-all-utils
 .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 \
@@ -700,7 +833,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
@@ -708,10 +842,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 \
@@ -732,6 +866,7 @@ info-host: maybe-info-gcc  \
     maybe-info-find \
     maybe-info-flex \
     maybe-info-gas \
+    maybe-info-gcc \
     maybe-info-gawk \
     maybe-info-gettext \
     maybe-info-gnuserv \
@@ -743,7 +878,9 @@ info-host: maybe-info-gcc  \
     maybe-info-tcl \
     maybe-info-itcl \
     maybe-info-ld \
+    maybe-info-libcpp \
     maybe-info-libgui \
+    maybe-info-libbanshee \
     maybe-info-libiberty \
     maybe-info-libtool \
     maybe-info-m4 \
@@ -773,15 +910,15 @@ info-host: maybe-info-gcc  \
     maybe-info-expect \
     maybe-info-guile \
     maybe-info-tk \
-    maybe-info-tix \
     maybe-info-libtermcap \
     maybe-info-utils
 
 .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 \
@@ -794,1255 +931,1621 @@ 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_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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-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-libbanshee \
+    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
 
-.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
 
-info-ash: \
-    configure-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
-         || exit 1
+.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-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-libbanshee \
+    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
 
-.PHONY: maybe-info-autoconf info-autoconf
-maybe-info-autoconf:
-
-info-autoconf: \
-    configure-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 autoconf" ; \
-       (cd 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) \
-         || exit 1
-
-
-.PHONY: maybe-info-automake info-automake
-maybe-info-automake:
-
-info-automake: \
-    configure-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
-
-
-.PHONY: maybe-info-bash info-bash
-maybe-info-bash:
-
-info-bash: \
-    configure-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 bash" ; \
-       (cd 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) \
-         || exit 1
+.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: maybe-info-bfd info-bfd
-maybe-info-bfd:
+.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-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-libbanshee \
+    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
 
-info-bfd: \
-    configure-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 bfd" ; \
-       (cd 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) \
-         || exit 1
+.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: maybe-info-opcodes info-opcodes
-maybe-info-opcodes:
+.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-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-libbanshee \
+    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
 
-info-opcodes: \
-    configure-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 opcodes" ; \
-       (cd 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) \
-         || exit 1
+.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: maybe-info-binutils info-binutils
-maybe-info-binutils:
-
-info-binutils: \
-    configure-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 binutils" ; \
-       (cd 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) \
-         || exit 1
-
-
-.PHONY: maybe-info-bison info-bison
-maybe-info-bison:
-
-info-bison: \
-    configure-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 bison" ; \
-       (cd 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) \
-         || exit 1
-
-
-.PHONY: maybe-info-byacc info-byacc
-maybe-info-byacc:
-
-info-byacc: \
-    configure-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 byacc" ; \
-       (cd 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) \
-         || exit 1
-
-
-.PHONY: maybe-info-bzip2 info-bzip2
-maybe-info-bzip2:
-
-info-bzip2: \
-    configure-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
-
-
-.PHONY: maybe-info-dejagnu info-dejagnu
-maybe-info-dejagnu:
-
-info-dejagnu: \
-    configure-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 dejagnu" ; \
-       (cd dejagnu && \
-         $(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: maybe-info-diff info-diff
-maybe-info-diff:
-
-info-diff: \
-    configure-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 diff" ; \
-       (cd diff && \
-         $(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: maybe-info-dosutils info-dosutils
-maybe-info-dosutils:
-
-info-dosutils: \
-    configure-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 dosutils" ; \
-       (cd dosutils && \
-         $(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: maybe-info-etc info-etc
-maybe-info-etc:
-
-info-etc: \
-    configure-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 etc" ; \
-       (cd etc && \
-         $(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: maybe-info-fastjar info-fastjar
-maybe-info-fastjar:
-
-info-fastjar: \
-    configure-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 fastjar" ; \
-       (cd fastjar && \
-         $(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: maybe-info-fileutils info-fileutils
-maybe-info-fileutils:
-
-info-fileutils: \
-    configure-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 fileutils" ; \
-       (cd fileutils && \
-         $(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: maybe-info-findutils info-findutils
-maybe-info-findutils:
-
-info-findutils: \
-    configure-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 findutils" ; \
-       (cd findutils && \
-         $(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: maybe-info-find info-find
-maybe-info-find:
-
-info-find: \
-    configure-find 
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 find" ; \
-       (cd find && \
-         $(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: maybe-info-flex info-flex
-maybe-info-flex:
-
-info-flex: \
-    configure-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 flex" ; \
-       (cd flex && \
-         $(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: maybe-info-gas info-gas
-maybe-info-gas:
-
-info-gas: \
-    configure-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
-
-
-.PHONY: maybe-info-gawk info-gawk
-maybe-info-gawk:
-
-info-gawk: \
-    configure-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gawk" ; \
-       (cd gawk && \
-         $(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: maybe-info-gettext info-gettext
-maybe-info-gettext:
-
-info-gettext: \
-    configure-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gettext" ; \
-       (cd gettext && \
-         $(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: maybe-info-gnuserv info-gnuserv
-maybe-info-gnuserv:
-
-info-gnuserv: \
-    configure-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gnuserv" ; \
-       (cd gnuserv && \
-         $(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: maybe-info-gprof info-gprof
-maybe-info-gprof:
-
-info-gprof: \
-    configure-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
-
-
-.PHONY: maybe-info-gzip info-gzip
-maybe-info-gzip:
-
-info-gzip: \
-    configure-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gzip" ; \
-       (cd gzip && \
-         $(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: maybe-info-hello info-hello
-maybe-info-hello:
-
-info-hello: \
-    configure-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
-
-
-.PHONY: maybe-info-indent info-indent
-maybe-info-indent:
-
-info-indent: \
-    configure-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 indent" ; \
-       (cd indent && \
-         $(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: maybe-info-intl info-intl
-maybe-info-intl:
-
-info-intl: \
-    configure-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 intl" ; \
-       (cd intl && \
-         $(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: maybe-info-tcl info-tcl
-maybe-info-tcl:
-
-info-tcl: \
-    configure-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 tcl" ; \
-       (cd tcl && \
-         $(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: maybe-info-itcl info-itcl
-maybe-info-itcl:
-
-info-itcl: \
-    configure-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 itcl" ; \
-       (cd itcl && \
-         $(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: maybe-info-ld info-ld
-maybe-info-ld:
-
-info-ld: \
-    configure-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
-
-
-.PHONY: maybe-info-libgui info-libgui
-maybe-info-libgui:
-
-info-libgui: \
-    configure-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
+.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-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-libbanshee \
+    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
 
+.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: maybe-info-libiberty info-libiberty
-maybe-info-libiberty:
+.PHONY: do-clean
+do-clean: unstage clean-host clean-target stage
 
-info-libiberty: \
-    configure-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 libiberty" ; \
-       (cd 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
+.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-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-libbanshee \
+    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
 
+.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: maybe-info-libtool info-libtool
-maybe-info-libtool:
+.PHONY: do-distclean
+do-distclean: unstage distclean-host distclean-target stage
 
-info-libtool: \
-    configure-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
+.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-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-libbanshee \
+    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
 
+.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: maybe-info-m4 info-m4
-maybe-info-m4:
+.PHONY: do-maintainer-clean
+do-maintainer-clean: unstage maintainer-clean-host maintainer-clean-target stage
 
-info-m4: \
-    configure-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
+.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-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-libbanshee \
+    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
 
+.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
 
-.PHONY: maybe-info-make info-make
-maybe-info-make:
 
-info-make: \
-    configure-make 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || 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
 
-.PHONY: maybe-info-mmalloc info-mmalloc
-maybe-info-mmalloc:
+# Make sure makeinfo is built before we do a `make info', if we're
+# in fact building texinfo.
+do-info: maybe-all-texinfo
 
-info-mmalloc: \
-    configure-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-info: do-install-info dir.info
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
+       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
 
-.PHONY: maybe-info-patch info-patch
-maybe-info-patch:
+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
 
-info-patch: \
-    configure-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 patch" ; \
-       (cd patch && \
-         $(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
+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
 
-.PHONY: maybe-info-perl info-perl
-maybe-info-perl:
+# 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
 
-info-perl: \
-    configure-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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) \
-         || exit 1
+# 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-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-libbanshee \
+    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-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
 
-.PHONY: maybe-info-prms info-prms
-maybe-info-prms:
+# Automated reporting of test results.
 
-info-prms: \
-    configure-prms 
-       @[ -f ./prms/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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
+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
 
-.PHONY: maybe-info-rcs info-rcs
-maybe-info-rcs:
+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
 
-info-rcs: \
-    configure-rcs 
-       @[ -f ./rcs/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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
+# Installation targets.
 
+.PHONY: install uninstall
+install: installdirs install-host install-target
 
-.PHONY: maybe-info-readline info-readline
-maybe-info-readline:
+.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-libcpp \
+    maybe-install-libgui \
+    maybe-install-libbanshee \
+    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
 
-info-readline: \
-    configure-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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
+.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-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-libbanshee \
+    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
 
+.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
 
-.PHONY: maybe-info-release info-release
-maybe-info-release:
+uninstall:
+       @echo "the uninstall target is not supported in this tree"
 
-info-release: \
-    configure-release 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
+.PHONY: install.all
+install.all: install-no-fixedincludes
+       @if [ -f ./gcc/Makefile ] ; then \
+               r=`${PWD_COMMAND}` ; export r ; \
+               $(SET_LIB_PATH) \
+               $(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
 
-.PHONY: maybe-info-recode info-recode
-maybe-info-recode:
+### other supporting targets
 
-info-recode: \
-    configure-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
+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
 
-.PHONY: maybe-info-sed info-sed
-maybe-info-sed:
+dist:
+       @echo "Building a full distribution of this tree isn't done"
+       @echo "via 'make dist'.  Check out the etc/ subdirectory" 
 
-info-sed: \
-    configure-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
-         || exit 1
+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
 
-.PHONY: maybe-info-send-pr info-send-pr
-maybe-info-send-pr:
+# --------------------------------------
+# Modules which run on the build machine
+# --------------------------------------
 
-info-send-pr: \
-    configure-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
+.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; \
-       $(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 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}" \
-                 info) \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/libiberty; \
+       cd "$(BUILD_SUBDIR)/libiberty" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) \
+           topdir=$(srcdir) ;; \
+         *) \
+           case "$(BUILD_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
+       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; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption} \
+         --with-build-subdir="$(BUILD_SUBDIR)"  \
          || exit 1
+@endif build-libiberty
 
-
-.PHONY: maybe-info-shellutils info-shellutils
-maybe-info-shellutils:
-
-info-shellutils: \
-    configure-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+.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; \
-       $(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 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}" \
-                 info) \
-         || exit 1
-
-
-.PHONY: maybe-info-sid info-sid
-maybe-info-sid:
+       $(BUILD_EXPORTS) \
+       (cd $(BUILD_SUBDIR)/libiberty && \
+         $(MAKE)  $(TARGET-build-libiberty))
+@endif build-libiberty
 
-info-sid: \
-    configure-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
+.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; \
-       $(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 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}" \
-                 info) \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/bison; \
+       cd "$(BUILD_SUBDIR)/bison" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) \
+           topdir=$(srcdir) ;; \
+         *) \
+           case "$(BUILD_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
+       esac; \
+       if [ "$(srcdir)" = "." ] ; then \
+         if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+           if $(SHELL) $$s/symlink-tree $${topdir}/bison "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}/bison"; \
+         libsrcdir="$$s/bison"; \
+       fi; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption} \
+         --with-build-subdir="$(BUILD_SUBDIR)"  \
          || 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: maybe-info-sim info-sim
-maybe-info-sim:
-
-info-sim: \
-    configure-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
+.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; \
-       $(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 sim" ; \
-       (cd sim && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/byacc; \
+       cd "$(BUILD_SUBDIR)/byacc" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) \
+           topdir=$(srcdir) ;; \
+         *) \
+           case "$(BUILD_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
+       esac; \
+       if [ "$(srcdir)" = "." ] ; then \
+         if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+           if $(SHELL) $$s/symlink-tree $${topdir}/byacc "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}/byacc"; \
+         libsrcdir="$$s/byacc"; \
+       fi; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption} \
+         --with-build-subdir="$(BUILD_SUBDIR)"  \
          || 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: maybe-info-tar info-tar
-maybe-info-tar:
-
-info-tar: \
-    configure-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
+.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; \
-       $(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 tar" ; \
-       (cd tar && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/flex; \
+       cd "$(BUILD_SUBDIR)/flex" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) \
+           topdir=$(srcdir) ;; \
+         *) \
+           case "$(BUILD_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
+       esac; \
+       if [ "$(srcdir)" = "." ] ; then \
+         if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+           if $(SHELL) $$s/symlink-tree $${topdir}/flex "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}/flex"; \
+         libsrcdir="$$s/flex"; \
+       fi; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption} \
+         --with-build-subdir="$(BUILD_SUBDIR)"  \
          || 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: maybe-info-texinfo info-texinfo
-maybe-info-texinfo:
-
-info-texinfo: \
-    configure-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+.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; \
-       $(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 texinfo" ; \
-       (cd texinfo && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/m4; \
+       cd "$(BUILD_SUBDIR)/m4" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) \
+           topdir=$(srcdir) ;; \
+         *) \
+           case "$(BUILD_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
+       esac; \
+       if [ "$(srcdir)" = "." ] ; then \
+         if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+           if $(SHELL) $$s/symlink-tree $${topdir}/m4 "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}/m4"; \
+         libsrcdir="$$s/m4"; \
+       fi; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption} \
+         --with-build-subdir="$(BUILD_SUBDIR)"  \
          || 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: maybe-info-textutils info-textutils
-maybe-info-textutils:
-
-info-textutils: \
-    configure-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
+.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; \
-       $(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 textutils" ; \
-       (cd textutils && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 info) \
+       $(BUILD_EXPORTS) \
+       echo Configuring in $(BUILD_SUBDIR)/texinfo; \
+       cd "$(BUILD_SUBDIR)/texinfo" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) \
+           topdir=$(srcdir) ;; \
+         *) \
+           case "$(BUILD_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
+       esac; \
+       if [ "$(srcdir)" = "." ] ; then \
+         if [ "$(BUILD_SUBDIR)" != "." ] ; then \
+           if $(SHELL) $$s/symlink-tree $${topdir}/texinfo "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}/texinfo"; \
+         libsrcdir="$$s/texinfo"; \
+       fi; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(BUILD_CONFIGARGS) $${srcdiroption} \
+         --with-build-subdir="$(BUILD_SUBDIR)"  \
          || 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: maybe-info-time info-time
-maybe-info-time:
 
-info-time: \
-    configure-time 
-       @[ -f ./time/Makefile ] || exit 0; \
+# --------------------------------------
+# 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 ash/Makefile || exit 0; \
+       [ -d ash ] || mkdir ash; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 info) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif ash
 
+.PHONY: all-ash maybe-all-ash
+maybe-all-ash:
+@if ash
+maybe-all-ash: all-ash
+all-ash: configure-ash
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd ash && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif ash
 
-.PHONY: maybe-info-uudecode info-uudecode
-maybe-info-uudecode:
+.PHONY: check-ash maybe-check-ash
+maybe-check-ash:
+@if ash
+maybe-check-ash: check-ash
 
-info-uudecode: \
-    configure-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-ash:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 uudecode" ; \
-       (cd uudecode && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd ash && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif ash
 
-.PHONY: maybe-info-wdiff info-wdiff
-maybe-info-wdiff:
+.PHONY: install-ash maybe-install-ash
+maybe-install-ash:
+@if ash
+maybe-install-ash: install-ash
 
-info-wdiff: \
-    configure-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-ash: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 wdiff" ; \
-       (cd wdiff && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd ash && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif ash
 
-.PHONY: maybe-info-zip info-zip
-maybe-info-zip:
+# Other targets (info, dvi, etc.)
 
-info-zip: \
-    configure-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in ash" ; \
+       (cd ash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -2050,266 +2553,301 @@ info-zip: \
                  info) \
          || exit 1
 
+@endif ash
 
-.PHONY: maybe-info-zlib info-zlib
-maybe-info-zlib:
+.PHONY: maybe-dvi-ash dvi-ash
+maybe-dvi-ash:
+@if ash
+maybe-dvi-ash: dvi-ash
 
-info-zlib: \
-    configure-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
+dvi-ash: \
+    configure-ash 
+       @[ -f ./ash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in ash" ; \
+       (cd 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) \
+                 dvi) \
          || exit 1
 
+@endif ash
 
-.PHONY: maybe-info-gdb info-gdb
-maybe-info-gdb:
+.PHONY: maybe-TAGS-ash TAGS-ash
+maybe-TAGS-ash:
+@if ash
+maybe-TAGS-ash: TAGS-ash
 
-info-gdb: \
-    configure-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
+TAGS-ash: \
+    configure-ash 
+       @[ -f ./ash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in ash" ; \
+       (cd 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) \
+                 TAGS) \
          || exit 1
 
+@endif ash
 
-.PHONY: maybe-info-expect info-expect
-maybe-info-expect:
+.PHONY: maybe-install-info-ash install-info-ash
+maybe-install-info-ash:
+@if ash
+maybe-install-info-ash: install-info-ash
 
-info-expect: \
-    configure-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
+install-info-ash: \
+    configure-ash \
+    info-ash 
+       @[ -f ./ash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in ash" ; \
+       (cd 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) \
+                 install-info) \
          || exit 1
 
+@endif ash
 
-.PHONY: maybe-info-guile info-guile
-maybe-info-guile:
+.PHONY: maybe-installcheck-ash installcheck-ash
+maybe-installcheck-ash:
+@if ash
+maybe-installcheck-ash: installcheck-ash
 
-info-guile: \
-    configure-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
+installcheck-ash: \
+    configure-ash 
+       @[ -f ./ash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in ash" ; \
+       (cd 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) \
+                 installcheck) \
          || exit 1
 
+@endif ash
 
-.PHONY: maybe-info-tk info-tk
-maybe-info-tk:
+.PHONY: maybe-mostlyclean-ash mostlyclean-ash
+maybe-mostlyclean-ash:
+@if ash
+maybe-mostlyclean-ash: mostlyclean-ash
 
-info-tk: \
-    configure-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
+mostlyclean-ash: 
+       @[ -f ./ash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in ash" ; \
+       (cd 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) \
+                 mostlyclean) \
          || exit 1
 
+@endif ash
 
-.PHONY: maybe-info-tix info-tix
-maybe-info-tix:
+.PHONY: maybe-clean-ash clean-ash
+maybe-clean-ash:
+@if ash
+maybe-clean-ash: clean-ash
 
-info-tix: \
-    configure-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
+clean-ash: 
+       @[ -f ./ash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in ash" ; \
+       (cd 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) \
+                 clean) \
          || exit 1
 
+@endif ash
 
-.PHONY: maybe-info-libtermcap info-libtermcap
-maybe-info-libtermcap:
+.PHONY: maybe-distclean-ash distclean-ash
+maybe-distclean-ash:
+@if ash
+maybe-distclean-ash: distclean-ash
 
-info-libtermcap: \
-    configure-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
+distclean-ash: 
+       @[ -f ./ash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in ash" ; \
+       (cd 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) \
+                 distclean) \
          || exit 1
 
+@endif ash
 
-.PHONY: maybe-info-utils info-utils
-maybe-info-utils:
+.PHONY: maybe-maintainer-clean-ash maintainer-clean-ash
+maybe-maintainer-clean-ash:
+@if ash
+maybe-maintainer-clean-ash: maintainer-clean-ash
 
-info-utils: \
-    configure-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
+maintainer-clean-ash: 
+       @[ -f ./ash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in ash" ; \
+       (cd 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
 
 
-# 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 ; \
+.PHONY: configure-autoconf maybe-configure-autoconf
+maybe-configure-autoconf:
+@if autoconf
+maybe-configure-autoconf: configure-autoconf
+configure-autoconf:
+       @test ! -f autoconf/Makefile || exit 0; \
+       [ -d autoconf ] || mkdir autoconf; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       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; \
-       (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}" \
-                 info) \
+       $(HOST_EXPORTS) \
+       echo Configuring in autoconf; \
+       cd autoconf || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif autoconf
 
+.PHONY: all-autoconf maybe-all-autoconf
+maybe-all-autoconf:
+@if autoconf
+maybe-all-autoconf: all-autoconf
+all-autoconf: configure-autoconf
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif autoconf
 
-.PHONY: maybe-info-target-newlib info-target-newlib
-maybe-info-target-newlib:
+.PHONY: check-autoconf maybe-check-autoconf
+maybe-check-autoconf:
+@if autoconf
+maybe-check-autoconf: check-autoconf
 
-info-target-newlib: \
-    configure-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+check-autoconf:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       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; \
-       (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}" \
-                 info) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif autoconf
 
-.PHONY: maybe-info-target-libf2c info-target-libf2c
-maybe-info-target-libf2c:
+.PHONY: install-autoconf maybe-install-autoconf
+maybe-install-autoconf:
+@if autoconf
+maybe-install-autoconf: install-autoconf
 
-info-target-libf2c: \
-    configure-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+install-autoconf: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) install)
+
+@endif autoconf
 
+# Other targets (info, dvi, etc.)
 
-.PHONY: maybe-info-target-libobjc info-target-libobjc
-maybe-info-target-libobjc:
+.PHONY: maybe-info-autoconf info-autoconf
+maybe-info-autoconf:
+@if autoconf
+maybe-info-autoconf: info-autoconf
 
-info-target-libobjc: \
-    configure-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+info-autoconf: \
+    configure-autoconf 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 info in autoconf" ; \
+       (cd autoconf && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -2317,375 +2855,327 @@ info-target-libobjc: \
                  info) \
          || exit 1
 
+@endif autoconf
 
-.PHONY: maybe-info-target-libtermcap info-target-libtermcap
-maybe-info-target-libtermcap:
+.PHONY: maybe-dvi-autoconf dvi-autoconf
+maybe-dvi-autoconf:
+@if autoconf
+maybe-dvi-autoconf: dvi-autoconf
 
-info-target-libtermcap: \
-    configure-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+dvi-autoconf: \
+    configure-autoconf 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi in autoconf" ; \
+       (cd 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-target-winsup info-target-winsup
-maybe-info-target-winsup:
+.PHONY: maybe-TAGS-autoconf TAGS-autoconf
+maybe-TAGS-autoconf:
+@if autoconf
+maybe-TAGS-autoconf: TAGS-autoconf
 
-info-target-winsup: \
-    configure-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+TAGS-autoconf: \
+    configure-autoconf 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 TAGS in autoconf" ; \
+       (cd 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-target-libgloss info-target-libgloss
-maybe-info-target-libgloss:
+.PHONY: maybe-install-info-autoconf install-info-autoconf
+maybe-install-info-autoconf:
+@if autoconf
+maybe-install-info-autoconf: install-info-autoconf
 
-info-target-libgloss: \
-    configure-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+install-info-autoconf: \
+    configure-autoconf \
+    info-autoconf 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info in autoconf" ; \
+       (cd 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-target-libiberty info-target-libiberty
-maybe-info-target-libiberty:
+.PHONY: maybe-installcheck-autoconf installcheck-autoconf
+maybe-installcheck-autoconf:
+@if autoconf
+maybe-installcheck-autoconf: installcheck-autoconf
 
-info-target-libiberty: \
-    configure-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+installcheck-autoconf: \
+    configure-autoconf 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck in autoconf" ; \
+       (cd 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-target-gperf info-target-gperf
-maybe-info-target-gperf:
+.PHONY: maybe-mostlyclean-autoconf mostlyclean-autoconf
+maybe-mostlyclean-autoconf:
+@if autoconf
+maybe-mostlyclean-autoconf: mostlyclean-autoconf
 
-info-target-gperf: \
-    configure-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+mostlyclean-autoconf: 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean in autoconf" ; \
+       (cd 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-target-examples info-target-examples
-maybe-info-target-examples:
+.PHONY: maybe-clean-autoconf clean-autoconf
+maybe-clean-autoconf:
+@if autoconf
+maybe-clean-autoconf: clean-autoconf
 
-info-target-examples: \
-    configure-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+clean-autoconf: 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean in autoconf" ; \
+       (cd 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-target-libffi info-target-libffi
-maybe-info-target-libffi:
+.PHONY: maybe-distclean-autoconf distclean-autoconf
+maybe-distclean-autoconf:
+@if autoconf
+maybe-distclean-autoconf: distclean-autoconf
 
-info-target-libffi: \
-    configure-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+distclean-autoconf: 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean in autoconf" ; \
+       (cd 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-target-libjava info-target-libjava
-maybe-info-target-libjava:
+.PHONY: maybe-maintainer-clean-autoconf maintainer-clean-autoconf
+maybe-maintainer-clean-autoconf:
+@if autoconf
+maybe-maintainer-clean-autoconf: maintainer-clean-autoconf
 
-info-target-libjava: \
-    configure-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+maintainer-clean-autoconf: 
+       @[ -f ./autoconf/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-clean in autoconf" ; \
+       (cd 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-target-zlib info-target-zlib
-maybe-info-target-zlib:
 
-info-target-zlib: \
-    configure-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+.PHONY: configure-automake maybe-configure-automake
+maybe-configure-automake:
+@if automake
+maybe-configure-automake: configure-automake
+configure-automake:
+       @test ! -f automake/Makefile || exit 0; \
+       [ -d automake ] || mkdir automake; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       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) \
+       $(HOST_EXPORTS) \
+       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
+@endif automake
 
+.PHONY: all-automake maybe-all-automake
+maybe-all-automake:
+@if automake
+maybe-all-automake: all-automake
+all-automake: configure-automake
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd automake && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif automake
 
-.PHONY: maybe-info-target-boehm-gc info-target-boehm-gc
-maybe-info-target-boehm-gc:
+.PHONY: check-automake maybe-check-automake
+maybe-check-automake:
+@if automake
+maybe-check-automake: check-automake
 
-info-target-boehm-gc: \
-    configure-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+check-automake:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       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
+       $(HOST_EXPORTS) \
+       (cd automake && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif automake
 
-.PHONY: maybe-info-target-qthreads info-target-qthreads
-maybe-info-target-qthreads:
+.PHONY: install-automake maybe-install-automake
+maybe-install-automake:
+@if automake
+maybe-install-automake: install-automake
 
-info-target-qthreads: \
-    configure-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+install-automake: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       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
+       $(HOST_EXPORTS) \
+       (cd automake && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif automake
 
-.PHONY: maybe-info-target-rda info-target-rda
-maybe-info-target-rda:
+# Other targets (info, dvi, etc.)
 
-info-target-rda: \
-    configure-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+.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; \
        $(SET_LIB_PATH) \
-       echo "Doing info in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 info) \
-         || exit 1
-
-
-
-.PHONY: do-dvi
-do-dvi: dvi-host dvi-target
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 info) \
+         || exit 1
 
-.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
+@endif automake
 
-.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
+.PHONY: maybe-dvi-automake dvi-automake
+maybe-dvi-automake:
+@if automake
+maybe-dvi-automake: dvi-automake
 
-# GCC, the eternal special case
-.PHONY: maybe-dvi-gcc dvi-gcc
-maybe-dvi-gcc:
-dvi-gcc: \
-    configure-gcc 
-       @[ -f ./gcc/Makefile ] || exit 0; \
+dvi-automake: \
+    configure-automake 
+       @[ -f ./automake/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+       $(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 dvi in automake" ; \
+       (cd automake && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -2693,198 +3183,301 @@ dvi-gcc: \
                  dvi) \
          || exit 1
 
-# Host modules.
+@endif automake
 
-.PHONY: maybe-dvi-ash dvi-ash
-maybe-dvi-ash:
+.PHONY: maybe-TAGS-automake TAGS-automake
+maybe-TAGS-automake:
+@if automake
+maybe-TAGS-automake: TAGS-automake
 
-dvi-ash: \
-    configure-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
+TAGS-automake: \
+    configure-automake 
+       @[ -f ./automake/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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) \
+                 TAGS) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-dvi-autoconf dvi-autoconf
-maybe-dvi-autoconf:
+.PHONY: maybe-install-info-automake install-info-automake
+maybe-install-info-automake:
+@if automake
+maybe-install-info-automake: install-info-automake
 
-dvi-autoconf: \
-    configure-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
+install-info-automake: \
+    configure-automake \
+    info-automake 
+       @[ -f ./automake/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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) \
+                 install-info) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-dvi-automake dvi-automake
-maybe-dvi-automake:
+.PHONY: maybe-installcheck-automake installcheck-automake
+maybe-installcheck-automake:
+@if automake
+maybe-installcheck-automake: installcheck-automake
 
-dvi-automake: \
+installcheck-automake: \
     configure-automake 
        @[ -f ./automake/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing dvi in automake" ; \
+       echo "Doing installcheck 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) \
+                 installcheck) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-dvi-bash dvi-bash
-maybe-dvi-bash:
+.PHONY: maybe-mostlyclean-automake mostlyclean-automake
+maybe-mostlyclean-automake:
+@if automake
+maybe-mostlyclean-automake: mostlyclean-automake
 
-dvi-bash: \
-    configure-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
+mostlyclean-automake: 
+       @[ -f ./automake/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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) \
+                 mostlyclean) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-dvi-bfd dvi-bfd
-maybe-dvi-bfd:
+.PHONY: maybe-clean-automake clean-automake
+maybe-clean-automake:
+@if automake
+maybe-clean-automake: clean-automake
 
-dvi-bfd: \
-    configure-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
+clean-automake: 
+       @[ -f ./automake/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean 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) \
+                 clean) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-dvi-opcodes dvi-opcodes
-maybe-dvi-opcodes:
+.PHONY: maybe-distclean-automake distclean-automake
+maybe-distclean-automake:
+@if automake
+maybe-distclean-automake: distclean-automake
 
-dvi-opcodes: \
-    configure-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
+distclean-automake: 
+       @[ -f ./automake/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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) \
+                 distclean) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-dvi-binutils dvi-binutils
-maybe-dvi-binutils:
+.PHONY: maybe-maintainer-clean-automake maintainer-clean-automake
+maybe-maintainer-clean-automake:
+@if automake
+maybe-maintainer-clean-automake: maintainer-clean-automake
 
-dvi-binutils: \
-    configure-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
+maintainer-clean-automake: 
+       @[ -f ./automake/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean 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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif automake
 
-.PHONY: maybe-dvi-bison dvi-bison
-maybe-dvi-bison:
 
-dvi-bison: \
-    configure-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
+.PHONY: configure-bash maybe-configure-bash
+maybe-configure-bash:
+@if bash
+maybe-configure-bash: configure-bash
+configure-bash:
+       @test ! -f bash/Makefile || exit 0; \
+       [ -d bash ] || mkdir bash; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif bash
+
+.PHONY: all-bash maybe-all-bash
+maybe-all-bash:
+@if bash
+maybe-all-bash: all-bash
+all-bash: configure-bash
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd bash && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in bash" ; \
+       (cd bash && \
          $(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 bash
 
-.PHONY: maybe-dvi-byacc dvi-byacc
-maybe-dvi-byacc:
+.PHONY: maybe-dvi-bash dvi-bash
+maybe-dvi-bash:
+@if bash
+maybe-dvi-bash: dvi-bash
 
-dvi-byacc: \
-    configure-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
+dvi-bash: \
+    configure-bash 
+       @[ -f ./bash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in bash" ; \
+       (cd bash && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -2892,241 +3485,303 @@ dvi-byacc: \
                  dvi) \
          || exit 1
 
+@endif bash
 
-.PHONY: maybe-dvi-bzip2 dvi-bzip2
-maybe-dvi-bzip2:
+.PHONY: maybe-TAGS-bash TAGS-bash
+maybe-TAGS-bash:
+@if bash
+maybe-TAGS-bash: TAGS-bash
 
-dvi-bzip2: \
-    configure-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
+TAGS-bash: \
+    configure-bash 
+       @[ -f ./bash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in bash" ; \
+       (cd bash && \
          $(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 bash
 
-.PHONY: maybe-dvi-dejagnu dvi-dejagnu
-maybe-dvi-dejagnu:
+.PHONY: maybe-install-info-bash install-info-bash
+maybe-install-info-bash:
+@if bash
+maybe-install-info-bash: install-info-bash
 
-dvi-dejagnu: \
-    configure-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
+install-info-bash: \
+    configure-bash \
+    info-bash 
+       @[ -f ./bash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in bash" ; \
+       (cd bash && \
          $(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 bash
 
-.PHONY: maybe-dvi-diff dvi-diff
-maybe-dvi-diff:
+.PHONY: maybe-installcheck-bash installcheck-bash
+maybe-installcheck-bash:
+@if bash
+maybe-installcheck-bash: installcheck-bash
 
-dvi-diff: \
-    configure-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
+installcheck-bash: \
+    configure-bash 
+       @[ -f ./bash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in bash" ; \
+       (cd bash && \
          $(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 bash
 
-.PHONY: maybe-dvi-dosutils dvi-dosutils
-maybe-dvi-dosutils:
+.PHONY: maybe-mostlyclean-bash mostlyclean-bash
+maybe-mostlyclean-bash:
+@if bash
+maybe-mostlyclean-bash: mostlyclean-bash
 
-dvi-dosutils: \
-    configure-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
+mostlyclean-bash: 
+       @[ -f ./bash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in bash" ; \
+       (cd bash && \
          $(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 bash
 
-.PHONY: maybe-dvi-etc dvi-etc
-maybe-dvi-etc:
+.PHONY: maybe-clean-bash clean-bash
+maybe-clean-bash:
+@if bash
+maybe-clean-bash: clean-bash
 
-dvi-etc: \
-    configure-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
+clean-bash: 
+       @[ -f ./bash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in bash" ; \
+       (cd bash && \
          $(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 bash
 
-.PHONY: maybe-dvi-fastjar dvi-fastjar
-maybe-dvi-fastjar:
+.PHONY: maybe-distclean-bash distclean-bash
+maybe-distclean-bash:
+@if bash
+maybe-distclean-bash: distclean-bash
 
-dvi-fastjar: \
-    configure-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
+distclean-bash: 
+       @[ -f ./bash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in bash" ; \
+       (cd bash && \
          $(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 bash
 
-.PHONY: maybe-dvi-fileutils dvi-fileutils
-maybe-dvi-fileutils:
+.PHONY: maybe-maintainer-clean-bash maintainer-clean-bash
+maybe-maintainer-clean-bash:
+@if bash
+maybe-maintainer-clean-bash: maintainer-clean-bash
 
-dvi-fileutils: \
-    configure-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
+maintainer-clean-bash: 
+       @[ -f ./bash/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in bash" ; \
+       (cd bash && \
          $(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 bash
 
-.PHONY: maybe-dvi-findutils dvi-findutils
-maybe-dvi-findutils:
 
-dvi-findutils: \
-    configure-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
+.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 bfd/Makefile || exit 0; \
+       [ -d bfd ] || mkdir bfd; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 findutils" ; \
-       (cd findutils && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif bfd
 
+.PHONY: all-bfd maybe-all-bfd
+maybe-all-bfd:
+@if bfd
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd bfd && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif bfd
 
-.PHONY: maybe-dvi-find dvi-find
-maybe-dvi-find:
+.PHONY: check-bfd maybe-check-bfd
+maybe-check-bfd:
+@if bfd
+maybe-check-bfd: check-bfd
 
-dvi-find: \
-    configure-find 
-       @[ -f ./find/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-bfd:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 find" ; \
-       (cd find && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd bfd && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif bfd
 
-.PHONY: maybe-dvi-flex dvi-flex
-maybe-dvi-flex:
+.PHONY: install-bfd maybe-install-bfd
+maybe-install-bfd:
+@if bfd
+maybe-install-bfd: install-bfd
 
-dvi-flex: \
-    configure-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
+install-bfd: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in bfd" ; \
+       (cd bfd && \
          $(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 bfd
 
-.PHONY: maybe-dvi-gas dvi-gas
-maybe-dvi-gas:
+.PHONY: maybe-dvi-bfd dvi-bfd
+maybe-dvi-bfd:
+@if bfd
+maybe-dvi-bfd: dvi-bfd
 
-dvi-gas: \
-    configure-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
+dvi-bfd: \
+    configure-bfd 
+       @[ -f ./bfd/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in bfd" ; \
+       (cd bfd && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -3134,197 +3789,303 @@ dvi-gas: \
                  dvi) \
          || exit 1
 
+@endif bfd
 
-.PHONY: maybe-dvi-gawk dvi-gawk
-maybe-dvi-gawk:
+.PHONY: maybe-TAGS-bfd TAGS-bfd
+maybe-TAGS-bfd:
+@if bfd
+maybe-TAGS-bfd: TAGS-bfd
 
-dvi-gawk: \
-    configure-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
+TAGS-bfd: \
+    configure-bfd 
+       @[ -f ./bfd/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in bfd" ; \
+       (cd bfd && \
          $(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 bfd
 
-.PHONY: maybe-dvi-gettext dvi-gettext
-maybe-dvi-gettext:
+.PHONY: maybe-install-info-bfd install-info-bfd
+maybe-install-info-bfd:
+@if bfd
+maybe-install-info-bfd: install-info-bfd
 
-dvi-gettext: \
-    configure-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
+install-info-bfd: \
+    configure-bfd \
+    info-bfd 
+       @[ -f ./bfd/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in bfd" ; \
+       (cd bfd && \
          $(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 bfd
 
-.PHONY: maybe-dvi-gnuserv dvi-gnuserv
-maybe-dvi-gnuserv:
+.PHONY: maybe-installcheck-bfd installcheck-bfd
+maybe-installcheck-bfd:
+@if bfd
+maybe-installcheck-bfd: installcheck-bfd
 
-dvi-gnuserv: \
-    configure-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
+installcheck-bfd: \
+    configure-bfd 
+       @[ -f ./bfd/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in bfd" ; \
+       (cd bfd && \
          $(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 bfd
 
-.PHONY: maybe-dvi-gprof dvi-gprof
-maybe-dvi-gprof:
+.PHONY: maybe-mostlyclean-bfd mostlyclean-bfd
+maybe-mostlyclean-bfd:
+@if bfd
+maybe-mostlyclean-bfd: mostlyclean-bfd
 
-dvi-gprof: \
-    configure-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
+mostlyclean-bfd: 
+       @[ -f ./bfd/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in bfd" ; \
+       (cd bfd && \
          $(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 bfd
 
-.PHONY: maybe-dvi-gzip dvi-gzip
-maybe-dvi-gzip:
+.PHONY: maybe-clean-bfd clean-bfd
+maybe-clean-bfd:
+@if bfd
+maybe-clean-bfd: clean-bfd
 
-dvi-gzip: \
-    configure-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
+clean-bfd: 
+       @[ -f ./bfd/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in bfd" ; \
+       (cd bfd && \
          $(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 bfd
 
-.PHONY: maybe-dvi-hello dvi-hello
-maybe-dvi-hello:
+.PHONY: maybe-distclean-bfd distclean-bfd
+maybe-distclean-bfd:
+@if bfd
+maybe-distclean-bfd: distclean-bfd
 
-dvi-hello: \
-    configure-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
+distclean-bfd: 
+       @[ -f ./bfd/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in bfd" ; \
+       (cd bfd && \
          $(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 bfd
 
-.PHONY: maybe-dvi-indent dvi-indent
-maybe-dvi-indent:
+.PHONY: maybe-maintainer-clean-bfd maintainer-clean-bfd
+maybe-maintainer-clean-bfd:
+@if bfd
+maybe-maintainer-clean-bfd: maintainer-clean-bfd
 
-dvi-indent: \
-    configure-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
+maintainer-clean-bfd: 
+       @[ -f ./bfd/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in bfd" ; \
+       (cd bfd && \
          $(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 bfd
 
-.PHONY: maybe-dvi-intl dvi-intl
-maybe-dvi-intl:
 
-dvi-intl: \
-    configure-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
+.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 opcodes/Makefile || exit 0; \
+       [ -d opcodes ] || mkdir opcodes; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif opcodes
+
+.PHONY: all-opcodes maybe-all-opcodes
+maybe-all-opcodes:
+@if opcodes
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif opcodes
+
+.PHONY: check-opcodes maybe-check-opcodes
+maybe-check-opcodes:
+@if opcodes
+maybe-check-opcodes: check-opcodes
+
+check-opcodes:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) check)
+
+@endif opcodes
+
+.PHONY: install-opcodes maybe-install-opcodes
+maybe-install-opcodes:
+@if opcodes
+maybe-install-opcodes: install-opcodes
+
+install-opcodes: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) install)
+
+@endif opcodes
+
+# Other targets (info, dvi, etc.)
+
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in opcodes" ; \
+       (cd opcodes && \
          $(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 opcodes
 
-.PHONY: maybe-dvi-tcl dvi-tcl
-maybe-dvi-tcl:
+.PHONY: maybe-dvi-opcodes dvi-opcodes
+maybe-dvi-opcodes:
+@if opcodes
+maybe-dvi-opcodes: dvi-opcodes
 
-dvi-tcl: \
-    configure-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
+dvi-opcodes: \
+    configure-opcodes 
+       @[ -f ./opcodes/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in opcodes" ; \
+       (cd opcodes && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -3332,197 +4093,303 @@ dvi-tcl: \
                  dvi) \
          || exit 1
 
+@endif opcodes
 
-.PHONY: maybe-dvi-itcl dvi-itcl
-maybe-dvi-itcl:
+.PHONY: maybe-TAGS-opcodes TAGS-opcodes
+maybe-TAGS-opcodes:
+@if opcodes
+maybe-TAGS-opcodes: TAGS-opcodes
 
-dvi-itcl: \
-    configure-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
+TAGS-opcodes: \
+    configure-opcodes 
+       @[ -f ./opcodes/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in opcodes" ; \
+       (cd opcodes && \
          $(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 opcodes
 
-.PHONY: maybe-dvi-ld dvi-ld
-maybe-dvi-ld:
+.PHONY: maybe-install-info-opcodes install-info-opcodes
+maybe-install-info-opcodes:
+@if opcodes
+maybe-install-info-opcodes: install-info-opcodes
 
-dvi-ld: \
-    configure-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
+install-info-opcodes: \
+    configure-opcodes \
+    info-opcodes 
+       @[ -f ./opcodes/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in opcodes" ; \
+       (cd opcodes && \
          $(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 opcodes
 
-.PHONY: maybe-dvi-libgui dvi-libgui
-maybe-dvi-libgui:
+.PHONY: maybe-installcheck-opcodes installcheck-opcodes
+maybe-installcheck-opcodes:
+@if opcodes
+maybe-installcheck-opcodes: installcheck-opcodes
 
-dvi-libgui: \
-    configure-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
+installcheck-opcodes: \
+    configure-opcodes 
+       @[ -f ./opcodes/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in opcodes" ; \
+       (cd opcodes && \
          $(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 opcodes
 
-.PHONY: maybe-dvi-libiberty dvi-libiberty
-maybe-dvi-libiberty:
+.PHONY: maybe-mostlyclean-opcodes mostlyclean-opcodes
+maybe-mostlyclean-opcodes:
+@if opcodes
+maybe-mostlyclean-opcodes: mostlyclean-opcodes
 
-dvi-libiberty: \
-    configure-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
+mostlyclean-opcodes: 
+       @[ -f ./opcodes/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in opcodes" ; \
+       (cd opcodes && \
          $(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 opcodes
 
-.PHONY: maybe-dvi-libtool dvi-libtool
-maybe-dvi-libtool:
+.PHONY: maybe-clean-opcodes clean-opcodes
+maybe-clean-opcodes:
+@if opcodes
+maybe-clean-opcodes: clean-opcodes
 
-dvi-libtool: \
-    configure-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
+clean-opcodes: 
+       @[ -f ./opcodes/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing clean in opcodes" ; \
+       (cd opcodes && \
          $(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 opcodes
 
-.PHONY: maybe-dvi-m4 dvi-m4
-maybe-dvi-m4:
+.PHONY: maybe-distclean-opcodes distclean-opcodes
+maybe-distclean-opcodes:
+@if opcodes
+maybe-distclean-opcodes: distclean-opcodes
 
-dvi-m4: \
-    configure-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
+distclean-opcodes: 
+       @[ -f ./opcodes/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing distclean in opcodes" ; \
+       (cd opcodes && \
          $(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 opcodes
 
-.PHONY: maybe-dvi-make dvi-make
-maybe-dvi-make:
+.PHONY: maybe-maintainer-clean-opcodes maintainer-clean-opcodes
+maybe-maintainer-clean-opcodes:
+@if opcodes
+maybe-maintainer-clean-opcodes: maintainer-clean-opcodes
 
-dvi-make: \
-    configure-make 
-       @[ -f ./make/Makefile ] || exit 0; \
+maintainer-clean-opcodes: 
+       @[ -f ./opcodes/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing maintainer-clean in opcodes" ; \
+       (cd opcodes && \
          $(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 opcodes
 
-.PHONY: maybe-dvi-mmalloc dvi-mmalloc
-maybe-dvi-mmalloc:
 
-dvi-mmalloc: \
-    configure-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
+.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 binutils/Makefile || exit 0; \
+       [ -d binutils ] || mkdir binutils; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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
+@endif binutils
+
+.PHONY: all-binutils maybe-all-binutils
+maybe-all-binutils:
+@if binutils
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd binutils && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing info in binutils" ; \
+       (cd binutils && \
          $(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 binutils
 
-.PHONY: maybe-dvi-patch dvi-patch
-maybe-dvi-patch:
+.PHONY: maybe-dvi-binutils dvi-binutils
+maybe-dvi-binutils:
+@if binutils
+maybe-dvi-binutils: dvi-binutils
 
-dvi-patch: \
-    configure-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
+dvi-binutils: \
+    configure-binutils 
+       @[ -f ./binutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in binutils" ; \
+       (cd binutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -3530,219 +4397,304 @@ dvi-patch: \
                  dvi) \
          || exit 1
 
+@endif binutils
 
-.PHONY: maybe-dvi-perl dvi-perl
-maybe-dvi-perl:
+.PHONY: maybe-TAGS-binutils TAGS-binutils
+maybe-TAGS-binutils:
+@if binutils
+maybe-TAGS-binutils: TAGS-binutils
 
-dvi-perl: \
-    configure-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
+TAGS-binutils: \
+    configure-binutils 
+       @[ -f ./binutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in binutils" ; \
+       (cd binutils && \
          $(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 binutils
 
-.PHONY: maybe-dvi-prms dvi-prms
-maybe-dvi-prms:
+.PHONY: maybe-install-info-binutils install-info-binutils
+maybe-install-info-binutils:
+@if binutils
+maybe-install-info-binutils: install-info-binutils
 
-dvi-prms: \
-    configure-prms 
-       @[ -f ./prms/Makefile ] || exit 0; \
+install-info-binutils: \
+    configure-binutils \
+    info-binutils 
+       @[ -f ./binutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in binutils" ; \
+       (cd binutils && \
          $(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 binutils
 
-.PHONY: maybe-dvi-rcs dvi-rcs
-maybe-dvi-rcs:
+.PHONY: maybe-installcheck-binutils installcheck-binutils
+maybe-installcheck-binutils:
+@if binutils
+maybe-installcheck-binutils: installcheck-binutils
 
-dvi-rcs: \
-    configure-rc
-       @[ -f ./rcs/Makefile ] || exit 0; \
+installcheck-binutils: \
+    configure-binutil
+       @[ -f ./binutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in binutils" ; \
+       (cd binutils && \
          $(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 binutils
 
-.PHONY: maybe-dvi-readline dvi-readline
-maybe-dvi-readline:
+.PHONY: maybe-mostlyclean-binutils mostlyclean-binutils
+maybe-mostlyclean-binutils:
+@if binutils
+maybe-mostlyclean-binutils: mostlyclean-binutils
 
-dvi-readline: \
-    configure-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
+mostlyclean-binutils: 
+       @[ -f ./binutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in binutils" ; \
+       (cd binutils && \
          $(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 binutils
 
-.PHONY: maybe-dvi-release dvi-release
-maybe-dvi-release:
+.PHONY: maybe-clean-binutils clean-binutils
+maybe-clean-binutils:
+@if binutils
+maybe-clean-binutils: clean-binutils
 
-dvi-release: \
-    configure-release 
-       @[ -f ./release/Makefile ] || exit 0; \
+clean-binutils: 
+       @[ -f ./binutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in binutils" ; \
+       (cd binutils && \
          $(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 binutils
 
-.PHONY: maybe-dvi-recode dvi-recode
-maybe-dvi-recode:
+.PHONY: maybe-distclean-binutils distclean-binutils
+maybe-distclean-binutils:
+@if binutils
+maybe-distclean-binutils: distclean-binutils
 
-dvi-recode: \
-    configure-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
+distclean-binutils: 
+       @[ -f ./binutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in binutils" ; \
+       (cd binutils && \
          $(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 binutils
 
-.PHONY: maybe-dvi-sed dvi-sed
-maybe-dvi-sed:
+.PHONY: maybe-maintainer-clean-binutils maintainer-clean-binutils
+maybe-maintainer-clean-binutils:
+@if binutils
+maybe-maintainer-clean-binutils: maintainer-clean-binutils
 
-dvi-sed: \
-    configure-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
+maintainer-clean-binutils: 
+       @[ -f ./binutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in binutils" ; \
+       (cd binutils && \
          $(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 binutils
+
+
+.PHONY: configure-bison maybe-configure-bison
+maybe-configure-bison:
+@if bison
+maybe-configure-bison: configure-bison
+configure-bison:
+       @test ! -f bison/Makefile || exit 0; \
+       [ -d bison ] || mkdir bison; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in bison; \
+       cd bison || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif bison
+
+.PHONY: all-bison maybe-all-bison
+maybe-all-bison:
+@if bison
+maybe-all-bison: all-bison
+all-bison: configure-bison
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd bison && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+         $(SET_LIB_PATH) \
+         $(HOST_EXPORTS) \
+         (cd bison && $(MAKE) $(FLAGS_TO_PASS)  check); \
+       fi
 
+@endif bison
 
-.PHONY: maybe-dvi-send-pr dvi-send-pr
-maybe-dvi-send-pr:
+.PHONY: install-bison maybe-install-bison
+maybe-install-bison:
+@if bison
+maybe-install-bison: install-bison
 
-dvi-send-pr: \
-    configure-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-bison: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 dvi) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd bison && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif bison
 
-.PHONY: maybe-dvi-shellutils dvi-shellutils
-maybe-dvi-shellutils:
+# Other targets (info, dvi, etc.)
 
-dvi-shellutils: \
-    configure-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in bison" ; \
+       (cd bison && \
          $(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 bison
 
-.PHONY: maybe-dvi-sid dvi-sid
-maybe-dvi-sid:
+.PHONY: maybe-dvi-bison dvi-bison
+maybe-dvi-bison:
+@if bison
+maybe-dvi-bison: dvi-bison
 
-dvi-sid: \
-    configure-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
+dvi-bison: \
+    configure-bison 
+       @[ -f ./bison/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in bison" ; \
+       (cd bison && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -3750,263 +4702,304 @@ dvi-sid: \
                  dvi) \
          || exit 1
 
+@endif bison
 
-.PHONY: maybe-dvi-sim dvi-sim
-maybe-dvi-sim:
+.PHONY: maybe-TAGS-bison TAGS-bison
+maybe-TAGS-bison:
+@if bison
+maybe-TAGS-bison: TAGS-bison
 
-dvi-sim: \
-    configure-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
+TAGS-bison: \
+    configure-bison 
+       @[ -f ./bison/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in bison" ; \
+       (cd bison && \
          $(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 bison
 
-.PHONY: maybe-dvi-tar dvi-tar
-maybe-dvi-tar:
+.PHONY: maybe-install-info-bison install-info-bison
+maybe-install-info-bison:
+@if bison
+maybe-install-info-bison: install-info-bison
 
-dvi-tar: \
-    configure-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
+install-info-bison: \
+    configure-bison \
+    info-bison 
+       @[ -f ./bison/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in bison" ; \
+       (cd bison && \
          $(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 bison
 
-.PHONY: maybe-dvi-texinfo dvi-texinfo
-maybe-dvi-texinfo:
+.PHONY: maybe-installcheck-bison installcheck-bison
+maybe-installcheck-bison:
+@if bison
+maybe-installcheck-bison: installcheck-bison
 
-dvi-texinfo: \
-    configure-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+installcheck-bison: \
+    configure-bison 
+       @[ -f ./bison/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in bison" ; \
+       (cd bison && \
          $(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 bison
 
-.PHONY: maybe-dvi-textutils dvi-textutils
-maybe-dvi-textutils:
+.PHONY: maybe-mostlyclean-bison mostlyclean-bison
+maybe-mostlyclean-bison:
+@if bison
+maybe-mostlyclean-bison: mostlyclean-bison
 
-dvi-textutils: \
-    configure-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
+mostlyclean-bison: 
+       @[ -f ./bison/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in bison" ; \
+       (cd bison && \
          $(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 bison
 
-.PHONY: maybe-dvi-time dvi-time
-maybe-dvi-time:
+.PHONY: maybe-clean-bison clean-bison
+maybe-clean-bison:
+@if bison
+maybe-clean-bison: clean-bison
 
-dvi-time: \
-    configure-time 
-       @[ -f ./time/Makefile ] || exit 0; \
+clean-bison: 
+       @[ -f ./bison/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in bison" ; \
+       (cd bison && \
          $(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 bison
 
-.PHONY: maybe-dvi-uudecode dvi-uudecode
-maybe-dvi-uudecode:
+.PHONY: maybe-distclean-bison distclean-bison
+maybe-distclean-bison:
+@if bison
+maybe-distclean-bison: distclean-bison
 
-dvi-uudecode: \
-    configure-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
+distclean-bison: 
+       @[ -f ./bison/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in bison" ; \
+       (cd bison && \
          $(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 bison
 
-.PHONY: maybe-dvi-wdiff dvi-wdiff
-maybe-dvi-wdiff:
+.PHONY: maybe-maintainer-clean-bison maintainer-clean-bison
+maybe-maintainer-clean-bison:
+@if bison
+maybe-maintainer-clean-bison: maintainer-clean-bison
 
-dvi-wdiff: \
-    configure-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
+maintainer-clean-bison: 
+       @[ -f ./bison/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in bison" ; \
+       (cd bison && \
          $(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 bison
 
-.PHONY: maybe-dvi-zip dvi-zip
-maybe-dvi-zip:
 
-dvi-zip: \
-    configure-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
+.PHONY: configure-byacc maybe-configure-byacc
+maybe-configure-byacc:
+@if byacc
+maybe-configure-byacc: configure-byacc
+configure-byacc:
+       @test ! -f byacc/Makefile || exit 0; \
+       [ -d byacc ] || mkdir byacc; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 zip" ; \
-       (cd zip && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 dvi) \
+       $(HOST_EXPORTS) \
+       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
+@endif byacc
 
-
-.PHONY: maybe-dvi-zlib dvi-zlib
-maybe-dvi-zlib:
-
-dvi-zlib: \
-    configure-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+.PHONY: all-byacc maybe-all-byacc
+maybe-all-byacc:
+@if byacc
+maybe-all-byacc: all-byacc
+all-byacc: configure-byacc
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 zlib" ; \
-       (cd 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
+       $(HOST_EXPORTS) \
+       (cd byacc && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif byacc
 
+.PHONY: check-byacc maybe-check-byacc
+maybe-check-byacc:
+@if byacc
+maybe-check-byacc: check-byacc
 
-.PHONY: maybe-dvi-gdb dvi-gdb
-maybe-dvi-gdb:
+# 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; \
+         $(SET_LIB_PATH) \
+         $(HOST_EXPORTS) \
+         (cd byacc && $(MAKE) $(FLAGS_TO_PASS)  check); \
+       fi
 
-dvi-gdb: \
-    configure-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+@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; \
        $(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
+       $(HOST_EXPORTS) \
+       (cd byacc && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif byacc
 
-.PHONY: maybe-dvi-expect dvi-expect
-maybe-dvi-expect:
+# Other targets (info, dvi, etc.)
 
-dvi-expect: \
-    configure-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 byacc" ; \
+       (cd 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) \
+                 info) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-dvi-guile dvi-guile
-maybe-dvi-guile:
+.PHONY: maybe-dvi-byacc dvi-byacc
+maybe-dvi-byacc:
+@if byacc
+maybe-dvi-byacc: dvi-byacc
 
-dvi-guile: \
-    configure-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
+dvi-byacc: \
+    configure-byacc 
+       @[ -f ./byacc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 byacc" ; \
+       (cd byacc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -4014,200 +5007,301 @@ dvi-guile: \
                  dvi) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-dvi-tk dvi-tk
-maybe-dvi-tk:
+.PHONY: maybe-TAGS-byacc TAGS-byacc
+maybe-TAGS-byacc:
+@if byacc
+maybe-TAGS-byacc: TAGS-byacc
 
-dvi-tk: \
-    configure-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
+TAGS-byacc: \
+    configure-byacc 
+       @[ -f ./byacc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in byacc" ; \
+       (cd 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) \
+                 TAGS) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-dvi-tix dvi-tix
-maybe-dvi-tix:
+.PHONY: maybe-install-info-byacc install-info-byacc
+maybe-install-info-byacc:
+@if byacc
+maybe-install-info-byacc: install-info-byacc
 
-dvi-tix: \
-    configure-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
+install-info-byacc: \
+    configure-byacc \
+    info-byacc 
+       @[ -f ./byacc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in byacc" ; \
+       (cd 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) \
+                 install-info) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-dvi-libtermcap dvi-libtermcap
-maybe-dvi-libtermcap:
+.PHONY: maybe-installcheck-byacc installcheck-byacc
+maybe-installcheck-byacc:
+@if byacc
+maybe-installcheck-byacc: installcheck-byacc
 
-dvi-libtermcap: \
-    configure-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
+installcheck-byacc: \
+    configure-byacc 
+       @[ -f ./byacc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in byacc" ; \
+       (cd 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) \
+                 installcheck) \
          || exit 1
 
+@endif byacc
 
-.PHONY: maybe-dvi-utils dvi-utils
-maybe-dvi-utils:
+.PHONY: maybe-mostlyclean-byacc mostlyclean-byacc
+maybe-mostlyclean-byacc:
+@if byacc
+maybe-mostlyclean-byacc: mostlyclean-byacc
 
-dvi-utils: \
-    configure-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
+mostlyclean-byacc: 
+       @[ -f ./byacc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in byacc" ; \
+       (cd 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) \
+                 mostlyclean) \
          || exit 1
 
+@endif byacc
 
+.PHONY: maybe-clean-byacc clean-byacc
+maybe-clean-byacc:
+@if byacc
+maybe-clean-byacc: clean-byacc
 
-# 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 ; \
+clean-byacc: 
+       @[ -f ./byacc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean in byacc" ; \
+       (cd 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
 
+@endif byacc
 
-.PHONY: maybe-dvi-target-newlib dvi-target-newlib
-maybe-dvi-target-newlib:
+.PHONY: maybe-distclean-byacc distclean-byacc
+maybe-distclean-byacc:
+@if byacc
+maybe-distclean-byacc: distclean-byacc
 
-dvi-target-newlib: \
-    configure-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+distclean-byacc: 
+       @[ -f ./byacc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean in byacc" ; \
+       (cd 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-target-libf2c dvi-target-libf2c
-maybe-dvi-target-libf2c:
+.PHONY: maybe-maintainer-clean-byacc maintainer-clean-byacc
+maybe-maintainer-clean-byacc:
+@if byacc
+maybe-maintainer-clean-byacc: maintainer-clean-byacc
 
-dvi-target-libf2c: \
-    configure-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
+maintainer-clean-byacc: 
+       @[ -f ./byacc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-clean in byacc" ; \
+       (cd 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-target-libobjc dvi-target-libobjc
-maybe-dvi-target-libobjc:
 
-dvi-target-libobjc: \
-    configure-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+.PHONY: configure-bzip2 maybe-configure-bzip2
+maybe-configure-bzip2:
+@if bzip2
+maybe-configure-bzip2: configure-bzip2
+configure-bzip2:
+       @test ! -f bzip2/Makefile || exit 0; \
+       [ -d bzip2 ] || mkdir bzip2; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif bzip2
+
+.PHONY: all-bzip2 maybe-all-bzip2
+maybe-all-bzip2:
+@if bzip2
+maybe-all-bzip2: all-bzip2
+all-bzip2: configure-bzip2
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(HOST_EXPORTS) \
+       (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(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 info 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}" \
-                 dvi) \
+                 info) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-libtermcap dvi-target-libtermcap
-maybe-dvi-target-libtermcap:
+.PHONY: maybe-dvi-bzip2 dvi-bzip2
+maybe-dvi-bzip2:
+@if bzip2
+maybe-dvi-bzip2: dvi-bzip2
 
-dvi-target-libtermcap: \
-    configure-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+dvi-bzip2: \
+    configure-bzip2 
+       @[ -f ./bzip2/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi in bzip2" ; \
+       (cd bzip2 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -4215,197 +5309,301 @@ dvi-target-libtermcap: \
                  dvi) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-winsup dvi-target-winsup
-maybe-dvi-target-winsup:
+.PHONY: maybe-TAGS-bzip2 TAGS-bzip2
+maybe-TAGS-bzip2:
+@if bzip2
+maybe-TAGS-bzip2: TAGS-bzip2
 
-dvi-target-winsup: \
-    configure-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+TAGS-bzip2: \
+    configure-bzip2 
+       @[ -f ./bzip2/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 dvi) \
+                 TAGS) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-libgloss dvi-target-libgloss
-maybe-dvi-target-libgloss:
+.PHONY: maybe-install-info-bzip2 install-info-bzip2
+maybe-install-info-bzip2:
+@if bzip2
+maybe-install-info-bzip2: install-info-bzip2
 
-dvi-target-libgloss: \
-    configure-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+install-info-bzip2: \
+    configure-bzip2 \
+    info-bzip2 
+       @[ -f ./bzip2/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info 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}" \
-                 dvi) \
+                 install-info) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-libiberty dvi-target-libiberty
-maybe-dvi-target-libiberty:
+.PHONY: maybe-installcheck-bzip2 installcheck-bzip2
+maybe-installcheck-bzip2:
+@if bzip2
+maybe-installcheck-bzip2: installcheck-bzip2
 
-dvi-target-libiberty: \
-    configure-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+installcheck-bzip2: \
+    configure-bzip2 
+       @[ -f ./bzip2/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck 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}" \
-                 dvi) \
+                 installcheck) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-gperf dvi-target-gperf
-maybe-dvi-target-gperf:
+.PHONY: maybe-mostlyclean-bzip2 mostlyclean-bzip2
+maybe-mostlyclean-bzip2:
+@if bzip2
+maybe-mostlyclean-bzip2: mostlyclean-bzip2
 
-dvi-target-gperf: \
-    configure-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+mostlyclean-bzip2: 
+       @[ -f ./bzip2/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 dvi) \
+                 mostlyclean) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-examples dvi-target-examples
-maybe-dvi-target-examples:
+.PHONY: maybe-clean-bzip2 clean-bzip2
+maybe-clean-bzip2:
+@if bzip2
+maybe-clean-bzip2: clean-bzip2
 
-dvi-target-examples: \
-    configure-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+clean-bzip2: 
+       @[ -f ./bzip2/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean 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}" \
-                 dvi) \
+                 clean) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-libffi dvi-target-libffi
-maybe-dvi-target-libffi:
+.PHONY: maybe-distclean-bzip2 distclean-bzip2
+maybe-distclean-bzip2:
+@if bzip2
+maybe-distclean-bzip2: distclean-bzip2
 
-dvi-target-libffi: \
-    configure-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+distclean-bzip2: 
+       @[ -f ./bzip2/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean 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}" \
-                 dvi) \
+                 distclean) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-libjava dvi-target-libjava
-maybe-dvi-target-libjava:
+.PHONY: maybe-maintainer-clean-bzip2 maintainer-clean-bzip2
+maybe-maintainer-clean-bzip2:
+@if bzip2
+maybe-maintainer-clean-bzip2: maintainer-clean-bzip2
 
-dvi-target-libjava: \
-    configure-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+maintainer-clean-bzip2: 
+       @[ -f ./bzip2/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 dvi) \
+                 maintainer-clean) \
          || exit 1
 
+@endif bzip2
 
-.PHONY: maybe-dvi-target-zlib dvi-target-zlib
-maybe-dvi-target-zlib:
 
-dvi-target-zlib: \
-    configure-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+.PHONY: configure-dejagnu maybe-configure-dejagnu
+maybe-configure-dejagnu:
+@if dejagnu
+maybe-configure-dejagnu: configure-dejagnu
+configure-dejagnu:
+       @test ! -f dejagnu/Makefile || exit 0; \
+       [ -d dejagnu ] || mkdir dejagnu; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif dejagnu
+
+.PHONY: all-dejagnu maybe-all-dejagnu
+maybe-all-dejagnu:
+@if dejagnu
+maybe-all-dejagnu: all-dejagnu
+all-dejagnu: configure-dejagnu
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(HOST_EXPORTS) \
+       (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(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 info in dejagnu" ; \
+       (cd 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-target-boehm-gc dvi-target-boehm-gc
-maybe-dvi-target-boehm-gc:
+.PHONY: maybe-dvi-dejagnu dvi-dejagnu
+maybe-dvi-dejagnu:
+@if dejagnu
+maybe-dvi-dejagnu: dvi-dejagnu
 
-dvi-target-boehm-gc: \
-    configure-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+dvi-dejagnu: \
+    configure-dejagnu 
+       @[ -f ./dejagnu/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi in dejagnu" ; \
+       (cd dejagnu && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -4413,310 +5611,327 @@ dvi-target-boehm-gc: \
                  dvi) \
          || exit 1
 
+@endif dejagnu
 
-.PHONY: maybe-dvi-target-qthreads dvi-target-qthreads
-maybe-dvi-target-qthreads:
+.PHONY: maybe-TAGS-dejagnu TAGS-dejagnu
+maybe-TAGS-dejagnu:
+@if dejagnu
+maybe-TAGS-dejagnu: TAGS-dejagnu
 
-dvi-target-qthreads: \
-    configure-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+TAGS-dejagnu: \
+    configure-dejagnu 
+       @[ -f ./dejagnu/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dejagnu" ; \
+       (cd 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-target-rda dvi-target-rda
-maybe-dvi-target-rda:
+.PHONY: maybe-install-info-dejagnu install-info-dejagnu
+maybe-install-info-dejagnu:
+@if dejagnu
+maybe-install-info-dejagnu: install-info-dejagnu
 
-dvi-target-rda: \
-    configure-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+install-info-dejagnu: \
+    configure-dejagnu \
+    info-dejagnu 
+       @[ -f ./dejagnu/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing dvi in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dejagnu" ; \
+       (cd 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: do-TAGS
-do-TAGS: TAGS-host TAGS-target
-
-.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
-
-# GCC, the eternal special case
-.PHONY: maybe-TAGS-gcc TAGS-gcc
-maybe-TAGS-gcc:
-TAGS-gcc: \
-    configure-gcc 
-       @[ -f ./gcc/Makefile ] || exit 0; \
+.PHONY: maybe-installcheck-dejagnu installcheck-dejagnu
+maybe-installcheck-dejagnu:
+@if dejagnu
+maybe-installcheck-dejagnu: installcheck-dejagnu
+
+installcheck-dejagnu: \
+    configure-dejagnu 
+       @[ -f ./dejagnu/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+       $(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 installcheck in dejagnu" ; \
+       (cd dejagnu && \
          $(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
 
-# Host modules.
+@endif dejagnu
 
-.PHONY: maybe-TAGS-ash TAGS-ash
-maybe-TAGS-ash:
+.PHONY: maybe-mostlyclean-dejagnu mostlyclean-dejagnu
+maybe-mostlyclean-dejagnu:
+@if dejagnu
+maybe-mostlyclean-dejagnu: mostlyclean-dejagnu
 
-TAGS-ash: \
-    configure-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
+mostlyclean-dejagnu: 
+       @[ -f ./dejagnu/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in dejagnu" ; \
+       (cd dejagnu && \
          $(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 dejagnu
 
-.PHONY: maybe-TAGS-autoconf TAGS-autoconf
-maybe-TAGS-autoconf:
+.PHONY: maybe-clean-dejagnu clean-dejagnu
+maybe-clean-dejagnu:
+@if dejagnu
+maybe-clean-dejagnu: clean-dejagnu
 
-TAGS-autoconf: \
-    configure-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
+clean-dejagnu: 
+       @[ -f ./dejagnu/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in dejagnu" ; \
+       (cd dejagnu && \
          $(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 dejagnu
 
-.PHONY: maybe-TAGS-automake TAGS-automake
-maybe-TAGS-automake:
+.PHONY: maybe-distclean-dejagnu distclean-dejagnu
+maybe-distclean-dejagnu:
+@if dejagnu
+maybe-distclean-dejagnu: distclean-dejagnu
 
-TAGS-automake: \
-    configure-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
+distclean-dejagnu: 
+       @[ -f ./dejagnu/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in dejagnu" ; \
+       (cd dejagnu && \
          $(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 dejagnu
 
-.PHONY: maybe-TAGS-bash TAGS-bash
-maybe-TAGS-bash:
+.PHONY: maybe-maintainer-clean-dejagnu maintainer-clean-dejagnu
+maybe-maintainer-clean-dejagnu:
+@if dejagnu
+maybe-maintainer-clean-dejagnu: maintainer-clean-dejagnu
 
-TAGS-bash: \
-    configure-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
+maintainer-clean-dejagnu: 
+       @[ -f ./dejagnu/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in dejagnu" ; \
+       (cd dejagnu && \
          $(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 dejagnu
 
-.PHONY: maybe-TAGS-bfd TAGS-bfd
-maybe-TAGS-bfd:
 
-TAGS-bfd: \
-    configure-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
+.PHONY: configure-diff maybe-configure-diff
+maybe-configure-diff:
+@if diff
+maybe-configure-diff: configure-diff
+configure-diff:
+       @test ! -f diff/Makefile || exit 0; \
+       [ -d diff ] || mkdir diff; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif diff
+
+.PHONY: all-diff maybe-all-diff
+maybe-all-diff:
+@if diff
+maybe-all-diff: all-diff
+all-diff: configure-diff
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd diff && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in diff" ; \
+       (cd diff && \
          $(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 diff
 
-.PHONY: maybe-TAGS-opcodes TAGS-opcodes
-maybe-TAGS-opcodes:
+.PHONY: maybe-dvi-diff dvi-diff
+maybe-dvi-diff:
+@if diff
+maybe-dvi-diff: dvi-diff
 
-TAGS-opcodes: \
-    configure-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
+dvi-diff: \
+    configure-diff 
+       @[ -f ./diff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in diff" ; \
+       (cd diff && \
          $(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 diff
 
-.PHONY: maybe-TAGS-binutils TAGS-binutils
-maybe-TAGS-binutils:
+.PHONY: maybe-TAGS-diff TAGS-diff
+maybe-TAGS-diff:
+@if diff
+maybe-TAGS-diff: TAGS-diff
 
-TAGS-binutils: \
-    configure-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
+TAGS-diff: \
+    configure-diff 
+       @[ -f ./diff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in diff" ; \
+       (cd diff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -4724,119 +5939,283 @@ TAGS-binutils: \
                  TAGS) \
          || exit 1
 
+@endif diff
 
-.PHONY: maybe-TAGS-bison TAGS-bison
-maybe-TAGS-bison:
+.PHONY: maybe-install-info-diff install-info-diff
+maybe-install-info-diff:
+@if diff
+maybe-install-info-diff: install-info-diff
+
+install-info-diff: \
+    configure-diff \
+    info-diff 
+       @[ -f ./diff/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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 && \
+         $(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 diff
+
+.PHONY: maybe-installcheck-diff installcheck-diff
+maybe-installcheck-diff:
+@if diff
+maybe-installcheck-diff: installcheck-diff
+
+installcheck-diff: \
+    configure-diff 
+       @[ -f ./diff/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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 && \
+         $(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 diff
+
+.PHONY: maybe-mostlyclean-diff mostlyclean-diff
+maybe-mostlyclean-diff:
+@if diff
+maybe-mostlyclean-diff: mostlyclean-diff
+
+mostlyclean-diff: 
+       @[ -f ./diff/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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 && \
+         $(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 diff
+
+.PHONY: maybe-clean-diff clean-diff
+maybe-clean-diff:
+@if diff
+maybe-clean-diff: clean-diff
 
-TAGS-bison: \
-    configure-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
+clean-diff: 
+       @[ -f ./diff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in diff" ; \
+       (cd diff && \
          $(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 diff
 
-.PHONY: maybe-TAGS-byacc TAGS-byacc
-maybe-TAGS-byacc:
+.PHONY: maybe-distclean-diff distclean-diff
+maybe-distclean-diff:
+@if diff
+maybe-distclean-diff: distclean-diff
 
-TAGS-byacc: \
-    configure-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
+distclean-diff: 
+       @[ -f ./diff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in diff" ; \
+       (cd diff && \
          $(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 diff
 
-.PHONY: maybe-TAGS-bzip2 TAGS-bzip2
-maybe-TAGS-bzip2:
+.PHONY: maybe-maintainer-clean-diff maintainer-clean-diff
+maybe-maintainer-clean-diff:
+@if diff
+maybe-maintainer-clean-diff: maintainer-clean-diff
 
-TAGS-bzip2: \
-    configure-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
+maintainer-clean-diff: 
+       @[ -f ./diff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing maintainer-clean in diff" ; \
+       (cd diff && \
          $(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 diff
 
-.PHONY: maybe-TAGS-dejagnu TAGS-dejagnu
-maybe-TAGS-dejagnu:
 
-TAGS-dejagnu: \
-    configure-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
+.PHONY: configure-dosutils maybe-configure-dosutils
+maybe-configure-dosutils:
+@if dosutils
+maybe-configure-dosutils: configure-dosutils
+configure-dosutils:
+       @test ! -f dosutils/Makefile || exit 0; \
+       [ -d dosutils ] || mkdir dosutils; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif dosutils
+
+.PHONY: all-dosutils maybe-all-dosutils
+maybe-all-dosutils:
+@if dosutils
+maybe-all-dosutils: all-dosutils
+all-dosutils: configure-dosutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd dosutils && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif dosutils
+
+.PHONY: check-dosutils maybe-check-dosutils
+maybe-check-dosutils:
+@if dosutils
+maybe-check-dosutils: check-dosutils
+
+check-dosutils:
+
+@endif dosutils
+
+.PHONY: install-dosutils maybe-install-dosutils
+maybe-install-dosutils:
+@if dosutils
+maybe-install-dosutils: install-dosutils
+
+install-dosutils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) install)
+
+@endif dosutils
+
+# Other targets (info, dvi, etc.)
+
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dosutils" ; \
+       (cd dosutils && \
          $(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 dosutils
 
-.PHONY: maybe-TAGS-diff TAGS-diff
-maybe-TAGS-diff:
+.PHONY: maybe-dvi-dosutils dvi-dosutils
+maybe-dvi-dosutils:
+@if dosutils
+maybe-dvi-dosutils: dvi-dosutils
 
-TAGS-diff: \
-    configure-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
+dvi-dosutils: \
+    configure-dosutils 
+       @[ -f ./dosutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dosutils" ; \
+       (cd dosutils && \
          $(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 dosutils
 
 .PHONY: maybe-TAGS-dosutils TAGS-dosutils
 maybe-TAGS-dosutils:
+@if dosutils
+maybe-TAGS-dosutils: TAGS-dosutils
 
 TAGS-dosutils: \
     configure-dosutils 
@@ -4844,7 +6223,8 @@ TAGS-dosutils: \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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" ; \
@@ -4856,263 +6236,301 @@ TAGS-dosutils: \
                  TAGS) \
          || exit 1
 
+@endif dosutils
 
-.PHONY: maybe-TAGS-etc TAGS-etc
-maybe-TAGS-etc:
+.PHONY: maybe-install-info-dosutils install-info-dosutils
+maybe-install-info-dosutils:
+@if dosutils
+maybe-install-info-dosutils: install-info-dosutils
 
-TAGS-etc: \
-    configure-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
+install-info-dosutils: \
+    configure-dosutils \
+    info-dosutils 
+       @[ -f ./dosutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in dosutils" ; \
+       (cd dosutils && \
          $(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 dosutils
 
-.PHONY: maybe-TAGS-fastjar TAGS-fastjar
-maybe-TAGS-fastjar:
+.PHONY: maybe-installcheck-dosutils installcheck-dosutils
+maybe-installcheck-dosutils:
+@if dosutils
+maybe-installcheck-dosutils: installcheck-dosutils
 
-TAGS-fastjar: \
-    configure-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
+installcheck-dosutils: \
+    configure-dosutils 
+       @[ -f ./dosutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in dosutils" ; \
+       (cd dosutils && \
          $(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 dosutils
 
-.PHONY: maybe-TAGS-fileutils TAGS-fileutils
-maybe-TAGS-fileutils:
+.PHONY: maybe-mostlyclean-dosutils mostlyclean-dosutils
+maybe-mostlyclean-dosutils:
+@if dosutils
+maybe-mostlyclean-dosutils: mostlyclean-dosutils
 
-TAGS-fileutils: \
-    configure-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
+mostlyclean-dosutils: 
+       @[ -f ./dosutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in dosutils" ; \
+       (cd dosutils && \
          $(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 dosutils
 
-.PHONY: maybe-TAGS-findutils TAGS-findutils
-maybe-TAGS-findutils:
+.PHONY: maybe-clean-dosutils clean-dosutils
+maybe-clean-dosutils:
+@if dosutils
+maybe-clean-dosutils: clean-dosutils
 
-TAGS-findutils: \
-    configure-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
+clean-dosutils: 
+       @[ -f ./dosutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in dosutils" ; \
+       (cd dosutils && \
          $(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 dosutils
 
-.PHONY: maybe-TAGS-find TAGS-find
-maybe-TAGS-find:
+.PHONY: maybe-distclean-dosutils distclean-dosutils
+maybe-distclean-dosutils:
+@if dosutils
+maybe-distclean-dosutils: distclean-dosutils
 
-TAGS-find: \
-    configure-find 
-       @[ -f ./find/Makefile ] || exit 0; \
+distclean-dosutils: 
+       @[ -f ./dosutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in dosutils" ; \
+       (cd dosutils && \
          $(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 dosutils
 
-.PHONY: maybe-TAGS-flex TAGS-flex
-maybe-TAGS-flex:
+.PHONY: maybe-maintainer-clean-dosutils maintainer-clean-dosutils
+maybe-maintainer-clean-dosutils:
+@if dosutils
+maybe-maintainer-clean-dosutils: maintainer-clean-dosutils
 
-TAGS-flex: \
-    configure-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
+maintainer-clean-dosutils: 
+       @[ -f ./dosutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in dosutils" ; \
+       (cd dosutils && \
          $(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 dosutils
 
-.PHONY: maybe-TAGS-gas TAGS-gas
-maybe-TAGS-gas:
 
-TAGS-gas: \
-    configure-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
+.PHONY: configure-etc maybe-configure-etc
+maybe-configure-etc:
+@if etc
+maybe-configure-etc: configure-etc
+configure-etc:
+       @test ! -f etc/Makefile || exit 0; \
+       [ -d etc ] || mkdir etc; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 TAGS) \
+       $(HOST_EXPORTS) \
+       echo Configuring in etc; \
+       cd etc || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif etc
 
+.PHONY: all-etc maybe-all-etc
+maybe-all-etc:
+@if etc
+maybe-all-etc: all-etc
+all-etc: configure-etc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd etc && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif etc
 
-.PHONY: maybe-TAGS-gawk TAGS-gawk
-maybe-TAGS-gawk:
+.PHONY: check-etc maybe-check-etc
+maybe-check-etc:
+@if etc
+maybe-check-etc: check-etc
 
-TAGS-gawk: \
-    configure-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-etc:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gawk" ; \
-       (cd 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) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd etc && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif etc
 
-.PHONY: maybe-TAGS-gettext TAGS-gettext
-maybe-TAGS-gettext:
+.PHONY: install-etc maybe-install-etc
+maybe-install-etc:
+@if etc
+maybe-install-etc: install-etc
 
-TAGS-gettext: \
-    configure-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-etc: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gettext" ; \
-       (cd 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) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd etc && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif etc
 
-.PHONY: maybe-TAGS-gnuserv TAGS-gnuserv
-maybe-TAGS-gnuserv:
+# Other targets (info, dvi, etc.)
 
-TAGS-gnuserv: \
-    configure-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in etc" ; \
+       (cd etc && \
          $(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 etc
 
-.PHONY: maybe-TAGS-gprof TAGS-gprof
-maybe-TAGS-gprof:
+.PHONY: maybe-dvi-etc dvi-etc
+maybe-dvi-etc:
+@if etc
+maybe-dvi-etc: dvi-etc
 
-TAGS-gprof: \
-    configure-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
+dvi-etc: \
+    configure-etc 
+       @[ -f ./etc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in etc" ; \
+       (cd etc && \
          $(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 etc
 
-.PHONY: maybe-TAGS-gzip TAGS-gzip
-maybe-TAGS-gzip:
+.PHONY: maybe-TAGS-etc TAGS-etc
+maybe-TAGS-etc:
+@if etc
+maybe-TAGS-etc: TAGS-etc
 
-TAGS-gzip: \
-    configure-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
+TAGS-etc: \
+    configure-etc 
+       @[ -f ./etc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in etc" ; \
+       (cd etc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5120,241 +6538,304 @@ TAGS-gzip: \
                  TAGS) \
          || exit 1
 
+@endif etc
 
-.PHONY: maybe-TAGS-hello TAGS-hello
-maybe-TAGS-hello:
+.PHONY: maybe-install-info-etc install-info-etc
+maybe-install-info-etc:
+@if etc
+maybe-install-info-etc: install-info-etc
 
-TAGS-hello: \
-    configure-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
+install-info-etc: \
+    configure-etc \
+    info-etc 
+       @[ -f ./etc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing install-info in etc" ; \
+       (cd etc && \
          $(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 etc
 
-.PHONY: maybe-TAGS-indent TAGS-indent
-maybe-TAGS-indent:
+.PHONY: maybe-installcheck-etc installcheck-etc
+maybe-installcheck-etc:
+@if etc
+maybe-installcheck-etc: installcheck-etc
 
-TAGS-indent: \
-    configure-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
+installcheck-etc: \
+    configure-etc 
+       @[ -f ./etc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in etc" ; \
+       (cd etc && \
          $(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 etc
 
-.PHONY: maybe-TAGS-intl TAGS-intl
-maybe-TAGS-intl:
+.PHONY: maybe-mostlyclean-etc mostlyclean-etc
+maybe-mostlyclean-etc:
+@if etc
+maybe-mostlyclean-etc: mostlyclean-etc
 
-TAGS-intl: \
-    configure-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
+mostlyclean-etc: 
+       @[ -f ./etc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in etc" ; \
+       (cd etc && \
          $(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 etc
 
-.PHONY: maybe-TAGS-tcl TAGS-tcl
-maybe-TAGS-tcl:
+.PHONY: maybe-clean-etc clean-etc
+maybe-clean-etc:
+@if etc
+maybe-clean-etc: clean-etc
 
-TAGS-tcl: \
-    configure-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
+clean-etc: 
+       @[ -f ./etc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in etc" ; \
+       (cd etc && \
          $(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 etc
 
-.PHONY: maybe-TAGS-itcl TAGS-itcl
-maybe-TAGS-itcl:
+.PHONY: maybe-distclean-etc distclean-etc
+maybe-distclean-etc:
+@if etc
+maybe-distclean-etc: distclean-etc
 
-TAGS-itcl: \
-    configure-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
+distclean-etc: 
+       @[ -f ./etc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in etc" ; \
+       (cd etc && \
          $(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 etc
 
-.PHONY: maybe-TAGS-ld TAGS-ld
-maybe-TAGS-ld:
+.PHONY: maybe-maintainer-clean-etc maintainer-clean-etc
+maybe-maintainer-clean-etc:
+@if etc
+maybe-maintainer-clean-etc: maintainer-clean-etc
 
-TAGS-ld: \
-    configure-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
+maintainer-clean-etc: 
+       @[ -f ./etc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in etc" ; \
+       (cd etc && \
          $(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 etc
 
-.PHONY: maybe-TAGS-libgui TAGS-libgui
-maybe-TAGS-libgui:
 
-TAGS-libgui: \
-    configure-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
+.PHONY: configure-fastjar maybe-configure-fastjar
+maybe-configure-fastjar:
+@if fastjar
+maybe-configure-fastjar: configure-fastjar
+configure-fastjar:
+       @test ! -f fastjar/Makefile || exit 0; \
+       [ -d fastjar ] || mkdir fastjar; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 TAGS) \
+       $(HOST_EXPORTS) \
+       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
+@endif fastjar
 
+.PHONY: all-fastjar maybe-all-fastjar
+maybe-all-fastjar:
+@if fastjar
+maybe-all-fastjar: all-fastjar
+all-fastjar: configure-fastjar
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd fastjar && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif fastjar
 
-.PHONY: maybe-TAGS-libiberty TAGS-libiberty
-maybe-TAGS-libiberty:
+.PHONY: check-fastjar maybe-check-fastjar
+maybe-check-fastjar:
+@if fastjar
+maybe-check-fastjar: check-fastjar
 
-TAGS-libiberty: \
-    configure-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+# 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; \
+         $(SET_LIB_PATH) \
+         $(HOST_EXPORTS) \
+         (cd 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
+
+install-fastjar: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 libiberty" ; \
-       (cd 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
+       $(HOST_EXPORTS) \
+       (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) install)
+
+@endif fastjar
 
+# Other targets (info, dvi, etc.)
 
-.PHONY: maybe-TAGS-libtool TAGS-libtool
-maybe-TAGS-libtool:
+.PHONY: maybe-info-fastjar info-fastjar
+maybe-info-fastjar:
+@if fastjar
+maybe-info-fastjar: info-fastjar
 
-TAGS-libtool: \
-    configure-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
+info-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in fastjar" ; \
+       (cd fastjar && \
          $(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 fastjar
 
-.PHONY: maybe-TAGS-m4 TAGS-m4
-maybe-TAGS-m4:
+.PHONY: maybe-dvi-fastjar dvi-fastjar
+maybe-dvi-fastjar:
+@if fastjar
+maybe-dvi-fastjar: dvi-fastjar
 
-TAGS-m4: \
-    configure-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
+dvi-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in fastjar" ; \
+       (cd fastjar && \
          $(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 fastjar
 
-.PHONY: maybe-TAGS-make TAGS-make
-maybe-TAGS-make:
+.PHONY: maybe-TAGS-fastjar TAGS-fastjar
+maybe-TAGS-fastjar:
+@if fastjar
+maybe-TAGS-fastjar: TAGS-fastjar
 
-TAGS-make: \
-    configure-make 
-       @[ -f ./make/Makefile ] || exit 0; \
+TAGS-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in fastjar" ; \
+       (cd fastjar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5362,219 +6843,301 @@ TAGS-make: \
                  TAGS) \
          || exit 1
 
+@endif fastjar
 
-.PHONY: maybe-TAGS-mmalloc TAGS-mmalloc
-maybe-TAGS-mmalloc:
+.PHONY: maybe-install-info-fastjar install-info-fastjar
+maybe-install-info-fastjar:
+@if fastjar
+maybe-install-info-fastjar: install-info-fastjar
 
-TAGS-mmalloc: \
-    configure-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
+install-info-fastjar: \
+    configure-fastjar \
+    info-fastjar 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing install-info in fastjar" ; \
+       (cd fastjar && \
          $(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 fastjar
 
-.PHONY: maybe-TAGS-patch TAGS-patch
-maybe-TAGS-patch:
+.PHONY: maybe-installcheck-fastjar installcheck-fastjar
+maybe-installcheck-fastjar:
+@if fastjar
+maybe-installcheck-fastjar: installcheck-fastjar
 
-TAGS-patch: \
-    configure-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
+installcheck-fastjar: \
+    configure-fastjar 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in fastjar" ; \
+       (cd fastjar && \
          $(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 fastjar
 
-.PHONY: maybe-TAGS-perl TAGS-perl
-maybe-TAGS-perl:
+.PHONY: maybe-mostlyclean-fastjar mostlyclean-fastjar
+maybe-mostlyclean-fastjar:
+@if fastjar
+maybe-mostlyclean-fastjar: mostlyclean-fastjar
 
-TAGS-perl: \
-    configure-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
+mostlyclean-fastjar: 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in fastjar" ; \
+       (cd fastjar && \
          $(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 fastjar
 
-.PHONY: maybe-TAGS-prms TAGS-prms
-maybe-TAGS-prms:
+.PHONY: maybe-clean-fastjar clean-fastjar
+maybe-clean-fastjar:
+@if fastjar
+maybe-clean-fastjar: clean-fastjar
 
-TAGS-prms: \
-    configure-prms 
-       @[ -f ./prms/Makefile ] || exit 0; \
+clean-fastjar: 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in fastjar" ; \
+       (cd fastjar && \
          $(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 fastjar
 
-.PHONY: maybe-TAGS-rcs TAGS-rcs
-maybe-TAGS-rcs:
+.PHONY: maybe-distclean-fastjar distclean-fastjar
+maybe-distclean-fastjar:
+@if fastjar
+maybe-distclean-fastjar: distclean-fastjar
 
-TAGS-rcs: \
-    configure-rcs 
-       @[ -f ./rcs/Makefile ] || exit 0; \
+distclean-fastjar: 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in fastjar" ; \
+       (cd fastjar && \
          $(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 fastjar
 
-.PHONY: maybe-TAGS-readline TAGS-readline
-maybe-TAGS-readline:
+.PHONY: maybe-maintainer-clean-fastjar maintainer-clean-fastjar
+maybe-maintainer-clean-fastjar:
+@if fastjar
+maybe-maintainer-clean-fastjar: maintainer-clean-fastjar
 
-TAGS-readline: \
-    configure-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
+maintainer-clean-fastjar: 
+       @[ -f ./fastjar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in fastjar" ; \
+       (cd fastjar && \
          $(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 fastjar
 
-.PHONY: maybe-TAGS-release TAGS-release
-maybe-TAGS-release:
 
-TAGS-release: \
-    configure-release 
-       @[ -f ./release/Makefile ] || exit 0; \
+.PHONY: configure-fileutils maybe-configure-fileutils
+maybe-configure-fileutils:
+@if fileutils
+maybe-configure-fileutils: configure-fileutils
+configure-fileutils:
+       @test ! -f fileutils/Makefile || exit 0; \
+       [ -d fileutils ] || mkdir fileutils; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 TAGS) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif fileutils
+
+.PHONY: all-fileutils maybe-all-fileutils
+maybe-all-fileutils:
+@if fileutils
+maybe-all-fileutils: all-fileutils
+all-fileutils: configure-fileutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd fileutils && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif fileutils
 
+.PHONY: check-fileutils maybe-check-fileutils
+maybe-check-fileutils:
+@if fileutils
+maybe-check-fileutils: check-fileutils
 
-.PHONY: maybe-TAGS-recode TAGS-recode
-maybe-TAGS-recode:
+check-fileutils:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) check)
 
-TAGS-recode: \
-    configure-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in fileutils" ; \
+       (cd fileutils && \
          $(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 fileutils
 
-.PHONY: maybe-TAGS-sed TAGS-sed
-maybe-TAGS-sed:
+.PHONY: maybe-dvi-fileutils dvi-fileutils
+maybe-dvi-fileutils:
+@if fileutils
+maybe-dvi-fileutils: dvi-fileutils
 
-TAGS-sed: \
-    configure-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
+dvi-fileutils: \
+    configure-fileutils 
+       @[ -f ./fileutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in fileutils" ; \
+       (cd fileutils && \
          $(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 fileutils
 
-.PHONY: maybe-TAGS-send-pr TAGS-send-pr
-maybe-TAGS-send-pr:
+.PHONY: maybe-TAGS-fileutils TAGS-fileutils
+maybe-TAGS-fileutils:
+@if fileutils
+maybe-TAGS-fileutils: TAGS-fileutils
 
-TAGS-send-pr: \
-    configure-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
+TAGS-fileutils: \
+    configure-fileutils 
+       @[ -f ./fileutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in fileutils" ; \
+       (cd fileutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5582,197 +7145,301 @@ TAGS-send-pr: \
                  TAGS) \
          || exit 1
 
+@endif fileutils
 
-.PHONY: maybe-TAGS-shellutils TAGS-shellutils
-maybe-TAGS-shellutils:
+.PHONY: maybe-install-info-fileutils install-info-fileutils
+maybe-install-info-fileutils:
+@if fileutils
+maybe-install-info-fileutils: install-info-fileutils
 
-TAGS-shellutils: \
-    configure-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
+install-info-fileutils: \
+    configure-fileutils \
+    info-fileutils 
+       @[ -f ./fileutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in fileutils" ; \
+       (cd fileutils && \
          $(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 fileutils
 
-.PHONY: maybe-TAGS-sid TAGS-sid
-maybe-TAGS-sid:
+.PHONY: maybe-installcheck-fileutils installcheck-fileutils
+maybe-installcheck-fileutils:
+@if fileutils
+maybe-installcheck-fileutils: installcheck-fileutils
 
-TAGS-sid: \
-    configure-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
+installcheck-fileutils: \
+    configure-fileutils 
+       @[ -f ./fileutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing installcheck in fileutils" ; \
+       (cd fileutils && \
          $(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 fileutils
 
-.PHONY: maybe-TAGS-sim TAGS-sim
-maybe-TAGS-sim:
+.PHONY: maybe-mostlyclean-fileutils mostlyclean-fileutils
+maybe-mostlyclean-fileutils:
+@if fileutils
+maybe-mostlyclean-fileutils: mostlyclean-fileutils
 
-TAGS-sim: \
-    configure-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
+mostlyclean-fileutils: 
+       @[ -f ./fileutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in sim" ; \
-       (cd sim && \
+       echo "Doing mostlyclean in fileutils" ; \
+       (cd fileutils && \
          $(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 fileutils
 
-.PHONY: maybe-TAGS-tar TAGS-tar
-maybe-TAGS-tar:
+.PHONY: maybe-clean-fileutils clean-fileutils
+maybe-clean-fileutils:
+@if fileutils
+maybe-clean-fileutils: clean-fileutils
 
-TAGS-tar: \
-    configure-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
+clean-fileutils: 
+       @[ -f ./fileutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in tar" ; \
-       (cd tar && \
+       echo "Doing clean in fileutils" ; \
+       (cd fileutils && \
          $(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 fileutils
 
-.PHONY: maybe-TAGS-texinfo TAGS-texinfo
-maybe-TAGS-texinfo:
+.PHONY: maybe-distclean-fileutils distclean-fileutils
+maybe-distclean-fileutils:
+@if fileutils
+maybe-distclean-fileutils: distclean-fileutils
 
-TAGS-texinfo: \
-    configure-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+distclean-fileutils: 
+       @[ -f ./fileutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in texinfo" ; \
-       (cd texinfo && \
+       echo "Doing distclean in fileutils" ; \
+       (cd fileutils && \
          $(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 fileutils
 
-.PHONY: maybe-TAGS-textutils TAGS-textutils
-maybe-TAGS-textutils:
+.PHONY: maybe-maintainer-clean-fileutils maintainer-clean-fileutils
+maybe-maintainer-clean-fileutils:
+@if fileutils
+maybe-maintainer-clean-fileutils: maintainer-clean-fileutils
 
-TAGS-textutils: \
-    configure-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
+maintainer-clean-fileutils: 
+       @[ -f ./fileutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in textutils" ; \
-       (cd textutils && \
+       echo "Doing maintainer-clean in fileutils" ; \
+       (cd fileutils && \
          $(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 fileutils
 
-.PHONY: maybe-TAGS-time TAGS-time
-maybe-TAGS-time:
 
-TAGS-time: \
-    configure-time 
-       @[ -f ./time/Makefile ] || exit 0; \
+.PHONY: configure-findutils maybe-configure-findutils
+maybe-configure-findutils:
+@if findutils
+maybe-configure-findutils: configure-findutils
+configure-findutils:
+       @test ! -f findutils/Makefile || exit 0; \
+       [ -d findutils ] || mkdir findutils; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif findutils
+
+.PHONY: all-findutils maybe-all-findutils
+maybe-all-findutils:
+@if findutils
+maybe-all-findutils: all-findutils
+all-findutils: configure-findutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd findutils && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif findutils
+
+.PHONY: check-findutils maybe-check-findutils
+maybe-check-findutils:
+@if findutils
+maybe-check-findutils: check-findutils
+
+check-findutils:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in time" ; \
-       (cd time && \
+       echo "Doing info in findutils" ; \
+       (cd 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
 
+@endif findutils
 
-.PHONY: maybe-TAGS-uudecode TAGS-uudecode
-maybe-TAGS-uudecode:
+.PHONY: maybe-dvi-findutils dvi-findutils
+maybe-dvi-findutils:
+@if findutils
+maybe-dvi-findutils: dvi-findutils
 
-TAGS-uudecode: \
-    configure-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
+dvi-findutils: \
+    configure-findutils 
+       @[ -f ./findutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in uudecode" ; \
-       (cd uudecode && \
+       echo "Doing dvi in findutils" ; \
+       (cd 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-wdiff TAGS-wdiff
-maybe-TAGS-wdiff:
+.PHONY: maybe-TAGS-findutils TAGS-findutils
+maybe-TAGS-findutils:
+@if findutils
+maybe-TAGS-findutils: TAGS-findutils
 
-TAGS-wdiff: \
-    configure-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
+TAGS-findutils: \
+    configure-findutils 
+       @[ -f ./findutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in wdiff" ; \
-       (cd wdiff && \
+       echo "Doing TAGS in findutils" ; \
+       (cd findutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5780,197 +7447,301 @@ TAGS-wdiff: \
                  TAGS) \
          || exit 1
 
+@endif findutils
 
-.PHONY: maybe-TAGS-zip TAGS-zip
-maybe-TAGS-zip:
+.PHONY: maybe-install-info-findutils install-info-findutils
+maybe-install-info-findutils:
+@if findutils
+maybe-install-info-findutils: install-info-findutils
 
-TAGS-zip: \
-    configure-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
+install-info-findutils: \
+    configure-findutils \
+    info-findutils 
+       @[ -f ./findutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in zip" ; \
-       (cd zip && \
+       echo "Doing install-info in findutils" ; \
+       (cd 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-zlib TAGS-zlib
-maybe-TAGS-zlib:
+.PHONY: maybe-installcheck-findutils installcheck-findutils
+maybe-installcheck-findutils:
+@if findutils
+maybe-installcheck-findutils: installcheck-findutils
 
-TAGS-zlib: \
-    configure-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
+installcheck-findutils: \
+    configure-findutils 
+       @[ -f ./findutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in zlib" ; \
-       (cd zlib && \
+       echo "Doing installcheck in findutils" ; \
+       (cd 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-gdb TAGS-gdb
-maybe-TAGS-gdb:
+.PHONY: maybe-mostlyclean-findutils mostlyclean-findutils
+maybe-mostlyclean-findutils:
+@if findutils
+maybe-mostlyclean-findutils: mostlyclean-findutils
 
-TAGS-gdb: \
-    configure-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
+mostlyclean-findutils: 
+       @[ -f ./findutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing TAGS in gdb" ; \
-       (cd gdb && \
+       echo "Doing mostlyclean in findutils" ; \
+       (cd 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-expect TAGS-expect
-maybe-TAGS-expect:
+.PHONY: maybe-clean-findutils clean-findutils
+maybe-clean-findutils:
+@if findutils
+maybe-clean-findutils: clean-findutils
 
-TAGS-expect: \
-    configure-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
+clean-findutils: 
+       @[ -f ./findutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in findutils" ; \
+       (cd 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-guile TAGS-guile
-maybe-TAGS-guile:
+.PHONY: maybe-distclean-findutils distclean-findutils
+maybe-distclean-findutils:
+@if findutils
+maybe-distclean-findutils: distclean-findutils
 
-TAGS-guile: \
-    configure-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
+distclean-findutils: 
+       @[ -f ./findutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 && \
+       done; \
+       echo "Doing distclean in findutils" ; \
+       (cd 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-tk TAGS-tk
-maybe-TAGS-tk:
+.PHONY: maybe-maintainer-clean-findutils maintainer-clean-findutils
+maybe-maintainer-clean-findutils:
+@if findutils
+maybe-maintainer-clean-findutils: maintainer-clean-findutils
 
-TAGS-tk: \
-    configure-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
+maintainer-clean-findutils: 
+       @[ -f ./findutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in findutils" ; \
+       (cd 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: configure-find maybe-configure-find
+maybe-configure-find:
+@if find
+maybe-configure-find: configure-find
+configure-find:
+       @test ! -f find/Makefile || exit 0; \
+       [ -d find ] || mkdir find; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif find
+
+.PHONY: all-find maybe-all-find
+maybe-all-find:
+@if find
+maybe-all-find: all-find
+all-find: configure-find
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd find && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd find && $(MAKE) $(FLAGS_TO_PASS) install)
+
+@endif find
 
+# Other targets (info, dvi, etc.)
 
-.PHONY: maybe-TAGS-tix TAGS-tix
-maybe-TAGS-tix:
+.PHONY: maybe-info-find info-find
+maybe-info-find:
+@if find
+maybe-info-find: info-find
 
-TAGS-tix: \
-    configure-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
+info-find: \
+    configure-find 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in find" ; \
+       (cd 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-libtermcap TAGS-libtermcap
-maybe-TAGS-libtermcap:
+.PHONY: maybe-dvi-find dvi-find
+maybe-dvi-find:
+@if find
+maybe-dvi-find: dvi-find
 
-TAGS-libtermcap: \
-    configure-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
+dvi-find: \
+    configure-find 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in find" ; \
+       (cd 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-utils TAGS-utils
-maybe-TAGS-utils:
+.PHONY: maybe-TAGS-find TAGS-find
+maybe-TAGS-find:
+@if find
+maybe-TAGS-find: TAGS-find
 
-TAGS-utils: \
-    configure-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
+TAGS-find: \
+    configure-find 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in find" ; \
+       (cd find && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -5978,222 +7749,304 @@ TAGS-utils: \
                  TAGS) \
          || exit 1
 
+@endif find
 
+.PHONY: maybe-install-info-find install-info-find
+maybe-install-info-find:
+@if find
+maybe-install-info-find: install-info-find
 
-# 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 ; \
+install-info-find: \
+    configure-find \
+    info-find 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info in find" ; \
+       (cd 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-target-newlib TAGS-target-newlib
-maybe-TAGS-target-newlib:
+.PHONY: maybe-installcheck-find installcheck-find
+maybe-installcheck-find:
+@if find
+maybe-installcheck-find: installcheck-find
 
-TAGS-target-newlib: \
-    configure-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+installcheck-find: \
+    configure-find 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck in find" ; \
+       (cd 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-target-libf2c TAGS-target-libf2c
-maybe-TAGS-target-libf2c:
+.PHONY: maybe-mostlyclean-find mostlyclean-find
+maybe-mostlyclean-find:
+@if find
+maybe-mostlyclean-find: mostlyclean-find
 
-TAGS-target-libf2c: \
-    configure-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
+mostlyclean-find: 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean in find" ; \
+       (cd 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-target-libobjc TAGS-target-libobjc
-maybe-TAGS-target-libobjc:
+.PHONY: maybe-clean-find clean-find
+maybe-clean-find:
+@if find
+maybe-clean-find: clean-find
 
-TAGS-target-libobjc: \
-    configure-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+clean-find: 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean in find" ; \
+       (cd 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-target-libtermcap TAGS-target-libtermcap
-maybe-TAGS-target-libtermcap:
+.PHONY: maybe-distclean-find distclean-find
+maybe-distclean-find:
+@if find
+maybe-distclean-find: distclean-find
 
-TAGS-target-libtermcap: \
-    configure-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+distclean-find: 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean in find" ; \
+       (cd 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-target-winsup TAGS-target-winsup
-maybe-TAGS-target-winsup:
+.PHONY: maybe-maintainer-clean-find maintainer-clean-find
+maybe-maintainer-clean-find:
+@if find
+maybe-maintainer-clean-find: maintainer-clean-find
 
-TAGS-target-winsup: \
-    configure-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+maintainer-clean-find: 
+       @[ -f ./find/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-clean in find" ; \
+       (cd 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: maybe-TAGS-target-libgloss TAGS-target-libgloss
-maybe-TAGS-target-libgloss:
 
-TAGS-target-libgloss: \
-    configure-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+.PHONY: configure-flex maybe-configure-flex
+maybe-configure-flex:
+@if flex
+maybe-configure-flex: configure-flex
+configure-flex:
+       @test ! -f flex/Makefile || exit 0; \
+       [ -d flex ] || mkdir flex; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in flex; \
+       cd flex || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif flex
+
+.PHONY: all-flex maybe-all-flex
+maybe-all-flex:
+@if flex
+maybe-all-flex: all-flex
+all-flex: configure-flex
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd flex && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+         $(SET_LIB_PATH) \
+         $(HOST_EXPORTS) \
+         (cd 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; \
        $(SET_LIB_PATH) \
-       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
+       $(HOST_EXPORTS) \
+       (cd flex && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif flex
 
-.PHONY: maybe-TAGS-target-libiberty TAGS-target-libiberty
-maybe-TAGS-target-libiberty:
+# Other targets (info, dvi, etc.)
 
-TAGS-target-libiberty: \
-    configure-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+.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; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 info in flex" ; \
+       (cd 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-target-gperf TAGS-target-gperf
-maybe-TAGS-target-gperf:
+.PHONY: maybe-dvi-flex dvi-flex
+maybe-dvi-flex:
+@if flex
+maybe-dvi-flex: dvi-flex
 
-TAGS-target-gperf: \
-    configure-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+dvi-flex: \
+    configure-flex 
+       @[ -f ./flex/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi in flex" ; \
+       (cd 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-target-examples TAGS-target-examples
-maybe-TAGS-target-examples:
+.PHONY: maybe-TAGS-flex TAGS-flex
+maybe-TAGS-flex:
+@if flex
+maybe-TAGS-flex: TAGS-flex
 
-TAGS-target-examples: \
-    configure-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+TAGS-flex: \
+    configure-flex 
+       @[ -f ./flex/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 TAGS in flex" ; \
+       (cd flex && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -6201,314 +8054,330 @@ TAGS-target-examples: \
                  TAGS) \
          || exit 1
 
+@endif flex
 
-.PHONY: maybe-TAGS-target-libffi TAGS-target-libffi
-maybe-TAGS-target-libffi:
+.PHONY: maybe-install-info-flex install-info-flex
+maybe-install-info-flex:
+@if flex
+maybe-install-info-flex: install-info-flex
 
-TAGS-target-libffi: \
-    configure-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+install-info-flex: \
+    configure-flex \
+    info-flex 
+       @[ -f ./flex/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info in flex" ; \
+       (cd 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-target-libjava TAGS-target-libjava
-maybe-TAGS-target-libjava:
+.PHONY: maybe-installcheck-flex installcheck-flex
+maybe-installcheck-flex:
+@if flex
+maybe-installcheck-flex: installcheck-flex
 
-TAGS-target-libjava: \
-    configure-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+installcheck-flex: \
+    configure-flex 
+       @[ -f ./flex/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck in flex" ; \
+       (cd 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-target-zlib TAGS-target-zlib
-maybe-TAGS-target-zlib:
+.PHONY: maybe-mostlyclean-flex mostlyclean-flex
+maybe-mostlyclean-flex:
+@if flex
+maybe-mostlyclean-flex: mostlyclean-flex
 
-TAGS-target-zlib: \
-    configure-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+mostlyclean-flex: 
+       @[ -f ./flex/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean in flex" ; \
+       (cd 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-target-boehm-gc TAGS-target-boehm-gc
-maybe-TAGS-target-boehm-gc:
+.PHONY: maybe-clean-flex clean-flex
+maybe-clean-flex:
+@if flex
+maybe-clean-flex: clean-flex
 
-TAGS-target-boehm-gc: \
-    configure-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+clean-flex: 
+       @[ -f ./flex/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean in flex" ; \
+       (cd 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-target-qthreads TAGS-target-qthreads
-maybe-TAGS-target-qthreads:
+.PHONY: maybe-distclean-flex distclean-flex
+maybe-distclean-flex:
+@if flex
+maybe-distclean-flex: distclean-flex
 
-TAGS-target-qthreads: \
-    configure-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+distclean-flex: 
+       @[ -f ./flex/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean in flex" ; \
+       (cd 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-target-rda TAGS-target-rda
-maybe-TAGS-target-rda:
+.PHONY: maybe-maintainer-clean-flex maintainer-clean-flex
+maybe-maintainer-clean-flex:
+@if flex
+maybe-maintainer-clean-flex: maintainer-clean-flex
 
-TAGS-target-rda: \
-    configure-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+maintainer-clean-flex: 
+       @[ -f ./flex/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing TAGS in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-clean in flex" ; \
+       (cd 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: do-install-info
-do-install-info: install-info-host install-info-target
+.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 gas/Makefile || exit 0; \
+       [ -d gas ] || mkdir gas; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif gas
 
-.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
+.PHONY: all-gas maybe-all-gas
+maybe-all-gas:
+@if gas
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gas && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif gas
+
+.PHONY: check-gas maybe-check-gas
+maybe-check-gas:
+@if gas
+maybe-check-gas: check-gas
 
-.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
+check-gas:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gas && $(MAKE) $(FLAGS_TO_PASS) check)
 
-# 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; \
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gas && $(MAKE) $(FLAGS_TO_PASS) install)
+
+@endif gas
+
+# 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+       $(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 info 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}" \
-                 install-info) \
+                 info) \
          || exit 1
 
-# Host modules.
+@endif gas
 
-.PHONY: maybe-install-info-ash install-info-ash
-maybe-install-info-ash:
+.PHONY: maybe-dvi-gas dvi-gas
+maybe-dvi-gas:
+@if gas
+maybe-dvi-gas: dvi-gas
 
-install-info-ash: \
-    configure-ash \
-    info-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
+dvi-gas: \
+    configure-gas 
+       @[ -f ./gas/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi 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}" \
-                 install-info) \
+                 dvi) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-install-info-autoconf install-info-autoconf
-maybe-install-info-autoconf:
+.PHONY: maybe-TAGS-gas TAGS-gas
+maybe-TAGS-gas:
+@if gas
+maybe-TAGS-gas: TAGS-gas
 
-install-info-autoconf: \
-    configure-autoconf \
-    info-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
+TAGS-gas: \
+    configure-gas 
+       @[ -f ./gas/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 install-info) \
+                 TAGS) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-install-info-automake install-info-automake
-maybe-install-info-automake:
+.PHONY: maybe-install-info-gas install-info-gas
+maybe-install-info-gas:
+@if gas
+maybe-install-info-gas: install-info-gas
 
-install-info-automake: \
-    configure-automake \
-    info-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
+install-info-gas: \
+    configure-gas \
+    info-gas 
+       @[ -f ./gas/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in gas" ; \
+       (cd gas && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -6516,206 +8385,304 @@ install-info-automake: \
                  install-info) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-install-info-bash install-info-bash
-maybe-install-info-bash:
+.PHONY: maybe-installcheck-gas installcheck-gas
+maybe-installcheck-gas:
+@if gas
+maybe-installcheck-gas: installcheck-gas
 
-install-info-bash: \
-    configure-bash \
-    info-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
+installcheck-gas: \
+    configure-gas 
+       @[ -f ./gas/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 install-info) \
+                 installcheck) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-install-info-bfd install-info-bfd
-maybe-install-info-bfd:
+.PHONY: maybe-mostlyclean-gas mostlyclean-gas
+maybe-mostlyclean-gas:
+@if gas
+maybe-mostlyclean-gas: mostlyclean-gas
 
-install-info-bfd: \
-    configure-bfd \
-    info-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
+mostlyclean-gas: 
+       @[ -f ./gas/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 install-info) \
+                 mostlyclean) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-install-info-opcodes install-info-opcodes
-maybe-install-info-opcodes:
+.PHONY: maybe-clean-gas clean-gas
+maybe-clean-gas:
+@if gas
+maybe-clean-gas: clean-gas
 
-install-info-opcodes: \
-    configure-opcodes \
-    info-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
+clean-gas: 
+       @[ -f ./gas/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 install-info) \
+                 clean) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-install-info-binutils install-info-binutils
-maybe-install-info-binutils:
+.PHONY: maybe-distclean-gas distclean-gas
+maybe-distclean-gas:
+@if gas
+maybe-distclean-gas: distclean-gas
 
-install-info-binutils: \
-    configure-binutils \
-    info-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
+distclean-gas: 
+       @[ -f ./gas/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 install-info) \
+                 distclean) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-install-info-bison install-info-bison
-maybe-install-info-bison:
+.PHONY: maybe-maintainer-clean-gas maintainer-clean-gas
+maybe-maintainer-clean-gas:
+@if gas
+maybe-maintainer-clean-gas: maintainer-clean-gas
 
-install-info-bison: \
-    configure-bison \
-    info-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
+maintainer-clean-gas: 
+       @[ -f ./gas/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 install-info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gas
 
-.PHONY: maybe-install-info-byacc install-info-byacc
-maybe-install-info-byacc:
 
-install-info-byacc: \
-    configure-byacc \
-    info-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
+.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 gcc/Makefile || exit 0; \
+       [ -d gcc ] || mkdir gcc; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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
+@endif gcc
+
+.PHONY: all-gcc maybe-all-gcc
+maybe-all-gcc:
+@if gcc
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS)  \
+           `if [ -f gcc/stage_last ]; then echo quickstrap ; else echo all; fi` )
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in byacc" ; \
-       (cd byacc && \
+       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}" \
-                 install-info) \
+                 info) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-bzip2 install-info-bzip2
-maybe-install-info-bzip2:
+.PHONY: maybe-dvi-gcc dvi-gcc
+maybe-dvi-gcc:
+@if gcc
+maybe-dvi-gcc: dvi-gcc
 
-install-info-bzip2: \
-    configure-bzip2 \
-    info-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
+dvi-gcc: \
+    configure-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in bzip2" ; \
-       (cd bzip2 && \
+       echo "Doing dvi 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}" \
-                 install-info) \
+                 dvi) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-dejagnu install-info-dejagnu
-maybe-install-info-dejagnu:
+.PHONY: maybe-TAGS-gcc TAGS-gcc
+maybe-TAGS-gcc:
+@if gcc
+maybe-TAGS-gcc: TAGS-gcc
 
-install-info-dejagnu: \
-    configure-dejagnu \
-    info-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
+TAGS-gcc: \
+    configure-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in dejagnu" ; \
-       (cd dejagnu && \
+       echo "Doing TAGS 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}" \
-                 install-info) \
+                 TAGS) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-diff install-info-diff
-maybe-install-info-diff:
+.PHONY: maybe-install-info-gcc install-info-gcc
+maybe-install-info-gcc:
+@if gcc
+maybe-install-info-gcc: install-info-gcc
 
-install-info-diff: \
-    configure-diff \
-    info-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
+install-info-gcc: \
+    configure-gcc \
+    info-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in diff" ; \
-       (cd diff && \
+       echo "Doing install-info in gcc" ; \
+       (cd gcc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -6723,229 +8690,301 @@ install-info-diff: \
                  install-info) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-dosutils install-info-dosutils
-maybe-install-info-dosutils:
+.PHONY: maybe-installcheck-gcc installcheck-gcc
+maybe-installcheck-gcc:
+@if gcc
+maybe-installcheck-gcc: installcheck-gcc
 
-install-info-dosutils: \
-    configure-dosutils \
-    info-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
+installcheck-gcc: \
+    configure-gcc 
+       @[ -f ./gcc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in dosutils" ; \
-       (cd dosutils && \
+       echo "Doing installcheck 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}" \
-                 install-info) \
+                 installcheck) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-etc install-info-etc
-maybe-install-info-etc:
+.PHONY: maybe-mostlyclean-gcc mostlyclean-gcc
+maybe-mostlyclean-gcc:
+@if gcc
+maybe-mostlyclean-gcc: mostlyclean-gcc
 
-install-info-etc: \
-    configure-etc \
-    info-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
+mostlyclean-gcc: 
+       @[ -f ./gcc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in etc" ; \
-       (cd etc && \
+       echo "Doing mostlyclean 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}" \
-                 install-info) \
+                 mostlyclean) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-fastjar install-info-fastjar
-maybe-install-info-fastjar:
+.PHONY: maybe-clean-gcc clean-gcc
+maybe-clean-gcc:
+@if gcc
+maybe-clean-gcc: clean-gcc
 
-install-info-fastjar: \
-    configure-fastjar \
-    info-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
+clean-gcc: 
+       @[ -f ./gcc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in fastjar" ; \
-       (cd fastjar && \
+       echo "Doing clean 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}" \
-                 install-info) \
+                 clean) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-fileutils install-info-fileutils
-maybe-install-info-fileutils:
+.PHONY: maybe-distclean-gcc distclean-gcc
+maybe-distclean-gcc:
+@if gcc
+maybe-distclean-gcc: distclean-gcc
 
-install-info-fileutils: \
-    configure-fileutils \
-    info-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
+distclean-gcc: 
+       @[ -f ./gcc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in fileutils" ; \
-       (cd fileutils && \
+       echo "Doing distclean 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}" \
-                 install-info) \
+                 distclean) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-findutils install-info-findutils
-maybe-install-info-findutils:
+.PHONY: maybe-maintainer-clean-gcc maintainer-clean-gcc
+maybe-maintainer-clean-gcc:
+@if gcc
+maybe-maintainer-clean-gcc: maintainer-clean-gcc
 
-install-info-findutils: \
-    configure-findutils \
-    info-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
+maintainer-clean-gcc: 
+       @[ -f ./gcc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in findutils" ; \
-       (cd findutils && \
+       echo "Doing maintainer-clean 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}" \
-                 install-info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gcc
 
-.PHONY: maybe-install-info-find install-info-find
-maybe-install-info-find:
 
-install-info-find: \
-    configure-find \
-    info-find 
-       @[ -f ./find/Makefile ] || exit 0; \
+.PHONY: configure-gawk maybe-configure-gawk
+maybe-configure-gawk:
+@if gawk
+maybe-configure-gawk: configure-gawk
+configure-gawk:
+       @test ! -f gawk/Makefile || exit 0; \
+       [ -d gawk ] || mkdir gawk; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 install-info in find" ; \
-       (cd find && \
-         $(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) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif gawk
+
+.PHONY: all-gawk maybe-all-gawk
+maybe-all-gawk:
+@if gawk
+maybe-all-gawk: all-gawk
+all-gawk: configure-gawk
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gawk && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif gawk
 
+.PHONY: check-gawk maybe-check-gawk
+maybe-check-gawk:
+@if gawk
+maybe-check-gawk: check-gawk
 
-.PHONY: maybe-install-info-flex install-info-flex
-maybe-install-info-flex:
+check-gawk:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gawk && $(MAKE) $(FLAGS_TO_PASS) check)
 
-install-info-flex: \
-    configure-flex \
-    info-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in gawk" ; \
+       (cd gawk && \
          $(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 gawk
 
-.PHONY: maybe-install-info-gas install-info-gas
-maybe-install-info-gas:
+.PHONY: maybe-dvi-gawk dvi-gawk
+maybe-dvi-gawk:
+@if gawk
+maybe-dvi-gawk: dvi-gawk
 
-install-info-gas: \
-    configure-gas \
-    info-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
+dvi-gawk: \
+    configure-gawk 
+       @[ -f ./gawk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in gawk" ; \
+       (cd gawk && \
          $(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 gawk
 
-.PHONY: maybe-install-info-gawk install-info-gawk
-maybe-install-info-gawk:
+.PHONY: maybe-TAGS-gawk TAGS-gawk
+maybe-TAGS-gawk:
+@if gawk
+maybe-TAGS-gawk: TAGS-gawk
 
-install-info-gawk: \
-    configure-gawk \
-    info-gawk 
+TAGS-gawk: \
+    configure-gawk 
        @[ -f ./gawk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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" ; \
+       echo "Doing TAGS in gawk" ; \
        (cd gawk && \
          $(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 gawk
 
-.PHONY: maybe-install-info-gettext install-info-gettext
-maybe-install-info-gettext:
+.PHONY: maybe-install-info-gawk install-info-gawk
+maybe-install-info-gawk:
+@if gawk
+maybe-install-info-gawk: install-info-gawk
 
-install-info-gettext: \
-    configure-gettext \
-    info-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
+install-info-gawk: \
+    configure-gawk \
+    info-gawk 
+       @[ -f ./gawk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in gawk" ; \
+       (cd gawk && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -6953,206 +8992,301 @@ install-info-gettext: \
                  install-info) \
          || exit 1
 
+@endif gawk
 
-.PHONY: maybe-install-info-gnuserv install-info-gnuserv
-maybe-install-info-gnuserv:
-
-install-info-gnuserv: \
-    configure-gnuserv \
-    info-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
+.PHONY: maybe-installcheck-gawk installcheck-gawk
+maybe-installcheck-gawk:
+@if gawk
+maybe-installcheck-gawk: installcheck-gawk
+
+installcheck-gawk: \
+    configure-gawk 
+       @[ -f ./gawk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in gawk" ; \
+       (cd gawk && \
          $(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 gawk
 
-.PHONY: maybe-install-info-gprof install-info-gprof
-maybe-install-info-gprof:
+.PHONY: maybe-mostlyclean-gawk mostlyclean-gawk
+maybe-mostlyclean-gawk:
+@if gawk
+maybe-mostlyclean-gawk: mostlyclean-gawk
 
-install-info-gprof: \
-    configure-gprof \
-    info-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
+mostlyclean-gawk: 
+       @[ -f ./gawk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in gawk" ; \
+       (cd gawk && \
          $(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 gawk
 
-.PHONY: maybe-install-info-gzip install-info-gzip
-maybe-install-info-gzip:
+.PHONY: maybe-clean-gawk clean-gawk
+maybe-clean-gawk:
+@if gawk
+maybe-clean-gawk: clean-gawk
 
-install-info-gzip: \
-    configure-gzip \
-    info-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
+clean-gawk: 
+       @[ -f ./gawk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in gawk" ; \
+       (cd gawk && \
          $(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 gawk
 
-.PHONY: maybe-install-info-hello install-info-hello
-maybe-install-info-hello:
+.PHONY: maybe-distclean-gawk distclean-gawk
+maybe-distclean-gawk:
+@if gawk
+maybe-distclean-gawk: distclean-gawk
 
-install-info-hello: \
-    configure-hello \
-    info-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
+distclean-gawk: 
+       @[ -f ./gawk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in gawk" ; \
+       (cd gawk && \
          $(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 gawk
 
-.PHONY: maybe-install-info-indent install-info-indent
-maybe-install-info-indent:
+.PHONY: maybe-maintainer-clean-gawk maintainer-clean-gawk
+maybe-maintainer-clean-gawk:
+@if gawk
+maybe-maintainer-clean-gawk: maintainer-clean-gawk
 
-install-info-indent: \
-    configure-indent \
-    info-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
+maintainer-clean-gawk: 
+       @[ -f ./gawk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in gawk" ; \
+       (cd gawk && \
          $(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 gawk
 
-.PHONY: maybe-install-info-intl install-info-intl
-maybe-install-info-intl:
 
-install-info-intl: \
-    configure-intl \
-    info-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
+.PHONY: configure-gettext maybe-configure-gettext
+maybe-configure-gettext:
+@if gettext
+maybe-configure-gettext: configure-gettext
+configure-gettext:
+       @test ! -f gettext/Makefile || exit 0; \
+       [ -d gettext ] || mkdir gettext; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif gettext
+
+.PHONY: all-gettext maybe-all-gettext
+maybe-all-gettext:
+@if gettext
+maybe-all-gettext: all-gettext
+all-gettext: configure-gettext
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gettext && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in gettext" ; \
+       (cd gettext && \
          $(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 gettext
 
-.PHONY: maybe-install-info-tcl install-info-tcl
-maybe-install-info-tcl:
+.PHONY: maybe-dvi-gettext dvi-gettext
+maybe-dvi-gettext:
+@if gettext
+maybe-dvi-gettext: dvi-gettext
 
-install-info-tcl: \
-    configure-tcl \
-    info-tcl 
-       @[ -f ./tcl/Makefile ] || exit 0; \
+dvi-gettext: \
+    configure-gettext 
+       @[ -f ./gettext/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in gettext" ; \
+       (cd gettext && \
          $(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 gettext
 
-.PHONY: maybe-install-info-itcl install-info-itcl
-maybe-install-info-itcl:
+.PHONY: maybe-TAGS-gettext TAGS-gettext
+maybe-TAGS-gettext:
+@if gettext
+maybe-TAGS-gettext: TAGS-gettext
 
-install-info-itcl: \
-    configure-itcl \
-    info-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
+TAGS-gettext: \
+    configure-gettext 
+       @[ -f ./gettext/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in gettext" ; \
+       (cd gettext && \
          $(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 gettext
 
-.PHONY: maybe-install-info-ld install-info-ld
-maybe-install-info-ld:
+.PHONY: maybe-install-info-gettext install-info-gettext
+maybe-install-info-gettext:
+@if gettext
+maybe-install-info-gettext: install-info-gettext
 
-install-info-ld: \
-    configure-ld \
-    info-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
+install-info-gettext: \
+    configure-gettext \
+    info-gettext 
+       @[ -f ./gettext/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in gettext" ; \
+       (cd gettext && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -7160,206 +9294,301 @@ install-info-ld: \
                  install-info) \
          || exit 1
 
+@endif gettext
 
-.PHONY: maybe-install-info-libgui install-info-libgui
-maybe-install-info-libgui:
+.PHONY: maybe-installcheck-gettext installcheck-gettext
+maybe-installcheck-gettext:
+@if gettext
+maybe-installcheck-gettext: installcheck-gettext
 
-install-info-libgui: \
-    configure-libgui \
-    info-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
+installcheck-gettext: \
+    configure-gettext 
+       @[ -f ./gettext/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in gettext" ; \
+       (cd gettext && \
          $(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 gettext
 
-.PHONY: maybe-install-info-libiberty install-info-libiberty
-maybe-install-info-libiberty:
+.PHONY: maybe-mostlyclean-gettext mostlyclean-gettext
+maybe-mostlyclean-gettext:
+@if gettext
+maybe-mostlyclean-gettext: mostlyclean-gettext
 
-install-info-libiberty: \
-    configure-libiberty \
-    info-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
+mostlyclean-gettext: 
+       @[ -f ./gettext/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in gettext" ; \
+       (cd gettext && \
          $(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 gettext
 
-.PHONY: maybe-install-info-libtool install-info-libtool
-maybe-install-info-libtool:
+.PHONY: maybe-clean-gettext clean-gettext
+maybe-clean-gettext:
+@if gettext
+maybe-clean-gettext: clean-gettext
 
-install-info-libtool: \
-    configure-libtool \
-    info-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
+clean-gettext: 
+       @[ -f ./gettext/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in gettext" ; \
+       (cd gettext && \
          $(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 gettext
 
-.PHONY: maybe-install-info-m4 install-info-m4
-maybe-install-info-m4:
+.PHONY: maybe-distclean-gettext distclean-gettext
+maybe-distclean-gettext:
+@if gettext
+maybe-distclean-gettext: distclean-gettext
 
-install-info-m4: \
-    configure-m4 \
-    info-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
+distclean-gettext: 
+       @[ -f ./gettext/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in gettext" ; \
+       (cd gettext && \
          $(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 gettext
 
-.PHONY: maybe-install-info-make install-info-make
-maybe-install-info-make:
+.PHONY: maybe-maintainer-clean-gettext maintainer-clean-gettext
+maybe-maintainer-clean-gettext:
+@if gettext
+maybe-maintainer-clean-gettext: maintainer-clean-gettext
 
-install-info-make: \
-    configure-make \
-    info-make 
-       @[ -f ./make/Makefile ] || exit 0; \
+maintainer-clean-gettext: 
+       @[ -f ./gettext/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in gettext" ; \
+       (cd gettext && \
          $(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 gettext
 
-.PHONY: maybe-install-info-mmalloc install-info-mmalloc
-maybe-install-info-mmalloc:
 
-install-info-mmalloc: \
-    configure-mmalloc \
-    info-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
+.PHONY: configure-gnuserv maybe-configure-gnuserv
+maybe-configure-gnuserv:
+@if gnuserv
+maybe-configure-gnuserv: configure-gnuserv
+configure-gnuserv:
+       @test ! -f gnuserv/Makefile || exit 0; \
+       [ -d gnuserv ] || mkdir gnuserv; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif gnuserv
+
+.PHONY: all-gnuserv maybe-all-gnuserv
+maybe-all-gnuserv:
+@if gnuserv
+maybe-all-gnuserv: all-gnuserv
+all-gnuserv: configure-gnuserv
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in gnuserv" ; \
+       (cd 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) \
+                 info) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-patch install-info-patch
-maybe-install-info-patch:
+.PHONY: maybe-dvi-gnuserv dvi-gnuserv
+maybe-dvi-gnuserv:
+@if gnuserv
+maybe-dvi-gnuserv: dvi-gnuserv
 
-install-info-patch: \
-    configure-patch \
-    info-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
+dvi-gnuserv: \
+    configure-gnuserv 
+       @[ -f ./gnuserv/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in gnuserv" ; \
+       (cd 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) \
+                 dvi) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-perl install-info-perl
-maybe-install-info-perl:
+.PHONY: maybe-TAGS-gnuserv TAGS-gnuserv
+maybe-TAGS-gnuserv:
+@if gnuserv
+maybe-TAGS-gnuserv: TAGS-gnuserv
 
-install-info-perl: \
-    configure-perl \
-    info-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
+TAGS-gnuserv: \
+    configure-gnuserv 
+       @[ -f ./gnuserv/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gnuserv" ; \
+       (cd 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
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-prms install-info-prms
-maybe-install-info-prms:
+.PHONY: maybe-install-info-gnuserv install-info-gnuserv
+maybe-install-info-gnuserv:
+@if gnuserv
+maybe-install-info-gnuserv: install-info-gnuserv
 
-install-info-prms: \
-    configure-prms \
-    info-prms 
-       @[ -f ./prms/Makefile ] || exit 0; \
+install-info-gnuserv: \
+    configure-gnuserv \
+    info-gnuserv 
+       @[ -f ./gnuserv/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gnuserv" ; \
+       (cd gnuserv && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -7367,252 +9596,301 @@ install-info-prms: \
                  install-info) \
          || exit 1
 
+@endif gnuserv
 
-.PHONY: maybe-install-info-rcs install-info-rcs
-maybe-install-info-rcs:
+.PHONY: maybe-installcheck-gnuserv installcheck-gnuserv
+maybe-installcheck-gnuserv:
+@if gnuserv
+maybe-installcheck-gnuserv: installcheck-gnuserv
 
-install-info-rcs: \
-    configure-rcs \
-    info-rcs 
-       @[ -f ./rcs/Makefile ] || exit 0; \
+installcheck-gnuserv: \
+    configure-gnuserv 
+       @[ -f ./gnuserv/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gnuserv" ; \
+       (cd 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-readline install-info-readline
-maybe-install-info-readline:
+.PHONY: maybe-mostlyclean-gnuserv mostlyclean-gnuserv
+maybe-mostlyclean-gnuserv:
+@if gnuserv
+maybe-mostlyclean-gnuserv: mostlyclean-gnuserv
 
-install-info-readline: \
-    configure-readline \
-    info-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
+mostlyclean-gnuserv: 
+       @[ -f ./gnuserv/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gnuserv" ; \
+       (cd 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-release install-info-release
-maybe-install-info-release:
+.PHONY: maybe-clean-gnuserv clean-gnuserv
+maybe-clean-gnuserv:
+@if gnuserv
+maybe-clean-gnuserv: clean-gnuserv
 
-install-info-release: \
-    configure-release \
-    info-release 
-       @[ -f ./release/Makefile ] || exit 0; \
+clean-gnuserv: 
+       @[ -f ./gnuserv/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gnuserv" ; \
+       (cd 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-recode install-info-recode
-maybe-install-info-recode:
+.PHONY: maybe-distclean-gnuserv distclean-gnuserv
+maybe-distclean-gnuserv:
+@if gnuserv
+maybe-distclean-gnuserv: distclean-gnuserv
 
-install-info-recode: \
-    configure-recode \
-    info-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
+distclean-gnuserv: 
+       @[ -f ./gnuserv/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gnuserv" ; \
+       (cd 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-sed install-info-sed
-maybe-install-info-sed:
+.PHONY: maybe-maintainer-clean-gnuserv maintainer-clean-gnuserv
+maybe-maintainer-clean-gnuserv:
+@if gnuserv
+maybe-maintainer-clean-gnuserv: maintainer-clean-gnuserv
 
-install-info-sed: \
-    configure-sed \
-    info-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
+maintainer-clean-gnuserv: 
+       @[ -f ./gnuserv/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gnuserv" ; \
+       (cd 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-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; \
+.PHONY: configure-gprof maybe-configure-gprof
+maybe-configure-gprof:
+@if gprof
+maybe-configure-gprof: configure-gprof
+configure-gprof:
+       @test ! -f gprof/Makefile || exit 0; \
+       [ -d gprof ] || mkdir gprof; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in gprof; \
+       cd gprof || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif gprof
+
+.PHONY: all-gprof maybe-all-gprof
+maybe-all-gprof:
+@if gprof
+maybe-all-gprof: all-gprof
+all-gprof: configure-gprof
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gprof && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
        $(SET_LIB_PATH) \
-       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 && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd gprof && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif gprof
 
-.PHONY: maybe-install-info-shellutils install-info-shellutils
-maybe-install-info-shellutils:
+.PHONY: install-gprof maybe-install-gprof
+maybe-install-gprof:
+@if gprof
+maybe-install-gprof: install-gprof
 
-install-info-shellutils: \
-    configure-shellutils \
-    info-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-gprof: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 install-info 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}" \
-                 install-info) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd gprof && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif gprof
 
-.PHONY: maybe-install-info-sid install-info-sid
-maybe-install-info-sid:
+# Other targets (info, dvi, etc.)
 
-install-info-sid: \
-    configure-sid \
-    info-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info 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}" \
-                 install-info) \
+                 info) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-sim install-info-sim
-maybe-install-info-sim:
+.PHONY: maybe-dvi-gprof dvi-gprof
+maybe-dvi-gprof:
+@if gprof
+maybe-dvi-gprof: dvi-gprof
 
-install-info-sim: \
-    configure-sim \
-    info-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
+dvi-gprof: \
+    configure-gprof 
+       @[ -f ./gprof/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi 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}" \
-                 install-info) \
+                 dvi) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-tar install-info-tar
-maybe-install-info-tar:
+.PHONY: maybe-TAGS-gprof TAGS-gprof
+maybe-TAGS-gprof:
+@if gprof
+maybe-TAGS-gprof: TAGS-gprof
 
-install-info-tar: \
-    configure-tar \
-    info-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
+TAGS-gprof: \
+    configure-gprof 
+       @[ -f ./gprof/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 install-info) \
+                 TAGS) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-texinfo install-info-texinfo
-maybe-install-info-texinfo:
+.PHONY: maybe-install-info-gprof install-info-gprof
+maybe-install-info-gprof:
+@if gprof
+maybe-install-info-gprof: install-info-gprof
 
-install-info-texinfo: \
-    configure-texinfo \
-    info-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+install-info-gprof: \
+    configure-gprof \
+    info-gprof 
+       @[ -f ./gprof/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in gprof" ; \
+       (cd gprof && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -7620,275 +9898,301 @@ install-info-texinfo: \
                  install-info) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-textutils install-info-textutils
-maybe-install-info-textutils:
+.PHONY: maybe-installcheck-gprof installcheck-gprof
+maybe-installcheck-gprof:
+@if gprof
+maybe-installcheck-gprof: installcheck-gprof
 
-install-info-textutils: \
-    configure-textutils \
-    info-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
+installcheck-gprof: \
+    configure-gprof 
+       @[ -f ./gprof/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 install-info) \
+                 installcheck) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-time install-info-time
-maybe-install-info-time:
+.PHONY: maybe-mostlyclean-gprof mostlyclean-gprof
+maybe-mostlyclean-gprof:
+@if gprof
+maybe-mostlyclean-gprof: mostlyclean-gprof
 
-install-info-time: \
-    configure-time \
-    info-time 
-       @[ -f ./time/Makefile ] || exit 0; \
+mostlyclean-gprof: 
+       @[ -f ./gprof/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 install-info) \
+                 mostlyclean) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-uudecode install-info-uudecode
-maybe-install-info-uudecode:
+.PHONY: maybe-clean-gprof clean-gprof
+maybe-clean-gprof:
+@if gprof
+maybe-clean-gprof: clean-gprof
 
-install-info-uudecode: \
-    configure-uudecode \
-    info-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
+clean-gprof: 
+       @[ -f ./gprof/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean 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}" \
-                 install-info) \
+                 clean) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-wdiff install-info-wdiff
-maybe-install-info-wdiff:
+.PHONY: maybe-distclean-gprof distclean-gprof
+maybe-distclean-gprof:
+@if gprof
+maybe-distclean-gprof: distclean-gprof
 
-install-info-wdiff: \
-    configure-wdiff \
-    info-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
+distclean-gprof: 
+       @[ -f ./gprof/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 install-info) \
+                 distclean) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-zip install-info-zip
-maybe-install-info-zip:
+.PHONY: maybe-maintainer-clean-gprof maintainer-clean-gprof
+maybe-maintainer-clean-gprof:
+@if gprof
+maybe-maintainer-clean-gprof: maintainer-clean-gprof
 
-install-info-zip: \
-    configure-zip \
-    info-zip 
-       @[ -f ./zip/Makefile ] || exit 0; \
+maintainer-clean-gprof: 
+       @[ -f ./gprof/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 install-info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif gprof
 
-.PHONY: maybe-install-info-zlib install-info-zlib
-maybe-install-info-zlib:
 
-install-info-zlib: \
-    configure-zlib \
-    info-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
+.PHONY: configure-gzip maybe-configure-gzip
+maybe-configure-gzip:
+@if gzip
+maybe-configure-gzip: configure-gzip
+configure-gzip:
+       @test ! -f gzip/Makefile || exit 0; \
+       [ -d gzip ] || mkdir gzip; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 install-info in zlib" ; \
-       (cd 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) \
+       $(HOST_EXPORTS) \
+       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
+@endif gzip
 
+.PHONY: all-gzip maybe-all-gzip
+maybe-all-gzip:
+@if gzip
+maybe-all-gzip: all-gzip
+all-gzip: configure-gzip
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gzip && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif gzip
 
-.PHONY: maybe-install-info-gdb install-info-gdb
-maybe-install-info-gdb:
+.PHONY: check-gzip maybe-check-gzip
+maybe-check-gzip:
+@if gzip
+maybe-check-gzip: check-gzip
 
-install-info-gdb: \
-    configure-gdb \
-    info-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-gzip:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 install-info 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}" \
-                 install-info) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd gzip && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif gzip
 
-.PHONY: maybe-install-info-expect install-info-expect
-maybe-install-info-expect:
+.PHONY: install-gzip maybe-install-gzip
+maybe-install-gzip:
+@if gzip
+maybe-install-gzip: install-gzip
 
-install-info-expect: \
-    configure-expect \
-    info-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-gzip: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 install-info in expect" ; \
-       (cd expect && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd gzip && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif gzip
 
-.PHONY: maybe-install-info-guile install-info-guile
-maybe-install-info-guile:
+# Other targets (info, dvi, etc.)
 
-install-info-guile: \
-    configure-guile \
-    info-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in gzip" ; \
+       (cd 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-tk install-info-tk
-maybe-install-info-tk:
+.PHONY: maybe-dvi-gzip dvi-gzip
+maybe-dvi-gzip:
+@if gzip
+maybe-dvi-gzip: dvi-gzip
 
-install-info-tk: \
-    configure-tk \
-    info-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
+dvi-gzip: \
+    configure-gzip 
+       @[ -f ./gzip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in gzip" ; \
+       (cd 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-tix install-info-tix
-maybe-install-info-tix:
+.PHONY: maybe-TAGS-gzip TAGS-gzip
+maybe-TAGS-gzip:
+@if gzip
+maybe-TAGS-gzip: TAGS-gzip
 
-install-info-tix: \
-    configure-tix \
-    info-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
+TAGS-gzip: \
+    configure-gzip 
+       @[ -f ./gzip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in gzip" ; \
+       (cd 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-libtermcap install-info-libtermcap
-maybe-install-info-libtermcap:
+.PHONY: maybe-install-info-gzip install-info-gzip
+maybe-install-info-gzip:
+@if gzip
+maybe-install-info-gzip: install-info-gzip
 
-install-info-libtermcap: \
-    configure-libtermcap \
-    info-libtermca
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
+install-info-gzip: \
+    configure-gzip \
+    info-gzi
+       @[ -f ./gzip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in gzip" ; \
+       (cd gzip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -7896,278 +10200,301 @@ install-info-libtermcap: \
                  install-info) \
          || exit 1
 
+@endif gzip
 
-.PHONY: maybe-install-info-utils install-info-utils
-maybe-install-info-utils:
+.PHONY: maybe-installcheck-gzip installcheck-gzip
+maybe-installcheck-gzip:
+@if gzip
+maybe-installcheck-gzip: installcheck-gzip
 
-install-info-utils: \
-    configure-utils \
-    info-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
+installcheck-gzip: \
+    configure-gzip 
+       @[ -f ./gzip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in gzip" ; \
+       (cd 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-mostlyclean-gzip mostlyclean-gzip
+maybe-mostlyclean-gzip:
+@if gzip
+maybe-mostlyclean-gzip: mostlyclean-gzip
 
-# Target modules.
-
-.PHONY: maybe-install-info-target-libstdc++-v3 install-info-target-libstdc++-v3
-maybe-install-info-target-libstdc++-v3:
-
-install-info-target-libstdc++-v3: \
-    configure-target-libstdc++-v3 \
-    info-target-libstdc++-v3 
-       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+mostlyclean-gzip: 
+       @[ -f ./gzip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 gzip" ; \
+       (cd 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-target-newlib install-info-target-newlib
-maybe-install-info-target-newlib:
+.PHONY: maybe-clean-gzip clean-gzip
+maybe-clean-gzip:
+@if gzip
+maybe-clean-gzip: clean-gzip
 
-install-info-target-newlib: \
-    configure-target-newlib \
-    info-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+clean-gzip: 
+       @[ -f ./gzip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 gzip" ; \
+       (cd 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-target-libf2c install-info-target-libf2c
-maybe-install-info-target-libf2c:
+.PHONY: maybe-distclean-gzip distclean-gzip
+maybe-distclean-gzip:
+@if gzip
+maybe-distclean-gzip: distclean-gzip
 
-install-info-target-libf2c: \
-    configure-target-libf2c \
-    info-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
+distclean-gzip: 
+       @[ -f ./gzip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 gzip" ; \
+       (cd 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-target-libobjc install-info-target-libobjc
-maybe-install-info-target-libobjc:
+.PHONY: maybe-maintainer-clean-gzip maintainer-clean-gzip
+maybe-maintainer-clean-gzip:
+@if gzip
+maybe-maintainer-clean-gzip: maintainer-clean-gzip
 
-install-info-target-libobjc: \
-    configure-target-libobjc \
-    info-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+maintainer-clean-gzip: 
+       @[ -f ./gzip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 gzip" ; \
+       (cd 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-target-libtermcap install-info-target-libtermcap
-maybe-install-info-target-libtermcap:
 
-install-info-target-libtermcap: \
-    configure-target-libtermcap \
-    info-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+.PHONY: configure-hello maybe-configure-hello
+maybe-configure-hello:
+@if hello
+maybe-configure-hello: configure-hello
+configure-hello:
+       @test ! -f hello/Makefile || exit 0; \
+       [ -d hello ] || mkdir hello; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       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) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif hello
 
+.PHONY: all-hello maybe-all-hello
+maybe-all-hello:
+@if hello
+maybe-all-hello: all-hello
+all-hello: configure-hello
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd hello && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif hello
 
-.PHONY: maybe-install-info-target-winsup install-info-target-winsup
-maybe-install-info-target-winsup:
+.PHONY: check-hello maybe-check-hello
+maybe-check-hello:
+@if hello
+maybe-check-hello: check-hello
 
-install-info-target-winsup: \
-    configure-target-winsup \
-    info-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+check-hello:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       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
+       $(HOST_EXPORTS) \
+       (cd hello && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif hello
 
-.PHONY: maybe-install-info-target-libgloss install-info-target-libgloss
-maybe-install-info-target-libgloss:
+.PHONY: install-hello maybe-install-hello
+maybe-install-hello:
+@if hello
+maybe-install-hello: install-hello
 
-install-info-target-libgloss: \
-    configure-target-libgloss \
-    info-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+install-hello: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       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
+       $(HOST_EXPORTS) \
+       (cd hello && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif hello
 
-.PHONY: maybe-install-info-target-libiberty install-info-target-libiberty
-maybe-install-info-target-libiberty:
+# Other targets (info, dvi, etc.)
 
-install-info-target-libiberty: \
-    configure-target-libiberty \
-    info-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+.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_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 info 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}" \
-                 install-info) \
+                 info) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-target-gperf install-info-target-gperf
-maybe-install-info-target-gperf:
+.PHONY: maybe-dvi-hello dvi-hello
+maybe-dvi-hello:
+@if hello
+maybe-dvi-hello: dvi-hello
 
-install-info-target-gperf: \
-    configure-target-gperf \
-    info-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+dvi-hello: \
+    configure-hello 
+       @[ -f ./hello/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi 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}" \
-                 install-info) \
+                 dvi) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-target-examples install-info-target-examples
-maybe-install-info-target-examples:
+.PHONY: maybe-TAGS-hello TAGS-hello
+maybe-TAGS-hello:
+@if hello
+maybe-TAGS-hello: TAGS-hello
 
-install-info-target-examples: \
-    configure-target-examples \
-    info-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+TAGS-hello: \
+    configure-hello 
+       @[ -f ./hello/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 install-info) \
+                 TAGS) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-target-libffi install-info-target-libffi
-maybe-install-info-target-libffi:
+.PHONY: maybe-install-info-hello install-info-hello
+maybe-install-info-hello:
+@if hello
+maybe-install-info-hello: install-info-hello
 
-install-info-target-libffi: \
-    configure-target-libffi \
-    info-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+install-info-hello: \
+    configure-hello \
+    info-hello 
+       @[ -f ./hello/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info in hello" ; \
+       (cd hello && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -8175,337 +10502,327 @@ install-info-target-libffi: \
                  install-info) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-target-libjava install-info-target-libjava
-maybe-install-info-target-libjava:
+.PHONY: maybe-installcheck-hello installcheck-hello
+maybe-installcheck-hello:
+@if hello
+maybe-installcheck-hello: installcheck-hello
 
-install-info-target-libjava: \
-    configure-target-libjava \
-    info-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+installcheck-hello: \
+    configure-hello 
+       @[ -f ./hello/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck 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}" \
-                 install-info) \
+                 installcheck) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-target-zlib install-info-target-zlib
-maybe-install-info-target-zlib:
+.PHONY: maybe-mostlyclean-hello mostlyclean-hello
+maybe-mostlyclean-hello:
+@if hello
+maybe-mostlyclean-hello: mostlyclean-hello
 
-install-info-target-zlib: \
-    configure-target-zlib \
-    info-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+mostlyclean-hello: 
+       @[ -f ./hello/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 install-info) \
+                 mostlyclean) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-target-boehm-gc install-info-target-boehm-gc
-maybe-install-info-target-boehm-gc:
+.PHONY: maybe-clean-hello clean-hello
+maybe-clean-hello:
+@if hello
+maybe-clean-hello: clean-hello
 
-install-info-target-boehm-gc: \
-    configure-target-boehm-gc \
-    info-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+clean-hello: 
+       @[ -f ./hello/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean 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}" \
-                 install-info) \
+                 clean) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-target-qthreads install-info-target-qthreads
-maybe-install-info-target-qthreads:
+.PHONY: maybe-distclean-hello distclean-hello
+maybe-distclean-hello:
+@if hello
+maybe-distclean-hello: distclean-hello
 
-install-info-target-qthreads: \
-    configure-target-qthreads \
-    info-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+distclean-hello: 
+       @[ -f ./hello/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean 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}" \
-                 install-info) \
+                 distclean) \
          || exit 1
 
+@endif hello
 
-.PHONY: maybe-install-info-target-rda install-info-target-rda
-maybe-install-info-target-rda:
+.PHONY: maybe-maintainer-clean-hello maintainer-clean-hello
+maybe-maintainer-clean-hello:
+@if hello
+maybe-maintainer-clean-hello: maintainer-clean-hello
 
-install-info-target-rda: \
-    configure-target-rda \
-    info-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+maintainer-clean-hello: 
+       @[ -f ./hello/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing install-info in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 install-info) \
+                 maintainer-clean) \
          || exit 1
 
+@endif hello
 
 
-.PHONY: do-installcheck
-do-installcheck: installcheck-host installcheck-target
+.PHONY: configure-indent maybe-configure-indent
+maybe-configure-indent:
+@if indent
+maybe-configure-indent: configure-indent
+configure-indent:
+       @test ! -f indent/Makefile || exit 0; \
+       [ -d indent ] || mkdir indent; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif indent
 
-.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
+.PHONY: all-indent maybe-all-indent
+maybe-all-indent:
+@if indent
+maybe-all-indent: all-indent
+all-indent: configure-indent
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd indent && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif indent
 
-.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: 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd indent && $(MAKE) $(FLAGS_TO_PASS) check)
 
-# 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_COMMAND}`; export r; \
+@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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       echo "Doing installcheck 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}" \
-                 installcheck) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd indent && $(MAKE) $(FLAGS_TO_PASS) install)
 
-# Host modules.
+@endif indent
 
-.PHONY: maybe-installcheck-ash installcheck-ash
-maybe-installcheck-ash:
+# Other targets (info, dvi, etc.)
 
-installcheck-ash: \
-    configure-ash 
-       @[ -f ./ash/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in indent" ; \
+       (cd indent && \
          $(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 indent
 
-.PHONY: maybe-installcheck-autoconf installcheck-autoconf
-maybe-installcheck-autoconf:
+.PHONY: maybe-dvi-indent dvi-indent
+maybe-dvi-indent:
+@if indent
+maybe-dvi-indent: dvi-indent
 
-installcheck-autoconf: \
-    configure-autoconf 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
+dvi-indent: \
+    configure-indent 
+       @[ -f ./indent/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in indent" ; \
+       (cd indent && \
          $(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 indent
 
-.PHONY: maybe-installcheck-automake installcheck-automake
-maybe-installcheck-automake:
+.PHONY: maybe-TAGS-indent TAGS-indent
+maybe-TAGS-indent:
+@if indent
+maybe-TAGS-indent: TAGS-indent
 
-installcheck-automake: \
-    configure-automake 
-       @[ -f ./automake/Makefile ] || exit 0; \
+TAGS-indent: \
+    configure-indent 
+       @[ -f ./indent/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in indent" ; \
+       (cd indent && \
          $(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 indent
 
-.PHONY: maybe-installcheck-bash installcheck-bash
-maybe-installcheck-bash:
+.PHONY: maybe-install-info-indent install-info-indent
+maybe-install-info-indent:
+@if indent
+maybe-install-info-indent: install-info-indent
 
-installcheck-bash: \
-    configure-bash 
-       @[ -f ./bash/Makefile ] || exit 0; \
+install-info-indent: \
+    configure-indent \
+    info-indent 
+       @[ -f ./indent/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in indent" ; \
+       (cd indent && \
          $(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 indent
 
-.PHONY: maybe-installcheck-bfd installcheck-bfd
-maybe-installcheck-bfd:
+.PHONY: maybe-installcheck-indent installcheck-indent
+maybe-installcheck-indent:
+@if indent
+maybe-installcheck-indent: installcheck-indent
 
-installcheck-bfd: \
-    configure-bfd 
-       @[ -f ./bfd/Makefile ] || exit 0; \
+installcheck-indent: \
+    configure-indent 
+       @[ -f ./indent/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in indent" ; \
+       (cd indent && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -8513,263 +10830,303 @@ installcheck-bfd: \
                  installcheck) \
          || exit 1
 
+@endif indent
 
-.PHONY: maybe-installcheck-opcodes installcheck-opcodes
-maybe-installcheck-opcodes:
+.PHONY: maybe-mostlyclean-indent mostlyclean-indent
+maybe-mostlyclean-indent:
+@if indent
+maybe-mostlyclean-indent: mostlyclean-indent
 
-installcheck-opcodes: \
-    configure-opcodes 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
+mostlyclean-indent: 
+       @[ -f ./indent/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in indent" ; \
+       (cd indent && \
          $(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 indent
 
-.PHONY: maybe-installcheck-binutils installcheck-binutils
-maybe-installcheck-binutils:
+.PHONY: maybe-clean-indent clean-indent
+maybe-clean-indent:
+@if indent
+maybe-clean-indent: clean-indent
 
-installcheck-binutils: \
-    configure-binutils 
-       @[ -f ./binutils/Makefile ] || exit 0; \
+clean-indent: 
+       @[ -f ./indent/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in indent" ; \
+       (cd indent && \
          $(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 indent
 
-.PHONY: maybe-installcheck-bison installcheck-bison
-maybe-installcheck-bison:
+.PHONY: maybe-distclean-indent distclean-indent
+maybe-distclean-indent:
+@if indent
+maybe-distclean-indent: distclean-indent
 
-installcheck-bison: \
-    configure-bison 
-       @[ -f ./bison/Makefile ] || exit 0; \
+distclean-indent: 
+       @[ -f ./indent/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in indent" ; \
+       (cd indent && \
          $(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 indent
 
-.PHONY: maybe-installcheck-byacc installcheck-byacc
-maybe-installcheck-byacc:
+.PHONY: maybe-maintainer-clean-indent maintainer-clean-indent
+maybe-maintainer-clean-indent:
+@if indent
+maybe-maintainer-clean-indent: maintainer-clean-indent
 
-installcheck-byacc: \
-    configure-byacc 
-       @[ -f ./byacc/Makefile ] || exit 0; \
+maintainer-clean-indent: 
+       @[ -f ./indent/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in indent" ; \
+       (cd indent && \
          $(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 indent
 
-.PHONY: maybe-installcheck-bzip2 installcheck-bzip2
-maybe-installcheck-bzip2:
 
-installcheck-bzip2: \
-    configure-bzip2 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
+.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 intl/Makefile || exit 0; \
+       [ -d intl ] || mkdir intl; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 installcheck) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif intl
 
+.PHONY: all-intl maybe-all-intl
+maybe-all-intl:
+@if intl
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd intl && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif intl
 
-.PHONY: maybe-installcheck-dejagnu installcheck-dejagnu
-maybe-installcheck-dejagnu:
+.PHONY: check-intl maybe-check-intl
+maybe-check-intl:
+@if intl
+maybe-check-intl: check-intl
 
-installcheck-dejagnu: \
-    configure-dejagnu 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-intl:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 dejagnu" ; \
-       (cd dejagnu && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd intl && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif intl
 
-.PHONY: maybe-installcheck-diff installcheck-diff
-maybe-installcheck-diff:
+.PHONY: install-intl maybe-install-intl
+maybe-install-intl:
+@if intl
+maybe-install-intl: install-intl
 
-installcheck-diff: \
-    configure-diff 
-       @[ -f ./diff/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-intl: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 diff" ; \
-       (cd diff && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd intl && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif intl
 
-.PHONY: maybe-installcheck-dosutils installcheck-dosutils
-maybe-installcheck-dosutils:
+# Other targets (info, dvi, etc.)
 
-installcheck-dosutils: \
-    configure-dosutils 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 intl" ; \
+       (cd intl && \
          $(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 intl
 
-.PHONY: maybe-installcheck-etc installcheck-etc
-maybe-installcheck-etc:
+.PHONY: maybe-dvi-intl dvi-intl
+maybe-dvi-intl:
+@if intl
+maybe-dvi-intl: dvi-intl
 
-installcheck-etc: \
-    configure-etc 
-       @[ -f ./etc/Makefile ] || exit 0; \
+dvi-intl: \
+    configure-intl 
+       @[ -f ./intl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 intl" ; \
+       (cd intl && \
          $(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 intl
 
-.PHONY: maybe-installcheck-fastjar installcheck-fastjar
-maybe-installcheck-fastjar:
+.PHONY: maybe-TAGS-intl TAGS-intl
+maybe-TAGS-intl:
+@if intl
+maybe-TAGS-intl: TAGS-intl
 
-installcheck-fastjar: \
-    configure-fastjar 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
+TAGS-intl: \
+    configure-intl 
+       @[ -f ./intl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in intl" ; \
+       (cd intl && \
          $(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 intl
 
-.PHONY: maybe-installcheck-fileutils installcheck-fileutils
-maybe-installcheck-fileutils:
+.PHONY: maybe-install-info-intl install-info-intl
+maybe-install-info-intl:
+@if intl
+maybe-install-info-intl: install-info-intl
 
-installcheck-fileutils: \
-    configure-fileutils 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
+install-info-intl: \
+    configure-intl \
+    info-intl 
+       @[ -f ./intl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in intl" ; \
+       (cd intl && \
          $(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 intl
 
-.PHONY: maybe-installcheck-findutils installcheck-findutils
-maybe-installcheck-findutils:
+.PHONY: maybe-installcheck-intl installcheck-intl
+maybe-installcheck-intl:
+@if intl
+maybe-installcheck-intl: installcheck-intl
 
-installcheck-findutils: \
-    configure-findutils 
-       @[ -f ./findutils/Makefile ] || exit 0; \
+installcheck-intl: \
+    configure-intl 
+       @[ -f ./intl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in intl" ; \
+       (cd intl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -8777,251 +11134,288 @@ installcheck-findutils: \
                  installcheck) \
          || exit 1
 
+@endif intl
 
-.PHONY: maybe-installcheck-find installcheck-find
-maybe-installcheck-find:
+.PHONY: maybe-mostlyclean-intl mostlyclean-intl
+maybe-mostlyclean-intl:
+@if intl
+maybe-mostlyclean-intl: mostlyclean-intl
 
-installcheck-find: \
-    configure-find 
-       @[ -f ./find/Makefile ] || exit 0; \
+mostlyclean-intl: 
+       @[ -f ./intl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in intl" ; \
+       (cd intl && \
          $(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 intl
 
-.PHONY: maybe-installcheck-flex installcheck-flex
-maybe-installcheck-flex:
+.PHONY: maybe-clean-intl clean-intl
+maybe-clean-intl:
+@if intl
+maybe-clean-intl: clean-intl
 
-installcheck-flex: \
-    configure-flex 
-       @[ -f ./flex/Makefile ] || exit 0; \
+clean-intl: 
+       @[ -f ./intl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in intl" ; \
+       (cd intl && \
          $(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 intl
 
-.PHONY: maybe-installcheck-gas installcheck-gas
-maybe-installcheck-gas:
+.PHONY: maybe-distclean-intl distclean-intl
+maybe-distclean-intl:
+@if intl
+maybe-distclean-intl: distclean-intl
 
-installcheck-gas: \
-    configure-gas 
-       @[ -f ./gas/Makefile ] || exit 0; \
+distclean-intl: 
+       @[ -f ./intl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in intl" ; \
+       (cd intl && \
          $(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 intl
 
-.PHONY: maybe-installcheck-gawk installcheck-gawk
-maybe-installcheck-gawk:
+.PHONY: maybe-maintainer-clean-intl maintainer-clean-intl
+maybe-maintainer-clean-intl:
+@if intl
+maybe-maintainer-clean-intl: maintainer-clean-intl
 
-installcheck-gawk: \
-    configure-gawk 
-       @[ -f ./gawk/Makefile ] || exit 0; \
+maintainer-clean-intl: 
+       @[ -f ./intl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in intl" ; \
+       (cd intl && \
          $(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 intl
 
-.PHONY: maybe-installcheck-gettext installcheck-gettext
-maybe-installcheck-gettext:
 
-installcheck-gettext: \
-    configure-gettext 
-       @[ -f ./gettext/Makefile ] || exit 0; \
+.PHONY: configure-tcl maybe-configure-tcl
+maybe-configure-tcl:
+@if tcl
+maybe-configure-tcl: configure-tcl
+configure-tcl:
+       @test ! -f tcl/Makefile || exit 0; \
+       [ -d tcl ] || mkdir tcl; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gettext" ; \
-       (cd gettext && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 installcheck) \
+       $(HOST_EXPORTS) \
+       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
+@endif tcl
 
+.PHONY: all-tcl maybe-all-tcl
+maybe-all-tcl:
+@if tcl
+maybe-all-tcl: all-tcl
+all-tcl: configure-tcl
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd tcl && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif tcl
 
-.PHONY: maybe-installcheck-gnuserv installcheck-gnuserv
-maybe-installcheck-gnuserv:
+.PHONY: check-tcl maybe-check-tcl
+maybe-check-tcl:
+@if tcl
+maybe-check-tcl: check-tcl
 
-installcheck-gnuserv: \
-    configure-gnuserv 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-tcl:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gnuserv" ; \
-       (cd gnuserv && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd tcl && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif tcl
 
-.PHONY: maybe-installcheck-gprof installcheck-gprof
-maybe-installcheck-gprof:
+.PHONY: install-tcl maybe-install-tcl
+maybe-install-tcl:
+@if tcl
+maybe-install-tcl: install-tcl
 
-installcheck-gprof: \
-    configure-gprof 
-       @[ -f ./gprof/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-tcl: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 installcheck) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd tcl && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif tcl
 
-.PHONY: maybe-installcheck-gzip installcheck-gzip
-maybe-installcheck-gzip:
+# Other targets (info, dvi, etc.)
 
-installcheck-gzip: \
-    configure-gzip 
-       @[ -f ./gzip/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in tcl" ; \
+       (cd tcl && \
          $(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 tcl
 
-.PHONY: maybe-installcheck-hello installcheck-hello
-maybe-installcheck-hello:
+.PHONY: maybe-dvi-tcl dvi-tcl
+maybe-dvi-tcl:
+@if tcl
+maybe-dvi-tcl: dvi-tcl
 
-installcheck-hello: \
-    configure-hello 
-       @[ -f ./hello/Makefile ] || exit 0; \
+dvi-tcl: \
+    configure-tcl 
+       @[ -f ./tcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in tcl" ; \
+       (cd tcl && \
          $(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 tcl
 
-.PHONY: maybe-installcheck-indent installcheck-indent
-maybe-installcheck-indent:
+.PHONY: maybe-TAGS-tcl TAGS-tcl
+maybe-TAGS-tcl:
+@if tcl
+maybe-TAGS-tcl: TAGS-tcl
 
-installcheck-indent: \
-    configure-indent 
-       @[ -f ./indent/Makefile ] || exit 0; \
+TAGS-tcl: \
+    configure-tcl 
+       @[ -f ./tcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in tcl" ; \
+       (cd tcl && \
          $(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 tcl
 
-.PHONY: maybe-installcheck-intl installcheck-intl
-maybe-installcheck-intl:
+.PHONY: maybe-install-info-tcl install-info-tcl
+maybe-install-info-tcl:
+@if tcl
+maybe-install-info-tcl: install-info-tcl
 
-installcheck-intl: \
-    configure-intl 
-       @[ -f ./intl/Makefile ] || exit 0; \
+install-info-tcl: \
+    configure-tcl \
+    info-tcl 
+       @[ -f ./tcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in tcl" ; \
+       (cd tcl && \
          $(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 tcl
 
 .PHONY: maybe-installcheck-tcl installcheck-tcl
 maybe-installcheck-tcl:
+@if tcl
+maybe-installcheck-tcl: installcheck-tcl
 
 installcheck-tcl: \
     configure-tcl 
@@ -9029,7 +11423,8 @@ installcheck-tcl: \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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" ; \
@@ -9041,241 +11436,286 @@ installcheck-tcl: \
                  installcheck) \
          || exit 1
 
+@endif tcl
 
-.PHONY: maybe-installcheck-itcl installcheck-itcl
-maybe-installcheck-itcl:
+.PHONY: maybe-mostlyclean-tcl mostlyclean-tcl
+maybe-mostlyclean-tcl:
+@if tcl
+maybe-mostlyclean-tcl: mostlyclean-tcl
 
-installcheck-itcl: \
-    configure-itcl 
-       @[ -f ./itcl/Makefile ] || exit 0; \
+# tcl doesn't support mostlyclean.
+mostlyclean-tcl:
+
+@endif tcl
+
+.PHONY: maybe-clean-tcl clean-tcl
+maybe-clean-tcl:
+@if tcl
+maybe-clean-tcl: clean-tcl
+
+clean-tcl: 
+       @[ -f ./tcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 tcl" ; \
+       (cd tcl && \
          $(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 tcl
 
-.PHONY: maybe-installcheck-ld installcheck-ld
-maybe-installcheck-ld:
+.PHONY: maybe-distclean-tcl distclean-tcl
+maybe-distclean-tcl:
+@if tcl
+maybe-distclean-tcl: distclean-tcl
 
-installcheck-ld: \
-    configure-ld 
-       @[ -f ./ld/Makefile ] || exit 0; \
+distclean-tcl: 
+       @[ -f ./tcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 tcl" ; \
+       (cd tcl && \
          $(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 tcl
 
-.PHONY: maybe-installcheck-libgui installcheck-libgui
-maybe-installcheck-libgui:
+.PHONY: maybe-maintainer-clean-tcl maintainer-clean-tcl
+maybe-maintainer-clean-tcl:
+@if tcl
+maybe-maintainer-clean-tcl: maintainer-clean-tcl
 
-installcheck-libgui: \
-    configure-libgui 
-       @[ -f ./libgui/Makefile ] || exit 0; \
+maintainer-clean-tcl: 
+       @[ -f ./tcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 tcl" ; \
+       (cd tcl && \
          $(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 tcl
 
-.PHONY: maybe-installcheck-libiberty installcheck-libiberty
-maybe-installcheck-libiberty:
 
-installcheck-libiberty: \
-    configure-libiberty 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
+.PHONY: configure-itcl maybe-configure-itcl
+maybe-configure-itcl:
+@if itcl
+maybe-configure-itcl: configure-itcl
+configure-itcl:
+       @test ! -f itcl/Makefile || exit 0; \
+       [ -d itcl ] || mkdir itcl; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 libiberty" ; \
-       (cd 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) \
+       $(HOST_EXPORTS) \
+       echo Configuring in itcl; \
+       cd itcl || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif itcl
 
+.PHONY: all-itcl maybe-all-itcl
+maybe-all-itcl:
+@if itcl
+maybe-all-itcl: all-itcl
+all-itcl: configure-itcl
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd itcl && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif itcl
 
-.PHONY: maybe-installcheck-libtool installcheck-libtool
-maybe-installcheck-libtool:
+.PHONY: check-itcl maybe-check-itcl
+maybe-check-itcl:
+@if itcl
+maybe-check-itcl: check-itcl
 
-installcheck-libtool: \
-    configure-libtool 
-       @[ -f ./libtool/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-itcl:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 installcheck) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd itcl && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif itcl
 
-.PHONY: maybe-installcheck-m4 installcheck-m4
-maybe-installcheck-m4:
+.PHONY: install-itcl maybe-install-itcl
+maybe-install-itcl:
+@if itcl
+maybe-install-itcl: install-itcl
 
-installcheck-m4: \
-    configure-m4 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-itcl: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 installcheck) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd itcl && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif itcl
 
-.PHONY: maybe-installcheck-make installcheck-make
-maybe-installcheck-make:
+# Other targets (info, dvi, etc.)
 
-installcheck-make: \
-    configure-make 
-       @[ -f ./make/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in itcl" ; \
+       (cd itcl && \
          $(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 itcl
 
-.PHONY: maybe-installcheck-mmalloc installcheck-mmalloc
-maybe-installcheck-mmalloc:
+.PHONY: maybe-dvi-itcl dvi-itcl
+maybe-dvi-itcl:
+@if itcl
+maybe-dvi-itcl: dvi-itcl
 
-installcheck-mmalloc: \
-    configure-mmalloc 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
+dvi-itcl: \
+    configure-itcl 
+       @[ -f ./itcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in itcl" ; \
+       (cd itcl && \
          $(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 itcl
 
-.PHONY: maybe-installcheck-patch installcheck-patch
-maybe-installcheck-patch:
+.PHONY: maybe-TAGS-itcl TAGS-itcl
+maybe-TAGS-itcl:
+@if itcl
+maybe-TAGS-itcl: TAGS-itcl
 
-installcheck-patch: \
-    configure-patch 
-       @[ -f ./patch/Makefile ] || exit 0; \
+TAGS-itcl: \
+    configure-itcl 
+       @[ -f ./itcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in itcl" ; \
+       (cd itcl && \
          $(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 itcl
 
-.PHONY: maybe-installcheck-perl installcheck-perl
-maybe-installcheck-perl:
+.PHONY: maybe-install-info-itcl install-info-itcl
+maybe-install-info-itcl:
+@if itcl
+maybe-install-info-itcl: install-info-itcl
 
-installcheck-perl: \
-    configure-perl 
-       @[ -f ./perl/Makefile ] || exit 0; \
+install-info-itcl: \
+    configure-itcl \
+    info-itcl 
+       @[ -f ./itcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in itcl" ; \
+       (cd itcl && \
          $(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 itcl
 
-.PHONY: maybe-installcheck-prms installcheck-prms
-maybe-installcheck-prms:
+.PHONY: maybe-installcheck-itcl installcheck-itcl
+maybe-installcheck-itcl:
+@if itcl
+maybe-installcheck-itcl: installcheck-itcl
 
-installcheck-prms: \
-    configure-prms 
-       @[ -f ./prms/Makefile ] || exit 0; \
+installcheck-itcl: \
+    configure-itcl 
+       @[ -f ./itcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in itcl" ; \
+       (cd itcl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9283,197 +11723,303 @@ installcheck-prms: \
                  installcheck) \
          || exit 1
 
+@endif itcl
 
-.PHONY: maybe-installcheck-rcs installcheck-rcs
-maybe-installcheck-rcs:
+.PHONY: maybe-mostlyclean-itcl mostlyclean-itcl
+maybe-mostlyclean-itcl:
+@if itcl
+maybe-mostlyclean-itcl: mostlyclean-itcl
 
-installcheck-rcs: \
-    configure-rcs 
-       @[ -f ./rcs/Makefile ] || exit 0; \
+mostlyclean-itcl: 
+       @[ -f ./itcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in itcl" ; \
+       (cd itcl && \
          $(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 itcl
 
-.PHONY: maybe-installcheck-readline installcheck-readline
-maybe-installcheck-readline:
+.PHONY: maybe-clean-itcl clean-itcl
+maybe-clean-itcl:
+@if itcl
+maybe-clean-itcl: clean-itcl
 
-installcheck-readline: \
-    configure-readline 
-       @[ -f ./readline/Makefile ] || exit 0; \
+clean-itcl: 
+       @[ -f ./itcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in itcl" ; \
+       (cd itcl && \
          $(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 itcl
 
-.PHONY: maybe-installcheck-release installcheck-release
-maybe-installcheck-release:
+.PHONY: maybe-distclean-itcl distclean-itcl
+maybe-distclean-itcl:
+@if itcl
+maybe-distclean-itcl: distclean-itcl
 
-installcheck-release: \
-    configure-release 
-       @[ -f ./release/Makefile ] || exit 0; \
+distclean-itcl: 
+       @[ -f ./itcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in itcl" ; \
+       (cd itcl && \
          $(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 itcl
 
-.PHONY: maybe-installcheck-recode installcheck-recode
-maybe-installcheck-recode:
+.PHONY: maybe-maintainer-clean-itcl maintainer-clean-itcl
+maybe-maintainer-clean-itcl:
+@if itcl
+maybe-maintainer-clean-itcl: maintainer-clean-itcl
 
-installcheck-recode: \
-    configure-recode 
-       @[ -f ./recode/Makefile ] || exit 0; \
+maintainer-clean-itcl: 
+       @[ -f ./itcl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in itcl" ; \
+       (cd itcl && \
          $(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 itcl
 
-.PHONY: maybe-installcheck-sed installcheck-sed
-maybe-installcheck-sed:
 
-installcheck-sed: \
-    configure-sed 
-       @[ -f ./sed/Makefile ] || exit 0; \
+.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 ld/Makefile || exit 0; \
+       [ -d ld ] || mkdir ld; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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 ld
+
+.PHONY: all-ld maybe-all-ld
+maybe-all-ld:
+@if ld
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd ld && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info 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}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-send-pr installcheck-send-pr
-maybe-installcheck-send-pr:
+.PHONY: maybe-dvi-ld dvi-ld
+maybe-dvi-ld:
+@if ld
+maybe-dvi-ld: dvi-ld
 
-installcheck-send-pr: \
-    configure-send-pr 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
+dvi-ld: \
+    configure-ld 
+       @[ -f ./ld/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi 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}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-shellutils installcheck-shellutils
-maybe-installcheck-shellutils:
+.PHONY: maybe-TAGS-ld TAGS-ld
+maybe-TAGS-ld:
+@if ld
+maybe-TAGS-ld: TAGS-ld
 
-installcheck-shellutils: \
-    configure-shellutils 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
+TAGS-ld: \
+    configure-ld 
+       @[ -f ./ld/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-sid installcheck-sid
-maybe-installcheck-sid:
+.PHONY: maybe-install-info-ld install-info-ld
+maybe-install-info-ld:
+@if ld
+maybe-install-info-ld: install-info-ld
 
-installcheck-sid: \
-    configure-sid 
-       @[ -f ./sid/Makefile ] || exit 0; \
+install-info-ld: \
+    configure-ld \
+    info-ld 
+       @[ -f ./ld/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-sim installcheck-sim
-maybe-installcheck-sim:
+.PHONY: maybe-installcheck-ld installcheck-ld
+maybe-installcheck-ld:
+@if ld
+maybe-installcheck-ld: installcheck-ld
 
-installcheck-sim: \
-    configure-sim 
-       @[ -f ./sim/Makefile ] || exit 0; \
+installcheck-ld: \
+    configure-ld 
+       @[ -f ./ld/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in ld" ; \
+       (cd ld && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9481,197 +12027,303 @@ installcheck-sim: \
                  installcheck) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-tar installcheck-tar
-maybe-installcheck-tar:
+.PHONY: maybe-mostlyclean-ld mostlyclean-ld
+maybe-mostlyclean-ld:
+@if ld
+maybe-mostlyclean-ld: mostlyclean-ld
 
-installcheck-tar: \
-    configure-tar 
-       @[ -f ./tar/Makefile ] || exit 0; \
+mostlyclean-ld: 
+       @[ -f ./ld/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-texinfo installcheck-texinfo
-maybe-installcheck-texinfo:
+.PHONY: maybe-clean-ld clean-ld
+maybe-clean-ld:
+@if ld
+maybe-clean-ld: clean-ld
 
-installcheck-texinfo: \
-    configure-texinfo 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+clean-ld: 
+       @[ -f ./ld/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-textutils installcheck-textutils
-maybe-installcheck-textutils:
+.PHONY: maybe-distclean-ld distclean-ld
+maybe-distclean-ld:
+@if ld
+maybe-distclean-ld: distclean-ld
 
-installcheck-textutils: \
-    configure-textutils 
-       @[ -f ./textutils/Makefile ] || exit 0; \
+distclean-ld: 
+       @[ -f ./ld/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif ld
 
-.PHONY: maybe-installcheck-time installcheck-time
-maybe-installcheck-time:
+.PHONY: maybe-maintainer-clean-ld maintainer-clean-ld
+maybe-maintainer-clean-ld:
+@if ld
+maybe-maintainer-clean-ld: maintainer-clean-ld
 
-installcheck-time: \
-    configure-time 
-       @[ -f ./time/Makefile ] || exit 0; \
+maintainer-clean-ld: 
+       @[ -f ./ld/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       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}" \
-                 installcheck) \
+                 maintainer-clean) \
+         || exit 1
+
+@endif ld
+
+
+.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 libcpp/Makefile || exit 0; \
+       [ -d libcpp ] || mkdir libcpp; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in libcpp; \
+       cd libcpp || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
          || exit 1
+@endif libcpp
+
+.PHONY: all-libcpp maybe-all-libcpp
+maybe-all-libcpp:
+@if libcpp
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd libcpp && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd libcpp && $(MAKE) $(FLAGS_TO_PASS) install)
 
-.PHONY: maybe-installcheck-uudecode installcheck-uudecode
-maybe-installcheck-uudecode:
+@endif libcpp
 
-installcheck-uudecode: \
-    configure-uudecode 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
+# 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 libcpp" ; \
+       (cd 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-wdiff installcheck-wdiff
-maybe-installcheck-wdiff:
+.PHONY: maybe-dvi-libcpp dvi-libcpp
+maybe-dvi-libcpp:
+@if libcpp
+maybe-dvi-libcpp: dvi-libcpp
 
-installcheck-wdiff: \
-    configure-wdiff 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
+dvi-libcpp: \
+    configure-libcpp 
+       @[ -f ./libcpp/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 libcpp" ; \
+       (cd 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-zip installcheck-zip
-maybe-installcheck-zip:
+.PHONY: maybe-TAGS-libcpp TAGS-libcpp
+maybe-TAGS-libcpp:
+@if libcpp
+maybe-TAGS-libcpp: TAGS-libcpp
 
-installcheck-zip: \
-    configure-zi
-       @[ -f ./zip/Makefile ] || exit 0; \
+TAGS-libcpp: \
+    configure-libcp
+       @[ -f ./libcpp/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in libcpp" ; \
+       (cd 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-zlib installcheck-zlib
-maybe-installcheck-zlib:
+.PHONY: maybe-install-info-libcpp install-info-libcpp
+maybe-install-info-libcpp:
+@if libcpp
+maybe-install-info-libcpp: install-info-libcpp
 
-installcheck-zlib: \
-    configure-zlib 
-       @[ -f ./zlib/Makefile ] || exit 0; \
+install-info-libcpp: \
+    configure-libcpp \
+    info-libcpp 
+       @[ -f ./libcpp/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in libcpp" ; \
+       (cd 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-gdb installcheck-gdb
-maybe-installcheck-gdb:
+.PHONY: maybe-installcheck-libcpp installcheck-libcpp
+maybe-installcheck-libcpp:
+@if libcpp
+maybe-installcheck-libcpp: installcheck-libcpp
 
-installcheck-gdb: \
-    configure-gdb 
-       @[ -f ./gdb/Makefile ] || exit 0; \
+installcheck-libcpp: \
+    configure-libcpp 
+       @[ -f ./libcpp/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in libcpp" ; \
+       (cd libcpp && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9679,222 +12331,301 @@ installcheck-gdb: \
                  installcheck) \
          || exit 1
 
+@endif libcpp
 
-.PHONY: maybe-installcheck-expect installcheck-expect
-maybe-installcheck-expect:
+.PHONY: maybe-mostlyclean-libcpp mostlyclean-libcpp
+maybe-mostlyclean-libcpp:
+@if libcpp
+maybe-mostlyclean-libcpp: mostlyclean-libcpp
 
-installcheck-expect: \
-    configure-expect 
-       @[ -f ./expect/Makefile ] || exit 0; \
+mostlyclean-libcpp: 
+       @[ -f ./libcpp/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in libcpp" ; \
+       (cd 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-guile installcheck-guile
-maybe-installcheck-guile:
+.PHONY: maybe-clean-libcpp clean-libcpp
+maybe-clean-libcpp:
+@if libcpp
+maybe-clean-libcpp: clean-libcpp
 
-installcheck-guile: \
-    configure-guile 
-       @[ -f ./guile/Makefile ] || exit 0; \
+clean-libcpp: 
+       @[ -f ./libcpp/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in libcpp" ; \
+       (cd 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-tk installcheck-tk
-maybe-installcheck-tk:
+.PHONY: maybe-distclean-libcpp distclean-libcpp
+maybe-distclean-libcpp:
+@if libcpp
+maybe-distclean-libcpp: distclean-libcpp
 
-installcheck-tk: \
-    configure-tk 
-       @[ -f ./tk/Makefile ] || exit 0; \
+distclean-libcpp: 
+       @[ -f ./libcpp/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in libcpp" ; \
+       (cd 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-tix installcheck-tix
-maybe-installcheck-tix:
+.PHONY: maybe-maintainer-clean-libcpp maintainer-clean-libcpp
+maybe-maintainer-clean-libcpp:
+@if libcpp
+maybe-maintainer-clean-libcpp: maintainer-clean-libcpp
 
-installcheck-tix: \
-    configure-tix 
-       @[ -f ./tix/Makefile ] || exit 0; \
+maintainer-clean-libcpp: 
+       @[ -f ./libcpp/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in libcpp" ; \
+       (cd 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-libtermcap installcheck-libtermcap
-maybe-installcheck-libtermcap:
 
-installcheck-libtermcap: \
-    configure-libtermcap 
-       @[ -f ./libtermcap/Makefile ] || exit 0; \
+.PHONY: configure-libgui maybe-configure-libgui
+maybe-configure-libgui:
+@if libgui
+maybe-configure-libgui: configure-libgui
+configure-libgui:
+       @test ! -f libgui/Makefile || exit 0; \
+       [ -d libgui ] || mkdir libgui; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 libtermcap" ; \
-       (cd 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) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif libgui
 
+.PHONY: all-libgui maybe-all-libgui
+maybe-all-libgui:
+@if libgui
+maybe-all-libgui: all-libgui
+all-libgui: configure-libgui
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd libgui && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif libgui
 
-.PHONY: maybe-installcheck-utils installcheck-utils
-maybe-installcheck-utils:
+.PHONY: check-libgui maybe-check-libgui
+maybe-check-libgui:
+@if libgui
+maybe-check-libgui: check-libgui
 
-installcheck-utils: \
-    configure-utils 
-       @[ -f ./utils/Makefile ] || exit 0; \
+check-libgui:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing info 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}" \
-                 installcheck) \
+                 info) \
          || exit 1
 
+@endif libgui
 
+.PHONY: maybe-dvi-libgui dvi-libgui
+maybe-dvi-libgui:
+@if libgui
+maybe-dvi-libgui: dvi-libgui
 
-# Target modules.
-
-.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 ; \
+dvi-libgui: \
+    configure-libgui 
+       @[ -f ./libgui/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi 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}" \
-                 installcheck) \
+                 dvi) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-target-newlib installcheck-target-newlib
-maybe-installcheck-target-newlib:
+.PHONY: maybe-TAGS-libgui TAGS-libgui
+maybe-TAGS-libgui:
+@if libgui
+maybe-TAGS-libgui: TAGS-libgui
 
-installcheck-target-newlib: \
-    configure-target-newlib 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+TAGS-libgui: \
+    configure-libgui 
+       @[ -f ./libgui/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 installcheck) \
+                 TAGS) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-target-libf2c installcheck-target-libf2c
-maybe-installcheck-target-libf2c:
+.PHONY: maybe-install-info-libgui install-info-libgui
+maybe-install-info-libgui:
+@if libgui
+maybe-install-info-libgui: install-info-libgui
 
-installcheck-target-libf2c: \
-    configure-target-libf2c 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
+install-info-libgui: \
+    configure-libgui \
+    info-libgui 
+       @[ -f ./libgui/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 installcheck) \
+                 install-info) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-target-libobjc installcheck-target-libobjc
-maybe-installcheck-target-libobjc:
+.PHONY: maybe-installcheck-libgui installcheck-libgui
+maybe-installcheck-libgui:
+@if libgui
+maybe-installcheck-libgui: installcheck-libgui
 
-installcheck-target-libobjc: \
-    configure-target-libobjc 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+installcheck-libgui: \
+    configure-libgui 
+       @[ -f ./libgui/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 libgui" ; \
+       (cd libgui && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -9902,197 +12633,298 @@ installcheck-target-libobjc: \
                  installcheck) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-target-libtermcap installcheck-target-libtermcap
-maybe-installcheck-target-libtermcap:
+.PHONY: maybe-mostlyclean-libgui mostlyclean-libgui
+maybe-mostlyclean-libgui:
+@if libgui
+maybe-mostlyclean-libgui: mostlyclean-libgui
 
-installcheck-target-libtermcap: \
-    configure-target-libtermcap 
-       @[ -f $(TARGET_SUBDIR)/libtermcap/Makefile ] || exit 0 ; \
+mostlyclean-libgui: 
+       @[ -f ./libgui/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libtermcap" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 installcheck) \
+                 mostlyclean) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-target-winsup installcheck-target-winsup
-maybe-installcheck-target-winsup:
+.PHONY: maybe-clean-libgui clean-libgui
+maybe-clean-libgui:
+@if libgui
+maybe-clean-libgui: clean-libgui
 
-installcheck-target-winsup: \
-    configure-target-winsup 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+clean-libgui: 
+       @[ -f ./libgui/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 installcheck) \
+                 clean) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-target-libgloss installcheck-target-libgloss
-maybe-installcheck-target-libgloss:
+.PHONY: maybe-distclean-libgui distclean-libgui
+maybe-distclean-libgui:
+@if libgui
+maybe-distclean-libgui: distclean-libgui
 
-installcheck-target-libgloss: \
-    configure-target-libgloss 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+distclean-libgui: 
+       @[ -f ./libgui/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 installcheck) \
+                 distclean) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-target-libiberty installcheck-target-libiberty
-maybe-installcheck-target-libiberty:
+.PHONY: maybe-maintainer-clean-libgui maintainer-clean-libgui
+maybe-maintainer-clean-libgui:
+@if libgui
+maybe-maintainer-clean-libgui: maintainer-clean-libgui
 
-installcheck-target-libiberty: \
-    configure-target-libiberty 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+maintainer-clean-libgui: 
+       @[ -f ./libgui/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 installcheck) \
+                 maintainer-clean) \
          || exit 1
 
+@endif libgui
 
-.PHONY: maybe-installcheck-target-gperf installcheck-target-gperf
-maybe-installcheck-target-gperf:
 
-installcheck-target-gperf: \
-    configure-target-gperf 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+.PHONY: configure-libbanshee maybe-configure-libbanshee
+maybe-configure-libbanshee:
+@if libbanshee
+maybe-configure-libbanshee: configure-libbanshee
+configure-libbanshee:
+       @test -f stage_last && exit 0; \
+       test ! -f libbanshee/Makefile || exit 0; \
+       [ -d libbanshee ] || mkdir libbanshee; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in libbanshee; \
+       cd libbanshee || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif libbanshee
+
+.PHONY: all-libbanshee maybe-all-libbanshee
+maybe-all-libbanshee:
+@if libbanshee
+maybe-all-libbanshee: all-libbanshee
+all-libbanshee: configure-libbanshee
+       @test -f stage_last && exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(HOST_EXPORTS) \
+       (cd libbanshee && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif libbanshee
+
+.PHONY: check-libbanshee maybe-check-libbanshee
+maybe-check-libbanshee:
+@if libbanshee
+maybe-check-libbanshee: check-libbanshee
+
+check-libbanshee:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd libbanshee && $(MAKE) $(FLAGS_TO_PASS) check)
+
+@endif libbanshee
+
+.PHONY: install-libbanshee maybe-install-libbanshee
+maybe-install-libbanshee:
+@if libbanshee
+maybe-install-libbanshee: install-libbanshee
+
+install-libbanshee:
+
+@endif libbanshee
+
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-libbanshee info-libbanshee
+maybe-info-libbanshee:
+@if libbanshee
+maybe-info-libbanshee: info-libbanshee
+
+info-libbanshee: \
+    configure-libbanshee 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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 info in libbanshee" ; \
+       (cd libbanshee && \
          $(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 libbanshee
 
-.PHONY: maybe-installcheck-target-examples installcheck-target-examples
-maybe-installcheck-target-examples:
+.PHONY: maybe-dvi-libbanshee dvi-libbanshee
+maybe-dvi-libbanshee:
+@if libbanshee
+maybe-dvi-libbanshee: dvi-libbanshee
 
-installcheck-target-examples: \
-    configure-target-examples 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+dvi-libbanshee: \
+    configure-libbanshee 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi in libbanshee" ; \
+       (cd libbanshee && \
          $(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 libbanshee
 
-.PHONY: maybe-installcheck-target-libffi installcheck-target-libffi
-maybe-installcheck-target-libffi:
+.PHONY: maybe-TAGS-libbanshee TAGS-libbanshee
+maybe-TAGS-libbanshee:
+@if libbanshee
+maybe-TAGS-libbanshee: TAGS-libbanshee
 
-installcheck-target-libffi: \
-    configure-target-libffi 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+TAGS-libbanshee: \
+    configure-libbanshee 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 TAGS in libbanshee" ; \
+       (cd libbanshee && \
          $(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 libbanshee
 
-.PHONY: maybe-installcheck-target-libjava installcheck-target-libjava
-maybe-installcheck-target-libjava:
+.PHONY: maybe-install-info-libbanshee install-info-libbanshee
+maybe-install-info-libbanshee:
+@if libbanshee
+maybe-install-info-libbanshee: install-info-libbanshee
 
-installcheck-target-libjava: \
-    configure-target-libjava 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+install-info-libbanshee: \
+    configure-libbanshee \
+    info-libbanshee 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info in libbanshee" ; \
+       (cd libbanshee && \
          $(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 libbanshee
 
-.PHONY: maybe-installcheck-target-zlib installcheck-target-zlib
-maybe-installcheck-target-zlib:
+.PHONY: maybe-installcheck-libbanshee installcheck-libbanshee
+maybe-installcheck-libbanshee:
+@if libbanshee
+maybe-installcheck-libbanshee: installcheck-libbanshee
 
-installcheck-target-zlib: \
-    configure-target-zlib 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+installcheck-libbanshee: \
+    configure-libbanshee 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck in libbanshee" ; \
+       (cd libbanshee && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -10100,345 +12932,328 @@ installcheck-target-zlib: \
                  installcheck) \
          || exit 1
 
+@endif libbanshee
 
-.PHONY: maybe-installcheck-target-boehm-gc installcheck-target-boehm-gc
-maybe-installcheck-target-boehm-gc:
+.PHONY: maybe-mostlyclean-libbanshee mostlyclean-libbanshee
+maybe-mostlyclean-libbanshee:
+@if libbanshee
+maybe-mostlyclean-libbanshee: mostlyclean-libbanshee
 
-installcheck-target-boehm-gc: \
-    configure-target-boehm-gc 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+mostlyclean-libbanshee: 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean in libbanshee" ; \
+       (cd libbanshee && \
          $(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 libbanshee
 
-.PHONY: maybe-installcheck-target-qthreads installcheck-target-qthreads
-maybe-installcheck-target-qthreads:
+.PHONY: maybe-clean-libbanshee clean-libbanshee
+maybe-clean-libbanshee:
+@if libbanshee
+maybe-clean-libbanshee: clean-libbanshee
 
-installcheck-target-qthreads: \
-    configure-target-qthreads 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+clean-libbanshee: 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean in libbanshee" ; \
+       (cd libbanshee && \
          $(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 libbanshee
 
-.PHONY: maybe-installcheck-target-rda installcheck-target-rda
-maybe-installcheck-target-rda:
+.PHONY: maybe-distclean-libbanshee distclean-libbanshee
+maybe-distclean-libbanshee:
+@if libbanshee
+maybe-distclean-libbanshee: distclean-libbanshee
 
-installcheck-target-rda: \
-    configure-target-rda 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+distclean-libbanshee: 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing installcheck in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean in libbanshee" ; \
+       (cd libbanshee && \
          $(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 libbanshee
 
+.PHONY: maybe-maintainer-clean-libbanshee maintainer-clean-libbanshee
+maybe-maintainer-clean-libbanshee:
+@if libbanshee
+maybe-maintainer-clean-libbanshee: maintainer-clean-libbanshee
 
-.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
-
-.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
-
-# GCC, the eternal special case
-.PHONY: maybe-mostlyclean-gcc mostlyclean-gcc
-maybe-mostlyclean-gcc:
-mostlyclean-gcc: 
-       @[ -f ./gcc/Makefile ] || exit 0; \
+maintainer-clean-libbanshee: 
+       @[ -f ./libbanshee/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+       $(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 maintainer-clean in libbanshee" ; \
+       (cd libbanshee && \
          $(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
 
-# Host modules.
+@endif libbanshee
 
-.PHONY: maybe-mostlyclean-ash mostlyclean-ash
-maybe-mostlyclean-ash:
 
-mostlyclean-ash: 
-       @[ -f ./ash/Makefile ] || exit 0; \
+.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 libiberty/Makefile || exit 0; \
+       [ -d libiberty ] || mkdir libiberty; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif libiberty
+
+.PHONY: all-libiberty maybe-all-libiberty
+maybe-all-libiberty:
+@if libiberty
+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; \
        $(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 ash" ; \
-       (cd 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
+       $(HOST_EXPORTS) \
+       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-autoconf mostlyclean-autoconf
-maybe-mostlyclean-autoconf:
+.PHONY: install-libiberty maybe-install-libiberty
+maybe-install-libiberty:
+@if libiberty
+maybe-install-libiberty: install-libiberty
 
-mostlyclean-autoconf: 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-libiberty: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 autoconf" ; \
-       (cd autoconf && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-automake mostlyclean-automake
-maybe-mostlyclean-automake:
+# Other targets (info, dvi, etc.)
 
-mostlyclean-automake: 
-       @[ -f ./automake/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in libiberty" ; \
+       (cd 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) \
+                 info) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-bash mostlyclean-bash
-maybe-mostlyclean-bash:
+.PHONY: maybe-dvi-libiberty dvi-libiberty
+maybe-dvi-libiberty:
+@if libiberty
+maybe-dvi-libiberty: dvi-libiberty
 
-mostlyclean-bash: 
-       @[ -f ./bash/Makefile ] || exit 0; \
+dvi-libiberty: \
+    configure-libiberty 
+       @[ -f ./libiberty/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in libiberty" ; \
+       (cd 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) \
+                 dvi) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-bfd mostlyclean-bfd
-maybe-mostlyclean-bfd:
+.PHONY: maybe-TAGS-libiberty TAGS-libiberty
+maybe-TAGS-libiberty:
+@if libiberty
+maybe-TAGS-libiberty: TAGS-libiberty
 
-mostlyclean-bfd: 
-       @[ -f ./bfd/Makefile ] || exit 0; \
+TAGS-libiberty: \
+    configure-libiberty 
+       @[ -f ./libiberty/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in libiberty" ; \
+       (cd 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) \
+                 TAGS) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-opcodes mostlyclean-opcodes
-maybe-mostlyclean-opcodes:
+.PHONY: maybe-install-info-libiberty install-info-libiberty
+maybe-install-info-libiberty:
+@if libiberty
+maybe-install-info-libiberty: install-info-libiberty
 
-mostlyclean-opcodes: 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
+install-info-libiberty: \
+    configure-libiberty \
+    info-libiberty 
+       @[ -f ./libiberty/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in libiberty" ; \
+       (cd 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) \
+                 install-info) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-binutils mostlyclean-binutils
-maybe-mostlyclean-binutils:
+.PHONY: maybe-installcheck-libiberty installcheck-libiberty
+maybe-installcheck-libiberty:
+@if libiberty
+maybe-installcheck-libiberty: installcheck-libiberty
 
-mostlyclean-binutils: 
-       @[ -f ./binutils/Makefile ] || exit 0; \
+installcheck-libiberty: \
+    configure-libiberty 
+       @[ -f ./libiberty/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in libiberty" ; \
+       (cd 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) \
+                 installcheck) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-bison mostlyclean-bison
-maybe-mostlyclean-bison:
+.PHONY: maybe-mostlyclean-libiberty mostlyclean-libiberty
+maybe-mostlyclean-libiberty:
+@if libiberty
+maybe-mostlyclean-libiberty: mostlyclean-libiberty
 
-mostlyclean-bison
-       @[ -f ./bison/Makefile ] || exit 0; \
+mostlyclean-libiberty
+       @[ -f ./libiberty/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in libiberty" ; \
+       (cd libiberty && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -10446,251 +13261,301 @@ mostlyclean-bison:
                  mostlyclean) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-byacc mostlyclean-byacc
-maybe-mostlyclean-byacc:
+.PHONY: maybe-clean-libiberty clean-libiberty
+maybe-clean-libiberty:
+@if libiberty
+maybe-clean-libiberty: clean-libiberty
 
-mostlyclean-byacc
-       @[ -f ./byacc/Makefile ] || exit 0; \
+clean-libiberty
+       @[ -f ./libiberty/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in libiberty" ; \
+       (cd 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) \
+                 clean) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-bzip2 mostlyclean-bzip2
-maybe-mostlyclean-bzip2:
+.PHONY: maybe-distclean-libiberty distclean-libiberty
+maybe-distclean-libiberty:
+@if libiberty
+maybe-distclean-libiberty: distclean-libiberty
 
-mostlyclean-bzip2
-       @[ -f ./bzip2/Makefile ] || exit 0; \
+distclean-libiberty
+       @[ -f ./libiberty/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in libiberty" ; \
+       (cd 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) \
+                 distclean) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-dejagnu mostlyclean-dejagnu
-maybe-mostlyclean-dejagnu:
+.PHONY: maybe-maintainer-clean-libiberty maintainer-clean-libiberty
+maybe-maintainer-clean-libiberty:
+@if libiberty
+maybe-maintainer-clean-libiberty: maintainer-clean-libiberty
 
-mostlyclean-dejagnu
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
+maintainer-clean-libiberty
+       @[ -f ./libiberty/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in libiberty" ; \
+       (cd 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) \
+                 maintainer-clean) \
          || exit 1
 
+@endif libiberty
 
-.PHONY: maybe-mostlyclean-diff mostlyclean-diff
-maybe-mostlyclean-diff:
 
-mostlyclean-diff: 
-       @[ -f ./diff/Makefile ] || exit 0; \
+.PHONY: configure-libtool maybe-configure-libtool
+maybe-configure-libtool:
+@if libtool
+maybe-configure-libtool: configure-libtool
+configure-libtool:
+       @test ! -f libtool/Makefile || exit 0; \
+       [ -d libtool ] || mkdir libtool; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 diff" ; \
-       (cd diff && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif libtool
 
+.PHONY: all-libtool maybe-all-libtool
+maybe-all-libtool:
+@if libtool
+maybe-all-libtool: all-libtool
+all-libtool: configure-libtool
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd libtool && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif libtool
 
-.PHONY: maybe-mostlyclean-dosutils mostlyclean-dosutils
-maybe-mostlyclean-dosutils:
+.PHONY: check-libtool maybe-check-libtool
+maybe-check-libtool:
+@if libtool
+maybe-check-libtool: check-libtool
 
-mostlyclean-dosutils: 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-libtool:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 dosutils" ; \
-       (cd dosutils && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd libtool && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-etc mostlyclean-etc
-maybe-mostlyclean-etc:
+.PHONY: install-libtool maybe-install-libtool
+maybe-install-libtool:
+@if libtool
+maybe-install-libtool: install-libtool
 
-mostlyclean-etc: 
-       @[ -f ./etc/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-libtool: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 etc" ; \
-       (cd etc && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd libtool && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-fastjar mostlyclean-fastjar
-maybe-mostlyclean-fastjar:
+# Other targets (info, dvi, etc.)
 
-mostlyclean-fastjar: 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info 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}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-fileutils mostlyclean-fileutils
-maybe-mostlyclean-fileutils:
+.PHONY: maybe-dvi-libtool dvi-libtool
+maybe-dvi-libtool:
+@if libtool
+maybe-dvi-libtool: dvi-libtool
 
-mostlyclean-fileutils: 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
+dvi-libtool: \
+    configure-libtool 
+       @[ -f ./libtool/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-findutils mostlyclean-findutils
-maybe-mostlyclean-findutils:
+.PHONY: maybe-TAGS-libtool TAGS-libtool
+maybe-TAGS-libtool:
+@if libtool
+maybe-TAGS-libtool: TAGS-libtool
 
-mostlyclean-findutils: 
-       @[ -f ./findutils/Makefile ] || exit 0; \
+TAGS-libtool: \
+    configure-libtool 
+       @[ -f ./libtool/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-find mostlyclean-find
-maybe-mostlyclean-find:
+.PHONY: maybe-install-info-libtool install-info-libtool
+maybe-install-info-libtool:
+@if libtool
+maybe-install-info-libtool: install-info-libtool
 
-mostlyclean-find: 
-       @[ -f ./find/Makefile ] || exit 0; \
+install-info-libtool: \
+    configure-libtool \
+    info-libtool 
+       @[ -f ./libtool/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-flex mostlyclean-flex
-maybe-mostlyclean-flex:
+.PHONY: maybe-installcheck-libtool installcheck-libtool
+maybe-installcheck-libtool:
+@if libtool
+maybe-installcheck-libtool: installcheck-libtool
 
-mostlyclean-flex: 
-       @[ -f ./flex/Makefile ] || exit 0; \
+installcheck-libtool: \
+    configure-libtool 
+       @[ -f ./libtool/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-gas mostlyclean-gas
-maybe-mostlyclean-gas:
+.PHONY: maybe-mostlyclean-libtool mostlyclean-libtool
+maybe-mostlyclean-libtool:
+@if libtool
+maybe-mostlyclean-libtool: mostlyclean-libtool
 
-mostlyclean-gas
-       @[ -f ./gas/Makefile ] || exit 0; \
+mostlyclean-libtool
+       @[ -f ./libtool/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 libtool" ; \
+       (cd libtool && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -10698,195 +13563,301 @@ mostlyclean-gas:
                  mostlyclean) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-gawk mostlyclean-gawk
-maybe-mostlyclean-gawk:
+.PHONY: maybe-clean-libtool clean-libtool
+maybe-clean-libtool:
+@if libtool
+maybe-clean-libtool: clean-libtool
 
-mostlyclean-gawk
-       @[ -f ./gawk/Makefile ] || exit 0; \
+clean-libtool
+       @[ -f ./libtool/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-gettext mostlyclean-gettext
-maybe-mostlyclean-gettext:
+.PHONY: maybe-distclean-libtool distclean-libtool
+maybe-distclean-libtool:
+@if libtool
+maybe-distclean-libtool: distclean-libtool
 
-mostlyclean-gettext
-       @[ -f ./gettext/Makefile ] || exit 0; \
+distclean-libtool
+       @[ -f ./libtool/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-gnuserv mostlyclean-gnuserv
-maybe-mostlyclean-gnuserv:
+.PHONY: maybe-maintainer-clean-libtool maintainer-clean-libtool
+maybe-maintainer-clean-libtool:
+@if libtool
+maybe-maintainer-clean-libtool: maintainer-clean-libtool
 
-mostlyclean-gnuserv
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
+maintainer-clean-libtool
+       @[ -f ./libtool/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif libtool
 
-.PHONY: maybe-mostlyclean-gprof mostlyclean-gprof
-maybe-mostlyclean-gprof:
 
-mostlyclean-gprof: 
-       @[ -f ./gprof/Makefile ] || exit 0; \
+.PHONY: configure-m4 maybe-configure-m4
+maybe-configure-m4:
+@if m4
+maybe-configure-m4: configure-m4
+configure-m4:
+       @test ! -f m4/Makefile || exit 0; \
+       [ -d m4 ] || mkdir m4; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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
+@endif m4
+
+.PHONY: all-m4 maybe-all-m4
+maybe-all-m4:
+@if m4
+maybe-all-m4: all-m4
+all-m4: configure-m4
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd m4 && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gprof && \
+       echo "Doing info 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}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-mostlyclean-gzip mostlyclean-gzip
-maybe-mostlyclean-gzip:
+.PHONY: maybe-dvi-m4 dvi-m4
+maybe-dvi-m4:
+@if m4
+maybe-dvi-m4: dvi-m4
 
-mostlyclean-gzip: 
-       @[ -f ./gzip/Makefile ] || exit 0; \
+dvi-m4: \
+    configure-m4 
+       @[ -f ./m4/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-mostlyclean-hello mostlyclean-hello
-maybe-mostlyclean-hello:
+.PHONY: maybe-TAGS-m4 TAGS-m4
+maybe-TAGS-m4:
+@if m4
+maybe-TAGS-m4: TAGS-m4
 
-mostlyclean-hello: 
-       @[ -f ./hello/Makefile ] || exit 0; \
+TAGS-m4: \
+    configure-m4 
+       @[ -f ./m4/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-mostlyclean-indent mostlyclean-indent
-maybe-mostlyclean-indent:
+.PHONY: maybe-install-info-m4 install-info-m4
+maybe-install-info-m4:
+@if m4
+maybe-install-info-m4: install-info-m4
 
-mostlyclean-indent: 
-       @[ -f ./indent/Makefile ] || exit 0; \
+install-info-m4: \
+    configure-m4 \
+    info-m4 
+       @[ -f ./m4/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-mostlyclean-intl mostlyclean-intl
-maybe-mostlyclean-intl:
+.PHONY: maybe-installcheck-m4 installcheck-m4
+maybe-installcheck-m4:
+@if m4
+maybe-installcheck-m4: installcheck-m4
 
-mostlyclean-intl: 
-       @[ -f ./intl/Makefile ] || exit 0; \
+installcheck-m4: \
+    configure-m4 
+       @[ -f ./m4/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif m4
 
-.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:
-
-mostlyclean-itcl: 
-       @[ -f ./itcl/Makefile ] || exit 0; \
+.PHONY: maybe-mostlyclean-m4 mostlyclean-m4
+maybe-mostlyclean-m4:
+@if m4
+maybe-mostlyclean-m4: mostlyclean-m4
+
+mostlyclean-m4: 
+       @[ -f ./m4/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in m4" ; \
+       (cd m4 && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -10894,188 +13865,301 @@ mostlyclean-itcl:
                  mostlyclean) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-mostlyclean-ld mostlyclean-ld
-maybe-mostlyclean-ld:
+.PHONY: maybe-clean-m4 clean-m4
+maybe-clean-m4:
+@if m4
+maybe-clean-m4: clean-m4
 
-mostlyclean-ld
-       @[ -f ./ld/Makefile ] || exit 0; \
+clean-m4
+       @[ -f ./m4/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean 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}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-mostlyclean-libgui mostlyclean-libgui
-maybe-mostlyclean-libgui:
+.PHONY: maybe-distclean-m4 distclean-m4
+maybe-distclean-m4:
+@if m4
+maybe-distclean-m4: distclean-m4
 
-mostlyclean-libgui
-       @[ -f ./libgui/Makefile ] || exit 0; \
+distclean-m4
+       @[ -f ./m4/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-mostlyclean-libiberty mostlyclean-libiberty
-maybe-mostlyclean-libiberty:
+.PHONY: maybe-maintainer-clean-m4 maintainer-clean-m4
+maybe-maintainer-clean-m4:
+@if m4
+maybe-maintainer-clean-m4: maintainer-clean-m4
 
-mostlyclean-libiberty
-       @[ -f ./libiberty/Makefile ] || exit 0; \
+maintainer-clean-m4
+       @[ -f ./m4/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif m4
 
-.PHONY: maybe-mostlyclean-libtool mostlyclean-libtool
-maybe-mostlyclean-libtool:
 
-mostlyclean-libtool: 
-       @[ -f ./libtool/Makefile ] || exit 0; \
+.PHONY: configure-make maybe-configure-make
+maybe-configure-make:
+@if make
+maybe-configure-make: configure-make
+configure-make:
+       @test ! -f make/Makefile || exit 0; \
+       [ -d make ] || mkdir make; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in make; \
+       cd make || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif make
+
+.PHONY: all-make maybe-all-make
+maybe-all-make:
+@if make
+maybe-all-make: all-make
+all-make: configure-make
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd make && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd make && $(MAKE) $(FLAGS_TO_PASS) check)
+
+@endif make
+
+.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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd make && $(MAKE) $(FLAGS_TO_PASS) install)
+
+@endif make
+
+# 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info 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}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-m4 mostlyclean-m4
-maybe-mostlyclean-m4:
+.PHONY: maybe-dvi-make dvi-make
+maybe-dvi-make:
+@if make
+maybe-dvi-make: dvi-make
 
-mostlyclean-m4: 
-       @[ -f ./m4/Makefile ] || exit 0; \
+dvi-make: \
+    configure-make 
+       @[ -f ./make/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-make mostlyclean-make
-maybe-mostlyclean-make:
+.PHONY: maybe-TAGS-make TAGS-make
+maybe-TAGS-make:
+@if make
+maybe-TAGS-make: TAGS-make
 
-mostlyclean-make: 
+TAGS-make: \
+    configure-make 
        @[ -f ./make/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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" ; \
+       echo "Doing TAGS 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}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-mmalloc mostlyclean-mmalloc
-maybe-mostlyclean-mmalloc:
+.PHONY: maybe-install-info-make install-info-make
+maybe-install-info-make:
+@if make
+maybe-install-info-make: install-info-make
 
-mostlyclean-mmalloc: 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
+install-info-make: \
+    configure-make \
+    info-make 
+       @[ -f ./make/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-patch mostlyclean-patch
-maybe-mostlyclean-patch:
+.PHONY: maybe-installcheck-make installcheck-make
+maybe-installcheck-make:
+@if make
+maybe-installcheck-make: installcheck-make
 
-mostlyclean-patch: 
-       @[ -f ./patch/Makefile ] || exit 0; \
+installcheck-make: \
+    configure-make 
+       @[ -f ./make/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-perl mostlyclean-perl
-maybe-mostlyclean-perl:
+.PHONY: maybe-mostlyclean-make mostlyclean-make
+maybe-mostlyclean-make:
+@if make
+maybe-mostlyclean-make: mostlyclean-make
 
-mostlyclean-perl
-       @[ -f ./perl/Makefile ] || exit 0; \
+mostlyclean-make
+       @[ -f ./make/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in make" ; \
+       (cd make && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -11083,230 +14167,296 @@ mostlyclean-perl:
                  mostlyclean) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-prms mostlyclean-prms
-maybe-mostlyclean-prms:
+.PHONY: maybe-clean-make clean-make
+maybe-clean-make:
+@if make
+maybe-clean-make: clean-make
 
-mostlyclean-prms
-       @[ -f ./prms/Makefile ] || exit 0; \
+clean-make
+       @[ -f ./make/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean 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}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-rcs mostlyclean-rcs
-maybe-mostlyclean-rcs:
+.PHONY: maybe-distclean-make distclean-make
+maybe-distclean-make:
+@if make
+maybe-distclean-make: distclean-make
 
-mostlyclean-rcs
-       @[ -f ./rcs/Makefile ] || exit 0; \
+distclean-make
+       @[ -f ./make/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-readline mostlyclean-readline
-maybe-mostlyclean-readline:
+.PHONY: maybe-maintainer-clean-make maintainer-clean-make
+maybe-maintainer-clean-make:
+@if make
+maybe-maintainer-clean-make: maintainer-clean-make
 
-mostlyclean-readline: 
-       @[ -f ./readline/Makefile ] || exit 0; \
+maintainer-clean-make: 
+       @[ -f ./make/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 && \
+       echo "Doing maintainer-clean 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}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif make
 
-.PHONY: maybe-mostlyclean-release mostlyclean-release
-maybe-mostlyclean-release:
 
-mostlyclean-release: 
-       @[ -f ./release/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+.PHONY: configure-mmalloc maybe-configure-mmalloc
+maybe-configure-mmalloc:
+@if mmalloc
+maybe-configure-mmalloc: configure-mmalloc
+configure-mmalloc:
+       @test ! -f mmalloc/Makefile || exit 0; \
+       [ -d mmalloc ] || mkdir mmalloc; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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
+@endif mmalloc
+
+.PHONY: all-mmalloc maybe-all-mmalloc
+maybe-all-mmalloc:
+@if mmalloc
+maybe-all-mmalloc: all-mmalloc
+all-mmalloc: configure-mmalloc
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 mostlyclean) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif mmalloc
 
+.PHONY: check-mmalloc maybe-check-mmalloc
+maybe-check-mmalloc:
+@if mmalloc
+maybe-check-mmalloc: check-mmalloc
 
-.PHONY: maybe-mostlyclean-recode mostlyclean-recode
-maybe-mostlyclean-recode:
+check-mmalloc:
 
-mostlyclean-recode: 
-       @[ -f ./recode/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+@endif mmalloc
+
+.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; \
        $(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 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}" \
-                 mostlyclean) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-sed mostlyclean-sed
-maybe-mostlyclean-sed:
+# Other targets (info, dvi, etc.)
 
-mostlyclean-sed: 
-       @[ -f ./sed/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info 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}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-send-pr mostlyclean-send-pr
-maybe-mostlyclean-send-pr:
+.PHONY: maybe-dvi-mmalloc dvi-mmalloc
+maybe-dvi-mmalloc:
+@if mmalloc
+maybe-dvi-mmalloc: dvi-mmalloc
 
-mostlyclean-send-pr: 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
+dvi-mmalloc: \
+    configure-mmalloc 
+       @[ -f ./mmalloc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       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}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-shellutils mostlyclean-shellutils
-maybe-mostlyclean-shellutils:
+.PHONY: maybe-TAGS-mmalloc TAGS-mmalloc
+maybe-TAGS-mmalloc:
+@if mmalloc
+maybe-TAGS-mmalloc: TAGS-mmalloc
 
-mostlyclean-shellutils: 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
+TAGS-mmalloc: \
+    configure-mmalloc 
+       @[ -f ./mmalloc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       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}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-sid mostlyclean-sid
-maybe-mostlyclean-sid:
+.PHONY: maybe-install-info-mmalloc install-info-mmalloc
+maybe-install-info-mmalloc:
+@if mmalloc
+maybe-install-info-mmalloc: install-info-mmalloc
 
-mostlyclean-sid: 
-       @[ -f ./sid/Makefile ] || exit 0; \
+install-info-mmalloc: \
+    configure-mmalloc \
+    info-mmalloc 
+       @[ -f ./mmalloc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-sim mostlyclean-sim
-maybe-mostlyclean-sim:
+.PHONY: maybe-installcheck-mmalloc installcheck-mmalloc
+maybe-installcheck-mmalloc:
+@if mmalloc
+maybe-installcheck-mmalloc: installcheck-mmalloc
 
-mostlyclean-sim: 
-       @[ -f ./sim/Makefile ] || exit 0; \
+installcheck-mmalloc: \
+    configure-mmalloc 
+       @[ -f ./mmalloc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-tar mostlyclean-tar
-maybe-mostlyclean-tar:
+.PHONY: maybe-mostlyclean-mmalloc mostlyclean-mmalloc
+maybe-mostlyclean-mmalloc:
+@if mmalloc
+maybe-mostlyclean-mmalloc: mostlyclean-mmalloc
 
-mostlyclean-tar
-       @[ -f ./tar/Makefile ] || exit 0; \
+mostlyclean-mmalloc
+       @[ -f ./mmalloc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in mmalloc" ; \
+       (cd mmalloc && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -11314,251 +14464,301 @@ mostlyclean-tar:
                  mostlyclean) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-texinfo mostlyclean-texinfo
-maybe-mostlyclean-texinfo:
+.PHONY: maybe-clean-mmalloc clean-mmalloc
+maybe-clean-mmalloc:
+@if mmalloc
+maybe-clean-mmalloc: clean-mmalloc
 
-mostlyclean-texinfo
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+clean-mmalloc
+       @[ -f ./mmalloc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean 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}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-textutils mostlyclean-textutils
-maybe-mostlyclean-textutils:
+.PHONY: maybe-distclean-mmalloc distclean-mmalloc
+maybe-distclean-mmalloc:
+@if mmalloc
+maybe-distclean-mmalloc: distclean-mmalloc
 
-mostlyclean-textutils
-       @[ -f ./textutils/Makefile ] || exit 0; \
+distclean-mmalloc
+       @[ -f ./mmalloc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-time mostlyclean-time
-maybe-mostlyclean-time:
+.PHONY: maybe-maintainer-clean-mmalloc maintainer-clean-mmalloc
+maybe-maintainer-clean-mmalloc:
+@if mmalloc
+maybe-maintainer-clean-mmalloc: maintainer-clean-mmalloc
 
-mostlyclean-time
-       @[ -f ./time/Makefile ] || exit 0; \
+maintainer-clean-mmalloc
+       @[ -f ./mmalloc/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif mmalloc
 
-.PHONY: maybe-mostlyclean-uudecode mostlyclean-uudecode
-maybe-mostlyclean-uudecode:
 
-mostlyclean-uudecode: 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
+.PHONY: configure-patch maybe-configure-patch
+maybe-configure-patch:
+@if patch
+maybe-configure-patch: configure-patch
+configure-patch:
+       @test ! -f patch/Makefile || exit 0; \
+       [ -d patch ] || mkdir patch; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 uudecode" ; \
-       (cd uudecode && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif patch
 
+.PHONY: all-patch maybe-all-patch
+maybe-all-patch:
+@if patch
+maybe-all-patch: all-patch
+all-patch: configure-patch
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd patch && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif patch
 
-.PHONY: maybe-mostlyclean-wdiff mostlyclean-wdiff
-maybe-mostlyclean-wdiff:
+.PHONY: check-patch maybe-check-patch
+maybe-check-patch:
+@if patch
+maybe-check-patch: check-patch
 
-mostlyclean-wdiff: 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-patch:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 wdiff" ; \
-       (cd wdiff && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd patch && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-zip mostlyclean-zip
-maybe-mostlyclean-zip:
+.PHONY: install-patch maybe-install-patch
+maybe-install-patch:
+@if patch
+maybe-install-patch: install-patch
 
-mostlyclean-zip: 
-       @[ -f ./zip/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-patch: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 zip" ; \
-       (cd zip && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd patch && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-zlib mostlyclean-zlib
-maybe-mostlyclean-zlib:
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-patch info-patch
+maybe-info-patch:
+@if patch
+maybe-info-patch: info-patch
 
-mostlyclean-zlib: 
-       @[ -f ./zlib/Makefile ] || exit 0; \
+info-patch: \
+    configure-patch 
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in patch" ; \
+       (cd 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) \
+                 info) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-gdb mostlyclean-gdb
-maybe-mostlyclean-gdb:
+.PHONY: maybe-dvi-patch dvi-patch
+maybe-dvi-patch:
+@if patch
+maybe-dvi-patch: dvi-patch
 
-mostlyclean-gdb: 
-       @[ -f ./gdb/Makefile ] || exit 0; \
+dvi-patch: \
+    configure-patch 
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in patch" ; \
+       (cd 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) \
+                 dvi) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-expect mostlyclean-expect
-maybe-mostlyclean-expect:
+.PHONY: maybe-TAGS-patch TAGS-patch
+maybe-TAGS-patch:
+@if patch
+maybe-TAGS-patch: TAGS-patch
 
-mostlyclean-expect: 
-       @[ -f ./expect/Makefile ] || exit 0; \
+TAGS-patch: \
+    configure-patch 
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in patch" ; \
+       (cd 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) \
+                 TAGS) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-guile mostlyclean-guile
-maybe-mostlyclean-guile:
+.PHONY: maybe-install-info-patch install-info-patch
+maybe-install-info-patch:
+@if patch
+maybe-install-info-patch: install-info-patch
 
-mostlyclean-guile: 
-       @[ -f ./guile/Makefile ] || exit 0; \
+install-info-patch: \
+    configure-patch \
+    info-patch 
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in patch" ; \
+       (cd 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) \
+                 install-info) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-tk mostlyclean-tk
-maybe-mostlyclean-tk:
+.PHONY: maybe-installcheck-patch installcheck-patch
+maybe-installcheck-patch:
+@if patch
+maybe-installcheck-patch: installcheck-patch
 
-mostlyclean-tk: 
-       @[ -f ./tk/Makefile ] || exit 0; \
+installcheck-patch: \
+    configure-patch 
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in patch" ; \
+       (cd 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) \
+                 installcheck) \
          || exit 1
 
+@endif patch
 
-.PHONY: maybe-mostlyclean-tix mostlyclean-tix
-maybe-mostlyclean-tix:
+.PHONY: maybe-mostlyclean-patch mostlyclean-patch
+maybe-mostlyclean-patch:
+@if patch
+maybe-mostlyclean-patch: mostlyclean-patch
 
-mostlyclean-tix
-       @[ -f ./tix/Makefile ] || exit 0; \
+mostlyclean-patch
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in patch" ; \
+       (cd patch && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -11566,226 +14766,301 @@ mostlyclean-tix:
                  mostlyclean) \
          || exit 1
 
+@endif patch
 
-.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-clean-patch clean-patch
+maybe-clean-patch:
+@if patch
+maybe-clean-patch: clean-patch
 
-mostlyclean-utils
-       @[ -f ./utils/Makefile ] || exit 0; \
+clean-patch
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in patch" ; \
+       (cd 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-distclean-patch distclean-patch
+maybe-distclean-patch:
+@if patch
+maybe-distclean-patch: distclean-patch
 
-# 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 ; \
+distclean-patch: 
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean in patch" ; \
+       (cd 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-target-newlib mostlyclean-target-newlib
-maybe-mostlyclean-target-newlib:
+.PHONY: maybe-maintainer-clean-patch maintainer-clean-patch
+maybe-maintainer-clean-patch:
+@if patch
+maybe-maintainer-clean-patch: maintainer-clean-patch
 
-mostlyclean-target-newlib
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+maintainer-clean-patch
+       @[ -f ./patch/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-clean in patch" ; \
+       (cd 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-target-libf2c mostlyclean-target-libf2c
-maybe-mostlyclean-target-libf2c:
 
-mostlyclean-target-libf2c: 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
+.PHONY: configure-perl maybe-configure-perl
+maybe-configure-perl:
+@if perl
+maybe-configure-perl: configure-perl
+configure-perl:
+       @test ! -f perl/Makefile || exit 0; \
+       [ -d perl ] || mkdir perl; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
-         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
-       done; \
-       (cd $(TARGET_SUBDIR)/libf2c && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 mostlyclean) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif perl
 
+.PHONY: all-perl maybe-all-perl
+maybe-all-perl:
+@if perl
+maybe-all-perl: all-perl
+all-perl: configure-perl
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd perl && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-libobjc mostlyclean-target-libobjc
-maybe-mostlyclean-target-libobjc:
+.PHONY: check-perl maybe-check-perl
+maybe-check-perl:
+@if perl
+maybe-check-perl: check-perl
 
-mostlyclean-target-libobjc: 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+check-perl:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-libtermcap mostlyclean-target-libtermcap
-maybe-mostlyclean-target-libtermcap:
-
-# libtermcap doesn't support mostlyclean.
-mostlyclean-target-libtermcap:
-
-
-.PHONY: maybe-mostlyclean-target-winsup mostlyclean-target-winsup
-maybe-mostlyclean-target-winsup:
+.PHONY: maybe-dvi-perl dvi-perl
+maybe-dvi-perl:
+@if perl
+maybe-dvi-perl: dvi-perl
 
-mostlyclean-target-winsup: 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+dvi-perl: \
+    configure-perl 
+       @[ -f ./perl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 dvi) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-libgloss mostlyclean-target-libgloss
-maybe-mostlyclean-target-libgloss:
+.PHONY: maybe-TAGS-perl TAGS-perl
+maybe-TAGS-perl:
+@if perl
+maybe-TAGS-perl: TAGS-perl
 
-mostlyclean-target-libgloss: 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+TAGS-perl: \
+    configure-perl 
+       @[ -f ./perl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 TAGS 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}" \
-                 mostlyclean) \
+                 TAGS) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-libiberty mostlyclean-target-libiberty
-maybe-mostlyclean-target-libiberty:
+.PHONY: maybe-install-info-perl install-info-perl
+maybe-install-info-perl:
+@if perl
+maybe-install-info-perl: install-info-perl
 
-mostlyclean-target-libiberty: 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+install-info-perl: \
+    configure-perl \
+    info-perl 
+       @[ -f ./perl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-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}" \
-                 mostlyclean) \
+                 install-info) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-gperf mostlyclean-target-gperf
-maybe-mostlyclean-target-gperf:
+.PHONY: maybe-installcheck-perl installcheck-perl
+maybe-installcheck-perl:
+@if perl
+maybe-installcheck-perl: installcheck-perl
 
-mostlyclean-target-gperf: 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+installcheck-perl: \
+    configure-perl 
+       @[ -f ./perl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck 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}" \
-                 mostlyclean) \
+                 installcheck) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-examples mostlyclean-target-examples
-maybe-mostlyclean-target-examples:
+.PHONY: maybe-mostlyclean-perl mostlyclean-perl
+maybe-mostlyclean-perl:
+@if perl
+maybe-mostlyclean-perl: mostlyclean-perl
 
-mostlyclean-target-examples
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+mostlyclean-perl
+       @[ -f ./perl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean in perl" ; \
+       (cd perl && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -11793,321 +15068,326 @@ mostlyclean-target-examples:
                  mostlyclean) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-libffi mostlyclean-target-libffi
-maybe-mostlyclean-target-libffi:
+.PHONY: maybe-clean-perl clean-perl
+maybe-clean-perl:
+@if perl
+maybe-clean-perl: clean-perl
 
-mostlyclean-target-libffi
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+clean-perl
+       @[ -f ./perl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 clean) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-libjava mostlyclean-target-libjava
-maybe-mostlyclean-target-libjava:
+.PHONY: maybe-distclean-perl distclean-perl
+maybe-distclean-perl:
+@if perl
+maybe-distclean-perl: distclean-perl
 
-mostlyclean-target-libjava
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+distclean-perl
+       @[ -f ./perl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean 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}" \
-                 mostlyclean) \
+                 distclean) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-zlib mostlyclean-target-zlib
-maybe-mostlyclean-target-zlib:
+.PHONY: maybe-maintainer-clean-perl maintainer-clean-perl
+maybe-maintainer-clean-perl:
+@if perl
+maybe-maintainer-clean-perl: maintainer-clean-perl
 
-mostlyclean-target-zlib
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+maintainer-clean-perl
+       @[ -f ./perl/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-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}" \
-                 mostlyclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif perl
 
-.PHONY: maybe-mostlyclean-target-boehm-gc mostlyclean-target-boehm-gc
-maybe-mostlyclean-target-boehm-gc:
 
-mostlyclean-target-boehm-gc: 
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+.PHONY: configure-prms maybe-configure-prms
+maybe-configure-prms:
+@if prms
+maybe-configure-prms: configure-prms
+configure-prms:
+       @test ! -f prms/Makefile || exit 0; \
+       [ -d prms ] || mkdir prms; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       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) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif prms
 
+.PHONY: all-prms maybe-all-prms
+maybe-all-prms:
+@if prms
+maybe-all-prms: all-prms
+all-prms: configure-prms
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd prms && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif prms
 
-.PHONY: maybe-mostlyclean-target-qthreads mostlyclean-target-qthreads
-maybe-mostlyclean-target-qthreads:
+.PHONY: check-prms maybe-check-prms
+maybe-check-prms:
+@if prms
+maybe-check-prms: check-prms
 
-mostlyclean-target-qthreads: 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+check-prms:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
+                 info) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-mostlyclean-target-rda mostlyclean-target-rda
-maybe-mostlyclean-target-rda:
+.PHONY: maybe-dvi-prms dvi-prms
+maybe-dvi-prms:
+@if prms
+maybe-dvi-prms: dvi-prms
 
-mostlyclean-target-rda: 
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+dvi-prms: \
+    configure-prms 
+       @[ -f ./prms/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing mostlyclean in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 mostlyclean) \
-         || exit 1
-
-
-
-.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
+                 dvi) \
+         || exit 1
 
-# GCC, the eternal special case
-.PHONY: maybe-clean-gcc clean-gcc
-maybe-clean-gcc:
-clean-gcc: 
-       @[ -f ./gcc/Makefile ] || exit 0; \
+@endif prms
+
+.PHONY: maybe-TAGS-prms TAGS-prms
+maybe-TAGS-prms:
+@if prms
+maybe-TAGS-prms: TAGS-prms
+
+TAGS-prms: \
+    configure-prms 
+       @[ -f ./prms/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+       $(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 TAGS 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}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
-# Host modules.
+@endif prms
 
-.PHONY: maybe-clean-ash clean-ash
-maybe-clean-ash:
+.PHONY: maybe-install-info-prms install-info-prms
+maybe-install-info-prms:
+@if prms
+maybe-install-info-prms: install-info-prms
 
-clean-ash: 
-       @[ -f ./ash/Makefile ] || exit 0; \
+install-info-prms: \
+    configure-prms \
+    info-prms 
+       @[ -f ./prms/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-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}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-clean-autoconf clean-autoconf
-maybe-clean-autoconf:
+.PHONY: maybe-installcheck-prms installcheck-prms
+maybe-installcheck-prms:
+@if prms
+maybe-installcheck-prms: installcheck-prms
 
-clean-autoconf: 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
+installcheck-prms: \
+    configure-prms 
+       @[ -f ./prms/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-clean-automake clean-automake
-maybe-clean-automake:
+.PHONY: maybe-mostlyclean-prms mostlyclean-prms
+maybe-mostlyclean-prms:
+@if prms
+maybe-mostlyclean-prms: mostlyclean-prms
 
-clean-automake
-       @[ -f ./automake/Makefile ] || exit 0; \
+mostlyclean-prms
+       @[ -f ./prms/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-clean-bash clean-bash
-maybe-clean-bash:
+.PHONY: maybe-clean-prms clean-prms
+maybe-clean-prms:
+@if prms
+maybe-clean-prms: clean-prms
 
-clean-bash
-       @[ -f ./bash/Makefile ] || exit 0; \
+clean-prms
+       @[ -f ./prms/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in prms" ; \
+       (cd prms && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -12115,188 +15395,301 @@ clean-bash:
                  clean) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-clean-bfd clean-bfd
-maybe-clean-bfd:
+.PHONY: maybe-distclean-prms distclean-prms
+maybe-distclean-prms:
+@if prms
+maybe-distclean-prms: distclean-prms
 
-clean-bfd
-       @[ -f ./bfd/Makefile ] || exit 0; \
+distclean-prms
+       @[ -f ./prms/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-clean-opcodes clean-opcodes
-maybe-clean-opcodes:
+.PHONY: maybe-maintainer-clean-prms maintainer-clean-prms
+maybe-maintainer-clean-prms:
+@if prms
+maybe-maintainer-clean-prms: maintainer-clean-prms
 
-clean-opcodes: 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
+maintainer-clean-prms: 
+       @[ -f ./prms/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif prms
 
-.PHONY: maybe-clean-binutils clean-binutils
-maybe-clean-binutils:
 
-clean-binutils: 
-       @[ -f ./binutils/Makefile ] || exit 0; \
+.PHONY: configure-rcs maybe-configure-rcs
+maybe-configure-rcs:
+@if rcs
+maybe-configure-rcs: configure-rcs
+configure-rcs:
+       @test ! -f rcs/Makefile || exit 0; \
+       [ -d rcs ] || mkdir rcs; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif rcs
+
+.PHONY: all-rcs maybe-all-rcs
+maybe-all-rcs:
+@if rcs
+maybe-all-rcs: all-rcs
+all-rcs: configure-rcs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd rcs && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-bison clean-bison
-maybe-clean-bison:
+.PHONY: maybe-dvi-rcs dvi-rcs
+maybe-dvi-rcs:
+@if rcs
+maybe-dvi-rcs: dvi-rcs
 
-clean-bison: 
-       @[ -f ./bison/Makefile ] || exit 0; \
+dvi-rcs: \
+    configure-rcs 
+       @[ -f ./rcs/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi 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}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-byacc clean-byacc
-maybe-clean-byacc:
+.PHONY: maybe-TAGS-rcs TAGS-rcs
+maybe-TAGS-rcs:
+@if rcs
+maybe-TAGS-rcs: TAGS-rcs
 
-clean-byacc: 
-       @[ -f ./byacc/Makefile ] || exit 0; \
+TAGS-rcs: \
+    configure-rcs 
+       @[ -f ./rcs/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-bzip2 clean-bzip2
-maybe-clean-bzip2:
+.PHONY: maybe-install-info-rcs install-info-rcs
+maybe-install-info-rcs:
+@if rcs
+maybe-install-info-rcs: install-info-rcs
 
-clean-bzip2: 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
+install-info-rcs: \
+    configure-rcs \
+    info-rcs 
+       @[ -f ./rcs/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-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}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-dejagnu clean-dejagnu
-maybe-clean-dejagnu:
+.PHONY: maybe-installcheck-rcs installcheck-rcs
+maybe-installcheck-rcs:
+@if rcs
+maybe-installcheck-rcs: installcheck-rcs
 
-clean-dejagnu: 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
+installcheck-rcs: \
+    configure-rcs 
+       @[ -f ./rcs/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-diff clean-diff
-maybe-clean-diff:
+.PHONY: maybe-mostlyclean-rcs mostlyclean-rcs
+maybe-mostlyclean-rcs:
+@if rcs
+maybe-mostlyclean-rcs: mostlyclean-rcs
 
-clean-diff
-       @[ -f ./diff/Makefile ] || exit 0; \
+mostlyclean-rcs
+       @[ -f ./rcs/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-dosutils clean-dosutils
-maybe-clean-dosutils:
+.PHONY: maybe-clean-rcs clean-rcs
+maybe-clean-rcs:
+@if rcs
+maybe-clean-rcs: clean-rcs
 
-clean-dosutils: 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
+clean-rcs: 
+       @[ -f ./rcs/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in rcs" ; \
+       (cd rcs && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -12304,188 +15697,301 @@ clean-dosutils:
                  clean) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-etc clean-etc
-maybe-clean-etc:
+.PHONY: maybe-distclean-rcs distclean-rcs
+maybe-distclean-rcs:
+@if rcs
+maybe-distclean-rcs: distclean-rcs
 
-clean-etc
-       @[ -f ./etc/Makefile ] || exit 0; \
+distclean-rcs
+       @[ -f ./rcs/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-fastjar clean-fastjar
-maybe-clean-fastjar:
+.PHONY: maybe-maintainer-clean-rcs maintainer-clean-rcs
+maybe-maintainer-clean-rcs:
+@if rcs
+maybe-maintainer-clean-rcs: maintainer-clean-rcs
 
-clean-fastjar
-       @[ -f ./fastjar/Makefile ] || exit 0; \
+maintainer-clean-rcs
+       @[ -f ./rcs/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif rcs
 
-.PHONY: maybe-clean-fileutils clean-fileutils
-maybe-clean-fileutils:
 
-clean-fileutils: 
-       @[ -f ./fileutils/Makefile ] || exit 0; \
+.PHONY: configure-readline maybe-configure-readline
+maybe-configure-readline:
+@if readline
+maybe-configure-readline: configure-readline
+configure-readline:
+       @test ! -f readline/Makefile || exit 0; \
+       [ -d readline ] || mkdir readline; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in readline; \
+       cd readline || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif readline
+
+.PHONY: all-readline maybe-all-readline
+maybe-all-readline:
+@if readline
+maybe-all-readline: all-readline
+all-readline: configure-readline
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd readline && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-clean-findutils clean-findutils
-maybe-clean-findutils:
+.PHONY: maybe-dvi-readline dvi-readline
+maybe-dvi-readline:
+@if readline
+maybe-dvi-readline: dvi-readline
 
-clean-findutils: 
-       @[ -f ./findutils/Makefile ] || exit 0; \
+dvi-readline: \
+    configure-readline 
+       @[ -f ./readline/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi 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}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-clean-find clean-find
-maybe-clean-find:
+.PHONY: maybe-TAGS-readline TAGS-readline
+maybe-TAGS-readline:
+@if readline
+maybe-TAGS-readline: TAGS-readline
 
-clean-find: 
-       @[ -f ./find/Makefile ] || exit 0; \
+TAGS-readline: \
+    configure-readline 
+       @[ -f ./readline/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-clean-flex clean-flex
-maybe-clean-flex:
+.PHONY: maybe-install-info-readline install-info-readline
+maybe-install-info-readline:
+@if readline
+maybe-install-info-readline: install-info-readline
 
-clean-flex: 
-       @[ -f ./flex/Makefile ] || exit 0; \
+install-info-readline: \
+    configure-readline \
+    info-readline 
+       @[ -f ./readline/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-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}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-clean-gas clean-gas
-maybe-clean-gas:
+.PHONY: maybe-installcheck-readline installcheck-readline
+maybe-installcheck-readline:
+@if readline
+maybe-installcheck-readline: installcheck-readline
 
-clean-gas: 
-       @[ -f ./gas/Makefile ] || exit 0; \
+installcheck-readline: \
+    configure-readline 
+       @[ -f ./readline/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-clean-gawk clean-gawk
-maybe-clean-gawk:
+.PHONY: maybe-mostlyclean-readline mostlyclean-readline
+maybe-mostlyclean-readline:
+@if readline
+maybe-mostlyclean-readline: mostlyclean-readline
 
-clean-gawk
-       @[ -f ./gawk/Makefile ] || exit 0; \
+mostlyclean-readline
+       @[ -f ./readline/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-clean-gettext clean-gettext
-maybe-clean-gettext:
+.PHONY: maybe-clean-readline clean-readline
+maybe-clean-readline:
+@if readline
+maybe-clean-readline: clean-readline
 
-clean-gettext
-       @[ -f ./gettext/Makefile ] || exit 0; \
+clean-readline
+       @[ -f ./readline/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in readline" ; \
+       (cd readline && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -12493,188 +15999,291 @@ clean-gettext:
                  clean) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-clean-gnuserv clean-gnuserv
-maybe-clean-gnuserv:
+.PHONY: maybe-distclean-readline distclean-readline
+maybe-distclean-readline:
+@if readline
+maybe-distclean-readline: distclean-readline
 
-clean-gnuserv
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
+distclean-readline
+       @[ -f ./readline/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean 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}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif readline
 
-.PHONY: maybe-clean-gprof clean-gprof
-maybe-clean-gprof:
+.PHONY: maybe-maintainer-clean-readline maintainer-clean-readline
+maybe-maintainer-clean-readline:
+@if readline
+maybe-maintainer-clean-readline: maintainer-clean-readline
 
-clean-gprof
-       @[ -f ./gprof/Makefile ] || exit 0; \
+maintainer-clean-readline
+       @[ -f ./readline/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 clean) \
+                 maintainer-clean) \
+         || exit 1
+
+@endif readline
+
+
+.PHONY: configure-release maybe-configure-release
+maybe-configure-release:
+@if release
+maybe-configure-release: configure-release
+configure-release:
+       @test ! -f release/Makefile || exit 0; \
+       [ -d release ] || mkdir release; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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
+@endif release
+
+.PHONY: all-release maybe-all-release
+maybe-all-release:
+@if release
+maybe-all-release: all-release
+all-release: configure-release
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd release && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif release
+
+.PHONY: check-release maybe-check-release
+maybe-check-release:
+@if release
+maybe-check-release: check-release
+
+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-clean-gzip clean-gzip
-maybe-clean-gzip:
+.PHONY: maybe-info-release info-release
+maybe-info-release:
+@if release
+maybe-info-release: info-release
 
-clean-gzip: 
-       @[ -f ./gzip/Makefile ] || exit 0; \
+info-release: \
+    configure-release 
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info 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}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-hello clean-hello
-maybe-clean-hello:
+.PHONY: maybe-dvi-release dvi-release
+maybe-dvi-release:
+@if release
+maybe-dvi-release: dvi-release
 
-clean-hello: 
-       @[ -f ./hello/Makefile ] || exit 0; \
+dvi-release: \
+    configure-release 
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi 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}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-indent clean-indent
-maybe-clean-indent:
+.PHONY: maybe-TAGS-release TAGS-release
+maybe-TAGS-release:
+@if release
+maybe-TAGS-release: TAGS-release
 
-clean-indent: 
-       @[ -f ./indent/Makefile ] || exit 0; \
+TAGS-release: \
+    configure-release 
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-intl clean-intl
-maybe-clean-intl:
+.PHONY: maybe-install-info-release install-info-release
+maybe-install-info-release:
+@if release
+maybe-install-info-release: install-info-release
 
-clean-intl: 
-       @[ -f ./intl/Makefile ] || exit 0; \
+install-info-release: \
+    configure-release \
+    info-release 
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-tcl clean-tcl
-maybe-clean-tcl:
+.PHONY: maybe-installcheck-release installcheck-release
+maybe-installcheck-release:
+@if release
+maybe-installcheck-release: installcheck-release
 
-clean-tcl: 
-       @[ -f ./tcl/Makefile ] || exit 0; \
+installcheck-release: \
+    configure-release 
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-itcl clean-itcl
-maybe-clean-itcl:
+.PHONY: maybe-mostlyclean-release mostlyclean-release
+maybe-mostlyclean-release:
+@if release
+maybe-mostlyclean-release: mostlyclean-release
 
-clean-itcl
-       @[ -f ./itcl/Makefile ] || exit 0; \
+mostlyclean-release
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-ld clean-ld
-maybe-clean-ld:
+.PHONY: maybe-clean-release clean-release
+maybe-clean-release:
+@if release
+maybe-clean-release: clean-release
 
-clean-ld
-       @[ -f ./ld/Makefile ] || exit 0; \
+clean-release
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in release" ; \
+       (cd release && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -12682,268 +16291,297 @@ clean-ld:
                  clean) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-libgui clean-libgui
-maybe-clean-libgui:
+.PHONY: maybe-distclean-release distclean-release
+maybe-distclean-release:
+@if release
+maybe-distclean-release: distclean-release
 
-clean-libgui
-       @[ -f ./libgui/Makefile ] || exit 0; \
+distclean-release
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-libiberty clean-libiberty
-maybe-clean-libiberty:
+.PHONY: maybe-maintainer-clean-release maintainer-clean-release
+maybe-maintainer-clean-release:
+@if release
+maybe-maintainer-clean-release: maintainer-clean-release
 
-clean-libiberty
-       @[ -f ./libiberty/Makefile ] || exit 0; \
+maintainer-clean-release
+       @[ -f ./release/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif release
 
-.PHONY: maybe-clean-libtool clean-libtool
-maybe-clean-libtool:
 
-clean-libtool: 
-       @[ -f ./libtool/Makefile ] || exit 0; \
+.PHONY: configure-recode maybe-configure-recode
+maybe-configure-recode:
+@if recode
+maybe-configure-recode: configure-recode
+configure-recode:
+       @test ! -f recode/Makefile || exit 0; \
+       [ -d recode ] || mkdir recode; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 clean) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif recode
 
-
-.PHONY: maybe-clean-m4 clean-m4
-maybe-clean-m4:
-
-clean-m4: 
-       @[ -f ./m4/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+.PHONY: all-recode maybe-all-recode
+maybe-all-recode:
+@if recode
+maybe-all-recode: all-recode
+all-recode: configure-recode
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 clean) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd recode && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif recode
 
+.PHONY: check-recode maybe-check-recode
+maybe-check-recode:
+@if recode
+maybe-check-recode: check-recode
 
-.PHONY: maybe-clean-make clean-make
-maybe-clean-make:
-
-clean-make: 
-       @[ -f ./make/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-recode:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 clean) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd recode && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif recode
 
-.PHONY: maybe-clean-mmalloc clean-mmalloc
-maybe-clean-mmalloc:
+.PHONY: install-recode maybe-install-recode
+maybe-install-recode:
+@if recode
+maybe-install-recode: install-recode
 
-clean-mmalloc: 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-recode: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 clean) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd recode && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif recode
 
-.PHONY: maybe-clean-patch clean-patch
-maybe-clean-patch:
+# Other targets (info, dvi, etc.)
 
-clean-patch: 
-       @[ -f ./patch/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info 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}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-clean-perl clean-perl
-maybe-clean-perl:
+.PHONY: maybe-dvi-recode dvi-recode
+maybe-dvi-recode:
+@if recode
+maybe-dvi-recode: dvi-recode
 
-clean-perl: 
-       @[ -f ./perl/Makefile ] || exit 0; \
+dvi-recode: \
+    configure-recode 
+       @[ -f ./recode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing dvi 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}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-clean-prms clean-prms
-maybe-clean-prms:
+.PHONY: maybe-TAGS-recode TAGS-recode
+maybe-TAGS-recode:
+@if recode
+maybe-TAGS-recode: TAGS-recode
 
-clean-prms: 
-       @[ -f ./prms/Makefile ] || exit 0; \
+TAGS-recode: \
+    configure-recode 
+       @[ -f ./recode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-clean-rcs clean-rcs
-maybe-clean-rcs:
+.PHONY: maybe-install-info-recode install-info-recode
+maybe-install-info-recode:
+@if recode
+maybe-install-info-recode: install-info-recode
 
-clean-rcs: 
-       @[ -f ./rcs/Makefile ] || exit 0; \
+install-info-recode: \
+    configure-recode \
+    info-recode 
+       @[ -f ./recode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-clean-readline clean-readline
-maybe-clean-readline:
+.PHONY: maybe-installcheck-recode installcheck-recode
+maybe-installcheck-recode:
+@if recode
+maybe-installcheck-recode: installcheck-recode
 
-clean-readline: 
-       @[ -f ./readline/Makefile ] || exit 0; \
+installcheck-recode: \
+    configure-recode 
+       @[ -f ./recode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-clean-release clean-release
-maybe-clean-release:
+.PHONY: maybe-mostlyclean-recode mostlyclean-recode
+maybe-mostlyclean-recode:
+@if recode
+maybe-mostlyclean-recode: mostlyclean-recode
 
-clean-release: 
-       @[ -f ./release/Makefile ] || exit 0; \
+mostlyclean-recode: 
+       @[ -f ./recode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif recode
 
 .PHONY: maybe-clean-recode clean-recode
 maybe-clean-recode:
+@if recode
+maybe-clean-recode: clean-recode
 
 clean-recode: 
        @[ -f ./recode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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" ; \
@@ -12955,251 +16593,301 @@ clean-recode:
                  clean) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-clean-sed clean-sed
-maybe-clean-sed:
+.PHONY: maybe-distclean-recode distclean-recode
+maybe-distclean-recode:
+@if recode
+maybe-distclean-recode: distclean-recode
 
-clean-sed
-       @[ -f ./sed/Makefile ] || exit 0; \
+distclean-recode
+       @[ -f ./recode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-clean-send-pr clean-send-pr
-maybe-clean-send-pr:
+.PHONY: maybe-maintainer-clean-recode maintainer-clean-recode
+maybe-maintainer-clean-recode:
+@if recode
+maybe-maintainer-clean-recode: maintainer-clean-recode
 
-clean-send-pr
-       @[ -f ./send-pr/Makefile ] || exit 0; \
+maintainer-clean-recode
+       @[ -f ./recode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif recode
 
-.PHONY: maybe-clean-shellutils clean-shellutils
-maybe-clean-shellutils:
 
-clean-shellutils: 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
+.PHONY: configure-sed maybe-configure-sed
+maybe-configure-sed:
+@if sed
+maybe-configure-sed: configure-sed
+configure-sed:
+       @test ! -f sed/Makefile || exit 0; \
+       [ -d sed ] || mkdir sed; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 clean) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif sed
 
+.PHONY: all-sed maybe-all-sed
+maybe-all-sed:
+@if sed
+maybe-all-sed: all-sed
+all-sed: configure-sed
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd sed && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif sed
 
-.PHONY: maybe-clean-sid clean-sid
-maybe-clean-sid:
+.PHONY: check-sed maybe-check-sed
+maybe-check-sed:
+@if sed
+maybe-check-sed: check-sed
 
-clean-sid: 
-       @[ -f ./sid/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-sed:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 clean) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd sed && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif sed
 
-.PHONY: maybe-clean-sim clean-sim
-maybe-clean-sim:
+.PHONY: install-sed maybe-install-sed
+maybe-install-sed:
+@if sed
+maybe-install-sed: install-sed
 
-clean-sim: 
-       @[ -f ./sim/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-sed: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 sim" ; \
-       (cd 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) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd sed && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif sed
 
-.PHONY: maybe-clean-tar clean-tar
-maybe-clean-tar:
+# Other targets (info, dvi, etc.)
 
-clean-tar: 
-       @[ -f ./tar/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-texinfo clean-texinfo
-maybe-clean-texinfo:
+.PHONY: maybe-dvi-sed dvi-sed
+maybe-dvi-sed:
+@if sed
+maybe-dvi-sed: dvi-sed
 
-clean-texinfo: 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+dvi-sed: \
+    configure-sed 
+       @[ -f ./sed/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-textutils clean-textutils
-maybe-clean-textutils:
+.PHONY: maybe-TAGS-sed TAGS-sed
+maybe-TAGS-sed:
+@if sed
+maybe-TAGS-sed: TAGS-sed
 
-clean-textutils: 
-       @[ -f ./textutils/Makefile ] || exit 0; \
+TAGS-sed: \
+    configure-sed 
+       @[ -f ./sed/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-time clean-time
-maybe-clean-time:
+.PHONY: maybe-install-info-sed install-info-sed
+maybe-install-info-sed:
+@if sed
+maybe-install-info-sed: install-info-sed
 
-clean-time: 
-       @[ -f ./time/Makefile ] || exit 0; \
+install-info-sed: \
+    configure-sed \
+    info-sed 
+       @[ -f ./sed/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-uudecode clean-uudecode
-maybe-clean-uudecode:
+.PHONY: maybe-installcheck-sed installcheck-sed
+maybe-installcheck-sed:
+@if sed
+maybe-installcheck-sed: installcheck-sed
 
-clean-uudecode: 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
+installcheck-sed: \
+    configure-sed 
+       @[ -f ./sed/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-wdiff clean-wdiff
-maybe-clean-wdiff:
+.PHONY: maybe-mostlyclean-sed mostlyclean-sed
+maybe-mostlyclean-sed:
+@if sed
+maybe-mostlyclean-sed: mostlyclean-sed
 
-clean-wdiff
-       @[ -f ./wdiff/Makefile ] || exit 0; \
+mostlyclean-sed
+       @[ -f ./sed/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-zip clean-zip
-maybe-clean-zip:
+.PHONY: maybe-clean-sed clean-sed
+maybe-clean-sed:
+@if sed
+maybe-clean-sed: clean-sed
 
-clean-zip
-       @[ -f ./zip/Makefile ] || exit 0; \
+clean-sed
+       @[ -f ./sed/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in sed" ; \
+       (cd sed && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -13207,198 +16895,301 @@ clean-zip:
                  clean) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-zlib clean-zlib
-maybe-clean-zlib:
+.PHONY: maybe-distclean-sed distclean-sed
+maybe-distclean-sed:
+@if sed
+maybe-distclean-sed: distclean-sed
 
-clean-zlib
-       @[ -f ./zlib/Makefile ] || exit 0; \
+distclean-sed
+       @[ -f ./sed/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-gdb clean-gdb
-maybe-clean-gdb:
+.PHONY: maybe-maintainer-clean-sed maintainer-clean-sed
+maybe-maintainer-clean-sed:
+@if sed
+maybe-maintainer-clean-sed: maintainer-clean-sed
 
-clean-gdb
-       @[ -f ./gdb/Makefile ] || exit 0; \
+maintainer-clean-sed
+       @[ -f ./sed/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif sed
 
-.PHONY: maybe-clean-expect clean-expect
-maybe-clean-expect:
 
-clean-expect: 
-       @[ -f ./expect/Makefile ] || exit 0; \
+.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 send-pr/Makefile || exit 0; \
+       [ -d send-pr ] || mkdir send-pr; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif send-pr
+
+.PHONY: all-send-pr maybe-all-send-pr
+maybe-all-send-pr:
+@if send-pr
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd send-pr && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info 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}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-guile clean-guile
-maybe-clean-guile:
+.PHONY: maybe-dvi-send-pr dvi-send-pr
+maybe-dvi-send-pr:
+@if send-pr
+maybe-dvi-send-pr: dvi-send-pr
 
-clean-guile: 
-       @[ -f ./guile/Makefile ] || exit 0; \
+dvi-send-pr: \
+    configure-send-pr 
+       @[ -f ./send-pr/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing dvi 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}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-tk clean-tk
-maybe-clean-tk:
+.PHONY: maybe-TAGS-send-pr TAGS-send-pr
+maybe-TAGS-send-pr:
+@if send-pr
+maybe-TAGS-send-pr: TAGS-send-pr
 
-clean-tk: 
-       @[ -f ./tk/Makefile ] || exit 0; \
+TAGS-send-pr: \
+    configure-send-pr 
+       @[ -f ./send-pr/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS 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}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-tix clean-tix
-maybe-clean-tix:
+.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-tix: 
-       @[ -f ./tix/Makefile ] || exit 0; \
+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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif send-pr
 
-.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-installcheck-send-pr installcheck-send-pr
+maybe-installcheck-send-pr:
+@if send-pr
+maybe-installcheck-send-pr: installcheck-send-pr
 
-clean-utils: 
-       @[ -f ./utils/Makefile ] || exit 0; \
+installcheck-send-pr: \
+    configure-send-pr 
+       @[ -f ./send-pr/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif send-pr
 
+.PHONY: maybe-mostlyclean-send-pr mostlyclean-send-pr
+maybe-mostlyclean-send-pr:
+@if send-pr
+maybe-mostlyclean-send-pr: mostlyclean-send-pr
 
-# 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 ; \
+mostlyclean-send-pr: 
+       @[ -f ./send-pr/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-target-newlib clean-target-newlib
-maybe-clean-target-newlib:
+.PHONY: maybe-clean-send-pr clean-send-pr
+maybe-clean-send-pr:
+@if send-pr
+maybe-clean-send-pr: clean-send-pr
 
-clean-target-newlib
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+clean-send-pr
+       @[ -f ./send-pr/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 send-pr" ; \
+       (cd send-pr && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -13406,237 +17197,301 @@ clean-target-newlib:
                  clean) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-target-libf2c clean-target-libf2c
-maybe-clean-target-libf2c:
+.PHONY: maybe-distclean-send-pr distclean-send-pr
+maybe-distclean-send-pr:
+@if send-pr
+maybe-distclean-send-pr: distclean-send-pr
 
-clean-target-libf2c
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
+distclean-send-pr
+       @[ -f ./send-pr/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-target-libobjc clean-target-libobjc
-maybe-clean-target-libobjc:
+.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-target-libobjc
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+maintainer-clean-send-pr
+       @[ -f ./send-pr/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif send-pr
 
-.PHONY: maybe-clean-target-libtermcap clean-target-libtermcap
-maybe-clean-target-libtermcap:
 
-# libtermcap doesn't support clean.
-clean-target-libtermcap:
+.PHONY: configure-shellutils maybe-configure-shellutils
+maybe-configure-shellutils:
+@if shellutils
+maybe-configure-shellutils: configure-shellutils
+configure-shellutils:
+       @test ! -f shellutils/Makefile || exit 0; \
+       [ -d shellutils ] || mkdir shellutils; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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
+@endif shellutils
 
+.PHONY: all-shellutils maybe-all-shellutils
+maybe-all-shellutils:
+@if shellutils
+maybe-all-shellutils: all-shellutils
+all-shellutils: configure-shellutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif shellutils
 
-.PHONY: maybe-clean-target-winsup clean-target-winsup
-maybe-clean-target-winsup:
+.PHONY: check-shellutils maybe-check-shellutils
+maybe-check-shellutils:
+@if shellutils
+maybe-check-shellutils: check-shellutils
 
-clean-target-winsup: 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+check-shellutils:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       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
+       $(HOST_EXPORTS) \
+       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-libgloss clean-target-libgloss
-maybe-clean-target-libgloss:
+.PHONY: install-shellutils maybe-install-shellutils
+maybe-install-shellutils:
+@if shellutils
+maybe-install-shellutils: install-shellutils
 
-clean-target-libgloss: 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+install-shellutils: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       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
+       $(HOST_EXPORTS) \
+       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-libiberty clean-target-libiberty
-maybe-clean-target-libiberty:
+# Other targets (info, dvi, etc.)
 
-clean-target-libiberty: 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+.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; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 info 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}" \
-                 clean) \
+                 info) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-gperf clean-target-gperf
-maybe-clean-target-gperf:
+.PHONY: maybe-dvi-shellutils dvi-shellutils
+maybe-dvi-shellutils:
+@if shellutils
+maybe-dvi-shellutils: dvi-shellutils
 
-clean-target-gperf: 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+dvi-shellutils: \
+    configure-shellutils 
+       @[ -f ./shellutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi 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}" \
-                 clean) \
+                 dvi) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-examples clean-target-examples
-maybe-clean-target-examples:
+.PHONY: maybe-TAGS-shellutils TAGS-shellutils
+maybe-TAGS-shellutils:
+@if shellutils
+maybe-TAGS-shellutils: TAGS-shellutils
 
-clean-target-examples: 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+TAGS-shellutils: \
+    configure-shellutils 
+       @[ -f ./shellutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 TAGS 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}" \
-                 clean) \
+                 TAGS) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-libffi clean-target-libffi
-maybe-clean-target-libffi:
+.PHONY: maybe-install-info-shellutils install-info-shellutils
+maybe-install-info-shellutils:
+@if shellutils
+maybe-install-info-shellutils: install-info-shellutils
 
-clean-target-libffi: 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+install-info-shellutils: \
+    configure-shellutils \
+    info-shellutils 
+       @[ -f ./shellutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info 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}" \
-                 clean) \
+                 install-info) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-libjava clean-target-libjava
-maybe-clean-target-libjava:
+.PHONY: maybe-installcheck-shellutils installcheck-shellutils
+maybe-installcheck-shellutils:
+@if shellutils
+maybe-installcheck-shellutils: installcheck-shellutils
 
-clean-target-libjava: 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+installcheck-shellutils: \
+    configure-shellutils 
+       @[ -f ./shellutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck 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}" \
-                 clean) \
+                 installcheck) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-zlib clean-target-zlib
-maybe-clean-target-zlib:
+.PHONY: maybe-mostlyclean-shellutils mostlyclean-shellutils
+maybe-mostlyclean-shellutils:
+@if shellutils
+maybe-mostlyclean-shellutils: mostlyclean-shellutils
 
-clean-target-zlib
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+mostlyclean-shellutils
+       @[ -f ./shellutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-boehm-gc clean-target-boehm-gc
-maybe-clean-target-boehm-gc:
+.PHONY: maybe-clean-shellutils clean-shellutils
+maybe-clean-shellutils:
+@if shellutils
+maybe-clean-shellutils: clean-shellutils
 
-clean-target-boehm-gc
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+clean-shellutils
+       @[ -f ./shellutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean in shellutils" ; \
+       (cd shellutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -13644,300 +17499,326 @@ clean-target-boehm-gc:
                  clean) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-qthreads clean-target-qthreads
-maybe-clean-target-qthreads:
+.PHONY: maybe-distclean-shellutils distclean-shellutils
+maybe-distclean-shellutils:
+@if shellutils
+maybe-distclean-shellutils: distclean-shellutils
 
-clean-target-qthreads: 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+distclean-shellutils: 
+       @[ -f ./shellutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing clean in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean 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}" \
-                 clean) \
+                 distclean) \
          || exit 1
 
+@endif shellutils
 
-.PHONY: maybe-clean-target-rda clean-target-rda
-maybe-clean-target-rda:
+.PHONY: maybe-maintainer-clean-shellutils maintainer-clean-shellutils
+maybe-maintainer-clean-shellutils:
+@if shellutils
+maybe-maintainer-clean-shellutils: maintainer-clean-shellutils
 
-clean-target-rda
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+maintainer-clean-shellutils
+       @[ -f ./shellutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       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: 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
+       $(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 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}" \
+                 maintainer-clean) \
+         || exit 1
 
-.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
+@endif shellutils
 
-# GCC, the eternal special case
-.PHONY: maybe-distclean-gcc distclean-gcc
-maybe-distclean-gcc:
-distclean-gcc: 
-       @[ -f ./gcc/Makefile ] || exit 0; \
+
+.PHONY: configure-sid maybe-configure-sid
+maybe-configure-sid:
+@if sid
+maybe-configure-sid: configure-sid
+configure-sid:
+       @test ! -f sid/Makefile || exit 0; \
+       [ -d sid ] || mkdir sid; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in sid; \
+       cd sid || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif sid
+
+.PHONY: all-sid maybe-all-sid
+maybe-all-sid:
+@if sid
+maybe-all-sid: all-sid
+all-sid: configure-sid
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd sid && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+       $(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 info 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}" \
-                 distclean) \
+                 info) \
          || exit 1
 
-# Host modules.
+@endif sid
 
-.PHONY: maybe-distclean-ash distclean-ash
-maybe-distclean-ash:
+.PHONY: maybe-dvi-sid dvi-sid
+maybe-dvi-sid:
+@if sid
+maybe-dvi-sid: dvi-sid
 
-distclean-ash: 
-       @[ -f ./ash/Makefile ] || exit 0; \
+dvi-sid: \
+    configure-sid 
+       @[ -f ./sid/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi 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}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-distclean-autoconf distclean-autoconf
-maybe-distclean-autoconf:
+.PHONY: maybe-TAGS-sid TAGS-sid
+maybe-TAGS-sid:
+@if sid
+maybe-TAGS-sid: TAGS-sid
 
-distclean-autoconf: 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
+TAGS-sid: \
+    configure-sid 
+       @[ -f ./sid/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 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}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-distclean-automake distclean-automake
-maybe-distclean-automake:
+.PHONY: maybe-install-info-sid install-info-sid
+maybe-install-info-sid:
+@if sid
+maybe-install-info-sid: install-info-sid
 
-distclean-automake: 
-       @[ -f ./automake/Makefile ] || exit 0; \
+install-info-sid: \
+    configure-sid \
+    info-sid 
+       @[ -f ./sid/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info 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}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-distclean-bash distclean-bash
-maybe-distclean-bash:
+.PHONY: maybe-installcheck-sid installcheck-sid
+maybe-installcheck-sid:
+@if sid
+maybe-installcheck-sid: installcheck-sid
 
-distclean-bash: 
-       @[ -f ./bash/Makefile ] || exit 0; \
+installcheck-sid: \
+    configure-sid 
+       @[ -f ./sid/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck 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}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-distclean-bfd distclean-bfd
-maybe-distclean-bfd:
+.PHONY: maybe-mostlyclean-sid mostlyclean-sid
+maybe-mostlyclean-sid:
+@if sid
+maybe-mostlyclean-sid: mostlyclean-sid
 
-distclean-bfd: 
-       @[ -f ./bfd/Makefile ] || exit 0; \
+mostlyclean-sid: 
+       @[ -f ./sid/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-distclean-opcodes distclean-opcodes
-maybe-distclean-opcodes:
+.PHONY: maybe-clean-sid clean-sid
+maybe-clean-sid:
+@if sid
+maybe-clean-sid: clean-sid
 
-distclean-opcodes
-       @[ -f ./opcodes/Makefile ] || exit 0; \
+clean-sid
+       @[ -f ./sid/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean 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}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-distclean-binutils distclean-binutils
-maybe-distclean-binutils:
+.PHONY: maybe-distclean-sid distclean-sid
+maybe-distclean-sid:
+@if sid
+maybe-distclean-sid: distclean-sid
 
-distclean-binutils
-       @[ -f ./binutils/Makefile ] || exit 0; \
+distclean-sid
+       @[ -f ./sid/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in sid" ; \
+       (cd sid && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -13945,209 +17826,301 @@ distclean-binutils:
                  distclean) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-distclean-bison distclean-bison
-maybe-distclean-bison:
+.PHONY: maybe-maintainer-clean-sid maintainer-clean-sid
+maybe-maintainer-clean-sid:
+@if sid
+maybe-maintainer-clean-sid: maintainer-clean-sid
 
-distclean-bison
-       @[ -f ./bison/Makefile ] || exit 0; \
+maintainer-clean-sid
+       @[ -f ./sid/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean 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}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif sid
 
-.PHONY: maybe-distclean-byacc distclean-byacc
-maybe-distclean-byacc:
 
-distclean-byacc: 
-       @[ -f ./byacc/Makefile ] || exit 0; \
+.PHONY: configure-sim maybe-configure-sim
+maybe-configure-sim:
+@if sim
+maybe-configure-sim: configure-sim
+configure-sim:
+       @test ! -f sim/Makefile || exit 0; \
+       [ -d sim ] || mkdir sim; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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
+@endif sim
+
+.PHONY: all-sim maybe-all-sim
+maybe-all-sim:
+@if sim
+maybe-all-sim: all-sim
+all-sim: configure-sim
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd sim && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(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 byacc" ; \
-       (cd byacc && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd sim && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif sim
 
-.PHONY: maybe-distclean-bzip2 distclean-bzip2
-maybe-distclean-bzip2:
+# Other targets (info, dvi, etc.)
 
-distclean-bzip2: 
-       @[ -f ./bzip2/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in sim" ; \
+       (cd sim && \
          $(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 sim
 
-.PHONY: maybe-distclean-dejagnu distclean-dejagnu
-maybe-distclean-dejagnu:
+.PHONY: maybe-dvi-sim dvi-sim
+maybe-dvi-sim:
+@if sim
+maybe-dvi-sim: dvi-sim
 
-distclean-dejagnu: 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
+dvi-sim: \
+    configure-sim 
+       @[ -f ./sim/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in sim" ; \
+       (cd sim && \
          $(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 sim
 
-.PHONY: maybe-distclean-diff distclean-diff
-maybe-distclean-diff:
+.PHONY: maybe-TAGS-sim TAGS-sim
+maybe-TAGS-sim:
+@if sim
+maybe-TAGS-sim: TAGS-sim
 
-distclean-diff: 
-       @[ -f ./diff/Makefile ] || exit 0; \
+TAGS-sim: \
+    configure-sim 
+       @[ -f ./sim/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in sim" ; \
+       (cd sim && \
          $(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 sim
 
-.PHONY: maybe-distclean-dosutils distclean-dosutils
-maybe-distclean-dosutils:
+.PHONY: maybe-install-info-sim install-info-sim
+maybe-install-info-sim:
+@if sim
+maybe-install-info-sim: install-info-sim
 
-distclean-dosutils: 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
+install-info-sim: \
+    configure-sim \
+    info-sim 
+       @[ -f ./sim/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in sim" ; \
+       (cd sim && \
          $(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 sim
 
-.PHONY: maybe-distclean-etc distclean-etc
-maybe-distclean-etc:
+.PHONY: maybe-installcheck-sim installcheck-sim
+maybe-installcheck-sim:
+@if sim
+maybe-installcheck-sim: installcheck-sim
 
-distclean-etc: 
-       @[ -f ./etc/Makefile ] || exit 0; \
+installcheck-sim: \
+    configure-sim 
+       @[ -f ./sim/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in sim" ; \
+       (cd sim && \
          $(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 sim
 
-.PHONY: maybe-distclean-fastjar distclean-fastjar
-maybe-distclean-fastjar:
+.PHONY: maybe-mostlyclean-sim mostlyclean-sim
+maybe-mostlyclean-sim:
+@if sim
+maybe-mostlyclean-sim: mostlyclean-sim
 
-distclean-fastjar
-       @[ -f ./fastjar/Makefile ] || exit 0; \
+mostlyclean-sim
+       @[ -f ./sim/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in sim" ; \
+       (cd sim && \
          $(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 sim
 
-.PHONY: maybe-distclean-fileutils distclean-fileutils
-maybe-distclean-fileutils:
+.PHONY: maybe-clean-sim clean-sim
+maybe-clean-sim:
+@if sim
+maybe-clean-sim: clean-sim
 
-distclean-fileutils
-       @[ -f ./fileutils/Makefile ] || exit 0; \
+clean-sim
+       @[ -f ./sim/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in sim" ; \
+       (cd sim && \
          $(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 sim
 
-.PHONY: maybe-distclean-findutils distclean-findutils
-maybe-distclean-findutils:
+.PHONY: maybe-distclean-sim distclean-sim
+maybe-distclean-sim:
+@if sim
+maybe-distclean-sim: distclean-sim
 
-distclean-findutils
-       @[ -f ./findutils/Makefile ] || exit 0; \
+distclean-sim
+       @[ -f ./sim/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in sim" ; \
+       (cd sim && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14155,251 +18128,301 @@ distclean-findutils:
                  distclean) \
          || exit 1
 
+@endif sim
 
-.PHONY: maybe-distclean-find distclean-find
-maybe-distclean-find:
+.PHONY: maybe-maintainer-clean-sim maintainer-clean-sim
+maybe-maintainer-clean-sim:
+@if sim
+maybe-maintainer-clean-sim: maintainer-clean-sim
 
-distclean-find
-       @[ -f ./find/Makefile ] || exit 0; \
+maintainer-clean-sim
+       @[ -f ./sim/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in sim" ; \
+       (cd sim && \
          $(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 sim
 
-.PHONY: maybe-distclean-flex distclean-flex
-maybe-distclean-flex:
 
-distclean-flex: 
-       @[ -f ./flex/Makefile ] || exit 0; \
+.PHONY: configure-tar maybe-configure-tar
+maybe-configure-tar:
+@if tar
+maybe-configure-tar: configure-tar
+configure-tar:
+       @test ! -f tar/Makefile || exit 0; \
+       [ -d tar ] || mkdir tar; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 flex" ; \
-       (cd flex && \
-         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
-                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
-                 "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
-                 distclean) \
+       $(HOST_EXPORTS) \
+       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
+@endif tar
 
+.PHONY: all-tar maybe-all-tar
+maybe-all-tar:
+@if tar
+maybe-all-tar: all-tar
+all-tar: configure-tar
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd tar && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif tar
 
-.PHONY: maybe-distclean-gas distclean-gas
-maybe-distclean-gas:
+.PHONY: check-tar maybe-check-tar
+maybe-check-tar:
+@if tar
+maybe-check-tar: check-tar
 
-distclean-gas: 
-       @[ -f ./gas/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-tar:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 distclean) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd tar && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif tar
 
-.PHONY: maybe-distclean-gawk distclean-gawk
-maybe-distclean-gawk:
+.PHONY: install-tar maybe-install-tar
+maybe-install-tar:
+@if tar
+maybe-install-tar: install-tar
 
-distclean-gawk: 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-tar: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gawk" ; \
-       (cd gawk && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd tar && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif tar
 
-.PHONY: maybe-distclean-gettext distclean-gettext
-maybe-distclean-gettext:
+# Other targets (info, dvi, etc.)
 
-distclean-gettext: 
-       @[ -f ./gettext/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in tar" ; \
+       (cd tar && \
          $(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 tar
 
-.PHONY: maybe-distclean-gnuserv distclean-gnuserv
-maybe-distclean-gnuserv:
+.PHONY: maybe-dvi-tar dvi-tar
+maybe-dvi-tar:
+@if tar
+maybe-dvi-tar: dvi-tar
 
-distclean-gnuserv: 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
+dvi-tar: \
+    configure-tar 
+       @[ -f ./tar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in tar" ; \
+       (cd tar && \
          $(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 tar
 
-.PHONY: maybe-distclean-gprof distclean-gprof
-maybe-distclean-gprof:
+.PHONY: maybe-TAGS-tar TAGS-tar
+maybe-TAGS-tar:
+@if tar
+maybe-TAGS-tar: TAGS-tar
 
-distclean-gprof: 
-       @[ -f ./gprof/Makefile ] || exit 0; \
+TAGS-tar: \
+    configure-tar 
+       @[ -f ./tar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in tar" ; \
+       (cd tar && \
          $(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 tar
 
-.PHONY: maybe-distclean-gzip distclean-gzip
-maybe-distclean-gzip:
+.PHONY: maybe-install-info-tar install-info-tar
+maybe-install-info-tar:
+@if tar
+maybe-install-info-tar: install-info-tar
 
-distclean-gzip: 
-       @[ -f ./gzip/Makefile ] || exit 0; \
+install-info-tar: \
+    configure-tar \
+    info-tar 
+       @[ -f ./tar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in tar" ; \
+       (cd tar && \
          $(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 tar
 
-.PHONY: maybe-distclean-hello distclean-hello
-maybe-distclean-hello:
+.PHONY: maybe-installcheck-tar installcheck-tar
+maybe-installcheck-tar:
+@if tar
+maybe-installcheck-tar: installcheck-tar
 
-distclean-hello: 
-       @[ -f ./hello/Makefile ] || exit 0; \
+installcheck-tar: \
+    configure-tar 
+       @[ -f ./tar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in tar" ; \
+       (cd tar && \
          $(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 tar
 
-.PHONY: maybe-distclean-indent distclean-indent
-maybe-distclean-indent:
+.PHONY: maybe-mostlyclean-tar mostlyclean-tar
+maybe-mostlyclean-tar:
+@if tar
+maybe-mostlyclean-tar: mostlyclean-tar
 
-distclean-indent
-       @[ -f ./indent/Makefile ] || exit 0; \
+mostlyclean-tar
+       @[ -f ./tar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in tar" ; \
+       (cd tar && \
          $(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 tar
 
-.PHONY: maybe-distclean-intl distclean-intl
-maybe-distclean-intl:
+.PHONY: maybe-clean-tar clean-tar
+maybe-clean-tar:
+@if tar
+maybe-clean-tar: clean-tar
 
-distclean-intl
-       @[ -f ./intl/Makefile ] || exit 0; \
+clean-tar
+       @[ -f ./tar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in tar" ; \
+       (cd tar && \
          $(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 tar
 
-.PHONY: maybe-distclean-tcl distclean-tcl
-maybe-distclean-tcl:
+.PHONY: maybe-distclean-tar distclean-tar
+maybe-distclean-tar:
+@if tar
+maybe-distclean-tar: distclean-tar
 
-distclean-tcl
-       @[ -f ./tcl/Makefile ] || exit 0; \
+distclean-tar
+       @[ -f ./tar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in tar" ; \
+       (cd tar && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14407,188 +18430,296 @@ distclean-tcl:
                  distclean) \
          || exit 1
 
+@endif tar
 
-.PHONY: maybe-distclean-itcl distclean-itcl
-maybe-distclean-itcl:
+.PHONY: maybe-maintainer-clean-tar maintainer-clean-tar
+maybe-maintainer-clean-tar:
+@if tar
+maybe-maintainer-clean-tar: maintainer-clean-tar
 
-distclean-itcl
-       @[ -f ./itcl/Makefile ] || exit 0; \
+maintainer-clean-tar
+       @[ -f ./tar/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in tar" ; \
+       (cd tar && \
          $(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 tar
 
-.PHONY: maybe-distclean-ld distclean-ld
-maybe-distclean-ld:
 
-distclean-ld: 
-       @[ -f ./ld/Makefile ] || exit 0; \
+.PHONY: configure-texinfo maybe-configure-texinfo
+maybe-configure-texinfo:
+@if texinfo
+maybe-configure-texinfo: configure-texinfo
+configure-texinfo:
+       @test ! -f texinfo/Makefile || exit 0; \
+       [ -d texinfo ] || mkdir texinfo; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif texinfo
+
+.PHONY: all-texinfo maybe-all-texinfo
+maybe-all-texinfo:
+@if texinfo
+maybe-all-texinfo: all-texinfo
+all-texinfo: configure-texinfo
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd texinfo && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in texinfo" ; \
+       (cd texinfo && \
          $(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 texinfo
 
-.PHONY: maybe-distclean-libgui distclean-libgui
-maybe-distclean-libgui:
+.PHONY: maybe-dvi-texinfo dvi-texinfo
+maybe-dvi-texinfo:
+@if texinfo
+maybe-dvi-texinfo: dvi-texinfo
 
-distclean-libgui: 
-       @[ -f ./libgui/Makefile ] || exit 0; \
+dvi-texinfo: \
+    configure-texinfo 
+       @[ -f ./texinfo/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in texinfo" ; \
+       (cd texinfo && \
          $(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 texinfo
 
-.PHONY: maybe-distclean-libiberty distclean-libiberty
-maybe-distclean-libiberty:
+.PHONY: maybe-TAGS-texinfo TAGS-texinfo
+maybe-TAGS-texinfo:
+@if texinfo
+maybe-TAGS-texinfo: TAGS-texinfo
 
-distclean-libiberty: 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
+TAGS-texinfo: \
+    configure-texinfo 
+       @[ -f ./texinfo/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 TAGS in texinfo" ; \
+       (cd texinfo && \
          $(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 texinfo
 
-.PHONY: maybe-distclean-libtool distclean-libtool
-maybe-distclean-libtool:
+.PHONY: maybe-install-info-texinfo install-info-texinfo
+maybe-install-info-texinfo:
+@if texinfo
+maybe-install-info-texinfo: install-info-texinfo
 
-distclean-libtool: 
-       @[ -f ./libtool/Makefile ] || exit 0; \
+install-info-texinfo: \
+    configure-texinfo \
+    info-texinfo 
+       @[ -f ./texinfo/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in texinfo" ; \
+       (cd texinfo && \
          $(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 texinfo
 
-.PHONY: maybe-distclean-m4 distclean-m4
-maybe-distclean-m4:
+.PHONY: maybe-installcheck-texinfo installcheck-texinfo
+maybe-installcheck-texinfo:
+@if texinfo
+maybe-installcheck-texinfo: installcheck-texinfo
 
-distclean-m4: 
-       @[ -f ./m4/Makefile ] || exit 0; \
+installcheck-texinfo: \
+    configure-texinfo 
+       @[ -f ./texinfo/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in texinfo" ; \
+       (cd texinfo && \
          $(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 texinfo
 
-.PHONY: maybe-distclean-make distclean-make
-maybe-distclean-make:
+.PHONY: maybe-mostlyclean-texinfo mostlyclean-texinfo
+maybe-mostlyclean-texinfo:
+@if texinfo
+maybe-mostlyclean-texinfo: mostlyclean-texinfo
 
-distclean-make
-       @[ -f ./make/Makefile ] || exit 0; \
+mostlyclean-texinfo
+       @[ -f ./texinfo/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in texinfo" ; \
+       (cd texinfo && \
          $(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 texinfo
 
-.PHONY: maybe-distclean-mmalloc distclean-mmalloc
-maybe-distclean-mmalloc:
+.PHONY: maybe-clean-texinfo clean-texinfo
+maybe-clean-texinfo:
+@if texinfo
+maybe-clean-texinfo: clean-texinfo
 
-distclean-mmalloc
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
+clean-texinfo
+       @[ -f ./texinfo/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in texinfo" ; \
+       (cd texinfo && \
          $(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 texinfo
 
-.PHONY: maybe-distclean-patch distclean-patch
-maybe-distclean-patch:
+.PHONY: maybe-distclean-texinfo distclean-texinfo
+maybe-distclean-texinfo:
+@if texinfo
+maybe-distclean-texinfo: distclean-texinfo
 
-distclean-patch
-       @[ -f ./patch/Makefile ] || exit 0; \
+distclean-texinfo
+       @[ -f ./texinfo/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in texinfo" ; \
+       (cd texinfo && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14596,209 +18727,301 @@ distclean-patch:
                  distclean) \
          || exit 1
 
+@endif texinfo
 
-.PHONY: maybe-distclean-perl distclean-perl
-maybe-distclean-perl:
+.PHONY: maybe-maintainer-clean-texinfo maintainer-clean-texinfo
+maybe-maintainer-clean-texinfo:
+@if texinfo
+maybe-maintainer-clean-texinfo: maintainer-clean-texinfo
 
-distclean-perl
-       @[ -f ./perl/Makefile ] || exit 0; \
+maintainer-clean-texinfo
+       @[ -f ./texinfo/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in texinfo" ; \
+       (cd texinfo && \
          $(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 texinfo
 
-.PHONY: maybe-distclean-prms distclean-prms
-maybe-distclean-prms:
 
-distclean-prms: 
-       @[ -f ./prms/Makefile ] || exit 0; \
+.PHONY: configure-textutils maybe-configure-textutils
+maybe-configure-textutils:
+@if textutils
+maybe-configure-textutils: configure-textutils
+configure-textutils:
+       @test ! -f textutils/Makefile || exit 0; \
+       [ -d textutils ] || mkdir textutils; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 distclean) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif textutils
 
+.PHONY: all-textutils maybe-all-textutils
+maybe-all-textutils:
+@if textutils
+maybe-all-textutils: all-textutils
+all-textutils: configure-textutils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd textutils && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif textutils
 
-.PHONY: maybe-distclean-rcs distclean-rcs
-maybe-distclean-rcs:
+.PHONY: check-textutils maybe-check-textutils
+maybe-check-textutils:
+@if textutils
+maybe-check-textutils: check-textutils
 
-distclean-rcs: 
-       @[ -f ./rcs/Makefile ] || exit 0; \
+check-textutils:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in textutils" ; \
+       (cd textutils && \
          $(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 textutils
 
-.PHONY: maybe-distclean-readline distclean-readline
-maybe-distclean-readline:
+.PHONY: maybe-dvi-textutils dvi-textutils
+maybe-dvi-textutils:
+@if textutils
+maybe-dvi-textutils: dvi-textutils
 
-distclean-readline: 
-       @[ -f ./readline/Makefile ] || exit 0; \
+dvi-textutils: \
+    configure-textutils 
+       @[ -f ./textutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in textutils" ; \
+       (cd textutils && \
          $(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 textutils
 
-.PHONY: maybe-distclean-release distclean-release
-maybe-distclean-release:
+.PHONY: maybe-TAGS-textutils TAGS-textutils
+maybe-TAGS-textutils:
+@if textutils
+maybe-TAGS-textutils: TAGS-textutils
 
-distclean-release: 
-       @[ -f ./release/Makefile ] || exit 0; \
+TAGS-textutils: \
+    configure-textutils 
+       @[ -f ./textutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing TAGS in textutils" ; \
+       (cd textutils && \
          $(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 textutils
 
-.PHONY: maybe-distclean-recode distclean-recode
-maybe-distclean-recode:
+.PHONY: maybe-install-info-textutils install-info-textutils
+maybe-install-info-textutils:
+@if textutils
+maybe-install-info-textutils: install-info-textutils
 
-distclean-recode: 
-       @[ -f ./recode/Makefile ] || exit 0; \
+install-info-textutils: \
+    configure-textutils \
+    info-textutils 
+       @[ -f ./textutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing install-info in textutils" ; \
+       (cd textutils && \
          $(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 textutils
 
-.PHONY: maybe-distclean-sed distclean-sed
-maybe-distclean-sed:
+.PHONY: maybe-installcheck-textutils installcheck-textutils
+maybe-installcheck-textutils:
+@if textutils
+maybe-installcheck-textutils: installcheck-textutils
 
-distclean-sed: 
-       @[ -f ./sed/Makefile ] || exit 0; \
+installcheck-textutils: \
+    configure-textutils 
+       @[ -f ./textutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       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 && \
+       echo "Doing installcheck in textutils" ; \
+       (cd textutils && \
          $(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 textutils
 
-.PHONY: maybe-distclean-send-pr distclean-send-pr
-maybe-distclean-send-pr:
+.PHONY: maybe-mostlyclean-textutils mostlyclean-textutils
+maybe-mostlyclean-textutils:
+@if textutils
+maybe-mostlyclean-textutils: mostlyclean-textutils
 
-distclean-send-pr
-       @[ -f ./send-pr/Makefile ] || exit 0; \
+mostlyclean-textutils
+       @[ -f ./textutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in send-pr" ; \
-       (cd send-pr && \
+       echo "Doing mostlyclean in textutils" ; \
+       (cd textutils && \
          $(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 textutils
 
-.PHONY: maybe-distclean-shellutils distclean-shellutils
-maybe-distclean-shellutils:
+.PHONY: maybe-clean-textutils clean-textutils
+maybe-clean-textutils:
+@if textutils
+maybe-clean-textutils: clean-textutils
 
-distclean-shellutils: 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
+clean-textutils: 
+       @[ -f ./textutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in shellutils" ; \
-       (cd shellutils && \
+       echo "Doing clean in textutils" ; \
+       (cd textutils && \
          $(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 textutils
 
-.PHONY: maybe-distclean-sid distclean-sid
-maybe-distclean-sid:
+.PHONY: maybe-distclean-textutils distclean-textutils
+maybe-distclean-textutils:
+@if textutils
+maybe-distclean-textutils: distclean-textutils
 
-distclean-sid
-       @[ -f ./sid/Makefile ] || exit 0; \
+distclean-textutils
+       @[ -f ./textutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in sid" ; \
-       (cd sid && \
+       echo "Doing distclean in textutils" ; \
+       (cd textutils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14806,188 +19029,301 @@ distclean-sid:
                  distclean) \
          || exit 1
 
+@endif textutils
 
-.PHONY: maybe-distclean-sim distclean-sim
-maybe-distclean-sim:
+.PHONY: maybe-maintainer-clean-textutils maintainer-clean-textutils
+maybe-maintainer-clean-textutils:
+@if textutils
+maybe-maintainer-clean-textutils: maintainer-clean-textutils
 
-distclean-sim
-       @[ -f ./sim/Makefile ] || exit 0; \
+maintainer-clean-textutils
+       @[ -f ./textutils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in sim" ; \
-       (cd sim && \
+       echo "Doing maintainer-clean in textutils" ; \
+       (cd textutils && \
          $(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 textutils
+
+
+.PHONY: configure-time maybe-configure-time
+maybe-configure-time:
+@if time
+maybe-configure-time: configure-time
+configure-time:
+       @test ! -f time/Makefile || exit 0; \
+       [ -d time ] || mkdir time; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif time
+
+.PHONY: all-time maybe-all-time
+maybe-all-time:
+@if time
+maybe-all-time: all-time
+all-time: configure-time
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd time && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd time && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif time
 
-.PHONY: maybe-distclean-tar distclean-tar
-maybe-distclean-tar:
+# Other targets (info, dvi, etc.)
 
-distclean-tar: 
-       @[ -f ./tar/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in tar" ; \
-       (cd tar && \
+       echo "Doing info 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}" \
-                 distclean) \
+                 info) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-texinfo distclean-texinfo
-maybe-distclean-texinfo:
+.PHONY: maybe-dvi-time dvi-time
+maybe-dvi-time:
+@if time
+maybe-dvi-time: dvi-time
 
-distclean-texinfo: 
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+dvi-time: \
+    configure-time 
+       @[ -f ./time/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in texinfo" ; \
-       (cd texinfo && \
+       echo "Doing dvi 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}" \
-                 distclean) \
+                 dvi) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-textutils distclean-textutils
-maybe-distclean-textutils:
+.PHONY: maybe-TAGS-time TAGS-time
+maybe-TAGS-time:
+@if time
+maybe-TAGS-time: TAGS-time
 
-distclean-textutils: 
-       @[ -f ./textutils/Makefile ] || exit 0; \
+TAGS-time: \
+    configure-time 
+       @[ -f ./time/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in textutils" ; \
-       (cd textutils && \
+       echo "Doing TAGS 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}" \
-                 distclean) \
+                 TAGS) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-time distclean-time
-maybe-distclean-time:
+.PHONY: maybe-install-info-time install-info-time
+maybe-install-info-time:
+@if time
+maybe-install-info-time: install-info-time
 
-distclean-time: 
+install-info-time: \
+    configure-time \
+    info-time 
        @[ -f ./time/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in time" ; \
+       echo "Doing install-info 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}" \
-                 distclean) \
+                 install-info) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-uudecode distclean-uudecode
-maybe-distclean-uudecode:
+.PHONY: maybe-installcheck-time installcheck-time
+maybe-installcheck-time:
+@if time
+maybe-installcheck-time: installcheck-time
 
-distclean-uudecode: 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
+installcheck-time: \
+    configure-time 
+       @[ -f ./time/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in uudecode" ; \
-       (cd uudecode && \
+       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}" \
-                 distclean) \
+                 installcheck) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-wdiff distclean-wdiff
-maybe-distclean-wdiff:
+.PHONY: maybe-mostlyclean-time mostlyclean-time
+maybe-mostlyclean-time:
+@if time
+maybe-mostlyclean-time: mostlyclean-time
 
-distclean-wdiff
-       @[ -f ./wdiff/Makefile ] || exit 0; \
+mostlyclean-time
+       @[ -f ./time/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in wdiff" ; \
-       (cd wdiff && \
+       echo "Doing mostlyclean 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}" \
-                 distclean) \
+                 mostlyclean) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-zip distclean-zip
-maybe-distclean-zip:
+.PHONY: maybe-clean-time clean-time
+maybe-clean-time:
+@if time
+maybe-clean-time: clean-time
 
-distclean-zip
-       @[ -f ./zip/Makefile ] || exit 0; \
+clean-time
+       @[ -f ./time/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in zip" ; \
-       (cd zip && \
+       echo "Doing clean 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}" \
-                 distclean) \
+                 clean) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-zlib distclean-zlib
-maybe-distclean-zlib:
+.PHONY: maybe-distclean-time distclean-time
+maybe-distclean-time:
+@if time
+maybe-distclean-time: distclean-time
 
-distclean-zlib
-       @[ -f ./zlib/Makefile ] || exit 0; \
+distclean-time
+       @[ -f ./time/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in zlib" ; \
-       (cd zlib && \
+       echo "Doing distclean in time" ; \
+       (cd time && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -14995,268 +19331,301 @@ distclean-zlib:
                  distclean) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-gdb distclean-gdb
-maybe-distclean-gdb:
+.PHONY: maybe-maintainer-clean-time maintainer-clean-time
+maybe-maintainer-clean-time:
+@if time
+maybe-maintainer-clean-time: maintainer-clean-time
 
-distclean-gdb
-       @[ -f ./gdb/Makefile ] || exit 0; \
+maintainer-clean-time
+       @[ -f ./time/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in gdb" ; \
-       (cd gdb && \
+       echo "Doing maintainer-clean 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}" \
-                 distclean) \
+                 maintainer-clean) \
          || exit 1
 
+@endif time
 
-.PHONY: maybe-distclean-expect distclean-expect
-maybe-distclean-expect:
 
-distclean-expect: 
-       @[ -f ./expect/Makefile ] || exit 0; \
+.PHONY: configure-uudecode maybe-configure-uudecode
+maybe-configure-uudecode:
+@if uudecode
+maybe-configure-uudecode: configure-uudecode
+configure-uudecode:
+       @test ! -f uudecode/Makefile || exit 0; \
+       [ -d uudecode ] || mkdir uudecode; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 expect" ; \
-       (cd 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) \
+       $(HOST_EXPORTS) \
+       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
+@endif uudecode
 
+.PHONY: all-uudecode maybe-all-uudecode
+maybe-all-uudecode:
+@if uudecode
+maybe-all-uudecode: all-uudecode
+all-uudecode: configure-uudecode
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif uudecode
 
-.PHONY: maybe-distclean-guile distclean-guile
-maybe-distclean-guile:
+.PHONY: check-uudecode maybe-check-uudecode
+maybe-check-uudecode:
+@if uudecode
+maybe-check-uudecode: check-uudecode
 
-distclean-guile: 
-       @[ -f ./guile/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-uudecode:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 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}" \
-                 distclean) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) check)
 
+@endif uudecode
 
-.PHONY: maybe-distclean-tk distclean-tk
-maybe-distclean-tk:
+.PHONY: install-uudecode maybe-install-uudecode
+maybe-install-uudecode:
+@if uudecode
+maybe-install-uudecode: install-uudecode
 
-distclean-tk: 
-       @[ -f ./tk/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-uudecode: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 tk" ; \
-       (cd 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) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif uudecode
 
-.PHONY: maybe-distclean-tix distclean-tix
-maybe-distclean-tix:
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-uudecode info-uudecode
+maybe-info-uudecode:
+@if uudecode
+maybe-info-uudecode: info-uudecode
 
-distclean-tix: 
-       @[ -f ./tix/Makefile ] || exit 0; \
+info-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in tix" ; \
-       (cd tix && \
+       echo "Doing info in uudecode" ; \
+       (cd 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-libtermcap distclean-libtermcap
-maybe-distclean-libtermcap:
-
-# libtermcap doesn't support distclean.
-distclean-libtermcap:
-
-
-.PHONY: maybe-distclean-utils distclean-utils
-maybe-distclean-utils:
+.PHONY: maybe-dvi-uudecode dvi-uudecode
+maybe-dvi-uudecode:
+@if uudecode
+maybe-dvi-uudecode: dvi-uudecode
 
-distclean-utils: 
-       @[ -f ./utils/Makefile ] || exit 0; \
+dvi-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
          eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
        done; \
-       echo "Doing distclean in utils" ; \
-       (cd utils && \
+       echo "Doing dvi in uudecode" ; \
+       (cd 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-TAGS-uudecode TAGS-uudecode
+maybe-TAGS-uudecode:
+@if uudecode
+maybe-TAGS-uudecode: TAGS-uudecode
 
-# 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 ; \
+TAGS-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 uudecode" ; \
+       (cd 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-target-newlib distclean-target-newlib
-maybe-distclean-target-newlib:
+.PHONY: maybe-install-info-uudecode install-info-uudecode
+maybe-install-info-uudecode:
+@if uudecode
+maybe-install-info-uudecode: install-info-uudecode
 
-distclean-target-newlib: 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+install-info-uudecode: \
+    configure-uudecode \
+    info-uudecode 
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 uudecode" ; \
+       (cd 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-target-libf2c distclean-target-libf2c
-maybe-distclean-target-libf2c:
+.PHONY: maybe-installcheck-uudecode installcheck-uudecode
+maybe-installcheck-uudecode:
+@if uudecode
+maybe-installcheck-uudecode: installcheck-uudecode
 
-distclean-target-libf2c: 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
+installcheck-uudecode: \
+    configure-uudecode 
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 uudecode" ; \
+       (cd 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-target-libobjc distclean-target-libobjc
-maybe-distclean-target-libobjc:
+.PHONY: maybe-mostlyclean-uudecode mostlyclean-uudecode
+maybe-mostlyclean-uudecode:
+@if uudecode
+maybe-mostlyclean-uudecode: mostlyclean-uudecode
 
-distclean-target-libobjc
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+mostlyclean-uudecode
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 uudecode" ; \
+       (cd 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-target-libtermcap distclean-target-libtermcap
-maybe-distclean-target-libtermcap:
-
-# libtermcap doesn't support distclean.
-distclean-target-libtermcap:
-
-
-.PHONY: maybe-distclean-target-winsup distclean-target-winsup
-maybe-distclean-target-winsup:
+.PHONY: maybe-clean-uudecode clean-uudecode
+maybe-clean-uudecode:
+@if uudecode
+maybe-clean-uudecode: clean-uudecode
 
-distclean-target-winsup
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+clean-uudecode
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/winsup" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 uudecode" ; \
+       (cd 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-target-libgloss distclean-target-libgloss
-maybe-distclean-target-libgloss:
+.PHONY: maybe-distclean-uudecode distclean-uudecode
+maybe-distclean-uudecode:
+@if uudecode
+maybe-distclean-uudecode: distclean-uudecode
 
-distclean-target-libgloss
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+distclean-uudecode
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libgloss" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 uudecode" ; \
+       (cd uudecode && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15264,188 +19633,301 @@ distclean-target-libgloss:
                  distclean) \
          || exit 1
 
+@endif uudecode
 
-.PHONY: maybe-distclean-target-libiberty distclean-target-libiberty
-maybe-distclean-target-libiberty:
+.PHONY: maybe-maintainer-clean-uudecode maintainer-clean-uudecode
+maybe-maintainer-clean-uudecode:
+@if uudecode
+maybe-maintainer-clean-uudecode: maintainer-clean-uudecode
 
-distclean-target-libiberty
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+maintainer-clean-uudecode
+       @[ -f ./uudecode/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 uudecode" ; \
+       (cd 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-target-gperf distclean-target-gperf
-maybe-distclean-target-gperf:
 
-distclean-target-gperf: 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+.PHONY: configure-wdiff maybe-configure-wdiff
+maybe-configure-wdiff:
+@if wdiff
+maybe-configure-wdiff: configure-wdiff
+configure-wdiff:
+       @test ! -f wdiff/Makefile || exit 0; \
+       [ -d wdiff ] || mkdir wdiff; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in wdiff; \
+       cd wdiff || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif wdiff
+
+.PHONY: all-wdiff maybe-all-wdiff
+maybe-all-wdiff:
+@if wdiff
+maybe-all-wdiff: all-wdiff
+all-wdiff: configure-wdiff
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(HOST_EXPORTS) \
+       (cd wdiff && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(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 info in wdiff" ; \
+       (cd 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-target-examples distclean-target-examples
-maybe-distclean-target-examples:
+.PHONY: maybe-dvi-wdiff dvi-wdiff
+maybe-dvi-wdiff:
+@if wdiff
+maybe-dvi-wdiff: dvi-wdiff
 
-distclean-target-examples: 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+dvi-wdiff: \
+    configure-wdiff 
+       @[ -f ./wdiff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi in wdiff" ; \
+       (cd 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-target-libffi distclean-target-libffi
-maybe-distclean-target-libffi:
+.PHONY: maybe-TAGS-wdiff TAGS-wdiff
+maybe-TAGS-wdiff:
+@if wdiff
+maybe-TAGS-wdiff: TAGS-wdiff
 
-distclean-target-libffi: 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+TAGS-wdiff: \
+    configure-wdiff 
+       @[ -f ./wdiff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 TAGS in wdiff" ; \
+       (cd 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-target-libjava distclean-target-libjava
-maybe-distclean-target-libjava:
+.PHONY: maybe-install-info-wdiff install-info-wdiff
+maybe-install-info-wdiff:
+@if wdiff
+maybe-install-info-wdiff: install-info-wdiff
 
-distclean-target-libjava: 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+install-info-wdiff: \
+    configure-wdiff \
+    info-wdiff 
+       @[ -f ./wdiff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info in wdiff" ; \
+       (cd 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-target-zlib distclean-target-zlib
-maybe-distclean-target-zlib:
+.PHONY: maybe-installcheck-wdiff installcheck-wdiff
+maybe-installcheck-wdiff:
+@if wdiff
+maybe-installcheck-wdiff: installcheck-wdiff
 
-distclean-target-zlib: 
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+installcheck-wdiff: \
+    configure-wdiff 
+       @[ -f ./wdiff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 installcheck in wdiff" ; \
+       (cd 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-target-boehm-gc distclean-target-boehm-gc
-maybe-distclean-target-boehm-gc:
+.PHONY: maybe-mostlyclean-wdiff mostlyclean-wdiff
+maybe-mostlyclean-wdiff:
+@if wdiff
+maybe-mostlyclean-wdiff: mostlyclean-wdiff
 
-distclean-target-boehm-gc
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+mostlyclean-wdiff
+       @[ -f ./wdiff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean in wdiff" ; \
+       (cd 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-target-qthreads distclean-target-qthreads
-maybe-distclean-target-qthreads:
+.PHONY: maybe-clean-wdiff clean-wdiff
+maybe-clean-wdiff:
+@if wdiff
+maybe-clean-wdiff: clean-wdiff
 
-distclean-target-qthreads
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+clean-wdiff
+       @[ -f ./wdiff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean in wdiff" ; \
+       (cd 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-target-rda distclean-target-rda
-maybe-distclean-target-rda:
+.PHONY: maybe-distclean-wdiff distclean-wdiff
+maybe-distclean-wdiff:
+@if wdiff
+maybe-distclean-wdiff: distclean-wdiff
 
-distclean-target-rda
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+distclean-wdiff
+       @[ -f ./wdiff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing distclean in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean in wdiff" ; \
+       (cd wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15453,110 +19935,24 @@ distclean-target-rda:
                  distclean) \
          || exit 1
 
+@endif wdiff
 
+.PHONY: maybe-maintainer-clean-wdiff maintainer-clean-wdiff
+maybe-maintainer-clean-wdiff:
+@if wdiff
+maybe-maintainer-clean-wdiff: maintainer-clean-wdiff
 
-.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
-
-.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
-
-# 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; \
+maintainer-clean-wdiff: 
+       @[ -f ./wdiff/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_GCC_FLAGS); do \
+       $(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 gcc" ; \
-       (cd gcc && \
+       echo "Doing maintainer-clean in wdiff" ; \
+       (cd wdiff && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15564,210 +19960,304 @@ maintainer-clean-gcc:
                  maintainer-clean) \
          || exit 1
 
-# Host modules.
+@endif wdiff
 
-.PHONY: maybe-maintainer-clean-ash maintainer-clean-ash
-maybe-maintainer-clean-ash:
 
-maintainer-clean-ash: 
-       @[ -f ./ash/Makefile ] || exit 0; \
+.PHONY: configure-zip maybe-configure-zip
+maybe-configure-zip:
+@if zip
+maybe-configure-zip: configure-zip
+configure-zip:
+       @test ! -f zip/Makefile || exit 0; \
+       [ -d zip ] || mkdir zip; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 ash" ; \
-       (cd ash && \
-         $(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) \
+       $(HOST_EXPORTS) \
+       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
+@endif zip
 
+.PHONY: all-zip maybe-all-zip
+maybe-all-zip:
+@if zip
+maybe-all-zip: all-zip
+all-zip: configure-zip
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd zip && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif zip
 
-.PHONY: maybe-maintainer-clean-autoconf maintainer-clean-autoconf
-maybe-maintainer-clean-autoconf:
+.PHONY: check-zip maybe-check-zip
+maybe-check-zip:
+@if zip
+maybe-check-zip: check-zip
 
-maintainer-clean-autoconf: 
-       @[ -f ./autoconf/Makefile ] || exit 0; \
+# 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; \
+         $(SET_LIB_PATH) \
+         $(HOST_EXPORTS) \
+         (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 autoconf" ; \
-       (cd autoconf && \
+       echo "Doing info in zip" ; \
+       (cd zip && \
          $(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 zip
 
-.PHONY: maybe-maintainer-clean-automake maintainer-clean-automake
-maybe-maintainer-clean-automake:
+.PHONY: maybe-dvi-zip dvi-zip
+maybe-dvi-zip:
+@if zip
+maybe-dvi-zip: dvi-zip
 
-maintainer-clean-automake: 
-       @[ -f ./automake/Makefile ] || exit 0; \
+dvi-zip: \
+    configure-zip 
+       @[ -f ./zip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 automake" ; \
-       (cd automake && \
+       echo "Doing dvi in zip" ; \
+       (cd zip && \
          $(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 zip
 
-.PHONY: maybe-maintainer-clean-bash maintainer-clean-bash
-maybe-maintainer-clean-bash:
+.PHONY: maybe-TAGS-zip TAGS-zip
+maybe-TAGS-zip:
+@if zip
+maybe-TAGS-zip: TAGS-zip
 
-maintainer-clean-bash: 
-       @[ -f ./bash/Makefile ] || exit 0; \
+TAGS-zip: \
+    configure-zip 
+       @[ -f ./zip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 bash" ; \
-       (cd bash && \
+       echo "Doing TAGS in zip" ; \
+       (cd zip && \
          $(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 zip
 
-.PHONY: maybe-maintainer-clean-bfd maintainer-clean-bfd
-maybe-maintainer-clean-bfd:
+.PHONY: maybe-install-info-zip install-info-zip
+maybe-install-info-zip:
+@if zip
+maybe-install-info-zip: install-info-zip
 
-maintainer-clean-bfd: 
-       @[ -f ./bfd/Makefile ] || exit 0; \
+install-info-zip: \
+    configure-zip \
+    info-zip 
+       @[ -f ./zip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 install-info in zip" ; \
+       (cd zip && \
          $(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 zip
 
-.PHONY: maybe-maintainer-clean-opcodes maintainer-clean-opcodes
-maybe-maintainer-clean-opcodes:
+.PHONY: maybe-installcheck-zip installcheck-zip
+maybe-installcheck-zip:
+@if zip
+maybe-installcheck-zip: installcheck-zip
 
-maintainer-clean-opcodes: 
-       @[ -f ./opcodes/Makefile ] || exit 0; \
+installcheck-zip: \
+    configure-zip 
+       @[ -f ./zip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 installcheck in zip" ; \
+       (cd zip && \
          $(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 zip
 
-.PHONY: maybe-maintainer-clean-binutils maintainer-clean-binutils
-maybe-maintainer-clean-binutils:
+.PHONY: maybe-mostlyclean-zip mostlyclean-zip
+maybe-mostlyclean-zip:
+@if zip
+maybe-mostlyclean-zip: mostlyclean-zip
 
-maintainer-clean-binutils
-       @[ -f ./binutils/Makefile ] || exit 0; \
+mostlyclean-zip
+       @[ -f ./zip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mostlyclean in zip" ; \
+       (cd zip && \
          $(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 zip
 
-.PHONY: maybe-maintainer-clean-bison maintainer-clean-bison
-maybe-maintainer-clean-bison:
+.PHONY: maybe-clean-zip clean-zip
+maybe-clean-zip:
+@if zip
+maybe-clean-zip: clean-zip
 
-maintainer-clean-bison
-       @[ -f ./bison/Makefile ] || exit 0; \
+clean-zip
+       @[ -f ./zip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 clean in zip" ; \
+       (cd zip && \
          $(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 zip
 
-.PHONY: maybe-maintainer-clean-byacc maintainer-clean-byacc
-maybe-maintainer-clean-byacc:
+.PHONY: maybe-distclean-zip distclean-zip
+maybe-distclean-zip:
+@if zip
+maybe-distclean-zip: distclean-zip
 
-maintainer-clean-byacc
-       @[ -f ./byacc/Makefile ] || exit 0; \
+distclean-zip
+       @[ -f ./zip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 distclean in zip" ; \
+       (cd zip && \
          $(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 zip
 
-.PHONY: maybe-maintainer-clean-bzip2 maintainer-clean-bzip2
-maybe-maintainer-clean-bzip2:
+.PHONY: maybe-maintainer-clean-zip maintainer-clean-zip
+maybe-maintainer-clean-zip:
+@if zip
+maybe-maintainer-clean-zip: maintainer-clean-zip
 
-maintainer-clean-bzip2
-       @[ -f ./bzip2/Makefile ] || exit 0; \
+maintainer-clean-zip
+       @[ -f ./zip/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 maintainer-clean in zip" ; \
+       (cd zip && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15775,188 +20265,293 @@ maintainer-clean-bzip2:
                  maintainer-clean) \
          || exit 1
 
+@endif zip
 
-.PHONY: maybe-maintainer-clean-dejagnu maintainer-clean-dejagnu
-maybe-maintainer-clean-dejagnu:
 
-maintainer-clean-dejagnu: 
-       @[ -f ./dejagnu/Makefile ] || exit 0; \
+.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 zlib/Makefile || exit 0; \
+       [ -d zlib ] || mkdir zlib; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif zlib
+
+.PHONY: all-zlib maybe-all-zlib
+maybe-all-zlib:
+@if zlib
+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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd zlib && $(MAKE) $(FLAGS_TO_PASS)  all)
+@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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 info in zlib" ; \
+       (cd 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) \
+                 info) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-diff maintainer-clean-diff
-maybe-maintainer-clean-diff:
+.PHONY: maybe-dvi-zlib dvi-zlib
+maybe-dvi-zlib:
+@if zlib
+maybe-dvi-zlib: dvi-zlib
 
-maintainer-clean-diff: 
-       @[ -f ./diff/Makefile ] || exit 0; \
+dvi-zlib: \
+    configure-zlib 
+       @[ -f ./zlib/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 dvi in zlib" ; \
+       (cd 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) \
+                 dvi) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-dosutils maintainer-clean-dosutils
-maybe-maintainer-clean-dosutils:
+.PHONY: maybe-TAGS-zlib TAGS-zlib
+maybe-TAGS-zlib:
+@if zlib
+maybe-TAGS-zlib: TAGS-zlib
 
-maintainer-clean-dosutils: 
-       @[ -f ./dosutils/Makefile ] || exit 0; \
+TAGS-zlib: \
+    configure-zlib 
+       @[ -f ./zlib/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zlib" ; \
+       (cd 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) \
+                 TAGS) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-etc maintainer-clean-etc
-maybe-maintainer-clean-etc:
+.PHONY: maybe-install-info-zlib install-info-zlib
+maybe-install-info-zlib:
+@if zlib
+maybe-install-info-zlib: install-info-zlib
 
-maintainer-clean-etc: 
-       @[ -f ./etc/Makefile ] || exit 0; \
+install-info-zlib: \
+    configure-zlib \
+    info-zlib 
+       @[ -f ./zlib/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zlib" ; \
+       (cd 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) \
+                 install-info) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-fastjar maintainer-clean-fastjar
-maybe-maintainer-clean-fastjar:
+.PHONY: maybe-installcheck-zlib installcheck-zlib
+maybe-installcheck-zlib:
+@if zlib
+maybe-installcheck-zlib: installcheck-zlib
 
-maintainer-clean-fastjar: 
-       @[ -f ./fastjar/Makefile ] || exit 0; \
+installcheck-zlib: \
+    configure-zlib 
+       @[ -f ./zlib/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zlib" ; \
+       (cd 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) \
+                 installcheck) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-fileutils maintainer-clean-fileutils
-maybe-maintainer-clean-fileutils:
+.PHONY: maybe-mostlyclean-zlib mostlyclean-zlib
+maybe-mostlyclean-zlib:
+@if zlib
+maybe-mostlyclean-zlib: mostlyclean-zlib
 
-maintainer-clean-fileutils
-       @[ -f ./fileutils/Makefile ] || exit 0; \
+mostlyclean-zlib
+       @[ -f ./zlib/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zlib" ; \
+       (cd 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) \
+                 mostlyclean) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-findutils maintainer-clean-findutils
-maybe-maintainer-clean-findutils:
+.PHONY: maybe-clean-zlib clean-zlib
+maybe-clean-zlib:
+@if zlib
+maybe-clean-zlib: clean-zlib
 
-maintainer-clean-findutils
-       @[ -f ./findutils/Makefile ] || exit 0; \
+clean-zlib
+       @[ -f ./zlib/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zlib" ; \
+       (cd 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) \
+                 clean) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-find maintainer-clean-find
-maybe-maintainer-clean-find:
+.PHONY: maybe-distclean-zlib distclean-zlib
+maybe-distclean-zlib:
+@if zlib
+maybe-distclean-zlib: distclean-zlib
 
-maintainer-clean-find
-       @[ -f ./find/Makefile ] || exit 0; \
+distclean-zlib
+       @[ -f ./zlib/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zlib" ; \
+       (cd 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) \
+                 distclean) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-flex maintainer-clean-flex
-maybe-maintainer-clean-flex:
+.PHONY: maybe-maintainer-clean-zlib maintainer-clean-zlib
+maybe-maintainer-clean-zlib:
+@if zlib
+maybe-maintainer-clean-zlib: maintainer-clean-zlib
 
-maintainer-clean-flex
-       @[ -f ./flex/Makefile ] || exit 0; \
+maintainer-clean-zlib
+       @[ -f ./zlib/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zlib" ; \
+       (cd zlib && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -15964,230 +20559,301 @@ maintainer-clean-flex:
                  maintainer-clean) \
          || exit 1
 
+@endif zlib
 
-.PHONY: maybe-maintainer-clean-gas maintainer-clean-gas
-maybe-maintainer-clean-gas:
 
-maintainer-clean-gas: 
-       @[ -f ./gas/Makefile ] || exit 0; \
+.PHONY: configure-gdb maybe-configure-gdb
+maybe-configure-gdb:
+@if gdb
+maybe-configure-gdb: configure-gdb
+configure-gdb:
+       @test ! -f gdb/Makefile || exit 0; \
+       [ -d gdb ] || mkdir gdb; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif gdb
+
+.PHONY: all-gdb maybe-all-gdb
+maybe-all-gdb:
+@if gdb
+maybe-all-gdb: all-gdb
+all-gdb: configure-gdb
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+@endif gdb
+
+.PHONY: check-gdb maybe-check-gdb
+maybe-check-gdb:
+@if gdb
+maybe-check-gdb: check-gdb
+
+check-gdb:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; 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) \
-         || exit 1
+       $(HOST_EXPORTS) \
+       (cd gdb && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) check)
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-gawk maintainer-clean-gawk
-maybe-maintainer-clean-gawk:
+.PHONY: install-gdb maybe-install-gdb
+maybe-install-gdb:
+@if gdb
+maybe-install-gdb: install-gdb
 
-maintainer-clean-gawk: 
-       @[ -f ./gawk/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-gdb: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 gawk" ; \
-       (cd gawk && \
-         $(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
+       $(HOST_EXPORTS) \
+       (cd gdb && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) install)
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-gettext maintainer-clean-gettext
-maybe-maintainer-clean-gettext:
+# Other targets (info, dvi, etc.)
 
-maintainer-clean-gettext: 
-       @[ -f ./gettext/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gettext" ; \
-       (cd gettext && \
+       echo "Doing info 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}" \
-                 maintainer-clean) \
+                 info) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-gnuserv maintainer-clean-gnuserv
-maybe-maintainer-clean-gnuserv:
+.PHONY: maybe-dvi-gdb dvi-gdb
+maybe-dvi-gdb:
+@if gdb
+maybe-dvi-gdb: dvi-gdb
 
-maintainer-clean-gnuserv: 
-       @[ -f ./gnuserv/Makefile ] || exit 0; \
+dvi-gdb: \
+    configure-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gnuserv" ; \
-       (cd gnuserv && \
+       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}" \
-                 maintainer-clean) \
+                 dvi) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-gprof maintainer-clean-gprof
-maybe-maintainer-clean-gprof:
+.PHONY: maybe-TAGS-gdb TAGS-gdb
+maybe-TAGS-gdb:
+@if gdb
+maybe-TAGS-gdb: TAGS-gdb
 
-maintainer-clean-gprof: 
-       @[ -f ./gprof/Makefile ] || exit 0; \
+TAGS-gdb: \
+    configure-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gprof" ; \
-       (cd gprof && \
+       echo "Doing TAGS 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}" \
-                 maintainer-clean) \
+                 TAGS) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-gzip maintainer-clean-gzip
-maybe-maintainer-clean-gzip:
+.PHONY: maybe-install-info-gdb install-info-gdb
+maybe-install-info-gdb:
+@if gdb
+maybe-install-info-gdb: install-info-gdb
 
-maintainer-clean-gzip: 
-       @[ -f ./gzip/Makefile ] || exit 0; \
+install-info-gdb: \
+    configure-gdb \
+    info-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gzip" ; \
-       (cd gzip && \
+       echo "Doing install-info 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}" \
-                 maintainer-clean) \
+                 install-info) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-hello maintainer-clean-hello
-maybe-maintainer-clean-hello:
+.PHONY: maybe-installcheck-gdb installcheck-gdb
+maybe-installcheck-gdb:
+@if gdb
+maybe-installcheck-gdb: installcheck-gdb
 
-maintainer-clean-hello: 
-       @[ -f ./hello/Makefile ] || exit 0; \
+installcheck-gdb: \
+    configure-gdb 
+       @[ -f ./gdb/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 hello" ; \
-       (cd hello && \
+       echo "Doing installcheck 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}" \
-                 maintainer-clean) \
+                 installcheck) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-indent maintainer-clean-indent
-maybe-maintainer-clean-indent:
+.PHONY: maybe-mostlyclean-gdb mostlyclean-gdb
+maybe-mostlyclean-gdb:
+@if gdb
+maybe-mostlyclean-gdb: mostlyclean-gdb
 
-maintainer-clean-indent
-       @[ -f ./indent/Makefile ] || exit 0; \
+mostlyclean-gdb
+       @[ -f ./gdb/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 indent" ; \
-       (cd indent && \
+       echo "Doing mostlyclean 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}" \
-                 maintainer-clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-intl maintainer-clean-intl
-maybe-maintainer-clean-intl:
+.PHONY: maybe-clean-gdb clean-gdb
+maybe-clean-gdb:
+@if gdb
+maybe-clean-gdb: clean-gdb
 
-maintainer-clean-intl
-       @[ -f ./intl/Makefile ] || exit 0; \
+clean-gdb
+       @[ -f ./gdb/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 intl" ; \
-       (cd intl && \
+       echo "Doing clean 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}" \
-                 maintainer-clean) \
+                 clean) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-tcl maintainer-clean-tcl
-maybe-maintainer-clean-tcl:
+.PHONY: maybe-distclean-gdb distclean-gdb
+maybe-distclean-gdb:
+@if gdb
+maybe-distclean-gdb: distclean-gdb
 
-maintainer-clean-tcl
-       @[ -f ./tcl/Makefile ] || exit 0; \
+distclean-gdb
+       @[ -f ./gdb/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 tcl" ; \
-       (cd tcl && \
+       echo "Doing distclean 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}" \
-                 maintainer-clean) \
+                 distclean) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-itcl maintainer-clean-itcl
-maybe-maintainer-clean-itcl:
+.PHONY: maybe-maintainer-clean-gdb maintainer-clean-gdb
+maybe-maintainer-clean-gdb:
+@if gdb
+maybe-maintainer-clean-gdb: maintainer-clean-gdb
 
-maintainer-clean-itcl
-       @[ -f ./itcl/Makefile ] || exit 0; \
+maintainer-clean-gdb
+       @[ -f ./gdb/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 itcl" ; \
-       (cd itcl && \
+       echo "Doing maintainer-clean in gdb" ; \
+       (cd gdb && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -16195,251 +20861,301 @@ maintainer-clean-itcl:
                  maintainer-clean) \
          || exit 1
 
+@endif gdb
 
-.PHONY: maybe-maintainer-clean-ld maintainer-clean-ld
-maybe-maintainer-clean-ld:
 
-maintainer-clean-ld: 
-       @[ -f ./ld/Makefile ] || exit 0; \
+.PHONY: configure-expect maybe-configure-expect
+maybe-configure-expect:
+@if expect
+maybe-configure-expect: configure-expect
+configure-expect:
+       @test ! -f expect/Makefile || exit 0; \
+       [ -d expect ] || mkdir expect; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif expect
 
+.PHONY: all-expect maybe-all-expect
+maybe-all-expect:
+@if expect
+maybe-all-expect: all-expect
+all-expect: configure-expect
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+@endif expect
 
-.PHONY: maybe-maintainer-clean-libgui maintainer-clean-libgui
-maybe-maintainer-clean-libgui:
+.PHONY: check-expect maybe-check-expect
+maybe-check-expect:
+@if expect
+maybe-check-expect: check-expect
 
-maintainer-clean-libgui: 
-       @[ -f ./libgui/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+check-expect:
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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
+       $(HOST_EXPORTS) \
+       (cd expect && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) check)
 
+@endif expect
 
-.PHONY: maybe-maintainer-clean-libiberty maintainer-clean-libiberty
-maybe-maintainer-clean-libiberty:
+.PHONY: install-expect maybe-install-expect
+maybe-install-expect:
+@if expect
+maybe-install-expect: install-expect
 
-maintainer-clean-libiberty: 
-       @[ -f ./libiberty/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-expect: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 libiberty" ; \
-       (cd 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
+       $(HOST_EXPORTS) \
+       (cd expect && $(MAKE) $(FLAGS_TO_PASS)$(X11_FLAGS_TO_PASS) install)
 
+@endif expect
 
-.PHONY: maybe-maintainer-clean-libtool maintainer-clean-libtool
-maybe-maintainer-clean-libtool:
+# Other targets (info, dvi, etc.)
 
-maintainer-clean-libtool: 
-       @[ -f ./libtool/Makefile ] || exit 0; \
+.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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 libtool" ; \
-       (cd libtool && \
+       echo "Doing info in expect" ; \
+       (cd expect && \
          $(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 expect
 
-.PHONY: maybe-maintainer-clean-m4 maintainer-clean-m4
-maybe-maintainer-clean-m4:
+.PHONY: maybe-dvi-expect dvi-expect
+maybe-dvi-expect:
+@if expect
+maybe-dvi-expect: dvi-expect
 
-maintainer-clean-m4: 
-       @[ -f ./m4/Makefile ] || exit 0; \
+dvi-expect: \
+    configure-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 m4" ; \
-       (cd m4 && \
+       echo "Doing dvi in expect" ; \
+       (cd expect && \
          $(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 expect
 
-.PHONY: maybe-maintainer-clean-make maintainer-clean-make
-maybe-maintainer-clean-make:
+.PHONY: maybe-TAGS-expect TAGS-expect
+maybe-TAGS-expect:
+@if expect
+maybe-TAGS-expect: TAGS-expect
 
-maintainer-clean-make: 
-       @[ -f ./make/Makefile ] || exit 0; \
+TAGS-expect: \
+    configure-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 make" ; \
-       (cd make && \
+       echo "Doing TAGS in expect" ; \
+       (cd expect && \
          $(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 expect
 
-.PHONY: maybe-maintainer-clean-mmalloc maintainer-clean-mmalloc
-maybe-maintainer-clean-mmalloc:
+.PHONY: maybe-install-info-expect install-info-expect
+maybe-install-info-expect:
+@if expect
+maybe-install-info-expect: install-info-expect
 
-maintainer-clean-mmalloc: 
-       @[ -f ./mmalloc/Makefile ] || exit 0; \
+install-info-expect: \
+    configure-expect \
+    info-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 mmalloc" ; \
-       (cd mmalloc && \
+       echo "Doing install-info in expect" ; \
+       (cd expect && \
          $(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 expect
 
-.PHONY: maybe-maintainer-clean-patch maintainer-clean-patch
-maybe-maintainer-clean-patch:
+.PHONY: maybe-installcheck-expect installcheck-expect
+maybe-installcheck-expect:
+@if expect
+maybe-installcheck-expect: installcheck-expect
 
-maintainer-clean-patch: 
-       @[ -f ./patch/Makefile ] || exit 0; \
+installcheck-expect: \
+    configure-expect 
+       @[ -f ./expect/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 patch" ; \
-       (cd patch && \
+       echo "Doing installcheck in expect" ; \
+       (cd expect && \
          $(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 expect
 
-.PHONY: maybe-maintainer-clean-perl maintainer-clean-perl
-maybe-maintainer-clean-perl:
+.PHONY: maybe-mostlyclean-expect mostlyclean-expect
+maybe-mostlyclean-expect:
+@if expect
+maybe-mostlyclean-expect: mostlyclean-expect
 
-maintainer-clean-perl
-       @[ -f ./perl/Makefile ] || exit 0; \
+mostlyclean-expect
+       @[ -f ./expect/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 perl" ; \
-       (cd perl && \
+       echo "Doing mostlyclean in expect" ; \
+       (cd expect && \
          $(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 expect
 
-.PHONY: maybe-maintainer-clean-prms maintainer-clean-prms
-maybe-maintainer-clean-prms:
+.PHONY: maybe-clean-expect clean-expect
+maybe-clean-expect:
+@if expect
+maybe-clean-expect: clean-expect
 
-maintainer-clean-prms
-       @[ -f ./prms/Makefile ] || exit 0; \
+clean-expect
+       @[ -f ./expect/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 prms" ; \
-       (cd prms && \
+       echo "Doing clean in expect" ; \
+       (cd expect && \
          $(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 expect
 
-.PHONY: maybe-maintainer-clean-rcs maintainer-clean-rcs
-maybe-maintainer-clean-rcs:
+.PHONY: maybe-distclean-expect distclean-expect
+maybe-distclean-expect:
+@if expect
+maybe-distclean-expect: distclean-expect
 
-maintainer-clean-rcs
-       @[ -f ./rcs/Makefile ] || exit 0; \
+distclean-expect
+       @[ -f ./expect/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 rcs" ; \
-       (cd rcs && \
+       echo "Doing distclean in expect" ; \
+       (cd expect && \
          $(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 expect
 
-.PHONY: maybe-maintainer-clean-readline maintainer-clean-readline
-maybe-maintainer-clean-readline:
+.PHONY: maybe-maintainer-clean-expect maintainer-clean-expect
+maybe-maintainer-clean-expect:
+@if expect
+maybe-maintainer-clean-expect: maintainer-clean-expect
 
-maintainer-clean-readline
-       @[ -f ./readline/Makefile ] || exit 0; \
+maintainer-clean-expect
+       @[ -f ./expect/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 readline" ; \
-       (cd readline && \
+       echo "Doing maintainer-clean in expect" ; \
+       (cd expect && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -16447,209 +21163,301 @@ maintainer-clean-readline:
                  maintainer-clean) \
          || exit 1
 
+@endif expect
 
-.PHONY: maybe-maintainer-clean-release maintainer-clean-release
-maybe-maintainer-clean-release:
 
-maintainer-clean-release: 
-       @[ -f ./release/Makefile ] || exit 0; \
+.PHONY: configure-guile maybe-configure-guile
+maybe-configure-guile:
+@if guile
+maybe-configure-guile: configure-guile
+configure-guile:
+       @test ! -f guile/Makefile || exit 0; \
+       [ -d guile ] || mkdir guile; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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) \
+       $(HOST_EXPORTS) \
+       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
+@endif guile
 
+.PHONY: all-guile maybe-all-guile
+maybe-all-guile:
+@if guile
+maybe-all-guile: all-guile
+all-guile: configure-guile
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+@endif guile
 
-.PHONY: maybe-maintainer-clean-recode maintainer-clean-recode
-maybe-maintainer-clean-recode:
+.PHONY: check-guile maybe-check-guile
+maybe-check-guile:
+@if guile
+maybe-check-guile: check-guile
 
-maintainer-clean-recode: 
-       @[ -f ./recode/Makefile ] || exit 0; \
+check-guile:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 recode" ; \
-       (cd recode && \
+       echo "Doing info 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}" \
-                 maintainer-clean) \
+                 info) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-sed maintainer-clean-sed
-maybe-maintainer-clean-sed:
+.PHONY: maybe-dvi-guile dvi-guile
+maybe-dvi-guile:
+@if guile
+maybe-dvi-guile: dvi-guile
 
-maintainer-clean-sed: 
-       @[ -f ./sed/Makefile ] || exit 0; \
+dvi-guile: \
+    configure-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 sed" ; \
-       (cd sed && \
+       echo "Doing dvi 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}" \
-                 maintainer-clean) \
+                 dvi) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-send-pr maintainer-clean-send-pr
-maybe-maintainer-clean-send-pr:
+.PHONY: maybe-TAGS-guile TAGS-guile
+maybe-TAGS-guile:
+@if guile
+maybe-TAGS-guile: TAGS-guile
 
-maintainer-clean-send-pr: 
-       @[ -f ./send-pr/Makefile ] || exit 0; \
+TAGS-guile: \
+    configure-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 send-pr" ; \
-       (cd send-pr && \
+       echo "Doing TAGS 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}" \
-                 maintainer-clean) \
+                 TAGS) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-shellutils maintainer-clean-shellutils
-maybe-maintainer-clean-shellutils:
+.PHONY: maybe-install-info-guile install-info-guile
+maybe-install-info-guile:
+@if guile
+maybe-install-info-guile: install-info-guile
 
-maintainer-clean-shellutils: 
-       @[ -f ./shellutils/Makefile ] || exit 0; \
+install-info-guile: \
+    configure-guile \
+    info-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 shellutils" ; \
-       (cd shellutils && \
+       echo "Doing install-info 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}" \
-                 maintainer-clean) \
+                 install-info) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-sid maintainer-clean-sid
-maybe-maintainer-clean-sid:
+.PHONY: maybe-installcheck-guile installcheck-guile
+maybe-installcheck-guile:
+@if guile
+maybe-installcheck-guile: installcheck-guile
 
-maintainer-clean-sid: 
-       @[ -f ./sid/Makefile ] || exit 0; \
+installcheck-guile: \
+    configure-guile 
+       @[ -f ./guile/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 sid" ; \
-       (cd sid && \
+       echo "Doing installcheck 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}" \
-                 maintainer-clean) \
+                 installcheck) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-sim maintainer-clean-sim
-maybe-maintainer-clean-sim:
+.PHONY: maybe-mostlyclean-guile mostlyclean-guile
+maybe-mostlyclean-guile:
+@if guile
+maybe-mostlyclean-guile: mostlyclean-guile
 
-maintainer-clean-sim
-       @[ -f ./sim/Makefile ] || exit 0; \
+mostlyclean-guile
+       @[ -f ./guile/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 sim" ; \
-       (cd sim && \
+       echo "Doing mostlyclean 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}" \
-                 maintainer-clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-tar maintainer-clean-tar
-maybe-maintainer-clean-tar:
+.PHONY: maybe-clean-guile clean-guile
+maybe-clean-guile:
+@if guile
+maybe-clean-guile: clean-guile
 
-maintainer-clean-tar
-       @[ -f ./tar/Makefile ] || exit 0; \
+clean-guile
+       @[ -f ./guile/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 tar" ; \
-       (cd tar && \
+       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}" \
-                 maintainer-clean) \
+                 clean) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-texinfo maintainer-clean-texinfo
-maybe-maintainer-clean-texinfo:
+.PHONY: maybe-distclean-guile distclean-guile
+maybe-distclean-guile:
+@if guile
+maybe-distclean-guile: distclean-guile
 
-maintainer-clean-texinfo
-       @[ -f ./texinfo/Makefile ] || exit 0; \
+distclean-guile
+       @[ -f ./guile/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 texinfo" ; \
-       (cd texinfo && \
+       echo "Doing distclean 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}" \
-                 maintainer-clean) \
+                 distclean) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-textutils maintainer-clean-textutils
-maybe-maintainer-clean-textutils:
+.PHONY: maybe-maintainer-clean-guile maintainer-clean-guile
+maybe-maintainer-clean-guile:
+@if guile
+maybe-maintainer-clean-guile: maintainer-clean-guile
 
-maintainer-clean-textutils
-       @[ -f ./textutils/Makefile ] || exit 0; \
+maintainer-clean-guile
+       @[ -f ./guile/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 textutils" ; \
-       (cd textutils && \
+       echo "Doing maintainer-clean in guile" ; \
+       (cd guile && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -16657,184 +21465,297 @@ maintainer-clean-textutils:
                  maintainer-clean) \
          || exit 1
 
+@endif guile
 
-.PHONY: maybe-maintainer-clean-time maintainer-clean-time
-maybe-maintainer-clean-time:
 
-maintainer-clean-time: 
-       @[ -f ./time/Makefile ] || exit 0; \
+.PHONY: configure-tk maybe-configure-tk
+maybe-configure-tk:
+@if tk
+maybe-configure-tk: configure-tk
+configure-tk:
+       @test ! -f tk/Makefile || exit 0; \
+       [ -d tk ] || mkdir tk; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       echo Configuring in tk; \
+       cd tk || 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";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption}  \
+         || exit 1
+@endif tk
+
+.PHONY: all-tk maybe-all-tk
+maybe-all-tk:
+@if tk
+maybe-all-tk: all-tk
+all-tk: configure-tk
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+@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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd 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; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 time" ; \
-       (cd time && \
+       echo "Doing info in tk" ; \
+       (cd 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) \
+                 info) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-uudecode maintainer-clean-uudecode
-maybe-maintainer-clean-uudecode:
+.PHONY: maybe-dvi-tk dvi-tk
+maybe-dvi-tk:
+@if tk
+maybe-dvi-tk: dvi-tk
 
-maintainer-clean-uudecode: 
-       @[ -f ./uudecode/Makefile ] || exit 0; \
+dvi-tk: \
+    configure-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 uudecode" ; \
-       (cd uudecode && \
+       echo "Doing dvi in tk" ; \
+       (cd 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) \
+                 dvi) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-wdiff maintainer-clean-wdiff
-maybe-maintainer-clean-wdiff:
+.PHONY: maybe-TAGS-tk TAGS-tk
+maybe-TAGS-tk:
+@if tk
+maybe-TAGS-tk: TAGS-tk
 
-maintainer-clean-wdiff: 
-       @[ -f ./wdiff/Makefile ] || exit 0; \
+TAGS-tk: \
+    configure-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 wdiff" ; \
-       (cd wdiff && \
+       echo "Doing TAGS in tk" ; \
+       (cd 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) \
+                 TAGS) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-zip maintainer-clean-zip
-maybe-maintainer-clean-zip:
+.PHONY: maybe-install-info-tk install-info-tk
+maybe-install-info-tk:
+@if tk
+maybe-install-info-tk: install-info-tk
 
-maintainer-clean-zip: 
-       @[ -f ./zip/Makefile ] || exit 0; \
+install-info-tk: \
+    configure-tk \
+    info-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zip" ; \
-       (cd zip && \
+       echo "Doing install-info in tk" ; \
+       (cd 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) \
+                 install-info) \
          || exit 1
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-zlib maintainer-clean-zlib
-maybe-maintainer-clean-zlib:
+.PHONY: maybe-installcheck-tk installcheck-tk
+maybe-installcheck-tk:
+@if tk
+maybe-installcheck-tk: installcheck-tk
 
-maintainer-clean-zlib: 
-       @[ -f ./zlib/Makefile ] || exit 0; \
+installcheck-tk: \
+    configure-tk 
+       @[ -f ./tk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 zlib" ; \
-       (cd zlib && \
+       echo "Doing installcheck in tk" ; \
+       (cd 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
 
+@endif tk
 
-.PHONY: maybe-maintainer-clean-gdb maintainer-clean-gdb
-maybe-maintainer-clean-gdb:
+.PHONY: maybe-mostlyclean-tk mostlyclean-tk
+maybe-mostlyclean-tk:
+@if tk
+maybe-mostlyclean-tk: mostlyclean-tk
 
-maintainer-clean-gdb
-       @[ -f ./gdb/Makefile ] || exit 0; \
+mostlyclean-tk
+       @[ -f ./tk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 gdb" ; \
-       (cd gdb && \
+       echo "Doing mostlyclean in tk" ; \
+       (cd 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-expect maintainer-clean-expect
-maybe-maintainer-clean-expect:
+.PHONY: maybe-clean-tk clean-tk
+maybe-clean-tk:
+@if tk
+maybe-clean-tk: clean-tk
 
-maintainer-clean-expect
-       @[ -f ./expect/Makefile ] || exit 0; \
+clean-tk
+       @[ -f ./tk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 expect" ; \
-       (cd expect && \
+       echo "Doing clean in tk" ; \
+       (cd 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-guile maintainer-clean-guile
-maybe-maintainer-clean-guile:
+.PHONY: maybe-distclean-tk distclean-tk
+maybe-distclean-tk:
+@if tk
+maybe-distclean-tk: distclean-tk
 
-maintainer-clean-guile
-       @[ -f ./guile/Makefile ] || exit 0; \
+distclean-tk
+       @[ -f ./tk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 guile" ; \
-       (cd guile && \
+       echo "Doing distclean in tk" ; \
+       (cd 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-tk maintainer-clean-tk
 maybe-maintainer-clean-tk:
+@if tk
+maybe-maintainer-clean-tk: maintainer-clean-tk
 
 maintainer-clean-tk: 
        @[ -f ./tk/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 tk" ; \
@@ -16846,373 +21767,533 @@ maintainer-clean-tk:
                  maintainer-clean) \
          || exit 1
 
+@endif tk
+
+
+.PHONY: configure-libtermcap maybe-configure-libtermcap
+maybe-configure-libtermcap:
+@if libtermcap
+maybe-configure-libtermcap: configure-libtermcap
+configure-libtermcap:
+       @test ! -f libtermcap/Makefile || exit 0; \
+       [ -d libtermcap ] || mkdir libtermcap; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       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}  \
+         || exit 1
+@endif libtermcap
+
+.PHONY: all-libtermcap maybe-all-libtermcap
+maybe-all-libtermcap:
+@if libtermcap
+maybe-all-libtermcap: all-libtermcap
+all-libtermcap: configure-libtermcap
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif libtermcap
+
+.PHONY: check-libtermcap maybe-check-libtermcap
+maybe-check-libtermcap:
+@if libtermcap
+maybe-check-libtermcap: check-libtermcap
+
+check-libtermcap:
+
+@endif libtermcap
 
-.PHONY: maybe-maintainer-clean-tix maintainer-clean-tix
-maybe-maintainer-clean-tix:
+.PHONY: install-libtermcap maybe-install-libtermcap
+maybe-install-libtermcap:
+@if libtermcap
+maybe-install-libtermcap: install-libtermcap
 
-maintainer-clean-tix: 
-       @[ -f ./tix/Makefile ] || exit 0; \
-       r=`${PWD_COMMAND}`; export r; \
+install-libtermcap: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; 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 tix" ; \
-       (cd tix && \
-         $(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: maybe-maintainer-clean-libtermcap maintainer-clean-libtermcap
-maybe-maintainer-clean-libtermcap:
+       $(HOST_EXPORTS) \
+       (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) install)
 
-# libtermcap doesn't support maintainer-clean.
-maintainer-clean-libtermcap:
+@endif libtermcap
 
+# Other targets (info, dvi, etc.)
 
-.PHONY: maybe-maintainer-clean-utils maintainer-clean-utils
-maybe-maintainer-clean-utils:
+.PHONY: maybe-info-libtermcap info-libtermcap
+maybe-info-libtermcap:
+@if libtermcap
+maybe-info-libtermcap: info-libtermcap
 
-maintainer-clean-utils: 
-       @[ -f ./utils/Makefile ] || exit 0; \
+info-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       for flag in $(EXTRA_HOST_FLAGS); do \
+       $(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 utils" ; \
-       (cd utils && \
+       echo "Doing info in libtermcap" ; \
+       (cd 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-dvi-libtermcap dvi-libtermcap
+maybe-dvi-libtermcap:
+@if libtermcap
+maybe-dvi-libtermcap: dvi-libtermcap
 
-# 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 ; \
+dvi-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi in libtermcap" ; \
+       (cd 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-target-newlib maintainer-clean-target-newlib
-maybe-maintainer-clean-target-newlib:
+.PHONY: maybe-TAGS-libtermcap TAGS-libtermcap
+maybe-TAGS-libtermcap:
+@if libtermcap
+maybe-TAGS-libtermcap: TAGS-libtermcap
 
-maintainer-clean-target-newlib: 
-       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+TAGS-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/newlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 libtermcap" ; \
+       (cd 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-target-libf2c maintainer-clean-target-libf2c
-maybe-maintainer-clean-target-libf2c:
+.PHONY: maybe-install-info-libtermcap install-info-libtermcap
+maybe-install-info-libtermcap:
+@if libtermcap
+maybe-install-info-libtermcap: install-info-libtermcap
 
-maintainer-clean-target-libf2c: 
-       @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \
+install-info-libtermcap: \
+    configure-libtermcap \
+    info-libtermcap 
+       @[ -f ./libtermcap/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libf2c" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 libtermcap" ; \
+       (cd 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-target-libobjc maintainer-clean-target-libobjc
-maybe-maintainer-clean-target-libobjc:
+.PHONY: maybe-installcheck-libtermcap installcheck-libtermcap
+maybe-installcheck-libtermcap:
+@if libtermcap
+maybe-installcheck-libtermcap: installcheck-libtermcap
 
-maintainer-clean-target-libobjc: 
-       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+installcheck-libtermcap: \
+    configure-libtermcap 
+       @[ -f ./libtermcap/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libobjc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 libtermcap" ; \
+       (cd 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) \
+                 installcheck) \
          || exit 1
 
+@endif libtermcap
 
-.PHONY: maybe-maintainer-clean-target-libtermcap maintainer-clean-target-libtermcap
-maybe-maintainer-clean-target-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-target-libtermcap:
+maintainer-clean-libtermcap:
 
+@endif libtermcap
 
-.PHONY: maybe-maintainer-clean-target-winsup maintainer-clean-target-winsup
-maybe-maintainer-clean-target-winsup:
 
-maintainer-clean-target-winsup: 
-       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+.PHONY: configure-utils maybe-configure-utils
+maybe-configure-utils:
+@if utils
+maybe-configure-utils: configure-utils
+configure-utils:
+       @test ! -f utils/Makefile || exit 0; \
+       [ -d utils ] || mkdir utils; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       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) \
+       $(HOST_EXPORTS) \
+       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}  \
          || exit 1
+@endif utils
+
+.PHONY: all-utils maybe-all-utils
+maybe-all-utils:
+@if utils
+maybe-all-utils: all-utils
+all-utils: configure-utils
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       (cd utils && $(MAKE) $(FLAGS_TO_PASS)  all)
+@endif utils
 
+.PHONY: check-utils maybe-check-utils
+maybe-check-utils:
+@if utils
+maybe-check-utils: check-utils
 
-.PHONY: maybe-maintainer-clean-target-libgloss maintainer-clean-target-libgloss
-maybe-maintainer-clean-target-libgloss:
+check-utils:
 
-maintainer-clean-target-libgloss: 
-       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
-       r=`${PWD_COMMAND}`; export r; \
+@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; \
        $(SET_LIB_PATH) \
-       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
+       $(HOST_EXPORTS) \
+       (cd utils && $(MAKE) $(FLAGS_TO_PASS) install)
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-libiberty maintainer-clean-target-libiberty
-maybe-maintainer-clean-target-libiberty:
+# Other targets (info, dvi, etc.)
 
-maintainer-clean-target-libiberty: 
-       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+.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; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libiberty" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 info 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}" \
-                 maintainer-clean) \
+                 info) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-gperf maintainer-clean-target-gperf
-maybe-maintainer-clean-target-gperf:
+.PHONY: maybe-dvi-utils dvi-utils
+maybe-dvi-utils:
+@if utils
+maybe-dvi-utils: dvi-utils
 
-maintainer-clean-target-gperf: 
-       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+dvi-utils: \
+    configure-utils 
+       @[ -f ./utils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/gperf" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 dvi 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}" \
-                 maintainer-clean) \
+                 dvi) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-examples maintainer-clean-target-examples
-maybe-maintainer-clean-target-examples:
+.PHONY: maybe-TAGS-utils TAGS-utils
+maybe-TAGS-utils:
+@if utils
+maybe-TAGS-utils: TAGS-utils
 
-maintainer-clean-target-examples: 
-       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+TAGS-utils: \
+    configure-utils 
+       @[ -f ./utils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/examples" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 TAGS 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}" \
-                 maintainer-clean) \
+                 TAGS) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-libffi maintainer-clean-target-libffi
-maybe-maintainer-clean-target-libffi:
+.PHONY: maybe-install-info-utils install-info-utils
+maybe-install-info-utils:
+@if utils
+maybe-install-info-utils: install-info-utils
 
-maintainer-clean-target-libffi: 
-       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+install-info-utils: \
+    configure-utils \
+    info-utils 
+       @[ -f ./utils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libffi" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 install-info 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}" \
-                 maintainer-clean) \
+                 install-info) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-libjava maintainer-clean-target-libjava
-maybe-maintainer-clean-target-libjava:
+.PHONY: maybe-installcheck-utils installcheck-utils
+maybe-installcheck-utils:
+@if utils
+maybe-installcheck-utils: installcheck-utils
 
-maintainer-clean-target-libjava: 
-       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+installcheck-utils: \
+    configure-utils 
+       @[ -f ./utils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libjava" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 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}" \
-                 maintainer-clean) \
+                 installcheck) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-zlib maintainer-clean-target-zlib
-maybe-maintainer-clean-target-zlib:
+.PHONY: maybe-mostlyclean-utils mostlyclean-utils
+maybe-mostlyclean-utils:
+@if utils
+maybe-mostlyclean-utils: mostlyclean-utils
 
-maintainer-clean-target-zlib
-       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+mostlyclean-utils
+       @[ -f ./utils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/zlib" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 mostlyclean 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}" \
-                 maintainer-clean) \
+                 mostlyclean) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-boehm-gc maintainer-clean-target-boehm-gc
-maybe-maintainer-clean-target-boehm-gc:
+.PHONY: maybe-clean-utils clean-utils
+maybe-clean-utils:
+@if utils
+maybe-clean-utils: clean-utils
 
-maintainer-clean-target-boehm-gc
-       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+clean-utils
+       @[ -f ./utils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/boehm-gc" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 clean 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}" \
-                 maintainer-clean) \
+                 clean) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-qthreads maintainer-clean-target-qthreads
-maybe-maintainer-clean-target-qthreads:
+.PHONY: maybe-distclean-utils distclean-utils
+maybe-distclean-utils:
+@if utils
+maybe-distclean-utils: distclean-utils
 
-maintainer-clean-target-qthreads: 
-       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+distclean-utils: 
+       @[ -f ./utils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/qthreads" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 distclean 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}" \
-                 maintainer-clean) \
+                 distclean) \
          || exit 1
 
+@endif utils
 
-.PHONY: maybe-maintainer-clean-target-rda maintainer-clean-target-rda
-maybe-maintainer-clean-target-rda:
+.PHONY: maybe-maintainer-clean-utils maintainer-clean-utils
+maybe-maintainer-clean-utils:
+@if utils
+maybe-maintainer-clean-utils: maintainer-clean-utils
 
-maintainer-clean-target-rda
-       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+maintainer-clean-utils
+       @[ -f ./utils/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/rda" ; \
-       for flag in $(EXTRA_TARGET_FLAGS); do \
+       $(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 maintainer-clean in utils" ; \
+       (cd utils && \
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
@@ -17220,6465 +22301,10064 @@ maintainer-clean-target-rda:
                  maintainer-clean) \
          || exit 1
 
+@endif utils
 
 
 
-# Here are the targets which correspond to the do-X targets.
+# ---------------------------------------
+# Modules which run on the target machine
+# ---------------------------------------
 
-.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
+.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
 
-# Make sure makeinfo is built before we do a `make info', if we're
-# in fact building texinfo.
-do-info: maybe-all-texinfo
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-install-info: do-install-info dir.info
+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; \
-       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: do-check
-
-# 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.
-
-warning.log: build.log
-       $(srcdir)/contrib/warn_summary build.log > $@
+       $(SET_LIB_PATH) \
+       $(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) ;; \
+         *) \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
+       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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
+         || exit 1
+@endif target-libstdc++-v3
 
-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
+.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; \
+       $(SET_LIB_PATH) \
+       $(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
 
-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
+.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
 
-# Installation targets.
+check-target-libstdc++-v3:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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)
 
-.PHONY: install uninstall
-install: installdirs install-host install-target
+@endif target-libstdc++-v3
 
-.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
+.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
 
-.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
+install-target-libstdc++-v3: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(RAW_CXX_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.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
+@endif target-libstdc++-v3
 
-uninstall:
-       @echo "the uninstall target is not supported in this tree"
+# Other targets (info, dvi, etc.)
 
-.PHONY: install.all
-install.all: install-no-fixedincludes
-       @if [ -f ./gcc/Makefile ] ; then \
-               r=`${PWD_COMMAND}` ; export r ; \
-               $(SET_LIB_PATH) \
-               (cd ./gcc && \
-               $(MAKE) $(FLAGS_TO_PASS) install-headers) ; \
-       else \
-               true ; \
-       fi
+.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
 
-# 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
+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; \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  info) \
+         || exit 1
 
-### other supporting targets
+@endif target-libstdc++-v3
 
-MAKEDIRS= \
-       $(DESTDIR)$(prefix) \
-       $(DESTDIR)$(exec_prefix)
-.PHONY: installdirs
-installdirs: mkinstalldirs
-       $(SHELL) $(srcdir)/mkinstalldirs $(MAKEDIRS)
+.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
 
-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
+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; \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  dvi) \
+         || exit 1
 
-dist:
-       @echo "Building a full distribution of this tree isn't done"
-       @echo "via 'make dist'.  Check out the etc/ subdirectory" 
+@endif target-libstdc++-v3
 
-etags tags: TAGS
+.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
+
+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; \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  TAGS) \
+         || exit 1
 
-# 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
+@endif target-libstdc++-v3
 
-# --------------------------------------
-# Modules which run on the build machine
-# --------------------------------------
+.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
 
-.PHONY: configure-build-libiberty maybe-configure-build-libiberty
-maybe-configure-build-libiberty:
-configure-build-libiberty:
-       @test ! -f $(BUILD_SUBDIR)/libiberty/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libiberty ; \
+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; \
-       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; \
-       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; \
-       case $(srcdir) in \
-         /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
-         *) \
-           case "$(BUILD_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
-       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; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(BUILD_CONFIGARGS) $${srcdiroption} \
-         --with-build-subdir="$(BUILD_SUBDIR)" \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  install-info) \
          || exit 1
 
-.PHONY: all-build-libiberty maybe-all-build-libiberty
-maybe-all-build-libiberty:
-all-build-libiberty: configure-build-libiberty
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libstdc++-v3
+
+.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
+
+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; \
-       (cd $(BUILD_SUBDIR)/libiberty && $(MAKE) all)
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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
 
+@endif target-libstdc++-v3
 
-# --------------------------------------
-# Modules which run on the host machine
-# --------------------------------------
+.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
 
-.PHONY: configure-ash maybe-configure-ash
-maybe-configure-ash:
-configure-ash:
-       @test ! -f ash/Makefile || exit 0; \
-       [ -d ash ] || mkdir ash; \
+mostlyclean-target-libstdc++-v3: 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  mostlyclean) \
          || exit 1
 
-.PHONY: all-ash maybe-all-ash
-maybe-all-ash:
-all-ash: configure-ash
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libstdc++-v3
+
+.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
+
+clean-target-libstdc++-v3: 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd ash && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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; \
+       (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}" \
+                  clean) \
+         || exit 1
 
-.PHONY: check-ash maybe-check-ash
-maybe-check-ash:
+@endif target-libstdc++-v3
 
-check-ash:
-       @r=`${PWD_COMMAND}`; export r; \
+.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
+
+distclean-target-libstdc++-v3: 
+       @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd ash && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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; \
+       (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}" \
+                  distclean) \
+         || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: install-ash maybe-install-ash
-maybe-install-ash:
+.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
 
-install-ash: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd ash && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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; \
+       (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) \
+         || exit 1
 
+@endif target-libstdc++-v3
 
-.PHONY: configure-autoconf maybe-configure-autoconf
-maybe-configure-autoconf:
-configure-autoconf:
-       @test ! -f autoconf/Makefile || exit 0; \
-       [ -d autoconf ] || mkdir autoconf; \
+
+.PHONY: configure-target-libmudflap maybe-configure-target-libmudflap
+maybe-configure-target-libmudflap:
+@if target-libmudflap
+maybe-configure-target-libmudflap: configure-target-libmudflap
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
+
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libmudflap; \
+       cd "$(TARGET_SUBDIR)/libmudflap" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/autoconf"; \
-           libsrcdir="$$s/autoconf";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/autoconf"; \
-           libsrcdir="$$s/autoconf";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+         srcdiroption="--srcdir=$${topdir}/libmudflap"; \
+         libsrcdir="$$s/libmudflap"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-libmudflap
 
-.PHONY: all-autoconf maybe-all-autoconf
-maybe-all-autoconf:
-all-autoconf: configure-autoconf
+.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; \
        $(SET_LIB_PATH) \
-       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-libmudflap))
+@endif target-libmudflap
 
-.PHONY: check-autoconf maybe-check-autoconf
-maybe-check-autoconf:
+.PHONY: check-target-libmudflap maybe-check-target-libmudflap
+maybe-check-target-libmudflap:
+@if target-libmudflap
+maybe-check-target-libmudflap: check-target-libmudflap
 
-check-autoconf:
+check-target-libmudflap:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-libmudflap
 
-.PHONY: install-autoconf maybe-install-autoconf
-maybe-install-autoconf:
+.PHONY: install-target-libmudflap maybe-install-target-libmudflap
+maybe-install-target-libmudflap:
+@if target-libmudflap
+maybe-install-target-libmudflap: install-target-libmudflap
 
-install-autoconf: installdirs
+install-target-libmudflap: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libmudflap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-libmudflap
 
-.PHONY: configure-automake maybe-configure-automake
-maybe-configure-automake:
-configure-automake:
-       @test ! -f automake/Makefile || exit 0; \
-       [ -d automake ] || mkdir automake; \
+# 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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  info) \
          || exit 1
 
-.PHONY: all-automake maybe-all-automake
-maybe-all-automake:
-all-automake: configure-automake
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libmudflap
+
+.PHONY: maybe-dvi-target-libmudflap dvi-target-libmudflap
+maybe-dvi-target-libmudflap:
+@if target-libmudflap
+maybe-dvi-target-libmudflap: dvi-target-libmudflap
+
+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; \
        $(SET_LIB_PATH) \
-       (cd automake && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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; \
+       (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}" \
+                  dvi) \
+         || exit 1
 
-.PHONY: check-automake maybe-check-automake
-maybe-check-automake:
+@endif target-libmudflap
 
-check-automake:
-       @r=`${PWD_COMMAND}`; export r; \
+.PHONY: maybe-TAGS-target-libmudflap TAGS-target-libmudflap
+maybe-TAGS-target-libmudflap:
+@if target-libmudflap
+maybe-TAGS-target-libmudflap: TAGS-target-libmudflap
+
+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; \
        $(SET_LIB_PATH) \
-       (cd automake && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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; \
+       (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}" \
+                  TAGS) \
+         || exit 1
 
+@endif target-libmudflap
 
-.PHONY: install-automake maybe-install-automake
-maybe-install-automake:
+.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
 
-install-automake: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd automake && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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; \
+       (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}" \
+                  install-info) \
+         || exit 1
 
+@endif target-libmudflap
 
-.PHONY: configure-bash maybe-configure-bash
-maybe-configure-bash:
-configure-bash:
-       @test ! -f bash/Makefile || exit 0; \
-       [ -d bash ] || mkdir bash; \
+.PHONY: maybe-installcheck-target-libmudflap installcheck-target-libmudflap
+maybe-installcheck-target-libmudflap:
+@if target-libmudflap
+maybe-installcheck-target-libmudflap: installcheck-target-libmudflap
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  installcheck) \
          || exit 1
 
-.PHONY: all-bash maybe-all-bash
-maybe-all-bash:
-all-bash: configure-bash
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libmudflap
+
+.PHONY: maybe-mostlyclean-target-libmudflap mostlyclean-target-libmudflap
+maybe-mostlyclean-target-libmudflap:
+@if target-libmudflap
+maybe-mostlyclean-target-libmudflap: mostlyclean-target-libmudflap
+
+mostlyclean-target-libmudflap: 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bash && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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; \
+       (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}" \
+                  mostlyclean) \
+         || exit 1
 
-.PHONY: check-bash maybe-check-bash
-maybe-check-bash:
+@endif target-libmudflap
 
-check-bash:
-       @r=`${PWD_COMMAND}`; export r; \
+.PHONY: maybe-clean-target-libmudflap clean-target-libmudflap
+maybe-clean-target-libmudflap:
+@if target-libmudflap
+maybe-clean-target-libmudflap: clean-target-libmudflap
+
+clean-target-libmudflap: 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bash && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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; \
+       (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}" \
+                  clean) \
+         || exit 1
 
+@endif target-libmudflap
 
-.PHONY: install-bash maybe-install-bash
-maybe-install-bash:
+.PHONY: maybe-distclean-target-libmudflap distclean-target-libmudflap
+maybe-distclean-target-libmudflap:
+@if target-libmudflap
+maybe-distclean-target-libmudflap: distclean-target-libmudflap
 
-install-bash: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+distclean-target-libmudflap: 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bash && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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; \
+       (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}" \
+                  distclean) \
+         || exit 1
 
+@endif target-libmudflap
 
-.PHONY: configure-bfd maybe-configure-bfd
-maybe-configure-bfd:
-configure-bfd:
-       @test ! -f bfd/Makefile || exit 0; \
-       [ -d bfd ] || mkdir bfd; \
+.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-target-libmudflap: 
+       @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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) \
+         || exit 1
+
+@endif target-libmudflap
+
+
+.PHONY: configure-target-newlib maybe-configure-target-newlib
+maybe-configure-target-newlib:
+@if target-newlib
+maybe-configure-target-newlib: configure-target-newlib
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
+
+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; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/newlib; \
+       cd "$(TARGET_SUBDIR)/newlib" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/bfd"; \
-           libsrcdir="$$s/bfd";; \
+         /* | [A-Za-z]:[\\/]*) \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/bfd"; \
-           libsrcdir="$$s/bfd";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+         srcdiroption="--srcdir=$${topdir}/newlib"; \
+         libsrcdir="$$s/newlib"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-newlib
 
-.PHONY: all-bfd maybe-all-bfd
-maybe-all-bfd:
-all-bfd: configure-bfd
+.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; \
        $(SET_LIB_PATH) \
-       (cd bfd && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/newlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-newlib))
+@endif target-newlib
 
-.PHONY: check-bfd maybe-check-bfd
-maybe-check-bfd:
+.PHONY: check-target-newlib maybe-check-target-newlib
+maybe-check-target-newlib:
+@if target-newlib
+maybe-check-target-newlib: check-target-newlib
 
-check-bfd:
+check-target-newlib:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bfd && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/newlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-newlib
 
-.PHONY: install-bfd maybe-install-bfd
-maybe-install-bfd:
+.PHONY: install-target-newlib maybe-install-target-newlib
+maybe-install-target-newlib:
+@if target-newlib
+maybe-install-target-newlib: install-target-newlib
 
-install-bfd: installdirs
+install-target-newlib: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bfd && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/newlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-newlib
 
-.PHONY: configure-opcodes maybe-configure-opcodes
-maybe-configure-opcodes:
-configure-opcodes:
-       @test ! -f opcodes/Makefile || exit 0; \
-       [ -d opcodes ] || mkdir opcodes; \
+# 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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  info) \
          || exit 1
 
-.PHONY: all-opcodes maybe-all-opcodes
-maybe-all-opcodes:
-all-opcodes: configure-opcodes
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-newlib
+
+.PHONY: maybe-dvi-target-newlib dvi-target-newlib
+maybe-dvi-target-newlib:
+@if target-newlib
+maybe-dvi-target-newlib: dvi-target-newlib
+
+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; \
        $(SET_LIB_PATH) \
-       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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; \
+       (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}" \
+                  dvi) \
+         || exit 1
 
-.PHONY: check-opcodes maybe-check-opcodes
-maybe-check-opcodes:
+@endif target-newlib
 
-check-opcodes:
-       @r=`${PWD_COMMAND}`; export r; \
+.PHONY: maybe-TAGS-target-newlib TAGS-target-newlib
+maybe-TAGS-target-newlib:
+@if target-newlib
+maybe-TAGS-target-newlib: TAGS-target-newlib
+
+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; \
        $(SET_LIB_PATH) \
-       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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; \
+       (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}" \
+                  TAGS) \
+         || exit 1
 
+@endif target-newlib
 
-.PHONY: install-opcodes maybe-install-opcodes
-maybe-install-opcodes:
+.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
 
-install-opcodes: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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; \
+       (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}" \
+                  install-info) \
+         || exit 1
 
+@endif target-newlib
 
-.PHONY: configure-binutils maybe-configure-binutils
-maybe-configure-binutils:
-configure-binutils:
-       @test ! -f binutils/Makefile || exit 0; \
-       [ -d binutils ] || mkdir binutils; \
+.PHONY: maybe-installcheck-target-newlib installcheck-target-newlib
+maybe-installcheck-target-newlib:
+@if target-newlib
+maybe-installcheck-target-newlib: installcheck-target-newlib
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  installcheck) \
          || exit 1
 
-.PHONY: all-binutils maybe-all-binutils
-maybe-all-binutils:
-all-binutils: configure-binutils
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-newlib
+
+.PHONY: maybe-mostlyclean-target-newlib mostlyclean-target-newlib
+maybe-mostlyclean-target-newlib:
+@if target-newlib
+maybe-mostlyclean-target-newlib: mostlyclean-target-newlib
+
+mostlyclean-target-newlib: 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  mostlyclean) \
+         || exit 1
+
+@endif target-newlib
+
+.PHONY: maybe-clean-target-newlib clean-target-newlib
+maybe-clean-target-newlib:
+@if target-newlib
+maybe-clean-target-newlib: clean-target-newlib
+
+clean-target-newlib: 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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; \
+       (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}" \
+                  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
+
+distclean-target-newlib: 
+       @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd binutils && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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)/newlib && \
+         $(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: check-binutils maybe-check-binutils
-maybe-check-binutils:
+@endif target-newlib
 
-check-binutils:
-       @r=`${PWD_COMMAND}`; export r; \
+.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_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd binutils && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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|"`; \
+       done; \
+       (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) \
+         || exit 1
 
+@endif target-newlib
 
-.PHONY: install-binutils maybe-install-binutils
-maybe-install-binutils:
 
-install-binutils: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd binutils && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: configure-target-libgfortran maybe-configure-target-libgfortran
+maybe-configure-target-libgfortran:
+@if target-libgfortran
+maybe-configure-target-libgfortran: configure-target-libgfortran
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-bison maybe-configure-bison
-maybe-configure-bison:
-configure-bison:
-       @test ! -f bison/Makefile || exit 0; \
-       [ -d bison ] || mkdir bison; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libgfortran; \
+       cd "$(TARGET_SUBDIR)/libgfortran" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/bison"; \
-           libsrcdir="$$s/bison";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/bison"; \
-           libsrcdir="$$s/bison";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+         srcdiroption="--srcdir=$${topdir}/libgfortran"; \
+         libsrcdir="$$s/libgfortran"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-libgfortran
 
-.PHONY: all-bison maybe-all-bison
-maybe-all-bison:
-all-bison: configure-bison
+.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; \
        $(SET_LIB_PATH) \
-       (cd bison && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-libgfortran))
+@endif target-libgfortran
 
-.PHONY: check-bison maybe-check-bison
-maybe-check-bison:
+.PHONY: check-target-libgfortran maybe-check-target-libgfortran
+maybe-check-target-libgfortran:
+@if target-libgfortran
+maybe-check-target-libgfortran: check-target-libgfortran
 
-# 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; \
-         $(SET_LIB_PATH) \
-         (cd bison && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+check-target-libgfortran:
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-libgfortran
 
-.PHONY: install-bison maybe-install-bison
-maybe-install-bison:
+.PHONY: install-target-libgfortran maybe-install-target-libgfortran
+maybe-install-target-libgfortran:
+@if target-libgfortran
+maybe-install-target-libgfortran: install-target-libgfortran
 
-install-bison: installdirs
+install-target-libgfortran: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bison && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgfortran && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-libgfortran
 
-.PHONY: configure-byacc maybe-configure-byacc
-maybe-configure-byacc:
-configure-byacc:
-       @test ! -f byacc/Makefile || exit 0; \
-       [ -d byacc ] || mkdir byacc; \
+# 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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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)/libgfortran && \
+         $(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-byacc maybe-all-byacc
-maybe-all-byacc:
-all-byacc: configure-byacc
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libgfortran
+
+.PHONY: maybe-dvi-target-libgfortran dvi-target-libgfortran
+maybe-dvi-target-libgfortran:
+@if target-libgfortran
+maybe-dvi-target-libgfortran: dvi-target-libgfortran
+
+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; \
        $(SET_LIB_PATH) \
-       (cd byacc && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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)/libgfortran && \
+         $(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: check-byacc maybe-check-byacc
-maybe-check-byacc:
+@endif target-libgfortran
 
-# 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; \
-         $(SET_LIB_PATH) \
-         (cd byacc && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+.PHONY: maybe-TAGS-target-libgfortran TAGS-target-libgfortran
+maybe-TAGS-target-libgfortran:
+@if target-libgfortran
+maybe-TAGS-target-libgfortran: TAGS-target-libgfortran
+
+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; \
+       $(SET_LIB_PATH) \
+       $(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)/libgfortran && \
+         $(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-libgfortran
 
-.PHONY: install-byacc maybe-install-byacc
-maybe-install-byacc:
+.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
 
-install-byacc: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd byacc && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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)/libgfortran && \
+         $(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-libgfortran
 
-.PHONY: configure-bzip2 maybe-configure-bzip2
-maybe-configure-bzip2:
-configure-bzip2:
-       @test ! -f bzip2/Makefile || exit 0; \
-       [ -d bzip2 ] || mkdir bzip2; \
+.PHONY: maybe-installcheck-target-libgfortran installcheck-target-libgfortran
+maybe-installcheck-target-libgfortran:
+@if target-libgfortran
+maybe-installcheck-target-libgfortran: installcheck-target-libgfortran
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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)/libgfortran && \
+         $(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-bzip2 maybe-all-bzip2
-maybe-all-bzip2:
-all-bzip2: configure-bzip2
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libgfortran
+
+.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; \
+       $(SET_LIB_PATH) \
+       $(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)/libgfortran && \
+         $(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-libgfortran
+
+.PHONY: maybe-clean-target-libgfortran clean-target-libgfortran
+maybe-clean-target-libgfortran:
+@if target-libgfortran
+maybe-clean-target-libgfortran: clean-target-libgfortran
+
+clean-target-libgfortran: 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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)/libgfortran && \
+         $(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: check-bzip2 maybe-check-bzip2
-maybe-check-bzip2:
+@endif target-libgfortran
 
-check-bzip2:
-       @r=`${PWD_COMMAND}`; export r; \
+.PHONY: maybe-distclean-target-libgfortran distclean-target-libgfortran
+maybe-distclean-target-libgfortran:
+@if target-libgfortran
+maybe-distclean-target-libgfortran: distclean-target-libgfortran
+
+distclean-target-libgfortran: 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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)/libgfortran && \
+         $(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-libgfortran
 
-.PHONY: install-bzip2 maybe-install-bzip2
-maybe-install-bzip2:
+.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
 
-install-bzip2: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+maintainer-clean-target-libgfortran: 
+       @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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)/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) \
+         || exit 1
 
+@endif target-libgfortran
 
-.PHONY: configure-dejagnu maybe-configure-dejagnu
-maybe-configure-dejagnu:
-configure-dejagnu:
-       @test ! -f dejagnu/Makefile || exit 0; \
-       [ -d dejagnu ] || mkdir dejagnu; \
+
+.PHONY: configure-target-libobjc maybe-configure-target-libobjc
+maybe-configure-target-libobjc:
+@if target-libobjc
+maybe-configure-target-libobjc: configure-target-libobjc
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
+
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libobjc; \
+       cd "$(TARGET_SUBDIR)/libobjc" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/dejagnu"; \
-           libsrcdir="$$s/dejagnu";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/dejagnu"; \
-           libsrcdir="$$s/dejagnu";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+         srcdiroption="--srcdir=$${topdir}/libobjc"; \
+         libsrcdir="$$s/libobjc"; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+         $(TARGET_CONFIGARGS) $${srcdiroption} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-libobjc
 
-.PHONY: all-dejagnu maybe-all-dejagnu
-maybe-all-dejagnu:
-all-dejagnu: configure-dejagnu
+.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; \
        $(SET_LIB_PATH) \
-       (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-libobjc))
+@endif target-libobjc
 
-.PHONY: check-dejagnu maybe-check-dejagnu
-maybe-check-dejagnu:
+.PHONY: check-target-libobjc maybe-check-target-libobjc
+maybe-check-target-libobjc:
+@if target-libobjc
+maybe-check-target-libobjc: check-target-libobjc
 
-check-dejagnu:
+check-target-libobjc:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-libobjc
 
-.PHONY: install-dejagnu maybe-install-dejagnu
-maybe-install-dejagnu:
+.PHONY: install-target-libobjc maybe-install-target-libobjc
+maybe-install-target-libobjc:
+@if target-libobjc
+maybe-install-target-libobjc: install-target-libobjc
 
-install-dejagnu: installdirs
+install-target-libobjc: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) install)
-
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libobjc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: configure-diff maybe-configure-diff
-maybe-configure-diff:
-configure-diff:
-       @test ! -f diff/Makefile || exit 0; \
-       [ -d diff ] || mkdir diff; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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} \
-         || exit 1
+@endif target-libobjc
 
-.PHONY: all-diff maybe-all-diff
-maybe-all-diff:
-all-diff: configure-diff
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd diff && $(MAKE) $(FLAGS_TO_PASS) all)
+# Other targets (info, dvi, etc.)
 
-.PHONY: check-diff maybe-check-diff
-maybe-check-diff:
+.PHONY: maybe-info-target-libobjc info-target-libobjc
+maybe-info-target-libobjc:
+@if target-libobjc
+maybe-info-target-libobjc: info-target-libobjc
 
-check-diff:
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd diff && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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)/libobjc && \
+         $(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-libobjc
 
-.PHONY: install-diff maybe-install-diff
-maybe-install-diff:
+.PHONY: maybe-dvi-target-libobjc dvi-target-libobjc
+maybe-dvi-target-libobjc:
+@if target-libobjc
+maybe-dvi-target-libobjc: dvi-target-libobjc
 
-install-diff: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd diff && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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)/libobjc && \
+         $(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-libobjc
 
-.PHONY: configure-dosutils maybe-configure-dosutils
-maybe-configure-dosutils:
-configure-dosutils:
-       @test ! -f dosutils/Makefile || exit 0; \
-       [ -d dosutils ] || mkdir dosutils; \
+.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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-dosutils maybe-all-dosutils
-maybe-all-dosutils:
-all-dosutils: configure-dosutils
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libobjc
 
-.PHONY: check-dosutils maybe-check-dosutils
-maybe-check-dosutils:
+.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
 
-check-dosutils:
+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; \
+       $(SET_LIB_PATH) \
+       $(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
 
+@endif target-libobjc
 
-.PHONY: install-dosutils maybe-install-dosutils
-maybe-install-dosutils:
+.PHONY: maybe-installcheck-target-libobjc installcheck-target-libobjc
+maybe-installcheck-target-libobjc:
+@if target-libobjc
+maybe-installcheck-target-libobjc: installcheck-target-libobjc
 
-install-dosutils: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-libobjc
 
-.PHONY: configure-etc maybe-configure-etc
-maybe-configure-etc:
-configure-etc:
-       @test ! -f etc/Makefile || exit 0; \
-       [ -d etc ] || mkdir etc; \
+.PHONY: maybe-mostlyclean-target-libobjc mostlyclean-target-libobjc
+maybe-mostlyclean-target-libobjc:
+@if target-libobjc
+maybe-mostlyclean-target-libobjc: mostlyclean-target-libobjc
+
+mostlyclean-target-libobjc: 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/etc"; \
-           libsrcdir="$$s/etc";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/etc"; \
-           libsrcdir="$$s/etc";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-etc maybe-all-etc
-maybe-all-etc:
-all-etc: configure-etc
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libobjc
+
+.PHONY: maybe-clean-target-libobjc clean-target-libobjc
+maybe-clean-target-libobjc:
+@if target-libobjc
+maybe-clean-target-libobjc: clean-target-libobjc
+
+clean-target-libobjc: 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd etc && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-etc maybe-check-etc
-maybe-check-etc:
+@endif target-libobjc
 
-check-etc:
-       @r=`${PWD_COMMAND}`; export r; \
+.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; \
        $(SET_LIB_PATH) \
-       (cd etc && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
-.PHONY: install-etc maybe-install-etc
-maybe-install-etc:
+.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
 
-install-etc: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+maintainer-clean-target-libobjc: 
+       @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd etc && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-libobjc
 
-.PHONY: configure-fastjar maybe-configure-fastjar
-maybe-configure-fastjar:
-configure-fastjar:
-       @test ! -f fastjar/Makefile || exit 0; \
-       [ -d fastjar ] || mkdir fastjar; \
+
+.PHONY: configure-target-libtermcap maybe-configure-target-libtermcap
+maybe-configure-target-libtermcap:
+@if target-libtermcap
+maybe-configure-target-libtermcap: configure-target-libtermcap
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
+
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libtermcap; \
+       cd "$(TARGET_SUBDIR)/libtermcap" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/fastjar"; \
-           libsrcdir="$$s/fastjar";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/fastjar"; \
-           libsrcdir="$$s/fastjar";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       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)"  \
          || exit 1
+@endif target-libtermcap
+
+.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; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-libtermcap))
+@endif target-libtermcap
+
+.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: all-fastjar maybe-all-fastjar
-maybe-all-fastjar:
-all-fastjar: configure-fastjar
+.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; \
        $(SET_LIB_PATH) \
-       (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-fastjar maybe-check-fastjar
-maybe-check-fastjar:
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libtermcap && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-# 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; \
-         $(SET_LIB_PATH) \
-         (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+@endif target-libtermcap
 
+# Other targets (info, dvi, etc.)
 
-.PHONY: install-fastjar maybe-install-fastjar
-maybe-install-fastjar:
+.PHONY: maybe-info-target-libtermcap info-target-libtermcap
+maybe-info-target-libtermcap:
+@if target-libtermcap
+maybe-info-target-libtermcap: info-target-libtermcap
 
-install-fastjar: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-libtermcap
 
-.PHONY: configure-fileutils maybe-configure-fileutils
-maybe-configure-fileutils:
-configure-fileutils:
-       @test ! -f fileutils/Makefile || exit 0; \
-       [ -d fileutils ] || mkdir fileutils; \
+.PHONY: maybe-dvi-target-libtermcap dvi-target-libtermcap
+maybe-dvi-target-libtermcap:
+@if target-libtermcap
+maybe-dvi-target-libtermcap: dvi-target-libtermcap
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-fileutils maybe-all-fileutils
-maybe-all-fileutils:
-all-fileutils: configure-fileutils
-       @r=`${PWD_COMMAND}`; export r; \
+@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; \
        $(SET_LIB_PATH) \
-       (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-fileutils maybe-check-fileutils
-maybe-check-fileutils:
+@endif target-libtermcap
 
-check-fileutils:
-       @r=`${PWD_COMMAND}`; export r; \
+.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; \
        $(SET_LIB_PATH) \
-       (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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: install-fileutils maybe-install-fileutils
-maybe-install-fileutils:
+.PHONY: maybe-installcheck-target-libtermcap installcheck-target-libtermcap
+maybe-installcheck-target-libtermcap:
+@if target-libtermcap
+maybe-installcheck-target-libtermcap: installcheck-target-libtermcap
 
-install-fileutils: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-findutils maybe-configure-findutils
-maybe-configure-findutils:
-configure-findutils:
-       @test ! -f findutils/Makefile || exit 0; \
-       [ -d findutils ] || mkdir findutils; \
+.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
+
+
+.PHONY: configure-target-winsup maybe-configure-target-winsup
+maybe-configure-target-winsup:
+@if target-winsup
+maybe-configure-target-winsup: configure-target-winsup
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
+
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/findutils"; \
-           libsrcdir="$$s/findutils";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/findutils"; \
-           libsrcdir="$$s/findutils";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-winsup
 
-.PHONY: all-findutils maybe-all-findutils
-maybe-all-findutils:
-all-findutils: configure-findutils
+.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; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-winsup))
+@endif target-winsup
+
+.PHONY: check-target-winsup maybe-check-target-winsup
+maybe-check-target-winsup:
+@if target-winsup
+maybe-check-target-winsup: check-target-winsup
+
+check-target-winsup:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd findutils && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
-.PHONY: check-findutils maybe-check-findutils
-maybe-check-findutils:
+@endif target-winsup
 
-check-findutils:
+.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; \
        $(SET_LIB_PATH) \
-       (cd findutils && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/winsup && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-winsup
 
-.PHONY: install-findutils maybe-install-findutils
-maybe-install-findutils:
+# Other targets (info, dvi, etc.)
 
-install-findutils: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+.PHONY: maybe-info-target-winsup info-target-winsup
+maybe-info-target-winsup:
+@if target-winsup
+maybe-info-target-winsup: info-target-winsup
+
+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; \
        $(SET_LIB_PATH) \
-       (cd findutils && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-winsup
 
-.PHONY: configure-find maybe-configure-find
-maybe-configure-find:
-configure-find:
-       @test ! -f find/Makefile || exit 0; \
-       [ -d find ] || mkdir find; \
+.PHONY: maybe-dvi-target-winsup dvi-target-winsup
+maybe-dvi-target-winsup:
+@if target-winsup
+maybe-dvi-target-winsup: dvi-target-winsup
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-find maybe-all-find
-maybe-all-find:
-all-find: configure-find
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-winsup
+
+.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; \
        $(SET_LIB_PATH) \
-       (cd find && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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: check-find maybe-check-find
-maybe-check-find:
+@endif target-winsup
 
-check-find:
-       @r=`${PWD_COMMAND}`; export r; \
+.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
+
+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; \
        $(SET_LIB_PATH) \
-       (cd find && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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-find maybe-install-find
-maybe-install-find:
+.PHONY: maybe-installcheck-target-winsup installcheck-target-winsup
+maybe-installcheck-target-winsup:
+@if target-winsup
+maybe-installcheck-target-winsup: installcheck-target-winsup
 
-install-find: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd find && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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-flex maybe-configure-flex
-maybe-configure-flex:
-configure-flex:
-       @test ! -f flex/Makefile || exit 0; \
-       [ -d flex ] || mkdir flex; \
+.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; \
-       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; \
-       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; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/flex"; \
-           libsrcdir="$$s/flex";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/flex"; \
-           libsrcdir="$$s/flex";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       $(SET_LIB_PATH) \
+       $(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-flex maybe-all-flex
-maybe-all-flex:
-all-flex: configure-flex
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-winsup
+
+.PHONY: maybe-clean-target-winsup clean-target-winsup
+maybe-clean-target-winsup:
+@if target-winsup
+maybe-clean-target-winsup: clean-target-winsup
+
+clean-target-winsup: 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd flex && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-flex maybe-check-flex
-maybe-check-flex:
+@endif target-winsup
 
-# 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; \
-         $(SET_LIB_PATH) \
-         (cd flex && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+.PHONY: maybe-distclean-target-winsup distclean-target-winsup
+maybe-distclean-target-winsup:
+@if target-winsup
+maybe-distclean-target-winsup: distclean-target-winsup
+
+distclean-target-winsup: 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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: 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
+
+maintainer-clean-target-winsup: 
+       @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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
 
+@endif target-winsup
 
-.PHONY: install-flex maybe-install-flex
-maybe-install-flex:
 
-install-flex: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd flex && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: configure-target-libgloss maybe-configure-target-libgloss
+maybe-configure-target-libgloss:
+@if target-libgloss
+maybe-configure-target-libgloss: configure-target-libgloss
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-gas maybe-configure-gas
-maybe-configure-gas:
-configure-gas:
-       @test ! -f gas/Makefile || exit 0; \
-       [ -d gas ] || mkdir gas; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/gas"; \
-           libsrcdir="$$s/gas";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/gas"; \
-           libsrcdir="$$s/gas";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-libgloss
 
-.PHONY: all-gas maybe-all-gas
-maybe-all-gas:
-all-gas: configure-gas
+.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; \
        $(SET_LIB_PATH) \
-       (cd gas && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-libgloss))
+@endif target-libgloss
 
-.PHONY: check-gas maybe-check-gas
-maybe-check-gas:
+.PHONY: check-target-libgloss maybe-check-target-libgloss
+maybe-check-target-libgloss:
+@if target-libgloss
+maybe-check-target-libgloss: check-target-libgloss
 
-check-gas:
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gas && $(MAKE) $(FLAGS_TO_PASS) check)
+# Dummy target for uncheckable module.
+check-target-libgloss:
 
+@endif target-libgloss
 
-.PHONY: install-gas maybe-install-gas
-maybe-install-gas:
+.PHONY: install-target-libgloss maybe-install-target-libgloss
+maybe-install-target-libgloss:
+@if target-libgloss
+maybe-install-target-libgloss: install-target-libgloss
 
-install-gas: installdirs
+install-target-libgloss: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd gas && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgloss && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-libgloss
 
-.PHONY: configure-gawk maybe-configure-gawk
-maybe-configure-gawk:
-configure-gawk:
-       @test ! -f gawk/Makefile || exit 0; \
-       [ -d gawk ] || mkdir gawk; \
+# 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
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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-gawk maybe-all-gawk
-maybe-all-gawk:
-all-gawk: configure-gawk
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gawk && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libgloss
 
-.PHONY: check-gawk maybe-check-gawk
-maybe-check-gawk:
+.PHONY: maybe-dvi-target-libgloss dvi-target-libgloss
+maybe-dvi-target-libgloss:
+@if target-libgloss
+maybe-dvi-target-libgloss: dvi-target-libgloss
 
-check-gawk:
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd gawk && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-libgloss
 
-.PHONY: install-gawk maybe-install-gawk
-maybe-install-gawk:
+.PHONY: maybe-TAGS-target-libgloss TAGS-target-libgloss
+maybe-TAGS-target-libgloss:
+@if target-libgloss
+maybe-TAGS-target-libgloss: TAGS-target-libgloss
 
-install-gawk: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd gawk && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-gettext maybe-configure-gettext
-maybe-configure-gettext:
-configure-gettext:
-       @test ! -f gettext/Makefile || exit 0; \
-       [ -d gettext ] || mkdir gettext; \
+.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-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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-gettext maybe-all-gettext
-maybe-all-gettext:
-all-gettext: configure-gettext
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libgloss
+
+.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; \
        $(SET_LIB_PATH) \
-       (cd gettext && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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: check-gettext maybe-check-gettext
-maybe-check-gettext:
+@endif target-libgloss
 
-check-gettext:
-       @r=`${PWD_COMMAND}`; export r; \
+.PHONY: maybe-mostlyclean-target-libgloss mostlyclean-target-libgloss
+maybe-mostlyclean-target-libgloss:
+@if target-libgloss
+maybe-mostlyclean-target-libgloss: mostlyclean-target-libgloss
+
+mostlyclean-target-libgloss: 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd gettext && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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-gettext maybe-install-gettext
-maybe-install-gettext:
+.PHONY: maybe-clean-target-libgloss clean-target-libgloss
+maybe-clean-target-libgloss:
+@if target-libgloss
+maybe-clean-target-libgloss: clean-target-libgloss
 
-install-gettext: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+clean-target-libgloss: 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd gettext && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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-gnuserv maybe-configure-gnuserv
-maybe-configure-gnuserv:
-configure-gnuserv:
-       @test ! -f gnuserv/Makefile || exit 0; \
-       [ -d gnuserv ] || mkdir gnuserv; \
+.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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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-gnuserv maybe-all-gnuserv
-maybe-all-gnuserv:
-all-gnuserv: configure-gnuserv
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libgloss
 
-.PHONY: check-gnuserv maybe-check-gnuserv
-maybe-check-gnuserv:
+.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-gnuserv:
-       @r=`${PWD_COMMAND}`; export r; \
+maintainer-clean-target-libgloss: 
+       @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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-gnuserv maybe-install-gnuserv
-maybe-install-gnuserv:
 
-install-gnuserv: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: configure-target-libiberty maybe-configure-target-libiberty
+maybe-configure-target-libiberty:
+@if target-libiberty
+maybe-configure-target-libiberty: configure-target-libiberty
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-gprof maybe-configure-gprof
-maybe-configure-gprof:
-configure-gprof:
-       @test ! -f gprof/Makefile || exit 0; \
-       [ -d gprof ] || mkdir gprof; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/gprof"; \
-           libsrcdir="$$s/gprof";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/gprof"; \
-           libsrcdir="$$s/gprof";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-libiberty
 
-.PHONY: all-gprof maybe-all-gprof
-maybe-all-gprof:
-all-gprof: configure-gprof
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd gprof && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-gprof maybe-check-gprof
-maybe-check-gprof:
-
-check-gprof:
+.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; \
        $(SET_LIB_PATH) \
-       (cd gprof && $(MAKE) $(FLAGS_TO_PASS) check)
-
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-libiberty))
+@endif target-libiberty
 
-.PHONY: install-gprof maybe-install-gprof
-maybe-install-gprof:
+.PHONY: check-target-libiberty maybe-check-target-libiberty
+maybe-check-target-libiberty:
+@if target-libiberty
+maybe-check-target-libiberty: check-target-libiberty
 
-install-gprof: installdirs
+check-target-libiberty:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd gprof && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-libiberty
 
-.PHONY: configure-gzip maybe-configure-gzip
-maybe-configure-gzip:
-configure-gzip:
-       @test ! -f gzip/Makefile || exit 0; \
-       [ -d gzip ] || mkdir gzip; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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: install-target-libiberty maybe-install-target-libiberty
+maybe-install-target-libiberty:
+@if target-libiberty
+maybe-install-target-libiberty: install-target-libiberty
 
-.PHONY: all-gzip maybe-all-gzip
-maybe-all-gzip:
-all-gzip: configure-gzip
+install-target-libiberty: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd gzip && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libiberty && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: check-gzip maybe-check-gzip
-maybe-check-gzip:
+@endif target-libiberty
 
-check-gzip:
-       @r=`${PWD_COMMAND}`; export r; \
+# 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
+
+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; \
        $(SET_LIB_PATH) \
-       (cd gzip && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-libiberty
 
-.PHONY: install-gzip maybe-install-gzip
-maybe-install-gzip:
+.PHONY: maybe-dvi-target-libiberty dvi-target-libiberty
+maybe-dvi-target-libiberty:
+@if target-libiberty
+maybe-dvi-target-libiberty: dvi-target-libiberty
 
-install-gzip: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd gzip && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-libiberty
 
-.PHONY: configure-hello maybe-configure-hello
-maybe-configure-hello:
-configure-hello:
-       @test ! -f hello/Makefile || exit 0; \
-       [ -d hello ] || mkdir hello; \
+.PHONY: maybe-TAGS-target-libiberty TAGS-target-libiberty
+maybe-TAGS-target-libiberty:
+@if target-libiberty
+maybe-TAGS-target-libiberty: TAGS-target-libiberty
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-hello maybe-all-hello
-maybe-all-hello:
-all-hello: configure-hello
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libiberty
+
+.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; \
        $(SET_LIB_PATH) \
-       (cd hello && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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: check-hello maybe-check-hello
-maybe-check-hello:
+@endif target-libiberty
 
-check-hello:
-       @r=`${PWD_COMMAND}`; export r; \
+.PHONY: maybe-installcheck-target-libiberty installcheck-target-libiberty
+maybe-installcheck-target-libiberty:
+@if target-libiberty
+maybe-installcheck-target-libiberty: installcheck-target-libiberty
+
+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; \
        $(SET_LIB_PATH) \
-       (cd hello && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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-hello maybe-install-hello
-maybe-install-hello:
+.PHONY: maybe-mostlyclean-target-libiberty mostlyclean-target-libiberty
+maybe-mostlyclean-target-libiberty:
+@if target-libiberty
+maybe-mostlyclean-target-libiberty: mostlyclean-target-libiberty
 
-install-hello: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+mostlyclean-target-libiberty: 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd hello && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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-indent maybe-configure-indent
-maybe-configure-indent:
-configure-indent:
-       @test ! -f indent/Makefile || exit 0; \
-       [ -d indent ] || mkdir indent; \
+.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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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-indent maybe-all-indent
-maybe-all-indent:
-all-indent: configure-indent
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libiberty
+
+.PHONY: maybe-distclean-target-libiberty distclean-target-libiberty
+maybe-distclean-target-libiberty:
+@if target-libiberty
+maybe-distclean-target-libiberty: distclean-target-libiberty
+
+distclean-target-libiberty: 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd indent && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-indent maybe-check-indent
-maybe-check-indent:
+@endif target-libiberty
 
-check-indent:
-       @r=`${PWD_COMMAND}`; export r; \
+.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
+
+maintainer-clean-target-libiberty: 
+       @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd indent && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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: install-indent maybe-install-indent
-maybe-install-indent:
 
-install-indent: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd indent && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: configure-target-gperf maybe-configure-target-gperf
+maybe-configure-target-gperf:
+@if target-gperf
+maybe-configure-target-gperf: configure-target-gperf
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-intl maybe-configure-intl
-maybe-configure-intl:
-configure-intl:
-       @test ! -f intl/Makefile || exit 0; \
-       [ -d intl ] || mkdir intl; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/intl"; \
-           libsrcdir="$$s/intl";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/intl"; \
-           libsrcdir="$$s/intl";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-gperf
 
-.PHONY: all-intl maybe-all-intl
-maybe-all-intl:
-all-intl: configure-intl
+.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; \
        $(SET_LIB_PATH) \
-       (cd intl && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-gperf))
+@endif target-gperf
 
-.PHONY: check-intl maybe-check-intl
-maybe-check-intl:
+.PHONY: check-target-gperf maybe-check-target-gperf
+maybe-check-target-gperf:
+@if target-gperf
+maybe-check-target-gperf: check-target-gperf
 
-check-intl:
+check-target-gperf:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd intl && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-gperf
 
-.PHONY: install-intl maybe-install-intl
-maybe-install-intl:
+.PHONY: install-target-gperf maybe-install-target-gperf
+maybe-install-target-gperf:
+@if target-gperf
+maybe-install-target-gperf: install-target-gperf
 
-install-intl: installdirs
+install-target-gperf: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd intl && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/gperf && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-gperf
 
-.PHONY: configure-tcl maybe-configure-tcl
-maybe-configure-tcl:
-configure-tcl:
-       @test ! -f tcl/Makefile || exit 0; \
-       [ -d tcl ] || mkdir tcl; \
+# 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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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-tcl maybe-all-tcl
-maybe-all-tcl:
-all-tcl: configure-tcl
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-gperf
+
+.PHONY: maybe-dvi-target-gperf dvi-target-gperf
+maybe-dvi-target-gperf:
+@if target-gperf
+maybe-dvi-target-gperf: dvi-target-gperf
+
+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; \
        $(SET_LIB_PATH) \
-       (cd tcl && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-tcl maybe-check-tcl
-maybe-check-tcl:
+@endif target-gperf
 
-check-tcl:
-       @r=`${PWD_COMMAND}`; export r; \
+.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; \
        $(SET_LIB_PATH) \
-       (cd tcl && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-gperf
 
-.PHONY: install-tcl maybe-install-tcl
-maybe-install-tcl:
+.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
 
-install-tcl: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd tcl && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-itcl maybe-configure-itcl
-maybe-configure-itcl:
-configure-itcl:
-       @test ! -f itcl/Makefile || exit 0; \
-       [ -d itcl ] || mkdir itcl; \
+.PHONY: maybe-installcheck-target-gperf installcheck-target-gperf
+maybe-installcheck-target-gperf:
+@if target-gperf
+maybe-installcheck-target-gperf: installcheck-target-gperf
+
+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; \
-       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; \
-       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; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/itcl"; \
-           libsrcdir="$$s/itcl";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/itcl"; \
-           libsrcdir="$$s/itcl";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       $(SET_LIB_PATH) \
+       $(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: 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; \
+       $(SET_LIB_PATH) \
+       $(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-itcl maybe-all-itcl
-maybe-all-itcl:
-all-itcl: configure-itcl
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-gperf
+
+.PHONY: maybe-clean-target-gperf clean-target-gperf
+maybe-clean-target-gperf:
+@if target-gperf
+maybe-clean-target-gperf: clean-target-gperf
+
+clean-target-gperf: 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd itcl && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-itcl maybe-check-itcl
-maybe-check-itcl:
+@endif target-gperf
 
-check-itcl:
-       @r=`${PWD_COMMAND}`; export r; \
+.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; \
        $(SET_LIB_PATH) \
-       (cd itcl && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-gperf
 
-.PHONY: install-itcl maybe-install-itcl
-maybe-install-itcl:
+.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
 
-install-itcl: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+maintainer-clean-target-gperf: 
+       @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd itcl && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-gperf
 
-.PHONY: configure-ld maybe-configure-ld
-maybe-configure-ld:
-configure-ld:
-       @test ! -f ld/Makefile || exit 0; \
-       [ -d ld ] || mkdir ld; \
+
+.PHONY: configure-target-examples maybe-configure-target-examples
+maybe-configure-target-examples:
+@if target-examples
+maybe-configure-target-examples: configure-target-examples
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
+
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/ld"; \
-           libsrcdir="$$s/ld";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/ld"; \
-           libsrcdir="$$s/ld";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-examples
 
-.PHONY: all-ld maybe-all-ld
-maybe-all-ld:
-all-ld: configure-ld
+.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; \
        $(SET_LIB_PATH) \
-       (cd ld && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/examples && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-examples))
+@endif target-examples
 
-.PHONY: check-ld maybe-check-ld
-maybe-check-ld:
+.PHONY: check-target-examples maybe-check-target-examples
+maybe-check-target-examples:
+@if target-examples
+maybe-check-target-examples: check-target-examples
 
-check-ld:
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd ld && $(MAKE) $(FLAGS_TO_PASS) check)
+# Dummy target for uncheckable module.
+check-target-examples:
 
+@endif target-examples
 
-.PHONY: install-ld maybe-install-ld
-maybe-install-ld:
+.PHONY: install-target-examples maybe-install-target-examples
+maybe-install-target-examples:
+@if target-examples
+maybe-install-target-examples: install-target-examples
 
-install-ld: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd ld && $(MAKE) $(FLAGS_TO_PASS) install)
+# Dummy target for uninstallable.
+install-target-examples:
 
+@endif target-examples
 
-.PHONY: configure-libgui maybe-configure-libgui
-maybe-configure-libgui:
-configure-libgui:
-       @test ! -f libgui/Makefile || exit 0; \
-       [ -d libgui ] || mkdir libgui; \
+# 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
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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-libgui maybe-all-libgui
-maybe-all-libgui:
-all-libgui: configure-libgui
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-examples
+
+.PHONY: maybe-dvi-target-examples dvi-target-examples
+maybe-dvi-target-examples:
+@if target-examples
+maybe-dvi-target-examples: dvi-target-examples
+
+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; \
        $(SET_LIB_PATH) \
-       (cd libgui && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-libgui maybe-check-libgui
-maybe-check-libgui:
+@endif target-examples
 
-check-libgui:
-       @r=`${PWD_COMMAND}`; export r; \
+.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; \
        $(SET_LIB_PATH) \
-       (cd libgui && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-examples
 
-.PHONY: install-libgui maybe-install-libgui
-maybe-install-libgui:
+.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
 
-install-libgui: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd libgui && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-libiberty maybe-configure-libiberty
-maybe-configure-libiberty:
-configure-libiberty:
-       @test ! -f libiberty/Makefile || exit 0; \
-       [ -d libiberty ] || mkdir libiberty; \
+.PHONY: maybe-installcheck-target-examples installcheck-target-examples
+maybe-installcheck-target-examples:
+@if target-examples
+maybe-installcheck-target-examples: installcheck-target-examples
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-libiberty maybe-all-libiberty
-maybe-all-libiberty:
-all-libiberty: configure-libiberty
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-examples
 
-.PHONY: check-libiberty maybe-check-libiberty
-maybe-check-libiberty:
+.PHONY: maybe-mostlyclean-target-examples mostlyclean-target-examples
+maybe-mostlyclean-target-examples:
+@if target-examples
+maybe-mostlyclean-target-examples: mostlyclean-target-examples
 
-check-libiberty:
-       @r=`${PWD_COMMAND}`; export r; \
+mostlyclean-target-examples: 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-examples
 
-.PHONY: install-libiberty maybe-install-libiberty
-maybe-install-libiberty:
+.PHONY: maybe-clean-target-examples clean-target-examples
+maybe-clean-target-examples:
+@if target-examples
+maybe-clean-target-examples: clean-target-examples
 
-install-libiberty: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+clean-target-examples: 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-libtool maybe-configure-libtool
-maybe-configure-libtool:
-configure-libtool:
-       @test ! -f libtool/Makefile || exit 0; \
-       [ -d libtool ] || mkdir libtool; \
+.PHONY: maybe-distclean-target-examples distclean-target-examples
+maybe-distclean-target-examples:
+@if target-examples
+maybe-distclean-target-examples: distclean-target-examples
+
+distclean-target-examples: 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-libtool maybe-all-libtool
-maybe-all-libtool:
-all-libtool: configure-libtool
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libtool && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-examples
 
-.PHONY: check-libtool maybe-check-libtool
-maybe-check-libtool:
+.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
 
-check-libtool:
-       @r=`${PWD_COMMAND}`; export r; \
+maintainer-clean-target-examples: 
+       @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd libtool && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-examples
 
-.PHONY: install-libtool maybe-install-libtool
-maybe-install-libtool:
 
-install-libtool: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libtool && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: configure-target-libffi maybe-configure-target-libffi
+maybe-configure-target-libffi:
+@if target-libffi
+maybe-configure-target-libffi: configure-target-libffi
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-m4 maybe-configure-m4
-maybe-configure-m4:
-configure-m4:
-       @test ! -f m4/Makefile || exit 0; \
-       [ -d m4 ] || mkdir m4; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/m4"; \
-           libsrcdir="$$s/m4";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/m4"; \
-           libsrcdir="$$s/m4";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-libffi
 
-.PHONY: all-m4 maybe-all-m4
-maybe-all-m4:
-all-m4: configure-m4
+.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; \
        $(SET_LIB_PATH) \
-       (cd m4 && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-libffi))
+@endif target-libffi
 
-.PHONY: check-m4 maybe-check-m4
-maybe-check-m4:
+.PHONY: check-target-libffi maybe-check-target-libffi
+maybe-check-target-libffi:
+@if target-libffi
+maybe-check-target-libffi: check-target-libffi
 
-check-m4:
+check-target-libffi:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd m4 && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-libffi
 
-.PHONY: install-m4 maybe-install-m4
-maybe-install-m4:
+.PHONY: install-target-libffi maybe-install-target-libffi
+maybe-install-target-libffi:
+@if target-libffi
+maybe-install-target-libffi: install-target-libffi
 
-install-m4: installdirs
+install-target-libffi: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd m4 && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libffi && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-libffi
 
-.PHONY: configure-make maybe-configure-make
-maybe-configure-make:
-configure-make:
-       @test ! -f make/Makefile || exit 0; \
-       [ -d make ] || mkdir make; \
+# Other targets (info, dvi, etc.)
+
+.PHONY: maybe-info-target-libffi info-target-libffi
+maybe-info-target-libffi:
+@if target-libffi
+maybe-info-target-libffi: info-target-libffi
+
+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; \
-       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; \
-       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; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/make"; \
-           libsrcdir="$$s/make";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/make"; \
-           libsrcdir="$$s/make";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-make maybe-all-make
-maybe-all-make:
-all-make: configure-make
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libffi
+
+.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; \
        $(SET_LIB_PATH) \
-       (cd make && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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: check-make maybe-check-make
-maybe-check-make:
+@endif target-libffi
 
-check-make:
-       @r=`${PWD_COMMAND}`; export r; \
+.PHONY: maybe-TAGS-target-libffi TAGS-target-libffi
+maybe-TAGS-target-libffi:
+@if target-libffi
+maybe-TAGS-target-libffi: TAGS-target-libffi
+
+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; \
        $(SET_LIB_PATH) \
-       (cd make && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-libffi
 
-.PHONY: install-make maybe-install-make
-maybe-install-make:
+.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
 
-install-make: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd make && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-mmalloc maybe-configure-mmalloc
-maybe-configure-mmalloc:
-configure-mmalloc:
-       @test ! -f mmalloc/Makefile || exit 0; \
-       [ -d mmalloc ] || mkdir mmalloc; \
+.PHONY: maybe-installcheck-target-libffi installcheck-target-libffi
+maybe-installcheck-target-libffi:
+@if target-libffi
+maybe-installcheck-target-libffi: installcheck-target-libffi
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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: 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; \
+       $(SET_LIB_PATH) \
+       $(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
+
+@endif target-libffi
+
+.PHONY: maybe-clean-target-libffi clean-target-libffi
+maybe-clean-target-libffi:
+@if target-libffi
+maybe-clean-target-libffi: clean-target-libffi
+
+clean-target-libffi: 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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: maybe-distclean-target-libffi distclean-target-libffi
+maybe-distclean-target-libffi:
+@if target-libffi
+maybe-distclean-target-libffi: distclean-target-libffi
+
+distclean-target-libffi: 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-mmalloc maybe-all-mmalloc
-maybe-all-mmalloc:
-all-mmalloc: configure-mmalloc
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-libffi
 
-.PHONY: check-mmalloc maybe-check-mmalloc
-maybe-check-mmalloc:
+.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
 
-check-mmalloc:
+maintainer-clean-target-libffi: 
+       @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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
 
+@endif target-libffi
 
-.PHONY: install-mmalloc maybe-install-mmalloc
-maybe-install-mmalloc:
 
-install-mmalloc: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: configure-target-libjava maybe-configure-target-libjava
+maybe-configure-target-libjava:
+@if target-libjava
+maybe-configure-target-libjava: configure-target-libjava
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-patch maybe-configure-patch
-maybe-configure-patch:
-configure-patch:
-       @test ! -f patch/Makefile || exit 0; \
-       [ -d patch ] || mkdir patch; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/patch"; \
-           libsrcdir="$$s/patch";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/patch"; \
-           libsrcdir="$$s/patch";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-libjava
 
-.PHONY: all-patch maybe-all-patch
-maybe-all-patch:
-all-patch: configure-patch
+.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; \
        $(SET_LIB_PATH) \
-       (cd patch && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-patch maybe-check-patch
-maybe-check-patch:
+.PHONY: check-target-libjava maybe-check-target-libjava
+maybe-check-target-libjava:
+@if target-libjava
+maybe-check-target-libjava: check-target-libjava
 
-check-patch:
+check-target-libjava:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd patch && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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)
 
+@endif target-libjava
 
-.PHONY: install-patch maybe-install-patch
-maybe-install-patch:
+.PHONY: install-target-libjava maybe-install-target-libjava
+maybe-install-target-libjava:
+@if target-libjava
+maybe-install-target-libjava: install-target-libjava
 
-install-patch: installdirs
+install-target-libjava: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd patch && $(MAKE) $(FLAGS_TO_PASS) install)
-
+       $(RAW_CXX_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libjava && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: configure-perl maybe-configure-perl
-maybe-configure-perl:
-configure-perl:
-       @test ! -f perl/Makefile || exit 0; \
-       [ -d perl ] || mkdir perl; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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} \
-         || exit 1
+@endif target-libjava
 
-.PHONY: all-perl maybe-all-perl
-maybe-all-perl:
-all-perl: configure-perl
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd perl && $(MAKE) $(FLAGS_TO_PASS) all)
+# Other targets (info, dvi, etc.)
 
-.PHONY: check-perl maybe-check-perl
-maybe-check-perl:
+.PHONY: maybe-info-target-libjava info-target-libjava
+maybe-info-target-libjava:
+@if target-libjava
+maybe-info-target-libjava: info-target-libjava
 
-check-perl:
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd perl && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-libjava
 
-.PHONY: install-perl maybe-install-perl
-maybe-install-perl:
+.PHONY: maybe-dvi-target-libjava dvi-target-libjava
+maybe-dvi-target-libjava:
+@if target-libjava
+maybe-dvi-target-libjava: dvi-target-libjava
 
-install-perl: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd perl && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-prms maybe-configure-prms
-maybe-configure-prms:
-configure-prms:
-       @test ! -f prms/Makefile || exit 0; \
-       [ -d prms ] || mkdir prms; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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} \
-         || exit 1
+.PHONY: maybe-TAGS-target-libjava TAGS-target-libjava
+maybe-TAGS-target-libjava:
+@if target-libjava
+maybe-TAGS-target-libjava: TAGS-target-libjava
 
-.PHONY: all-prms maybe-all-prms
-maybe-all-prms:
-all-prms: configure-prms
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd prms && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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: check-prms maybe-check-prms
-maybe-check-prms:
+@endif target-libjava
 
-check-prms:
-       @r=`${PWD_COMMAND}`; export r; \
+.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
+
+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; \
        $(SET_LIB_PATH) \
-       (cd prms && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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-prms maybe-install-prms
-maybe-install-prms:
+.PHONY: maybe-installcheck-target-libjava installcheck-target-libjava
+maybe-installcheck-target-libjava:
+@if target-libjava
+maybe-installcheck-target-libjava: installcheck-target-libjava
 
-install-prms: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd prms && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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-rcs maybe-configure-rcs
-maybe-configure-rcs:
-configure-rcs:
-       @test ! -f rcs/Makefile || exit 0; \
-       [ -d rcs ] || mkdir rcs; \
+.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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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-rcs maybe-all-rcs
-maybe-all-rcs:
-all-rcs: configure-rcs
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libjava
+
+.PHONY: maybe-clean-target-libjava clean-target-libjava
+maybe-clean-target-libjava:
+@if target-libjava
+maybe-clean-target-libjava: clean-target-libjava
+
+clean-target-libjava: 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd rcs && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-rcs maybe-check-rcs
-maybe-check-rcs:
+@endif target-libjava
 
-check-rcs:
-       @r=`${PWD_COMMAND}`; export r; \
+.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; \
        $(SET_LIB_PATH) \
-       (cd rcs && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-libjava
 
-.PHONY: install-rcs maybe-install-rcs
-maybe-install-rcs:
+.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
 
-install-rcs: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+maintainer-clean-target-libjava: 
+       @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd rcs && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-libjava
 
-.PHONY: configure-readline maybe-configure-readline
-maybe-configure-readline:
-configure-readline:
-       @test ! -f readline/Makefile || exit 0; \
-       [ -d readline ] || mkdir readline; \
+
+.PHONY: configure-target-zlib maybe-configure-target-zlib
+maybe-configure-target-zlib:
+@if target-zlib
+maybe-configure-target-zlib: configure-target-zlib
+
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
+
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/readline"; \
-           libsrcdir="$$s/readline";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       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
+@endif target-zlib
 
-.PHONY: all-readline maybe-all-readline
-maybe-all-readline:
-all-readline: configure-readline
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd readline && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-readline maybe-check-readline
-maybe-check-readline:
-
-check-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; \
        $(SET_LIB_PATH) \
-       (cd readline && $(MAKE) $(FLAGS_TO_PASS) check)
-
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-zlib))
+@endif target-zlib
 
-.PHONY: install-readline maybe-install-readline
-maybe-install-readline:
+.PHONY: check-target-zlib maybe-check-target-zlib
+maybe-check-target-zlib:
+@if target-zlib
+maybe-check-target-zlib: check-target-zlib
 
-install-readline: installdirs
+check-target-zlib:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd readline && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-zlib
 
-.PHONY: configure-release maybe-configure-release
-maybe-configure-release:
-configure-release:
-       @test ! -f release/Makefile || exit 0; \
-       [ -d release ] || mkdir release; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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: install-target-zlib maybe-install-target-zlib
+maybe-install-target-zlib:
+@if target-zlib
+maybe-install-target-zlib: install-target-zlib
 
-.PHONY: all-release maybe-all-release
-maybe-all-release:
-all-release: configure-release
+install-target-zlib: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd release && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/zlib && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
-.PHONY: check-release maybe-check-release
-maybe-check-release:
+@endif target-zlib
 
-check-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: install-release maybe-install-release
-maybe-install-release:
+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; \
+       $(SET_LIB_PATH) \
+       $(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
 
-install-release:
+@endif target-zlib
 
+.PHONY: maybe-dvi-target-zlib dvi-target-zlib
+maybe-dvi-target-zlib:
+@if target-zlib
+maybe-dvi-target-zlib: dvi-target-zlib
 
-.PHONY: configure-recode maybe-configure-recode
-maybe-configure-recode:
-configure-recode:
-       @test ! -f recode/Makefile || exit 0; \
-       [ -d recode ] || mkdir recode; \
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-recode maybe-all-recode
-maybe-all-recode:
-all-recode: configure-recode
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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-TAGS-target-zlib TAGS-target-zlib
+maybe-TAGS-target-zlib:
+@if target-zlib
+maybe-TAGS-target-zlib: TAGS-target-zlib
 
-check-recode:
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd recode && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-zlib
 
-.PHONY: install-recode maybe-install-recode
-maybe-install-recode:
+.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-recode: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd recode && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-zlib
 
-.PHONY: configure-sed maybe-configure-sed
-maybe-configure-sed:
-configure-sed:
-       @test ! -f sed/Makefile || exit 0; \
-       [ -d sed ] || mkdir sed; \
+.PHONY: maybe-installcheck-target-zlib installcheck-target-zlib
+maybe-installcheck-target-zlib:
+@if target-zlib
+maybe-installcheck-target-zlib: installcheck-target-zlib
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-sed maybe-all-sed
-maybe-all-sed:
-all-sed: configure-sed
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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-mostlyclean-target-zlib mostlyclean-target-zlib
+maybe-mostlyclean-target-zlib:
+@if target-zlib
+maybe-mostlyclean-target-zlib: mostlyclean-target-zlib
 
-check-sed:
-       @r=`${PWD_COMMAND}`; export r; \
+mostlyclean-target-zlib: 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd sed && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-zlib
 
-.PHONY: install-sed maybe-install-sed
-maybe-install-sed:
+.PHONY: maybe-clean-target-zlib clean-target-zlib
+maybe-clean-target-zlib:
+@if target-zlib
+maybe-clean-target-zlib: clean-target-zlib
 
-install-sed: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+clean-target-zlib: 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd sed && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: 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; \
+.PHONY: maybe-distclean-target-zlib distclean-target-zlib
+maybe-distclean-target-zlib:
+@if target-zlib
+maybe-distclean-target-zlib: distclean-target-zlib
+
+distclean-target-zlib: 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-send-pr maybe-all-send-pr
-maybe-all-send-pr:
-all-send-pr: configure-send-pr
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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-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
 
-check-send-pr:
-       @r=`${PWD_COMMAND}`; export r; \
+maintainer-clean-target-zlib: 
+       @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-zlib
 
-.PHONY: install-send-pr maybe-install-send-pr
-maybe-install-send-pr:
 
-install-send-pr: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) install)
+.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
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-shellutils maybe-configure-shellutils
-maybe-configure-shellutils:
-configure-shellutils:
-       @test ! -f shellutils/Makefile || exit 0; \
-       [ -d shellutils ] || mkdir shellutils; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/shellutils"; \
-           libsrcdir="$$s/shellutils";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/shellutils"; \
-           libsrcdir="$$s/shellutils";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-boehm-gc
 
-.PHONY: all-shellutils maybe-all-shellutils
-maybe-all-shellutils:
-all-shellutils: configure-shellutils
+.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; \
        $(SET_LIB_PATH) \
-       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-boehm-gc))
+@endif target-boehm-gc
 
-.PHONY: check-shellutils maybe-check-shellutils
-maybe-check-shellutils:
+.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-shellutils:
+check-target-boehm-gc:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-boehm-gc
 
-.PHONY: install-shellutils maybe-install-shellutils
-maybe-install-shellutils:
+.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-shellutils: installdirs
+install-target-boehm-gc: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/boehm-gc && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-boehm-gc
 
-.PHONY: configure-sid maybe-configure-sid
-maybe-configure-sid:
-configure-sid:
-       @test ! -f sid/Makefile || exit 0; \
-       [ -d sid ] || mkdir sid; \
+# Other targets (info, dvi, etc.)
+
+.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
+
+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; \
-       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; \
-       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; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/sid"; \
-           libsrcdir="$$s/sid";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/sid"; \
-           libsrcdir="$$s/sid";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-sid maybe-all-sid
-maybe-all-sid:
-all-sid: configure-sid
-       @r=`${PWD_COMMAND}`; export r; \
+@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
+
+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; \
        $(SET_LIB_PATH) \
-       (cd sid && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-sid maybe-check-sid
-maybe-check-sid:
+@endif target-boehm-gc
 
-check-sid:
-       @r=`${PWD_COMMAND}`; export r; \
+.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
+
+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; \
        $(SET_LIB_PATH) \
-       (cd sid && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-boehm-gc
 
-.PHONY: install-sid maybe-install-sid
-maybe-install-sid:
+.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
 
-install-sid: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd sid && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@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; \
+.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
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-sim maybe-all-sim
-maybe-all-sim:
-all-sim: configure-sim
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd sim && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-boehm-gc
 
-.PHONY: check-sim maybe-check-sim
-maybe-check-sim:
+.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
 
-check-sim:
-       @r=`${PWD_COMMAND}`; export r; \
+mostlyclean-target-boehm-gc: 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd sim && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-boehm-gc
 
-.PHONY: install-sim maybe-install-sim
-maybe-install-sim:
+.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
 
-install-sim: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+clean-target-boehm-gc: 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd sim && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-tar maybe-configure-tar
-maybe-configure-tar:
-configure-tar:
-       @test ! -f tar/Makefile || exit 0; \
-       [ -d tar ] || mkdir tar; \
+.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
+
+distclean-target-boehm-gc: 
+       @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-tar maybe-all-tar
-maybe-all-tar:
-all-tar: configure-tar
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tar && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-boehm-gc
 
-.PHONY: check-tar maybe-check-tar
-maybe-check-tar:
+.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
 
-check-tar:
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd tar && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-boehm-gc
 
-.PHONY: install-tar maybe-install-tar
-maybe-install-tar:
 
-install-tar: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd tar && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: configure-target-qthreads maybe-configure-target-qthreads
+maybe-configure-target-qthreads:
+@if target-qthreads
+maybe-configure-target-qthreads: configure-target-qthreads
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-texinfo maybe-configure-texinfo
-maybe-configure-texinfo:
-configure-texinfo:
-       @test ! -f texinfo/Makefile || exit 0; \
-       [ -d texinfo ] || mkdir texinfo; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/texinfo"; \
-           libsrcdir="$$s/texinfo";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/texinfo"; \
-           libsrcdir="$$s/texinfo";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-qthreads
 
-.PHONY: all-texinfo maybe-all-texinfo
-maybe-all-texinfo:
-all-texinfo: configure-texinfo
+.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; \
        $(SET_LIB_PATH) \
-       (cd texinfo && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-qthreads))
+@endif target-qthreads
 
-.PHONY: check-texinfo maybe-check-texinfo
-maybe-check-texinfo:
+.PHONY: check-target-qthreads maybe-check-target-qthreads
+maybe-check-target-qthreads:
+@if target-qthreads
+maybe-check-target-qthreads: check-target-qthreads
 
-check-texinfo:
+check-target-qthreads:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd texinfo && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-qthreads
 
-.PHONY: install-texinfo maybe-install-texinfo
-maybe-install-texinfo:
+.PHONY: install-target-qthreads maybe-install-target-qthreads
+maybe-install-target-qthreads:
+@if target-qthreads
+maybe-install-target-qthreads: install-target-qthreads
 
-install-texinfo:
+install-target-qthreads: installdirs
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/qthreads && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-qthreads
 
-.PHONY: configure-textutils maybe-configure-textutils
-maybe-configure-textutils:
-configure-textutils:
-       @test ! -f textutils/Makefile || exit 0; \
-       [ -d textutils ] || mkdir textutils; \
+# 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
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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-textutils maybe-all-textutils
-maybe-all-textutils:
-all-textutils: configure-textutils
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-qthreads
+
+.PHONY: maybe-dvi-target-qthreads dvi-target-qthreads
+maybe-dvi-target-qthreads:
+@if target-qthreads
+maybe-dvi-target-qthreads: dvi-target-qthreads
+
+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; \
        $(SET_LIB_PATH) \
-       (cd textutils && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-textutils maybe-check-textutils
-maybe-check-textutils:
+@endif target-qthreads
 
-check-textutils:
-       @r=`${PWD_COMMAND}`; export r; \
+.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; \
        $(SET_LIB_PATH) \
-       (cd textutils && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-qthreads
 
-.PHONY: install-textutils maybe-install-textutils
-maybe-install-textutils:
+.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
 
-install-textutils: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd textutils && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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: configure-time maybe-configure-time
-maybe-configure-time:
-configure-time:
-       @test ! -f time/Makefile || exit 0; \
-       [ -d time ] || mkdir time; \
+.PHONY: maybe-installcheck-target-qthreads installcheck-target-qthreads
+maybe-installcheck-target-qthreads:
+@if target-qthreads
+maybe-installcheck-target-qthreads: installcheck-target-qthreads
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-time maybe-all-time
-maybe-all-time:
-all-time: configure-time
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-qthreads
+
+.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; \
+       $(SET_LIB_PATH) \
+       $(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
+
+@endif target-qthreads
+
+.PHONY: maybe-clean-target-qthreads clean-target-qthreads
+maybe-clean-target-qthreads:
+@if target-qthreads
+maybe-clean-target-qthreads: clean-target-qthreads
+
+clean-target-qthreads: 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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: maybe-distclean-target-qthreads distclean-target-qthreads
+maybe-distclean-target-qthreads:
+@if target-qthreads
+maybe-distclean-target-qthreads: distclean-target-qthreads
+
+distclean-target-qthreads: 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd time && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-time maybe-check-time
-maybe-check-time:
+@endif target-qthreads
 
-check-time:
-       @r=`${PWD_COMMAND}`; export r; \
+.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
+
+maintainer-clean-target-qthreads: 
+       @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd time && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-qthreads
 
-.PHONY: install-time maybe-install-time
-maybe-install-time:
 
-install-time: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd time && $(MAKE) $(FLAGS_TO_PASS) install)
+.PHONY: configure-target-rda maybe-configure-target-rda
+maybe-configure-target-rda:
+@if target-rda
+maybe-configure-target-rda: configure-target-rda
 
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
 
-.PHONY: configure-uudecode maybe-configure-uudecode
-maybe-configure-uudecode:
-configure-uudecode:
-       @test ! -f uudecode/Makefile || exit 0; \
-       [ -d uudecode ] || mkdir uudecode; \
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(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)/uudecode"; \
-           libsrcdir="$$s/uudecode";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/uudecode"; \
-           libsrcdir="$$s/uudecode";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        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} \
+         --with-target-subdir="$(TARGET_SUBDIR)"  \
          || exit 1
+@endif target-rda
 
-.PHONY: all-uudecode maybe-all-uudecode
-maybe-all-uudecode:
-all-uudecode: configure-uudecode
+.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; \
        $(SET_LIB_PATH) \
-       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-rda))
+@endif target-rda
 
-.PHONY: check-uudecode maybe-check-uudecode
-maybe-check-uudecode:
+.PHONY: check-target-rda maybe-check-target-rda
+maybe-check-target-rda:
+@if target-rda
+maybe-check-target-rda: check-target-rda
 
-check-uudecode:
+check-target-rda:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-rda
 
-.PHONY: install-uudecode maybe-install-uudecode
-maybe-install-uudecode:
+.PHONY: install-target-rda maybe-install-target-rda
+maybe-install-target-rda:
+@if target-rda
+maybe-install-target-rda: install-target-rda
 
-install-uudecode: installdirs
+install-target-rda: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/rda && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-rda
 
-.PHONY: configure-wdiff maybe-configure-wdiff
-maybe-configure-wdiff:
-configure-wdiff:
-       @test ! -f wdiff/Makefile || exit 0; \
-       [ -d wdiff ] || mkdir wdiff; \
+# 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
+
+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; \
-       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; \
-       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; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/wdiff"; \
-           libsrcdir="$$s/wdiff";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/wdiff"; \
-           libsrcdir="$$s/wdiff";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       $(SET_LIB_PATH) \
+       $(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-wdiff maybe-all-wdiff
-maybe-all-wdiff:
-all-wdiff: configure-wdiff
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) all)
+@endif target-rda
 
-.PHONY: check-wdiff maybe-check-wdiff
-maybe-check-wdiff:
+.PHONY: maybe-dvi-target-rda dvi-target-rda
+maybe-dvi-target-rda:
+@if target-rda
+maybe-dvi-target-rda: dvi-target-rda
 
-check-wdiff:
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) check)
+       $(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-wdiff maybe-install-wdiff
-maybe-install-wdiff:
+.PHONY: maybe-TAGS-target-rda TAGS-target-rda
+maybe-TAGS-target-rda:
+@if target-rda
+maybe-TAGS-target-rda: TAGS-target-rda
 
-install-wdiff: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-rda
 
-.PHONY: configure-zip maybe-configure-zip
-maybe-configure-zip:
-configure-zip:
-       @test ! -f zip/Makefile || exit 0; \
-       [ -d zip ] || mkdir zip; \
-       r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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: 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
 
-.PHONY: all-zip maybe-all-zip
-maybe-all-zip:
-all-zip: configure-zip
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd zip && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-zip maybe-check-zip
-maybe-check-zip:
+@endif target-rda
 
-# 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; \
-         $(SET_LIB_PATH) \
-         (cd zip && $(MAKE) $(FLAGS_TO_PASS) check); \
-       fi
+.PHONY: maybe-installcheck-target-rda installcheck-target-rda
+maybe-installcheck-target-rda:
+@if target-rda
+maybe-installcheck-target-rda: installcheck-target-rda
+
+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; \
+       $(SET_LIB_PATH) \
+       $(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: install-zip maybe-install-zip
-maybe-install-zip:
+.PHONY: maybe-mostlyclean-target-rda mostlyclean-target-rda
+maybe-mostlyclean-target-rda:
+@if target-rda
+maybe-mostlyclean-target-rda: mostlyclean-target-rda
 
-install-zip: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+mostlyclean-target-rda: 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd zip && $(MAKE) $(FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-rda
 
-.PHONY: configure-zlib maybe-configure-zlib
-maybe-configure-zlib:
-configure-zlib:
-       @test ! -f zlib/Makefile || exit 0; \
-       [ -d zlib ] || mkdir zlib; \
+.PHONY: maybe-clean-target-rda clean-target-rda
+maybe-clean-target-rda:
+@if target-rda
+maybe-clean-target-rda: clean-target-rda
+
+clean-target-rda: 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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-zlib maybe-all-zlib
-maybe-all-zlib:
-all-zlib: configure-zlib
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-rda
+
+.PHONY: maybe-distclean-target-rda distclean-target-rda
+maybe-distclean-target-rda:
+@if target-rda
+maybe-distclean-target-rda: distclean-target-rda
+
+distclean-target-rda: 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd zlib && $(MAKE) $(FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-zlib maybe-check-zlib
-maybe-check-zlib:
+@endif target-rda
 
-check-zlib:
+.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
 
+maintainer-clean-target-rda: 
+       @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: install-zlib maybe-install-zlib
-maybe-install-zlib:
+@endif target-rda
 
-install-zlib:
 
+.PHONY: configure-target-libada maybe-configure-target-libada
+maybe-configure-target-libada:
+@if target-libada
+maybe-configure-target-libada: configure-target-libada
 
-.PHONY: configure-gdb maybe-configure-gdb
-maybe-configure-gdb:
-configure-gdb:
-       @test ! -f gdb/Makefile || exit 0; \
-       [ -d gdb ] || mkdir gdb; \
+# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
+$(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
+
+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; \
-       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; \
-       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; \
+       $(SET_LIB_PATH) \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo Configuring in $(TARGET_SUBDIR)/libada; \
+       cd "$(TARGET_SUBDIR)/libada" || exit 1; \
        case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gdb"; \
-           libsrcdir="$$s/gdb";; \
+           topdir=$(srcdir) ;; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/gdb"; \
-           libsrcdir="$$s/gdb";; \
+           case "$(TARGET_SUBDIR)" in \
+             .) topdir="../$(srcdir)" ;; \
+             *) topdir="../../$(srcdir)" ;; \
+           esac ;; \
        esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+         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)"  \
          || exit 1
+@endif target-libada
 
-.PHONY: all-gdb maybe-all-gdb
-maybe-all-gdb:
-all-gdb: configure-gdb
+.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; \
        $(SET_LIB_PATH) \
-       (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   $(TARGET-target-libada))
+@endif target-libada
 
-.PHONY: check-gdb maybe-check-gdb
-maybe-check-gdb:
+.PHONY: check-target-libada maybe-check-target-libada
+maybe-check-target-libada:
+@if target-libada
+maybe-check-target-libada: check-target-libada
 
-check-gdb:
+check-target-libada:
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
 
+@endif target-libada
 
-.PHONY: install-gdb maybe-install-gdb
-maybe-install-gdb:
+.PHONY: install-target-libada maybe-install-target-libada
+maybe-install-target-libada:
+@if target-libada
+maybe-install-target-libada: install-target-libada
 
-install-gdb: installdirs
+install-target-libada: installdirs
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libada && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
 
+@endif target-libada
 
-.PHONY: configure-expect maybe-configure-expect
-maybe-configure-expect:
-configure-expect:
-       @test ! -f expect/Makefile || exit 0; \
-       [ -d expect ] || mkdir expect; \
+# 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
+
+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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-expect maybe-all-expect
-maybe-all-expect:
-all-expect: configure-expect
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+@endif target-libada
 
-.PHONY: check-expect maybe-check-expect
-maybe-check-expect:
+.PHONY: maybe-dvi-target-libada dvi-target-libada
+maybe-dvi-target-libada:
+@if target-libada
+maybe-dvi-target-libada: dvi-target-libada
 
-check-expect:
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-libada
 
-.PHONY: install-expect maybe-install-expect
-maybe-install-expect:
+.PHONY: maybe-TAGS-target-libada TAGS-target-libada
+maybe-TAGS-target-libada:
+@if target-libada
+maybe-TAGS-target-libada: TAGS-target-libada
 
-install-expect: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+       $(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
 
+@endif target-libada
 
-.PHONY: configure-guile maybe-configure-guile
-maybe-configure-guile:
-configure-guile:
-       @test ! -f guile/Makefile || exit 0; \
-       [ -d guile ] || mkdir guile; \
+.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; \
-       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; \
-       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} \
+       $(SET_LIB_PATH) \
+       $(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: all-guile maybe-all-guile
-maybe-all-guile:
-all-guile: configure-guile
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+@endif target-libada
 
-.PHONY: check-guile maybe-check-guile
-maybe-check-guile:
+.PHONY: maybe-installcheck-target-libada installcheck-target-libada
+maybe-installcheck-target-libada:
+@if target-libada
+maybe-installcheck-target-libada: installcheck-target-libada
 
-check-guile:
-       @r=`${PWD_COMMAND}`; export r; \
+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; \
        $(SET_LIB_PATH) \
-       (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-libada
 
-.PHONY: install-guile maybe-install-guile
-maybe-install-guile:
+.PHONY: maybe-mostlyclean-target-libada mostlyclean-target-libada
+maybe-mostlyclean-target-libada:
+@if target-libada
+maybe-mostlyclean-target-libada: mostlyclean-target-libada
 
-install-guile: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
+mostlyclean-target-libada: 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+       $(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: configure-tk maybe-configure-tk
-maybe-configure-tk:
-configure-tk:
-       @test ! -f tk/Makefile || exit 0; \
-       [ -d tk ] || mkdir tk; \
+.PHONY: maybe-clean-target-libada clean-target-libada
+maybe-clean-target-libada:
+@if target-libada
+maybe-clean-target-libada: clean-target-libada
+
+clean-target-libada: 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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; \
-       case $(srcdir) in \
-         \.) \
-           srcdiroption="--srcdir=."; \
-           libsrcdir=".";; \
-         /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/tk"; \
-           libsrcdir="$$s/tk";; \
-         *) \
-           srcdiroption="--srcdir=../$(srcdir)/tk"; \
-           libsrcdir="$$s/tk";; \
-       esac; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
+       $(SET_LIB_PATH) \
+       $(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
 
-.PHONY: all-tk maybe-all-tk
-maybe-all-tk:
-all-tk: configure-tk
-       @r=`${PWD_COMMAND}`; export r; \
+@endif target-libada
+
+.PHONY: maybe-distclean-target-libada distclean-target-libada
+maybe-distclean-target-libada:
+@if target-libada
+maybe-distclean-target-libada: distclean-target-libada
+
+distclean-target-libada: 
+       @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \
+       r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
+       $(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
 
-.PHONY: check-tk maybe-check-tk
-maybe-check-tk:
+@endif target-libada
 
-check-tk:
-       @r=`${PWD_COMMAND}`; export r; \
+.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; \
        $(SET_LIB_PATH) \
-       (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
+       $(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
 
+@endif target-libada
 
-.PHONY: install-tk maybe-install-tk
-maybe-install-tk:
 
-install-tk: installdirs
+
+# ----------
+# GCC module
+# ----------
+
+@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.
+
+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; \
        $(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_COMMAND}`; export r; \
+       $(HOST_EXPORTS) \
+       echo "Bootstrapping the compiler"; \
+       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@
+       @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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";; \
+       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; \
-       $(SHELL) $${libsrcdir}/configure \
-         $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       echo "$$msg"; \
+       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
+       $(SET_LIB_PATH) \
+       echo "Building runtime libraries"; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
 
-.PHONY: all-tix maybe-all-tix
-maybe-all-tix:
-all-tix: configure-tix
+profiledbootstrap: all-prebootstrap configure-gcc
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
+       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; \
+       $(SET_LIB_PATH) \
+       $(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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
        $(SET_LIB_PATH) \
-       (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all)
-
-.PHONY: check-tix maybe-check-tix
-maybe-check-tix:
+       echo "Building runtime libraries"; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all
 
-check-tix:
+.PHONY: cross
+cross: all-build all-gas all-ld
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
-       (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check)
-
-
-.PHONY: install-tix maybe-install-tix
-maybe-install-tix:
-
-install-tix: installdirs
+       $(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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
        $(SET_LIB_PATH) \
-       (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install)
+       echo "Building runtime libraries"; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) LANGUAGES="c c++" all
+@endif gcc-no-bootstrap
+
+@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; \
+         $(SET_LIB_PATH) \
+         $(HOST_EXPORTS) \
+         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
+       else \
+         true; \
+       fi
 
+.PHONY: check-c++
+check-c++: check-target-libstdc++-v3 check-gcc-c++
 
-.PHONY: configure-libtermcap maybe-configure-libtermcap
-maybe-configure-libtermcap:
-configure-libtermcap:
-       @test ! -f libtermcap/Makefile || exit 0; \
-       [ -d libtermcap ] || mkdir libtermcap; \
+# 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; \
+         $(SET_LIB_PATH) \
+         $(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 almost certainly not parallel-make safe.
+
+# '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.
+BOOT_CFLAGS= -g -O2
+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
+@if bfd
+       [ -d stage1-bfd ] || mkdir stage1-bfd; \
+       set stage1-bfd bfd ; @CREATE_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       [ -d stage1-opcodes ] || mkdir stage1-opcodes; \
+       set stage1-opcodes opcodes ; @CREATE_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       [ -d stage1-binutils ] || mkdir stage1-binutils; \
+       set stage1-binutils binutils ; @CREATE_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       [ -d stage1-gas ] || mkdir stage1-gas; \
+       set stage1-gas gas ; @CREATE_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       [ -d stage1-gcc ] || mkdir stage1-gcc; \
+       set stage1-gcc gcc ; @CREATE_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       [ -d stage1-intl ] || mkdir stage1-intl; \
+       set stage1-intl intl ; @CREATE_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       [ -d stage1-ld ] || mkdir stage1-ld; \
+       set stage1-ld ld ; @CREATE_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       [ -d stage1-libcpp ] || mkdir stage1-libcpp; \
+       set stage1-libcpp libcpp ; @CREATE_LINK_TO_DIR@ 
+@endif libcpp
+@if libbanshee
+       [ -d stage1-libbanshee ] || mkdir stage1-libbanshee; \
+       set stage1-libbanshee libbanshee ; @CREATE_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       [ -d stage1-libiberty ] || mkdir stage1-libiberty; \
+       set stage1-libiberty libiberty ; @CREATE_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       [ -d stage1-zlib ] || mkdir stage1-zlib; \
+       set stage1-zlib zlib ; @CREATE_LINK_TO_DIR@ 
+@endif zlib
+
+stage1-end::
+       rm -f stage_current
+@if bfd
+       set bfd stage1-bfd ; @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       set opcodes stage1-opcodes ; @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       set binutils stage1-binutils ; @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       set gas stage1-gas ; @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       set gcc stage1-gcc ; @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       set intl stage1-intl ; @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       set ld stage1-ld ; @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       set libcpp stage1-libcpp ; @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libbanshee
+       set libbanshee stage1-libbanshee ; @UNDO_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       set libiberty stage1-libiberty ; @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       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:: 
+       @case `echo all-stage1-*` in \
+         'all-stage1-*') ;; \
+         *) echo Remaking stage 1 ; rm -f all-stage1-* ;; \
+       esac ; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage1
+
+.PHONY: all-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-libbanshee \
+  maybe-all-stage1-libiberty                        \
+  maybe-all-stage1-zlib       
+
+
+maybe-configure-stage1-bfd:
+maybe-all-stage1-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage1-bfd: configure-stage1-bfd
+configure-stage1-bfd: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-bfd/Makefile ] ; then \
+         $(STAMP) configure-stage1-bfd ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in bfd ; \
+       cd bfd || exit 1; \
        case $(srcdir) in \
          \.) \
            srcdiroption="--srcdir=."; \
            libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/libtermcap"; \
-           libsrcdir="$$s/libtermcap";; \
+           srcdiroption="--srcdir=$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/libtermcap"; \
-           libsrcdir="$$s/libtermcap";; \
+           srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
        esac; \
        $(SHELL) $${libsrcdir}/configure \
          $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
-
-.PHONY: all-libtermcap maybe-all-libtermcap
-maybe-all-libtermcap:
-all-libtermcap: configure-libtermcap
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-libtermcap maybe-check-libtermcap
-maybe-check-libtermcap:
-
-check-libtermcap:
-
-
-.PHONY: install-libtermcap maybe-install-libtermcap
-maybe-install-libtermcap:
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-bfd
 
-install-libtermcap: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-utils maybe-configure-utils
-maybe-configure-utils:
-configure-utils:
-       @test ! -f utils/Makefile || exit 0; \
-       [ -d utils ] || mkdir utils; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-bfd
+@endif bfd-bootstrap
+
+maybe-configure-stage1-opcodes:
+maybe-all-stage1-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage1-opcodes: configure-stage1-opcodes
+configure-stage1-opcodes: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-opcodes/Makefile ] ; then \
+         $(STAMP) configure-stage1-opcodes ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       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; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in opcodes ; \
+       cd opcodes || exit 1; \
        case $(srcdir) in \
          \.) \
            srcdiroption="--srcdir=."; \
            libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/utils"; \
-           libsrcdir="$$s/utils";; \
+           srcdiroption="--srcdir=$(srcdir)/opcodes"; \
+           libsrcdir="$$s/opcodes";; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/utils"; \
-           libsrcdir="$$s/utils";; \
+           srcdiroption="--srcdir=../$(srcdir)/opcodes"; \
+           libsrcdir="$$s/opcodes";; \
        esac; \
        $(SHELL) $${libsrcdir}/configure \
          $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
-
-.PHONY: all-utils maybe-all-utils
-maybe-all-utils:
-all-utils: configure-utils
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd utils && $(MAKE) $(FLAGS_TO_PASS) all)
-
-.PHONY: check-utils maybe-check-utils
-maybe-check-utils:
-
-check-utils:
-
-
-.PHONY: install-utils maybe-install-utils
-maybe-install-utils:
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-opcodes
 
-install-utils: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd utils && $(MAKE) $(FLAGS_TO_PASS) install)
-
-
-
-# ---------------------------------------
-# Modules which run on the target machine
-# ---------------------------------------
-
-.PHONY: configure-target-libstdc++-v3 maybe-configure-target-libstdc++-v3
-maybe-configure-target-libstdc++-v3:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
-
-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 ; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-opcodes
+@endif opcodes-bootstrap
+
+maybe-configure-stage1-binutils:
+maybe-all-stage1-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage1-binutils: configure-stage1-binutils
+configure-stage1-binutils: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-binutils/Makefile ] ; then \
+         $(STAMP) configure-stage1-binutils ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in binutils ; \
+       cd binutils || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/binutils"; \
+           libsrcdir="$$s/binutils";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+           libsrcdir="$$s/binutils";; \
        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)" \
-         || 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_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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)
-
-.PHONY: check-target-libstdc++-v3 maybe-check-target-libstdc++-v3
-maybe-check-target-libstdc++-v3:
-
-check-target-libstdc++-v3:
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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)
-
-
-.PHONY: install-target-libstdc++-v3 maybe-install-target-libstdc++-v3
-maybe-install-target-libstdc++-v3:
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-binutils
 
-install-target-libstdc++-v3: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libstdc++-v3 && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.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
-       $(SHELL) $(srcdir)/mkinstalldirs $(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; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/newlib ; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-binutils
+@endif binutils-bootstrap
+
+maybe-configure-stage1-gas:
+maybe-all-stage1-gas:
+
+@if gas-bootstrap
+maybe-configure-stage1-gas: configure-stage1-gas
+configure-stage1-gas: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-gas/Makefile ] ; then \
+         $(STAMP) configure-stage1-gas ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in gas ; \
+       cd gas || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/gas"; \
+           libsrcdir="$$s/gas";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/gas"; \
+           libsrcdir="$$s/gas";; \
        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; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-gas
 
-.PHONY: all-target-newlib maybe-all-target-newlib
-maybe-all-target-newlib:
-all-target-newlib: configure-target-newlib
+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; \
-       $(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:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-gas
+@endif gas-bootstrap
+
+maybe-configure-stage1-gcc:
+maybe-all-stage1-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage1-gcc: configure-stage1-gcc
+configure-stage1-gcc: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-gcc/Makefile ] ; then \
+         $(STAMP) configure-stage1-gcc ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 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} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-gcc
 
-check-target-newlib:
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/newlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
-
-
-.PHONY: install-target-newlib maybe-install-target-newlib
-maybe-install-target-newlib:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)" $(EXTRA_GCC_FLAGS) && \
+       $(STAMP) ../all-stage1-gcc
+@endif gcc-bootstrap
+
+maybe-configure-stage1-intl:
+maybe-all-stage1-intl:
+
+@if intl-bootstrap
+maybe-configure-stage1-intl: configure-stage1-intl
+configure-stage1-intl: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-intl/Makefile ] ; then \
+         $(STAMP) configure-stage1-intl ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 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} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-intl
 
-install-target-newlib: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/newlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-libf2c maybe-configure-target-libf2c
-maybe-configure-target-libf2c:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(TARGET_SUBDIR)/libf2c/multilib.out: multilib.out
-       $(SHELL) $(srcdir)/mkinstalldirs $(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; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libf2c ; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-intl
+@endif intl-bootstrap
+
+maybe-configure-stage1-ld:
+maybe-all-stage1-ld:
+
+@if ld-bootstrap
+maybe-configure-stage1-ld: configure-stage1-ld
+configure-stage1-ld: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-ld/Makefile ] ; then \
+         $(STAMP) configure-stage1-ld ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in ld ; \
+       cd ld || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/ld"; \
+           libsrcdir="$$s/ld";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/ld"; \
+           libsrcdir="$$s/ld";; \
        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
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-ld
 
-.PHONY: all-target-libf2c maybe-all-target-libf2c
-maybe-all-target-libf2c:
-all-target-libf2c: configure-target-libf2c
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libf2c && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-libf2c maybe-check-target-libf2c
-maybe-check-target-libf2c:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-ld
+@endif ld-bootstrap
+
+maybe-configure-stage1-libcpp:
+maybe-all-stage1-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage1-libcpp: configure-stage1-libcpp
+configure-stage1-libcpp: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-libcpp/Makefile ] ; then \
+         $(STAMP) configure-stage1-libcpp ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in libcpp ; \
+       cd libcpp || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-libcpp
 
-check-target-libf2c:
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libf2c && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
-
-
-.PHONY: install-target-libf2c maybe-install-target-libf2c
-maybe-install-target-libf2c:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-libcpp
+@endif libcpp-bootstrap
+
+maybe-configure-stage1-libbanshee:
+maybe-all-stage1-libbanshee:
+
+@if libbanshee-bootstrap
+maybe-configure-stage1-libbanshee: configure-stage1-libbanshee
+configure-stage1-libbanshee: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-libbanshee/Makefile ] ; then \
+         $(STAMP) configure-stage1-libbanshee ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in libbanshee ; \
+       cd libbanshee || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-libbanshee
 
-install-target-libf2c: installdirs
+maybe-all-stage1-libbanshee: all-stage1-libbanshee
+all-stage1-libbanshee: configure-stage1-libbanshee
+       $(MAKE) stage1-start
        @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libf2c && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-libobjc maybe-configure-target-libobjc
-maybe-configure-target-libobjc:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
-
-configure-target-libobjc: $(TARGET_SUBDIR)/libobjc/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libobjc/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libobjc ; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd libbanshee && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-libbanshee
+@endif libbanshee-bootstrap
+
+maybe-configure-stage1-libiberty:
+maybe-all-stage1-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage1-libiberty: configure-stage1-libiberty
+configure-stage1-libiberty: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-libiberty/Makefile ] ; then \
+         $(STAMP) configure-stage1-libiberty ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 in libiberty ; \
+       cd libiberty || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
        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="."; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-libiberty
+
+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 libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-libiberty
+@endif libiberty-bootstrap
+
+maybe-configure-stage1-zlib:
+maybe-all-stage1-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage1-zlib: configure-stage1-zlib
+configure-stage1-zlib: 
+       $(MAKE) stage1-start
+       @if [ -f stage1-zlib/Makefile ] ; then \
+         $(STAMP) configure-stage1-zlib ; \
+         exit 0; \
        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
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       echo Configuring stage 1 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} \
+         --disable-intermodule           --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"  && \
+         $(STAMP) ../configure-stage1-zlib
 
-.PHONY: all-target-libobjc maybe-all-target-libobjc
-maybe-all-target-libobjc:
-all-target-libobjc: configure-target-libobjc
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libobjc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(HOST_EXPORTS)  \
+       cd zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               CFLAGS="$(STAGE1_CFLAGS)"  && \
+       $(STAMP) ../all-stage1-zlib
+@endif zlib-bootstrap
 
-.PHONY: check-target-libobjc maybe-check-target-libobjc
-maybe-check-target-libobjc:
 
-check-target-libobjc:
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libobjc && \
-         $(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
 
 
-.PHONY: install-target-libobjc maybe-install-target-libobjc
-maybe-install-target-libobjc:
 
-install-target-libobjc: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libobjc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
 
+.PHONY: restage1 touch-stage1 distclean-stage1
 
-.PHONY: configure-target-libtermcap maybe-configure-target-libtermcap
-maybe-configure-target-libtermcap:
+# Rules to wipe a stage and all the following ones, used for cleanstrap
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
+distclean-stage1::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf configure-stage1-* all-stage1-* stage1-* 
 
-configure-target-libtermcap: $(TARGET_SUBDIR)/libtermcap/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libtermcap/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libtermcap ; \
+# Rules to renew the timestamp on a stage and all the following ones
+
+touch-stage1::
+       @case `echo configure-stage1-*` in \
+         'configure-stage1-*') ;; \
+         *) \
+           echo '$(STAMP)' configure-stage1-* && \
+           $(STAMP) configure-stage1-* ;; \
+       esac ; \
+       case `echo all-stage1-*` in \
+         'all-stage1-*') ;; \
+         *) \
+           echo '$(STAMP)' all-stage1-* && \
+           $(STAMP) all-stage1-* ;; \
+       esac
+
+# After building a stage, touch the following ones
+
+restage1::
+       rm -rf all-stage1-* 
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS)  all-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
+@if bfd
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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 libbanshee
+       [ -d stage2-libbanshee ] || mkdir stage2-libbanshee; \
+       set stage2-libbanshee libbanshee ; @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libbanshee prev-libbanshee ; @CREATE_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       [ -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
+       [ -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
+       set bfd stage2-bfd ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage1-bfd ; @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       set opcodes stage2-opcodes ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage1-opcodes ; @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       set binutils stage2-binutils ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage1-binutils ; @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       set gas stage2-gas ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage1-gas ; @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       set gcc stage2-gcc ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage1-gcc ; @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       set intl stage2-intl ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage1-intl ; @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       set ld stage2-ld ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage1-ld ; @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       set libcpp stage2-libcpp ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage1-libcpp ; @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libbanshee
+       set libbanshee stage2-libbanshee ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libbanshee stage1-libbanshee ; @UNDO_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       set libiberty stage2-libiberty ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage1-libiberty ; @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       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
+       @case `echo all-stage2-*` in \
+         'all-stage2-*') ;; \
+         *) echo Remaking stage 2 ; rm -f all-stage2-* ;; \
+       esac ; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage2
+
+.PHONY: all-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-libbanshee \
+  maybe-all-stage2-libiberty                        \
+  maybe-all-stage2-zlib       
+
+
+maybe-configure-stage2-bfd:
+maybe-all-stage2-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage2-bfd: configure-stage2-bfd
+configure-stage2-bfd:  maybe-all-stage1-bfd 
+       $(MAKE) stage2-start
+       @if [ -f stage2-bfd/Makefile ] ; then \
+         $(STAMP) configure-stage2-bfd ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in bfd ; \
+       cd bfd || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
        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)" \
-         || exit 1
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-bfd
 
-.PHONY: all-target-libtermcap maybe-all-target-libtermcap
-maybe-all-target-libtermcap:
-all-target-libtermcap: configure-target-libtermcap
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-libtermcap maybe-check-target-libtermcap
-maybe-check-target-libtermcap:
-
-# Dummy target for uncheckable module.
-check-target-libtermcap:
-
-
-.PHONY: install-target-libtermcap maybe-install-target-libtermcap
-maybe-install-target-libtermcap:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-bfd
+@endif bfd-bootstrap
+
+maybe-configure-stage2-opcodes:
+maybe-all-stage2-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage2-opcodes: configure-stage2-opcodes
+configure-stage2-opcodes:  maybe-all-stage1-opcodes 
+       $(MAKE) stage2-start
+       @if [ -f stage2-opcodes/Makefile ] ; then \
+         $(STAMP) configure-stage2-opcodes ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-opcodes
 
-install-target-libtermcap: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libtermcap && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-winsup maybe-configure-target-winsup
-maybe-configure-target-winsup:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-opcodes
+@endif opcodes-bootstrap
+
+maybe-configure-stage2-binutils:
+maybe-all-stage2-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage2-binutils: configure-stage2-binutils
+configure-stage2-binutils:  maybe-all-stage1-binutils 
+       $(MAKE) stage2-start
+       @if [ -f stage2-binutils/Makefile ] ; then \
+         $(STAMP) configure-stage2-binutils ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-binutils
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
+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 binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-binutils
+@endif binutils-bootstrap
+
+maybe-configure-stage2-gas:
+maybe-all-stage2-gas:
+
+@if gas-bootstrap
+maybe-configure-stage2-gas: configure-stage2-gas
+configure-stage2-gas:  maybe-all-stage1-gas 
+       $(MAKE) stage2-start
+       @if [ -f stage2-gas/Makefile ] ; then \
+         $(STAMP) configure-stage2-gas ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-gas
 
-configure-target-winsup: $(TARGET_SUBDIR)/winsup/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/winsup/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/winsup ; \
+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 gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-gas
+@endif gas-bootstrap
+
+maybe-configure-stage2-gcc:
+maybe-all-stage2-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage2-gcc: configure-stage2-gcc
+configure-stage2-gcc:  maybe-all-stage1-gcc 
+       $(MAKE) stage2-start
+       @if [ -f stage2-gcc/Makefile ] ; then \
+         $(STAMP) configure-stage2-gcc ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in gcc ; \
+       cd gcc || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/gcc"; \
+           libsrcdir="$$s/gcc";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/gcc"; \
+           libsrcdir="$$s/gcc";; \
        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)" \
-         || exit 1
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-gcc
 
-.PHONY: all-target-winsup maybe-all-target-winsup
-maybe-all-target-winsup:
-all-target-winsup: configure-target-winsup
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/winsup && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-winsup maybe-check-target-winsup
-maybe-check-target-winsup:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS) && \
+       $(STAMP) ../all-stage2-gcc
+@endif gcc-bootstrap
+
+maybe-configure-stage2-intl:
+maybe-all-stage2-intl:
+
+@if intl-bootstrap
+maybe-configure-stage2-intl: configure-stage2-intl
+configure-stage2-intl:  maybe-all-stage1-intl 
+       $(MAKE) stage2-start
+       @if [ -f stage2-intl/Makefile ] ; then \
+         $(STAMP) configure-stage2-intl ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-intl
 
-check-target-winsup:
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/winsup && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
-
-
-.PHONY: install-target-winsup maybe-install-target-winsup
-maybe-install-target-winsup:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-intl
+@endif intl-bootstrap
+
+maybe-configure-stage2-ld:
+maybe-all-stage2-ld:
+
+@if ld-bootstrap
+maybe-configure-stage2-ld: configure-stage2-ld
+configure-stage2-ld:  maybe-all-stage1-ld 
+       $(MAKE) stage2-start
+       @if [ -f stage2-ld/Makefile ] ; then \
+         $(STAMP) configure-stage2-ld ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-ld
 
-install-target-winsup: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/winsup && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-.PHONY: configure-target-libgloss maybe-configure-target-libgloss
-maybe-configure-target-libgloss:
-
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
-
-configure-target-libgloss: $(TARGET_SUBDIR)/libgloss/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libgloss/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgloss ; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-ld
+@endif ld-bootstrap
+
+maybe-configure-stage2-libcpp:
+maybe-all-stage2-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage2-libcpp: configure-stage2-libcpp
+configure-stage2-libcpp:  maybe-all-stage1-libcpp 
+       $(MAKE) stage2-start
+       @if [ -f stage2-libcpp/Makefile ] ; then \
+         $(STAMP) configure-stage2-libcpp ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in libcpp ; \
+       cd libcpp || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
        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="."; \
-       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
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-libcpp
 
-.PHONY: all-target-libgloss maybe-all-target-libgloss
-maybe-all-target-libgloss:
-all-target-libgloss: configure-target-libgloss
+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; \
-       $(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:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-libcpp
+@endif libcpp-bootstrap
+
+maybe-configure-stage2-libbanshee:
+maybe-all-stage2-libbanshee:
+
+@if libbanshee-bootstrap
+maybe-configure-stage2-libbanshee: configure-stage2-libbanshee
+configure-stage2-libbanshee:  maybe-all-stage1-libbanshee 
+       $(MAKE) stage2-start
+       @if [ -f stage2-libbanshee/Makefile ] ; then \
+         $(STAMP) configure-stage2-libbanshee ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in libbanshee ; \
+       cd libbanshee || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-libbanshee
 
-install-target-libgloss: installdirs
+maybe-all-stage2-libbanshee: all-stage2-libbanshee
+all-stage2-libbanshee: configure-stage2-libbanshee
+       $(MAKE) stage2-start
        @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libiberty ; \
-       rm -f $(TARGET_SUBDIR)/libiberty/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/libiberty/multilib.out
-
-configure-target-libiberty: $(TARGET_SUBDIR)/libiberty/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libiberty/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libiberty ; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd libbanshee && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-libbanshee
+@endif libbanshee-bootstrap
+
+maybe-configure-stage2-libiberty:
+maybe-all-stage2-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage2-libiberty: configure-stage2-libiberty
+configure-stage2-libiberty:  maybe-all-stage1-libiberty 
+       $(MAKE) stage2-start
+       @if [ -f stage2-libiberty/Makefile ] ; then \
+         $(STAMP) configure-stage2-libiberty ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 in libiberty ; \
+       cd libiberty || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
        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="."; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-libiberty
+
+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 libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-libiberty
+@endif libiberty-bootstrap
+
+maybe-configure-stage2-zlib:
+maybe-all-stage2-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage2-zlib: configure-stage2-zlib
+configure-stage2-zlib:  maybe-all-stage1-zlib 
+       $(MAKE) stage2-start
+       @if [ -f stage2-zlib/Makefile ] ; then \
+         $(STAMP) configure-stage2-zlib ; \
+         exit 0; \
        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
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 2 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage2-zlib
 
-.PHONY: all-target-libiberty maybe-all-target-libiberty
-maybe-all-target-libiberty:
-all-target-libiberty: configure-target-libiberty
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libiberty && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage2-zlib
+@endif zlib-bootstrap
 
-.PHONY: check-target-libiberty maybe-check-target-libiberty
-maybe-check-target-libiberty:
 
-check-target-libiberty:
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libiberty && \
-         $(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
 
 
-.PHONY: install-target-libiberty maybe-install-target-libiberty
-maybe-install-target-libiberty:
 
-install-target-libiberty: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libiberty && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+.PHONY: bootstrap2
+bootstrap2: stage2-bubble  all
 
 
-.PHONY: configure-target-gperf maybe-configure-target-gperf
-maybe-configure-target-gperf:
+.PHONY: restage2 touch-stage2 distclean-stage2
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
+# Rules to wipe a stage and all the following ones, used for cleanstrap
+distclean-stage1:: distclean-stage2 
+distclean-stage2::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf configure-stage2-* all-stage2-* stage2-* 
 
-configure-target-gperf: $(TARGET_SUBDIR)/gperf/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/gperf/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/gperf ; \
+# Rules to renew the timestamp on a stage and all the following ones
+touch-stage1:: touch-stage2 
+touch-stage2::
+       @case `echo configure-stage2-*` in \
+         'configure-stage2-*') ;; \
+         *) \
+           echo '$(STAMP)' configure-stage2-* && \
+           $(STAMP) configure-stage2-* ;; \
+       esac ; \
+       case `echo all-stage2-*` in \
+         'all-stage2-*') ;; \
+         *) \
+           echo '$(STAMP)' all-stage2-* && \
+           $(STAMP) all-stage2-* ;; \
+       esac
+
+# After building a stage, touch the following ones
+restage1:: touch-stage2 
+restage2::
+       rm -rf all-stage2-* 
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS)  all-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
+@if bfd
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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 libbanshee
+       [ -d stage3-libbanshee ] || mkdir stage3-libbanshee; \
+       set stage3-libbanshee libbanshee ; @CREATE_LINK_TO_DIR@  ; \
+       set stage2-libbanshee prev-libbanshee ; @CREATE_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       [ -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
+       [ -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
+       set bfd stage3-bfd ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage2-bfd ; @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       set opcodes stage3-opcodes ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage2-opcodes ; @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       set binutils stage3-binutils ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage2-binutils ; @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       set gas stage3-gas ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage2-gas ; @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       set gcc stage3-gcc ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage2-gcc ; @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       set intl stage3-intl ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage2-intl ; @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       set ld stage3-ld ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage2-ld ; @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       set libcpp stage3-libcpp ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage2-libcpp ; @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libbanshee
+       set libbanshee stage3-libbanshee ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libbanshee stage2-libbanshee ; @UNDO_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       set libiberty stage3-libiberty ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage2-libiberty ; @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       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
+       @case `echo all-stage3-*` in \
+         'all-stage3-*') ;; \
+         *) echo Remaking stage 3 ; rm -f all-stage3-* ;; \
+       esac ; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage3
+
+.PHONY: all-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-libbanshee \
+  maybe-all-stage3-libiberty                        \
+  maybe-all-stage3-zlib       
+
+
+maybe-configure-stage3-bfd:
+maybe-all-stage3-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage3-bfd: configure-stage3-bfd
+configure-stage3-bfd:  maybe-all-stage2-bfd 
+       $(MAKE) stage3-start
+       @if [ -f stage3-bfd/Makefile ] ; then \
+         $(STAMP) configure-stage3-bfd ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in bfd ; \
+       cd bfd || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
        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"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-bfd
 
-.PHONY: all-target-gperf maybe-all-target-gperf
-maybe-all-target-gperf:
-all-target-gperf: configure-target-gperf
+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; \
-       $(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:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-bfd
+@endif bfd-bootstrap
+
+maybe-configure-stage3-opcodes:
+maybe-all-stage3-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage3-opcodes: configure-stage3-opcodes
+configure-stage3-opcodes:  maybe-all-stage2-opcodes 
+       $(MAKE) stage3-start
+       @if [ -f stage3-opcodes/Makefile ] ; then \
+         $(STAMP) configure-stage3-opcodes ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-opcodes
 
-check-target-gperf:
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/gperf && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
-
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-opcodes
+@endif opcodes-bootstrap
+
+maybe-configure-stage3-binutils:
+maybe-all-stage3-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage3-binutils: configure-stage3-binutils
+configure-stage3-binutils:  maybe-all-stage2-binutils 
+       $(MAKE) stage3-start
+       @if [ -f stage3-binutils/Makefile ] ; then \
+         $(STAMP) configure-stage3-binutils ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-binutils
 
-.PHONY: install-target-gperf maybe-install-target-gperf
-maybe-install-target-gperf:
+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 binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-binutils
+@endif binutils-bootstrap
+
+maybe-configure-stage3-gas:
+maybe-all-stage3-gas:
+
+@if gas-bootstrap
+maybe-configure-stage3-gas: configure-stage3-gas
+configure-stage3-gas:  maybe-all-stage2-gas 
+       $(MAKE) stage3-start
+       @if [ -f stage3-gas/Makefile ] ; then \
+         $(STAMP) configure-stage3-gas ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-gas
 
-install-target-gperf: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/gperf && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-gas
+@endif gas-bootstrap
+
+maybe-configure-stage3-gcc:
+maybe-all-stage3-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage3-gcc: configure-stage3-gcc
+configure-stage3-gcc:  maybe-all-stage2-gcc 
+       $(MAKE) stage3-start
+       @if [ -f stage3-gcc/Makefile ] ; then \
+         $(STAMP) configure-stage3-gcc ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-gcc
 
+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 gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS) && \
+       $(STAMP) ../all-stage3-gcc
+@endif gcc-bootstrap
+
+maybe-configure-stage3-intl:
+maybe-all-stage3-intl:
+
+@if intl-bootstrap
+maybe-configure-stage3-intl: configure-stage3-intl
+configure-stage3-intl:  maybe-all-stage2-intl 
+       $(MAKE) stage3-start
+       @if [ -f stage3-intl/Makefile ] ; then \
+         $(STAMP) configure-stage3-intl ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-intl
 
-.PHONY: configure-target-examples maybe-configure-target-examples
-maybe-configure-target-examples:
+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 intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-intl
+@endif intl-bootstrap
+
+maybe-configure-stage3-ld:
+maybe-all-stage3-ld:
+
+@if ld-bootstrap
+maybe-configure-stage3-ld: configure-stage3-ld
+configure-stage3-ld:  maybe-all-stage2-ld 
+       $(MAKE) stage3-start
+       @if [ -f stage3-ld/Makefile ] ; then \
+         $(STAMP) configure-stage3-ld ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-ld
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
+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 ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-ld
+@endif ld-bootstrap
+
+maybe-configure-stage3-libcpp:
+maybe-all-stage3-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage3-libcpp: configure-stage3-libcpp
+configure-stage3-libcpp:  maybe-all-stage2-libcpp 
+       $(MAKE) stage3-start
+       @if [ -f stage3-libcpp/Makefile ] ; then \
+         $(STAMP) configure-stage3-libcpp ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in libcpp ; \
+       cd libcpp || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-libcpp
 
-configure-target-examples: $(TARGET_SUBDIR)/examples/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/examples/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/examples ; \
+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 libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-libcpp
+@endif libcpp-bootstrap
+
+maybe-configure-stage3-libbanshee:
+maybe-all-stage3-libbanshee:
+
+@if libbanshee-bootstrap
+maybe-configure-stage3-libbanshee: configure-stage3-libbanshee
+configure-stage3-libbanshee:  maybe-all-stage2-libbanshee 
+       $(MAKE) stage3-start
+       @if [ -f stage3-libbanshee/Makefile ] ; then \
+         $(STAMP) configure-stage3-libbanshee ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in libbanshee ; \
+       cd libbanshee || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
        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
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-libbanshee
 
-.PHONY: all-target-examples maybe-all-target-examples
-maybe-all-target-examples:
-all-target-examples: configure-target-examples
+maybe-all-stage3-libbanshee: all-stage3-libbanshee
+all-stage3-libbanshee: configure-stage3-libbanshee
+       $(MAKE) stage3-start
        @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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
-       $(SHELL) $(srcdir)/mkinstalldirs $(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; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd libbanshee && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-libbanshee
+@endif libbanshee-bootstrap
+
+maybe-configure-stage3-libiberty:
+maybe-all-stage3-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage3-libiberty: configure-stage3-libiberty
+configure-stage3-libiberty:  maybe-all-stage2-libiberty 
+       $(MAKE) stage3-start
+       @if [ -f stage3-libiberty/Makefile ] ; then \
+         $(STAMP) configure-stage3-libiberty ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 in libiberty ; \
+       cd libiberty || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
        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="."; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-libiberty
+
+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 libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-libiberty
+@endif libiberty-bootstrap
+
+maybe-configure-stage3-zlib:
+maybe-all-stage3-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage3-zlib: configure-stage3-zlib
+configure-stage3-zlib:  maybe-all-stage2-zlib 
+       $(MAKE) stage3-start
+       @if [ -f stage3-zlib/Makefile ] ; then \
+         $(STAMP) configure-stage3-zlib ; \
+         exit 0; \
        else \
-         srcdiroption="--srcdir=$${topdir}/libffi"; \
-         libsrcdir="$$s/libffi"; \
-       fi; \
-       rm -f no-such-file || : ; \
-       CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
-         $(TARGET_CONFIGARGS) $${srcdiroption} \
-         --with-target-subdir="$(TARGET_SUBDIR)" \
-         || exit 1
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 3 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage3-zlib
 
-.PHONY: all-target-libffi maybe-all-target-libffi
-maybe-all-target-libffi:
-all-target-libffi: configure-target-libffi
+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 zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage3-zlib
+@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: all-stage3-gcc
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libffi && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+       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
 
-.PHONY: check-target-libffi maybe-check-target-libffi
-maybe-check-target-libffi:
 
-check-target-libffi:
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libffi && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
 
+.PHONY: bootstrap
+bootstrap: stage3-bubble  compare  all
 
-.PHONY: install-target-libffi maybe-install-target-libffi
-maybe-install-target-libffi:
 
-install-target-libffi: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/libffi && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+.PHONY: restage3 touch-stage3 distclean-stage3
 
+# Rules to wipe a stage and all the following ones, used for cleanstrap
+distclean-stage2:: distclean-stage3 
+distclean-stage3::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf configure-stage3-* all-stage3-* stage3-* compare 
 
-.PHONY: configure-target-libjava maybe-configure-target-libjava
-maybe-configure-target-libjava:
+# Rules to renew the timestamp on a stage and all the following ones
+touch-stage2:: touch-stage3 
+touch-stage3::
+       @case `echo configure-stage3-*` in \
+         'configure-stage3-*') ;; \
+         *) \
+           echo '$(STAMP)' configure-stage3-* && \
+           $(STAMP) configure-stage3-* ;; \
+       esac ; \
+       case `echo all-stage3-*` in \
+         'all-stage3-*') ;; \
+         *) \
+           echo '$(STAMP)' all-stage3-* && \
+           $(STAMP) all-stage3-* ;; \
+       esac
+
+# After building a stage, touch the following ones
+restage2:: touch-stage3 
+restage3::
+       rm -rf all-stage3-* compare 
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) compare 
+
+
+.PHONY: cleanstrap
+cleanstrap: distclean-stage1 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
+@if bfd
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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 libbanshee
+       [ -d stage4-libbanshee ] || mkdir stage4-libbanshee; \
+       set stage4-libbanshee libbanshee ; @CREATE_LINK_TO_DIR@  ; \
+       set stage3-libbanshee prev-libbanshee ; @CREATE_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       [ -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
+       [ -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
+       set bfd stage4-bfd ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage3-bfd ; @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       set opcodes stage4-opcodes ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage3-opcodes ; @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       set binutils stage4-binutils ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage3-binutils ; @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       set gas stage4-gas ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage3-gas ; @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       set gcc stage4-gcc ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage3-gcc ; @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       set intl stage4-intl ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage3-intl ; @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       set ld stage4-ld ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage3-ld ; @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       set libcpp stage4-libcpp ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage3-libcpp ; @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libbanshee
+       set libbanshee stage4-libbanshee ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libbanshee stage3-libbanshee ; @UNDO_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       set libiberty stage4-libiberty ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage3-libiberty ; @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       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
+       @case `echo all-stage4-*` in \
+         'all-stage4-*') ;; \
+         *) echo Remaking stage 4 ; rm -f all-stage4-* ;; \
+       esac ; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stage4
+
+.PHONY: all-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-libbanshee \
+  maybe-all-stage4-libiberty                        \
+  maybe-all-stage4-zlib       
+
+
+maybe-configure-stage4-bfd:
+maybe-all-stage4-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stage4-bfd: configure-stage4-bfd
+configure-stage4-bfd:  maybe-all-stage3-bfd 
+       $(MAKE) stage4-start
+       @if [ -f stage4-bfd/Makefile ] ; then \
+         $(STAMP) configure-stage4-bfd ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-bfd
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
+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 bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-bfd
+@endif bfd-bootstrap
+
+maybe-configure-stage4-opcodes:
+maybe-all-stage4-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stage4-opcodes: configure-stage4-opcodes
+configure-stage4-opcodes:  maybe-all-stage3-opcodes 
+       $(MAKE) stage4-start
+       @if [ -f stage4-opcodes/Makefile ] ; then \
+         $(STAMP) configure-stage4-opcodes ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-opcodes
 
-configure-target-libjava: $(TARGET_SUBDIR)/libjava/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/libjava/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libjava ; \
+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 opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-opcodes
+@endif opcodes-bootstrap
+
+maybe-configure-stage4-binutils:
+maybe-all-stage4-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stage4-binutils: configure-stage4-binutils
+configure-stage4-binutils:  maybe-all-stage3-binutils 
+       $(MAKE) stage4-start
+       @if [ -f stage4-binutils/Makefile ] ; then \
+         $(STAMP) configure-stage4-binutils ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in binutils ; \
+       cd binutils || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/binutils"; \
+           libsrcdir="$$s/binutils";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/binutils"; \
+           libsrcdir="$$s/binutils";; \
        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="."; \
-       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
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-binutils
 
-.PHONY: all-target-libjava maybe-all-target-libjava
-maybe-all-target-libjava:
-all-target-libjava: configure-target-libjava
+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; \
-       $(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:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-binutils
+@endif binutils-bootstrap
+
+maybe-configure-stage4-gas:
+maybe-all-stage4-gas:
+
+@if gas-bootstrap
+maybe-configure-stage4-gas: configure-stage4-gas
+configure-stage4-gas:  maybe-all-stage3-gas 
+       $(MAKE) stage4-start
+       @if [ -f stage4-gas/Makefile ] ; then \
+         $(STAMP) configure-stage4-gas ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-gas
 
-check-target-libjava:
+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; \
-       $(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:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-gas
+@endif gas-bootstrap
+
+maybe-configure-stage4-gcc:
+maybe-all-stage4-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stage4-gcc: configure-stage4-gcc
+configure-stage4-gcc:  maybe-all-stage3-gcc 
+       $(MAKE) stage4-start
+       @if [ -f stage4-gcc/Makefile ] ; then \
+         $(STAMP) configure-stage4-gcc ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-gcc
 
-install-target-libjava: installdirs
+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; \
-       $(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
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/zlib ; \
-       rm -f $(TARGET_SUBDIR)/zlib/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/zlib/multilib.out
-
-configure-target-zlib: $(TARGET_SUBDIR)/zlib/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/zlib/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/zlib ; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                $(EXTRA_GCC_FLAGS) && \
+       $(STAMP) ../all-stage4-gcc
+@endif gcc-bootstrap
+
+maybe-configure-stage4-intl:
+maybe-all-stage4-intl:
+
+@if intl-bootstrap
+maybe-configure-stage4-intl: configure-stage4-intl
+configure-stage4-intl:  maybe-all-stage3-intl 
+       $(MAKE) stage4-start
+       @if [ -f stage4-intl/Makefile ] ; then \
+         $(STAMP) configure-stage4-intl ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in intl ; \
+       cd intl || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/intl"; \
+           libsrcdir="$$s/intl";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/intl"; \
+           libsrcdir="$$s/intl";; \
        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
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-intl
 
-.PHONY: all-target-zlib maybe-all-target-zlib
-maybe-all-target-zlib:
-all-target-zlib: configure-target-zlib
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/zlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-intl
+@endif intl-bootstrap
+
+maybe-configure-stage4-ld:
+maybe-all-stage4-ld:
+
+@if ld-bootstrap
+maybe-configure-stage4-ld: configure-stage4-ld
+configure-stage4-ld:  maybe-all-stage3-ld 
+       $(MAKE) stage4-start
+       @if [ -f stage4-ld/Makefile ] ; then \
+         $(STAMP) configure-stage4-ld ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-ld
 
-.PHONY: check-target-zlib maybe-check-target-zlib
-maybe-check-target-zlib:
+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 ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-ld
+@endif ld-bootstrap
+
+maybe-configure-stage4-libcpp:
+maybe-all-stage4-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stage4-libcpp: configure-stage4-libcpp
+configure-stage4-libcpp:  maybe-all-stage3-libcpp 
+       $(MAKE) stage4-start
+       @if [ -f stage4-libcpp/Makefile ] ; then \
+         $(STAMP) configure-stage4-libcpp ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in libcpp ; \
+       cd libcpp || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-libcpp
 
-check-target-zlib:
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/zlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-libcpp
+@endif libcpp-bootstrap
+
+maybe-configure-stage4-libbanshee:
+maybe-all-stage4-libbanshee:
+
+@if libbanshee-bootstrap
+maybe-configure-stage4-libbanshee: configure-stage4-libbanshee
+configure-stage4-libbanshee:  maybe-all-stage3-libbanshee 
+       $(MAKE) stage4-start
+       @if [ -f stage4-libbanshee/Makefile ] ; then \
+         $(STAMP) configure-stage4-libbanshee ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 in libbanshee ; \
+       cd libbanshee || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-libbanshee
 
+maybe-all-stage4-libbanshee: all-stage4-libbanshee
+all-stage4-libbanshee: configure-stage4-libbanshee
+       $(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd libbanshee && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-libbanshee
+@endif libbanshee-bootstrap
+
+maybe-configure-stage4-libiberty:
+maybe-all-stage4-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stage4-libiberty: configure-stage4-libiberty
+configure-stage4-libiberty:  maybe-all-stage3-libiberty 
+       $(MAKE) stage4-start
+       @if [ -f stage4-libiberty/Makefile ] ; then \
+         $(STAMP) configure-stage4-libiberty ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-libiberty
 
-.PHONY: install-target-zlib maybe-install-target-zlib
-maybe-install-target-zlib:
+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 libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-libiberty
+@endif libiberty-bootstrap
+
+maybe-configure-stage4-zlib:
+maybe-all-stage4-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stage4-zlib: configure-stage4-zlib
+configure-stage4-zlib:  maybe-all-stage3-zlib 
+       $(MAKE) stage4-start
+       @if [ -f stage4-zlib/Makefile ] ; then \
+         $(STAMP) configure-stage4-zlib ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage 4 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stage4-zlib
 
-install-target-zlib: installdirs
+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 zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+                 && \
+       $(STAMP) ../all-stage4-zlib
+@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: all-stage4-gcc
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/zlib && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+       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
 
 
-.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
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/boehm-gc ; \
-       rm -f $(TARGET_SUBDIR)/boehm-gc/Makefile || : ; \
-       cp multilib.out $(TARGET_SUBDIR)/boehm-gc/multilib.out
+.PHONY: bootstrap4
+bootstrap4: stage4-bubble  compare3  all
 
-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 ; \
+
+.PHONY: restage4 touch-stage4 distclean-stage4
+
+# Rules to wipe a stage and all the following ones, used for cleanstrap
+distclean-stage3:: distclean-stage4 
+distclean-stage4::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf configure-stage4-* all-stage4-* stage4-* compare3 
+
+# Rules to renew the timestamp on a stage and all the following ones
+touch-stage3:: touch-stage4 
+touch-stage4::
+       @case `echo configure-stage4-*` in \
+         'configure-stage4-*') ;; \
+         *) \
+           echo '$(STAMP)' configure-stage4-* && \
+           $(STAMP) configure-stage4-* ;; \
+       esac ; \
+       case `echo all-stage4-*` in \
+         'all-stage4-*') ;; \
+         *) \
+           echo '$(STAMP)' all-stage4-* && \
+           $(STAMP) all-stage4-* ;; \
+       esac
+
+# After building a stage, touch the following ones
+restage3:: touch-stage4 
+restage4::
+       rm -rf all-stage4-* compare3 
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) 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
+@if bfd
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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 libbanshee
+       [ -d stageprofile-libbanshee ] || mkdir stageprofile-libbanshee; \
+       set stageprofile-libbanshee libbanshee ; @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libbanshee prev-libbanshee ; @CREATE_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       [ -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
+       [ -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
+       set bfd stageprofile-bfd ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage1-bfd ; @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       set opcodes stageprofile-opcodes ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage1-opcodes ; @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       set binutils stageprofile-binutils ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage1-binutils ; @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       set gas stageprofile-gas ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage1-gas ; @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       set gcc stageprofile-gcc ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage1-gcc ; @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       set intl stageprofile-intl ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage1-intl ; @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       set ld stageprofile-ld ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage1-ld ; @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       set libcpp stageprofile-libcpp ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage1-libcpp ; @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libbanshee
+       set libbanshee stageprofile-libbanshee ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libbanshee stage1-libbanshee ; @UNDO_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       set libiberty stageprofile-libiberty ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage1-libiberty ; @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       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
+       @case `echo all-stageprofile-*` in \
+         'all-stageprofile-*') ;; \
+         *) echo Remaking stage profile ; rm -f all-stageprofile-* ;; \
+       esac ; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stageprofile
+
+.PHONY: all-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-libbanshee \
+  maybe-all-stageprofile-libiberty                        \
+  maybe-all-stageprofile-zlib       
+
+
+maybe-configure-stageprofile-bfd:
+maybe-all-stageprofile-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stageprofile-bfd: configure-stageprofile-bfd
+configure-stageprofile-bfd:  maybe-all-stage1-bfd 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-bfd/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-bfd ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in bfd ; \
+       cd bfd || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
        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
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-bfd
 
-.PHONY: all-target-boehm-gc maybe-all-target-boehm-gc
-maybe-all-target-boehm-gc:
-all-target-boehm-gc: configure-target-boehm-gc
+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; \
-       $(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:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-bfd
+@endif bfd-bootstrap
+
+maybe-configure-stageprofile-opcodes:
+maybe-all-stageprofile-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stageprofile-opcodes: configure-stageprofile-opcodes
+configure-stageprofile-opcodes:  maybe-all-stage1-opcodes 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-opcodes/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-opcodes ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-opcodes
 
-check-target-boehm-gc:
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-opcodes
+@endif opcodes-bootstrap
+
+maybe-configure-stageprofile-binutils:
+maybe-all-stageprofile-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stageprofile-binutils: configure-stageprofile-binutils
+configure-stageprofile-binutils:  maybe-all-stage1-binutils 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-binutils/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-binutils ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-binutils
 
+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 binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-binutils
+@endif binutils-bootstrap
+
+maybe-configure-stageprofile-gas:
+maybe-all-stageprofile-gas:
+
+@if gas-bootstrap
+maybe-configure-stageprofile-gas: configure-stageprofile-gas
+configure-stageprofile-gas:  maybe-all-stage1-gas 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-gas/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-gas ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-gas
 
-.PHONY: install-target-boehm-gc maybe-install-target-boehm-gc
-maybe-install-target-boehm-gc:
+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 gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-gas
+@endif gas-bootstrap
+
+maybe-configure-stageprofile-gcc:
+maybe-all-stageprofile-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stageprofile-gcc: configure-stageprofile-gcc
+configure-stageprofile-gcc:  maybe-all-stage1-gcc 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-gcc/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-gcc ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-gcc
 
-install-target-boehm-gc: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/boehm-gc && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate" $(EXTRA_GCC_FLAGS) && \
+       $(STAMP) ../all-stageprofile-gcc
+@endif gcc-bootstrap
+
+maybe-configure-stageprofile-intl:
+maybe-all-stageprofile-intl:
+
+@if intl-bootstrap
+maybe-configure-stageprofile-intl: configure-stageprofile-intl
+configure-stageprofile-intl:  maybe-all-stage1-intl 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-intl/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-intl ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-intl
 
+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 intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-intl
+@endif intl-bootstrap
+
+maybe-configure-stageprofile-ld:
+maybe-all-stageprofile-ld:
+
+@if ld-bootstrap
+maybe-configure-stageprofile-ld: configure-stageprofile-ld
+configure-stageprofile-ld:  maybe-all-stage1-ld 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-ld/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-ld ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-ld
 
-.PHONY: configure-target-qthreads maybe-configure-target-qthreads
-maybe-configure-target-qthreads:
+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 ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-ld
+@endif ld-bootstrap
+
+maybe-configure-stageprofile-libcpp:
+maybe-all-stageprofile-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stageprofile-libcpp: configure-stageprofile-libcpp
+configure-stageprofile-libcpp:  maybe-all-stage1-libcpp 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-libcpp/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-libcpp ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in libcpp ; \
+       cd libcpp || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-libcpp
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
+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 libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-libcpp
+@endif libcpp-bootstrap
+
+maybe-configure-stageprofile-libbanshee:
+maybe-all-stageprofile-libbanshee:
+
+@if libbanshee-bootstrap
+maybe-configure-stageprofile-libbanshee: configure-stageprofile-libbanshee
+configure-stageprofile-libbanshee:  maybe-all-stage1-libbanshee 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-libbanshee/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-libbanshee ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in libbanshee ; \
+       cd libbanshee || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-libbanshee
 
-configure-target-qthreads: $(TARGET_SUBDIR)/qthreads/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/qthreads/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/qthreads ; \
+maybe-all-stageprofile-libbanshee: all-stageprofile-libbanshee
+all-stageprofile-libbanshee: configure-stageprofile-libbanshee
+       $(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd libbanshee && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-libbanshee
+@endif libbanshee-bootstrap
+
+maybe-configure-stageprofile-libiberty:
+maybe-all-stageprofile-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stageprofile-libiberty: configure-stageprofile-libiberty
+configure-stageprofile-libiberty:  maybe-all-stage1-libiberty 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-libiberty/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-libiberty ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile in libiberty ; \
+       cd libiberty || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
        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
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-libiberty
 
-.PHONY: all-target-qthreads maybe-all-target-qthreads
-maybe-all-target-qthreads:
-all-target-qthreads: configure-target-qthreads
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/qthreads && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
-
-.PHONY: check-target-qthreads maybe-check-target-qthreads
-maybe-check-target-qthreads:
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-libiberty
+@endif libiberty-bootstrap
+
+maybe-configure-stageprofile-zlib:
+maybe-all-stageprofile-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stageprofile-zlib: configure-stageprofile-zlib
+configure-stageprofile-zlib:  maybe-all-stage1-zlib 
+       $(MAKE) stageprofile-start
+       @if [ -f stageprofile-zlib/Makefile ] ; then \
+         $(STAMP) configure-stageprofile-zlib ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage profile 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stageprofile-zlib
 
-check-target-qthreads:
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/qthreads && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-generate"  && \
+       $(STAMP) ../all-stageprofile-zlib
+@endif zlib-bootstrap
 
 
-.PHONY: install-target-qthreads maybe-install-target-qthreads
-maybe-install-target-qthreads:
+# 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-qthreads: installdirs
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/qthreads && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
 
 
-.PHONY: configure-target-rda maybe-configure-target-rda
-maybe-configure-target-rda:
 
-# There's only one multilib.out.  Cleverer subdirs shouldn't need it copied.
-$(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
+.PHONY: restageprofile touch-stageprofile distclean-stageprofile
 
-configure-target-rda: $(TARGET_SUBDIR)/rda/multilib.out
-       @test ! -f $(TARGET_SUBDIR)/rda/Makefile || exit 0; \
-       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/rda ; \
+# Rules to wipe a stage and all the following ones, used for cleanstrap
+distclean-stage1:: distclean-stageprofile 
+distclean-stageprofile::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf configure-stageprofile-* all-stageprofile-* stageprofile-* 
+
+# Rules to renew the timestamp on a stage and all the following ones
+touch-stage1:: touch-stageprofile 
+touch-stageprofile::
+       @case `echo configure-stageprofile-*` in \
+         'configure-stageprofile-*') ;; \
+         *) \
+           echo '$(STAMP)' configure-stageprofile-* && \
+           $(STAMP) configure-stageprofile-* ;; \
+       esac ; \
+       case `echo all-stageprofile-*` in \
+         'all-stageprofile-*') ;; \
+         *) \
+           echo '$(STAMP)' all-stageprofile-* && \
+           $(STAMP) all-stageprofile-* ;; \
+       esac
+
+# After building a stage, touch the following ones
+restage1:: touch-stageprofile 
+restageprofile::
+       rm -rf all-stageprofile-* 
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS)  all-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
+@if bfd
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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
+       [ -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 libbanshee
+       [ -d stagefeedback-libbanshee ] || mkdir stagefeedback-libbanshee; \
+       set stagefeedback-libbanshee libbanshee ; @CREATE_LINK_TO_DIR@  ; \
+       set stage1-libbanshee prev-libbanshee ; @CREATE_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       [ -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
+       [ -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
+       set bfd stagefeedback-bfd ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-bfd stage1-bfd ; @UNDO_LINK_TO_DIR@ 
+@endif bfd
+@if opcodes
+       set opcodes stagefeedback-opcodes ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-opcodes stage1-opcodes ; @UNDO_LINK_TO_DIR@ 
+@endif opcodes
+@if binutils
+       set binutils stagefeedback-binutils ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-binutils stage1-binutils ; @UNDO_LINK_TO_DIR@ 
+@endif binutils
+@if gas
+       set gas stagefeedback-gas ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gas stage1-gas ; @UNDO_LINK_TO_DIR@ 
+@endif gas
+@if gcc
+       set gcc stagefeedback-gcc ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-gcc stage1-gcc ; @UNDO_LINK_TO_DIR@ 
+@endif gcc
+@if intl
+       set intl stagefeedback-intl ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-intl stage1-intl ; @UNDO_LINK_TO_DIR@ 
+@endif intl
+@if ld
+       set ld stagefeedback-ld ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-ld stage1-ld ; @UNDO_LINK_TO_DIR@ 
+@endif ld
+@if libcpp
+       set libcpp stagefeedback-libcpp ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libcpp stage1-libcpp ; @UNDO_LINK_TO_DIR@ 
+@endif libcpp
+@if libbanshee
+       set libbanshee stagefeedback-libbanshee ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libbanshee stage1-libbanshee ; @UNDO_LINK_TO_DIR@ 
+@endif libbanshee
+@if libiberty
+       set libiberty stagefeedback-libiberty ; @UNDO_LINK_TO_DIR@  ; \
+       set prev-libiberty stage1-libiberty ; @UNDO_LINK_TO_DIR@ 
+@endif libiberty
+@if zlib
+       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
+       @case `echo all-stagefeedback-*` in \
+         'all-stagefeedback-*') ;; \
+         *) echo Remaking stage feedback ; rm -f all-stagefeedback-* ;; \
+       esac ; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-stagefeedback
+
+.PHONY: all-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-libbanshee \
+  maybe-all-stagefeedback-libiberty                        \
+  maybe-all-stagefeedback-zlib       
+
+
+maybe-configure-stagefeedback-bfd:
+maybe-all-stagefeedback-bfd:
+
+@if bfd-bootstrap
+maybe-configure-stagefeedback-bfd: configure-stagefeedback-bfd
+configure-stagefeedback-bfd:  maybe-all-stage1-bfd 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-bfd/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-bfd ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; 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; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in bfd ; \
+       cd bfd || exit 1; \
        case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           topdir=$(srcdir) ;; \
+           srcdiroption="--srcdir=$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
          *) \
-           case "$(TARGET_SUBDIR)" in \
-             .) topdir="../$(srcdir)" ;; \
-             *) topdir="../../$(srcdir)" ;; \
-           esac ;; \
+           srcdiroption="--srcdir=../$(srcdir)/bfd"; \
+           libsrcdir="$$s/bfd";; \
        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="."; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-bfd
+
+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 bfd && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-bfd
+@endif bfd-bootstrap
+
+maybe-configure-stagefeedback-opcodes:
+maybe-all-stagefeedback-opcodes:
+
+@if opcodes-bootstrap
+maybe-configure-stagefeedback-opcodes: configure-stagefeedback-opcodes
+configure-stagefeedback-opcodes:  maybe-all-stage1-opcodes 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-opcodes/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-opcodes ; \
+         exit 0; \
        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
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-opcodes
 
-.PHONY: all-target-rda maybe-all-target-rda
-maybe-all-target-rda:
-all-target-rda: configure-target-rda
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/rda && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  all)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd opcodes && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-opcodes
+@endif opcodes-bootstrap
+
+maybe-configure-stagefeedback-binutils:
+maybe-all-stagefeedback-binutils:
+
+@if binutils-bootstrap
+maybe-configure-stagefeedback-binutils: configure-stagefeedback-binutils
+configure-stagefeedback-binutils:  maybe-all-stage1-binutils 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-binutils/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-binutils ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-binutils
 
-.PHONY: check-target-rda maybe-check-target-rda
-maybe-check-target-rda:
+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 binutils && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-binutils
+@endif binutils-bootstrap
+
+maybe-configure-stagefeedback-gas:
+maybe-all-stagefeedback-gas:
+
+@if gas-bootstrap
+maybe-configure-stagefeedback-gas: configure-stagefeedback-gas
+configure-stagefeedback-gas:  maybe-all-stage1-gas 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-gas/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-gas ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-gas
 
-check-target-rda:
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/rda && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS)  check)
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd gas && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-gas
+@endif gas-bootstrap
+
+maybe-configure-stagefeedback-gcc:
+maybe-all-stagefeedback-gcc:
+
+@if gcc-bootstrap
+maybe-configure-stagefeedback-gcc: configure-stagefeedback-gcc
+configure-stagefeedback-gcc:  maybe-all-stage1-gcc 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-gcc/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-gcc ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-gcc
 
+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 gcc && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use" $(EXTRA_GCC_FLAGS) && \
+       $(STAMP) ../all-stagefeedback-gcc
+@endif gcc-bootstrap
+
+maybe-configure-stagefeedback-intl:
+maybe-all-stagefeedback-intl:
+
+@if intl-bootstrap
+maybe-configure-stagefeedback-intl: configure-stagefeedback-intl
+configure-stagefeedback-intl:  maybe-all-stage1-intl 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-intl/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-intl ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-intl
 
-.PHONY: install-target-rda maybe-install-target-rda
-maybe-install-target-rda:
+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 intl && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-intl
+@endif intl-bootstrap
+
+maybe-configure-stagefeedback-ld:
+maybe-all-stagefeedback-ld:
+
+@if ld-bootstrap
+maybe-configure-stagefeedback-ld: configure-stagefeedback-ld
+configure-stagefeedback-ld:  maybe-all-stage1-ld 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-ld/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-ld ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-ld
 
-install-target-rda: installdirs
+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; \
-       $(SET_LIB_PATH) \
-       (cd $(TARGET_SUBDIR)/rda && \
-         $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-
-
-# ----------
-# GCC module
-# ----------
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd ld && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-ld
+@endif ld-bootstrap
+
+maybe-configure-stagefeedback-libcpp:
+maybe-all-stagefeedback-libcpp:
+
+@if libcpp-bootstrap
+maybe-configure-stagefeedback-libcpp: configure-stagefeedback-libcpp
+configure-stagefeedback-libcpp:  maybe-all-stage1-libcpp 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-libcpp/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-libcpp ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in libcpp ; \
+       cd libcpp || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libcpp"; \
+           libsrcdir="$$s/libcpp";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-libcpp
 
-# 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.
+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 libcpp && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-libcpp
+@endif libcpp-bootstrap
+
+maybe-configure-stagefeedback-libbanshee:
+maybe-all-stagefeedback-libbanshee:
+
+@if libbanshee-bootstrap
+maybe-configure-stagefeedback-libbanshee: configure-stagefeedback-libbanshee
+configure-stagefeedback-libbanshee:  maybe-all-stage1-libbanshee 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-libbanshee/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-libbanshee ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in libbanshee ; \
+       cd libbanshee || exit 1; \
+       case $(srcdir) in \
+         \.) \
+           srcdiroption="--srcdir=."; \
+           libsrcdir=".";; \
+         /* | [A-Za-z]:[\\/]*) \
+           srcdiroption="--srcdir=$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+         *) \
+           srcdiroption="--srcdir=../$(srcdir)/libbanshee"; \
+           libsrcdir="$$s/libbanshee";; \
+       esac; \
+       $(SHELL) $${libsrcdir}/configure \
+         $(HOST_CONFIGARGS) $${srcdiroption} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-libbanshee
 
-# 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; \
+maybe-all-stagefeedback-libbanshee: all-stagefeedback-libbanshee
+all-stagefeedback-libbanshee: configure-stagefeedback-libbanshee
+       $(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd libbanshee && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-libbanshee
+@endif libbanshee-bootstrap
+
+maybe-configure-stagefeedback-libiberty:
+maybe-all-stagefeedback-libiberty:
+
+@if libiberty-bootstrap
+maybe-configure-stagefeedback-libiberty: configure-stagefeedback-libiberty
+configure-stagefeedback-libiberty:  maybe-all-stage1-libiberty 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-libiberty/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-libiberty ; \
+         exit 0; \
+       else \
+         true ; \
+       fi ; \
        r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       CC="$(CC)"; export CC; \
-       CFLAGS="$(CFLAGS)"; export CFLAGS; \
-       CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-       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; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback in libiberty ; \
+       cd libiberty || exit 1; \
        case $(srcdir) in \
          \.) \
            srcdiroption="--srcdir=."; \
            libsrcdir=".";; \
          /* | [A-Za-z]:[\\/]*) \
-           srcdiroption="--srcdir=$(srcdir)/gcc"; \
-           libsrcdir="$$s/gcc";; \
+           srcdiroption="--srcdir=$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
          *) \
-           srcdiroption="--srcdir=../$(srcdir)/gcc"; \
-           libsrcdir="$$s/gcc";; \
+           srcdiroption="--srcdir=../$(srcdir)/libiberty"; \
+           libsrcdir="$$s/libiberty";; \
        esac; \
        $(SHELL) $${libsrcdir}/configure \
          $(HOST_CONFIGARGS) $${srcdiroption} \
-         || exit 1
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-libiberty
 
-# 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_COMMAND}`; export r; \
-         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) quickstrap); \
+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 libiberty && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-libiberty
+@endif libiberty-bootstrap
+
+maybe-configure-stagefeedback-zlib:
+maybe-all-stagefeedback-zlib:
+
+@if zlib-bootstrap
+maybe-configure-stagefeedback-zlib: configure-stagefeedback-zlib
+configure-stagefeedback-zlib:  maybe-all-stage1-zlib 
+       $(MAKE) stagefeedback-start
+       @if [ -f stagefeedback-zlib/Makefile ] ; then \
+         $(STAMP) configure-stagefeedback-zlib ; \
+         exit 0; \
        else \
-         r=`${PWD_COMMAND}`; export r; \
-         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) all); \
-       fi
+         true ; \
+       fi ; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       echo Configuring stage feedback 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} \
+         @stage2_werror_flag@  && \
+         $(STAMP) ../configure-stagefeedback-zlib
 
-# 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
+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; \
-       $(SET_LIB_PATH) \
-       echo "Bootstrapping the compiler"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s;  \
+       $(STAGE_HOST_EXPORTS)  \
+       cd zlib && \
+       $(MAKE) $(FLAGS_TO_PASS)  \
+               $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               CFLAGS="$(BOOT_CFLAGS) -fprofile-use"  && \
+       $(STAMP) ../all-stagefeedback-zlib
+@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: restagefeedback touch-stagefeedback distclean-stagefeedback
+
+# Rules to wipe a stage and all the following ones, used for cleanstrap
+distclean-stage1:: distclean-stagefeedback 
+distclean-stagefeedback::
+       [ -f stage_current ] && $(MAKE) `cat stage_current`-end || :
+       rm -rf configure-stagefeedback-* all-stagefeedback-* stagefeedback-* 
+
+# Rules to renew the timestamp on a stage and all the following ones
+touch-stage1:: touch-stagefeedback 
+touch-stagefeedback::
+       @case `echo configure-stagefeedback-*` in \
+         'configure-stagefeedback-*') ;; \
+         *) \
+           echo '$(STAMP)' configure-stagefeedback-* && \
+           $(STAMP) configure-stagefeedback-* ;; \
+       esac ; \
+       case `echo all-stagefeedback-*` in \
+         'all-stagefeedback-*') ;; \
+         *) \
+           echo '$(STAMP)' all-stagefeedback-* && \
+           $(STAMP) all-stagefeedback-* ;; \
+       esac
+
+# After building a stage, touch the following ones
+restage1:: touch-stagefeedback 
+restagefeedback::
+       rm -rf all-stagefeedback-* 
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS)  all-stagefeedback 
+
+
+@endif gcc-bootstrap
+
+
+
+stagefeedback-start::
        @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; \
-       $(SET_LIB_PATH) \
-       echo "$$msg"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
-       $(SET_LIB_PATH) \
-       echo "Building runtime libraries"; \
-       $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) all
+       cd stageprofile-gcc && \
+         { find . -type d | sort | sed 's,.*,$(SHELL) '"$$s"'/mkinstalldirs "../gcc/&",' | $(SHELL); } && \
+         { find . -name '*.*da' | sed 's,.*,$(LN) -f "&" "../gcc/&",' | $(SHELL); }
 
-profiledbootstrap: all-bootstrap configure-gcc
+# 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; \
        $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
        echo "Bootstrapping the compiler"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stageprofile_build
+       $(MAKE) stageprofile-bubble distclean-stagefeedback
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \
        $(SET_LIB_PATH) \
@@ -23687,203 +32367,599 @@ profiledbootstrap: all-bootstrap configure-gcc
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(SET_LIB_PATH) \
+       $(HOST_EXPORTS) \
        echo "Building feedback based compiler"; \
-       cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stagefeedback_build
+       $(MAKE) stagefeedback-bubble stagefeedback-end
+@endif gcc-bootstrap
 
-.PHONY: cross
-cross: all-texinfo all-bison all-byacc all-binutils all-gas all-ld
-       @r=`${PWD_COMMAND}`; export r; \
-       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(SET_LIB_PATH) \
-       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; \
-       $(SET_LIB_PATH) \
-       echo "Building runtime libraries"; \
-       $(MAKE) $(BASE_FLAGS_TO_PASS) $(RECURSE_FLAGS) \
-         LANGUAGES="c c++" all
+# --------------------------------------
+# Dependencies between different modules
+# --------------------------------------
 
-.PHONY: check-gcc maybe-check-gcc
-maybe-check-gcc:
-check-gcc:
-       @if [ -f ./gcc/Makefile ] ; then \
-         r=`${PWD_COMMAND}`; export r; \
-         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check); \
-       else \
-         true; \
-       fi
+# Generic dependencies for target modules on host stuff, especially 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; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \
-       else \
-         true; \
-       fi
+configure-target-libstdc++-v3: maybe-all-gcc
 
-.PHONY: check-c++
-check-c++: check-target-libstdc++-v3 check-gcc-c++
+configure-target-libmudflap: maybe-all-gcc
 
-.PHONY: install-gcc maybe-install-gcc
-maybe-install-gcc:
-install-gcc:
-       @if [ -f ./gcc/Makefile ] ; then \
-         r=`${PWD_COMMAND}`; export r; \
-         s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-         $(SET_LIB_PATH) \
-         (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
-       else \
-         true; \
-       fi
+configure-target-newlib: maybe-all-gcc
 
-# 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; \
-         $(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-libgfortran: maybe-all-gcc
+
+configure-target-libobjc: maybe-all-gcc
+
+configure-target-libtermcap: maybe-all-gcc
+
+configure-target-winsup: maybe-all-gcc
+
+configure-target-libgloss: maybe-all-gcc
+
+configure-target-libiberty: maybe-all-gcc
+
+configure-target-gperf: maybe-all-gcc
+
+configure-target-examples: maybe-all-gcc
+
+configure-target-libffi: maybe-all-gcc
+
+configure-target-libjava: maybe-all-gcc
+
+configure-target-zlib: maybe-all-gcc
+
+configure-target-boehm-gc: maybe-all-gcc
+
+configure-target-qthreads: maybe-all-gcc
+
+configure-target-rda: maybe-all-gcc
+
+configure-target-libada: maybe-all-gcc
+
+
+
+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
+
+configure-target-libada: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-libgfortran: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-libffi: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-libjava: maybe-all-target-newlib maybe-all-target-libgloss
+configure-target-libjava: maybe-all-target-libstdc++-v3
+
+configure-target-libobjc: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-libstdc++-v3: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-zlib: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-examples: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-libtermcap: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-rda: maybe-all-target-newlib maybe-all-target-libgloss
+
+configure-target-winsup: maybe-all-target-newlib maybe-all-target-libgloss
+
+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.
-# GCC also needs the information exported by the intl configure script.
-configure-gcc: maybe-configure-intl maybe-configure-binutils maybe-configure-gas maybe-configure-ld maybe-configure-bison maybe-configure-flex
-all-gcc: maybe-all-libiberty maybe-all-intl 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-intl 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-itcl 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
+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-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: maybe-all-libbanshee
+
+all-stage1-gcc: maybe-all-stage1-libbanshee
+all-stage2-gcc: maybe-all-stage2-libbanshee
+all-stage3-gcc: maybe-all-stage3-libbanshee
+all-stage4-gcc: maybe-all-stage4-libbanshee
+all-stageprofile-gcc: maybe-all-stageprofile-libbanshee
+all-stagefeedback-gcc: maybe-all-stagefeedback-libbanshee
+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-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
+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
+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 maybe-all-intl
-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-libbanshee
+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