This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Introduce @unless/@endunless and postbootstrap Makefile targets


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4119873a48042e532f7485b84cca83ea0bf1fcf6

commit 4119873a48042e532f7485b84cca83ea0bf1fcf6
Author: Alexandre Oliva <oliva@adacore.com>
Date:   Fri Jun 29 23:49:28 2018 -0300

    Introduce @unless/@endunless and postbootstrap Makefile targets
    
    This patch turns dependencies of non-bootstrap targets on bootstrap
    targets for bootstrap builds into dependencies on stage_last.  This
    arrangement gets stage1-bubble to run from stage_last if we haven't
    started a bootstrap yet, and to use the current stage otherwise.  This
    was already the case of target libs, just not of non-bootstrapped host
    modules.
    
    In order to retain preexisting dependencies in non-bootstrap builds,
    or in gcc-less builds, this introduces support for @unless/@endunless
    pairs in Makefile.in.
    
    There is a remaining possibility of problem if activating, in a tree
    configured for bootstrap, a parallel build of two or more modules, at
    least one bootstrapped and one not.  In this case, make might decide
    to build stage_current and stage_last in parallel, the latter will
    start a submake to build stage1 while the initial make, having
    satisfied stage_current, proceeds to build the bootstrapped module in
    non-bootstrapped configurations.  The two builds will overlap and will
    likely conflict.  This situation does NOT arise in normal settings,
    however: a post-bootstrap build of all-host all-target will indeed
    activate such targets concurrently, but only after building all
    bootstrapped modules successfully, and it will have both stage_last
    and stage_current targets already satisfied, so the potential race
    between builds will not arise.
    
    Another remaining problem, that is slightly expanded with this patch,
    is that of an interrupted build in a tree configured for bootstrap,
    continued with a non-bootstrapped target.  Target modules that were
    not bootstrapped would already fail to complete the current stage when
    activated explicitly in the command line for a retry; host modules,
    however, would attempt to build their bootstrapped dependencies, which
    is what led to the problem of concurrent builds addressed with this
    patch.  An interrupted or failed build might still recover correctly,
    if the non-bootstrapped target is activated in both builds, because
    then make will remove stage_last when its build command is
    interrupted, so that it will attempt to recreate it with stage1-bubble
    in the second try.  A bootstrap build, however, will not be attempting
    to build stage_last, so the file will remain and the retry won't go
    through stage1-bubble.  We have lived with that for target modules, so
    we can probably live with that for host modules too.
    
    Another undesirable consequence of this change is that non-boostrapped
    host modules, in a tree configured for bootstrap, when activated as
    make all-<module>, will build all of stage1 instead of only the
    module's usual dependencies.  This is intentional and necessary to fix
    the parallel-build problem.  If it's not desirable, disabling the
    unnecessary bootstrap configuration will suffice to restore the
    original set of dependencies.
    
    
    for  ChangeLog
    
    	* configure.ac: Introduce support for @unless/@endunless.
    	* Makefile.tpl (dep-kind): Rewrite with cond; return
    	postbootstrap in some cases.
    	(make-postboot-dep, postboot-targets): New.
    	(dependencies): Do not output postbootstrap dependencies at
    	first.  Output non-target ones changed for configure to depend
    	on stage_last @if gcc-bootstrap, and the original deps @unless
    	gcc-bootstrap.
    	* configure.in, Makefile.in: Rebuilt.

Diff:
---
 ChangeLog    |  12 ++++
 Makefile.in  | 181 +++++++++++++++++------------------------------------------
 Makefile.tpl |  78 ++++++++++++++++---------
 configure    |  20 +++++--
 configure.ac |  20 +++++--
 5 files changed, 146 insertions(+), 165 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index a44cdfd..5abd744 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2018-06-29  Alexandre Oliva <oliva@adacore.com>
+
+	* configure.ac: Introduce support for @unless/@endunless.
+	* Makefile.tpl (dep-kind): Rewrite with cond; return
+	postbootstrap in some cases.
+	(make-postboot-dep, postboot-targets): New.
+	(dependencies): Do not output postbootstrap dependencies at
+	first.  Output non-target ones changed for configure to depend
+	on stage_last @if gcc-bootstrap, and the original deps @unless
+	gcc-bootstrap.
+	* configure.in, Makefile.in: Rebuilt.
+
 2018-06-24  Nick Clifton  <nickc@redhat.com>
 
 	* configure: Regenerate.
diff --git a/Makefile.in b/Makefile.in
index d13732e..7814fe7 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -49274,7 +49274,6 @@ all-build-m4: maybe-all-build-texinfo
 all-build-fixincludes: maybe-all-build-libiberty
 all-build-libcpp: maybe-all-build-libiberty
 configure-gcc: maybe-configure-intl
-
 configure-stage1-gcc: maybe-configure-stage1-intl
 configure-stage2-gcc: maybe-configure-stage2-intl
 configure-stage3-gcc: maybe-configure-stage3-intl
@@ -49282,7 +49281,6 @@ configure-stage4-gcc: maybe-configure-stage4-intl
 configure-stageprofile-gcc: maybe-configure-stageprofile-intl
 configure-stagefeedback-gcc: maybe-configure-stagefeedback-intl
 configure-gcc: maybe-all-gmp
-
 configure-stage1-gcc: maybe-all-stage1-gmp
 configure-stage2-gcc: maybe-all-stage2-gmp
 configure-stage3-gcc: maybe-all-stage3-gmp
@@ -49290,7 +49288,6 @@ configure-stage4-gcc: maybe-all-stage4-gmp
 configure-stageprofile-gcc: maybe-all-stageprofile-gmp
 configure-stagefeedback-gcc: maybe-all-stagefeedback-gmp
 configure-gcc: maybe-all-mpfr
-
 configure-stage1-gcc: maybe-all-stage1-mpfr
 configure-stage2-gcc: maybe-all-stage2-mpfr
 configure-stage3-gcc: maybe-all-stage3-mpfr
@@ -49298,7 +49295,6 @@ configure-stage4-gcc: maybe-all-stage4-mpfr
 configure-stageprofile-gcc: maybe-all-stageprofile-mpfr
 configure-stagefeedback-gcc: maybe-all-stagefeedback-mpfr
 configure-gcc: maybe-all-mpc
-
 configure-stage1-gcc: maybe-all-stage1-mpc
 configure-stage2-gcc: maybe-all-stage2-mpc
 configure-stage3-gcc: maybe-all-stage3-mpc
@@ -49306,7 +49302,6 @@ configure-stage4-gcc: maybe-all-stage4-mpc
 configure-stageprofile-gcc: maybe-all-stageprofile-mpc
 configure-stagefeedback-gcc: maybe-all-stagefeedback-mpc
 configure-gcc: maybe-all-isl
-
 configure-stage1-gcc: maybe-all-stage1-isl
 configure-stage2-gcc: maybe-all-stage2-isl
 configure-stage3-gcc: maybe-all-stage3-isl
@@ -49314,7 +49309,6 @@ configure-stage4-gcc: maybe-all-stage4-isl
 configure-stageprofile-gcc: maybe-all-stageprofile-isl
 configure-stagefeedback-gcc: maybe-all-stagefeedback-isl
 configure-gcc: maybe-all-lto-plugin
-
 configure-stage1-gcc: maybe-all-stage1-lto-plugin
 configure-stage2-gcc: maybe-all-stage2-lto-plugin
 configure-stage3-gcc: maybe-all-stage3-lto-plugin
@@ -49322,7 +49316,6 @@ configure-stage4-gcc: maybe-all-stage4-lto-plugin
 configure-stageprofile-gcc: maybe-all-stageprofile-lto-plugin
 configure-stagefeedback-gcc: maybe-all-stagefeedback-lto-plugin
 configure-gcc: maybe-all-binutils
-
 configure-stage1-gcc: maybe-all-stage1-binutils
 configure-stage2-gcc: maybe-all-stage2-binutils
 configure-stage3-gcc: maybe-all-stage3-binutils
@@ -49330,7 +49323,6 @@ configure-stage4-gcc: maybe-all-stage4-binutils
 configure-stageprofile-gcc: maybe-all-stageprofile-binutils
 configure-stagefeedback-gcc: maybe-all-stagefeedback-binutils
 configure-gcc: maybe-all-gas
-
 configure-stage1-gcc: maybe-all-stage1-gas
 configure-stage2-gcc: maybe-all-stage2-gas
 configure-stage3-gcc: maybe-all-stage3-gas
