]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Sync top level configure and makefiles
authorNick Clifton <nickc@redhat.com>
Wed, 10 Jan 2024 12:03:03 +0000 (12:03 +0000)
committerNick Clifton <nickc@redhat.com>
Wed, 10 Jan 2024 12:03:03 +0000 (12:03 +0000)
This update brings in the following commits from the gcc mainline:

commit b7e5a29602143b53267efcd9c8d5ecc78cd5a62f
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Jan 9 06:25:26 2024 -0700

    Pass GUILE down to subdirectories

    When I enable cgen rebuilding in the binutils-gdb tree, the default is
    to run cgen using 'guile'.  However, on my host, guile is guile 2.2,
    which doesn't work for me -- I have to use guile3.0.

    This patch arranges to pass "GUILE" down to subdirectories, so I can
    use 'make GUILE=guile3.0'.

commit 725fb3595622a4ad8cd078a42fab1c395cbf90cb
Author: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Date:   Wed Oct 25 13:06:48 2023 +0200

    build: Add libgrust as compilation modules

    Define the libgrust directory as a host compilation module as well as
    for targets. Disable target libgrust if we're not building target
    libstdc++.

commit 56ca59a03150cf44cea340f58967c990ed6bf43c
Author: Lewis Hyatt <lhyatt@gmail.com>
Date:   Thu Nov 16 11:18:37 2023 -0500

    Makefile.tpl: Avoid race condition in generating site.exp from the top level

    A command like "make -j 2 check-gcc-c check-gcc-c++" run in the top level of
    a fresh build directory does not work reliably. That will spawn two
    independent make processes inside the "gcc" directory, and each of those
    will attempt to create site.exp if it doesn't exist and will interfere with
    each other, producing often a corrupted or empty site.exp. Resolve that by
    making these targets depend on a new phony target which makes sure site.exp
    is created first before starting the recursive makes.

commit 6a6d3817afa02bbcd2388c8e005da6faf88932f1
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Sun Mar 28 14:48:17 2021 +0100

    Config,Darwin: Allow for configuring Darwin to use embedded runpath.

    Recent Darwin versions place contraints on the use of run paths
    specified in environment variables.  This breaks some assumptions
    in the GCC build.

    This change allows the user to configure a Darwin build to use
    '@rpath/libraryname.dylib' in library names and then to add an
    embedded runpath to executables (and libraries with dependents).

    The embedded runpath is added by default unless the user adds
    '-nodefaultrpaths' to the link line.

    For an installed compiler, it means that any executable built with
    that compiler will reference the runtimes installed with the
    compiler (equivalent to hard-coding the library path into the name
    of the library).

    During build-time configurations  any "-B" entries will be added to
    the runpath thus the newly-built libraries will be found by exes.

    Since the install name is set in libtool, that decision needs to be
    available here (but might also cause dependent ones in Makefiles,
    so we need to export a conditional).

    This facility is not available for Darwin 8 or earlier, however the
    existing environment variable runpath does work there.

    We default this on for systems where the external DYLD_LIBRARY_PATH
    does not work and off for Darwin 8 or earlier.  For systems that can
    use either method, if the value is unset, we use the default (which
    is currently DYLD_LIBRARY_PATH).

commit 2551e10038a70901f30b2168e6e3af4536748f3c
Author: Sergei Trofimovich <siarheit@google.com>
Date:   Mon Oct 2 12:08:17 2023 +0100

    Makefile.tpl: disable -Werror for feedback stage [PR111663]

    Without the change profiled bootstrap fails for various warnings on
    master branch as:

        $ ../gcc/configure
        $ make profiledbootstrap
        ...
        gcc/genmodes.cc: In function ‘int main(int, char**)’:
        gcc/genmodes.cc:2152:1: error: ‘gcc/build/genmodes.gcda’ profile count data file not found [-Werror=missing-profile]
        ...
        gcc/gengtype-parse.cc: In function ‘void parse_error(const char*, ...)’:
        gcc/gengtype-parse.cc:142:21: error: ‘%s’ directive argument is null [-Werror=format-overflow=]

    The change removes -Werror just like autofeedback does today.

commit d1bff1ba4d470f6723be83c0e3c4d5083e51877a
Author: Thomas Schwinge <thomas@codesourcery.com>
Date:   Thu Jun 1 23:07:37 2023 +0200

    Pass 'SYSROOT_CFLAGS_FOR_TARGET' down to target libraries [PR109951]

    ..., where we need to use it (separate commits) for build-tree testing, similar
    to 'gcc/Makefile.in:site.exp':

        # TEST_ALWAYS_FLAGS are flags that should be passed to every compilation.
        # They are passed first to allow individual tests to override them.
            @echo "set TEST_ALWAYS_FLAGS \"$(SYSROOT_CFLAGS_FOR_TARGET)\"" >> ./site.tmp

            PR testsuite/109951
            * Makefile.tpl (BASE_TARGET_EXPORTS): Add
            'SYSROOT_CFLAGS_FOR_TARGET'.
            * Makefile.in: Regenerate.

Makefile.def
Makefile.in
Makefile.tpl
configure
configure.ac

index 792919e561cfa11576110dbc18d00a230d24713a..3e00a729a0c4bbd7269668e1d89167a197f9a964 100644 (file)
@@ -164,6 +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; };
 
 target_modules = { module= libstdc++-v3;
                   bootstrap=true;
@@ -207,6 +208,7 @@ target_modules = { module= libgm2; lib_path=.libs; };
 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; };
 
 // 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.
