]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Sync toplevel files from gcc
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 1 Oct 2025 23:35:43 +0000 (07:35 +0800)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 1 Oct 2025 23:42:18 +0000 (07:42 +0800)
commit bab1b2488e2a01b311d584bbecbc6834194e30ed
Author: Nicolas Boulenguez <nicolas@debian.org>
Date:   Sun Jun 22 19:23:11 2025 +0200

    Ada: Introduce GNATMAKE_FOR_BUILD Makefile variable

    This gets rid of the hardcoded 'gnatmake' command used during the build.

commit 79091220da796a4b60561a7bf2e9e8f5e5276bc4
Author: Kugan Vivekanandarajah <kvivekananda@nvidia.com>
Date:   Tue Jun 10 09:19:37 2025 +1000

    [AutoFDO] Fix profile bootstrap for x86_64

    This patch fixes profile bootstrap for x86_64 by special
    caseing cpu_type for x86_64 as it shares AUTO_PROFILE
    from i386.

commit fcb60292984fa7181ec91d7f81fd18549d1aaf39
Author: Kugan Vivekanandarajah <kvivekananda@nvidia.com>
Date:   Thu May 29 08:47:19 2025 +1000

    [AUTOFDO] Fix autogen remake issue

    Fix autogen issue introduced by commit
    commit 86dc974cf30f926a014438a5fccdc9d41e26282b

commit 86dc974cf30f926a014438a5fccdc9d41e26282b
Author: Kugan Vivekanandarajah <kvivekananda@nvidia.com>
Date:   Mon May 26 11:41:59 2025 +1000

    [AUTOFDO][AARCH64] Add support for profilebootstrap

    Add support for autoprofiledbootstrap in aarch64.
    This is similar to what is done for i386. Added
    gcc/config/aarch64/gcc-auto-profile for aarch64 profile
    creation.

    How to run:
    configure --with-build-config=bootstrap-lto
    make autoprofiledbootstrap

commit dff727b2c28c52e90e0bd61957d15f907494b245
Author: Stephanos Ioannidis <root@stephanos.io>
Date:   Wed May 21 17:28:36 2025 -0600

    [PATCH] configure: Always add pre-installed header directories to search path

    configure script was adding the target directory flags, including the
    '-B' flags for the executable prefix and the '-isystem' flags for the
    pre-installed header directories, to the target flags only for
    non-Canadian builds under the premise that the host binaries under the
    executable prefix will not be able to execute on the build system for
    Canadian builds.

    While that is true for the '-B' flags specifying the executable prefix,
    the '-isystem' flags specifying the pre-installed header directories are
    not affected by this and do not need special handling.

    This patch updates the configure script to always add the 'include' and
    'sys-include' pre-installed header directories to the target search
    path, in order to ensure that the availability of the pre-installed
    header directories in the search path is consistent across non-Canadian
    and Canadian builds.

    When '--with-headers' flag is specified, this effectively ensures that
    the libc headers, that are copied from the specified header directory to
    the sys-include directory, are used by libstdc++.

commit 6390fc86995fbd5239497cb9e1797a3af51d3936
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date:   Tue Apr 22 13:47:17 2025 +0200

    cobol: Restrict COBOL to supported Linux arches [PR119217]

    The COBOL frontend is currently built on all x86_64 and aarch64 hosts
    although the code contains some Linux/glibc specifics that break the build
    e.g. on Solaris/amd64.

    Tested on Linux/x86_64 and Solaris/amd64.

commit 17ed44c96f6e5c0cc02d8cb29ff5943dd30ab3c1
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Mon Mar 31 07:02:54 2025 +0100

    config, toplevel, Darwin: Pass -B instead of -L to C++ commands.

    Darwin from 10.11 needs embedded rpaths to find the correct libraries at
    runtime.  Recent increases in hardening have made it such that the dynamic
    loader will no longer fall back to using an installed libstdc++ when the
    (new) linked one is not found.  This means we fail configure tests (that
    should pass) for runtimes that use C++.

    We can resolve this by passing '-B' to the C++ command lines instead of '-L'
    (-B implies -L on Darwin, but also causes a corresponding embedded rpath).

commit dcb7009efc5358207d1b0612732a0608915a3ef7
Author: Richard Biener <rguenther@suse.de>
Date:   Fri Mar 28 13:48:36 2025 +0100

    bootstrap/119513 - fix cobol bootstrap with --enable-generated-files-in-srcdir

    This adds gcc/cobol/parse.o to compare_exclusions and makes sure to
    ignore errors when copying generated files, like it's done when
    copying gengtype-lex.cc.

commit 0fb10aca02852b2e8d78a78c07aa2f62aec6a07e
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Tue Mar 25 16:20:58 2025 +0000

    toplevel, libcobol: Add dependency on libquadmath build [PR119244].

    For the configuration of libgcobol to be correct for targets that need
    to use libquadmath for 128b FP support, we must be able to find the
    quadmath library (or not, for targets that have the support in libc).

commit 70bc553e1b565d2e162894ea29a223b44e9133e3
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Sun Mar 23 11:45:17 2025 +0000

    toplevel, Makefile: Add missing CXX_FOR_TARGET export [PR88319].

    Actually, the issue is not local to the libitm case, it currently affects
    any 'cxx=true' top-level configured target library.

    The issue is a missing export of CXX_FOR_TARGET.

commit c650b557cb01f97bebb894aa68e5e74c2147c395
Author: Thomas Schwinge <thomas@codesourcery.com>
Date:   Mon Jul 11 22:36:39 2022 +0200

    GCN, nvptx: Don't default-disable libstdc++ build

    In addition to making libstdc++ itself available, this, via enabling
    'build-gcc/*/libstdc++-v3/scripts/testsuite_flags', in particular also makes
    the standard C++ headers available to 'make check-gcc-c++'.  With that, there
    are a lot of FAIL/UNRESOLVED -> PASS progressions, where we previously ran
    into, for example:

        FAIL: g++.dg/coroutines/co-await-syntax-00-needs-expr.C  (test for errors, line 6)
        FAIL: g++.dg/coroutines/co-await-syntax-00-needs-expr.C (test for excess errors)
        Excess errors:
        [...]/gcc/testsuite/g++.dg/coroutines/coro.h:132:10: fatal error: cstdlib: No such file or directory

    Similarly, there are a lot of FAIL/UNRESOLVED -> UNSUPPORTED "progressions" due
    to 'sorry, unimplemented: exception handling not supported'.

    The 'make check-target-libstdc++-v3' results don't look too bad, either.

    This also reverts Subversion r221362
    (Git commit d94fae044da071381b73a2ee8afa874b14fa3820) "No libstdc++ for nvptx",
    and commit 2f4f3c0e9345805160ecacd6de527b519a8c9206 "No libstdc++ for GCN".

    With libstdc++ now available, libgrust gets enabled, which we in turn again
    have to disable, for 'sorry, unimplemented: exception handling not supported'
    reasons.

commit 09c2a0ab94e1e731433eb2687ad16a9c79617e14
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Tue Mar 11 14:34:01 2025 +0100

    cobol: Fix up libgcobol configure [PR119216]

    Sorry, seems I've screwed up the earlier libgcobol/configure.tgt change.
    Looking in more detail, the way e.g. libsanitizer/configure.tgt works is
    that it is sourced twice, once at toplevel and there it just sets
    UNSUPPORTED=1 for fully unsupported triplets, and then inside of
    libsanitizer/configure where it decides to include or not include the
    various sublibraries depending on the *_SUPPORTED flags.

    So, the following patch attempts to do the same for libgcobol as well.

    The BIULD_LIBGCOBOL automake conditional was unused, this patch guards it
    on LIBGCOBOL_SUPPORTED as well and guards with it
    toolexeclib_LTLIBRARIES  = libgcobol.la

    Also, AM_CFLAGS has been changed to AM_CXXFLAGS as there are just C++
    sources in the library.

commit 6a3f9f30d93c376a8a5e98be888da14923b85e63
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Tue Mar 11 09:56:18 2025 +0000

    configure, Darwin: Require explicit selection of COBOL.

    By defult, Darwin does not have sufficient tools to build COBOL
    so we do not want to include it in --enable-languages=all since
    this will break regular testing of all supported languages.

    However, we do want to be able to build it on demand (where the
    build system has sufficiently new tools) and so do not want to
    disable it permanently.

commit 45c281deb7a2e24a21f2f68a2a3652e30f27f953
Author: James K. Lowden <jklowden@symas.com>
Date:   Mon Mar 10 16:04:49 2025 +0100

    COBOL: config and build machinery

commit ab35fc0d897011c6de075e000d1e0388e6359d4e
Author: Thomas Schwinge <tschwinge@baylibre.com>
Date:   Wed Feb 19 09:30:45 2025 +0100

    GCN, nvptx: Support '--enable-languages=all'

    ..., where "support" means that the build doesn't fail, but it doesn't mean
    that all target libraries get built and we get pretty test results for the
    additional languages.

commit bc3597635a708cd91d742c91c6050829cfb4062a
Author: David Malcolm <dmalcolm@redhat.com>
Date:   Fri Nov 29 18:13:22 2024 -0500

    Rename "libdiagnostics" to "libgdiagnostics"

    "libdiagnostics" clashes with an existing soname in Debian, as
    per:
      https://gcc.gnu.org/pipermail/gcc/2024-November/245175.html

    Rename it to "libgdiagnostics" for uniqueness.

    I am being deliberately vague about what the "g" stands for:
    it could be "gnu", "gcc", or "gpl-licensed" as the reader desires.

commit fc59a3995cb46c190c0efb0431ad204e399975c4
Author: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Date:   Wed May 3 18:43:10 2023 +0200

    gccrs: Fix bootstrap build

    This commit fixes bootstrapping for future additions to libgrust/

commit 7a6906c8d80e437a97c780370a8fec4e00561c7b
Author: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Date:   Mon Jun 12 10:51:49 2023 +0200

    gccrs: Fix missing build dependency

    Fix the missing dependency between the gcc and libgrust.

* Makefile.def: Synced from gcc.
* Makefile.tpl: Likewise.
* configure.ac: Likewise.
* Makefile.in: Regenerated.
* configure: Likewise.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Makefile.def
Makefile.in
Makefile.tpl
configure
configure.ac