@@ -49338,7 +49330,6 @@ configure-stage4-gcc: maybe-all-stage4-gas
 configure-stageprofile-gcc: maybe-all-stageprofile-gas
 configure-stagefeedback-gcc: maybe-all-stagefeedback-gas
 configure-gcc: maybe-all-ld
-
 configure-stage1-gcc: maybe-all-stage1-ld
 configure-stage2-gcc: maybe-all-stage2-ld
 configure-stage3-gcc: maybe-all-stage3-ld
@@ -49346,7 +49337,6 @@ configure-stage4-gcc: maybe-all-stage4-ld
 configure-stageprofile-gcc: maybe-all-stageprofile-ld
 configure-stagefeedback-gcc: maybe-all-stagefeedback-ld
 configure-gcc: maybe-all-gold
-
 configure-stage1-gcc: maybe-all-stage1-gold
 configure-stage2-gcc: maybe-all-stage2-gold
 configure-stage3-gcc: maybe-all-stage3-gold
@@ -49354,7 +49344,6 @@ configure-stage4-gcc: maybe-all-stage4-gold
 configure-stageprofile-gcc: maybe-all-stageprofile-gold
 configure-stagefeedback-gcc: maybe-all-stagefeedback-gold
 configure-gcc: maybe-all-libelf
-
 configure-stage1-gcc: maybe-all-stage1-libelf
 configure-stage2-gcc: maybe-all-stage2-libelf
 configure-stage3-gcc: maybe-all-stage3-libelf
@@ -49362,7 +49351,6 @@ configure-stage4-gcc: maybe-all-stage4-libelf
 configure-stageprofile-gcc: maybe-all-stageprofile-libelf
 configure-stagefeedback-gcc: maybe-all-stagefeedback-libelf
 configure-gcc: maybe-all-libiconv
-
 configure-stage1-gcc: maybe-all-stage1-libiconv
 configure-stage2-gcc: maybe-all-stage2-libiconv
 configure-stage3-gcc: maybe-all-stage3-libiconv
@@ -49370,7 +49358,6 @@ configure-stage4-gcc: maybe-all-stage4-libiconv
 configure-stageprofile-gcc: maybe-all-stageprofile-libiconv
 configure-stagefeedback-gcc: maybe-all-stagefeedback-libiconv
 all-gcc: all-libiberty
-
 all-stage1-gcc: all-stage1-libiberty
 all-stage2-gcc: all-stage2-libiberty
 all-stage3-gcc: all-stage3-libiberty
@@ -49378,7 +49365,6 @@ all-stage4-gcc: all-stage4-libiberty
 all-stageprofile-gcc: all-stageprofile-libiberty
 all-stagefeedback-gcc: all-stagefeedback-libiberty
 all-gcc: maybe-all-intl
-
 all-stage1-gcc: maybe-all-stage1-intl
 all-stage2-gcc: maybe-all-stage2-intl
 all-stage3-gcc: maybe-all-stage3-intl
@@ -49386,7 +49372,6 @@ all-stage4-gcc: maybe-all-stage4-intl
 all-stageprofile-gcc: maybe-all-stageprofile-intl
 all-stagefeedback-gcc: maybe-all-stagefeedback-intl
 all-gcc: maybe-all-mpfr
-
 all-stage1-gcc: maybe-all-stage1-mpfr
 all-stage2-gcc: maybe-all-stage2-mpfr
 all-stage3-gcc: maybe-all-stage3-mpfr
@@ -49394,7 +49379,6 @@ all-stage4-gcc: maybe-all-stage4-mpfr
 all-stageprofile-gcc: maybe-all-stageprofile-mpfr
 all-stagefeedback-gcc: maybe-all-stagefeedback-mpfr
 all-gcc: maybe-all-mpc
-
 all-stage1-gcc: maybe-all-stage1-mpc
 all-stage2-gcc: maybe-all-stage2-mpc
 all-stage3-gcc: maybe-all-stage3-mpc
@@ -49402,7 +49386,6 @@ all-stage4-gcc: maybe-all-stage4-mpc
 all-stageprofile-gcc: maybe-all-stageprofile-mpc
 all-stagefeedback-gcc: maybe-all-stagefeedback-mpc
 all-gcc: maybe-all-isl
-
 all-stage1-gcc: maybe-all-stage1-isl
 all-stage2-gcc: maybe-all-stage2-isl
 all-stage3-gcc: maybe-all-stage3-isl
@@ -49410,7 +49393,6 @@ all-stage4-gcc: maybe-all-stage4-isl
 all-stageprofile-gcc: maybe-all-stageprofile-isl
 all-stagefeedback-gcc: maybe-all-stagefeedback-isl
 all-gcc: maybe-all-build-texinfo
-
 all-stage1-gcc: maybe-all-build-texinfo
 all-stage2-gcc: maybe-all-build-texinfo
 all-stage3-gcc: maybe-all-build-texinfo
@@ -49418,7 +49400,6 @@ all-stage4-gcc: maybe-all-build-texinfo
 all-stageprofile-gcc: maybe-all-build-texinfo
 all-stagefeedback-gcc: maybe-all-build-texinfo
 all-gcc: maybe-all-build-bison
-
 all-stage1-gcc: maybe-all-build-bison
 all-stage2-gcc: maybe-all-build-bison
 all-stage3-gcc: maybe-all-build-bison
@@ -49426,7 +49407,6 @@ all-stage4-gcc: maybe-all-build-bison
 all-stageprofile-gcc: maybe-all-build-bison
 all-stagefeedback-gcc: maybe-all-build-bison
 all-gcc: maybe-all-build-flex
-
 all-stage1-gcc: maybe-all-build-flex
 all-stage2-gcc: maybe-all-build-flex
 all-stage3-gcc: maybe-all-build-flex
@@ -49434,7 +49414,6 @@ all-stage4-gcc: maybe-all-build-flex
 all-stageprofile-gcc: maybe-all-build-flex
 all-stagefeedback-gcc: maybe-all-build-flex
 all-gcc: maybe-all-build-libiberty
-
 all-stage1-gcc: maybe-all-build-libiberty
 all-stage2-gcc: maybe-all-build-libiberty
 all-stage3-gcc: maybe-all-build-libiberty
@@ -49442,7 +49421,6 @@ all-stage4-gcc: maybe-all-build-libiberty
 all-stageprofile-gcc: maybe-all-build-libiberty
 all-stagefeedback-gcc: maybe-all-build-libiberty
 all-gcc: maybe-all-build-fixincludes
-
 all-stage1-gcc: maybe-all-build-fixincludes
 all-stage2-gcc: maybe-all-build-fixincludes
 all-stage3-gcc: maybe-all-build-fixincludes
@@ -49450,7 +49428,6 @@ all-stage4-gcc: maybe-all-build-fixincludes
 all-stageprofile-gcc: maybe-all-build-fixincludes
 all-stagefeedback-gcc: maybe-all-build-fixincludes
 all-gcc: maybe-all-build-libcpp
-
 all-stage1-gcc: maybe-all-build-libcpp
 all-stage2-gcc: maybe-all-build-libcpp
 all-stage3-gcc: maybe-all-build-libcpp
@@ -49458,7 +49435,6 @@ all-stage4-gcc: maybe-all-build-libcpp
 all-stageprofile-gcc: maybe-all-build-libcpp
 all-stagefeedback-gcc: maybe-all-build-libcpp
 all-gcc: maybe-all-zlib
-
 all-stage1-gcc: maybe-all-stage1-zlib
 all-stage2-gcc: maybe-all-stage2-zlib
 all-stage3-gcc: maybe-all-stage3-zlib
@@ -49466,7 +49442,6 @@ all-stage4-gcc: maybe-all-stage4-zlib
 all-stageprofile-gcc: maybe-all-stageprofile-zlib
 all-stagefeedback-gcc: maybe-all-stagefeedback-zlib
 all-gcc: all-libbacktrace
-
 all-stage1-gcc: all-stage1-libbacktrace
 all-stage2-gcc: all-stage2-libbacktrace
 all-stage3-gcc: all-stage3-libbacktrace
@@ -49474,7 +49449,6 @@ all-stage4-gcc: all-stage4-libbacktrace
 all-stageprofile-gcc: all-stageprofile-libbacktrace
 all-stagefeedback-gcc: all-stagefeedback-libbacktrace
 all-gcc: all-libcpp
-
 all-stage1-gcc: all-stage1-libcpp
 all-stage2-gcc: all-stage2-libcpp
 all-stage3-gcc: all-stage3-libcpp