@@ -670,6 +672,7 @@ dependencies = { module=all-target-libphobos; on=all-target-libatomic; };
 dependencies = { module=configure-target-libstdc++-v3; on=configure-target-libgomp; };
 dependencies = { module=configure-target-libsanitizer; on=all-target-libstdc++-v3; };
 dependencies = { module=configure-target-libvtv; on=all-target-libstdc++-v3; };
+dependencies = { module=configure-target-libgrust; on=all-target-libstdc++-v3; };
 // parallel_list.o and parallel_settings.o depend on omp.h, which is
 // generated by the libgomp configure.  Unfortunately, due to the use of
 //  recursive make, we can't be that specific.
index 9a58d5a4f209cb52c3c18d366f1aed2cf8b74064..a1f64a2ab5aa3a0333f2c0f5694d478ec0411ca2 100644 (file)
@@ -322,6 +322,7 @@ BASE_TARGET_EXPORTS = \
        RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
        READELF="$(READELF_FOR_TARGET)"; export READELF; \
        STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
+       SYSROOT_CFLAGS_FOR_TARGET="$(SYSROOT_CFLAGS_FOR_TARGET)"; export SYSROOT_CFLAGS_FOR_TARGET; \
        WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
        WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
 @if gcc-bootstrap
@@ -640,6 +641,10 @@ STAGEtrain_TFLAGS = $(filter-out -fchecking=1,$(STAGE3_TFLAGS))
 
 STAGEfeedback_CFLAGS = $(STAGE4_CFLAGS) -fprofile-use -fprofile-reproducible=parallel-runs
 STAGEfeedback_TFLAGS = $(STAGE4_TFLAGS)
+# Disable warnings as errors for a few reasons:
+# - sources for gen* binaries do not have .gcda files available
+# - inlining decisions generate extra warnings
+STAGEfeedback_CONFIGURE_FLAGS = $(filter-out --enable-werror-always,$(STAGE_CONFIGURE_FLAGS))
 
 STAGEautoprofile_CFLAGS = $(filter-out -gtoggle,$(STAGE2_CFLAGS)) -g
 STAGEautoprofile_TFLAGS = $(STAGE2_TFLAGS)
@@ -1130,7 +1135,8 @@ configure-host:  \
     maybe-configure-libcc1 \
     maybe-configure-gotools \
     maybe-configure-libctf \
-    maybe-configure-libsframe
+    maybe-configure-libsframe \
+    maybe-configure-libgrust
 .PHONY: configure-target
 configure-target:  \
     maybe-configure-target-libstdc++-v3 \
@@ -1155,7 +1161,8 @@ configure-target:  \
     maybe-configure-target-libgm2 \
     maybe-configure-target-libgomp \
     maybe-configure-target-libitm \
-    maybe-configure-target-libatomic
+    maybe-configure-target-libatomic \
+    maybe-configure-target-libgrust
 
 # The target built for a native non-bootstrap build.
 .PHONY: all
@@ -1311,6 +1318,7 @@ all-host: maybe-all-libctf
 @if libsframe-no-bootstrap
 all-host: maybe-all-libsframe
 @endif libsframe-no-bootstrap
+all-host: maybe-all-libgrust
 
 .PHONY: all-target
 
@@ -1355,6 +1363,7 @@ all-target: maybe-all-target-libitm
 @if target-libatomic-no-bootstrap
 all-target: maybe-all-target-libatomic
 @endif target-libatomic-no-bootstrap
+all-target: maybe-all-target-libgrust
 
 # 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
@@ -1425,6 +1434,7 @@ info-host: maybe-info-libcc1
 info-host: maybe-info-gotools
 info-host: maybe-info-libctf
 info-host: maybe-info-libsframe
+info-host: maybe-info-libgrust
 
 .PHONY: info-target
 
@@ -1451,6 +1461,7 @@ info-target: maybe-info-target-libgm2
 info-target: maybe-info-target-libgomp
 info-target: maybe-info-target-libitm
 info-target: maybe-info-target-libatomic
+info-target: maybe-info-target-libgrust
 
 .PHONY: do-dvi
 do-dvi:
@@ -1516,6 +1527,7 @@ dvi-host: maybe-dvi-libcc1
 dvi-host: maybe-dvi-gotools
 dvi-host: maybe-dvi-libctf
 dvi-host: maybe-dvi-libsframe
+dvi-host: maybe-dvi-libgrust
 
 .PHONY: dvi-target
 
@@ -1542,6 +1554,7 @@ dvi-target: maybe-dvi-target-libgm2
 dvi-target: maybe-dvi-target-libgomp
 dvi-target: maybe-dvi-target-libitm
 dvi-target: maybe-dvi-target-libatomic
+dvi-target: maybe-dvi-target-libgrust
 
 .PHONY: do-pdf
 do-pdf:
@@ -1607,6 +1620,7 @@ pdf-host: maybe-pdf-libcc1
 pdf-host: maybe-pdf-gotools
 pdf-host: maybe-pdf-libctf
 pdf-host: maybe-pdf-libsframe
+pdf-host: maybe-pdf-libgrust
 
 .PHONY: pdf-target
 
@@ -1633,6 +1647,7 @@ pdf-target: maybe-pdf-target-libgm2
 pdf-target: maybe-pdf-target-libgomp
 pdf-target: maybe-pdf-target-libitm
 pdf-target: maybe-pdf-target-libatomic
+pdf-target: maybe-pdf-target-libgrust
 
 .PHONY: do-html
 do-html:
@@ -1698,6 +1713,7 @@ html-host: maybe-html-libcc1
 html-host: maybe-html-gotools
 html-host: maybe-html-libctf
 html-host: maybe-html-libsframe
+html-host: maybe-html-libgrust
 
 .PHONY: html-target
 
@@ -1724,6 +1740,7 @@ html-target: maybe-html-target-libgm2
 html-target: maybe-html-target-libgomp
 html-target: maybe-html-target-libitm
 html-target: maybe-html-target-libatomic
+html-target: maybe-html-target-libgrust
 
 .PHONY: do-TAGS
 do-TAGS:
@@ -1789,6 +1806,7 @@ TAGS-host: maybe-TAGS-libcc1
 TAGS-host: maybe-TAGS-gotools
 TAGS-host: maybe-TAGS-libctf
 TAGS-host: maybe-TAGS-libsframe
+TAGS-host: maybe-TAGS-libgrust
 
 .PHONY: TAGS-target
 
@@ -1815,6 +1833,7 @@ TAGS-target: maybe-TAGS-target-libgm2
 TAGS-target: maybe-TAGS-target-libgomp
 TAGS-target: maybe-TAGS-target-libitm
 TAGS-target: maybe-TAGS-target-libatomic
+TAGS-target: maybe-TAGS-target-libgrust
 
 .PHONY: do-install-info
 do-install-info:
@@ -1880,6 +1899,7 @@ install-info-host: maybe-install-info-libcc1
 install-info-host: maybe-install-info-gotools
 install-info-host: maybe-install-info-libctf
 install-info-host: maybe-install-info-libsframe
+install-info-host: maybe-install-info-libgrust
 
 .PHONY: install-info-target
 
@@ -1906,6 +1926,7 @@ install-info-target: maybe-install-info-target-libgm2
 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
 
 .PHONY: do-install-dvi
 do-install-dvi:
@@ -1971,6 +1992,7 @@ install-dvi-host: maybe-install-dvi-libcc1
 install-dvi-host: maybe-install-dvi-gotools
 install-dvi-host: maybe-install-dvi-libctf
 install-dvi-host: maybe-install-dvi-libsframe
+install-dvi-host: maybe-install-dvi-libgrust
 
 .PHONY: install-dvi-target
 
@@ -1997,6 +2019,7 @@ install-dvi-target: maybe-install-dvi-target-libgm2
 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
 
 .PHONY: do-install-pdf
 do-install-pdf:
@@ -2062,6 +2085,7 @@ install-pdf-host: maybe-install-pdf-libcc1
 install-pdf-host: maybe-install-pdf-gotools
 install-pdf-host: maybe-install-pdf-libctf
 install-pdf-host: maybe-install-pdf-libsframe
+install-pdf-host: maybe-install-pdf-libgrust
 
 .PHONY: install-pdf-target
 
@@ -2088,6 +2112,7 @@ install-pdf-target: maybe-install-pdf-target-libgm2
 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
 
 .PHONY: do-install-html
 do-install-html:
@@ -2153,6 +2178,7 @@ install-html-host: maybe-install-html-libcc1
 install-html-host: maybe-install-html-gotools
 install-html-host: maybe-install-html-libctf
 install-html-host: maybe-install-html-libsframe
+install-html-host: maybe-install-html-libgrust
 
 .PHONY: install-html-target
 
@@ -2179,6 +2205,7 @@ install-html-target: maybe-install-html-target-libgm2
 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
 
 .PHONY: do-installcheck
 do-installcheck:
@@ -2244,6 +2271,7 @@ installcheck-host: maybe-installcheck-libcc1
 installcheck-host: maybe-installcheck-gotools
 installcheck-host: maybe-installcheck-libctf
 installcheck-host: maybe-installcheck-libsframe
+installcheck-host: maybe-installcheck-libgrust
 
 .PHONY: installcheck-target
 
@@ -2270,6 +2298,7 @@ installcheck-target: maybe-installcheck-target-libgm2
 installcheck-target: maybe-installcheck-target-libgomp
 installcheck-target: maybe-installcheck-target-libitm
 installcheck-target: maybe-installcheck-target-libatomic
+installcheck-target: maybe-installcheck-target-libgrust
 
 .PHONY: do-mostlyclean
 do-mostlyclean:
@@ -2335,6 +2364,7 @@ mostlyclean-host: maybe-mostlyclean-libcc1
 mostlyclean-host: maybe-mostlyclean-gotools
 mostlyclean-host: maybe-mostlyclean-libctf
 mostlyclean-host: maybe-mostlyclean-libsframe
+mostlyclean-host: maybe-mostlyclean-libgrust
 
 .PHONY: mostlyclean-target
 
@@ -2361,6 +2391,7 @@ mostlyclean-target: maybe-mostlyclean-target-libgm2
 mostlyclean-target: maybe-mostlyclean-target-libgomp
 mostlyclean-target: maybe-mostlyclean-target-libitm
 mostlyclean-target: maybe-mostlyclean-target-libatomic
+mostlyclean-target: maybe-mostlyclean-target-libgrust
 
 .PHONY: do-clean
 do-clean:
@@ -2426,6 +2457,7 @@ clean-host: maybe-clean-libcc1
 clean-host: maybe-clean-gotools
 clean-host: maybe-clean-libctf
 clean-host: maybe-clean-libsframe
+clean-host: maybe-clean-libgrust
 
 .PHONY: clean-target
 
@@ -2452,6 +2484,7 @@ clean-target: maybe-clean-target-libgm2
 clean-target: maybe-clean-target-libgomp
 clean-target: maybe-clean-target-libitm
 clean-target: maybe-clean-target-libatomic