index 93485c71ac3f14615e2f81cdaba33d60dc4a7fea..e5b95d7f705f6cdc9f064a6ecf64442ec5bbc819 100644 (file)
@@ -80,7 +80,7 @@ host_modules= { module= gettext; bootstrap=true; no_install=true;
                // need it in some configuratons, which is determined via nontrivial tests.
                // Always enabling pic seems to make sense for something tied to
                // user-facing output.
-                extra_configure_flags='--disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf';
+               extra_configure_flags='--disable-shared --disable-threads --disable-java --disable-csharp --with-pic --disable-libasprintf';
                missing= pdf;
                missing= html;
                missing= info;
@@ -164,7 +164,7 @@ host_modules= { module= libcc1; extra_configure_flags=--enable-shared; };
 host_modules= { module= gotools; };
 host_modules= { module= libctf; bootstrap=true; };
 host_modules= { module= libsframe; bootstrap=true; };
-host_modules= { module= libgrust; };
+host_modules= { module= libgrust; bootstrap=true; };
 
 target_modules = { module= libstdc++-v3;
                   bootstrap=true;
@@ -209,6 +209,7 @@ target_modules = { module= libgomp; bootstrap= true; lib_path=.libs; };
 target_modules = { module= libitm; lib_path=.libs; };
 target_modules = { module= libatomic; bootstrap=true; lib_path=.libs; };
 target_modules = { module= libgrust; };
+target_modules = { module= libgcobol; };
 
 // These are (some of) the make targets to be done in each subdirectory.
 // Not all; these are the ones which don't have special options.
@@ -374,6 +375,7 @@ dependencies = { module=configure-gcc; on=all-ld; };
 dependencies = { module=configure-gcc; on=all-gold; };
 dependencies = { module=configure-gcc; on=all-libiconv; };
 dependencies = { module=all-gcc; on=all-libiberty; hard=true; };
+dependencies = { module=all-gcc; on=all-libgrust; };
 dependencies = { module=all-gcc; on=all-gettext; };
 dependencies = { module=all-gcc; on=all-mpfr; };
 dependencies = { module=all-gcc; on=all-mpc; };
@@ -655,6 +657,7 @@ lang_env_dependencies = { module=libgcc; no_gcc=true; no_c=true; };
 // built newlib on some targets (e.g. Cygwin).  It still needs
 // a dependency on libgcc for native targets to configure.
 lang_env_dependencies = { module=libiberty; no_c=true; };
+lang_env_dependencies = { module=libgcobol; cxx=true; };
 
 dependencies = { module=configure-target-fastjar; on=configure-target-zlib; };
 dependencies = { module=all-target-fastjar; on=all-target-zlib; };
@@ -690,6 +693,8 @@ dependencies = { module=install-target-libvtv; on=install-target-libgcc; };
 dependencies = { module=install-target-libitm; on=install-target-libgcc; };
 dependencies = { module=install-target-libobjc; on=install-target-libgcc; };
 dependencies = { module=install-target-libstdc++-v3; on=install-target-libgcc; };
+dependencies = { module=install-target-libgcobol; on=install-target-libstdc++-v3; };
+dependencies = { module=install-target-libgcobol; on=install-target-libquadmath; };
 
 // Target modules in the 'src' repository.
 lang_env_dependencies = { module=libtermcap; };
@@ -703,6 +708,7 @@ dependencies = { module=configure-target-newlib; on=all-ld; };
 dependencies = { module=configure-target-libgfortran; on=all-target-libquadmath; };
 dependencies = { module=configure-target-libgfortran; on=all-target-libbacktrace; };
 dependencies = { module=configure-target-libgo; on=all-target-libbacktrace; };
+dependencies = { module=configure-target-libgcobol; on=all-target-libquadmath; };
 
 languages = { language=c;      gcc-check-target=check-gcc; };
 languages = { language=c++;    gcc-check-target=check-c++;
@@ -727,6 +733,8 @@ languages = { language=d;   gcc-check-target=check-d;
                                lib-check-target=check-target-libphobos; };
 languages = { language=jit;    gcc-check-target=check-jit; };
 languages = { language=rust;   gcc-check-target=check-rust; };
+languages = { language=cobol;  gcc-check-target=check-cobol;
+                               lib-check-target=check-target-libgcobol; };
 
 // Toplevel bootstrap
 bootstrap_stage = { id=1 ; };
@@ -751,7 +759,7 @@ bootstrap_stage = {
        bootstrap_target=profiledbootstrap ; };
 bootstrap_stage = {
        id=autoprofile ; prev=1 ;
-        autoprofile="$$s/gcc/config/i386/$(AUTO_PROFILE)" ; };
+        autoprofile="$$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE)" ; };
 bootstrap_stage = {
        id=autofeedback ; prev=autoprofile ;
        bootstrap_target=autoprofiledbootstrap ;
index 3b0f6321ffd5372b97118a47592b06f00317a9bb..0b04b71dcdbe2bb254118bbb6fc9e21c12fd3d77 100644 (file)
@@ -204,6 +204,7 @@ HOST_EXPORTS = \
        GOC="$(GOC)"; export GOC; \
        GDC="$(GDC)"; export GDC; \
        GM2="$(GM2)"; export GM2; \
+       GNATMAKE_FOR_BUILD="$(GNATMAKE_FOR_BUILD)"; export GNATMAKE_FOR_BUILD; \
        AR="$(AR)"; export AR; \
        AS="$(AS)"; export AS; \
        CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
@@ -309,6 +310,7 @@ BASE_TARGET_EXPORTS = \
        GOC="$(GOC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GOC; \
        GDC="$(GDC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GDC; \
        GM2="$(GM2_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GM2; \
+       GNATMAKE_FOR_BUILD="$(GNATMAKE_FOR_BUILD)"; export GNATMAKE_FOR_BUILD; \
        DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
        DSYMUTIL="$(DSYMUTIL_FOR_TARGET)"; export DSYMUTIL; \
        LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
@@ -337,6 +339,7 @@ RAW_CXX_TARGET_EXPORTS = \
 
 NORMAL_TARGET_EXPORTS = \
        $(BASE_TARGET_EXPORTS) \
+       CXX_FOR_TARGET="$(CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
        CXX="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX;
 
 # Where to find GMP
@@ -377,6 +380,7 @@ GFORTRAN_FOR_BUILD = @GFORTRAN_FOR_BUILD@
 GOC_FOR_BUILD = @GOC_FOR_BUILD@
 GDC_FOR_BUILD = @GDC_FOR_BUILD@
 GM2_FOR_BUILD = @GM2_FOR_BUILD@
+GNATMAKE_FOR_BUILD = @GNATMAKE_FOR_BUILD@
 LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
 LD_FOR_BUILD = @LD_FOR_BUILD@
 NM_FOR_BUILD = @NM_FOR_BUILD@
@@ -1158,7 +1162,8 @@ configure-target:  \
     maybe-configure-target-libgomp \
     maybe-configure-target-libitm \
     maybe-configure-target-libatomic \
-    maybe-configure-target-libgrust
+    maybe-configure-target-libgrust \
+    maybe-configure-target-libgcobol
 
 # The target built for a native non-bootstrap build.
 .PHONY: all
@@ -1314,7 +1319,9 @@ all-host: maybe-all-libctf
 @if libsframe-no-bootstrap
 all-host: maybe-all-libsframe
 @endif libsframe-no-bootstrap
+@if libgrust-no-bootstrap
 all-host: maybe-all-libgrust
+@endif libgrust-no-bootstrap
 
 .PHONY: all-target
 
@@ -1360,6 +1367,7 @@ all-target: maybe-all-target-libitm
 all-target: maybe-all-target-libatomic
 @endif target-libatomic-no-bootstrap
 all-target: maybe-all-target-libgrust
+all-target: maybe-all-target-libgcobol
 
 # 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
@@ -1458,6 +1466,7 @@ info-target: maybe-info-target-libgomp
 info-target: maybe-info-target-libitm
 info-target: maybe-info-target-libatomic
 info-target: maybe-info-target-libgrust
+info-target: maybe-info-target-libgcobol
 
 .PHONY: do-dvi
 do-dvi:
@@ -1551,6 +1560,7 @@ dvi-target: maybe-dvi-target-libgomp
 dvi-target: maybe-dvi-target-libitm
 dvi-target: maybe-dvi-target-libatomic
 dvi-target: maybe-dvi-target-libgrust
+dvi-target: maybe-dvi-target-libgcobol
 
 .PHONY: do-pdf
 do-pdf:
@@ -1644,6 +1654,7 @@ pdf-target: maybe-pdf-target-libgomp
 pdf-target: maybe-pdf-target-libitm
 pdf-target: maybe-pdf-target-libatomic
 pdf-target: maybe-pdf-target-libgrust
+pdf-target: maybe-pdf-target-libgcobol
 
 .PHONY: do-html
 do-html:
@@ -1737,6 +1748,7 @@ html-target: maybe-html-target-libgomp
 html-target: maybe-html-target-libitm
 html-target: maybe-html-target-libatomic
 html-target: maybe-html-target-libgrust
+html-target: maybe-html-target-libgcobol
 
 .PHONY: do-TAGS
 do-TAGS:
@@ -1830,6 +1842,7 @@ TAGS-target: maybe-TAGS-target-libgomp
 TAGS-target: maybe-TAGS-target-libitm
 TAGS-target: maybe-TAGS-target-libatomic
 TAGS-target: maybe-TAGS-target-libgrust
+TAGS-target: maybe-TAGS-target-libgcobol
 
 .PHONY: do-install-info
 do-install-info:
@@ -1923,6 +1936,7 @@ install-info-target: maybe-install-info-target-libgomp
 install-info-target: maybe-install-info-target-libitm
 install-info-target: maybe-install-info-target-libatomic
 install-info-target: maybe-install-info-target-libgrust
+install-info-target: maybe-install-info-target-libgcobol
 
 .PHONY: do-install-dvi
 do-install-dvi:
@@ -2016,6 +2030,7 @@ install-dvi-target: maybe-install-dvi-target-libgomp
 install-dvi-target: maybe-install-dvi-target-libitm
 install-dvi-target: maybe-install-dvi-target-libatomic
 install-dvi-target: maybe-install-dvi-target-libgrust
+install-dvi-target: maybe-install-dvi-target-libgcobol
 
 .PHONY: do-install-pdf
 do-install-pdf:
@@ -2109,6 +2124,7 @@ install-pdf-target: maybe-install-pdf-target-libgomp
 install-pdf-target: maybe-install-pdf-target-libitm
 install-pdf-target: maybe-install-pdf-target-libatomic
 install-pdf-target: maybe-install-pdf-target-libgrust
+install-pdf-target: maybe-install-pdf-target-libgcobol
 
 .PHONY: do-install-html
 do-install-html:
@@ -2202,6 +2218,7 @@ install-html-target: maybe-install-html-target-libgomp
 install-html-target: maybe-install-html-target-libitm
 install-html-target: maybe-install-html-target-libatomic
 install-html-target: maybe-install-html-target-libgrust
+install-html-target: maybe-install-html-target-libgcobol
 
 .PHONY: do-installcheck
 do-installcheck:
@@ -2295,6 +2312,7 @@ installcheck-target: maybe-installcheck-target-libgomp
 installcheck-target: maybe-installcheck-target-libitm
 installcheck-target: maybe-installcheck-target-libatomic
 installcheck-target: maybe-installcheck-target-libgrust
+installcheck-target: maybe-installcheck-target-libgcobol
 
 .PHONY: do-mostlyclean
 do-mostlyclean:
@@ -2388,6 +2406,7 @@ mostlyclean-target: maybe-mostlyclean-target-libgomp
 mostlyclean-target: maybe-mostlyclean-target-libitm
 mostlyclean-target: maybe-mostlyclean-target-libatomic
 mostlyclean-target: maybe-mostlyclean-target-libgrust
+mostlyclean-target: maybe-mostlyclean-target-libgcobol
 
 .PHONY: do-clean
 do-clean:
@@ -2481,6 +2500,7 @@ clean-target: maybe-clean-target-libgomp
 clean-target: maybe-clean-target-libitm
 clean-target: maybe-clean-target-libatomic
 clean-target: maybe-clean-target-libgrust
+clean-target: maybe-clean-target-libgcobol
 
 .PHONY: do-distclean
 do-distclean:
@@ -2574,6 +2594,7 @@ distclean-target: maybe-distclean-target-libgomp
 distclean-target: maybe-distclean-target-libitm
 distclean-target: maybe-distclean-target-libatomic
 distclean-target: maybe-distclean-target-libgrust
+distclean-target: maybe-distclean-target-libgcobol
 
 .PHONY: do-maintainer-clean
 do-maintainer-clean:
@@ -2667,6 +2688,7 @@ maintainer-clean-target: maybe-maintainer-clean-target-libgomp
 maintainer-clean-target: maybe-maintainer-clean-target-libitm
 maintainer-clean-target: maybe-maintainer-clean-target-libatomic
 maintainer-clean-target: maybe-maintainer-clean-target-libgrust
+maintainer-clean-target: maybe-maintainer-clean-target-libgcobol
 
 
 # Here are the targets which correspond to the do-X targets.
@@ -2817,7 +2839,8 @@ check-target:  \
     maybe-check-target-libgomp \
     maybe-check-target-libitm \
     maybe-check-target-libatomic \
-    maybe-check-target-libgrust
+    maybe-check-target-libgrust \
+    maybe-check-target-libgcobol
 
 do-check:
        @: $(MAKE); $(unstage)
@@ -3014,7 +3037,8 @@ install-target:  \
     maybe-install-target-libgomp \
     maybe-install-target-libitm \
     maybe-install-target-libatomic \
-    maybe-install-target-libgrust
+    maybe-install-target-libgrust \
+    maybe-install-target-libgcobol
 
 uninstall:
        @echo "the uninstall target is not supported in this tree"
@@ -3127,7 +3151,8 @@ install-strip-target:  \
     maybe-install-strip-target-libgomp \
     maybe-install-strip-target-libitm \
     maybe-install-strip-target-libatomic \
-    maybe-install-strip-target-libgrust
+    maybe-install-strip-target-libgrust \
+    maybe-install-strip-target-libgcobol
 
 
 ### other supporting targets
@@ -4245,7 +4270,7 @@ all-stageautoprofile-bfd: configure-stageautoprofile-bfd
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/bfd && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -5385,7 +5410,7 @@ all-stageautoprofile-opcodes: configure-stageautoprofile-opcodes
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/opcodes && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -6525,7 +6550,7 @@ all-stageautoprofile-binutils: configure-stageautoprofile-binutils
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/binutils && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -10011,7 +10036,7 @@ all-stageautoprofile-fixincludes: configure-stageautoprofile-fixincludes
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/fixincludes && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -11591,7 +11616,7 @@ all-stageautoprofile-gas: configure-stageautoprofile-gas
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/gas && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -12740,7 +12765,7 @@ all-stageautoprofile-gcc: configure-stageautoprofile-gcc
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/gcc && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -13889,7 +13914,7 @@ all-stageautoprofile-gmp: configure-stageautoprofile-gmp
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/gmp && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -15026,7 +15051,7 @@ all-stageautoprofile-mpfr: configure-stageautoprofile-mpfr
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/mpfr && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -16163,7 +16188,7 @@ all-stageautoprofile-mpc: configure-stageautoprofile-mpc
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/mpc && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -17300,7 +17325,7 @@ all-stageautoprofile-isl: configure-stageautoprofile-isl
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/isl && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -18428,7 +18453,7 @@ all-stageautoprofile-gold: configure-stageautoprofile-gold
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/gold && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -20513,7 +20538,7 @@ all-stageautoprofile-gettext: configure-stageautoprofile-gettext
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/gettext && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -22423,7 +22448,7 @@ all-stageautoprofile-ld: configure-stageautoprofile-ld
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/ld && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -23563,7 +23588,7 @@ all-stageautoprofile-libbacktrace: configure-stageautoprofile-libbacktrace
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libbacktrace && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -24703,7 +24728,7 @@ all-stageautoprofile-libcpp: configure-stageautoprofile-libcpp
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libcpp && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -25843,7 +25868,7 @@ all-stageautoprofile-libcody: configure-stageautoprofile-libcody
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libcody && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -26832,7 +26857,7 @@ all-stageautoprofile-libdecnumber: configure-stageautoprofile-libdecnumber
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libdecnumber && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -28434,7 +28459,7 @@ all-stageautoprofile-libiberty: configure-stageautoprofile-libiberty
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libiberty && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -29583,7 +29608,7 @@ all-stageautoprofile-libiberty-linker-plugin: configure-stageautoprofile-libiber
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libiberty-linker-plugin && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -30732,7 +30757,7 @@ all-stageautoprofile-libiconv: configure-stageautoprofile-libiconv
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libiconv && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -34104,7 +34129,7 @@ all-stageautoprofile-zlib: configure-stageautoprofile-zlib
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/zlib && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -40295,7 +40320,7 @@ all-stageautoprofile-lto-plugin: configure-stageautoprofile-lto-plugin
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/lto-plugin && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -42371,7 +42396,7 @@ all-stageautoprofile-libctf: configure-stageautoprofile-libctf
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libctf && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -43511,7 +43536,7 @@ all-stageautoprofile-libsframe: configure-stageautoprofile-libsframe
        $(HOST_EXPORTS) \
        $(POSTSTAGE1_HOST_EXPORTS)  \
        cd $(HOST_SUBDIR)/libsframe && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(STAGEautoprofile_CFLAGS)" \
                GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
@@ -43991,7 +44016,6 @@ configure-libgrust: stage_current
 @if libgrust
 maybe-configure-libgrust: configure-libgrust
 configure-libgrust: 
-       @: $(MAKE); $(unstage)
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
@@ -44015,6 +44039,304 @@ configure-libgrust:
 
 
 
+.PHONY: configure-stage1-libgrust maybe-configure-stage1-libgrust
+maybe-configure-stage1-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stage1-libgrust: configure-stage1-libgrust
+configure-stage1-libgrust:
+       @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGE1_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       CFLAGS="$(STAGE1_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGE1_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(LIBCFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage 1 in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+          \
+         $(STAGE1_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+.PHONY: configure-stage2-libgrust maybe-configure-stage2-libgrust
+maybe-configure-stage2-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stage2-libgrust: configure-stage2-libgrust
+configure-stage2-libgrust:
+       @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGE2_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       CFLAGS="$(STAGE2_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGE2_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(STAGE2_CFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage 2 in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+         --with-build-libsubdir=$(HOST_SUBDIR) \
+         $(STAGE2_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+.PHONY: configure-stage3-libgrust maybe-configure-stage3-libgrust
+maybe-configure-stage3-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stage3-libgrust: configure-stage3-libgrust
+configure-stage3-libgrust:
+       @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGE3_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       CFLAGS="$(STAGE3_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGE3_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(STAGE3_CFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage 3 in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+         --with-build-libsubdir=$(HOST_SUBDIR) \
+         $(STAGE3_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+.PHONY: configure-stage4-libgrust maybe-configure-stage4-libgrust
+maybe-configure-stage4-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stage4-libgrust: configure-stage4-libgrust
+configure-stage4-libgrust:
+       @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGE4_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       CFLAGS="$(STAGE4_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGE4_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(STAGE4_CFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage 4 in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+         --with-build-libsubdir=$(HOST_SUBDIR) \
+         $(STAGE4_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+.PHONY: configure-stageprofile-libgrust maybe-configure-stageprofile-libgrust
+maybe-configure-stageprofile-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stageprofile-libgrust: configure-stageprofile-libgrust
+configure-stageprofile-libgrust:
+       @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEprofile_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       CFLAGS="$(STAGEprofile_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGEprofile_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(STAGEprofile_CFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage profile in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+         --with-build-libsubdir=$(HOST_SUBDIR) \
+         $(STAGEprofile_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+.PHONY: configure-stagetrain-libgrust maybe-configure-stagetrain-libgrust
+maybe-configure-stagetrain-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stagetrain-libgrust: configure-stagetrain-libgrust
+configure-stagetrain-libgrust:
+       @[ $(current_stage) = stagetrain ] || $(MAKE) stagetrain-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEtrain_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       CFLAGS="$(STAGEtrain_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGEtrain_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(STAGEtrain_CFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage train in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+         --with-build-libsubdir=$(HOST_SUBDIR) \
+         $(STAGEtrain_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+.PHONY: configure-stagefeedback-libgrust maybe-configure-stagefeedback-libgrust
+maybe-configure-stagefeedback-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stagefeedback-libgrust: configure-stagefeedback-libgrust
+configure-stagefeedback-libgrust:
+       @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEfeedback_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       CFLAGS="$(STAGEfeedback_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGEfeedback_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(STAGEfeedback_CFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage feedback in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+         --with-build-libsubdir=$(HOST_SUBDIR) \
+         $(STAGEfeedback_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+.PHONY: configure-stageautoprofile-libgrust maybe-configure-stageautoprofile-libgrust
+maybe-configure-stageautoprofile-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stageautoprofile-libgrust: configure-stageautoprofile-libgrust
+configure-stageautoprofile-libgrust:
+       @[ $(current_stage) = stageautoprofile ] || $(MAKE) stageautoprofile-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEautoprofile_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       CFLAGS="$(STAGEautoprofile_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGEautoprofile_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(STAGEautoprofile_CFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage autoprofile in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+         --with-build-libsubdir=$(HOST_SUBDIR) \
+         $(STAGEautoprofile_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+.PHONY: configure-stageautofeedback-libgrust maybe-configure-stageautofeedback-libgrust
+maybe-configure-stageautofeedback-libgrust:
+@if libgrust-bootstrap
+maybe-configure-stageautofeedback-libgrust: configure-stageautofeedback-libgrust
+configure-stageautofeedback-libgrust:
+       @[ $(current_stage) = stageautofeedback ] || $(MAKE) stageautofeedback-start
+       @$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEautofeedback_TFLAGS)"; \
+       test ! -f $(HOST_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS) \
+       CFLAGS="$(STAGEautofeedback_CFLAGS)"; export CFLAGS; \
+       CXXFLAGS="$(STAGEautofeedback_CXXFLAGS)"; export CXXFLAGS; \
+       LIBCFLAGS="$(STAGEautofeedback_CFLAGS)"; export LIBCFLAGS;  \
+       echo Configuring stage autofeedback in $(HOST_SUBDIR)/libgrust; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       cd $(HOST_SUBDIR)/libgrust || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(HOST_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       $(SHELL) $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
+         --target=${target_alias} \
+         --with-build-libsubdir=$(HOST_SUBDIR) \
+         $(STAGEautofeedback_CONFIGURE_FLAGS)
+@endif libgrust-bootstrap
+
+
+
 
 
 .PHONY: all-libgrust maybe-all-libgrust
@@ -44026,7 +44348,6 @@ all-libgrust: stage_current
 TARGET-libgrust=all
 maybe-all-libgrust: all-libgrust
 all-libgrust: configure-libgrust
-       @: $(MAKE); $(unstage)
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS)  \
@@ -44037,6 +44358,396 @@ all-libgrust: configure-libgrust
 
 
 
+.PHONY: all-stage1-libgrust maybe-all-stage1-libgrust
+.PHONY: clean-stage1-libgrust maybe-clean-stage1-libgrust
+maybe-all-stage1-libgrust:
+maybe-clean-stage1-libgrust:
+@if libgrust-bootstrap
+maybe-all-stage1-libgrust: all-stage1-libgrust
+all-stage1: all-stage1-libgrust
+TARGET-stage1-libgrust = $(TARGET-libgrust)
+all-stage1-libgrust: configure-stage1-libgrust
+       @[ $(current_stage) = stage1 ] || $(MAKE) stage1-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGE1_TFLAGS)"; \
+       $(HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+        \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGE1_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGE1_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGE1_CXXFLAGS)" \
+               LIBCFLAGS="$(LIBCFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS)  \
+               $(STAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGE1_TFLAGS)"  \
+               $(TARGET-stage1-libgrust)
+
+maybe-clean-stage1-libgrust: clean-stage1-libgrust
+clean-stage1: clean-stage1-libgrust
+clean-stage1-libgrust:
+       @if [ $(current_stage) = stage1 ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stage1-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stage1-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS)  \
+       $(STAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+.PHONY: all-stage2-libgrust maybe-all-stage2-libgrust
+.PHONY: clean-stage2-libgrust maybe-clean-stage2-libgrust
+maybe-all-stage2-libgrust:
+maybe-clean-stage2-libgrust:
+@if libgrust-bootstrap
+maybe-all-stage2-libgrust: all-stage2-libgrust
+all-stage2: all-stage2-libgrust
+TARGET-stage2-libgrust = $(TARGET-libgrust)
+all-stage2-libgrust: configure-stage2-libgrust
+       @[ $(current_stage) = stage2 ] || $(MAKE) stage2-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGE2_TFLAGS)"; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+        \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGE2_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGE2_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGE2_CXXFLAGS)" \
+               LIBCFLAGS="$(STAGE2_CFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGE2_TFLAGS)"  \
+               $(TARGET-stage2-libgrust)
+
+maybe-clean-stage2-libgrust: clean-stage2-libgrust
+clean-stage2: clean-stage2-libgrust
+clean-stage2-libgrust:
+       @if [ $(current_stage) = stage2 ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stage2-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stage2-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+.PHONY: all-stage3-libgrust maybe-all-stage3-libgrust
+.PHONY: clean-stage3-libgrust maybe-clean-stage3-libgrust
+maybe-all-stage3-libgrust:
+maybe-clean-stage3-libgrust:
+@if libgrust-bootstrap
+maybe-all-stage3-libgrust: all-stage3-libgrust
+all-stage3: all-stage3-libgrust
+TARGET-stage3-libgrust = $(TARGET-libgrust)
+all-stage3-libgrust: configure-stage3-libgrust
+       @[ $(current_stage) = stage3 ] || $(MAKE) stage3-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGE3_TFLAGS)"; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+        \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGE3_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGE3_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGE3_CXXFLAGS)" \
+               LIBCFLAGS="$(STAGE3_CFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGE3_TFLAGS)"  \
+               $(TARGET-stage3-libgrust)
+
+maybe-clean-stage3-libgrust: clean-stage3-libgrust
+clean-stage3: clean-stage3-libgrust
+clean-stage3-libgrust:
+       @if [ $(current_stage) = stage3 ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stage3-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stage3-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+.PHONY: all-stage4-libgrust maybe-all-stage4-libgrust
+.PHONY: clean-stage4-libgrust maybe-clean-stage4-libgrust
+maybe-all-stage4-libgrust:
+maybe-clean-stage4-libgrust:
+@if libgrust-bootstrap
+maybe-all-stage4-libgrust: all-stage4-libgrust
+all-stage4: all-stage4-libgrust
+TARGET-stage4-libgrust = $(TARGET-libgrust)
+all-stage4-libgrust: configure-stage4-libgrust
+       @[ $(current_stage) = stage4 ] || $(MAKE) stage4-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGE4_TFLAGS)"; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+        \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGE4_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGE4_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGE4_CXXFLAGS)" \
+               LIBCFLAGS="$(STAGE4_CFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGE4_TFLAGS)"  \
+               $(TARGET-stage4-libgrust)
+
+maybe-clean-stage4-libgrust: clean-stage4-libgrust
+clean-stage4: clean-stage4-libgrust
+clean-stage4-libgrust:
+       @if [ $(current_stage) = stage4 ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stage4-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stage4-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+.PHONY: all-stageprofile-libgrust maybe-all-stageprofile-libgrust
+.PHONY: clean-stageprofile-libgrust maybe-clean-stageprofile-libgrust
+maybe-all-stageprofile-libgrust:
+maybe-clean-stageprofile-libgrust:
+@if libgrust-bootstrap
+maybe-all-stageprofile-libgrust: all-stageprofile-libgrust
+all-stageprofile: all-stageprofile-libgrust
+TARGET-stageprofile-libgrust = $(TARGET-libgrust)
+all-stageprofile-libgrust: configure-stageprofile-libgrust
+       @[ $(current_stage) = stageprofile ] || $(MAKE) stageprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEprofile_TFLAGS)"; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+        \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGEprofile_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGEprofile_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGEprofile_CXXFLAGS)" \
+               LIBCFLAGS="$(STAGEprofile_CFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGEprofile_TFLAGS)"  \
+               $(TARGET-stageprofile-libgrust)
+
+maybe-clean-stageprofile-libgrust: clean-stageprofile-libgrust
+clean-stageprofile: clean-stageprofile-libgrust
+clean-stageprofile-libgrust:
+       @if [ $(current_stage) = stageprofile ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stageprofile-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stageprofile-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+.PHONY: all-stagetrain-libgrust maybe-all-stagetrain-libgrust
+.PHONY: clean-stagetrain-libgrust maybe-clean-stagetrain-libgrust
+maybe-all-stagetrain-libgrust:
+maybe-clean-stagetrain-libgrust:
+@if libgrust-bootstrap
+maybe-all-stagetrain-libgrust: all-stagetrain-libgrust
+all-stagetrain: all-stagetrain-libgrust
+TARGET-stagetrain-libgrust = $(TARGET-libgrust)
+all-stagetrain-libgrust: configure-stagetrain-libgrust
+       @[ $(current_stage) = stagetrain ] || $(MAKE) stagetrain-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEtrain_TFLAGS)"; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+        \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGEtrain_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGEtrain_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGEtrain_CXXFLAGS)" \
+               LIBCFLAGS="$(STAGEtrain_CFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGEtrain_TFLAGS)"  \
+               $(TARGET-stagetrain-libgrust)
+
+maybe-clean-stagetrain-libgrust: clean-stagetrain-libgrust
+clean-stagetrain: clean-stagetrain-libgrust
+clean-stagetrain-libgrust:
+       @if [ $(current_stage) = stagetrain ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stagetrain-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stagetrain-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+.PHONY: all-stagefeedback-libgrust maybe-all-stagefeedback-libgrust
+.PHONY: clean-stagefeedback-libgrust maybe-clean-stagefeedback-libgrust
+maybe-all-stagefeedback-libgrust:
+maybe-clean-stagefeedback-libgrust:
+@if libgrust-bootstrap
+maybe-all-stagefeedback-libgrust: all-stagefeedback-libgrust
+all-stagefeedback: all-stagefeedback-libgrust
+TARGET-stagefeedback-libgrust = $(TARGET-libgrust)
+all-stagefeedback-libgrust: configure-stagefeedback-libgrust
+       @[ $(current_stage) = stagefeedback ] || $(MAKE) stagefeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEfeedback_TFLAGS)"; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+        \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGEfeedback_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGEfeedback_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGEfeedback_CXXFLAGS)" \
+               LIBCFLAGS="$(STAGEfeedback_CFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGEfeedback_TFLAGS)"  \
+               $(TARGET-stagefeedback-libgrust)
+
+maybe-clean-stagefeedback-libgrust: clean-stagefeedback-libgrust
+clean-stagefeedback: clean-stagefeedback-libgrust
+clean-stagefeedback-libgrust:
+       @if [ $(current_stage) = stagefeedback ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stagefeedback-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stagefeedback-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+.PHONY: all-stageautoprofile-libgrust maybe-all-stageautoprofile-libgrust
+.PHONY: clean-stageautoprofile-libgrust maybe-clean-stageautoprofile-libgrust
+maybe-all-stageautoprofile-libgrust:
+maybe-clean-stageautoprofile-libgrust:
+@if libgrust-bootstrap
+maybe-all-stageautoprofile-libgrust: all-stageautoprofile-libgrust
+all-stageautoprofile: all-stageautoprofile-libgrust
+TARGET-stageautoprofile-libgrust = $(TARGET-libgrust)
+all-stageautoprofile-libgrust: configure-stageautoprofile-libgrust
+       @[ $(current_stage) = stageautoprofile ] || $(MAKE) stageautoprofile-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEautoprofile_TFLAGS)"; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGEautoprofile_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGEautoprofile_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGEautoprofile_CXXFLAGS)" \
+               LIBCFLAGS="$(STAGEautoprofile_CFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGEautoprofile_TFLAGS)"  \
+               $(TARGET-stageautoprofile-libgrust)
+
+maybe-clean-stageautoprofile-libgrust: clean-stageautoprofile-libgrust
+clean-stageautoprofile: clean-stageautoprofile-libgrust
+clean-stageautoprofile-libgrust:
+       @if [ $(current_stage) = stageautoprofile ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stageautoprofile-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stageautoprofile-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+.PHONY: all-stageautofeedback-libgrust maybe-all-stageautofeedback-libgrust
+.PHONY: clean-stageautofeedback-libgrust maybe-clean-stageautofeedback-libgrust
+maybe-all-stageautofeedback-libgrust:
+maybe-clean-stageautofeedback-libgrust:
+@if libgrust-bootstrap
+maybe-all-stageautofeedback-libgrust: all-stageautofeedback-libgrust
+all-stageautofeedback: all-stageautofeedback-libgrust
+TARGET-stageautofeedback-libgrust = $(TARGET-libgrust)
+all-stageautofeedback-libgrust: configure-stageautofeedback-libgrust
+       @[ $(current_stage) = stageautofeedback ] || $(MAKE) stageautofeedback-start
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       TFLAGS="$(STAGEautofeedback_TFLAGS)"; \
+       $(HOST_EXPORTS) \
+       $(POSTSTAGE1_HOST_EXPORTS)  \
+       cd $(HOST_SUBDIR)/libgrust && \
+        \
+       $(MAKE) $(BASE_FLAGS_TO_PASS) \
+               CFLAGS="$(STAGEautofeedback_CFLAGS)" \
+               GENERATOR_CFLAGS="$(STAGEautofeedback_GENERATOR_CFLAGS)" \
+               CXXFLAGS="$(STAGEautofeedback_CXXFLAGS)" \
+               LIBCFLAGS="$(STAGEautofeedback_CFLAGS)" \
+               CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+               CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+               LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+               $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  \
+               TFLAGS="$(STAGEautofeedback_TFLAGS)" PERF_DATA=perf.data \
+               $(TARGET-stageautofeedback-libgrust)
+
+maybe-clean-stageautofeedback-libgrust: clean-stageautofeedback-libgrust
+clean-stageautofeedback: clean-stageautofeedback-libgrust
+clean-stageautofeedback-libgrust:
+       @if [ $(current_stage) = stageautofeedback ]; then \
+         [ -f $(HOST_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       else \
+         [ -f $(HOST_SUBDIR)/stageautofeedback-libgrust/Makefile ] || exit 0; \
+         $(MAKE) stageautofeedback-start; \
+       fi; \
+       cd $(HOST_SUBDIR)/libgrust && \
+       $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS)  clean
+@endif libgrust-bootstrap
+
+
+
+
 
 .PHONY: check-libgrust maybe-check-libgrust
 maybe-check-libgrust:
@@ -44047,9 +44758,9 @@ check-libgrust:
        @: $(MAKE); $(unstage)
        @r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
-       $(HOST_EXPORTS)  \
+       $(HOST_EXPORTS) $(EXTRA_HOST_EXPORTS) \
        (cd $(HOST_SUBDIR)/libgrust && \
-         $(MAKE) $(FLAGS_TO_PASS)  check)
+         $(MAKE) $(FLAGS_TO_PASS)  $(EXTRA_BOOTSTRAP_FLAGS) check)
 
 @endif libgrust
 
@@ -44092,7 +44803,6 @@ maybe-info-libgrust: info-libgrust
 
 info-libgrust: \
     configure-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44118,7 +44828,6 @@ maybe-dvi-libgrust: dvi-libgrust
 
 dvi-libgrust: \
     configure-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44144,7 +44853,6 @@ maybe-pdf-libgrust: pdf-libgrust
 
 pdf-libgrust: \
     configure-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44170,7 +44878,6 @@ maybe-html-libgrust: html-libgrust
 
 html-libgrust: \
     configure-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44196,7 +44903,6 @@ maybe-TAGS-libgrust: TAGS-libgrust
 
 TAGS-libgrust: \
     configure-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44223,7 +44929,6 @@ maybe-install-info-libgrust: install-info-libgrust
 install-info-libgrust: \
     configure-libgrust \
     info-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44250,7 +44955,6 @@ maybe-install-dvi-libgrust: install-dvi-libgrust
 install-dvi-libgrust: \
     configure-libgrust \
     dvi-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44277,7 +44981,6 @@ maybe-install-pdf-libgrust: install-pdf-libgrust
 install-pdf-libgrust: \
     configure-libgrust \
     pdf-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44304,7 +45007,6 @@ maybe-install-html-libgrust: install-html-libgrust
 install-html-libgrust: \
     configure-libgrust \
     html-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44330,7 +45032,6 @@ maybe-installcheck-libgrust: installcheck-libgrust
 
 installcheck-libgrust: \
     configure-libgrust 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44355,7 +45056,6 @@ maybe-mostlyclean-libgrust:
 maybe-mostlyclean-libgrust: mostlyclean-libgrust
 
 mostlyclean-libgrust: 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44380,7 +45080,6 @@ maybe-clean-libgrust:
 maybe-clean-libgrust: clean-libgrust
 
 clean-libgrust: 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44405,7 +45104,6 @@ maybe-distclean-libgrust:
 maybe-distclean-libgrust: distclean-libgrust
 
 distclean-libgrust: 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -44430,7 +45128,6 @@ maybe-maintainer-clean-libgrust:
 maybe-maintainer-clean-libgrust: maintainer-clean-libgrust
 
 maintainer-clean-libgrust: 
-       @: $(MAKE); $(unstage)
        @[ -f ./libgrust/Makefile ] || exit 0; \
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
@@ -45241,7 +45938,7 @@ all-stageautoprofile-target-libstdc++-v3: configure-stageautoprofile-target-libs
        $(RAW_CXX_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/libstdc++-v3 && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -46511,7 +47208,7 @@ all-stageautoprofile-target-libsanitizer: configure-stageautoprofile-target-libs
        $(RAW_CXX_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/libsanitizer && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -47781,7 +48478,7 @@ all-stageautoprofile-target-libvtv: configure-stageautoprofile-target-libvtv
        $(RAW_CXX_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/libvtv && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -50021,7 +50718,7 @@ all-stageautoprofile-target-libgcc: configure-stageautoprofile-target-libgcc
        $(NORMAL_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/libgcc && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -51253,7 +51950,7 @@ all-stageautoprofile-target-libbacktrace: configure-stageautoprofile-target-libb
        $(NORMAL_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/libbacktrace && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -54430,7 +55127,7 @@ all-stageautoprofile-target-libphobos: configure-stageautoprofile-target-libphob
        $(NORMAL_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/libphobos && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -57560,7 +58257,7 @@ all-stageautoprofile-target-zlib: configure-stageautoprofile-target-zlib
        $(NORMAL_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/zlib && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -60285,7 +60982,7 @@ all-stageautoprofile-target-libgomp: configure-stageautoprofile-target-libgomp
        $(NORMAL_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/libgomp && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -62040,7 +62737,7 @@ all-stageautoprofile-target-libatomic: configure-stageautoprofile-target-libatom
        $(NORMAL_TARGET_EXPORTS) \
          \
        cd $(TARGET_SUBDIR)/libatomic && \
-       $$s/gcc/config/i386/$(AUTO_PROFILE) \
+       $$s/gcc/config/$(cpu_type)/$(AUTO_PROFILE) \
        $(MAKE) $(BASE_FLAGS_TO_PASS) \
                CFLAGS="$(CFLAGS_FOR_TARGET)" \
                CXXFLAGS="$(CXXFLAGS_FOR_TARGET)" \
@@ -63010,6 +63707,491 @@ maintainer-clean-target-libgrust:
 
 
 
+
+
+.PHONY: configure-target-libgcobol maybe-configure-target-libgcobol
+maybe-configure-target-libgcobol:
+@if gcc-bootstrap
+configure-target-libgcobol: stage_current
+@endif gcc-bootstrap
+@if target-libgcobol
+maybe-configure-target-libgcobol: configure-target-libgcobol
+configure-target-libgcobol: 
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       echo "Checking multilib configuration for libgcobol..."; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgcobol; \
+       $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libgcobol/multilib.tmp 2> /dev/null; \
+       if test -r $(TARGET_SUBDIR)/libgcobol/multilib.out; then \
+         if cmp -s $(TARGET_SUBDIR)/libgcobol/multilib.tmp $(TARGET_SUBDIR)/libgcobol/multilib.out; then \
+           rm -f $(TARGET_SUBDIR)/libgcobol/multilib.tmp; \
+         else \
+           rm -f $(TARGET_SUBDIR)/libgcobol/Makefile; \
+           mv $(TARGET_SUBDIR)/libgcobol/multilib.tmp $(TARGET_SUBDIR)/libgcobol/multilib.out; \
+         fi; \
+       else \
+         mv $(TARGET_SUBDIR)/libgcobol/multilib.tmp $(TARGET_SUBDIR)/libgcobol/multilib.out; \
+       fi; \
+       test ! -f $(TARGET_SUBDIR)/libgcobol/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgcobol; \
+       $(NORMAL_TARGET_EXPORTS)  \
+       echo Configuring in $(TARGET_SUBDIR)/libgcobol; \
+       cd "$(TARGET_SUBDIR)/libgcobol" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libgcobol/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgcobol; \
+       rm -f no-such-file || : ; \
+       CONFIG_SITE=no-such-file $(SHELL) \
+         $$s/$$module_srcdir/configure \
+         --srcdir=$${topdir}/$$module_srcdir \
+         $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
+         --target=${target_alias}  \
+         || exit 1
+@endif target-libgcobol
+
+
+
+
+
+.PHONY: all-target-libgcobol maybe-all-target-libgcobol
+maybe-all-target-libgcobol:
+@if gcc-bootstrap
+all-target-libgcobol: stage_current
+@endif gcc-bootstrap
+@if target-libgcobol
+TARGET-target-libgcobol=all
+maybe-all-target-libgcobol: all-target-libgcobol
+all-target-libgcobol: configure-target-libgcobol
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS)  \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)   \
+               $(TARGET-target-libgcobol))
+@endif target-libgcobol
+
+
+
+
+
+.PHONY: check-target-libgcobol maybe-check-target-libgcobol
+maybe-check-target-libgcobol:
+@if target-libgcobol
+maybe-check-target-libgcobol: check-target-libgcobol
+
+check-target-libgcobol:
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
+
+@endif target-libgcobol
+
+.PHONY: install-target-libgcobol maybe-install-target-libgcobol
+maybe-install-target-libgcobol:
+@if target-libgcobol
+maybe-install-target-libgcobol: install-target-libgcobol
+
+install-target-libgcobol: installdirs
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
+
+@endif target-libgcobol
+
+.PHONY: install-strip-target-libgcobol maybe-install-strip-target-libgcobol
+maybe-install-strip-target-libgcobol:
+@if target-libgcobol
+maybe-install-strip-target-libgcobol: install-strip-target-libgcobol
+
+install-strip-target-libgcobol: installdirs
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install-strip)
+
+@endif target-libgcobol
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-target-libgcobol info-target-libgcobol
+maybe-info-target-libgcobol:
+@if target-libgcobol
+maybe-info-target-libgcobol: info-target-libgcobol
+
+info-target-libgcobol: \
+    configure-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  info) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-dvi-target-libgcobol dvi-target-libgcobol
+maybe-dvi-target-libgcobol:
+@if target-libgcobol
+maybe-dvi-target-libgcobol: dvi-target-libgcobol
+
+dvi-target-libgcobol: \
+    configure-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  dvi) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-pdf-target-libgcobol pdf-target-libgcobol
+maybe-pdf-target-libgcobol:
+@if target-libgcobol
+maybe-pdf-target-libgcobol: pdf-target-libgcobol
+
+pdf-target-libgcobol: \
+    configure-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing pdf in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  pdf) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-html-target-libgcobol html-target-libgcobol
+maybe-html-target-libgcobol:
+@if target-libgcobol
+maybe-html-target-libgcobol: html-target-libgcobol
+
+html-target-libgcobol: \
+    configure-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  html) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-TAGS-target-libgcobol TAGS-target-libgcobol
+maybe-TAGS-target-libgcobol:
+@if target-libgcobol
+maybe-TAGS-target-libgcobol: TAGS-target-libgcobol
+
+TAGS-target-libgcobol: \
+    configure-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  TAGS) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-install-info-target-libgcobol install-info-target-libgcobol
+maybe-install-info-target-libgcobol:
+@if target-libgcobol
+maybe-install-info-target-libgcobol: install-info-target-libgcobol
+
+install-info-target-libgcobol: \
+    configure-target-libgcobol \
+    info-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-info in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  install-info) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-install-dvi-target-libgcobol install-dvi-target-libgcobol
+maybe-install-dvi-target-libgcobol:
+@if target-libgcobol
+maybe-install-dvi-target-libgcobol: install-dvi-target-libgcobol
+
+install-dvi-target-libgcobol: \
+    configure-target-libgcobol \
+    dvi-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-dvi in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  install-dvi) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-install-pdf-target-libgcobol install-pdf-target-libgcobol
+maybe-install-pdf-target-libgcobol:
+@if target-libgcobol
+maybe-install-pdf-target-libgcobol: install-pdf-target-libgcobol
+
+install-pdf-target-libgcobol: \
+    configure-target-libgcobol \
+    pdf-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-pdf in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  install-pdf) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-install-html-target-libgcobol install-html-target-libgcobol
+maybe-install-html-target-libgcobol:
+@if target-libgcobol
+maybe-install-html-target-libgcobol: install-html-target-libgcobol
+
+install-html-target-libgcobol: \
+    configure-target-libgcobol \
+    html-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing install-html in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  install-html) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-installcheck-target-libgcobol installcheck-target-libgcobol
+maybe-installcheck-target-libgcobol:
+@if target-libgcobol
+maybe-installcheck-target-libgcobol: installcheck-target-libgcobol
+
+installcheck-target-libgcobol: \
+    configure-target-libgcobol 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  installcheck) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-mostlyclean-target-libgcobol mostlyclean-target-libgcobol
+maybe-mostlyclean-target-libgcobol:
+@if target-libgcobol
+maybe-mostlyclean-target-libgcobol: mostlyclean-target-libgcobol
+
+mostlyclean-target-libgcobol: 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  mostlyclean) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-clean-target-libgcobol clean-target-libgcobol
+maybe-clean-target-libgcobol:
+@if target-libgcobol
+maybe-clean-target-libgcobol: clean-target-libgcobol
+
+clean-target-libgcobol: 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  clean) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-distclean-target-libgcobol distclean-target-libgcobol
+maybe-distclean-target-libgcobol:
+@if target-libgcobol
+maybe-distclean-target-libgcobol: distclean-target-libgcobol
+
+distclean-target-libgcobol: 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  distclean) \
+         || exit 1
+
+@endif target-libgcobol
+
+.PHONY: maybe-maintainer-clean-target-libgcobol maintainer-clean-target-libgcobol
+maybe-maintainer-clean-target-libgcobol:
+@if target-libgcobol
+maybe-maintainer-clean-target-libgcobol: maintainer-clean-target-libgcobol
+
+maintainer-clean-target-libgcobol: 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgcobol/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgcobol"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgcobol && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
+                 "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
+                 "RANLIB=$${RANLIB}" \
+                 "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
+                  maintainer-clean) \
+         || exit 1
+
+@endif target-libgcobol
+
+
+
 @if target-libgomp
 .PHONY: check-target-libgomp-c++
 check-target-libgomp-c++:
@@ -63144,6 +64326,14 @@ check-gcc-rust: gcc-site.exp
        (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-rust);
 check-rust: check-gcc-rust
 
+.PHONY: check-gcc-cobol check-cobol
+check-gcc-cobol: gcc-site.exp
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-cobol);
+check-cobol: check-gcc-cobol check-target-libgcobol
+
 
 # The gcc part of install-no-fixedincludes, which relies on an intimate
 # knowledge of how a number of gcc internal targets (inter)operate.  Delegate.
@@ -63336,6 +64526,11 @@ stage1-start::
          mkdir stage1-libsframe; \
        mv stage1-libsframe libsframe
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stage1-libgrust ] || \
+         mkdir stage1-libgrust; \
+       mv stage1-libgrust libgrust
+@endif libgrust
        @[ -d stage1-$(TARGET_SUBDIR) ] || \
          mkdir stage1-$(TARGET_SUBDIR); \
        mv stage1-$(TARGET_SUBDIR) $(TARGET_SUBDIR)
@@ -63461,6 +64656,11 @@ stage1-end::
          cd $(HOST_SUBDIR); mv libsframe stage1-libsframe; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stage1-libgrust; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stage1-$(TARGET_SUBDIR); \
        fi
@@ -63653,6 +64853,12 @@ stage2-start::
        mv stage2-libsframe libsframe; \
        mv stage1-libsframe prev-libsframe || test -f stage1-lean 
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stage2-libgrust ] || \
+         mkdir stage2-libgrust; \
+       mv stage2-libgrust libgrust; \
+       mv stage1-libgrust prev-libgrust || test -f stage1-lean 
+@endif libgrust
        @[ -d stage2-$(TARGET_SUBDIR) ] || \
          mkdir stage2-$(TARGET_SUBDIR); \
        mv stage2-$(TARGET_SUBDIR) $(TARGET_SUBDIR); \
