This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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]

Re: [PATCH] Fix unified tree breakage



2005-10-05 Paolo Bonzini <bonzini@gnu.org>

* Makefile.tpl (all) [gcc-no-bootstrap]: Make prebootstrap packages
before other host packages.


That appears to work, thanks. However, why do you assume this would
only be needed when not doing a bootstrap? OK, it's not common to want
to use a unified tree for that, but there's no reason why it shouldn't
work.


I'm sorry if this is confusing. It will go away as soon as GCC 4.1 branches.

In 4.2, we'll have *toplevel* bootstrap enabled by default. This is what you saw indicated as "@if gcc-bootstrap", and it means that the toplevel orchestrates a 3-stage build of libiberty, binutils, and everything else up to gcc. In this case it will just work because stage1 will use the system assembler/linker, and stage2/3 will use the previous stage of the in-tree assembler/linker: there is no need to do "all-prebootstrap", because the packages in "all-prebootstrap" are all bootstrapped (together with GCC).

BTW, with toplevel bootstrap, it could make much more sense to use a unified tree in a native configuration.

For 4.1, you need --enable-bootstrap to enable toplevel bootstrap. But the default is still non-toplevel bootstrap, and in that case making "all-prebootstrap" is still handled with dependencies:

   $(GCC_STRAP_TARGETS): all-prebootstrap configure-gcc
            @r=`pwd`; export r; \
            etc.

Paolo


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