@@ -49482,7 +49456,6 @@ all-stage4-gcc: all-stage4-libcpp
 all-stageprofile-gcc: all-stageprofile-libcpp
 all-stagefeedback-gcc: all-stagefeedback-libcpp
 all-gcc: all-libdecnumber
-
 all-stage1-gcc: all-stage1-libdecnumber
 all-stage2-gcc: all-stage2-libdecnumber
 all-stage3-gcc: all-stage3-libdecnumber
@@ -49490,7 +49463,6 @@ all-stage4-gcc: all-stage4-libdecnumber
 all-stageprofile-gcc: all-stageprofile-libdecnumber
 all-stagefeedback-gcc: all-stagefeedback-libdecnumber
 all-gcc: maybe-all-libiberty
-
 all-stage1-gcc: maybe-all-stage1-libiberty
 all-stage2-gcc: maybe-all-stage2-libiberty
 all-stage3-gcc: maybe-all-stage3-libiberty
@@ -49498,7 +49470,6 @@ all-stage4-gcc: maybe-all-stage4-libiberty
 all-stageprofile-gcc: maybe-all-stageprofile-libiberty
 all-stagefeedback-gcc: maybe-all-stagefeedback-libiberty
 all-gcc: maybe-all-fixincludes
-
 all-stage1-gcc: maybe-all-stage1-fixincludes
 all-stage2-gcc: maybe-all-stage2-fixincludes
 all-stage3-gcc: maybe-all-stage3-fixincludes
@@ -49506,7 +49477,6 @@ all-stage4-gcc: maybe-all-stage4-fixincludes
 all-stageprofile-gcc: maybe-all-stageprofile-fixincludes
 all-stagefeedback-gcc: maybe-all-stagefeedback-fixincludes
 all-gcc: maybe-all-lto-plugin
-
 all-stage1-gcc: maybe-all-stage1-lto-plugin
 all-stage2-gcc: maybe-all-stage2-lto-plugin
 all-stage3-gcc: maybe-all-stage3-lto-plugin
@@ -49514,7 +49484,6 @@ all-stage4-gcc: maybe-all-stage4-lto-plugin
 all-stageprofile-gcc: maybe-all-stageprofile-lto-plugin
 all-stagefeedback-gcc: maybe-all-stagefeedback-lto-plugin
 all-gcc: maybe-all-libiconv
-
 all-stage1-gcc: maybe-all-stage1-libiconv
 all-stage2-gcc: maybe-all-stage2-libiconv
 all-stage3-gcc: maybe-all-stage3-libiconv
@@ -49522,7 +49491,6 @@ all-stage4-gcc: maybe-all-stage4-libiconv
 all-stageprofile-gcc: maybe-all-stageprofile-libiconv
 all-stagefeedback-gcc: maybe-all-stagefeedback-libiconv
 info-gcc: maybe-all-build-libiberty
-
 info-stage1-gcc: maybe-all-build-libiberty
 info-stage2-gcc: maybe-all-build-libiberty
 info-stage3-gcc: maybe-all-build-libiberty
@@ -49530,7 +49498,6 @@ info-stage4-gcc: maybe-all-build-libiberty
 info-stageprofile-gcc: maybe-all-build-libiberty
 info-stagefeedback-gcc: maybe-all-build-libiberty
 dvi-gcc: maybe-all-build-libiberty
-
 dvi-stage1-gcc: maybe-all-build-libiberty
 dvi-stage2-gcc: maybe-all-build-libiberty
 dvi-stage3-gcc: maybe-all-build-libiberty
@@ -49538,7 +49505,6 @@ dvi-stage4-gcc: maybe-all-build-libiberty
 dvi-stageprofile-gcc: maybe-all-build-libiberty
 dvi-stagefeedback-gcc: maybe-all-build-libiberty
 pdf-gcc: maybe-all-build-libiberty
-
 pdf-stage1-gcc: maybe-all-build-libiberty
 pdf-stage2-gcc: maybe-all-build-libiberty
 pdf-stage3-gcc: maybe-all-build-libiberty
@@ -49546,7 +49512,6 @@ pdf-stage4-gcc: maybe-all-build-libiberty
 pdf-stageprofile-gcc: maybe-all-build-libiberty
 pdf-stagefeedback-gcc: maybe-all-build-libiberty
 html-gcc: maybe-all-build-libiberty
-
 html-stage1-gcc: maybe-all-build-libiberty
 html-stage2-gcc: maybe-all-build-libiberty
 html-stage3-gcc: maybe-all-build-libiberty
@@ -49558,7 +49523,6 @@ install-gcc: maybe-install-lto-plugin
 install-strip-gcc: maybe-install-strip-fixincludes
 install-strip-gcc: maybe-install-strip-lto-plugin
 configure-libcpp: configure-libiberty
-
 configure-stage1-libcpp: configure-stage1-libiberty
 configure-stage2-libcpp: configure-stage2-libiberty
 configure-stage3-libcpp: configure-stage3-libiberty
@@ -49566,7 +49530,6 @@ configure-stage4-libcpp: configure-stage4-libiberty
 configure-stageprofile-libcpp: configure-stageprofile-libiberty
 configure-stagefeedback-libcpp: configure-stagefeedback-libiberty
 configure-libcpp: maybe-configure-intl
-
 configure-stage1-libcpp: maybe-configure-stage1-intl
 configure-stage2-libcpp: maybe-configure-stage2-intl
 configure-stage3-libcpp: maybe-configure-stage3-intl
@@ -49574,7 +49537,6 @@ configure-stage4-libcpp: maybe-configure-stage4-intl
 configure-stageprofile-libcpp: maybe-configure-stageprofile-intl
 configure-stagefeedback-libcpp: maybe-configure-stagefeedback-intl
 configure-libcpp: maybe-all-libiconv
-
 configure-stage1-libcpp: maybe-all-stage1-libiconv
 configure-stage2-libcpp: maybe-all-stage2-libiconv
 configure-stage3-libcpp: maybe-all-stage3-libiconv
@@ -49582,7 +49544,6 @@ configure-stage4-libcpp: maybe-all-stage4-libiconv
 configure-stageprofile-libcpp: maybe-all-stageprofile-libiconv
 configure-stagefeedback-libcpp: maybe-all-stagefeedback-libiconv
 all-libcpp: all-libiberty
-
 all-stage1-libcpp: all-stage1-libiberty
 all-stage2-libcpp: all-stage2-libiberty
 all-stage3-libcpp: all-stage3-libiberty
@@ -49590,7 +49551,6 @@ all-stage4-libcpp: all-stage4-libiberty
 all-stageprofile-libcpp: all-stageprofile-libiberty
 all-stagefeedback-libcpp: all-stagefeedback-libiberty
 all-libcpp: maybe-all-intl
-
 all-stage1-libcpp: maybe-all-stage1-intl
 all-stage2-libcpp: maybe-all-stage2-intl
 all-stage3-libcpp: maybe-all-stage3-intl
@@ -49598,7 +49558,6 @@ all-stage4-libcpp: maybe-all-stage4-intl
 all-stageprofile-libcpp: maybe-all-stageprofile-intl
 all-stagefeedback-libcpp: maybe-all-stagefeedback-intl
 all-libcpp: maybe-all-libiconv
-
 all-stage1-libcpp: maybe-all-stage1-libiconv
 all-stage2-libcpp: maybe-all-stage2-libiconv
 all-stage3-libcpp: maybe-all-stage3-libiconv
@@ -49606,7 +49565,6 @@ all-stage4-libcpp: maybe-all-stage4-libiconv
 all-stageprofile-libcpp: maybe-all-stageprofile-libiconv
 all-stagefeedback-libcpp: maybe-all-stagefeedback-libiconv
 all-fixincludes: maybe-all-libiberty
-
 all-stage1-fixincludes: maybe-all-stage1-libiberty
 all-stage2-fixincludes: maybe-all-stage2-libiberty
 all-stage3-fixincludes: maybe-all-stage3-libiberty
@@ -49614,9 +49572,7 @@ all-stage4-fixincludes: maybe-all-stage4-libiberty
 all-stageprofile-fixincludes: maybe-all-stageprofile-libiberty
 all-stagefeedback-fixincludes: maybe-all-stagefeedback-libiberty
 all-gnattools: maybe-all-target-libada
-all-gnattools: maybe-all-target-libstdc++-v3
 all-lto-plugin: maybe-all-libiberty