@@ -63803,6 +65009,12 @@ stage2-end::
          mv prev-libsframe stage1-libsframe; : ; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stage2-libgrust; \
+         mv prev-libgrust stage1-libgrust; : ; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stage2-$(TARGET_SUBDIR); \
          mv prev-$(TARGET_SUBDIR) stage1-$(TARGET_SUBDIR); : ; \
@@ -64019,6 +65231,12 @@ stage3-start::
        mv stage3-libsframe libsframe; \
        mv stage2-libsframe prev-libsframe || test -f stage2-lean 
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stage3-libgrust ] || \
+         mkdir stage3-libgrust; \
+       mv stage3-libgrust libgrust; \
+       mv stage2-libgrust prev-libgrust || test -f stage2-lean 
+@endif libgrust
        @[ -d stage3-$(TARGET_SUBDIR) ] || \
          mkdir stage3-$(TARGET_SUBDIR); \
        mv stage3-$(TARGET_SUBDIR) $(TARGET_SUBDIR); \
@@ -64169,6 +65387,12 @@ stage3-end::
          mv prev-libsframe stage2-libsframe; : ; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stage3-libgrust; \
+         mv prev-libgrust stage2-libgrust; : ; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stage3-$(TARGET_SUBDIR); \
          mv prev-$(TARGET_SUBDIR) stage2-$(TARGET_SUBDIR); : ; \
