OSDN Git Service

* pa.h (TARGET_LONG_PIC_SDIFF_CALL): Conditionalize define on
[pf3gnuchains/gcc-fork.git] / Makefile.tpl
index 2d4fe07..6bc461b 100644 (file)
@@ -6,7 +6,7 @@ in
 #
 # Makefile for directory with subdirs to build.
 #   Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-#   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation
+#   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 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
@@ -28,11 +28,17 @@ in
 # -------------------------------
 VPATH=@srcdir@
 
-build_alias=@build_alias@
+build_alias=@build_noncanonical@
+build_vendor=@build_vendor@
+build_os=@build_os@
 build=@build@
-host_alias=@host_alias@
+host_alias=@host_noncanonical@
+host_vendor=@host_vendor@
+host_os=@host_os@
 host=@host@
-target_alias=@target_alias@
+target_alias=@target_noncanonical@
+target_vendor=@target_vendor@
+target_os=@target_os@
 target=@target@
 
 program_transform_name = @program_transform_name@
@@ -55,6 +61,7 @@ oldincludedir = @oldincludedir@
 infodir = @infodir@
 datarootdir = @datarootdir@
 docdir = @docdir@
+pdfdir = @pdfdir@
 htmldir = @htmldir@
 mandir = @mandir@
 man1dir = $(mandir)/man1
@@ -129,7 +136,8 @@ BUILD_EXPORTS = \
        LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \
        NM="$(NM_FOR_BUILD)"; export NM; \
        RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \
-       WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES;
+       WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES; \
+       WINDMC="$(WINDMC_FOR_BUILD)"; export WINDMC;
 
 # This is the list of directories to built for the host system.
 SUBDIRS = @configdirs@
@@ -158,6 +166,7 @@ HOST_EXPORTS = \
        NM="$(NM)"; export NM; \
        RANLIB="$(RANLIB)"; export RANLIB; \
        WINDRES="$(WINDRES)"; export WINDRES; \
+       WINDMC="$(WINDMC)"; export WINDMC; \
        OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \
        OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \
        AR_FOR_TARGET="$(AR_FOR_TARGET)"; export AR_FOR_TARGET; \
@@ -184,7 +193,6 @@ POSTSTAGE1_HOST_EXPORTS = \
          $$r/$(HOST_SUBDIR)/prev-gcc/xgcc$(exeext) \
          -B$$r/$(HOST_SUBDIR)/prev-gcc/ \
          -B$(build_tooldir)/bin/"; export CC_FOR_BUILD; \
-       CFLAGS="$(BOOT_CFLAGS)"; export CFLAGS; \
        LDFLAGS="$(BOOT_LDFLAGS)"; export LDFLAGS;
 
 # Target libraries are put under this directory:
@@ -199,10 +207,10 @@ BASE_TARGET_EXPORTS = \
        AR="$(AR_FOR_TARGET)"; export AR; \
        AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
        CC="$(CC_FOR_TARGET)"; export CC; \
-       CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+       CFLAGS="$(CFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)"; export CFLAGS; \
        CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
        CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
-       CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+       CXXFLAGS="$(CXXFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)"; export CXXFLAGS; \
        GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \
        GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \
        DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
@@ -214,6 +222,7 @@ BASE_TARGET_EXPORTS = \
        RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
        STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
        WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
+       WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
        $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
 
 RAW_CXX_TARGET_EXPORTS = \
@@ -245,10 +254,21 @@ PWD_COMMAND = $${PWDCMD-pwd}
 
 # compilers to use to create programs which must be run in the build
 # environment.
+AR_FOR_BUILD = @AR_FOR_BUILD@
+AS_FOR_BUILD = @AS_FOR_BUILD@
 CC_FOR_BUILD = @CC_FOR_BUILD@
 CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
-
-CXX_FOR_BUILD = $(CXX)
+CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
+CXX_FOR_BUILD = @CXX_FOR_BUILD@
+DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
+GCJ_FOR_BUILD = @GCJ_FOR_BUILD@
+GFORTRAN_FOR_BUILD = @GFORTRAN_FOR_BUILD@
+LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
+LD_FOR_BUILD = @LD_FOR_BUILD@
+NM_FOR_BUILD = @NM_FOR_BUILD@
+RANLIB_FOR_BUILD = @RANLIB_FOR_BUILD@
+WINDMC_FOR_BUILD = @WINDMC_FOR_BUILD@
+WINDRES_FOR_BUILD = @WINDRES_FOR_BUILD@
 
 # Special variables passed down in EXTRA_GCC_FLAGS.  They are defined
 # here so that they can be overridden by Makefile fragments.