+clean-target: maybe-clean-target-libgrust
 
 .PHONY: do-distclean
 do-distclean:
@@ -2517,6 +2550,7 @@ distclean-host: maybe-distclean-libcc1
 distclean-host: maybe-distclean-gotools
 distclean-host: maybe-distclean-libctf
 distclean-host: maybe-distclean-libsframe
+distclean-host: maybe-distclean-libgrust
 
 .PHONY: distclean-target
 
@@ -2543,6 +2577,7 @@ distclean-target: maybe-distclean-target-libgm2
 distclean-target: maybe-distclean-target-libgomp
 distclean-target: maybe-distclean-target-libitm
 distclean-target: maybe-distclean-target-libatomic
+distclean-target: maybe-distclean-target-libgrust
 
 .PHONY: do-maintainer-clean
 do-maintainer-clean:
@@ -2608,6 +2643,7 @@ maintainer-clean-host: maybe-maintainer-clean-libcc1
 maintainer-clean-host: maybe-maintainer-clean-gotools
 maintainer-clean-host: maybe-maintainer-clean-libctf
 maintainer-clean-host: maybe-maintainer-clean-libsframe
+maintainer-clean-host: maybe-maintainer-clean-libgrust
 
 .PHONY: maintainer-clean-target
 
@@ -2634,6 +2670,7 @@ maintainer-clean-target: maybe-maintainer-clean-target-libgm2
 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
 
 
 # Here are the targets which correspond to the do-X targets.
@@ -2756,7 +2793,8 @@ check-host:  \
     maybe-check-libcc1 \
     maybe-check-gotools \
     maybe-check-libctf \
-    maybe-check-libsframe
+    maybe-check-libsframe \
+    maybe-check-libgrust
 
 .PHONY: check-target
 check-target:  \
@@ -2782,7 +2820,8 @@ check-target:  \
     maybe-check-target-libgm2 \
     maybe-check-target-libgomp \
     maybe-check-target-libitm \
-    maybe-check-target-libatomic
+    maybe-check-target-libatomic \
+    maybe-check-target-libgrust
 
 do-check:
        @: $(MAKE); $(unstage)
@@ -2894,7 +2933,8 @@ install-host-nogcc:  \
     maybe-install-libcc1 \
     maybe-install-gotools \
     maybe-install-libctf \
-    maybe-install-libsframe
+    maybe-install-libsframe \
+    maybe-install-libgrust
 
 .PHONY: install-host
 install-host:  \
@@ -2950,7 +2990,8 @@ install-host:  \
     maybe-install-libcc1 \
     maybe-install-gotools \
     maybe-install-libctf \
-    maybe-install-libsframe
+    maybe-install-libsframe \
+    maybe-install-libgrust
 
 .PHONY: install-target
 install-target:  \
@@ -2976,7 +3017,8 @@ install-target:  \
     maybe-install-target-libgm2 \
     maybe-install-target-libgomp \
     maybe-install-target-libitm \
-    maybe-install-target-libatomic
+    maybe-install-target-libatomic \
+    maybe-install-target-libgrust
 
 uninstall:
        @echo "the uninstall target is not supported in this tree"
@@ -3061,7 +3103,8 @@ install-strip-host:  \
     maybe-install-strip-libcc1 \
     maybe-install-strip-gotools \
     maybe-install-strip-libctf \
-    maybe-install-strip-libsframe
+    maybe-install-strip-libsframe \
+    maybe-install-strip-libgrust
 
 .PHONY: install-strip-target
 install-strip-target:  \
@@ -3087,7 +3130,8 @@ install-strip-target:  \
     maybe-install-strip-target-libgm2 \
     maybe-install-strip-target-libgomp \
     maybe-install-strip-target-libitm \
-    maybe-install-strip-target-libatomic
+    maybe-install-strip-target-libatomic \
+    maybe-install-strip-target-libgrust
 
 
 ### other supporting targets
@@ -43943,6 +43987,474 @@ maintainer-clean-libsframe:
 
 
 