@@ -64441,6 +65665,12 @@ stage4-start::
        mv stage4-libsframe libsframe; \
        mv stage3-libsframe prev-libsframe || test -f stage3-lean 
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stage4-libgrust ] || \
+         mkdir stage4-libgrust; \
+       mv stage4-libgrust libgrust; \
+       mv stage3-libgrust prev-libgrust || test -f stage3-lean 
+@endif libgrust
        @[ -d stage4-$(TARGET_SUBDIR) ] || \
          mkdir stage4-$(TARGET_SUBDIR); \
        mv stage4-$(TARGET_SUBDIR) $(TARGET_SUBDIR); \
@@ -64591,6 +65821,12 @@ stage4-end::
          mv prev-libsframe stage3-libsframe; : ; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stage4-libgrust; \
+         mv prev-libgrust stage3-libgrust; : ; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stage4-$(TARGET_SUBDIR); \
          mv prev-$(TARGET_SUBDIR) stage3-$(TARGET_SUBDIR); : ; \
@@ -64851,6 +66087,12 @@ stageprofile-start::
        mv stageprofile-libsframe libsframe; \
        mv stage1-libsframe prev-libsframe || test -f stage1-lean 
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stageprofile-libgrust ] || \
+         mkdir stageprofile-libgrust; \
+       mv stageprofile-libgrust libgrust; \
+       mv stage1-libgrust prev-libgrust || test -f stage1-lean 
+@endif libgrust
        @[ -d stageprofile-$(TARGET_SUBDIR) ] || \
          mkdir stageprofile-$(TARGET_SUBDIR); \
        mv stageprofile-$(TARGET_SUBDIR) $(TARGET_SUBDIR); \
@@ -65001,6 +66243,12 @@ stageprofile-end::
          mv prev-libsframe stage1-libsframe; : ; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stageprofile-libgrust; \
+         mv prev-libgrust stage1-libgrust; : ; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stageprofile-$(TARGET_SUBDIR); \
          mv prev-$(TARGET_SUBDIR) stage1-$(TARGET_SUBDIR); : ; \
@@ -65194,6 +66442,12 @@ stagetrain-start::
        mv stagetrain-libsframe libsframe; \
        mv stageprofile-libsframe prev-libsframe || test -f stageprofile-lean 
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stagetrain-libgrust ] || \
+         mkdir stagetrain-libgrust; \
+       mv stagetrain-libgrust libgrust; \
+       mv stageprofile-libgrust prev-libgrust || test -f stageprofile-lean 
+@endif libgrust
        @[ -d stagetrain-$(TARGET_SUBDIR) ] || \
          mkdir stagetrain-$(TARGET_SUBDIR); \
        mv stagetrain-$(TARGET_SUBDIR) $(TARGET_SUBDIR); \
@@ -65344,6 +66598,12 @@ stagetrain-end::
          mv prev-libsframe stageprofile-libsframe; : ; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stagetrain-libgrust; \
+         mv prev-libgrust stageprofile-libgrust; : ; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stagetrain-$(TARGET_SUBDIR); \
          mv prev-$(TARGET_SUBDIR) stageprofile-$(TARGET_SUBDIR); : ; \
@@ -65537,6 +66797,12 @@ stagefeedback-start::
        mv stagefeedback-libsframe libsframe; \
        mv stagetrain-libsframe prev-libsframe || test -f stagetrain-lean 
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stagefeedback-libgrust ] || \
+         mkdir stagefeedback-libgrust; \
+       mv stagefeedback-libgrust libgrust; \
+       mv stagetrain-libgrust prev-libgrust || test -f stagetrain-lean 
+@endif libgrust
        @[ -d stagefeedback-$(TARGET_SUBDIR) ] || \
          mkdir stagefeedback-$(TARGET_SUBDIR); \
        mv stagefeedback-$(TARGET_SUBDIR) $(TARGET_SUBDIR); \
@@ -65687,6 +66953,12 @@ stagefeedback-end::
          mv prev-libsframe stagetrain-libsframe; : ; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stagefeedback-libgrust; \
+         mv prev-libgrust stagetrain-libgrust; : ; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stagefeedback-$(TARGET_SUBDIR); \
          mv prev-$(TARGET_SUBDIR) stagetrain-$(TARGET_SUBDIR); : ; \
@@ -65903,6 +67175,12 @@ stageautoprofile-start::
        mv stageautoprofile-libsframe libsframe; \
        mv stage1-libsframe prev-libsframe || test -f stage1-lean 
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stageautoprofile-libgrust ] || \
+         mkdir stageautoprofile-libgrust; \
+       mv stageautoprofile-libgrust libgrust; \
+       mv stage1-libgrust prev-libgrust || test -f stage1-lean 
+@endif libgrust
        @[ -d stageautoprofile-$(TARGET_SUBDIR) ] || \
          mkdir stageautoprofile-$(TARGET_SUBDIR); \
        mv stageautoprofile-$(TARGET_SUBDIR) $(TARGET_SUBDIR); \
@@ -66053,6 +67331,12 @@ stageautoprofile-end::
          mv prev-libsframe stage1-libsframe; : ; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stageautoprofile-libgrust; \
+         mv prev-libgrust stage1-libgrust; : ; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stageautoprofile-$(TARGET_SUBDIR); \
          mv prev-$(TARGET_SUBDIR) stage1-$(TARGET_SUBDIR); : ; \
@@ -66246,6 +67530,12 @@ stageautofeedback-start::
        mv stageautofeedback-libsframe libsframe; \
        mv stageautoprofile-libsframe prev-libsframe || test -f stageautoprofile-lean 
 @endif libsframe