@@ -292,9 +312,13 @@ OBJDUMP = @OBJDUMP@
 RANLIB = @RANLIB@
 STRIP = @STRIP@
 WINDRES = @WINDRES@
+WINDMC = @WINDMC@
+
+GNATBIND = @GNATBIND@
+GNATMAKE = @GNATMAKE@
 
 CFLAGS = @CFLAGS@
-LDFLAGS = 
+LDFLAGS = @LDFLAGS@
 LIBCFLAGS = $(CFLAGS)
 CXXFLAGS = @CXXFLAGS@
 LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
@@ -306,10 +330,23 @@ PICFLAG =
 # 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_CHECKING=@stage1_checking@
 STAGE1_LANGUAGES=@stage1_languages@
 
+STAGE1_CFLAGS=@stage1_cflags@
+STAGE2_CFLAGS=$(BOOT_CFLAGS)
+STAGE3_CFLAGS=$(BOOT_CFLAGS)
+STAGE4_CFLAGS=$(BOOT_CFLAGS)
+
+STAGE1_LIBCFLAGS=$(CFLAGS_FOR_TARGET)
+STAGE2_LIBCFLAGS=$(CFLAGS_FOR_TARGET)
+STAGE3_LIBCFLAGS=$(CFLAGS_FOR_TARGET)
+STAGE4_LIBCFLAGS=$(CFLAGS_FOR_TARGET)
+
+do-compare = @do_compare@
+do-compare3 = $(do-compare)
+do-compare-debug = $(SHELL) $(srcdir)/contrib/compare-debug $$f1 $$f2
+
 # -----------------------------------------------
 # Programs producing files for the TARGET machine
 # -----------------------------------------------
@@ -338,18 +375,17 @@ OBJDUMP_FOR_TARGET=@OBJDUMP_FOR_TARGET@
 RANLIB_FOR_TARGET=@RANLIB_FOR_TARGET@
 STRIP_FOR_TARGET=@STRIP_FOR_TARGET@
 WINDRES_FOR_TARGET=@WINDRES_FOR_TARGET@
+WINDMC_FOR_TARGET=@WINDMC_FOR_TARGET@
 
 COMPILER_AS_FOR_TARGET=@COMPILER_AS_FOR_TARGET@
 COMPILER_LD_FOR_TARGET=@COMPILER_LD_FOR_TARGET@
 COMPILER_NM_FOR_TARGET=@COMPILER_NM_FOR_TARGET@
 
-# During gcc bootstrap, if we use some random cc for stage1 then
-# CFLAGS will be just -g.  We want to ensure that TARGET libraries
-# (which we know are built with gcc) are built with optimizations so
-# prepend -O2 when setting CFLAGS_FOR_TARGET.
-CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
+CFLAGS_FOR_TARGET = @CFLAGS_FOR_TARGET@
+CXXFLAGS_FOR_TARGET = @CXXFLAGS_FOR_TARGET@
 SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
+DEBUG_PREFIX_CFLAGS_FOR_TARGET = @DEBUG_PREFIX_CFLAGS_FOR_TARGET@
+
 LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
 LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
 LDFLAGS_FOR_TARGET = 
@@ -425,7 +461,8 @@ EXTRA_HOST_FLAGS = \
        'OBJDUMP=$(OBJDUMP)' \
        'RANLIB=$(RANLIB)' \
        'STRIP=$(STRIP)' \
-       'WINDRES=$(WINDRES)'
+       'WINDRES=$(WINDRES)' \
+       'WINDMC=$(WINDMC)'
 
 FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
 
@@ -445,32 +482,32 @@ X11_FLAGS_TO_PASS = \
 
 POSTSTAGE1_FLAGS_TO_PASS = \
        CC="$${CC}" CC_FOR_BUILD="$${CC_FOR_BUILD}" \
-       STAGE_PREFIX="$$r/$(HOST_SUBDIR)/prev-gcc/" \
-       CFLAGS="$(BOOT_CFLAGS)" \
-       LIBCFLAGS="$(BOOT_CFLAGS)" \
+       GNATBIND="$$r/$(HOST_SUBDIR)/prev-gcc/gnatbind" \
        LDFLAGS="$(BOOT_LDFLAGS)" \
        "`echo 'ADAFLAGS=$(BOOT_ADAFLAGS)' | sed -e s'/[^=][^=]*=$$/XFOO=/'`"
 
 # Flags to pass down to makes which are built with the target environment.
 # The double $ decreases the length of the command line; those variables
 # are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them.  The