-
 all-stage1-lto-plugin: maybe-all-stage1-libiberty
 all-stage2-lto-plugin: maybe-all-stage2-libiberty
 all-stage3-lto-plugin: maybe-all-stage3-libiberty
@@ -49624,19 +49580,14 @@ all-stage4-lto-plugin: maybe-all-stage4-libiberty
 all-stageprofile-lto-plugin: maybe-all-stageprofile-libiberty
 all-stagefeedback-lto-plugin: maybe-all-stagefeedback-libiberty
 all-lto-plugin: maybe-all-libiberty-linker-plugin
-
 all-stage1-lto-plugin: maybe-all-stage1-libiberty-linker-plugin
 all-stage2-lto-plugin: maybe-all-stage2-libiberty-linker-plugin
 all-stage3-lto-plugin: maybe-all-stage3-libiberty-linker-plugin
 all-stage4-lto-plugin: maybe-all-stage4-libiberty-linker-plugin
 all-stageprofile-lto-plugin: maybe-all-stageprofile-libiberty-linker-plugin
 all-stagefeedback-lto-plugin: maybe-all-stagefeedback-libiberty-linker-plugin
-configure-libcc1: maybe-configure-gcc
-all-libcc1: maybe-all-gcc
 all-gotools: maybe-all-target-libgo
-all-utils: maybe-all-libiberty
 configure-intl: maybe-all-libiconv
-
 configure-stage1-intl: maybe-all-stage1-libiconv
 configure-stage2-intl: maybe-all-stage2-libiconv
 configure-stage3-intl: maybe-all-stage3-libiconv
@@ -49644,7 +49595,6 @@ configure-stage4-intl: maybe-all-stage4-libiconv
 configure-stageprofile-intl: maybe-all-stageprofile-libiconv
 configure-stagefeedback-intl: maybe-all-stagefeedback-libiconv
 configure-mpfr: maybe-all-gmp
-
 configure-stage1-mpfr: maybe-all-stage1-gmp
 configure-stage2-mpfr: maybe-all-stage2-gmp
 configure-stage3-mpfr: maybe-all-stage3-gmp
@@ -49652,7 +49602,6 @@ configure-stage4-mpfr: maybe-all-stage4-gmp
 configure-stageprofile-mpfr: maybe-all-stageprofile-gmp
 configure-stagefeedback-mpfr: maybe-all-stagefeedback-gmp
 configure-mpc: maybe-all-mpfr
-
 configure-stage1-mpc: maybe-all-stage1-mpfr
 configure-stage2-mpc: maybe-all-stage2-mpfr
 configure-stage3-mpc: maybe-all-stage3-mpfr
@@ -49660,7 +49609,6 @@ configure-stage4-mpc: maybe-all-stage4-mpfr
 configure-stageprofile-mpc: maybe-all-stageprofile-mpfr
 configure-stagefeedback-mpc: maybe-all-stagefeedback-mpfr
 configure-isl: maybe-all-gmp
-
 configure-stage1-isl: maybe-all-stage1-gmp
 configure-stage2-isl: maybe-all-stage2-gmp
 configure-stage3-isl: maybe-all-stage3-gmp
@@ -49668,24 +49616,16 @@ configure-stage4-isl: maybe-all-stage4-gmp
 configure-stageprofile-isl: maybe-all-stageprofile-gmp
 configure-stagefeedback-isl: maybe-all-stagefeedback-gmp
 all-intl: maybe-all-libiconv
-
 all-stage1-intl: maybe-all-stage1-libiconv
 all-stage2-intl: maybe-all-stage2-libiconv
 all-stage3-intl: maybe-all-stage3-libiconv
 all-stage4-intl: maybe-all-stage4-libiconv
 all-stageprofile-intl: maybe-all-stageprofile-libiconv
 all-stagefeedback-intl: maybe-all-stagefeedback-libiconv
-configure-gdb: maybe-all-intl
 configure-gdb: maybe-configure-sim
-configure-gdb: maybe-all-bfd
-configure-gdb: maybe-all-libiconv
-all-gdb: maybe-all-libiberty
-all-gdb: maybe-all-libiconv
-all-gdb: maybe-all-opcodes
 all-gdb: maybe-all-readline
 all-gdb: maybe-all-build-bison
 all-gdb: maybe-all-sim
-all-gdb: maybe-all-libdecnumber
 all-gdb: maybe-all-libtermcap
 configure-libgui: maybe-configure-tcl
 configure-libgui: maybe-configure-tk
@@ -49693,7 +49633,6 @@ all-libgui: maybe-all-tcl
 all-libgui: maybe-all-tk
 all-libgui: maybe-all-itcl
 configure-bfd: configure-libiberty
-
 configure-stage1-bfd: configure-stage1-libiberty
 configure-stage2-bfd: configure-stage2-libiberty
 configure-stage3-bfd: configure-stage3-libiberty
@@ -49701,7 +49640,6 @@ configure-stage4-bfd: configure-stage4-libiberty
 configure-stageprofile-bfd: configure-stageprofile-libiberty
 configure-stagefeedback-bfd: configure-stagefeedback-libiberty
 configure-bfd: maybe-configure-intl
-
 configure-stage1-bfd: maybe-configure-stage1-intl
 configure-stage2-bfd: maybe-configure-stage2-intl
 configure-stage3-bfd: maybe-configure-stage3-intl
@@ -49709,7 +49647,6 @@ configure-stage4-bfd: maybe-configure-stage4-intl
 configure-stageprofile-bfd: maybe-configure-stageprofile-intl
 configure-stagefeedback-bfd: maybe-configure-stagefeedback-intl
 all-bfd: maybe-all-libiberty
-
 all-stage1-bfd: maybe-all-stage1-libiberty
 all-stage2-bfd: maybe-all-stage2-libiberty
 all-stage3-bfd: maybe-all-stage3-libiberty
@@ -49717,7 +49654,6 @@ all-stage4-bfd: maybe-all-stage4-libiberty
 all-stageprofile-bfd: maybe-all-stageprofile-libiberty
 all-stagefeedback-bfd: maybe-all-stagefeedback-libiberty
 all-bfd: maybe-all-intl
-
 all-stage1-bfd: maybe-all-stage1-intl
 all-stage2-bfd: maybe-all-stage2-intl
 all-stage3-bfd: maybe-all-stage3-intl
@@ -49725,7 +49661,6 @@ all-stage4-bfd: maybe-all-stage4-intl
 all-stageprofile-bfd: maybe-all-stageprofile-intl
 all-stagefeedback-bfd: maybe-all-stagefeedback-intl
 all-bfd: maybe-all-zlib
-
 all-stage1-bfd: maybe-all-stage1-zlib
 all-stage2-bfd: maybe-all-stage2-zlib
 all-stage3-bfd: maybe-all-stage3-zlib
@@ -49733,7 +49668,6 @@ all-stage4-bfd: maybe-all-stage4-zlib
 all-stageprofile-bfd: maybe-all-stageprofile-zlib
 all-stagefeedback-bfd: maybe-all-stagefeedback-zlib
 configure-opcodes: configure-libiberty
-
 configure-stage1-opcodes: configure-stage1-libiberty
 configure-stage2-opcodes: configure-stage2-libiberty
 configure-stage3-opcodes: configure-stage3-libiberty
@@ -49741,7 +49675,6 @@ configure-stage4-opcodes: configure-stage4-libiberty
 configure-stageprofile-opcodes: configure-stageprofile-libiberty
 configure-stagefeedback-opcodes: configure-stagefeedback-libiberty
 all-opcodes: maybe-all-libiberty
-
 all-stage1-opcodes: maybe-all-stage1-libiberty
 all-stage2-opcodes: maybe-all-stage2-libiberty
 all-stage3-opcodes: maybe-all-stage3-libiberty
@@ -49749,7 +49682,6 @@ all-stage4-opcodes: maybe-all-stage4-libiberty
 all-stageprofile-opcodes: maybe-all-stageprofile-libiberty
 all-stagefeedback-opcodes: maybe-all-stagefeedback-libiberty
 configure-binutils: maybe-configure-intl
-
 configure-stage1-binutils: maybe-configure-stage1-intl
 configure-stage2-binutils: maybe-configure-stage2-intl
 configure-stage3-binutils: maybe-configure-stage3-intl
@@ -49757,7 +49689,6 @@ configure-stage4-binutils: maybe-configure-stage4-intl
 configure-stageprofile-binutils: maybe-configure-stageprofile-intl
 configure-stagefeedback-binutils: maybe-configure-stagefeedback-intl
 all-binutils: maybe-all-libiberty