+@if libgrust
+       @cd $(HOST_SUBDIR); [ -d stageautofeedback-libgrust ] || \
+         mkdir stageautofeedback-libgrust; \
+       mv stageautofeedback-libgrust libgrust; \
+       mv stageautoprofile-libgrust prev-libgrust || test -f stageautoprofile-lean 
+@endif libgrust
        @[ -d stageautofeedback-$(TARGET_SUBDIR) ] || \
          mkdir stageautofeedback-$(TARGET_SUBDIR); \
        mv stageautofeedback-$(TARGET_SUBDIR) $(TARGET_SUBDIR); \
@@ -66396,6 +67686,12 @@ stageautofeedback-end::
          mv prev-libsframe stageautoprofile-libsframe; : ; \
        fi
 @endif libsframe
+@if libgrust
+       @if test -d $(HOST_SUBDIR)/libgrust; then \
+         cd $(HOST_SUBDIR); mv libgrust stageautofeedback-libgrust; \
+         mv prev-libgrust stageautoprofile-libgrust; : ; \
+       fi
+@endif libgrust
        @if test -d $(TARGET_SUBDIR); then \
          mv $(TARGET_SUBDIR) stageautofeedback-$(TARGET_SUBDIR); \
          mv prev-$(TARGET_SUBDIR) stageautoprofile-$(TARGET_SUBDIR); : ; \
@@ -66599,6 +67895,7 @@ configure-stagefeedback-target-libatomic: maybe-all-stagefeedback-gcc
 configure-stageautoprofile-target-libatomic: maybe-all-stageautoprofile-gcc
 configure-stageautofeedback-target-libatomic: maybe-all-stageautofeedback-gcc
 configure-target-libgrust: stage_last
+configure-target-libgcobol: stage_last
 @endif gcc-bootstrap
 
 @if gcc-no-bootstrap
@@ -66626,6 +67923,7 @@ configure-target-libgomp: maybe-all-gcc
 configure-target-libitm: maybe-all-gcc
 configure-target-libatomic: maybe-all-gcc
 configure-target-libgrust: maybe-all-gcc
+configure-target-libgcobol: maybe-all-gcc
 @endif gcc-no-bootstrap
 
 
@@ -66774,6 +68072,16 @@ all-stagetrain-gcc: all-stagetrain-libiberty
 all-stagefeedback-gcc: all-stagefeedback-libiberty
 all-stageautoprofile-gcc: all-stageautoprofile-libiberty
 all-stageautofeedback-gcc: all-stageautofeedback-libiberty
+all-gcc: maybe-all-libgrust
+all-stage1-gcc: maybe-all-stage1-libgrust
+all-stage2-gcc: maybe-all-stage2-libgrust
+all-stage3-gcc: maybe-all-stage3-libgrust
+all-stage4-gcc: maybe-all-stage4-libgrust
+all-stageprofile-gcc: maybe-all-stageprofile-libgrust
+all-stagetrain-gcc: maybe-all-stagetrain-libgrust
+all-stagefeedback-gcc: maybe-all-stagefeedback-libgrust
+all-stageautoprofile-gcc: maybe-all-stageautoprofile-libgrust
+all-stageautofeedback-gcc: maybe-all-stageautofeedback-libgrust
 all-gcc: maybe-all-gettext
 all-stage1-gcc: maybe-all-stage1-gettext
 all-stage2-gcc: maybe-all-stage2-gettext
@@ -67860,9 +69168,12 @@ install-target-libvtv: maybe-install-target-libgcc
 install-target-libitm: maybe-install-target-libgcc
 install-target-libobjc: maybe-install-target-libgcc
 install-target-libstdc++-v3: maybe-install-target-libgcc
+install-target-libgcobol: maybe-install-target-libstdc++-v3
+install-target-libgcobol: maybe-install-target-libquadmath
 all-target-libgloss: maybe-all-target-newlib
 all-target-winsup: maybe-all-target-libtermcap
 configure-target-libgfortran: maybe-all-target-libquadmath
+configure-target-libgcobol: maybe-all-target-libquadmath
 
 
 @if gcc-bootstrap
@@ -68048,6 +69359,7 @@ configure-target-libgomp: maybe-all-target-libgcc
 configure-target-libitm: maybe-all-target-libgcc
 configure-target-libatomic: maybe-all-target-libgcc
 configure-target-libgrust: maybe-all-target-libgcc
+configure-target-libgcobol: maybe-all-target-libgcc
 @endif gcc-no-bootstrap
 
 
@@ -68098,6 +69410,9 @@ configure-target-libatomic: maybe-all-target-newlib maybe-all-target-libgloss
 
 configure-target-libgrust: maybe-all-target-newlib maybe-all-target-libgloss
 
+configure-target-libgcobol: maybe-all-target-newlib maybe-all-target-libgloss
+configure-target-libgcobol: maybe-all-target-libstdc++-v3
+
 
 CONFIGURE_GDB_TK = @CONFIGURE_GDB_TK@
 GDB_TK = @GDB_TK@
index c642836662136eef0141fd69ae9481eb00cec5c2..bb30adcd522757fd38e07acbeb86497d77a303e6 100644 (file)
@@ -207,6 +207,7 @@ HOST_EXPORTS = \
        GOC="$(GOC)"; export GOC; \
        GDC="$(GDC)"; export GDC; \
        GM2="$(GM2)"; export GM2; \
+       GNATMAKE_FOR_BUILD="$(GNATMAKE_FOR_BUILD)"; export GNATMAKE_FOR_BUILD; \
        AR="$(AR)"; export AR; \
        AS="$(AS)"; export AS; \
        CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
@@ -312,6 +313,7 @@ BASE_TARGET_EXPORTS = \
        GOC="$(GOC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GOC; \
        GDC="$(GDC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GDC; \
        GM2="$(GM2_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export GM2; \
+       GNATMAKE_FOR_BUILD="$(GNATMAKE_FOR_BUILD)"; export GNATMAKE_FOR_BUILD; \
        DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \
        DSYMUTIL="$(DSYMUTIL_FOR_TARGET)"; export DSYMUTIL; \
        LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \
@@ -340,6 +342,7 @@ RAW_CXX_TARGET_EXPORTS = \
 
 NORMAL_TARGET_EXPORTS = \
        $(BASE_TARGET_EXPORTS) \
+       CXX_FOR_TARGET="$(CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \
        CXX="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX;
 
 # Where to find GMP
@@ -380,6 +383,7 @@ GFORTRAN_FOR_BUILD = @GFORTRAN_FOR_BUILD@
 GOC_FOR_BUILD = @GOC_FOR_BUILD@
 GDC_FOR_BUILD = @GDC_FOR_BUILD@
 GM2_FOR_BUILD = @GM2_FOR_BUILD@
+GNATMAKE_FOR_BUILD = @GNATMAKE_FOR_BUILD@
 LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
 LD_FOR_BUILD = @LD_FOR_BUILD@
 NM_FOR_BUILD = @NM_FOR_BUILD@
index 55fe00e8a305f4e68a9861e7f12edf2f46d21e82..90f99cdef7be3729eb9adf2ca227ed5b20178918 100755 (executable)
--- a/configure
+++ b/configure
@@ -662,6 +662,7 @@ RANLIB_FOR_BUILD
 NM_FOR_BUILD
 LD_FOR_BUILD
 LDFLAGS_FOR_BUILD
+GNATMAKE_FOR_BUILD
 GDC_FOR_BUILD
 GOC_FOR_BUILD
 GFORTRAN_FOR_BUILD
@@ -700,7 +701,7 @@ extra_host_libiberty_configure_flags
 stage1_languages
 host_libs_picflag
 CRAB1_LIBS
-enable_libdiagnostics
+enable_libgdiagnostics
 PICFLAG
 host_shared
 gcc_host_pie
@@ -739,6 +740,7 @@ CPPFLAGS
 LDFLAGS
 CFLAGS
 CC
+cpu_type
 target_subdir
 host_subdir
 build_subdir
@@ -854,7 +856,7 @@ enable_linker_plugin_configure_flags
 enable_linker_plugin_flags
 enable_host_pie
 enable_host_shared
-enable_libdiagnostics
+enable_libgdiagnostics
 enable_stage1_languages
 enable_objc_gc
 with_target_bdw_gc
@@ -1590,7 +1592,8 @@ Optional Features:
                           plugins [none]
   --enable-host-pie       build position independent host executables
   --enable-host-shared    build host code as shared libraries
-  --enable-libdiagnostics build libdiagnostics shared library
+  --enable-libgdiagnostics
+                          build libgdiagnostics shared library
   --enable-stage1-languages[=all]
                           choose additional languages to build during stage1.
                           Mostly useful for compiler development
@@ -2910,6 +2913,7 @@ target_libraries="target-libgcc \
                target-libgfortran \
                target-libffi \
                target-libobjc \
+               target-libgcobol \
                target-libada \
                target-libgm2 \
                target-libgo \
@@ -3441,6 +3445,13 @@ case "${target}" in
     ;;
 esac
 
+cpu_type=`echo ${host} | sed 's/-.*$//'`
+# Special case cpu_type for x86_64 as it shares AUTO_PROFILE from i386.
+if test "${cpu_type}" = "x86_64" ; then
+  cpu_type="i386"
+fi
+
+
 # Disable libssp for some systems.
 case "${target}" in
   avr-*-*)
@@ -3477,10 +3488,6 @@ if test "${ENABLE_LIBSTDCXX}" = "default" ; then
       # VxWorks uses the Dinkumware C++ library.
       noconfigdirs="$noconfigdirs target-libstdc++-v3"
       ;;
-    amdgcn*-*-*)
-      # Not ported/fails to build when using newlib.
-      noconfigdirs="$noconfigdirs target-libstdc++-v3"
-      ;;
     arm*-wince-pe*)
       # the C++ libraries don't build on top of CE's C libraries
       noconfigdirs="$noconfigdirs target-libstdc++-v3"
@@ -3497,6 +3504,21 @@ if test "${ENABLE_LIBSTDCXX}" = "default" ; then
   esac
 fi
 
+# Disable Ada/GNAT on systems where it is known to not work.
+# For testing, you can override this with --enable-languages=ada.
+case ,${enable_languages}, in
+  *,ada,*)
+    ;;
+  *)
+      case "${target}" in
+        amdgcn*-*-* \
+        | nvptx*-*-* )
+          unsupported_languages="$unsupported_languages ada"
+          ;;
+      esac
+      ;;
+esac
+
 # Disable C++ on systems where it is known to not work.
 # For testing, you can override this with --enable-languages=c++.
 case ,${enable_languages}, in
@@ -3525,6 +3547,16 @@ case ,${enable_languages}, in
       ;;
 esac
 
+# Disable libobjc for some systems where it is known to not work.
+case "${target}" in
+  amdgcn*-*-*)
+    noconfigdirs="$noconfigdirs target-libobjc"
+    ;;
+  nvptx*-*-*)
+    noconfigdirs="$noconfigdirs target-libobjc"
+    ;;
+esac
+
 # Disable D on systems where it is known to not work.
 # For testing, you can override this with --enable-languages=d.
 case ,${enable_languages}, in
@@ -3559,6 +3591,26 @@ $as_echo "yes" >&6; }
     fi
 fi
 
+# Disable libgcobol on unsupported systems.
+# For testing, you can override this with --enable-libgcobol.
+if test -d ${srcdir}/libgcobol; then
+    if test x$enable_libgcobol = x; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libgcobol support" >&5
+$as_echo_n "checking for libgcobol support... " >&6; }
+       if (srcdir=${srcdir}/libgcobol; \
+               . ${srcdir}/configure.tgt; \
+               test -n "$UNSUPPORTED")
+       then
+           { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+           noconfigdirs="$noconfigdirs target-libgcobol"
+       else
+           { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+       fi
+    fi
+fi
+
 # Disable Fortran for some systems.
 case "${target}" in
   mmix-*-*)
@@ -3570,6 +3622,38 @@ case "${target}" in
     ;;
 esac
 
+# Always enable COBOL for --enable-languages=*cobol*
+# Otherwise, enable COBOL only for known architectures
+case ,${enable_languages}, in
+  *,cobol,*)
+    case ,${enable_languages}, in
+      *,c++,*)
+        ;;
+      *)
+        # We have an explicit cobol, but no c++.  We need c++, because cobol
+        # requires libstdc++
+        enable_languages="$enable_languages,c++"
+        ;;
+    esac
+    ;;
+  *)
+    case "${target}" in
+      aarch64-*-linux*|x86_64-*-linux*)
+        ;;
+      *-*-*)
+        unsupported_languages="$unsupported_languages cobol"
+        ;;
+    esac
+    case "${host}" in
+      aarch64-*-linux*|x86_64-*-linux*)
+        ;;
+      *-*-*)
+        unsupported_languages="$unsupported_languages cobol"
+        ;;
+    esac
+    ;;
+esac
+
 # Disable libffi for some systems.
 case "${target}" in
   powerpc-*-darwin*)
@@ -3605,6 +3689,9 @@ case "${target}" in
   alpha*-*-*vms*)
     noconfigdirs="$noconfigdirs target-libffi"
     ;;
+  amdgcn*-*-*)
+    noconfigdirs="$noconfigdirs target-libffi"
+    ;;
   arm*-*-freebsd*)
     noconfigdirs="$noconfigdirs target-libffi"
     ;;
@@ -3648,6 +3735,9 @@ case "${target}" in
   mmix-*-*)
     noconfigdirs="$noconfigdirs target-libffi"
     ;;
+  nvptx*-*-*)
+    noconfigdirs="$noconfigdirs target-libffi"
+    ;;
   powerpc-*-aix*)
     ;;
   rs6000-*-aix*)