-# COMPILER_ prefixed variables are not passed down so we expand them here.
+# *_CFLAGS_FOR_TARGET variables are not passed down and most often empty,
+# so we expand them here.
 EXTRA_TARGET_FLAGS = \
        'AR=$$(AR_FOR_TARGET)' \
        'AS=$(COMPILER_AS_FOR_TARGET)' \
        'CC=$$(CC_FOR_TARGET)' \
-       'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
+       'CFLAGS=$$(CFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)' \
        'CXX=$$(CXX_FOR_TARGET)' \
-       'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
+       'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)' \
        'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
        'LD=$(COMPILER_LD_FOR_TARGET)' \
        'LDFLAGS=$$(LDFLAGS_FOR_TARGET)' \
-       'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
-       'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET)' \
+       'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)' \
+       'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET) $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)' \
        'NM=$(COMPILER_NM_FOR_TARGET)' \
        'OBJDUMP=$$(OBJDUMP_FOR_TARGET)' \
        'RANLIB=$$(RANLIB_FOR_TARGET)' \
-       'WINDRES=$$(WINDRES_FOR_TARGET)'
+       'WINDRES=$$(WINDRES_FOR_TARGET)' \
+       'WINDMC=$$(WINDMC_FOR_TARGET)'
 
 TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
 
@@ -561,7 +598,8 @@ do-[+make_target+]:
 
 # Here are the targets which correspond to the do-X targets.
 
-.PHONY: info installcheck dvi pdf html install-info install-html
+.PHONY: info installcheck dvi pdf html
+.PHONY: install-info install-pdf install-html
 .PHONY: clean distclean mostlyclean maintainer-clean realclean
 .PHONY: local-clean local-distclean local-maintainer-clean
 info: do-info
@@ -580,6 +618,8 @@ install-info: do-install-info dir.info
          $(INSTALL_DATA) dir.info $(DESTDIR)$(infodir)/dir.info ; \
        else true ; fi
 
+install-pdf: do-install-pdf
+
 install-html: do-install-html
 
 local-clean:
@@ -779,7 +819,8 @@ configure-[+prefix+][+module+]: [+ IF bootstrap +][+ ELSE +]
        libsrcdir="$$s/[+module+]"; \
        [+ IF no-config-site +]rm -f no-such-file || : ; \
        CONFIG_SITE=no-such-file [+ ENDIF +]$(SHELL) $${libsrcdir}/configure \
-         [+args+] $${srcdiroption} [+extra_configure_flags+] \
+         [+args+] --build=${build_alias} --host=[+host_alias+] \
+         --target=[+target_alias+] $${srcdiroption} [+extra_configure_flags+] \
          || exit 1
 @endif [+prefix+][+module+]
 
@@ -809,7 +850,11 @@ configure-stage[+id+]-[+prefix+][+module+]:
        fi; \
        [+ ENDIF check_multilibs +]test ! -f [+subdir+]/[+module+]/Makefile || exit 0; \
        [+exports+][+ IF prev +] \
-       [+poststage1_exports+][+ ENDIF prev +] \
+       [+poststage1_exports+][+ ENDIF prev +] [+ IF prefix +] \
+       CFLAGS="[+stage_libcflags+] $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)"; export CFLAGS; \
+       CXXFLAGS="[+stage_libcflags+] $(SYSROOT_CFLAGS_FOR_TARGET) $(DEBUG_PREFIX_CFLAGS_FOR_TARGET)"; export CXXFLAGS; [+ ELSE +] \
+       CFLAGS="[+stage_cflags+]"; export CFLAGS; \
+       CXXFLAGS="[+stage_cflags+]"; export CXXFLAGS; [+ ENDIF +] \
        echo Configuring stage [+id+] in [+subdir+]/[+module+] ; \
        $(SHELL) $(srcdir)/mkinstalldirs [+subdir+]/[+module+] ; \
        cd [+subdir+]/[+module+] || exit 1; \
@@ -821,7 +866,8 @@ configure-stage[+id+]-[+prefix+][+module+]:
        srcdiroption="--srcdir=$${topdir}/[+module+]"; \
        libsrcdir="$$s/[+module+]"; \
        $(SHELL) $${libsrcdir}/configure \
-         [+args+] $${srcdiroption} \
+         [+args+] --build=${build_alias} --host=[+host_alias+] \
+         --target=[+target_alias+] $${srcdiroption} \
          [+ IF prev +]--with-build-libsubdir=$(HOST_SUBDIR)[+ ENDIF prev +] \
          [+stage_configure_flags+] [+extra_configure_flags+]
 @endif [+prefix+][+module+]-bootstrap