-
 all-stage1-binutils: maybe-all-stage1-libiberty
 all-stage2-binutils: maybe-all-stage2-libiberty
 all-stage3-binutils: maybe-all-stage3-libiberty
@@ -49765,7 +49696,6 @@ all-stage4-binutils: maybe-all-stage4-libiberty
 all-stageprofile-binutils: maybe-all-stageprofile-libiberty
 all-stagefeedback-binutils: maybe-all-stagefeedback-libiberty
 all-binutils: maybe-all-opcodes
-
 all-stage1-binutils: maybe-all-stage1-opcodes
 all-stage2-binutils: maybe-all-stage2-opcodes
 all-stage3-binutils: maybe-all-stage3-opcodes
@@ -49773,7 +49703,6 @@ all-stage4-binutils: maybe-all-stage4-opcodes
 all-stageprofile-binutils: maybe-all-stageprofile-opcodes
 all-stagefeedback-binutils: maybe-all-stagefeedback-opcodes
 all-binutils: maybe-all-bfd
-
 all-stage1-binutils: maybe-all-stage1-bfd
 all-stage2-binutils: maybe-all-stage2-bfd
 all-stage3-binutils: maybe-all-stage3-bfd
@@ -49781,7 +49710,6 @@ all-stage4-binutils: maybe-all-stage4-bfd
 all-stageprofile-binutils: maybe-all-stageprofile-bfd
 all-stagefeedback-binutils: maybe-all-stagefeedback-bfd
 all-binutils: maybe-all-build-flex
-
 all-stage1-binutils: maybe-all-build-flex
 all-stage2-binutils: maybe-all-build-flex
 all-stage3-binutils: maybe-all-build-flex
@@ -49789,7 +49717,6 @@ all-stage4-binutils: maybe-all-build-flex
 all-stageprofile-binutils: maybe-all-build-flex
 all-stagefeedback-binutils: maybe-all-build-flex
 all-binutils: maybe-all-build-bison
-
 all-stage1-binutils: maybe-all-build-bison
 all-stage2-binutils: maybe-all-build-bison
 all-stage3-binutils: maybe-all-build-bison
@@ -49797,7 +49724,6 @@ all-stage4-binutils: maybe-all-build-bison
 all-stageprofile-binutils: maybe-all-build-bison
 all-stagefeedback-binutils: maybe-all-build-bison
 all-binutils: maybe-all-intl
-
 all-stage1-binutils: maybe-all-stage1-intl
 all-stage2-binutils: maybe-all-stage2-intl
 all-stage3-binutils: maybe-all-stage3-intl
@@ -49805,7 +49731,6 @@ all-stage4-binutils: maybe-all-stage4-intl
 all-stageprofile-binutils: maybe-all-stageprofile-intl
 all-stagefeedback-binutils: maybe-all-stagefeedback-intl
 all-binutils: maybe-all-gas
-
 all-stage1-binutils: maybe-all-stage1-gas
 all-stage2-binutils: maybe-all-stage2-gas
 all-stage3-binutils: maybe-all-stage3-gas
@@ -49817,7 +49742,6 @@ install-strip-binutils: maybe-install-strip-opcodes
 install-opcodes: maybe-install-bfd
 install-strip-opcodes: maybe-install-strip-bfd
 configure-gas: maybe-configure-intl
-
 configure-stage1-gas: maybe-configure-stage1-intl
 configure-stage2-gas: maybe-configure-stage2-intl
 configure-stage3-gas: maybe-configure-stage3-intl
@@ -49825,7 +49749,6 @@ configure-stage4-gas: maybe-configure-stage4-intl
 configure-stageprofile-gas: maybe-configure-stageprofile-intl
 configure-stagefeedback-gas: maybe-configure-stagefeedback-intl
 all-gas: maybe-all-libiberty
-
 all-stage1-gas: maybe-all-stage1-libiberty
 all-stage2-gas: maybe-all-stage2-libiberty
 all-stage3-gas: maybe-all-stage3-libiberty
@@ -49833,7 +49756,6 @@ all-stage4-gas: maybe-all-stage4-libiberty
 all-stageprofile-gas: maybe-all-stageprofile-libiberty
 all-stagefeedback-gas: maybe-all-stagefeedback-libiberty
 all-gas: maybe-all-opcodes
-
 all-stage1-gas: maybe-all-stage1-opcodes
 all-stage2-gas: maybe-all-stage2-opcodes
 all-stage3-gas: maybe-all-stage3-opcodes
@@ -49841,7 +49763,6 @@ all-stage4-gas: maybe-all-stage4-opcodes
 all-stageprofile-gas: maybe-all-stageprofile-opcodes
 all-stagefeedback-gas: maybe-all-stagefeedback-opcodes
 all-gas: maybe-all-bfd
-
 all-stage1-gas: maybe-all-stage1-bfd
 all-stage2-gas: maybe-all-stage2-bfd
 all-stage3-gas: maybe-all-stage3-bfd
@@ -49849,21 +49770,13 @@ all-stage4-gas: maybe-all-stage4-bfd
 all-stageprofile-gas: maybe-all-stageprofile-bfd
 all-stagefeedback-gas: maybe-all-stagefeedback-bfd
 all-gas: maybe-all-intl
-
 all-stage1-gas: maybe-all-stage1-intl
 all-stage2-gas: maybe-all-stage2-intl
 all-stage3-gas: maybe-all-stage3-intl
 all-stage4-gas: maybe-all-stage4-intl
 all-stageprofile-gas: maybe-all-stageprofile-intl
 all-stagefeedback-gas: maybe-all-stagefeedback-intl
-configure-gprof: maybe-configure-intl
-all-gprof: maybe-all-libiberty
-all-gprof: maybe-all-bfd
-all-gprof: maybe-all-opcodes
-all-gprof: maybe-all-intl
-all-gprof: maybe-all-gas
 configure-ld: maybe-configure-intl
-
 configure-stage1-ld: maybe-configure-stage1-intl
 configure-stage2-ld: maybe-configure-stage2-intl
 configure-stage3-ld: maybe-configure-stage3-intl
@@ -49871,7 +49784,6 @@ configure-stage4-ld: maybe-configure-stage4-intl
 configure-stageprofile-ld: maybe-configure-stageprofile-intl
 configure-stagefeedback-ld: maybe-configure-stagefeedback-intl
 all-ld: maybe-all-libiberty
-
 all-stage1-ld: maybe-all-stage1-libiberty
 all-stage2-ld: maybe-all-stage2-libiberty
 all-stage3-ld: maybe-all-stage3-libiberty
@@ -49879,7 +49791,6 @@ all-stage4-ld: maybe-all-stage4-libiberty
 all-stageprofile-ld: maybe-all-stageprofile-libiberty
 all-stagefeedback-ld: maybe-all-stagefeedback-libiberty
 all-ld: maybe-all-bfd
-
 all-stage1-ld: maybe-all-stage1-bfd
 all-stage2-ld: maybe-all-stage2-bfd
 all-stage3-ld: maybe-all-stage3-bfd
@@ -49887,7 +49798,6 @@ all-stage4-ld: maybe-all-stage4-bfd
 all-stageprofile-ld: maybe-all-stageprofile-bfd
 all-stagefeedback-ld: maybe-all-stagefeedback-bfd
 all-ld: maybe-all-opcodes
-
 all-stage1-ld: maybe-all-stage1-opcodes
 all-stage2-ld: maybe-all-stage2-opcodes
 all-stage3-ld: maybe-all-stage3-opcodes
@@ -49895,7 +49805,6 @@ all-stage4-ld: maybe-all-stage4-opcodes
 all-stageprofile-ld: maybe-all-stageprofile-opcodes
 all-stagefeedback-ld: maybe-all-stagefeedback-opcodes
 all-ld: maybe-all-build-bison
-
 all-stage1-ld: maybe-all-build-bison
 all-stage2-ld: maybe-all-build-bison
 all-stage3-ld: maybe-all-build-bison
@@ -49903,7 +49812,6 @@ all-stage4-ld: maybe-all-build-bison
 all-stageprofile-ld: maybe-all-build-bison
 all-stagefeedback-ld: maybe-all-build-bison
 all-ld: maybe-all-build-flex
-
 all-stage1-ld: maybe-all-build-flex
 all-stage2-ld: maybe-all-build-flex
 all-stage3-ld: maybe-all-build-flex