@@ -3698,9 +3788,15 @@ if test x$enable_libgo = x; then
     *-*-cygwin* | *-*-mingw*)
        noconfigdirs="$noconfigdirs target-libgo"
        ;;
+    amdgcn*-*-*)
+       noconfigdirs="$noconfigdirs target-libgo"
+       ;;
     bpf-*-*)
         noconfigdirs="$noconfigdirs target-libgo"
         ;;
+    nvptx*-*-*)
+       noconfigdirs="$noconfigdirs target-libgo"
+       ;;
     esac
 fi
 
@@ -4098,7 +4194,7 @@ case "${target}" in
     noconfigdirs="$noconfigdirs gprof"
     ;;
   nvptx*-*-*)
-    noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
+    noconfigdirs="$noconfigdirs target-libssp"
     ;;
   sh-*-*)
     case "${target}" in
@@ -4202,11 +4298,12 @@ if test "${build}" != "${host}" ; then
   CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
   CPP_FOR_BUILD="${CPP_FOR_BUILD-\$(CC_FOR_BUILD) -E}"
   CXX_FOR_BUILD=${CXX_FOR_BUILD-g++}
+  DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool}
   DSYMUTIL_FOR_BUILD=${DSYMUTIL_FOR_BUILD-dsymutil}
   GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran}
   GOC_FOR_BUILD=${GOC_FOR_BUILD-gccgo}
   GDC_FOR_BUILD=${GDC_FOR_BUILD-gdc}
-  DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool}
+  GNATMAKE_FOR_BUILD=${GNATMAKE_FOR_BUILD-gnatmake}
   LD_FOR_BUILD=${LD_FOR_BUILD-ld}
   NM_FOR_BUILD=${NM_FOR_BUILD-nm}
   RANLIB_FOR_BUILD=${RANLIB_FOR_BUILD-ranlib}
@@ -4217,11 +4314,12 @@ else
   AS_FOR_BUILD="\$(AS)"
   CC_FOR_BUILD="\$(CC)"
   CXX_FOR_BUILD="\$(CXX)"
+  DLLTOOL_FOR_BUILD="\$(DLLTOOL)"
   DSYMUTIL_FOR_BUILD="\$(DSYMUTIL)"
   GFORTRAN_FOR_BUILD="\$(GFORTRAN)"
   GOC_FOR_BUILD="\$(GOC)"
   GDC_FOR_BUILD="\$(GDC)"
-  DLLTOOL_FOR_BUILD="\$(DLLTOOL)"
+  GNATMAKE_FOR_BUILD="\$(GNATMAKE)"
   LD_FOR_BUILD="\$(LD)"
   NM_FOR_BUILD="\$(NM)"
   RANLIB_FOR_BUILD="\$(RANLIB)"
@@ -9665,19 +9763,19 @@ fi
 
 
 
-# Check for libdiagnostics support.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable libdiagnostics" >&5
-$as_echo_n "checking whether to enable libdiagnostics... " >&6; }
-# Check whether --enable-libdiagnostics was given.
-if test "${enable_libdiagnostics+set}" = set; then :
-  enableval=$enable_libdiagnostics; enable_libdiagnostics=$enableval
+# Check for libgdiagnostics support.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable libgdiagnostics" >&5
+$as_echo_n "checking whether to enable libgdiagnostics... " >&6; }
+# Check whether --enable-libgdiagnostics was given.
+if test "${enable_libgdiagnostics+set}" = set; then :
+  enableval=$enable_libgdiagnostics; enable_libgdiagnostics=$enableval
 else
-  enable_libdiagnostics=no
+  enable_libgdiagnostics=no
 fi
 
 
-if test x$enable_libdiagnostics = xyes; then
-  # Disable libdiagnostics if -enable-host-shared not specified
+if test x$enable_libgdiagnostics = xyes; then
+  # Disable libgdiagnostics if -enable-host-shared not specified
   # but not if building for Mingw. All code in Windows
   # is position independent code (PIC).
   case $target in
@@ -9685,12 +9783,12 @@ if test x$enable_libdiagnostics = xyes; then
      *)
        if test x$host_shared != xyes; then
         as_fn_error $? "
-Enabling libdiagnostics requires --enable-host-shared.
+Enabling libgdiagnostics requires --enable-host-shared.
 
 --enable-host-shared typically slows the rest of the compiler down by
 a few %, so you must explicitly enable it.
 
-If you want to build both libdiagnostics and the regular compiler, it is often
+If you want to build both libgdiagnostics and the regular compiler, it is often
 best to do this via two separate configure/builds, in separate
 directories, to avoid imposing the performance cost of
 --enable-host-shared on the regular compiler." "$LINENO" 5
@@ -9698,8 +9796,8 @@ directories, to avoid imposing the performance cost of
        ;;
    esac
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_libdiagnostics" >&5
-$as_echo "$enable_libdiagnostics" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_libgdiagnostics" >&5
+$as_echo "$enable_libgdiagnostics" >&6; }
 
 
 
@@ -10345,6 +10443,16 @@ case ,${enable_languages}, in
         # Disable target libgrust if we're not building target libstdc++.
         noconfigdirs="$noconfigdirs target-libgrust"
         ;;
+      *)
+       case "${target}" in
+         amdgcn*-*-* \
+         | nvptx*-*-* )
+           # Build fails in 'libgrust/libproc_macro_internal/':
+           #     sorry, unimplemented: exception handling not supported
+           noconfigdirs="$noconfigdirs target-libgrust"
+           ;;
+       esac
+       ;;
     esac
     ;;
 esac
@@ -11542,13 +11650,17 @@ if test x"${build}" = x"${host}" ; then
   LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
 fi
 
-# On Canadian crosses, we'll be searching the right directories for
-# the previously-installed cross compiler, so don't bother to add
-# flags for directories within the install tree of the compiler
-# being built; programs in there won't even run.
-if test "${build}" = "${host}" && test -d ${srcdir}/gcc; then
+if test -d ${srcdir}/gcc; then
+  # On Canadian crosses, we'll be searching the right directories for the
+  # previously-installed cross compiler, so don't bother to add flags for
+  # executable directories within the install tree of the compiler being built;
+  # programs in there won't even run.
+  if test "${build}" = "${host}"; then
+    FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/'
+  fi
+
   # Search for pre-installed headers if nothing else fits.
-  FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -isystem $(build_tooldir)/include -isystem $(build_tooldir)/sys-include'
+  FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $(build_tooldir)/include -isystem $(build_tooldir)/sys-include'
 fi
 
 if test "x${use_gnu_ld}" = x &&
@@ -11630,6 +11742,7 @@ done
 
 
 
+
 
 # Generate default definitions for YACC, M4, LEX and other programs that run
 # on the build machine.  These are used if the Makefile can't locate these
@@ -19553,7 +19666,101 @@ $as_echo "pre-installed" >&6; }
   fi
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target c++" >&5
+case $target in
+  *-*-darwin*)
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target c++" >&5
+$as_echo_n "checking where to find the target c++... " >&6; }
+if test "x${build}" != "x${host}" ; then
+  if expr "x$CXX_FOR_TARGET" : "x/" > /dev/null; then
+    # We already found the complete path
+    ac_dir=`dirname $CXX_FOR_TARGET`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed in $ac_dir" >&5
+$as_echo "pre-installed in $ac_dir" >&6; }
+  else
+    # Canadian cross, just use what we found
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed" >&5
+$as_echo "pre-installed" >&6; }
+  fi
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gcc "*) ;;
+    *) ok=no ;;
+  esac
+  case ,${enable_languages}, in
+    *,c++,*) ;;
+    *) ok=no ;;
+  esac
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xg++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `if test -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags; then $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes; else echo -funconfigured-libstdc++-v3 ; fi` -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs'
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: just compiled" >&5
+$as_echo "just compiled" >&6; }
+  elif expr "x$CXX_FOR_TARGET" : "x/" > /dev/null; then
+    # We already found the complete path
+    ac_dir=`dirname $CXX_FOR_TARGET`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed in $ac_dir" >&5
+$as_echo "pre-installed in $ac_dir" >&6; }
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    CXX_FOR_TARGET='$(CXX)'
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: host tool" >&5
+$as_echo "host tool" >&6; }
+  else
+    # We need a cross tool
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed" >&5
+$as_echo "pre-installed" >&6; }
+  fi
+fi
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target c++ for libstdc++" >&5
+$as_echo_n "checking where to find the target c++ for libstdc++... " >&6; }
+if test "x${build}" != "x${host}" ; then
+  if expr "x$RAW_CXX_FOR_TARGET" : "x/" > /dev/null; then
+    # We already found the complete path
+    ac_dir=`dirname $RAW_CXX_FOR_TARGET`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed in $ac_dir" >&5
+$as_echo "pre-installed in $ac_dir" >&6; }
+  else
+    # Canadian cross, just use what we found
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed" >&5
+$as_echo "pre-installed" >&6; }
+  fi
+else
+  ok=yes
+  case " ${configdirs} " in
+    *" gcc "*) ;;
+    *) ok=no ;;
+  esac
+  case ,${enable_languages}, in
+    *,c++,*) ;;
+    *) ok=no ;;
+  esac
+  if test $ok = yes; then
+    # An in-tree tool is available and we can use it
+    RAW_CXX_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs'
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: just compiled" >&5
+$as_echo "just compiled" >&6; }
+  elif expr "x$RAW_CXX_FOR_TARGET" : "x/" > /dev/null; then
+    # We already found the complete path
+    ac_dir=`dirname $RAW_CXX_FOR_TARGET`
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed in $ac_dir" >&5
+$as_echo "pre-installed in $ac_dir" >&6; }
+  elif test "x$target" = "x$host"; then
+    # We can use an host tool
+    RAW_CXX_FOR_TARGET='$(CXX)'
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: host tool" >&5
+$as_echo "host tool" >&6; }
+  else
+    # We need a cross tool
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: pre-installed" >&5
+$as_echo "pre-installed" >&6; }
+  fi
+fi
+
+  ;;
+  *)
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target c++" >&5
 $as_echo_n "checking where to find the target c++... " >&6; }
 if test "x${build}" != "x${host}" ; then
   if expr "x$CXX_FOR_TARGET" : "x/" > /dev/null; then
@@ -19598,7 +19805,7 @@ $as_echo "pre-installed" >&6; }
   fi
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target c++ for libstdc++" >&5
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target c++ for libstdc++" >&5
 $as_echo_n "checking where to find the target c++ for libstdc++... " >&6; }
 if test "x${build}" != "x${host}" ; then
   if expr "x$RAW_CXX_FOR_TARGET" : "x/" > /dev/null; then
@@ -19643,6 +19850,8 @@ $as_echo "pre-installed" >&6; }
   fi
 fi
 
+  ;;
+esac
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find the target dlltool" >&5
 $as_echo_n "checking where to find the target dlltool... " >&6; }
 if test "x${build}" != "x${host}" ; then
@@ -20678,6 +20887,7 @@ compare_exclusions="gcc/cc*-checksum\$(objext) | gcc/ada/*tools/*"
 compare_exclusions="$compare_exclusions | gcc/m2/gm2-compiler-boot/M2Version*"
 compare_exclusions="$compare_exclusions | gcc/m2/gm2-compiler-boot/SYSTEM*"
 compare_exclusions="$compare_exclusions | gcc/m2/gm2version*"
+compare_exclusions="$compare_exclusions | gcc/cobol/parse\$(objext)"
 case "$target" in
   hppa*64*-*-hpux*) ;;
   powerpc*-ibm-aix*) compare_exclusions="$compare_exclusions | *libgomp*\$(objext)" ;;
index 8050259e34f5ce1efef7bdabe9a4d0198053ea31..2996a124206a9697931d41d32dfad062e58b6757 100644 (file)
@@ -163,6 +163,7 @@ target_libraries="target-libgcc \
                target-libgfortran \
                target-libffi \
                target-libobjc \
+               target-libgcobol \
                target-libada \
                target-libgm2 \
                target-libgo \
@@ -622,6 +623,13 @@ case "${target}" in
     ;;
 esac
 
+cpu_type=`echo ${host} | sed 's/-.*$//'`
+# Special case cpu_type for x86_64 as it shares AUTO_PROFILE from i386.
+if test "${cpu_type}" = "x86_64" ; then
+  cpu_type="i386"
+fi
+AC_SUBST(cpu_type)
+
 # Disable libssp for some systems.
 case "${target}" in
   avr-*-*)
@@ -658,10 +666,6 @@ if test "${ENABLE_LIBSTDCXX}" = "default" ; then
       # VxWorks uses the Dinkumware C++ library.
       noconfigdirs="$noconfigdirs target-libstdc++-v3"
       ;;
-    amdgcn*-*-*)
-      # Not ported/fails to build when using newlib.
-      noconfigdirs="$noconfigdirs target-libstdc++-v3"
-      ;;
     arm*-wince-pe*)
       # the C++ libraries don't build on top of CE's C libraries
       noconfigdirs="$noconfigdirs target-libstdc++-v3"
@@ -678,6 +682,21 @@ if test "${ENABLE_LIBSTDCXX}" = "default" ; then
   esac
 fi
 
+# Disable Ada/GNAT on systems where it is known to not work.
+# For testing, you can override this with --enable-languages=ada.
+case ,${enable_languages}, in
+  *,ada,*)
+    ;;
+  *)
+      case "${target}" in
+        amdgcn*-*-* \
+        | nvptx*-*-* )
+          unsupported_languages="$unsupported_languages ada"
+          ;;
+      esac
+      ;;
+esac
+
 # Disable C++ on systems where it is known to not work.
 # For testing, you can override this with --enable-languages=c++.
 case ,${enable_languages}, in
