> Huh, indeed - it's a host_module without bootstrap ...  and libada is
> a target_module not bootstrapped either.  So we're indeed in a curious
> situation where we have a bootstrap of Ada requiring a host Ada but
> nothing of Ada is actually bootstrapped ... ;)

Not sure what you mean by that, all the files needed to compile gnat1 and
gnatbind (which includes most of the files under gcc/gcc/ada and all the files
under gcc/gcc/ada/gcc-interface) are boostrapped. What's not bootstrapped are
the Ada runtime (only a subset is as part of bootstrapping gnat1/gnatbind)
and Ada tools.

If we were starting from scratch, we would indeed likely have a different
and simpler bootstrap scheme where:

- we first build gnat1 only
- then we build the Ada runtime (libgnat/libgnarl)
- then we build Ada tools (gnatbind, gnatlink, gnatmake, etc...)

and then we iterate again for stage2 and stage3 on the above using the
previously built toolchain.

Doing the above at this stage and given the complexity of the GCC Makefiles
would require a lot of complex and error prone work, not sure it's worth the
trouble and it would likely take a lot of time and effort to get all the
combinations of possible builds (including all complex cases of
"standard" cross and canadian cross builds) working.

> Yeah, I expected that for non-bootstrap.  And I somehow assumed it
> was bootstrapped so I'd get gnattools and gnat1 not depending on the
> host compiler libs.  I guess we're lucky for gnat1 because it's written
> in C?

gnat1 is written mostly in Ada not in C (most of the Ada files under
gcc/gcc/ada are used for gnat1).

Arno

Reply via email to