@@ -49911,7 +49819,6 @@ all-stage4-ld: maybe-all-build-flex
 all-stageprofile-ld: maybe-all-build-flex
 all-stagefeedback-ld: maybe-all-build-flex
 all-ld: maybe-all-intl
-
 all-stage1-ld: maybe-all-stage1-intl
 all-stage2-ld: maybe-all-stage2-intl
 all-stage3-ld: maybe-all-stage3-intl
@@ -49919,7 +49826,6 @@ all-stage4-ld: maybe-all-stage4-intl
 all-stageprofile-ld: maybe-all-stageprofile-intl
 all-stagefeedback-ld: maybe-all-stagefeedback-intl
 all-ld: maybe-all-gas
-
 all-stage1-ld: maybe-all-stage1-gas
 all-stage2-ld: maybe-all-stage2-gas
 all-stage3-ld: maybe-all-stage3-gas
@@ -49927,7 +49833,6 @@ all-stage4-ld: maybe-all-stage4-gas
 all-stageprofile-ld: maybe-all-stageprofile-gas
 all-stagefeedback-ld: maybe-all-stagefeedback-gas
 all-ld: maybe-all-binutils
-
 all-stage1-ld: maybe-all-stage1-binutils
 all-stage2-ld: maybe-all-stage2-binutils
 all-stage3-ld: maybe-all-stage3-binutils
@@ -49937,7 +49842,6 @@ all-stagefeedback-ld: maybe-all-stagefeedback-binutils
 install-ld: maybe-install-gold
 install-strip-ld: maybe-install-strip-gold
 configure-gold: maybe-configure-intl
-
 configure-stage1-gold: maybe-configure-stage1-intl
 configure-stage2-gold: maybe-configure-stage2-intl
 configure-stage3-gold: maybe-configure-stage3-intl
@@ -49945,7 +49849,6 @@ configure-stage4-gold: maybe-configure-stage4-intl
 configure-stageprofile-gold: maybe-configure-stageprofile-intl
 configure-stagefeedback-gold: maybe-configure-stagefeedback-intl
 all-gold: maybe-all-libiberty
-
 all-stage1-gold: maybe-all-stage1-libiberty
 all-stage2-gold: maybe-all-stage2-libiberty
 all-stage3-gold: maybe-all-stage3-libiberty
@@ -49953,7 +49856,6 @@ all-stage4-gold: maybe-all-stage4-libiberty
 all-stageprofile-gold: maybe-all-stageprofile-libiberty
 all-stagefeedback-gold: maybe-all-stagefeedback-libiberty
 all-gold: maybe-all-intl
-
 all-stage1-gold: maybe-all-stage1-intl
 all-stage2-gold: maybe-all-stage2-intl
 all-stage3-gold: maybe-all-stage3-intl
@@ -49961,7 +49863,6 @@ all-stage4-gold: maybe-all-stage4-intl
 all-stageprofile-gold: maybe-all-stageprofile-intl
 all-stagefeedback-gold: maybe-all-stagefeedback-intl
 all-gold: maybe-all-bfd
-
 all-stage1-gold: maybe-all-stage1-bfd
 all-stage2-gold: maybe-all-stage2-bfd
 all-stage3-gold: maybe-all-stage3-bfd
@@ -49969,7 +49870,6 @@ all-stage4-gold: maybe-all-stage4-bfd
 all-stageprofile-gold: maybe-all-stageprofile-bfd
 all-stagefeedback-gold: maybe-all-stagefeedback-bfd
 all-gold: maybe-all-build-bison
-
 all-stage1-gold: maybe-all-build-bison
 all-stage2-gold: maybe-all-build-bison
 all-stage3-gold: maybe-all-build-bison
@@ -49977,7 +49877,6 @@ all-stage4-gold: maybe-all-build-bison
 all-stageprofile-gold: maybe-all-build-bison
 all-stagefeedback-gold: maybe-all-build-bison
 all-gold: maybe-all-gas
-
 all-stage1-gold: maybe-all-stage1-gas
 all-stage2-gold: maybe-all-stage2-gas
 all-stage3-gold: maybe-all-stage3-gas
@@ -49985,7 +49884,6 @@ all-stage4-gold: maybe-all-stage4-gas
 all-stageprofile-gold: maybe-all-stageprofile-gas
 all-stagefeedback-gold: maybe-all-stagefeedback-gas
 check-gold: maybe-all-binutils
-
 check-stage1-gold: maybe-all-stage1-binutils
 check-stage2-gold: maybe-all-stage2-binutils
 check-stage3-gold: maybe-all-stage3-binutils
@@ -49993,7 +49891,6 @@ check-stage4-gold: maybe-all-stage4-binutils
 check-stageprofile-gold: maybe-all-stageprofile-binutils
 check-stagefeedback-gold: maybe-all-stagefeedback-binutils
 check-gold: maybe-all-gas
-
 check-stage1-gold: maybe-all-stage1-gas
 check-stage2-gold: maybe-all-stage2-gas
 check-stage3-gold: maybe-all-stage3-gas
@@ -50001,7 +49898,6 @@ check-stage4-gold: maybe-all-stage4-gas
 check-stageprofile-gold: maybe-all-stageprofile-gas
 check-stagefeedback-gold: maybe-all-stagefeedback-gas
 configure-opcodes: maybe-configure-intl
-
 configure-stage1-opcodes: maybe-configure-stage1-intl
 configure-stage2-opcodes: maybe-configure-stage2-intl
 configure-stage3-opcodes: maybe-configure-stage3-intl
@@ -50009,7 +49905,6 @@ configure-stage4-opcodes: maybe-configure-stage4-intl
 configure-stageprofile-opcodes: maybe-configure-stageprofile-intl
 configure-stagefeedback-opcodes: maybe-configure-stagefeedback-intl
 all-opcodes: maybe-all-bfd
-
 all-stage1-opcodes: maybe-all-stage1-bfd
 all-stage2-opcodes: maybe-all-stage2-bfd
 all-stage3-opcodes: maybe-all-stage3-bfd
@@ -50017,7 +49912,6 @@ all-stage4-opcodes: maybe-all-stage4-bfd
 all-stageprofile-opcodes: maybe-all-stageprofile-bfd
 all-stagefeedback-opcodes: maybe-all-stagefeedback-bfd
 all-opcodes: maybe-all-libiberty
-
 all-stage1-opcodes: maybe-all-stage1-libiberty
 all-stage2-opcodes: maybe-all-stage2-libiberty
 all-stage3-opcodes: maybe-all-stage3-libiberty
@@ -50025,7 +49919,6 @@ all-stage4-opcodes: maybe-all-stage4-libiberty
 all-stageprofile-opcodes: maybe-all-stageprofile-libiberty
 all-stagefeedback-opcodes: maybe-all-stagefeedback-libiberty
 all-opcodes: maybe-all-intl
-
 all-stage1-opcodes: maybe-all-stage1-intl
 all-stage2-opcodes: maybe-all-stage2-intl
 all-stage3-opcodes: maybe-all-stage3-intl
@@ -50047,51 +49940,34 @@ install-itcl: maybe-install-tcl
 install-strip-itcl: maybe-install-strip-tcl
 configure-tk: maybe-configure-tcl
 all-tk: maybe-all-tcl
-all-sid: maybe-all-libiberty
-all-sid: maybe-all-bfd
-all-sid: maybe-all-opcodes
 all-sid: maybe-all-tcl
 all-sid: maybe-all-tk
 install-sid: maybe-install-tcl
 install-strip-sid: maybe-install-strip-tcl
 install-sid: maybe-install-tk
 install-strip-sid: maybe-install-strip-tk
-configure-sim: maybe-configure-intl
-all-sim: maybe-all-intl
-all-sim: maybe-all-libiberty
-all-sim: maybe-all-bfd
-all-sim: maybe-all-opcodes
 all-sim: maybe-all-readline
 all-sim: maybe-configure-gdb
-all-fastjar: maybe-all-zlib
 all-fastjar: maybe-all-build-texinfo
-all-fastjar: maybe-all-libiberty
-all-bison: maybe-all-intl
 all-bison: maybe-all-build-texinfo
 all-flex: maybe-all-build-bison
-all-flex: maybe-all-intl
 all-flex: maybe-all-m4
 all-flex: maybe-all-build-texinfo
-all-m4: maybe-all-intl
 all-m4: maybe-all-build-texinfo
 configure-target-fastjar: maybe-configure-target-zlib
 all-target-fastjar: maybe-all-target-zlib
 configure-target-libgo: maybe-configure-target-libffi