@@ -706,6 +725,16 @@ case ,${enable_languages}, in
       ;;
 esac
 
+# Disable libobjc for some systems where it is known to not work.
+case "${target}" in
+  amdgcn*-*-*)
+    noconfigdirs="$noconfigdirs target-libobjc"
+    ;;
+  nvptx*-*-*)
+    noconfigdirs="$noconfigdirs target-libobjc"
+    ;;
+esac
+
 # Disable D on systems where it is known to not work.
 # For testing, you can override this with --enable-languages=d.
 case ,${enable_languages}, in
@@ -737,6 +766,23 @@ if test -d ${srcdir}/libphobos; then
     fi
 fi
 
+# Disable libgcobol on unsupported systems.
+# For testing, you can override this with --enable-libgcobol.
+if test -d ${srcdir}/libgcobol; then
+    if test x$enable_libgcobol = x; then
+       AC_MSG_CHECKING([for libgcobol support])
+       if (srcdir=${srcdir}/libgcobol; \
+               . ${srcdir}/configure.tgt; \
+               test -n "$UNSUPPORTED")
+       then
+           AC_MSG_RESULT([no])
+           noconfigdirs="$noconfigdirs target-libgcobol"
+       else
+           AC_MSG_RESULT([yes])
+       fi
+    fi
+fi
+
 # Disable Fortran for some systems.
 case "${target}" in
   mmix-*-*)
@@ -748,6 +794,38 @@ case "${target}" in
     ;;
 esac
 
+# Always enable COBOL for --enable-languages=*cobol*
+# Otherwise, enable COBOL only for known architectures
+case ,${enable_languages}, in
+  *,cobol,*)
+    case ,${enable_languages}, in
+      *,c++,*)
+        ;;
+      *)
+        # We have an explicit cobol, but no c++.  We need c++, because cobol
+        # requires libstdc++
+        enable_languages="$enable_languages,c++"
+        ;;
+    esac
+    ;;
+  *)
+    case "${target}" in
+      aarch64-*-linux*|x86_64-*-linux*)
+        ;;
+      *-*-*)
+        unsupported_languages="$unsupported_languages cobol"
+        ;;
+    esac
+    case "${host}" in
+      aarch64-*-linux*|x86_64-*-linux*)
+        ;;
+      *-*-*)
+        unsupported_languages="$unsupported_languages cobol"
+        ;;
+    esac
+    ;;
+esac
+
 # Disable libffi for some systems.
 case "${target}" in
   powerpc-*-darwin*)
@@ -783,6 +861,9 @@ case "${target}" in
   alpha*-*-*vms*)
     noconfigdirs="$noconfigdirs target-libffi"
     ;;
+  amdgcn*-*-*)
+    noconfigdirs="$noconfigdirs target-libffi"
+    ;;
   arm*-*-freebsd*)
     noconfigdirs="$noconfigdirs target-libffi"
     ;;
@@ -826,6 +907,9 @@ case "${target}" in
   mmix-*-*)
     noconfigdirs="$noconfigdirs target-libffi"
     ;;
+  nvptx*-*-*)
+    noconfigdirs="$noconfigdirs target-libffi"
+    ;;
   powerpc-*-aix*)
     ;;
   rs6000-*-aix*)
@@ -873,9 +957,15 @@ if test x$enable_libgo = x; then
     *-*-cygwin* | *-*-mingw*)
        noconfigdirs="$noconfigdirs target-libgo"
        ;;
+    amdgcn*-*-*)
+       noconfigdirs="$noconfigdirs target-libgo"
+       ;;
     bpf-*-*)
         noconfigdirs="$noconfigdirs target-libgo"
         ;;
+    nvptx*-*-*)
+       noconfigdirs="$noconfigdirs target-libgo"
+       ;;
     esac
 fi
 
@@ -1273,7 +1363,7 @@ case "${target}" in
     noconfigdirs="$noconfigdirs gprof"
     ;;
   nvptx*-*-*)
-    noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
+    noconfigdirs="$noconfigdirs target-libssp"
     ;;
   sh-*-*)
     case "${target}" in
@@ -1358,11 +1448,12 @@ if test "${build}" != "${host}" ; then
   CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
   CPP_FOR_BUILD="${CPP_FOR_BUILD-\$(CC_FOR_BUILD) -E}"
   CXX_FOR_BUILD=${CXX_FOR_BUILD-g++}
+  DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool}
   DSYMUTIL_FOR_BUILD=${DSYMUTIL_FOR_BUILD-dsymutil}
   GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran}
   GOC_FOR_BUILD=${GOC_FOR_BUILD-gccgo}
   GDC_FOR_BUILD=${GDC_FOR_BUILD-gdc}
-  DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool}
+  GNATMAKE_FOR_BUILD=${GNATMAKE_FOR_BUILD-gnatmake}
   LD_FOR_BUILD=${LD_FOR_BUILD-ld}
   NM_FOR_BUILD=${NM_FOR_BUILD-nm}
   RANLIB_FOR_BUILD=${RANLIB_FOR_BUILD-ranlib}
@@ -1373,11 +1464,12 @@ else
   AS_FOR_BUILD="\$(AS)"
   CC_FOR_BUILD="\$(CC)"
   CXX_FOR_BUILD="\$(CXX)"
+  DLLTOOL_FOR_BUILD="\$(DLLTOOL)"
   DSYMUTIL_FOR_BUILD="\$(DSYMUTIL)"
   GFORTRAN_FOR_BUILD="\$(GFORTRAN)"
   GOC_FOR_BUILD="\$(GOC)"
   GDC_FOR_BUILD="\$(GDC)"
-  DLLTOOL_FOR_BUILD="\$(DLLTOOL)"
+  GNATMAKE_FOR_BUILD="\$(GNATMAKE)"
   LD_FOR_BUILD="\$(LD)"
   NM_FOR_BUILD="\$(NM)"
   RANLIB_FOR_BUILD="\$(RANLIB)"
@@ -2056,16 +2148,16 @@ fi
 AC_SUBST(PICFLAG)
 
 
-# Check for libdiagnostics support.
-AC_MSG_CHECKING([whether to enable libdiagnostics])
-AC_ARG_ENABLE(libdiagnostics,
-[AS_HELP_STRING([--enable-libdiagnostics],
-               [build libdiagnostics shared library])],
-enable_libdiagnostics=$enableval,
-enable_libdiagnostics=no)
+# Check for libgdiagnostics support.
+AC_MSG_CHECKING([whether to enable libgdiagnostics])
+AC_ARG_ENABLE(libgdiagnostics,
+[AS_HELP_STRING([--enable-libgdiagnostics],
+               [build libgdiagnostics shared library])],
+enable_libgdiagnostics=$enableval,
+enable_libgdiagnostics=no)
 
-if test x$enable_libdiagnostics = xyes; then
-  # Disable libdiagnostics if -enable-host-shared not specified
+if test x$enable_libgdiagnostics = xyes; then
+  # Disable libgdiagnostics if -enable-host-shared not specified
   # but not if building for Mingw. All code in Windows
   # is position independent code (PIC).
   case $target in
@@ -2073,12 +2165,12 @@ if test x$enable_libdiagnostics = xyes; then
      *)
        if test x$host_shared != xyes; then
         AC_MSG_ERROR([
-Enabling libdiagnostics requires --enable-host-shared.
+Enabling libgdiagnostics requires --enable-host-shared.
 
 --enable-host-shared typically slows the rest of the compiler down by
 a few %, so you must explicitly enable it.
 
-If you want to build both libdiagnostics and the regular compiler, it is often
+If you want to build both libgdiagnostics and the regular compiler, it is often
 best to do this via two separate configure/builds, in separate
 directories, to avoid imposing the performance cost of
 --enable-host-shared on the regular compiler.])
@@ -2086,8 +2178,8 @@ directories, to avoid imposing the performance cost of
        ;;
    esac
 fi
-AC_MSG_RESULT($enable_libdiagnostics)
-AC_SUBST(enable_libdiagnostics)
+AC_MSG_RESULT($enable_libgdiagnostics)
+AC_SUBST(enable_libgdiagnostics)
 
 
 # Rust requires -ldl and -lpthread if you are using an old glibc that does not include them by
@@ -2604,6 +2696,16 @@ case ,${enable_languages}, in
         # Disable target libgrust if we're not building target libstdc++.
         noconfigdirs="$noconfigdirs target-libgrust"
         ;;
+      *)
+       case "${target}" in
+         amdgcn*-*-* \
+         | nvptx*-*-* )
+           # Build fails in 'libgrust/libproc_macro_internal/':
+           #     sorry, unimplemented: exception handling not supported
+           noconfigdirs="$noconfigdirs target-libgrust"
+           ;;
+       esac
+       ;;
     esac
     ;;
 esac
@@ -3727,13 +3829,17 @@ if test x"${build}" = x"${host}" ; then
   LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
 fi
 
-# On Canadian crosses, we'll be searching the right directories for
-# the previously-installed cross compiler, so don't bother to add
-# flags for directories within the install tree of the compiler
-# being built; programs in there won't even run.
-if test "${build}" = "${host}" && test -d ${srcdir}/gcc; then
+if test -d ${srcdir}/gcc; then
+  # On Canadian crosses, we'll be searching the right directories for the
+  # previously-installed cross compiler, so don't bother to add flags for
+  # executable directories within the install tree of the compiler being built;
+  # programs in there won't even run.
+  if test "${build}" = "${host}"; then
+    FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/'
+  fi
+
   # Search for pre-installed headers if nothing else fits.
-  FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -B$(build_tooldir)/bin/ -B$(build_tooldir)/lib/ -isystem $(build_tooldir)/include -isystem $(build_tooldir)/sys-include'
+  FLAGS_FOR_TARGET=$FLAGS_FOR_TARGET' -isystem $(build_tooldir)/include -isystem $(build_tooldir)/sys-include'
 fi
 
 if test "x${use_gnu_ld}" = x &&
@@ -3809,6 +3915,7 @@ AC_SUBST(DSYMUTIL_FOR_BUILD)
 AC_SUBST(GFORTRAN_FOR_BUILD)
 AC_SUBST(GOC_FOR_BUILD)
 AC_SUBST(GDC_FOR_BUILD)
+AC_SUBST(GNATMAKE_FOR_BUILD)
 AC_SUBST(LDFLAGS_FOR_BUILD)
 AC_SUBST(LD_FOR_BUILD)
 AC_SUBST(NM_FOR_BUILD)
@@ -3975,12 +4082,24 @@ GCC_TARGET_TOOL(ar, AR_FOR_TARGET, AR, [binutils/ar])
 GCC_TARGET_TOOL(as, AS_FOR_TARGET, AS, [gas/as-new])
 GCC_TARGET_TOOL(cc, CC_FOR_TARGET, CC, [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/])
 dnl see comments for CXX_FOR_TARGET_FLAG_TO_PASS
-GCC_TARGET_TOOL(c++, CXX_FOR_TARGET, CXX,
+case $target in
+  *-*-darwin*)
+    GCC_TARGET_TOOL(c++, CXX_FOR_TARGET, CXX,
+               [gcc/xg++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `if test -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags; then $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes; else echo -funconfigured-libstdc++-v3 ; fi` -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs],
+               c++)
+    GCC_TARGET_TOOL(c++ for libstdc++, RAW_CXX_FOR_TARGET, CXX,
+               [gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -B$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs],
+               c++)
+  ;;
+  *)
+    GCC_TARGET_TOOL(c++, CXX_FOR_TARGET, CXX,
                [gcc/xg++ -B$$r/$(HOST_SUBDIR)/gcc/ -nostdinc++ `if test -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags; then $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes; else echo -funconfigured-libstdc++-v3 ; fi` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs],
                c++)
-GCC_TARGET_TOOL(c++ for libstdc++, RAW_CXX_FOR_TARGET, CXX,
+    GCC_TARGET_TOOL(c++ for libstdc++, RAW_CXX_FOR_TARGET, CXX,
                [gcc/xgcc -shared-libgcc -B$$r/$(HOST_SUBDIR)/gcc -nostdinc++ -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/libsupc++/.libs],
                c++)
+  ;;
+esac
 GCC_TARGET_TOOL(dlltool, DLLTOOL_FOR_TARGET, DLLTOOL, [binutils/dlltool])
 GCC_TARGET_TOOL(dsymutil, DSYMUTIL_FOR_TARGET, DSYMUTIL)
 GCC_TARGET_TOOL(gcc, GCC_FOR_TARGET, , [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/])
@@ -4142,6 +4261,7 @@ compare_exclusions="gcc/cc*-checksum\$(objext) | gcc/ada/*tools/*"
 compare_exclusions="$compare_exclusions | gcc/m2/gm2-compiler-boot/M2Version*"
 compare_exclusions="$compare_exclusions | gcc/m2/gm2-compiler-boot/SYSTEM*"
 compare_exclusions="$compare_exclusions | gcc/m2/gm2version*"
+compare_exclusions="$compare_exclusions | gcc/cobol/parse\$(objext)"
 case "$target" in
   hppa*64*-*-hpux*) ;;
   powerpc*-ibm-aix*) compare_exclusions="$compare_exclusions | *libgomp*\$(objext)" ;;