@@ -837,7 +883,7 @@ all-[+prefix+][+module+]: stage_current
 @endif gcc-bootstrap
 @if [+prefix+][+module+]
 TARGET-[+prefix+][+module+]=[+
-  IF target +][+target+][+ ELSE +]all[+ ENDIF target +]
+  IF all_target +][+all_target+][+ ELSE +]all[+ ENDIF all_target +]
 maybe-all-[+prefix+][+module+]: all-[+prefix+][+module+]
 all-[+prefix+][+module+]: configure-[+prefix+][+module+][+ IF bootstrap +][+ ELSE +]
        @: $(MAKE); $(unstage)[+ ENDIF bootstrap +]
@@ -845,7 +891,8 @@ all-[+prefix+][+module+]: configure-[+prefix+][+module+][+ IF bootstrap +][+ ELS
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        [+exports+] \
        (cd [+subdir+]/[+module+] && \
-         $(MAKE) [+args+] [+extra_make_flags+] $(TARGET-[+prefix+][+module+]))
+         $(MAKE) $(BASE_FLAGS_TO_PASS) [+args+] [+extra_make_flags+] \
+               $(TARGET-[+prefix+][+module+]))
 @endif [+prefix+][+module+]
 
 [+ IF bootstrap +]
@@ -865,9 +912,13 @@ all-stage[+id+]-[+prefix+][+module+]: configure-stage[+id+]-[+prefix+][+module+]
        [+exports+][+ IF prev +] \
        [+poststage1_exports+][+ ENDIF prev +] \
        cd [+subdir+]/[+module+] && \
-       $(MAKE) [+args+] [+ IF prev
-               +][+poststage1_args+][+ ENDIF prev
-               +] [+stage_make_flags+] [+extra_make_flags+] \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="[+stage_cflags+]" CXXFLAGS="[+stage_cflags+]" \
+               LIBCFLAGS="[+stage_libcflags+]" \
+               CFLAGS_FOR_TARGET="[+stage_libcflags+]" \
+               CXXFLAGS_FOR_TARGET="[+stage_libcflags+]" [+args+] [+
+               IF prev +][+poststage1_args+][+ ENDIF prev
+               +] [+extra_make_flags+] \
                $(TARGET-stage[+id+]-[+prefix+][+module+])
 
 maybe-clean-stage[+id+]-[+prefix+][+module+]: clean-stage[+id+]-[+prefix+][+module+]
@@ -882,7 +933,7 @@ clean-stage[+id+]-[+prefix+][+module+]:
        cd [+subdir+]/[+module+] && \
        $(MAKE) [+args+] [+ IF prev +] \
                [+poststage1_args+] [+ ENDIF prev +] \
-               [+stage_make_flags+] [+extra_make_flags+] clean
+               [+extra_make_flags+] clean
 @endif [+prefix+][+module+]-bootstrap
 
 [+ ENDFOR bootstrap_stage +]
@@ -894,6 +945,8 @@ clean-stage[+id+]-[+prefix+][+module+]:
 # --------------------------------------
 [+ FOR build_modules +]
 [+ configure prefix="build-" subdir="$(BUILD_SUBDIR)" exports="$(BUILD_EXPORTS)"
+            host_alias=(get "host" "${build_alias}")
+            target_alias=(get "target" "${target_alias}")
             args="$(BUILD_CONFIGARGS)" no-config-site=true +]
 
 [+ all prefix="build-" subdir="$(BUILD_SUBDIR)" exports="$(BUILD_EXPORTS)" +]
@@ -906,12 +959,14 @@ clean-stage[+id+]-[+prefix+][+module+]:
 [+ configure prefix="" subdir="$(HOST_SUBDIR)"
             exports="$(HOST_EXPORTS)"
             poststage1_exports="$(POSTSTAGE1_HOST_EXPORTS)"
+            host_alias=(get "host" "${host_alias}")
+            target_alias=(get "target" "${target_alias}")
             args="$(HOST_CONFIGARGS)" +]
 
 [+ all prefix="" subdir="$(HOST_SUBDIR)"
        exports="$(HOST_EXPORTS)"
        poststage1_exports="$(POSTSTAGE1_HOST_EXPORTS)"
-       args="$(FLAGS_TO_PASS)"
+       args="$(EXTRA_HOST_FLAGS)"
        poststage1_args="$(POSTSTAGE1_FLAGS_TO_PASS)" +]
 
 .PHONY: check-[+module+] maybe-check-[+module+]