-configure-target-libgo: maybe-all-target-libstdc++-v3
 all-target-libgo: maybe-all-target-libbacktrace
 all-target-libgo: maybe-all-target-libffi
 all-target-libgo: maybe-all-target-libatomic
 configure-target-libstdc++-v3: maybe-configure-target-libgomp
-
 configure-stage1-target-libstdc++-v3: maybe-configure-stage1-target-libgomp
 configure-stage2-target-libstdc++-v3: maybe-configure-stage2-target-libgomp
 configure-stage3-target-libstdc++-v3: maybe-configure-stage3-target-libgomp
 configure-stage4-target-libstdc++-v3: maybe-configure-stage4-target-libgomp
 configure-stageprofile-target-libstdc++-v3: maybe-configure-stageprofile-target-libgomp
 configure-stagefeedback-target-libstdc++-v3: maybe-configure-stagefeedback-target-libgomp
-configure-target-liboffloadmic: maybe-configure-target-libgomp
 configure-target-libsanitizer: maybe-all-target-libstdc++-v3
-
 configure-stage1-target-libsanitizer: maybe-all-stage1-target-libstdc++-v3
 configure-stage2-target-libsanitizer: maybe-all-stage2-target-libstdc++-v3
 configure-stage3-target-libsanitizer: maybe-all-stage3-target-libstdc++-v3
@@ -50099,7 +49975,6 @@ configure-stage4-target-libsanitizer: maybe-all-stage4-target-libstdc++-v3
 configure-stageprofile-target-libsanitizer: maybe-all-stageprofile-target-libstdc++-v3
 configure-stagefeedback-target-libsanitizer: maybe-all-stagefeedback-target-libstdc++-v3
 configure-target-libvtv: maybe-all-target-libstdc++-v3
-
 configure-stage1-target-libvtv: maybe-all-stage1-target-libstdc++-v3
 configure-stage2-target-libvtv: maybe-all-stage2-target-libstdc++-v3
 configure-stage3-target-libvtv: maybe-all-stage3-target-libstdc++-v3
@@ -50107,14 +49982,12 @@ configure-stage4-target-libvtv: maybe-all-stage4-target-libstdc++-v3
 configure-stageprofile-target-libvtv: maybe-all-stageprofile-target-libstdc++-v3
 configure-stagefeedback-target-libvtv: maybe-all-stagefeedback-target-libstdc++-v3
 all-target-libstdc++-v3: maybe-configure-target-libgomp
-
 all-stage1-target-libstdc++-v3: maybe-configure-stage1-target-libgomp
 all-stage2-target-libstdc++-v3: maybe-configure-stage2-target-libgomp
 all-stage3-target-libstdc++-v3: maybe-configure-stage3-target-libgomp
 all-stage4-target-libstdc++-v3: maybe-configure-stage4-target-libgomp
 all-stageprofile-target-libstdc++-v3: maybe-configure-stageprofile-target-libgomp
 all-stagefeedback-target-libstdc++-v3: maybe-configure-stagefeedback-target-libgomp
-all-target-liboffloadmic: maybe-all-target-libgomp
 install-target-libgo: maybe-install-target-libatomic
 install-target-libgfortran: maybe-install-target-libquadmath
 install-target-libgfortran: maybe-install-target-libgcc
@@ -50131,12 +50004,62 @@ install-target-libobjc: maybe-install-target-libgcc
 install-target-libstdc++-v3: maybe-install-target-libgcc
 all-target-libgloss: maybe-all-target-newlib
 all-target-winsup: maybe-all-target-libtermcap
-configure-target-newlib: maybe-all-binutils
-configure-target-newlib: maybe-all-ld
 configure-target-libgfortran: maybe-all-target-libquadmath
 configure-target-libgfortran: maybe-all-target-libbacktrace
 
 
+@if gcc-bootstrap
+configure-gnattools: stage_last
+configure-libcc1: stage_last
+configure-utils: stage_last
+configure-gdb: stage_last
+configure-gprof: stage_last
+configure-sid: stage_last
+configure-sim: stage_last
+configure-fastjar: stage_last
+configure-bison: stage_last
+configure-flex: stage_last
+configure-m4: stage_last
+@endif gcc-bootstrap
+
+@unless gcc-bootstrap
+all-gnattools: maybe-all-target-libstdc++-v3
+configure-libcc1: maybe-configure-gcc
+all-libcc1: maybe-all-gcc
+all-utils: maybe-all-libiberty
+configure-gdb: maybe-all-intl
+configure-gdb: maybe-all-bfd
+configure-gdb: maybe-all-libiconv
+all-gdb: maybe-all-libiberty
+all-gdb: maybe-all-libiconv
+all-gdb: maybe-all-opcodes
+all-gdb: maybe-all-libdecnumber
+configure-gprof: maybe-configure-intl
+all-gprof: maybe-all-libiberty
+all-gprof: maybe-all-bfd
+all-gprof: maybe-all-opcodes
+all-gprof: maybe-all-intl
+all-gprof: maybe-all-gas
+all-sid: maybe-all-libiberty
+all-sid: maybe-all-bfd
+all-sid: maybe-all-opcodes
+configure-sim: maybe-configure-intl
+all-sim: maybe-all-intl
+all-sim: maybe-all-libiberty
+all-sim: maybe-all-bfd
+all-sim: maybe-all-opcodes
+all-fastjar: maybe-all-zlib
+all-fastjar: maybe-all-libiberty
+all-bison: maybe-all-intl
+all-flex: maybe-all-intl
+all-m4: maybe-all-intl
+configure-target-libgo: maybe-all-target-libstdc++-v3
+configure-target-liboffloadmic: maybe-configure-target-libgomp
+all-target-liboffloadmic: maybe-all-target-libgomp
+configure-target-newlib: maybe-all-binutils
+configure-target-newlib: maybe-all-ld
+@endunless gcc-bootstrap
+
 # Dependencies for target modules on other target modules are
 # described by lang_env_dependencies; the defaults apply to anything
 # not mentioned there.
diff --git a/Makefile.tpl b/Makefile.tpl
index 9d2797b..5b118a8 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -1818,25 +1818,46 @@ configure-target-[+module+]: maybe-all-gcc[+
    (define dep-maybe (lambda ()
       (if (exist? "hard") "" "maybe-")))
 
-   ;; dep-kind returns "normal" if the dependency is on an "install" target,
-   ;; or if either module is not bootstrapped.  It returns "bootstrap" for
-   ;; configure or build dependencies between bootstrapped modules; it returns
-   ;; "prebootstrap" for configure or build dependencies of bootstrapped
-   ;; modules on a build module (e.g. all-gcc on all-build-bison).  All this
-   ;; is only necessary for host modules.
+   ;; dep-kind returns returns "prebootstrap" for configure or build
+   ;; dependencies of bootstrapped modules on a build module
+   ;; (e.g. all-gcc on all-build-bison); "normal" if the dependency is
+   ;; on an "install" target, or if the dependence module is not
+   ;; bootstrapped; otherwise, it returns "bootstrap" or
+   ;; "postbootstrap" depending on whether the dependent module is
+   ;; bootstrapped.  All this is only necessary for host and target
+   ;; modules.  It might seem like, in order to avoid build races, we
+   ;; might need more elaborate detection between prebootstrap and
+   ;; postbootstrap modules, but there are no host prebootstrap
+   ;; modules.  If there were any non-bootstrap host modules that
+   ;; bootstrap modules depended on, we'd get unsatisfied per-stage
+   ;; dependencies on them, which would be immediately noticed.
    (define dep-kind (lambda ()
-      (if (and (hash-ref boot-modules (dep-module "module"))
-	       (=* (dep-module "on") "build-"))
-	  "prebootstrap"
+      (cond
+       ((and (hash-ref boot-modules (dep-module "module"))
+	     (=* (dep-module "on") "build-"))
+	"prebootstrap")
 
-	  (if (or (= (dep-subtarget "on") "install-")
-		  (not (hash-ref boot-modules (dep-module "module")))
-		  (not (hash-ref boot-modules (dep-module "on"))))
-              "normal"
-	      "bootstrap"))))
+       ((or (= (dep-subtarget "on") "install-")
+	    (not (hash-ref boot-modules (dep-module "on"))))
+	"normal")
+
+       ((hash-ref boot-modules (dep-module "module"))
+	"bootstrap")
+
+       (1 "postbootstrap"))))
+
+   (define make-postboot-dep (lambda ()
+     (let ((target (dep-module "module")) (dep "stage_last"))
+       (unless (= (hash-ref postboot-targets target) dep)
+	 (hash-create-handle! postboot-targets target dep)
+	 ;; All non-bootstrap modules' configure target already
+	 ;; depend on dep.
+	 (unless (=* target "target-")
+           (string-append "configure-" target ": " dep "\n"))))))
 
    ;; We now build the hash table that is used by dep-kind.
    (define boot-modules (make-hash-table 113))
