This is the mail archive of the
mailing list for the GCC project.
Re: Installation proposal
Alexandre Oliva wrote:
> However, I think it may get the bootstrapping procedure somewhat more
> complicated. I mean, I don't see how to fit stages into this idea.
One option is just do what we have always done, except that creating
stage1 mv $build_prefix/bin/gcc to stage1/gcc and so on. I.e.
what we're actually doing is splitting the contents of "." into
(a) temporary files (most .o files, gen*, stmp-* etc) remains in ".".
(b) files that will ultimately be installed are in sub-directories
To create stage1, you can just gather together all the needed files
from both (a) and (b) and copy them to stage1. (Of course you might
want to just delete the temporary files in "." instead.)
The better solution, once enough of the files have been converted to
use $build_prefix is to use $build_prefix for the stages.
make build_prefix=stage2 PATH=`pwd`/stage1:$PATH
make build_prefix=../build PATH=`pwd`/stage2:$PATH
I assume 'make mostlyclean' removes all the temporary files
in "." (such as gen* and *.o), but leave the files in
$build_prefix alone. "make clean" also removes the files
in $build_prefix (that gcc has put there).
> Perhaps this is just the right time to move the whole bootstrap
> procedure out of gcc to the top level? Then, we'd not only have
> separate pseudo-install trees for each stage, but also we'd get the
> added benefit of having the complete toolchain built (and optimized)
> by the toolchain itself.
That might be even better, depending on exactly what we want
bootstraping to accomplish.