+.PHONY: configure-libgrust maybe-configure-libgrust
+maybe-configure-libgrust:
+@if gcc-bootstrap
+configure-libgrust: stage_current
+@endif gcc-bootstrap
+@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; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgrust; \
+       $(HOST_EXPORTS)  \
+       echo Configuring in $(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}  \
+         || exit 1
+@endif libgrust
+
+
+
+
+
+.PHONY: all-libgrust maybe-all-libgrust
+maybe-all-libgrust:
+@if gcc-bootstrap
+all-libgrust: stage_current
+@endif gcc-bootstrap
+@if libgrust
+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)  \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS)  \
+               $(TARGET-libgrust))
+@endif libgrust
+
+
+
+
+.PHONY: check-libgrust maybe-check-libgrust
+maybe-check-libgrust:
+@if libgrust
+maybe-check-libgrust: check-libgrust
+
+check-libgrust:
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS)  \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(MAKE) $(FLAGS_TO_PASS)  check)
+
+@endif libgrust
+
+.PHONY: install-libgrust maybe-install-libgrust
+maybe-install-libgrust:
+@if libgrust
+maybe-install-libgrust: install-libgrust
+
+install-libgrust: installdirs
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(MAKE) $(FLAGS_TO_PASS)  install)
+
+@endif libgrust
+
+.PHONY: install-strip-libgrust maybe-install-strip-libgrust
+maybe-install-strip-libgrust:
+@if libgrust
+maybe-install-strip-libgrust: install-strip-libgrust
+
+install-strip-libgrust: installdirs
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(MAKE) $(FLAGS_TO_PASS)  install-strip)
+
+@endif libgrust
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-libgrust info-libgrust
+maybe-info-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing info in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-dvi-libgrust dvi-libgrust
+maybe-dvi-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing dvi in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-pdf-libgrust pdf-libgrust
+maybe-pdf-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing pdf in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-html-libgrust html-libgrust
+maybe-html-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing html in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-TAGS-libgrust TAGS-libgrust
+maybe-TAGS-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing TAGS in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-install-info-libgrust install-info-libgrust
+maybe-install-info-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing install-info in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-install-dvi-libgrust install-dvi-libgrust
+maybe-install-dvi-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing install-dvi in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-install-pdf-libgrust install-pdf-libgrust
+maybe-install-pdf-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing install-pdf in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-install-html-libgrust install-html-libgrust
+maybe-install-html-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing install-html in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-installcheck-libgrust installcheck-libgrust
+maybe-installcheck-libgrust:
+@if libgrust
+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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing installcheck in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-mostlyclean-libgrust mostlyclean-libgrust
+maybe-mostlyclean-libgrust:
+@if 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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing mostlyclean in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-clean-libgrust clean-libgrust
+maybe-clean-libgrust:
+@if 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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing clean in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-distclean-libgrust distclean-libgrust
+maybe-distclean-libgrust:
+@if 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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing distclean in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+.PHONY: maybe-maintainer-clean-libgrust maintainer-clean-libgrust
+maybe-maintainer-clean-libgrust:
+@if 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; \
+       $(HOST_EXPORTS) \
+       for flag in $(EXTRA_HOST_FLAGS) ; do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       echo "Doing maintainer-clean in libgrust"; \
+       (cd $(HOST_SUBDIR)/libgrust && \
+         $(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 libgrust
+
+
+
 # ---------------------------------------
 # Modules which run on the target machine
 # ---------------------------------------
@@ -62017,6 +62529,491 @@ maintainer-clean-target-libatomic:
 
 
 
+
+
+.PHONY: configure-target-libgrust maybe-configure-target-libgrust
+maybe-configure-target-libgrust:
+@if gcc-bootstrap
+configure-target-libgrust: stage_current
+@endif gcc-bootstrap
+@if target-libgrust
+maybe-configure-target-libgrust: configure-target-libgrust
+configure-target-libgrust: 
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       echo "Checking multilib configuration for libgrust..."; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgrust; \
+       $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libgrust/multilib.tmp 2> /dev/null; \
+       if test -r $(TARGET_SUBDIR)/libgrust/multilib.out; then \
+         if cmp -s $(TARGET_SUBDIR)/libgrust/multilib.tmp $(TARGET_SUBDIR)/libgrust/multilib.out; then \
+           rm -f $(TARGET_SUBDIR)/libgrust/multilib.tmp; \
+         else \
+           rm -f $(TARGET_SUBDIR)/libgrust/Makefile; \
+           mv $(TARGET_SUBDIR)/libgrust/multilib.tmp $(TARGET_SUBDIR)/libgrust/multilib.out; \
+         fi; \
+       else \
+         mv $(TARGET_SUBDIR)/libgrust/multilib.tmp $(TARGET_SUBDIR)/libgrust/multilib.out; \
+       fi; \
+       test ! -f $(TARGET_SUBDIR)/libgrust/Makefile || exit 0; \
+       $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgrust; \
+       $(NORMAL_TARGET_EXPORTS)  \
+       echo Configuring in $(TARGET_SUBDIR)/libgrust; \
+       cd "$(TARGET_SUBDIR)/libgrust" || exit 1; \
+       case $(srcdir) in \
+         /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
+         *) topdir=`echo $(TARGET_SUBDIR)/libgrust/ | \
+               sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
+       esac; \
+       module_srcdir=libgrust; \
+       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-libgrust
+
+
+
+
+
+.PHONY: all-target-libgrust maybe-all-target-libgrust
+maybe-all-target-libgrust:
+@if gcc-bootstrap
+all-target-libgrust: stage_current
+@endif gcc-bootstrap
+@if target-libgrust
+TARGET-target-libgrust=all
+maybe-all-target-libgrust: all-target-libgrust
+all-target-libgrust: configure-target-libgrust
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS)  \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)   \
+               $(TARGET-target-libgrust))
+@endif target-libgrust
+
+
+
+
+
+.PHONY: check-target-libgrust maybe-check-target-libgrust
+maybe-check-target-libgrust:
+@if target-libgrust
+maybe-check-target-libgrust: check-target-libgrust
+
+check-target-libgrust:
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
+
+@endif target-libgrust
+
+.PHONY: install-target-libgrust maybe-install-target-libgrust
+maybe-install-target-libgrust:
+@if target-libgrust
+maybe-install-target-libgrust: install-target-libgrust
+
+install-target-libgrust: installdirs
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
+
+@endif target-libgrust
+
+.PHONY: install-strip-target-libgrust maybe-install-strip-target-libgrust
+maybe-install-strip-target-libgrust:
+@if target-libgrust
+maybe-install-strip-target-libgrust: install-strip-target-libgrust
+
+install-strip-target-libgrust: installdirs
+       @: $(MAKE); $(unstage)
+       @r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(MAKE) $(TARGET_FLAGS_TO_PASS)  install-strip)
+
+@endif target-libgrust
+
+# Other targets (info, dvi, pdf, etc.)
+
+.PHONY: maybe-info-target-libgrust info-target-libgrust
+maybe-info-target-libgrust:
+@if target-libgrust
+maybe-info-target-libgrust: info-target-libgrust
+
+info-target-libgrust: \
+    configure-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing info in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-dvi-target-libgrust dvi-target-libgrust
+maybe-dvi-target-libgrust:
+@if target-libgrust
+maybe-dvi-target-libgrust: dvi-target-libgrust
+
+dvi-target-libgrust: \
+    configure-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing dvi in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-pdf-target-libgrust pdf-target-libgrust
+maybe-pdf-target-libgrust:
+@if target-libgrust
+maybe-pdf-target-libgrust: pdf-target-libgrust
+
+pdf-target-libgrust: \
+    configure-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing pdf in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-html-target-libgrust html-target-libgrust
+maybe-html-target-libgrust:
+@if target-libgrust
+maybe-html-target-libgrust: html-target-libgrust
+
+html-target-libgrust: \
+    configure-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing html in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-TAGS-target-libgrust TAGS-target-libgrust
+maybe-TAGS-target-libgrust:
+@if target-libgrust
+maybe-TAGS-target-libgrust: TAGS-target-libgrust
+
+TAGS-target-libgrust: \
+    configure-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing TAGS in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-install-info-target-libgrust install-info-target-libgrust
+maybe-install-info-target-libgrust:
+@if target-libgrust
+maybe-install-info-target-libgrust: install-info-target-libgrust
+
+install-info-target-libgrust: \
+    configure-target-libgrust \
+    info-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/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)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-install-dvi-target-libgrust install-dvi-target-libgrust
+maybe-install-dvi-target-libgrust:
+@if target-libgrust
+maybe-install-dvi-target-libgrust: install-dvi-target-libgrust
+
+install-dvi-target-libgrust: \
+    configure-target-libgrust \
+    dvi-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/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)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-install-pdf-target-libgrust install-pdf-target-libgrust
+maybe-install-pdf-target-libgrust:
+@if target-libgrust
+maybe-install-pdf-target-libgrust: install-pdf-target-libgrust
+
+install-pdf-target-libgrust: \
+    configure-target-libgrust \
+    pdf-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/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)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-install-html-target-libgrust install-html-target-libgrust
+maybe-install-html-target-libgrust:
+@if target-libgrust
+maybe-install-html-target-libgrust: install-html-target-libgrust
+
+install-html-target-libgrust: \
+    configure-target-libgrust \
+    html-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/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)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-installcheck-target-libgrust installcheck-target-libgrust
+maybe-installcheck-target-libgrust:
+@if target-libgrust
+maybe-installcheck-target-libgrust: installcheck-target-libgrust
+
+installcheck-target-libgrust: \
+    configure-target-libgrust 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing installcheck in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-mostlyclean-target-libgrust mostlyclean-target-libgrust
+maybe-mostlyclean-target-libgrust:
+@if target-libgrust
+maybe-mostlyclean-target-libgrust: mostlyclean-target-libgrust
+
+mostlyclean-target-libgrust: 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-clean-target-libgrust clean-target-libgrust
+maybe-clean-target-libgrust:
+@if target-libgrust
+maybe-clean-target-libgrust: clean-target-libgrust
+
+clean-target-libgrust: 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing clean in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-distclean-target-libgrust distclean-target-libgrust
+maybe-distclean-target-libgrust:
+@if target-libgrust
+maybe-distclean-target-libgrust: distclean-target-libgrust
+
+distclean-target-libgrust: 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/Makefile ] || exit 0; \
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(NORMAL_TARGET_EXPORTS) \
+       echo "Doing distclean in $(TARGET_SUBDIR)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+.PHONY: maybe-maintainer-clean-target-libgrust maintainer-clean-target-libgrust
+maybe-maintainer-clean-target-libgrust:
+@if target-libgrust
+maybe-maintainer-clean-target-libgrust: maintainer-clean-target-libgrust
+
+maintainer-clean-target-libgrust: 
+       @: $(MAKE); $(unstage)
+       @[ -f $(TARGET_SUBDIR)/libgrust/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)/libgrust"; \
+       for flag in $(EXTRA_TARGET_FLAGS); do \
+         eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+       done; \
+       (cd $(TARGET_SUBDIR)/libgrust && \
+         $(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-libgrust
+
+
+
 @if target-libgomp
 .PHONY: check-target-libgomp-c++
 check-target-libgomp-c++:
@@ -62055,8 +63052,16 @@ cross: all-build all-gas all-ld
 
 @if gcc
 
+.PHONY: gcc-site.exp
+gcc-site.exp:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) site.exp);
+
+
 .PHONY: check-gcc-c check-c
-check-gcc-c:
+check-gcc-c: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62064,7 +63069,7 @@ check-gcc-c:
 check-c: check-gcc-c
 
 .PHONY: check-gcc-c++ check-c++
-check-gcc-c++:
+check-gcc-c++: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62072,7 +63077,7 @@ check-gcc-c++:
 check-c++: check-gcc-c++ check-target-libstdc++-v3 check-target-libitm-c++ check-target-libgomp-c++
 
 .PHONY: check-gcc-fortran check-fortran
-check-gcc-fortran:
+check-gcc-fortran: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62080,7 +63085,7 @@ check-gcc-fortran:
 check-fortran: check-gcc-fortran check-target-libquadmath check-target-libgfortran check-target-libgomp-fortran
 
 .PHONY: check-gcc-ada check-ada
-check-gcc-ada:
+check-gcc-ada: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62088,7 +63093,7 @@ check-gcc-ada:
 check-ada: check-gcc-ada check-target-libada
 
 .PHONY: check-gcc-objc check-objc
-check-gcc-objc:
+check-gcc-objc: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62096,7 +63101,7 @@ check-gcc-objc:
 check-objc: check-gcc-objc check-target-libobjc
 
 .PHONY: check-gcc-obj-c++ check-obj-c++
-check-gcc-obj-c++:
+check-gcc-obj-c++: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62104,7 +63109,7 @@ check-gcc-obj-c++:
 check-obj-c++: check-gcc-obj-c++
 
 .PHONY: check-gcc-go check-go
-check-gcc-go:
+check-gcc-go: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62112,7 +63117,7 @@ check-gcc-go:
 check-go: check-gcc-go check-target-libgo check-gotools
 
 .PHONY: check-gcc-m2 check-m2
-check-gcc-m2:
+check-gcc-m2: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62120,7 +63125,7 @@ check-gcc-m2:
 check-m2: check-gcc-m2 check-target-libgm2
 
 .PHONY: check-gcc-d check-d
-check-gcc-d:
+check-gcc-d: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62128,7 +63133,7 @@ check-gcc-d:
 check-d: check-gcc-d check-target-libphobos
 
 .PHONY: check-gcc-jit check-jit
-check-gcc-jit:
+check-gcc-jit: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -62136,7 +63141,7 @@ check-gcc-jit:
 check-jit: check-gcc-jit
 
 .PHONY: check-gcc-rust check-rust
-check-gcc-rust:
+check-gcc-rust: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
@@ -65597,6 +66602,7 @@ configure-stagetrain-target-libatomic: maybe-all-stagetrain-gcc
 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
 @endif gcc-bootstrap
 
 @if gcc-no-bootstrap
@@ -65623,6 +66629,7 @@ configure-target-libgm2: maybe-all-gcc
 configure-target-libgomp: maybe-all-gcc
 configure-target-libitm: maybe-all-gcc
 configure-target-libatomic: maybe-all-gcc
+configure-target-libgrust: maybe-all-gcc
 @endif gcc-no-bootstrap
 
 
@@ -66932,6 +67939,7 @@ all-target-libgo: maybe-all-target-libbacktrace
 all-target-libgo: maybe-all-target-libatomic
 configure-target-libgm2: maybe-all-target-libstdc++-v3
 all-target-libgm2: maybe-all-target-libatomic
+configure-target-libgrust: maybe-all-target-libstdc++-v3
 configure-target-newlib: maybe-all-binutils
 configure-target-newlib: maybe-all-ld
 configure-target-libgfortran: maybe-all-target-libbacktrace
@@ -67041,6 +68049,7 @@ configure-target-libgm2: maybe-all-target-libgcc
 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
 @endif gcc-no-bootstrap
 
 
@@ -67089,6 +68098,8 @@ configure-target-libitm: maybe-all-target-libstdc++-v3
 
 configure-target-libatomic: maybe-all-target-newlib maybe-all-target-libgloss
 
+configure-target-libgrust: maybe-all-target-newlib maybe-all-target-libgloss
+
 
 CONFIGURE_GDB_TK = @CONFIGURE_GDB_TK@
 GDB_TK = @GDB_TK@
index 17e585df5413cac47bd7128587af93c0ee53894f..adbcbdd1d572fceb6ffd2ff34b5d58123ddc4bf1 100644 (file)
@@ -325,6 +325,7 @@ BASE_TARGET_EXPORTS = \
        RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
        READELF="$(READELF_FOR_TARGET)"; export READELF; \
        STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
+       SYSROOT_CFLAGS_FOR_TARGET="$(SYSROOT_CFLAGS_FOR_TARGET)"; export SYSROOT_CFLAGS_FOR_TARGET; \
        WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
        WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
 @if gcc-bootstrap
@@ -563,6 +564,10 @@ STAGEtrain_TFLAGS = $(filter-out -fchecking=1,$(STAGE3_TFLAGS))
 
 STAGEfeedback_CFLAGS = $(STAGE4_CFLAGS) -fprofile-use -fprofile-reproducible=parallel-runs
 STAGEfeedback_TFLAGS = $(STAGE4_TFLAGS)
+# Disable warnings as errors for a few reasons:
+# - sources for gen* binaries do not have .gcda files available
+# - inlining decisions generate extra warnings
+STAGEfeedback_CONFIGURE_FLAGS = $(filter-out --enable-werror-always,$(STAGE_CONFIGURE_FLAGS))
 
 STAGEautoprofile_CFLAGS = $(filter-out -gtoggle,$(STAGE2_CFLAGS)) -g
 STAGEautoprofile_TFLAGS = $(STAGE2_TFLAGS)
@@ -1637,9 +1642,17 @@ cross: all-build all-gas all-ld
 @endif gcc-no-bootstrap
 
 @if gcc
+
+.PHONY: gcc-site.exp
+gcc-site.exp:
+       r=`${PWD_COMMAND}`; export r; \
+       s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+       $(HOST_EXPORTS) \
+       (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) site.exp);
+
 [+ FOR languages +]
 .PHONY: check-gcc-[+language+] check-[+language+]
-check-gcc-[+language+]:
+check-gcc-[+language+]: gcc-site.exp
        r=`${PWD_COMMAND}`; export r; \
        s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
        $(HOST_EXPORTS) \
index be73a3daee9037865b3120c03b5f42a14e28a5fa..670684d83d15abb40308a776cf84901023dc7be4 100755 (executable)
--- a/configure
+++ b/configure
@@ -2829,7 +2829,7 @@ build_tools="build-texinfo build-flex build-bison build-m4 build-fixincludes"
 
 # these libraries are used by various programs built for the host environment
 #f
-host_libs="gettext libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktrace libcpp libcody libdecnumber gmp mpfr mpc isl libiconv libctf libsframe"
+host_libs="gettext libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktrace libcpp libcody libdecnumber gmp mpfr mpc isl libiconv libctf libsframe libgrust "
 
 # these tools are built for the host environment
 # Note, the powerpc-eabi build depends on sim occurring before gdb in order to
@@ -2860,6 +2860,7 @@ target_libraries="target-libgcc \
                target-libada \
                target-libgm2 \
                target-libgo \
+               target-libgrust \
                target-libphobos \
                target-zlib"
 
@@ -8504,6 +8505,20 @@ else
  fi
 fi
 
+case $target in
+  *-darwin2* | *-darwin1[56789]*)
+    # For these versions, we default to using embedded rpaths.
+    if test "x$enable_darwin_at_rpath" != "xno"; then
+      poststage1_ldflags="$poststage1_ldflags -nodefaultrpaths"
+    fi
+  ;;
+  *-darwin*)
+    # For these versions, we only use embedded rpaths on demand.
+    if test "x$enable_darwin_at_rpath" = "xyes"; then
+      poststage1_ldflags="$poststage1_ldflags -nodefaultrpaths"
+    fi
+  ;;
+esac
 
 
 # GCC GRAPHITE dependency isl.
@@ -9273,6 +9288,17 @@ case ,${enable_languages}, in
     ;;
 esac
 
+case ,${enable_languages}, in
+  *,rust,*)
+    case " ${noconfigdirs} " in
+      *\ target-libstdc++-v3\ *)
+        # Disable target libgrust if we're not building target libstdc++.
+        noconfigdirs="$noconfigdirs target-libgrust"
+        ;;
+    esac
+    ;;
+esac
+
 # If gcc/ is not in the source tree then we'll not be building a
 # target compiler, assume in that case we don't want to build any
 # target libraries or tools.
@@ -9695,6 +9721,12 @@ case "${target}" in
   spu-*-*)
     target_makefile_frag="config/mt-spu"
     ;;
+  loongarch*-*linux* | loongarch*-*gnu*)
+    target_makefile_frag="config/mt-loongarch-gnu"
+    ;;
+  loongarch*-*elf*)
+    target_makefile_frag="config/mt-loongarch-elf"
+    ;;
   mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
     target_makefile_frag="config/mt-sde"
     ;;
index 76d36e7b35836a060baeba31944d2835e776f34a..88b4800e298f99aa066f4b7b87ecb5d92aeace3d 100644 (file)
@@ -133,7 +133,7 @@ build_tools="build-texinfo build-flex build-bison build-m4 build-fixincludes"
 
 # these libraries are used by various programs built for the host environment
 #f
-host_libs="gettext libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktrace libcpp libcody libdecnumber gmp mpfr mpc isl libiconv libctf libsframe"
+host_libs="gettext libiberty opcodes bfd readline tcl tk itcl libgui zlib libbacktrace libcpp libcody libdecnumber gmp mpfr mpc isl libiconv libctf libsframe libgrust "
 
 # these tools are built for the host environment
 # Note, the powerpc-eabi build depends on sim occurring before gdb in order to
@@ -164,6 +164,7 @@ target_libraries="target-libgcc \
                target-libada \
                target-libgm2 \
                target-libgo \
+               target-libgrust \
                target-libphobos \
                target-zlib"
 
@@ -1867,6 +1868,20 @@ AC_ARG_WITH(boot-ldflags,
  if test "$poststage1_libs" = ""; then
    poststage1_ldflags="-static-libstdc++ -static-libgcc"
  fi])
+case $target in
+  *-darwin2* | *-darwin1[[56789]]*)
+    # For these versions, we default to using embedded rpaths.
+    if test "x$enable_darwin_at_rpath" != "xno"; then
+      poststage1_ldflags="$poststage1_ldflags -nodefaultrpaths"
+    fi
+  ;;
+  *-darwin*)
+    # For these versions, we only use embedded rpaths on demand.
+    if test "x$enable_darwin_at_rpath" = "xyes"; then
+      poststage1_ldflags="$poststage1_ldflags -nodefaultrpaths"
+    fi
+  ;;
+esac
 AC_SUBST(poststage1_ldflags)
 
 # GCC GRAPHITE dependency isl.
@@ -2469,6 +2484,17 @@ case ,${enable_languages}, in
     ;;
 esac
 
+case ,${enable_languages}, in
+  *,rust,*)
+    case " ${noconfigdirs} " in
+      *\ target-libstdc++-v3\ *)
+        # Disable target libgrust if we're not building target libstdc++.
+        noconfigdirs="$noconfigdirs target-libgrust"
+        ;;
+    esac
+    ;;
+esac
+
 # If gcc/ is not in the source tree then we'll not be building a
 # target compiler, assume in that case we don't want to build any
 # target libraries or tools.
@@ -2822,6 +2848,12 @@ case "${target}" in
   spu-*-*)
     target_makefile_frag="config/mt-spu"
     ;;
+  loongarch*-*linux* | loongarch*-*gnu*)
+    target_makefile_frag="config/mt-loongarch-gnu"
+    ;;
+  loongarch*-*elf*)
+    target_makefile_frag="config/mt-loongarch-elf"
+    ;;
   mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
     target_makefile_frag="config/mt-sde"
     ;;