@@ -986,7 +1041,7 @@ maybe-[+make_target+]-[+module+]: [+make_target+]-[+module+]
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
                  [+make_target+]) \
          || exit 1
 [+ ENDIF +]
@@ -1003,20 +1058,24 @@ maybe-[+make_target+]-[+module+]: [+make_target+]-[+module+]
 [+ configure prefix="target-" subdir="$(TARGET_SUBDIR)"
             check_multilibs=true
             exports="$(RAW_CXX_TARGET_EXPORTS)"
+            host_alias=(get "host" "${target_alias}")
+            target_alias=(get "target" "${target_alias}")
             args="$(TARGET_CONFIGARGS)" no-config-site=true +]
 
 [+ all prefix="target-" subdir="$(TARGET_SUBDIR)"
        exports="$(RAW_CXX_TARGET_EXPORTS)"
-       args="$(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'" +]
+       args="$(EXTRA_TARGET_FLAGS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)'" +]
 [+ ELSE +]
 [+ configure prefix="target-" subdir="$(TARGET_SUBDIR)"
             check_multilibs=true
             exports="$(NORMAL_TARGET_EXPORTS)"
+            host_alias=(get "host" "${target_alias}")
+            target_alias=(get "target" "${target_alias}")
             args="$(TARGET_CONFIGARGS)" no-config-site=true +]
 
 [+ all prefix="target-" subdir="$(TARGET_SUBDIR)"
        exports="$(NORMAL_TARGET_EXPORTS)"
-       args="$(TARGET_FLAGS_TO_PASS)" +]
+       args="$(EXTRA_TARGET_FLAGS)" +]
 [+ ENDIF +]
 
 .PHONY: check-target-[+module+] maybe-check-target-[+module+]
@@ -1098,7 +1157,7 @@ ENDIF raw_cxx +]
          $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
                  "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
                  "RANLIB=$${RANLIB}" \
-                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
                  [+extra_make_flags+] [+make_target+]) \
          || exit 1
 [+ ENDIF +]
@@ -1244,7 +1303,7 @@ stage[+id+]-end:: [+ FOR host_modules +][+ IF bootstrap +]
        fi
        rm -f stage_current
 
-# Bubble a bugfix through all the stages up to stage [+id+].  They are
+# Bubble a bug fix through all the stages up to stage [+id+].  They are
 # remade, but not reconfigured.  The next stage (if any) will not be
 # reconfigured as well.
 .PHONY: stage[+id+]-bubble
@@ -1286,7 +1345,7 @@ do-clean: clean-stage[+id+]
        cd .. ; \
        for file in $${files} ; do \
          f1=$$r/stage[+prev+]-gcc/$$file; f2=$$r/stage[+id+]-gcc/$$file; \
-         @do_compare@ > /dev/null 2>&1; \
+         $(do-[+compare-target+]) > /dev/null 2>&1; \
          if test $$? -eq 1; then \
            case $$file in \
              ./cc*-checksum$(objext) | ./libgcc/* ) \
@@ -1338,12 +1397,21 @@ do-clean: clean-stage[+id+]
 .PHONY: distclean-stage[+id+]
 distclean-stage[+id+]::
        @: $(MAKE); $(stage)
+       @test "`cat stage_last`" != stage[+id+] || rm -f stage_last
        rm -rf stage[+id+]-* [+
          IF compare-target +][+compare-target+] [+ ENDIF compare-target +]
 
 [+ IF cleanstrap-target +]
 .PHONY: [+cleanstrap-target+]
-[+cleanstrap-target+]: distclean [+bootstrap-target+]
+[+cleanstrap-target+]: do-distclean local-clean
+       echo stage[+id+] > stage_final
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(RECURSE_FLAGS_TO_PASS) stage[+id+]-bubble
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(MAKE) $(TARGET_FLAGS_TO_PASS) all-host all-target
 [+ ENDIF cleanstrap-target +]
 @endif gcc-bootstrap
 
@@ -1569,7 +1637,7 @@ config.status: configure
 
 # Rebuilding configure.
 AUTOCONF = autoconf
-$(srcdir)/configure: @MAINT@ $(srcdir)/configure.in $(srcdir)/config/acx.m4
+$(srcdir)/configure: @MAINT@ $(srcdir)/configure.ac $(srcdir)/config/acx.m4
        cd $(srcdir) && $(AUTOCONF)
 
 # ------------------------------