+   (define postboot-targets (make-hash-table 113))
 +]
 
 [+ FOR host_modules +][+
@@ -1853,18 +1874,23 @@ configure-target-[+module+]: maybe-all-gcc[+
 # to check for bootstrap/prebootstrap dependencies.  To resolve
 # prebootstrap dependencies, prebootstrap modules are gathered in
 # a hash table.
-[+ FOR dependencies +][+ (make-dep "" "") +]
-[+ CASE (dep-kind) +]
-[+ == "prebootstrap"
-     +][+ FOR bootstrap_stage +]
-[+ (make-dep (dep-stage) "") +][+
-       ENDFOR bootstrap_stage +]
-[+ == "bootstrap"
-     +][+ FOR bootstrap_stage +]
-[+ (make-dep (dep-stage) (dep-stage)) +][+
-       ENDFOR bootstrap_stage +]
-[+ ESAC +][+
-ENDFOR dependencies +]
+[+ FOR dependencies +][+ CASE (dep-kind) +]
+[+ == "prebootstrap" +][+ (make-dep "" "") +][+ FOR bootstrap_stage +]
+[+ (make-dep (dep-stage) "") +][+ ENDFOR bootstrap_stage +]
+[+ == "bootstrap" +][+ (make-dep "" "") +][+ FOR bootstrap_stage +]
+[+ (make-dep (dep-stage) (dep-stage)) +][+ ENDFOR bootstrap_stage +]
+[+ == "normal" +][+ (make-dep "" "") +]
+[+ ESAC +][+ ENDFOR dependencies +]
+
+@if gcc-bootstrap
+[+ FOR dependencies +][+ CASE (dep-kind) +]
+[+ == "postbootstrap" +][+ (make-postboot-dep) +][+ ESAC +][+
+ENDFOR dependencies +]@endif gcc-bootstrap
+
+@unless gcc-bootstrap
+[+ FOR dependencies +][+ CASE (dep-kind) +]
+[+ == "postbootstrap" +][+ (make-dep "" "") +]
+[+ ESAC +][+ ENDFOR dependencies +]@endunless gcc-bootstrap
 
 # Dependencies for target modules on other target modules are
 # described by lang_env_dependencies; the defaults apply to anything
diff --git a/configure b/configure
index 462ad05..08dd35c 100755
--- a/configure
+++ b/configure
@@ -7190,7 +7190,9 @@ INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g`
 # extrasub-{build,host,target} not because there is any reason to split
 # the substitutions up that way, but only to remain below the limit of
 # 99 commands in a script, for HP-UX sed.
-# Do not nest @if/@endif pairs, because configure will not warn you at all.
+
+# Do not nest @if/@endif or @unless/@endunless pairs, because
+# configure will not warn you at all.
 
 case "$enable_bootstrap:$ENABLE_GOLD: $configdirs :,$stage1_languages," in
   yes:yes:*\ gold\ *:*,c++,*) ;;
@@ -7209,8 +7211,10 @@ for module in ${build_configdirs} ; do
   extrasub_build="$extrasub_build
 /^@if build-$module\$/d
 /^@endif build-$module\$/d
+/^@unless build-$module\$/,/^@endunless build-$module\$/d
 /^@if build-$module-$bootstrap_suffix\$/d
-/^@endif build-$module-$bootstrap_suffix\$/d"
+/^@endif build-$module-$bootstrap_suffix\$/d
+/^@unless build-$module-$bootstrap_suffix\$/,/^@endunless build-$module-$bootstrap_suffix\$/d"
 done
 extrasub_host=
 for module in ${configdirs} ; do
@@ -7229,8 +7233,10 @@ for module in ${configdirs} ; do
   extrasub_host="$extrasub_host
 /^@if $module\$/d
 /^@endif $module\$/d
+/^@unless $module\$/,/^@endunless $module\$/d
 /^@if $module-$host_bootstrap_suffix\$/d
-/^@endif $module-$host_bootstrap_suffix\$/d"
+/^@endif $module-$host_bootstrap_suffix\$/d
+/^@unless $module-$host_bootstrap_suffix\$/,/^@endunless $module-$host_bootstrap_suffix\$/d"
 done
 extrasub_target=
 for module in ${target_configdirs} ; do
@@ -7249,13 +7255,17 @@ for module in ${target_configdirs} ; do
   extrasub_target="$extrasub_target
 /^@if target-$module\$/d
 /^@endif target-$module\$/d
+/^@unless target-$module\$/,/^@endunless target-$module\$/d
 /^@if target-$module-$target_bootstrap_suffix\$/d
-/^@endif target-$module-$target_bootstrap_suffix\$/d"
+/^@endif target-$module-$target_bootstrap_suffix\$/d
+/^@unless target-$module-$target_bootstrap_suffix\$/,/^@endunless target-$module-$target_bootstrap_suffix\$/d"
 done
 
 # Do the final fixup along with target modules.
 extrasub_target="$extrasub_target
-/^@if /,/^@endif /d"
+/^@if /,/^@endif /d
+/^@unless /d
+/^@endunless /d"
 
 # Create the serialization dependencies.  This uses a temporary file.
 
diff --git a/configure.ac b/configure.ac
index a638f69..99229d9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2718,7 +2718,9 @@ INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g`
 # extrasub-{build,host,target} not because there is any reason to split
 # the substitutions up that way, but only to remain below the limit of
 # 99 commands in a script, for HP-UX sed.
-# Do not nest @if/@endif pairs, because configure will not warn you at all.
+
+# Do not nest @if/@endif or @unless/@endunless pairs, because
+# configure will not warn you at all.
 
 case "$enable_bootstrap:$ENABLE_GOLD: $configdirs :,$stage1_languages," in
   yes:yes:*\ gold\ *:*,c++,*) ;;
@@ -2737,8 +2739,10 @@ for module in ${build_configdirs} ; do
   extrasub_build="$extrasub_build
 /^@if build-$module\$/d
 /^@endif build-$module\$/d
+/^@unless build-$module\$/,/^@endunless build-$module\$/d
 /^@if build-$module-$bootstrap_suffix\$/d
-/^@endif build-$module-$bootstrap_suffix\$/d"
+/^@endif build-$module-$bootstrap_suffix\$/d
+/^@unless build-$module-$bootstrap_suffix\$/,/^@endunless build-$module-$bootstrap_suffix\$/d"
 done
 extrasub_host=
 for module in ${configdirs} ; do
@@ -2757,8 +2761,10 @@ for module in ${configdirs} ; do
   extrasub_host="$extrasub_host
 /^@if $module\$/d
 /^@endif $module\$/d
+/^@unless $module\$/,/^@endunless $module\$/d
 /^@if $module-$host_bootstrap_suffix\$/d
-/^@endif $module-$host_bootstrap_suffix\$/d"
+/^@endif $module-$host_bootstrap_suffix\$/d
+/^@unless $module-$host_bootstrap_suffix\$/,/^@endunless $module-$host_bootstrap_suffix\$/d"
 done
 extrasub_target=
 for module in ${target_configdirs} ; do
@@ -2777,13 +2783,17 @@ for module in ${target_configdirs} ; do
   extrasub_target="$extrasub_target
 /^@if target-$module\$/d
 /^@endif target-$module\$/d
+/^@unless target-$module\$/,/^@endunless target-$module\$/d
 /^@if target-$module-$target_bootstrap_suffix\$/d
-/^@endif target-$module-$target_bootstrap_suffix\$/d"
+/^@endif target-$module-$target_bootstrap_suffix\$/d
+/^@unless target-$module-$target_bootstrap_suffix\$/,/^@endunless target-$module-$target_bootstrap_suffix\$/d"
 done
 
 # Do the final fixup along with target modules.
 extrasub_target="$extrasub_target
-/^@if /,/^@endif /d"
+/^@if /,/^@endif /d
+/^@unless /d
+/^@endunless /d"
 
 # Create the serialization dependencies.  This uses a temporary file.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]